Two pipelines, running in sequence on weekday post-close.
The same narrative record powers the TLDR hero, Catalysts tab, and Risks tab. Only the TLDR is time-scrubbable; Catalysts / Risks / Basket / News all read the latest snapshot.
The ADK agent answers these four questions every day, in this order:
This is a tracker, not a theme-discovery tool. The thesis is fixed; the TLDR reports whether today made it more or less likely to be right.
Names sit in a layer because of what they supply to an AI buildout, not because of GICS. Equal-weight within each layer. The Basket change-log in the Basket tab auto-diffs composition on every run.
~/feeds/ai-bottleneck-narrative/v1/data/narrative/records, one record per date.Every number in the TLDR and the push line is verified against the input snapshot. If any number fails verification, the record is flagged source: "fallback", the TLDR becomes a short deterministic summary, and push notifications are suppressed unless there are non-numeric signals (delta, catalyst flip, risk change).