Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
4902cb7
feat: show the release cut in the launch preview and retire changelog
REPPL Oct 11, 2026
952bb89
Merge branch 'feat/verb-split-2-version-on-board' into feat/verb-spli…
REPPL Oct 11, 2026
f5268bb
docs: stop the manifest comment naming the retired changelog verb
REPPL Oct 11, 2026
2f90a03
fix: point the loop and the docs lint at ahoy install, not prepare-th…
REPPL Oct 11, 2026
aeb442d
feat: fold prepare-this-repo into ahoy install and retire its page
REPPL Oct 11, 2026
076b764
docs: correct the ahoy chapter's status alias and its user-scope tree
REPPL Oct 11, 2026
c56be93
fix: bump the changelog composer's prompt version for the preview rename
REPPL Oct 11, 2026
864ed6d
Merge branch 'feat/verb-split-3-launch-preview' into feat/verb-split-…
REPPL Oct 11, 2026
df4c1e3
fix: start the ahoy install page from the detection pass, not the mar…
REPPL Oct 11, 2026
a1ba39e
feat: merge memory and source into one library verb
REPPL Oct 11, 2026
b485ce7
feat: report and rewrite a guard hook that runs the old refresh verb
REPPL Oct 11, 2026
fe63ea2
chore: capture the two meanings ingest has under library
REPPL Oct 11, 2026
2f9e622
docs: keep the library chapter's prose free of sub-verb and flag spel…
REPPL Oct 11, 2026
a623879
Merge branch 'feat/verb-split-4-ahoy-install-conventions' into feat/v…
REPPL Oct 11, 2026
46ace4b
fix: keep the guard refusing the retired source ledger flip
REPPL Oct 11, 2026
23509fe
Merge branch 'feat/verb-split-2-version-on-board' into feat/verb-spli…
REPPL Oct 11, 2026
ecbeb04
Merge remote-tracking branch 'origin/main' into feat/verb-split-3-lau…
REPPL Oct 11, 2026
c11f4d7
Merge branch 'feat/verb-split-3-launch-preview' into feat/verb-split-…
REPPL Oct 11, 2026
84642c7
Merge branch 'feat/verb-split-4-ahoy-install-conventions' into feat/v…
REPPL Oct 11, 2026
c36ecb3
Merge remote-tracking branch 'origin/main' into feat/verb-split-4-aho…
REPPL Oct 11, 2026
9794461
Merge branch 'feat/verb-split-4-ahoy-install-conventions' into feat/v…
REPPL Oct 11, 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
10 changes: 10 additions & 0 deletions .abcd/development/agents/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,16 @@ over the brief's earlier `1.0.0`-at-close expectation). The four M6 synthesis
agents below entered at `0.1.0`, wired to their `abcd disembark` verbs and
unmeasured; `lifeboat-oracle` has since become `lifeboat-reviewer` at `0.1.1`.

## 2026-10-11 (itd-2610090831227812 — the changelog verb retires into the launch preview)

### release-changelog-composer 0.4.3

PATCH: the read-only preview the definition names as a source of the cut is
now the `cut` member of `abcd launch --dry-run --json`, since `abcd changelog`
retired into the launch preview (spc-2610100613109045, step 3). The cut's
shape and every rule for composing from it are unchanged. Unmeasured, in the
`0.x` band.

## 2026-10-10 (iss-2610091942156774 — sub-agents are taught the rm the guard refuses)

### cold-reading-comparative 0.1.4
Expand Down
2 changes: 1 addition & 1 deletion .abcd/development/brief/01-product/01-press-release.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Press Release

