Skip to content

US-45.9: interactive sessions implement in a change thread, a runner reviews (#917) - #918

Merged
mkreyman merged 2 commits into
masterfrom
docs/us-45.9-interactive-threads
Sep 28, 2026
Merged

mkreyman merged 2 commits into
masterfrom
docs/us-45.9-interactive-threads

Conversation

@mkreyman

Copy link
Copy Markdown
Owner

Adds US-45.9, the design for #917, as reasoned on the issue: #917 (comment)

The reviewer stays a runner. Epic 45 dropped key-holding reviewers deliberately after #901 and #905, and the runner socket is the only channel an implementing session cannot write to. A runner review session can still run /code-review. The story instead closes the three rules that keep an interactive claim out of thread mode:

  1. Review placement requires a claim made by a dispatch. A claim made without one is now separated by agent identity, as the custody gates already do for pre-dispatch stories.
  2. The merge gate reads a claim with no runner placement as pr mode. An interactive claim now records the source mode when it is made. The mode is never read again, which keeps US-45.4: merge gate and stage machine speak checkpoints (v3, mode bound at placement) #908's promise that a change affects only later claims.
  3. The merge executor requires a delivery stage row, which a hand-made story does not have. A thread-mode interactive claim now creates one.

The review itself still depends on loopctl-runner#55 and #56.

This is docs only: the story-schema test passes. The review gate is running.

…unner reviews it (#917)

The three rules that keep an interactive claim out of thread mode: review placement
requires a dispatch-made claim, the merge gate reads an unplaced claim as pr, and the
executor fences on a stage row a hand-made story lacks. The reviewer stays a runner, as
Epic 45 decided after #901 and #905.
The first draft special-cased three rules. Every reader of a claim route derives it from
one query, and the stage row only moves on runner reports, so the story now records an
interactive claim route (mode, base branch, branch) where that query reads, tells
placement and bulk claims apart by an explicit marker, lets the claimant report its own
stage over the runner-reportable edges with head_sha, moves an intake-born row from
queued at claim, starts the CI clock at the ci report, scopes the separation relaxation
to claims with no lineage, requires lease renewal in the tool descriptions, fixes the
separation test so it can run, and lists US-45.1 and US-45.7 as dependencies.
@mkreyman
mkreyman enabled auto-merge (squash) September 28, 2026 02:46
@mkreyman
mkreyman merged commit 9943492 into master Sep 28, 2026
17 checks passed
@mkreyman
mkreyman deleted the docs/us-45.9-interactive-threads branch September 28, 2026 02:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant