# Changelog of Stock News Monitor - Headlines, Buzz and Sentiment per Ticker (`saekoto/stock-news-monitor`) Actor

- **URL**: https://apify.com/saekoto/stock-news-monitor/changelog.md
- **Full Actor documentation**: https://apify.com/saekoto/stock-news-monitor.md

## Changelog

Source-side contract observations (endpoints, payload shapes, throttling) are recorded here with the date they were verified.

### 0.1.1 - 2026-10-29

- Fix: pushed and charged row counts in the log, status message and OUTPUT record were doubled on the platform. The SDK books a synthetic zero-price "default dataset item" event next to the named event and sums both into `chargedCount`; the actor now reads the per-event counter and serialises deliveries. Billing was never affected (platform charged 1 `ticker-check` and 90 `headline-row` for 1 + 90 rows on run `weAkdLLF2mOMPpOCw`), but under a tight `maxTotalChargeUsd` the doubled count could have stopped a run one ticker early.
- Store listing published with pay-per-event pricing, `ticker-check` as the primary event.

### 0.1.0 - 2026-10-29

- Initial release: `summary`, `headlines` and `both` modes, run-to-run change detection, two pay-per-event events (`ticker-check` $0.005, `headline-row` $0.0005), no start fee.
- Sources verified with single plain requests on 2026-10-29 (Chrome 131 desktop User-Agent, no cookies, Hungarian residential IP):
  - Google News RSS search (`news.google.com/rss/search?q=...`) returns up to 100 items with a `<source>` element; `when:Nd` restricts the window; links are Google redirect URLs.
  - Yahoo Finance headline RSS (`feeds.finance.yahoo.com/rss/2.0/headline?s=TICKER`) returns about 15-20 items with direct links; an unknown ticker returns an empty channel with HTTP 200.
  - Yahoo Finance search (`query1.finance.yahoo.com/v1/finance/search`) resolves a ticker to its company name and exchange; the chart endpoint (`/v8/finance/chart/TICKER?range=3mo&interval=1d`) returns HTTP 404 for an unknown symbol.
  - Stocktwits public symbol stream (`api.stocktwits.com/api/2/streams/symbol/TICKER.json`) returns 30 messages per page with `entities.sentiment.basic` of `Bullish`, `Bearish` or absent, pages via `?max=<cursor.max>`, HTTP 404 for an unknown symbol.
  - GDELT DOC API `timelinevol` (`timespan=30d`) returns a daily volume-intensity series; the API enforces one request per 5 seconds (HTTP 429 with a plain-text body otherwise) and lags one to two days.
