Skip to content
Back to skills

Stale Work Loop

ASecurity

Turn a fak stale-work packet into dedicated, contract-valid issue units, collision-safe dispatch waves, and witness-only reconciliation. PLAN by default; use when an operator asks to adjudicate stale-work candidates, file the dedicated issues, or launch fresh workers for already-filed stale-work issues.

  • 41 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 2, 2026
ai-agentsbashnextjsgit

Security analysis

A100/100

Scanned September 2, 2026

npx -y skills add anthony-chaudhary/fak --skill stale-work-loop --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Stale Work Loop?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Stale Work Loop
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/anthony-chaudhary-stale-work-loop-fak/badge)](https://www.skillsdirectory.com/skills/anthony-chaudhary-stale-work-loop-fak)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: stale-work-loop
description: Turn a fak stale-work packet into dedicated, contract-valid issue units, collision-safe dispatch waves, and witness-only reconciliation. PLAN by default; use when an operator asks to adjudicate stale-work candidates, file the dedicated issues, or launch fresh workers for already-filed stale-work issues.
allowed-tools: Read, Bash
metadata:
  opencode: claude-only
---

# /stale-work-loop

This skill operates the two-stage contract in [`docs/stale-work.md`](../../../docs/stale-work.md).
The discovery session never edits a candidate. A dedicated issue is the only authority for a
fresh worker to retain, update, or delete that candidate.

## 1. Plan first

Capture the #6613 packet and an issue read-back containing open plus recently closed rows, then
run the loop without a live flag:

```bash
fak stale-work --json --limit 20 > packet.json
fak stale-work loop --packet packet.json --issues open-and-recent.json --json
```

Inspect every unit:

- `issue.contract.ok` must be true before filing a generated body.
- `dispatch.status` must remain `REFUSE` while no dedicated issue exists.
- every ready issue has a distinct `worker_id`;
- overlapping paths occupy different waves; and
- `counts.launches` is zero.

Do not edit candidate content during this phase.

## 2. Explicit live gates

No live action is implied by invoking this skill. Use a live flag only when the operator
explicitly asked for that exact effect:

```bash
# GitHub mutation only. Requires the dedupe snapshot.
fak stale-work loop --packet packet.json --issues open-and-recent.json --live-issues --json

# Worker launch only. Re-read issues after filing and inspect contracts first.
fak stale-work loop --packet packet.json --issues refreshed-issues.json --live-launch --json
```

Never combine discovery and candidate mutation in one worker identity. The loop routes every
issue through `fak dispatch tick` with its own issue-derived identity and lease tree.

## 3. Reconcile from witnesses, not narration

Feed the dispatch/issue read-backs through `--witnesses`. `SHIPPED` requires all four:

1. independent issue state is `CLOSED`;
2. `dos commit-audit` says `OK` with `diff-witnessed`;
3. the focused acceptance read-back is `CLAIM_TEST_GREEN`; and
4. an independent source records `retained`, `updated`, or `deleted`.

Anything less is `STILL_OPEN` or `ABSTAIN`. A worker log or final message is never closure
evidence.

Persist only when requested:

```bash
fak stale-work loop --packet packet.json --issues refreshed-issues.json \
  --witnesses witnesses.json --state prior.json --state-out next.json --json
```

The evidence digest invalidates a cached adjudication whenever the candidate evidence changes.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.