Repository navigation
Description
Problem
Reference workload: /Users/teakowa/Repos/wrightkit/.task-scratch/bastion/bastion.ow with scenario .../bastion/scen.json (run: see .task-scratch/bastion-loop-state.md). After athena#54 (PR #55) Bastion stops with not_modeled: "value ifThenElse" at tick 0. Constructs in this issue come from counting what Bastion uses; the PR body must list which ones it modeled and which it left NotModeled.
Scope: strings and text
String Split, Char In String, Icon String, Ability Icon String, Input Binding String, Hero/Hero Of constants, Color constants, Map constants, Button constants not yet handled, Custom String forms with all placeholder slots and localization-free rendering. Display-only strings may render a documented placeholder text only if workshop-rs/findings define it; otherwise they stay NotModeled.
Non-goals
Vectors, positions, distances: world geometry is not modeled (docs/architecture.md). A separate needs-decision issue covers them when the Bastion run reaches them.
Acceptance criteria
- A test per construct family with a boundary case (empty string, out-of-range index, missing placeholder).
- Standard gates: fmt, clippy -D warnings, tests, wasm32 build; update
docs/simulator-interface.mdin the same PR. A construct without a passing capture fixture is recorded indocs/findings.mdas modeled-not-measured (AGENTS.md). The Bastion run must move past every construct listed here that is pure value logic; record the next stop in the PR body. Budget: split the PR if it cannot finish in 30 minutes: the first PR may cover the first half of the list.
Activity
feat(sim): model string values used by Bastion
feat(sim): model string values used by Bastion (#64)