Skip to content

fix(status): count work merged from another branch by its Task: line - #52

Open
ancelin-code wants to merge 1 commit into
developfrom
fix/status-task-line
Open

ancelin-code wants to merge 1 commit into
developfrom
fix/status-task-line

Conversation

@ancelin-code

Copy link
Copy Markdown
Owner

What and why

A task delivered by a pull request from a branch other than task/<id> stayed ready forever. where.sh kept proposing it, and follow.sh would launch a bench to redo shipped work. This happened in the tiroir retrieval cut with docs-001 and docs-002 (feedback item 1).

status.sh now also counts a merged pull request whose body has a line Task: specs/tasks/<id>.md. publish-bench.sh already writes that line; for a pull request opened by hand, a person adds it to the body. One line can name several task files.

How to review

  • etabli-status/scripts/status.sh: the bulk merged query now fetches body too. Its --jq keeps only the lines that start with Task:, and an awk step turns each tasks/<id>.md path on them into a task/<id> head for the existing record. The gh output is captured before parsing, so a failed query still stops the script instead of reading as "nothing merged".
  • Left out on purpose: the per-task fallback for pull requests older than the 200 most recent still checks only --head task/<id>. Adding a body search per task would double the GitHub calls on every poll. The limit is documented.
  • Left out on purpose: the --exclude option for follow.sh and launch-benches.sh that the feedback suggested. It would be a second, local-only way to say the same thing, lost on every restart.

How to try it

In a project whose task was shipped from another branch, edit that PR's body to add Task: specs/tasks/<id>.md, then run sh .agents/skills/etabli-status/scripts/status.sh: the task reads done, and its dependents become ready.

The --jq filter was also checked against real gh output and a CRLF body, since the test fake does not run jq.

Does it earn its place?

Without it, the only fix was to run follow.sh --no-launch and launch every task by hand. A mention of a task file anywhere else in a body, such as a decomposition PR listing the files it adds, does not count; a test covers that. Recorded in CHANGELOG.md.

🤖 Generated with Claude Code

A task delivered by a pull request whose head is not task/<id> stayed ready,
so where.sh kept proposing it and follow.sh would launch a bench to redo it.
The bulk merged query now also reads "Task:" lines from pull request bodies,
which publish-bench.sh already writes and a person can add by hand. One line
may name several task files.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions github-actions Bot added the ai-assisted AI agents worked on this change label Nov 10, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai-assisted AI agents worked on this change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant