Skip to content

Source 1-10 conveyor observations

Dave's authored repairs and deck changes already run in the native engine, but AI requests previously omitted their current conveyor state. A player asking about the belt could receive an answer without that context.

The optional sourceConveyor observation supplies the current speed and counted future deck composition. source110-conveyor-v1 gates browser forwarding. The strict shared schema confines it to the live authored 1-10 chapter, ten known plant identities and at most 4,096 deck entries. The browser aggregates entries, dropping order. Older clients remain valid and newer clients omit the observation for older hosts.

Dave and living-plant prompts receive localized species names and distinguish stopped/reversed/forward motion. This is future deck composition, not packets on the belt, planted defenders, the next card or a promised repair outcome. Modified Peashooter keeps its distinct identity. The current observation is not persisted as a present-tense notebook fact. Existing numeric choices remain the only repair authority; no new actions, UI, pauses, combat changes or save changes.

Verification:

  • Four new host tests cover Dave/plant prompts, EN/ZH/ES names, absent versus empty observations, speed bounds, duplicate/unknown/excessive entries, wrong chapters/outcomes, memory and action isolation.
  • All 539 isolated NPC tests pass, including the unchanged 1-10 story and early numeric contracts.
  • Hosted build and corrected typecheck pass. The first typecheck caught a test assertion reading a deliberately absent typed response field; the assertion now checks own-property absence.
  • Game forwarding has four focused tests; all 767 game web checks pass.
  • The compiled browser check uses loopback-only account/model fixtures and the real shared parser and prompt builder. No paid model generations or production data writes. Receipts live in the game worktree's output/conveyor-context/; initial helper status-selector failure is retained separately from the corrected run.

Full natural 1-10 completion remains separate from this context change. Its current ordinary-input journey reaches wave 18 with zero skipped source events and then loses; it is neither a full-level pass nor a human balance verdict.