Skip to content

fix(app): stale question cards from dead turns — a cleanup path surfaced to the panel #1754

Closed

Description

@aarontrowbridge

Important

Problem — When a turn dies (abort, wedge, engine cycle), its question card stays up and replies toast errors forever — the card outlives the question. There is no question.replied/question.rejected-equivalent cleanup path surfaced to the panel, and card liveness isn't tied to turn state.
Approach — Either surface a cleanup event family to the panel (replied/rejected/expired equivalents, so the card retires deterministically) or tie card liveness to turn state (turn dead → card dismisses with a clear label). The slice's first job is mapping what the engine already emits vs. what the panel already models — the fix rides existing event vocabulary wherever it exists, inventing nothing new at the engine.
Scope — in: the panel-side cleanup path + tests + headless-probe verification (kill a turn mid-question; assert the card retires or labels dead). out: engine event vocabulary changes, the frontdoor's question map (it already learns + injects; this is panel consumption).

Acceptance Criteria

  • A dead turn's question card does not stay interactive-and-erroring — it retires or labels dead deterministically
  • A healthy question's lifecycle (asked → answered → card clears) still works (regression pin)
  • Headless-probe-verified end to end

Source

Part of #1731 (panel-reliability lane, priority 2). Companion of the live-cards fix — adjacent code, separate slice.

Activity

  1. aarontrowbridge commented on Oct 25, 2026

    @aarontrowbridge
    MemberAuthor

    Fixed in v0.3.9 (#1871).

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

    hitlNeeds human review before merge

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions