Skip to content

Commit 63c7c78

Browse files
authored
Merge pull request #201 from benwu95/feat/185-autonomous-drift-draft
feat(drift): Autonomous Drift Fix Drafting and Status Integration
2 parents 3d8871e + 52d7330 commit 63c7c78

67 files changed

Lines changed: 3403 additions & 141 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.agents/skills/prospec-ff/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ Verify the output against each phase's **site-specific** Constitution rule (INVE
201201
- **NEVER** skip metadata.yaml status progression — story → plan → tasks (or story → tasks under `scale: quick`); the `prospec change` commands own every transition — never hand-edit metadata.yaml
202202
- **NEVER** discard completed phases on failure — error recovery is FF's core capability
203203
- **NEVER** skip Layer 2 knowledge loading for standard/full — Plan phase must load related module AI Knowledge (quick skips Plan and loads none)
204-
- **NEVER** skip Phase 3 without a user-confirmed `scale: quick` in metadata.yaml — skipping plan is an explicit contract, not a shortcut
204+
- **NEVER** skip Phase 3 without a `scale: quick` in metadata.yaml — confirmed by the user, or assigned by `prospec change auto-draft` from the drift check it drafted for; skipping plan is an explicit contract, not a shortcut
205205
- **NEVER** automatically commit, push, or archive during autonomous cascading without explicit human Tastemaker approval
206206
- **NEVER** continue cascading past a tripped circuit breaker or unresolved critical findings
207207
- **NEVER** use passive voice for confirmation wait points (e.g., "confirm before proceeding") — always use an active imperative ("STOP. Ask the user...").

