Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
c629ca0
spec: issue-backlog-sweep — 15-issue sweep frame + exported spec (dev…
OriNachum Jul 28, 2026
afbb0c4
plan: issue-backlog-sweep — 19 tasks / 6 waves covering 52 targets (d…
OriNachum Jul 28, 2026
7059452
feat(scope): fan exploration out to smaller-tier read-only subagents …
OriNachum Jul 28, 2026
4b88608
fix(plan): validate cover targets against the live frame (#90, t8)
OriNachum Jul 28, 2026
4b97c57
fix(store): gate schema_version before parsing; tolerant nested loads…
OriNachum Jul 28, 2026
d655c2d
feat(render): identifier-aware markdown escaping for verbatim text (#…
OriNachum Jul 28, 2026
7b654c6
feat(assign-to-workforce): durable gate-2 split artifact (#82, t15)
OriNachum Jul 28, 2026
621392a
merge(tt1): agent/ibs/t1
OriNachum Jul 28, 2026
cf8538a
merge(tt2): agent/ibs/t2
OriNachum Jul 28, 2026
e493bc1
merge(tt8): agent/ibs/t8
OriNachum Jul 28, 2026
7239588
merge(tt15): agent/ibs/t15
OriNachum Jul 28, 2026
44390db
merge(tt16): agent/ibs/t16
OriNachum Jul 28, 2026
615667c
feat(interrogate): --resolve clears a claim's blocking hard question …
OriNachum Jul 28, 2026
f439537
fix(summary): scope Planned Work and Actual Delivery to confirmed tas…
OriNachum Jul 28, 2026
22df59a
feat(plan): per-target deferral so milestone-scoped plans converge (#…
OriNachum Jul 28, 2026
35932e4
fix(export): render all parks, resolved questions, dead seeds; escape…
OriNachum Jul 28, 2026
c2d55db
merge(t3): agent/ibs/t3
OriNachum Jul 28, 2026
cdf52fa
merge(t4): agent/ibs/t4
OriNachum Jul 28, 2026
63b460d
merge(t9): agent/ibs/t9
OriNachum Jul 28, 2026
88bc499
merge(t13): agent/ibs/t13
OriNachum Jul 28, 2026
7ccf4ca
chore(export): re-export the 2026-07-17 plan artifact through the new…
OriNachum Jul 28, 2026
24b1837
fix(reject): cascade over honesty conditions and hard questions (#83,…
OriNachum Jul 28, 2026
95a5c2a
fix(plan): validate --dep at task creation (#86, t10)
OriNachum Jul 28, 2026
a7eda7a
feat(export): mark confirmed claims contested by an approved deviatio…
OriNachum Jul 28, 2026
a6927ea
merge(t5): agent/ibs/t5
OriNachum Jul 28, 2026
f62caed
merge(t10): agent/ibs/t10
OriNachum Jul 28, 2026
ed62afd
merge(t14): agent/ibs/t14
OriNachum Jul 28, 2026
a4aabfd
feat(plan): transactional multi-id confirm/reject (#86, t11)
OriNachum Jul 28, 2026
a7b5aa1
feat(amend): correct a claim or scope finding without id churn (#84, t6)
OriNachum Jul 28, 2026
b9767f4
merge(t6): agent/ibs/t6
OriNachum Jul 28, 2026
6040b29
merge(t11): agent/ibs/t11
OriNachum Jul 28, 2026
6146c4d
feat(scope): --seeds accepts hard-question ids (#84, t7)
OriNachum Jul 28, 2026
caf6b29
feat(plan): risk --amend corrects a stale risk in place (#84, t12)
OriNachum Jul 28, 2026
d4c2891
merge(t7): agent/ibs/t7
OriNachum Jul 28, 2026
aebda36
merge(t12): agent/ibs/t12
OriNachum Jul 28, 2026
028f980
docs(learn): teach every surface shipped in the sweep (#52, t17)
OriNachum Jul 28, 2026
1f2baa3
merge(t17): agent/ibs/t17
OriNachum Jul 28, 2026
f72fcf4
docs: sweep README/CLAUDE/skills docs + changelog for the fifteen-iss…
OriNachum Jul 28, 2026
a28c4b2
merge(t18): agent/ibs/t18
OriNachum Jul 28, 2026
95d8fed
test: end-to-end verification + issue closure map (t19)
OriNachum Jul 28, 2026
76b1966
merge(t19): agent/ibs/t19
OriNachum Jul 28, 2026
3404bd7
chore(deviate): commit the delivery ledger so d1/d2 reproduce for a f…
OriNachum Jul 28, 2026
df54159
docs(delivery): delivery summary for the issue-backlog-sweep run
OriNachum Jul 28, 2026
445ad3a
refactor: address SonarCloud findings on the sweep's new modules
OriNachum Jul 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
58 changes: 54 additions & 4 deletions .claude/skills/assign-to-workforce/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ repository whose plan you are implementing (plans persist under `.devague/`
in the current directory):

```bash
bash .claude/skills/assign-to-workforce/scripts/assign-to-workforce.sh split-plan [--plan <slug>]
bash .claude/skills/assign-to-workforce/scripts/assign-to-workforce.sh split-plan [--plan <slug>] [--write]
bash .claude/skills/assign-to-workforce/scripts/assign-to-workforce.sh waves [--plan <slug>] [--json]
bash .claude/skills/assign-to-workforce/scripts/assign-to-workforce.sh help
```
Expand All @@ -55,14 +55,18 @@ implementation split plan: task map (task id, wave, summary verbatim, whether
an instruction is present, acceptance-criteria count), proposed per-task
agent + model assignment, the go/no-go question, and — last — an End state
section that is the verbatim output of `devague plan deliverables` (#70),
degrading to a one-line hint on a `devague` too old to have the verb. The
`waves` subcommand forwards to `devague plan waves` verbatim.
degrading to a one-line hint on a `devague` too old to have the verb. Adding
`--write` (issue #82) additionally persists that same content — plus an
owner/model annotation table the script reads back on the next `--write` —
to a durable file next to the exported plan-md; see *The durable split
artifact* below. The `waves` subcommand forwards to `devague plan waves`
verbatim.

### Usage

| Subcommand | What it does |
|------------|--------------|
| `split-plan [--plan S]` | Read `devague plan waves --json` and print the implementation split plan — task map (summary/instruction/acceptance-criteria count, verbatim) with per-task agent + model proposal, go/no-go, and a trailing End state section quoting `devague plan deliverables` verbatim (one-line hint on an older devague) — ready for human go/no-go review. |
| `split-plan [--plan S] [--write]` | Read `devague plan waves --json` and print the implementation split plan — task map (summary/instruction/acceptance-criteria count, verbatim) with per-task agent + model proposal, go/no-go, and a trailing End state section quoting `devague plan deliverables` verbatim (one-line hint on an older devague) — ready for human go/no-go review. With `--write`, also persist that content to `docs/plans/<created-date>-<slug>-split.md` (issue #82) — the durable gate-2 record; re-running overwrites the same path in place and preserves any hand-edited Owner/Model cells. |
| `waves [--plan S] [--json]` | Forward to `devague plan waves [--json]`. Read-only; lists wave batches. On a converged plan exits 0 listing the waves. |
| `help` | Print usage. |

Expand Down Expand Up @@ -113,6 +117,45 @@ bash .claude/skills/assign-to-workforce/scripts/assign-to-workforce.sh split-pla

Do not proceed to fan-out until the human approves the split plan.

### The durable split artifact (`split-plan --write`)

Unlike the exported spec (`docs/specs/*.md`) and the exported plan
(`docs/plans/*.md`), the implementation split plan — gate 2 — survived only
in conversation before issue #82. `split-plan --write` closes that gap with
an **artifact-only** change (decision c25): the written file *is* the record;
there is no plan-schema change and no new `devague` CLI verb, so `devague
plan waves`/`show`/`deliverables` stay read-only exactly as before.

```bash
bash .claude/skills/assign-to-workforce/scripts/assign-to-workforce.sh split-plan --write
```

This writes (or overwrites) `docs/plans/<created-date>-<slug>-split.md` —
the same date-prefix convention `devague plan export` uses for the plan-md
it sits beside, derived from the plan's own `created` timestamp (via
`devague plan show --json`) rather than today's date, so re-running the
command is idempotent: it updates the same file in place instead of spawning
a dated duplicate. The file carries:

1. The dependency waves and the full per-task content (summary, instruction,
acceptance criteria, covered targets) for every wave — quoted verbatim
from `devague plan waves --json`, organized under one `## Wave N` heading
per wave and one `### <task-id> — <summary>` heading per task.
2. A **Task assignments** table (`Task | Owner | Model`) — the durable form
of the human's per-task owner/model decision (#82 ask 2). The script
**reads this table back** from any existing file at the same path before
regenerating: a human's edited `Owner`/`Model` cell for a given task id
survives the next `--write`, matched by task id, rather than being
clobbered back to the `sonnet` default. Only edit this table (or add a
new plan/task and re-run) — don't hand-edit the wave/task sections above
it, since those are fully regenerated every run.
3. The same End state section as plain `split-plan` — the verbatim output of
`devague plan deliverables`, nested under its own `## End state` heading.

Present this file (or its stdout twin from plain `split-plan`) at the go/no-go
either way; `--write` is for keeping a committed record of what was actually
approved, not a replacement for the live review.

### The `waves --json` payload — the single source for every brief

`devague plan waves --json` emits `{"plan": "<slug>", "waves": [[...], ...],
Expand Down Expand Up @@ -296,6 +339,13 @@ an older `devague`, it prints exactly one hint line naming the minimum version
(e.g. `hint: End state view requires devague >= 0.18.0 (devague plan
deliverables)`) and `split-plan` still exits 0.

`--write` adds exactly one line after all of the above: `wrote split
artifact: <path>` on the first run, `updated split artifact: <path>` on every
run after (issue #82). It calls one additional read-only command,
`devague plan show --json` (for the plan's `created` timestamp and title);
a failure there exits non-zero with that command's own stderr, same as a
`plan waves --json` failure.

## Worked example

Picking up after `/spec-to-plan` exported a plan for the frame `my-feature`:
Expand Down
Loading
Loading