Terms used across Transit's code and documentation, with the module that gives each one its meaning.
| Reference | Value |
|---|---|
| Subject and boundary | Project vocabulary. Formulas are on ‣. |
| Verified source | snapshots/contract.py, gold/rollups.py, filters/state.ts, GLOSSARY.md at main 9733eb26d92533f56cdc8bc46b81b93fbb5987c8, checked November 10, 2026. The Not reporting, Source lag and Line without live data wording follows the pending glossary update, which matches source at that commit. |
| Support state | Current usage. |
| Term | Meaning | Where it lives |
|---|---|---|
| Bronze | Raw captured feed bytes kept in object storage with lineage; the replay source | ingestion/, raw schema |
| Silver | Normalized relational GTFS, GTFS-RT, GIS and alert data | silver/ |
| Gold | Analytical structures with a named consumer: facts, marts, summaries, rollups | gold/ |
| Canonical (data) | Normalized source truth and the validated public contract | Silver, contract.py |
| Capture | One download of one feed endpoint, recorded in raw.ingestion_runs |
ingestion/ |
| Cohort | The input captures and entities that define a delay summary, verified before replacement | gold/delay_cohorts.py |
| Watermark | Completion marker for one rollup kind and period; not a metric value | gold.warm_rollup_periods |
| Dirty day | A day whose inputs changed after its rollup; refused until repaired | gold/rollups.py |
| Serving state | Which capture currently feeds each live lane | gold.realtime_serving_state |
| Tier | Publication family with its own clock and guarantees: live, static or historic | snapshots/ |
| Publication lane | Per-provider, per-tier PostgreSQL lock that serializes publishers | publication_lane.py |
| Manifest | Per-provider discovery file for live, static and historic data | <provider>/manifest.json |
| Availability root | Historic index that points at one complete immutable generation | historic/history/index.json |
| Generation | One labeled build of published files; historic generations are content-addressed and immutable | envelope.py, historic_graph.py |
| Provider capability | What a provider and a surface can truthfully support; configuration alone is not capability | Provider manifests, contract |
| Requested filter | What the URL or controls ask for | lib/filters/ |
| Effective filter | The part of the request the metric and published data can answer | Feature selectors |
| Honest absence | An explicit missing, partial, stale, unsupported, not-applicable or unavailable state; never an invented zero | Contract and selectors |
| Live | Current data with a bounded freshness contract | Live tier |
| Worker start count | Cumulative observed starts of one provider's realtime worker; startup evidence, not exit-code or cause evidence | core.worker_starts, worker_starts.py, worker_start_probe.py |
| Historic | Time-windowed published data with explicit coverage and generation context | Historic tier |
A map, chart or summary presents a view model. Metric definitions, filter applicability, no-data reasons and ranking formulas belong in domain modules and their tests, not in markup.
| Term | Meaning | Where it lives |
|---|---|---|
| Verdict | Reliable, patchy, unreliable, tentative or absent for one line, stop or network window | lib/v1/verdict.ts |
| Tentative | Too few observations or uncertainty that does not support a decided verdict | lib/v1/verdict.ts |
| Published uncertainty range | Supplied lower/upper percentage bounds, not a missing exact count | Contract and verdict |
| Feed family | One provider's kind of live report | lib/v1/live/store.svelte.ts |
| Publication age | Age of the published report, independent of agency capture age | generated_utc |
| Serving capture age | Age of the capture accepted into serving data; a failed-to-process download cannot renew it | Live builders and optional feed_captured_utc |
| Partial stall | One active family stale while another is current or not loaded; insufficient evidence for whole-feed outage | Live store and map banner |
| Retrying | A new attempt after a failure; it applies even when retained data has an unknown age, which otherwise counts as stale | Live store and selection grace |
| Live-eligible KPI sample | Valid current KPI with delay, coverage, route total and at least one top-route delay | contracts/kpis-v1.js |
| Demo sample | Valid but incomplete/cold KPI response; distinct from an invalid response | KPI v1 agreement |
| Live age | Age of the live vehicle data on a page: vehicle positions and the live metrics drawn from trip updates, never service alerts | lib/v1/live/livePresentation.ts |
| Live notice | The one message about how far to trust a page's live data: nothing to report, report behind, refresh unavailable, partial stall, whole-feed stall, unavailable or no vehicles | LiveNoticeKind in livePresentation.ts |
| Trip (FR trajet) | One scheduled run of a vehicle along a line, first stop to last | GTFS trips, live/trips.json |
| Reported position | Where a vehicle said it was in its latest report; the default map view | live/vehicles.json, lib/stores/motionMode.svelte.ts |
| Estimated position | Where a vehicle probably is now, projected along its route from its reported position; shown only on request | lib/features/map/vehicleMotion.ts, components/map/vehicleProjection.ts |
| Silent trip | A trip the schedule says should be running now with no vehicle reporting for it | gold.scheduled_running_trips_at, gold.non_responding_current |
| Not reporting | A vehicle with no report for 150 seconds or more, plus its provider's source lag (210 seconds for OC Transpo). It concerns one vehicle; a silent trip concerns a scheduled trip | notReporting in vehicleProjection.ts, liveTiming.ts |
| Source lag | How much older than its publication time a provider's live data already is when captured, declared per provider | live_source_lag_seconds, manifest files.live.source_lag_s |
| Line without live data | A line its provider declares publishes no vehicle positions, such as the STM metro or the O-Train. Its trips are never counted as silent trips; if live data appears, it is treated as live and the outdated declaration is flagged | realtime.lines_without_live_data, core.route_live_observations, providers/live_policy.py |
| Out-of-service vehicle | A vehicle reporting a position without a trip. It does not count toward coverage or the fleet in service | lib/v1/live/vehicleService.ts, live network builder |
The repository GLOSSARY.md owns the concise product definitions. This page maps those terms to their technical owners. The production record for feed_captured_utc is on Snapshot publication and public contract.