.agents/skills/prospec-ff/references/metadata-format.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
This document is a **reader's guide** to a change's `metadata.yaml`
44
(`.prospec/changes/{name}/metadata.yaml`). The file is **CLI-written, skill-read** (issue
55
#107): every mutation goes through a `prospec` command — `change story` (create),
6-
`change scale`, `change status`, `change log` (quality_log append), `verify record`,
6+
`change scale`, `change auto-draft` (create), `change status`, `change log` (quality_log append), `verify record`,
77
`check --record-review` / `--record-tests`, `archive` — so skills never hand-serialize it.
88
What follows documents the shape those commands emit, so a skill reading the file (or
99
composing structured CLI input) knows what each field means.
@@ -41,14 +41,14 @@ finds itself about to WRITE this shape by hand has taken a wrong turn — run th
4141
| `name` | yes | `prospec change story` (create) | change dir name (kebab-case) |
4242
| `created_at` | yes | `prospec change story` (create) | full ISO 8601 |
4343
| `status` | yes | `prospec change plan/tasks/status` + `verify record` (S/A) + `archive` | one of the lifecycle values (`_status-lifecycle.md`), forward-only |
44-
| `scale` | no (defaults `standard`) | `prospec change scale`, after user-confirmed assessment | one of the schema's `CHANGE_SCALES` values |
45-
| `related_modules` | no | `prospec change story` (auto-match or `--related-module`) | bare module names |
44+
| `scale` | no (defaults `standard`) | `prospec change scale`, after user-confirmed assessment; also `change auto-draft` at create time, from the drift check that triggered it | one of the schema's `CHANGE_SCALES` values |
45+
| `related_modules` | no | `prospec change story` (auto-match or `--related-module`); `change auto-draft` writes the module it attributed, or nothing | bare module names |
4646
| `description` | no | `prospec change story --description` | one line, plain text |
4747
| `quality_log` | no | `prospec change log` (any station) + `verify record` (append) | gate trail — see below |
4848
| `review_provenance` | no | `prospec check --record-review` at review | machine-written baseline |
4949
| `test_provenance` | no | `prospec check --record-tests` at verify | machine-written test baseline — see below |
5050
| `introduced_by` | no | `prospec change story --introduced-by` (bug-fix changes only) | escaped-defect registration |
51-
| `issue` | no | `prospec change story --issue` | external-tracker registration — see below |
51+
| `issue` | no | `prospec change story --issue`, `prospec change auto-draft --issue` | external-tracker registration — see below |
5252

5353
### `test_provenance` — the recorded test run
5454

.agents/skills/prospec-new-story/references/metadata-format.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
This document is a **reader's guide** to a change's `metadata.yaml`
44
(`.prospec/changes/{name}/metadata.yaml`). The file is **CLI-written, skill-read** (issue
55
#107): every mutation goes through a `prospec` command — `change story` (create),
6-
`change scale`, `change status`, `change log` (quality_log append), `verify record`,
6+
`change scale`, `change auto-draft` (create), `change status`, `change log` (quality_log append), `verify record`,
77
`check --record-review` / `--record-tests`, `archive` — so skills never hand-serialize it.
88
What follows documents the shape those commands emit, so a skill reading the file (or
99
composing structured CLI input) knows what each field means.
@@ -41,14 +41,14 @@ finds itself about to WRITE this shape by hand has taken a wrong turn — run th
4141
| `name` | yes | `prospec change story` (create) | change dir name (kebab-case) |
4242
| `created_at` | yes | `prospec change story` (create) | full ISO 8601 |
4343
| `status` | yes | `prospec change plan/tasks/status` + `verify record` (S/A) + `archive` | one of the lifecycle values (`_status-lifecycle.md`), forward-only |
44-
| `scale` | no (defaults `standard`) | `prospec change scale`, after user-confirmed assessment | one of the schema's `CHANGE_SCALES` values |
45-
| `related_modules` | no | `prospec change story` (auto-match or `--related-module`) | bare module names |
44+
| `scale` | no (defaults `standard`) | `prospec change scale`, after user-confirmed assessment; also `change auto-draft` at create time, from the drift check that triggered it | one of the schema's `CHANGE_SCALES` values |
45+
| `related_modules` | no | `prospec change story` (auto-match or `--related-module`); `change auto-draft` writes the module it attributed, or nothing | bare module names |
4646
| `description` | no | `prospec change story --description` | one line, plain text |
4747
| `quality_log` | no | `prospec change log` (any station) + `verify record` (append) | gate trail — see below |
4848
| `review_provenance` | no | `prospec check --record-review` at review | machine-written baseline |
4949
| `test_provenance` | no | `prospec check --record-tests` at verify | machine-written test baseline — see below |
5050
| `introduced_by` | no | `prospec change story --introduced-by` (bug-fix changes only) | escaped-defect registration |
51-
| `issue` | no | `prospec change story --issue` | external-tracker registration — see below |
51+
| `issue` | no | `prospec change story --issue`, `prospec change auto-draft --issue` | external-tracker registration — see below |
5252

5353
### `test_provenance` — the recorded test run
5454

.claude/skills/prospec-ff/SKILL.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ Verify the output against each phase's **site-specific** Constitution rule (INVE
201201
- **NEVER** skip metadata.yaml status progression — story → plan → tasks (or story → tasks under `scale: quick`); the `prospec change` commands own every transition — never hand-edit metadata.yaml
202202
- **NEVER** discard completed phases on failure — error recovery is FF's core capability
203203
- **NEVER** skip Layer 2 knowledge loading for standard/full — Plan phase must load related module AI Knowledge (quick skips Plan and loads none)
204-
- **NEVER** skip Phase 3 without a user-confirmed `scale: quick` in metadata.yaml — skipping plan is an explicit contract, not a shortcut
204+
- **NEVER** skip Phase 3 without a `scale: quick` in metadata.yaml — confirmed by the user, or assigned by `prospec change auto-draft` from the drift check it drafted for; skipping plan is an explicit contract, not a shortcut
205205
- **NEVER** automatically commit, push, or archive during autonomous cascading without explicit human Tastemaker approval
206206
- **NEVER** continue cascading past a tripped circuit breaker or unresolved critical findings
207207
- **NEVER** use passive voice for confirmation wait points (e.g., "confirm before proceeding") — always use an active imperative ("STOP. Ask the user...").

.claude/skills/prospec-ff/references/metadata-format.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
This document is a **reader's guide** to a change's `metadata.yaml`
44
(`.prospec/changes/{name}/metadata.yaml`). The file is **CLI-written, skill-read** (issue
55
#107): every mutation goes through a `prospec` command — `change story` (create),
6-
`change scale`, `change status`, `change log` (quality_log append), `verify record`,
6+
`change scale`, `change auto-draft` (create), `change status`, `change log` (quality_log append), `verify record`,
77
`check --record-review` / `--record-tests`, `archive` — so skills never hand-serialize it.
88
What follows documents the shape those commands emit, so a skill reading the file (or
99
composing structured CLI input) knows what each field means.
@@ -41,14 +41,14 @@ finds itself about to WRITE this shape by hand has taken a wrong turn — run th
4141
| `name` | yes | `prospec change story` (create) | change dir name (kebab-case) |
4242
| `created_at` | yes | `prospec change story` (create) | full ISO 8601 |
4343
| `status` | yes | `prospec change plan/tasks/status` + `verify record` (S/A) + `archive` | one of the lifecycle values (`_status-lifecycle.md`), forward-only |
44-
| `scale` | no (defaults `standard`) | `prospec change scale`, after user-confirmed assessment | one of the schema's `CHANGE_SCALES` values |
45-
| `related_modules` | no | `prospec change story` (auto-match or `--related-module`) | bare module names |
44+
| `scale` | no (defaults `standard`) | `prospec change scale`, after user-confirmed assessment; also `change auto-draft` at create time, from the drift check that triggered it | one of the schema's `CHANGE_SCALES` values |
45+
| `related_modules` | no | `prospec change story` (auto-match or `--related-module`); `change auto-draft` writes the module it attributed, or nothing | bare module names |
4646
| `description` | no | `prospec change story --description` | one line, plain text |
4747
| `quality_log` | no | `prospec change log` (any station) + `verify record` (append) | gate trail — see below |
4848
| `review_provenance` | no | `prospec check --record-review` at review | machine-written baseline |
4949
| `test_provenance` | no | `prospec check --record-tests` at verify | machine-written test baseline — see below |
5050
| `introduced_by` | no | `prospec change story --introduced-by` (bug-fix changes only) | escaped-defect registration |
51-
| `issue` | no | `prospec change story --issue` | external-tracker registration — see below |
51+
| `issue` | no | `prospec change story --issue`, `prospec change auto-draft --issue` | external-tracker registration — see below |
5252

5353
### `test_provenance` — the recorded test run
5454

.claude/skills/prospec-new-story/references/metadata-format.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
This document is a **reader's guide** to a change's `metadata.yaml`
44
(`.prospec/changes/{name}/metadata.yaml`). The file is **CLI-written, skill-read** (issue
55
#107): every mutation goes through a `prospec` command — `change story` (create),
6-
`change scale`, `change status`, `change log` (quality_log append), `verify record`,
6+
`change scale`, `change auto-draft` (create), `change status`, `change log` (quality_log append), `verify record`,
77
`check --record-review` / `--record-tests`, `archive` — so skills never hand-serialize it.
88
What follows documents the shape those commands emit, so a skill reading the file (or
99
composing structured CLI input) knows what each field means.
@@ -41,14 +41,14 @@ finds itself about to WRITE this shape by hand has taken a wrong turn — run th
4141
| `name` | yes | `prospec change story` (create) | change dir name (kebab-case) |
4242
| `created_at` | yes | `prospec change story` (create) | full ISO 8601 |
4343
| `status` | yes | `prospec change plan/tasks/status` + `verify record` (S/A) + `archive` | one of the lifecycle values (`_status-lifecycle.md`), forward-only |
44-
| `scale` | no (defaults `standard`) | `prospec change scale`, after user-confirmed assessment | one of the schema's `CHANGE_SCALES` values |
45-
| `related_modules` | no | `prospec change story` (auto-match or `--related-module`) | bare module names |
44+
| `scale` | no (defaults `standard`) | `prospec change scale`, after user-confirmed assessment; also `change auto-draft` at create time, from the drift check that triggered it | one of the schema's `CHANGE_SCALES` values |
45+
| `related_modules` | no | `prospec change story` (auto-match or `--related-module`); `change auto-draft` writes the module it attributed, or nothing | bare module names |
4646
| `description` | no | `prospec change story --description` | one line, plain text |
4747
| `quality_log` | no | `prospec change log` (any station) + `verify record` (append) | gate trail — see below |
4848
| `review_provenance` | no | `prospec check --record-review` at review | machine-written baseline |
4949
| `test_provenance` | no | `prospec check --record-tests` at verify | machine-written test baseline — see below |
5050
| `introduced_by` | no | `prospec change story --introduced-by` (bug-fix changes only) | escaped-defect registration |
51-
| `issue` | no | `prospec change story --issue` | external-tracker registration — see below |
51+
| `issue` | no | `prospec change story --issue`, `prospec change auto-draft --issue` | external-tracker registration — see below |
5252

5353
### `test_provenance` — the recorded test run
5454

0 commit comments

Comments
 (0)