Skip to content

Work / Tic Tac Toe / Wiki / Concepts

capture-build

Conceptverified 2026-10-30

capture-build

App code holds no flag and no capture branch. A store binary contains nothing of what a capture build runs. The old SCREENSHOT_MODE boolean shipped its branches in every store binary, and App Review rejects that pattern under guideline 5.6.

  • The two builds pnpm listing:capture drives carry EXPO_PUBLIC_SCREENSHOT_MODE=1. Under it, metro.config.js resolves @/a/b to src/a/b.screenshot.ts wherever that file exists.
  • Two files are swapped: config/seams.ts (pins the Easy and Medium AI so a flow replays move for move, and uses a separate MMKV id) and lib/platform.ts (turns the ads off).
  • The swap matches on the @/ spelling, so import these by alias, never by a relative path.
  • src/config/seams.test.ts asserts the flag is in no file a store build reads and that no app file reads it.

The steps are in .context/ops/runbooks/store-listing.md.