mostlyright.finance.transcripts.registries
Earnings codegen registries — source-of-truth dicts.
Three immutable registries the scripts/export_schemas.py codegen builders
read to emit the committed schemas/earnings-*.json files consumed by the TS
codegen, the satellite, and the markets resolver:
WEBCAST_PROVIDER_FINGERPRINTS
: Host-substring → provider id. The discovery-time codegen’d copy of the
satellite’s authoritative provider fingerprints (the “two homes” split) — lets
the SDK/extension NAME a webcast provider without capturing audio. Seeded
from CONTEXT §5 / RESEARCH §1: events.q4inc.com/q4cdn = Q4,
media-server.com = Notified, webcasts.com = GlobalMeet,
choruscall.com/veracast = Chorus Call, youtube.com = self-hosted.
EARNINGS_SERIES_ROSTER
: The ~149-ticker KXEARNINGSMENTION* series roster (cheap registry of
series tickers). Most are dormant placeholder stubs between earnings cycles
and light up ~1-2 days pre-call (RESEARCH-MARKETS §1.3).
TICKER_HQ_TIMEZONE
: Ticker → IANA hq-timezone. Load-bearing for the point-in-time hq-tz
correction (mirrors the station→tz role of stations.json).
EARNINGS_CALENDAR_SEED
: The venue-derived earnings-calendar snapshot — a small seed shape,
NOT a live feed. Seeded with the confirmed upcoming dual-venue calls from
the confirmed upcoming dual-venue calls as the deterministic test fixture.
Every TICKER_HQ_TIMEZONE value (and every calendar-seed hq_timezone) is
validated against zoneinfo at import time — a typo fails loud rather than
silently corrupting the PIT correction. The immutability idiom
(MappingProxyType / frozenset) mirrors polymarket.KNOWN_WRONG_STATIONS.
Module Attributes
Section titled “Module Attributes”WEBCAST_PROVIDER_FINGERPRINTS | Host-substring → canonical provider id. |
|---|---|
EARNINGS_SERIES_ROSTER | The earnings-mention series roster. |
TICKER_HQ_TIMEZONE | Ticker → IANA hq-timezone. |
EARNINGS_CALENDAR_SEED | Confirmed upcoming-call snapshot rows (the deterministic test fixture, NOT a live feed). |
mostlyright.finance.transcripts.registries.EARNINGS_CALENDAR_SEED : Final[tuple[dict[str, str], …]] = ({‘call_scheduled_at’: ‘2026-06-30T21:00:00Z’, ‘hq_timezone’: ‘America/Los_Angeles’, ‘provider’: ‘q4’, ‘ticker’: ‘NKE’}, {‘call_scheduled_at’: ‘2026-07-01T12:00:00Z’, ‘hq_timezone’: ‘America/New_York’, ‘provider’: ‘notified’, ‘ticker’: ‘STZ’}, {‘call_scheduled_at’: ‘2026-07-01T13:00:00Z’, ‘hq_timezone’: ‘America/Chicago’, ‘provider’: ‘q4’, ‘ticker’: ‘GIS’}, {‘call_scheduled_at’: ‘2026-07-10T14:00:00Z’, ‘hq_timezone’: ‘America/New_York’, ‘provider’: ‘choruscall’, ‘ticker’: ‘DAL’})
Section titled “mostlyright.finance.transcripts.registries.EARNINGS_CALENDAR_SEED : Final[tuple[dict[str, str], …]] = ({‘call_scheduled_at’: ‘2026-06-30T21:00:00Z’, ‘hq_timezone’: ‘America/Los_Angeles’, ‘provider’: ‘q4’, ‘ticker’: ‘NKE’}, {‘call_scheduled_at’: ‘2026-07-01T12:00:00Z’, ‘hq_timezone’: ‘America/New_York’, ‘provider’: ‘notified’, ‘ticker’: ‘STZ’}, {‘call_scheduled_at’: ‘2026-07-01T13:00:00Z’, ‘hq_timezone’: ‘America/Chicago’, ‘provider’: ‘q4’, ‘ticker’: ‘GIS’}, {‘call_scheduled_at’: ‘2026-07-10T14:00:00Z’, ‘hq_timezone’: ‘America/New_York’, ‘provider’: ‘choruscall’, ‘ticker’: ‘DAL’})”Confirmed upcoming-call snapshot rows (the deterministic test fixture, NOT a
live feed). call_scheduled_at is an ISO-8601 UTC instant derived
from the ET call time (2026 EDT = UTC-4). provider
is a value of WEBCAST_PROVIDER_FINGERPRINTS; hq_timezone mirrors
TICKER_HQ_TIMEZONE. The satellite refreshes the authoritative calendar; this
is the SDK look-ahead seed.
mostlyright.finance.transcripts.registries.EARNINGS_SERIES_ROSTER : Final[frozenset[str]] = frozenset({‘AAPL’, ‘AMZN’, ‘AVGO’, ‘BRK’, ‘C’, ‘CRM’, ‘DAL’, ‘GIS’, ‘GOOGL’, ‘GS’, ‘JNJ’, ‘JPM’, ‘META’, ‘MSFT’, ‘NFLX’, ‘NKE’, ‘NVDA’, ‘ORCL’, ‘PEP’, ‘PLTR’, ‘STZ’, ‘UBER’})
Section titled “mostlyright.finance.transcripts.registries.EARNINGS_SERIES_ROSTER : Final[frozenset[str]] = frozenset({‘AAPL’, ‘AMZN’, ‘AVGO’, ‘BRK’, ‘C’, ‘CRM’, ‘DAL’, ‘GIS’, ‘GOOGL’, ‘GS’, ‘JNJ’, ‘JPM’, ‘META’, ‘MSFT’, ‘NFLX’, ‘NKE’, ‘NVDA’, ‘ORCL’, ‘PEP’, ‘PLTR’, ‘STZ’, ‘UBER’})”The earnings-mention series roster. Cheap registry of series tickers — the
capture fleet only fires on the handful of calls live in any given week
(calendar-driven), but the resolver enumerates per-company series from this
roster rather than a global status=open sweep (which never reaches
earnings-mention before timeout). Extend as the universe is enumerated.
mostlyright.finance.transcripts.registries.TICKER_HQ_TIMEZONE : Final[Mapping[str, str]] = mappingproxy({‘GIS’: ‘America/Chicago’, ‘NKE’: ‘America/Los_Angeles’, ‘PEP’: ‘America/New_York’, ‘STZ’: ‘America/New_York’, ‘DAL’: ‘America/New_York’, ‘JPM’: ‘America/New_York’, ‘C’: ‘America/New_York’, ‘GS’: ‘America/New_York’, ‘JNJ’: ‘America/New_York’, ‘NFLX’: ‘America/Los_Angeles’})
Section titled “mostlyright.finance.transcripts.registries.TICKER_HQ_TIMEZONE : Final[Mapping[str, str]] = mappingproxy({‘GIS’: ‘America/Chicago’, ‘NKE’: ‘America/Los_Angeles’, ‘PEP’: ‘America/New_York’, ‘STZ’: ‘America/New_York’, ‘DAL’: ‘America/New_York’, ‘JPM’: ‘America/New_York’, ‘C’: ‘America/New_York’, ‘GS’: ‘America/New_York’, ‘JNJ’: ‘America/New_York’, ‘NFLX’: ‘America/Los_Angeles’})”Ticker → IANA hq-timezone. Load-bearing for the PIT hq-tz correction
HQ locations: NKE = Beaverton OR (Pacific), GIS = Minneapolis
MN (Central), STZ = Victor NY (Eastern), PEP = Purchase NY (Eastern),
DAL = Atlanta GA (Eastern), JPM/C/GS = New York NY (Eastern), JNJ = New
Brunswick NJ (Eastern), NFLX = Los Gatos CA (Pacific). Validated against
zoneinfo at import (see _validate_timezones below).
mostlyright.finance.transcripts.registries.WEBCAST_PROVIDER_FINGERPRINTS : Final[Mapping[str, str]] = mappingproxy({‘q4inc’: ‘q4’, ‘q4cdn’: ‘q4’, ‘media-server.com’: ‘notified’, ‘webcasts.com’: ‘globalmeet’, ‘choruscall.com’: ‘choruscall’, ‘veracast’: ‘choruscall’, ‘youtube.com’: ‘self_hosted’})
Section titled “mostlyright.finance.transcripts.registries.WEBCAST_PROVIDER_FINGERPRINTS : Final[Mapping[str, str]] = mappingproxy({‘q4inc’: ‘q4’, ‘q4cdn’: ‘q4’, ‘media-server.com’: ‘notified’, ‘webcasts.com’: ‘globalmeet’, ‘choruscall.com’: ‘choruscall’, ‘veracast’: ‘choruscall’, ‘youtube.com’: ‘self_hosted’})”Host-substring → canonical provider id. Substring (not exact host) because a
webcast URL host may be events.q4inc.com OR a *.q4cdn.com asset CDN —
both fingerprint to "q4". The satellite holds the authoritative copy; this
is the SDK-side naming copy (the “two homes” split).