From 8947511b500d438a1542a152c0730f5337de553d Mon Sep 17 00:00:00 2001 From: Han Ngo Date: Mon, 20 Jul 2026 17:19:11 +0700 Subject: [PATCH] docs: register the two hook-entry pipelines in the signal inventory intake-sweep is a signal pipeline in exactly the SPEC-200 sense (collect -> propose a staging block) but was absent from the inventory that spec cites as its evidence base. Registering it surfaced that backlog-stage, its direct sibling and the older of the two, was never listed either: the original sweep enumerated CLI entries and missed hook-entry pipelines. Both are now rows 20-21, the staging-block proposal list reads 2/5/15/20/21, and the header records why the first sweep had the blind spot. --- docs/specs/SPEC-200-signal-pipelines.md | 9 +++++++-- docs/verification/signal-pipeline-inventory.md | 15 +++++++++++---- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/docs/specs/SPEC-200-signal-pipelines.md b/docs/specs/SPEC-200-signal-pipelines.md index 0159a7b2..53ba1c39 100644 --- a/docs/specs/SPEC-200-signal-pipelines.md +++ b/docs/specs/SPEC-200-signal-pipelines.md @@ -4,7 +4,7 @@ Status: Draft · 2026-07-14 · Owner: Han ## Problem -The kit has **19 pipelines shaped like collect -> analyze -> report -> propose** +The kit has **21 pipelines shaped like collect -> analyze -> report -> propose** (full inventory in the Appendix). They read different sources (run ledger, CC transcripts, boards, git, the filesystem) at different depths (awk, DuckDB, heuristics, LLM), and that variety is legitimate. What is not legitimate is that @@ -147,11 +147,16 @@ env-prefix lint (T2), a verb-vocabulary lint over `lib/*/bin/*` help text (T4), and a proposal-currency test asserting every proposer writes staging blocks and nothing else (I1). -## Appendix: the 19 pipelines +## Appendix: the pipelines lane-telemetry · learn propose · learn drain · learn debt · stats · mega report · mega review · skill-curator reviewer · cc-improve curate · board mirror / writeback · session observe · session report · session semantic · session intel · session audit · proof-table-gen · verif-counts · /kit:retro · /kit:kit-health +· backlog-stage · intake-sweep + +The last two are hook-entry pipelines feeding the same staging file as `learn +propose`; both were added by the 2026-07-20 re-sweep (see the inventory's header +note on why the original CLI-oriented sweep missed them). Full source/transform/output/proposal/cadence table: `docs/verification/signal-pipeline-inventory.md`. diff --git a/docs/verification/signal-pipeline-inventory.md b/docs/verification/signal-pipeline-inventory.md index 58b88dfc..8e24c420 100644 --- a/docs/verification/signal-pipeline-inventory.md +++ b/docs/verification/signal-pipeline-inventory.md @@ -1,8 +1,13 @@ # Signal-pipeline inventory (evidence for SPEC-200) -Swept 2026-07-14 over the whole repo. 19 pipelines match the shape -collect -> analyze -> report -> propose. This is the evidence base for SPEC-200's -claim that the kit has one ETL class with five vocabularies. +Swept 2026-07-14 over the whole repo; re-swept 2026-07-20. The pipelines below match +the shape collect -> analyze -> report -> propose. This is the evidence base for +SPEC-200's claim that the kit has one ETL class with five vocabularies. + +The 2026-07-20 re-sweep added rows 20-21: the two hook-entry pipelines that feed the +same staging file the `learn` verbs do. Row 20 (`backlog-stage`) was a pre-existing +omission from the original sweep, found while registering row 21; the original sweep +enumerated CLI entries and missed the hook-entry ones. | # | Pipeline | Entry | Source | Transform | Output | Proposal shape | Cadence | Chains? | |---|---|---|---|---|---|---|---|---| @@ -25,10 +30,12 @@ claim that the kit has one ETL class with five vocabularies. | 17 | verif-counts | `lib/gate/verif-counts.sh` | test output | grep/sed | `COUNTS.md` block | none | on-demand | overwrite | | 18 | /kit:retro | `commands/retro.md` | git + specs + completeness.log + lane-telemetry | LLM-facilitated Q&A | `RETRO-[date].md` | **checkbox action items** | on-demand | loose | | 19 | /kit:kit-health | `commands/kit-health.md` | kit's own fs/hooks/logs | bash checklist | stdout report | advisory prose | on-demand | no | +| 20 | backlog-stage | `hooks/backlog-stage.sh` | CC session transcript | prefilter + LLM (haiku) extract | `## [staged]` blocks | **staging block** | hook (SessionEnd), 1h throttle | yes (dedup vs board + staging) | +| 21 | intake-sweep | `hooks/intake-sweep.py` (via `backlog-stage.sh --surface`) | consumer-declared sources (`_meta/intake-sources.json`: jsonl / command adapters) | filter + field-map, no LLM | `## [staged]` blocks | **staging block** | hook (SessionStart), daily throttle | yes (board + staging + durable swept-keys) | ## What the sweep proves -- **Three proposal shapes, one gate.** Staging blocks (2, 5, 15) are the currency +- **Three proposal shapes, one gate.** Staging blocks (2, 5, 15, 20, 21) are the currency `board promote` reads. Bullet prose (14) and checkbox items (18) never reach it: they are leads a human must retype, which is why nobody does. SPEC-200 I1. - **One resource, three env families.** `_meta/BACKLOG.md` is addressed by