Skip to content

feat(planning): keep a re-issued interview question's history across supersede chains #9721

Description

@kyle-sexton

Parent

Refs #5796

Depends on

  • none: on the frontier now

Outcome

A question re-issued by archive-and-replace keeps its history (gap G6):

  • The page shows the full chain ("Asked as Q5 in round 2, then Q35"), not only the immediate predecessor.
  • The carried-rounds count starts from the chain's first question.
  • The "Still open from earlier rounds" section is pinned in every view, not only Rounds.
  • A one-for-one mass supersede warns and points to revise.
  • archive clears any hold on the archived question.

Key interfaces

  • Interview page: plugins/planning/surface/index.html; page server: plugins/planning/surface/server.py
    (record(), derive_states); round CLI: plugins/planning/surface/round.py behind round.sh;
    exporters: plugins/planning/surface/exporters.py.
  • The interview skill's surface contract, plugins/planning/skills/interview/context/surface.md, documents
    every new op, field, setting and refusal.

Done when

  • A page test on a three-link chain shows both earlier ids and the carried count from the first.
  • A page test finds the carried section in Groups view.
  • A round test superseding 3 questions one for one prints a warning naming revise.
  • A round test archives a question holding a waiting hold and finds the hold cleared.
  • scripts/run-test-file.sh plugins/planning/surface/test_server.py exits 0.
  • scripts/run-test-file.sh plugins/planning/surface/test_round.py exits 0.
  • bash plugins/planning/surface/surface.test.sh exits 0, so a data dir without the new fields still loads, renders and exports.
  • scripts/check-changelog-fragments.sh --check-required origin/main exits 0.

Activity

  1. added
    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.
    and removed on Oct 24, 2026
  2. melodic-automation-lanes commented on Oct 24, 2026

    @melodic-automation-lanes
    Contributor

    The work-resolve-issue run that agent-ready started failed or was cancelled before it reported, or it stopped or the token broker refused it because its workflow files differ from main's. work-unblock removed and added agent-ready back to start a fresh run on main's workflow files. It does this once per version of those files, so if this run fails the same way, a person looks at it.

  3. added
    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.
    and removed
    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.
    on Oct 24, 2026
  4. melodic-automation-lanes commented on Oct 24, 2026

    @melodic-automation-lanes
    Contributor

    The work-resolve-issue run that agent-ready started ended over 3 hours ago with no report and no pull request. work-unblock already re-fired it once on these lane workflow files, so it no longer does, and the issue would hold a place in the issue lane's queue with nothing running. It added needs-human. To try again, remove needs-human, then remove agent-ready and add it back.

  5. added
    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.
    on Oct 24, 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

    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.priority: mediumReal value, no hard deadline; normal backlog flow.status: readyTriaged, unblocked, and fully specified; eligible to pick up.

    Fields

    No fields configured for Feature.

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions