Batch 1: Architecture Validation
Ten experiments validating every layer of the MVP architecture, from individual components to a fully deployed system processing real Sound Transit PIMS feeds.
Experiment DAG
flowchart TD
CM[config-management] --> PD[pipeline-dag]
PD --> DP[deployment-pattern]
PD --> AR[asset-registry]
DP --> AR
GDC[gtfs-digester-core] --> SE[schedule-e2e]
RFC[rt-feed-comparison] --> RE[realtime-e2e]
RPL[rt-publish-latency] --> RE
RPL --> SE
AR --> RE
AR --> SE
DP --> HO[host-orchestration]
PD --> HO
AR --> HO
RE --> HO
SE --> HO
style CM fill:#d4edda,stroke:#28a745
style PD fill:#d4edda,stroke:#28a745
style GDC fill:#d4edda,stroke:#28a745
style RFC fill:#d4edda,stroke:#28a745
style RPL fill:#d4edda,stroke:#28a745
style DP fill:#d4edda,stroke:#28a745
style AR fill:#d4edda,stroke:#28a745
style RE fill:#d4edda,stroke:#28a745
style SE fill:#d4edda,stroke:#28a745
style HO fill:#d4edda,stroke:#28a745
All 10 experiments closed. Green = validated with real Sound Transit data.
Experiments
Foundation (no dependencies)
| Experiment | What It Validated | Key Number |
|---|---|---|
| config-management | Kernel vs user-land config boundary, 3 approaches tested | Version switch <1s |
| gtfs-digester-core | Canonical fingerprinting + diffing for schedule feeds | 108 tests, 135K rows |
| rt-feed-comparison | 4-level semantic equivalence for RT feeds | 78 tests, found 2 duplicate entity IDs |
| rt-publish-latency | GCS + CDN publishing: 9 configs tested | 112ms p50, 0% stale |
Framework (builds on foundation)
| Experiment | What It Validated | Key Number |
|---|---|---|
| pipeline-dag | Unified Step model, DAG resolution, builtins + custom code | 43 tests, <1ms DAG resolution |
| deployment-pattern | Two Cloud Run services, gRPC communication | 160ms p50 roundtrip, ~11s cold start |
| asset-registry | PostgreSQL registry, versioning, debounce, fan-out | 24 tests, 100% dedup, real PIMS feeds |
End-to-End (builds on framework)
| Experiment | What It Validated | Key Number |
|---|---|---|
| realtime-e2e | Full RT pipeline: decode → transform → encode PB+JSON | 10-23ms p95, 6 transform types |
| schedule-e2e | Full schedule pipeline: ingest → validate → transform → publish | 833-920ms, ST's real transform rules |
Integration (builds on everything)
| Experiment | What It Validated | Key Number |
|---|---|---|
| host-orchestration | Three-service deployment, worker pools, bidirectional gRPC, VPC | 6 PIMS assets, 2 pipeline versions, live runs |
What This Batch Produced
- 10 system specs — detailed design for every MVP component
- 9 journal posts — decision log accessible to the full team and client
- Architecture overview — bird's eye view with mermaid diagrams
- A live deployed system — three Cloud Run services processing real PIMS feeds
What's Next
MVP implementation begins. The experiments validated the design; now we build the production system against the system specs.