You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Add scenario state keys for the remaining independent value reads (Is Duplicating A Hero and class) #111
Is Duplicating A Hero is a per-player fact the scenario can state and no Bastion action changes. The #105 audit left it, and other reads like it, as not_modeled. Stopping once per read costs a full cycle each, so this issue covers the class.
Scope
Add isDuplicatingAHero to the version-2 player state map (same rules as the keys already there: catalog value id, absent key gives missing_input named state.<key>, unknown key rejected, null refused).
Walk bastion.ow again (AST, not by running it) and list every remaining unmodeled value read that is a per-player or global scenario fact and that no action Bastion calls can change (check the action list in the feat(sim): model presentation and game-mode actions as no-ops #104 PR body: for example the health, life-state, roster, ultimate, ability, forced-hero, match-clock and facing families are changed by Bastion actions, so those are not in scope here). For each such read, add a state key, or a top-level input if it is global, with the same absent-input rule. Reads that an action in Bastion can change stay not_modeled; list them in the PR body with the action that changes them, grouped by state family, so one design issue per family can follow.
Do not guess. If the catalog text for a read does not say it is independent of other state the model carries, keep it not_modeled and name why.
Docs: docs/scenario-format.md (state keys table, missing inputs), schema file, docs/simulator-interface.md; docs/findings.md only if you make a modeled-not-measured choice. Update bastion.json with values that let Bastion run.
Acceptance
Tests for each new key: present, absent (missing_input naming state.<key>), wrong type rejected.
Bastion rerun with the committed bastion.json unchanged except what this PR adds: report the new first stop, or completion, plus the grouped list of remaining unmodeled reads and the actions that block them. Parent: Run Bastion to completion on athena-sim #45.
Activity