Skip to content

M7: Scope an interrupt to its Turn so a failed interrupt leaves no fired abort #298

Description

@Sandstorm831

Parent

Spec #276; implementation sub-issue of M7 #275.

What to build

An interrupt that did not stop its Turn leaves no fired abort behind, so the next human Turn, a following Agent Turn, or a following Command step runs normally, and the interrupt Operation settles not-applied when the Turn ended another way. The case is verified real (the spec's scratch probe at fb3ee06): today the Run's single abort signal fires and is never reset. The repair makes an interrupt Turn-scoped, bound per Turn the way Steer and Harness Requests are. An applied Interrupt still rests the Run halted; ADR 0035's Turn-only Interrupt is not built. The execution comments describing the Interactive Harness as closed after each human Turn are rewritten: the Harness is held for the Step and closed once, and detached is recorded after each Turn so a later reopen or the next Agent step can resume (stories 111, 117–119, 121).

Acceptance criteria

  • Projection Port tests land first and are red at their base: Turn 1 completes despite an interrupt, and the next human Turn, a following Agent Turn, and a following Command step each run normally.
  • After the repair they are green, and the interrupt Operation settles not-applied when the Turn completed another way.
  • A rejected interrupt receipt leaves no fired signal behind.
  • The stale execution comments are corrected (comment only).
  • Headless --json changes only additively.
  • CI scenario: the Port tests are green on Windows x64, macOS arm64, and Linux x64.

Blocked by

Implementation packet

Owner: Application (interrupt scoping behind the Projection Port), Run execution comments

Ratchet: Port tests for a failed interrupt followed by a human Turn, an Agent Turn, and a Command step

Deletes: the Run-wide abort signal that stays fired after an interrupt, and the stale closed-per-Turn comments

Gate: ADR 0027 three-OS CI and recorded human evidence, with the slice scenario above.

Dependencies: no new runtime dependency

Activity

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions