Repository navigation
feat(skills): tasks-audit walks a user through their paused, blocked and failed Tasks - #90
Merged
Merged
Conversation
…and failed Tasks Adds a tasks-audit skill: resolve the user's assignee ID, inventory their paused/failed/blocked/stalled Tasks (metadata.pause plus the inbox), investigate with one read-only subagent per epic, report each reason in plain language, and apply only the changes the user approves. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
Author
|
CLI install wiring: https://archdev.ai/ArchAstro/firstlanding/pull/21080 |
calvin-archastro
marked this pull request as draft
October 29, 2026 23:18
…napshots The released CLI's background drain worker creates, holds and removes drain.lock/guarded, drain.guard and outbox/claim.lock under ~/.archdev/hooks/<repo>/ after a callback runs. A snapshot taken while the lock existed differed from one taken after it was removed (Linux), and hashing a drain.guard the worker holds open failed (Windows, also failing on main). These files are process state, not configuration, like the queue the snapshot already skipped. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Review on ArchCode
Problem and author intent
Users accumulate paused, blocked and failed Tasks (one sample: 36 paused Tasks for one user, 21 with inbox questions, 15 with reasons only in
metadata.pause). Thetasksskill's §7 has audit guidance, but nothing runs it end to end for my Tasks or explains the reasons in words a person can act on. Raw kinds likeneeds_access/host_environmentand[factory:pause kind=…]comments are the only explanation today.Intent: a
tasks-auditskill a user can invoke ("audit my tasks",/tasks-audit) that finds their stuck Tasks, explains each one plainly, and walks them through approved fixes.What changed
tasks-audit/SKILL.md— workflow: connect → resolve assigneeusr_…ID (the CLI has no "me" for--owner-user) → inventory (paused/failed/stalled lists,tasks blockedfiltered by owner andis_blocked,metadata.pause, joined with the org-widetasks inbox) → read-only investigation, one subagent per epic with a fixed brief and JSON findings schema (Workflow tool in Claude Code, parallel agents elsewhere, sequential fallback) → plain-language report ordered by what the user can do now, with blocker chains → choice-by-choice walk-through → approved commands only (tasks answer … --expected-version,deps add, split human steps, cancel).tasks-audit/scripts/bootstrap.{sh,ps1}— copies of the tasks-execute bootstrap; probestasks inboxandtasks answer --expected-versioninstead oftasks heartbeat.catalog/archdev.jsonentry, regeneratedplugins/*, a pointer fromtasks§7, the release-doc source list.scripts/fake-archdevanswers the new probes (ARCHDEV_FAKE_NO_INBOX=1drops inbox); both bootstrap test scripts covertasks-audit, including the no-inbox rejection.Unchanged:
tasks§7 content, other skills' bootstraps.Scope / risk / user impact
tasks-auditskill in every harness plugin andnpx skills add.archdev setup/upgradeinstall it once the companion firstlanding PR lands.Testing
tools/plugin-gen:npm run typecheck,npm test(138 pass, 0 fail — includes "every plugin carries every skill byte for byte" and the server-ownership check for every SKILL.md),npm run check(180 files match).scripts/test-skill-bootstrap.sh: alltasks-auditcases pass (harness envs, old versions, no-local, no-inbox, all Homebrew cases)./opt/homebrew/bin/archdev.blocked_by_countcounts done blockers,is_stalledrows have no lease,tasks blockedis org-wide incl. cancelled,metadata.pausemissing, cancel unverified) are fixed.scripts/test-skill-bootstrap.sh, run by.github/workflows/skill-bootstrap-checks.ymlon PRs) plus plugin-gen tests (.github/workflows/plugins.yml).test-skill-bootstrap.ps1was not run locally (no pwsh); CI runs it.CI fix included
scripts/test-skill-bootstrap-cli.{sh,ps1}failed with the released CLI 0.55.8. The Windows job fails onmaintoo.~/.archdev/hooks/<repo>/after a callback runs:drain.lock/guarded,drain.guardandoutbox/claim.lock.drain.lock/guarded, which was gone by the "after" snapshot.Get-FileHashcould not read thedrain.guardthe worker holds open.queue/..archdev/hooks.json, harness settings files) is still compared.Follow-ups
tasks-auditto the CLI'sSKILL_NAMES/taskscompanions (PR linked in comments).tasks update --status cancelledis not inupdate --help; the skill tells the agent to check and report a refusal.🤖 Generated with Claude Code