Status: accepted, 2026-08-17 (owner answer 8)
Context#
Two MVPs shipped before this contract existed, with different stacks and data models, serving customers first onboarded to App V5. Their runners draw the same runner/payload seam the contract names, and each has lapses the contract learns from.
Decision#
The contract cites them as evidence and instances (../instances/), grounds
rules against the hypothetical of porting them ("would this have worked for
walmart?"), and does not bend a rule to fit them. Neither is ported. Their
future consumption of modules follows ../patterns/01-consuming-a-module.md
with caller-owned, module-mirrored state. The apps are not ported; their
payload code is the STARTING POINT for the modules that replace what they
do (../plans/v6-decision-set.md D5 names which file for each of the four
V1 modules), which is a lift of code, never a migration of the app.
Rejected alternatives#
- Port them onto the contract. Rewrites of two live apps for no customer outcome.
- Ignore them. Loses the only three-witness evidence the seam has.
Consequences#
- Instance breakdowns for both are dated snapshots, re-derived only when a rule is being argued against them; each carries its as-of date in its header.
- Speedway is frozen for product work by owner ruling (2026-08-09); its breakdown is a snapshot.