Skip to content

Model control flow and non-geometric actions used by Bastion #58

Description

@e54-bot

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: control flow and non-geometric actions

Skip If, Skip, Abort If, Abort, Loop If Condition Is True and Loop (Bastion has 48 Loop If Condition Is True), Else If/Else edge cases not yet covered, While, Call Subroutine with recursion limit, Start Rule, Stop Chasing variables as written by Bastion, Allow Button/Disallow Button, Set Status/Has Status, and effect actions (Create Effect, Play Effect, Destroy Effect) if they can be recorded like HUD elements without geometry; otherwise NotModeled. Is Button Held reads a live input: report it as missing_input unless the scenario supplies it.

Acceptance criteria

  • Tests per construct: skip/abort counts, loop condition re-check per iteration, step limit when a loop never ends, recursion limit.
  • Standard gates: fmt, clippy -D warnings, tests, wasm32 build; update docs/simulator-interface.md in the same PR. A construct without a passing capture fixture is recorded in docs/findings.md as 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

  1. added
    enhancementNew feature or request
    ready-for-implementationContract settled; an Engineer can implement without inventing a decision
    p1Critical path of the current roadmap line, or a bug that hits real workflows
    on Oct 25, 2026
  2. added theissue type on Oct 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestp1Critical path of the current roadmap line, or a bug that hits real workflowsready-for-implementationContract settled; an Engineer can implement without inventing a decision

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions