Repository navigation
Show Task work as a Flow across Desktop, CLI and chat - #195
Merged
madskronborg merged 29 commits intoOct 26, 2026
Merged
Conversation
The board read each wait rule inline in its per-Task closure, so any other view of a Run's waits could only copy them and keep the copies equal by hand. run-waits.ts reads them for one Run; buildBoard aggregates its readings as before, so no card, sentence or protocol field changes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A Run's work had no declared unit, so nothing could say where a Run is in it. A module now makes Steps with `step`, lists the `path` it expects and may `forecast` again; the host records each Step's entry, leave and failure inside Activities, and builds one Run's Flow from those records, its launches, its questions and children. RunDetail and `run show` carry the same Flow. `run wait --follow` names operations, since a Step may hold several or none. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A Run's Flow showed one Run in isolation, so a Task's children, its waits and its merge request's way to production were invisible in the one model every front door reads. The Flow is now the Task's: each of its Runs a row, each wait on the Step it holds up, children of their own Task and Repo runs as links, the primary offer at the end of the leading row, and a Release row once there is a merge request. Each TaskView carries the strip a card will draw, and the board, run show and chat's collie_run read the same value. A wait for usage is recorded by the host so a Step can say whose session resets and when. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… one turn at a time
…peline-view-replacement
The Flow names a Step's agent before the host has polled that agent's status, so CI could read the build node with no Watch, Tell or stalled wait yet. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
An agent's launch is recorded before its notes are taken and its prompt written, so CI could read b.prompt.md before it existed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Master's #192 added the Stage Run and reshaped the release and implement loops, leaving this branch in conflict. The merge keeps the Flow Steps of release and implement, and declares the Stage Run's own Steps so every shipped Workflow still draws its path. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Master moved forge calls to HTTP with the CLI's login, asks when a criteria hand-back stalls on a blocker, and offers a review's fix only where it can run. The Build Step now wraps the stalled-hand-back loop, the review menu Step wraps master's fix-aware menu, a GitHub check's address is read from the GraphQL panel, and the Flow scenarios run on the HTTP fake forge.
…peline-view-replacement # Conflicts: # src/README.md # src/launches.ts
This was referenced Oct 26, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Show a Task's work as a Flow of Steps across Desktop, CLI and chat, so people can see and act on progress, waits and expected work. Include repository Waves, cross-Machine links, forge release progress, Step-scoped evidence, pause-before/note steering and usual durations; Renovate merges one MR per turn.
Verified on
8d1c18f1:gate-r2-final-tests(72 passed),gate-r2-final-typecheck,gate-r2-final-lintandgate-r2-final-format; Collie's three isolated gate reruns also passed. The full gate recorded 4,285 passed, 11 skipped and the three failures listed below before those reruns.Required verification:
check—/home/mk/.local/share/mise/installs/bun/latest/bin/bun run check(in/home/mk/.herdr/worktrees/.collie/madskronborg/run-pipeline-view-replacement).The final gate fix was checked by the implementer and not re-reviewed: it added the lookup fixture's
shownresponse, separated the five-answer summary assertions from the complete Flow, and matched the steering ledger's exact filename.After merge, the planned release-build visual, keyboard/screen-reader and live pause-before-MR exercises remain.
Not settled by the run
The inherited “Flow is not on this branch” build note is superseded: this PR implements all 11 Flow tickets.
parkedis{ reason } | nullrather than the bare reason, because a Run that waits with no question and no recorded reason must still read as parked: the board'sits panestall line depends on it, and a bare null could not tell that Run from one that is not parked.blockedin the board aggregate is now the first blocked agent among the Task's Runs, in everyRun order, rather than the first in the agent list. This makes no difference in practice, because agentsOf is built over the same everyRun, and the unedited board tests stay green.