Two resolutions, both keeping main's mechanics:
- `mobile-web-shell-flag-census.test.ts`: `SWITCHED_ROUTES` keeps both
registrations, C8's catch-all beside C7.7's session route.
- The session route switch reads `firstParam` from
`src/navigation/route-param-reader.ts`, where C8 moved it out of
`mobile-source-control-screen-state`.
Re-measured on the merge rather than summed: the session closure reads
4,324 modules / 982 local, unchanged from the pin; the hop census reads
23 rows. The whole bundle now emits 67 chunks across 15 route keys
(C8's catch-all is the fifteenth), against a ceiling of 76.
All five postinstall generators rerun; no resurrected deleted file, no
duplicated top-level function, mobile tsc 0.
Claude-Session: https://claude.ai/code/session_01JNnE9qzUZMMnqpZWCqM3nb