> **abcd helps a product thinker realise an intent as a high-fidelity prototype or demonstrator — carrying the why from idea to shipped reality.** State what should exist, why, for whom, and what good looks like, as a press-release intent (`/abcd:intent "<text>"`); abcd holds that why through planning (`/abcd:intent plan`), the readiness gate (`/abcd:intent ready`) and delivery, and when the work lands it is audited against the intent's own acceptance criteria (`/abcd:intent audit`), with the verdict recorded on the intent, so what was promised and what was delivered are read side by side. The lifeboat is a key capability of the same product: point `/abcd:disembark pack <source-repo> <dest>` at any repository — one that has grown unwieldy, or one that died years ago and that abcd never managed — and abcd reads it without writing a single byte back, packing its hard-won knowledge — decisions, principles, pitfalls, the graveyard of what failed, the spine of what was built and why — into a portable lifeboat artefact at `<dest>`, alongside a coverage report that names what it could *not* ground and the questions a human must answer. `/abcd:disembark probe <source-repo>` renders that coverage verdict on its own, and `/abcd:embark from <path>` unpacks a lifeboat into a clean foundation with the same wisdom but none of the cruft. A small command surface rounds out the workflow: install (`/abcd:ahoy install`) and public release (`/abcd:launch ship`); `/abcd:capture` keeps discovered issues structured as the project evolves; and `/abcd:memory` curates a queryable knowledge substrate from those same sources. Bare invocation of any command shows status + suggested next actions; state-mutating actions require an explicit sub-verb (the universal abcd convention).
> **abcd helps a product thinker realise an intent as a high-fidelity prototype or demonstrator — carrying the why from idea to shipped reality.** State what should exist, why, for whom, and what good looks like, as a press-release intent (`/abcd:intent "<text>"`); abcd holds that why through planning (`/abcd:intent plan`), the readiness gate (`/abcd:intent ready`) and delivery, and when the work lands it is audited against the intent's own acceptance criteria (`/abcd:intent audit`), with the verdict recorded on the intent, so what was promised and what was delivered are read side by side. The lifeboat is a key capability of the same product: point `/abcd:disembark pack <source-repo> <dest>` at any repository — one that has grown unwieldy, or one that died years ago and that abcd never managed — and abcd reads it without writing a single byte back, packing its hard-won knowledge — decisions, principles, pitfalls, the graveyard of what failed, the spine of what was built and why — into a portable lifeboat artefact at `<dest>`, alongside a coverage report that names what it could *not* ground and the questions a human must answer. `/abcd:disembark probe <source-repo>` renders that coverage verdict on its own, and `/abcd:embark from <path>` unpacks a lifeboat into a clean foundation with the same wisdom but none of the cruft. A small command surface rounds out the workflow: install (`/abcd:ahoy install`) and public release (`/abcd:launch ship`); `/abcd:capture` keeps discovered issues structured as the project evolves; and `/abcd:library` keeps the documents you consult and curates a queryable knowledge substrate from those same sources. Bare invocation of any command shows status + suggested next actions; state-mutating actions require an explicit sub-verb (the universal abcd convention).
>
> "I know what I want built and I can tell in a minute whether a prototype got it right. What I could never do was hold that line through the engineering. abcd takes the why as I wrote it, builds against it, and shows me what was promised next to what was delivered," said Iris, a product thinker.
>
Expand Down
2 changes: 1 addition & 1 deletion .abcd/development/brief/01-product/02-context.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ The commands this context turns on are these; the generated [CLI reference](../.
- **`/abcd:launch ship`** — cut a curated release from the single repo (the packaging filter denies `.abcd/**`, so the released binaries do not carry it), scrub for PII/secrets, stamp the version, update the marketplace entry. Bare `/abcd:launch` refuses and asks for `--dry-run`; the `--dry-run` flag previews the bundle, its secret scan and the release gates, and writes only its pre-flight report, to the local tier.
- **`/abcd:intent`** — bare quoted `/abcd:intent "<text>"` is the canonical create (spc-30/itd-46), plus the sub-verbs that plan, gate, audit, hold, target and reclassify an intent (`consistency` per itd-48, which superseded itd-31; the CLI reference lists them all), with `refine` / `grill` / `ship` / `shape` remaining design targets. `new` is not a sub-verb: `abcd intent new` is refused and names the quoted create. There is no plain `list` sub-verb — it is folded into the bare render per SD001. Manages **intents** (press-release-format intent docs at `.abcd/development/intents/{drafts,planned,shipped,disciplines,superseded}/`). `plan` promotes an intent to `planned/` and plans the work as a spec on the native spec store ([adr-26](../../decisions/adrs/0026-native-spec-layer-ccpm-backend.md); the companion harness `ccpm` as the deeper backend); `ship` drives that spec to completion (or the full pipeline if from drafts/); a spec-close hook reconciles standalone/bundle intents planned → shipped automatically on a successful close (spc-28 `intent_lifecycle.reconcile`); disciplines move from drafts/ to disciplines/ on plan and stay there. Bare `/abcd:intent` shows status+help.
- **`/abcd:capture`** — capture / list / promote / resolve / wontfix issues (the structured `.abcd/work/issues/` ledger). Issues live at `.abcd/work/issues/{open,resolved,wontfix}/iss-N-<slug>.md`. See itd-4. The cross-corpus synthesist (`/abcd:dredge`) is a draft intent, itd-25.
- **`/abcd:memory`** — curate a queryable knowledge substrate (`ingest` external sources / `ask` queries / `lint` health-checks) from specs, ADRs, reviews, and memory. See itd-36 and [`05-internals/07-memory.md`](../05-internals/07-memory.md).
- **`/abcd:library`** — keep the sources corpus (`init` / `add` / `declassify` / `ledger` / `sync-banlist` / `cite-check`, per itd-76) and curate a queryable memory store (`ingest` external sources / `ask` queries / `lint` health-checks) from specs, ADRs, reviews, and memory, two stores under one command (itd-2610090831227812). See itd-36, [`04-surfaces/07-library.md`](../04-surfaces/07-library.md) and [`05-internals/07-memory.md`](../05-internals/07-memory.md).

**Designed, not built: the `intent grill` sub-verb** (beside `refine`, also a design target; `abcd intent` registers neither, and [`04-surfaces/README.md`](../04-surfaces/README.md) holds the design target):

Expand Down
2 changes: 1 addition & 1 deletion .abcd/development/brief/01-product/03-mental-model.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ abcd already covers Mapping (press release + acceptance criteria) and Justificat

## The project is a growing system

abcd is itself a growing system that shows the symptoms of all growing systems: surface count grows (the user-facing command design target — `/abcd:ahoy`, `/abcd:disembark`, `/abcd:embark`, `/abcd:launch`, `/abcd:intent`, `/abcd:capture`, `/abcd:memory` — plus many sub-verbs); agent count grows (the catalog already lists more than a dozen agents, several with multiple roles each — see [`05-internals/01-agents.md`](../05-internals/01-agents.md)); cross-cutting concerns proliferate (the active roster in [`intents/disciplines/`](../../intents/disciplines/) keeps growing); internal vocabulary grows (`lifeboat`, `voyage`, `logbook`, `discipline`, `kind`, `surface_history`, `page class`, `source class`, `quotation budget`, …). Every term adds expressive power AND opacity for newcomers.
abcd is itself a growing system that shows the symptoms of all growing systems: surface count grows (the user-facing command design target — `/abcd:ahoy`, `/abcd:disembark`, `/abcd:embark`, `/abcd:launch`, `/abcd:intent`, `/abcd:capture`, `/abcd:library` — plus many sub-verbs); agent count grows (the catalog already lists more than a dozen agents, several with multiple roles each — see [`05-internals/01-agents.md`](../05-internals/01-agents.md)); cross-cutting concerns proliferate (the active roster in [`intents/disciplines/`](../../intents/disciplines/) keeps growing); internal vocabulary grows (`lifeboat`, `voyage`, `logbook`, `discipline`, `kind`, `surface_history`, `page class`, `source class`, `quotation budget`, …). Every term adds expressive power AND opacity for newcomers.

Three failure modes the brief actively guards against:

Expand Down
4 changes: 2 additions & 2 deletions .abcd/development/brief/01-product/04-scope.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@ The scope this brief covers is the intents on the lifecycle shelves: what has sh
- `/abcd:launch` — public promotion — see [`04-surfaces/04-launch.md`](../04-surfaces/04-launch.md)
- `/abcd:intent` — press-release intent capture — see [`04-surfaces/05-intent.md`](../04-surfaces/05-intent.md)
- `/abcd:capture` — issue ledger — see [`04-surfaces/06-capture.md`](../04-surfaces/06-capture.md)
- `/abcd:memory` — multi-upstream curated knowledge substrate (per itd-36) — see [`05-internals/07-memory.md`](../05-internals/07-memory.md)
- `/abcd:library` — the sources corpus (per itd-76) and the multi-upstream curated memory store (per itd-36), two stores under one command (itd-2610090831227812) — see [`04-surfaces/07-library.md`](../04-surfaces/07-library.md) and [`05-internals/07-memory.md`](../05-internals/07-memory.md)
- `/abcd` — top-level where-am-i status board (per itd-20) — see [`04-surfaces/08-abcd.md`](../04-surfaces/08-abcd.md)
- `/abcd:reflect` — release retrospective, a design target (itd-24, planned) — see [`04-surfaces/09-reflect.md`](../04-surfaces/09-reflect.md)

**Operator-internal commands** (wiring rather than user-facing surface): `/abcd:run` — the itd-29 autonomous-run operator surface (`status`/`pause`/`resume`/`preflight`; read-mostly over the pluggable autonomous-run seam ([adr-27](../../decisions/adrs/0027-autonomous-run-pluggable-seam.md)), v1 never starts or kills the loop) — is not built: itd-29 is superseded (by itd-2609201916151817, planned), and no `run` verb or `commands/run.md` is on any shipped surface. The operator-internal verbs the binary does register are `changelog`, `completion`, `hook`, `rules`, `spec` and `statusline`, and the class is defined by the absence of a `commands/` file rather than by the presence of one. See [`04-surfaces/README.md`](../04-surfaces/README.md) for the user-facing-vs-operator-internal boundary and the record that delivered each.
**Operator-internal commands** (wiring rather than user-facing surface): `/abcd:run` — the itd-29 autonomous-run operator surface (`status`/`pause`/`resume`/`preflight`; read-mostly over the pluggable autonomous-run seam ([adr-27](../../decisions/adrs/0027-autonomous-run-pluggable-seam.md)), v1 never starts or kills the loop) — is not built: itd-29 is superseded (by itd-2609201916151817, planned), and no `run` verb or `commands/run.md` is on any shipped surface. The operator-internal verbs the binary does register are `completion`, `hook`, `rules`, `spec` and `statusline`, and the class is defined by the absence of a `commands/` file rather than by the presence of one. See [`04-surfaces/README.md`](../04-surfaces/README.md) for the user-facing-vs-operator-internal boundary and the record that delivered each.

**Intents: derived, never hand-counted here.** The shelves are the single source
of what is shipped, committed and benched, and this page keeps no static copy of
Expand Down
2 changes: 1 addition & 1 deletion .abcd/development/brief/02-constraints/02-dependencies.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ environment every abcd subprocess gets, its own output discarded.
Armed with no gitleaks binary installed is one state with one consequence per
consumer. A release (`launch`) and a lifeboat (`disembark pack`) refuse on it,
the privacy lint reports it as an error, and the write paths — transcript
capture, issue capture, memory ingest — write with the native scanner and name
capture, issue capture, the memory store's ingest — write with the native scanner and name
the gap in their receipt. A gitleaks run that fails, a report the scanner cannot
place, or a configured path the adapter refuses degrades the scanner instead:
every consumer treats that as it treats a broken `pii.json`.
Expand Down
6 changes: 3 additions & 3 deletions .abcd/development/brief/02-constraints/04-naming.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,9 @@ The exemptions carrying a rationale of their own:
board.

The remaining surfaces are exempt for the plain reason that no maritime cognate
adds meaning: `banlist`, `changelog`, `consult`, `decide`, `docs`, `guard`,
`history`, `ideate`, `identity`, `ingest`, `lint`, `memory`,
`prepare-this-repo`, `reading`, `rules`, `site`, `spec`, and `update`. They
adds meaning: `banlist`, `consult`, `decide`, `docs`, `guard`,
`history`, `ideate`, `identity`, `ingest`, `library`, `lint`,
`reading`, `rules`, `site`, `spec`, and `update`. They
are registered here so the exemption is on the record.

**Reserved meta-development commands** (later phases; named now to prevent
Expand Down
Loading
Loading