diff --git a/core/skills/pre-commit-review/reference.md b/core/skills/pre-commit-review/reference.md index b3b0aa0..096207a 100644 --- a/core/skills/pre-commit-review/reference.md +++ b/core/skills/pre-commit-review/reference.md @@ -148,7 +148,7 @@ primitive, R11's the duplicated switch, R2's the ownerless validation: one disea four jurisdictions). Render each cluster as a first-class entry above the categories: ``` -🔗 CLUSTER: Alert.Channel +🔗 CLUSTER: Alert.Channel — R1, R11, R2, R7 Convergence: 4 findings — R1, R11, R2, R7 Hypothesis: missing domain concept — a Channel type wants to exist Skeptic: CONFIRMED (score 6: switched in 3 files, +2 unrepresentable — the @@ -170,12 +170,14 @@ script excluded renders as its heading and the script's reason. Clusters never cross a group: a Go type and a Python class are different anchors. `BROADER CONTEXT` and the closing `Caller decides` line come once, after the last group. -Render *every* cluster the pass finds, one `🔗 CLUSTER: ` line per converged -anchor: two findings or twenty, the largest and the smallest alike. The title is the +Render *every* cluster the pass finds, one `🔗 CLUSTER: — ` line per converged +anchor: two findings or twenty, the largest and the smallest alike. The title names the anchor itself — the type, field, function or package name the findings share -(`🔗 CLUSTER: ProcessHeartbeat`, `🔗 CLUSTER: Catalog.Find`, -`🔗 CLUSTER: internal/common, internal/utils`), never a description of the problem; -the description is the Hypothesis line beneath it. When the skeptic +(`🔗 CLUSTER: ProcessHeartbeat — R3, R11, R12`, `🔗 CLUSTER: Catalog.Find — R1, R2`, +`🔗 CLUSTER: internal/common, internal/utils — R4, R5`), never a description of the problem; +the description is the Hypothesis line beneath it. The rules after the dash are the ids +of the rules that converged on the anchor, on the title line itself, never on the +lines below. When the skeptic reviewed an extraction at that anchor, the entry carries its verdict — a CONFIRMED type routes design-first as above; a REFUTED one keeps the cluster (the convergence is still real) and routes to the cheaper alternative, which ships as 🟢 Polish. When no diff --git a/go-linter-driven-development/skills/pre-commit-review/reference.md b/go-linter-driven-development/skills/pre-commit-review/reference.md index 24bbd8d..9589d40 100644 --- a/go-linter-driven-development/skills/pre-commit-review/reference.md +++ b/go-linter-driven-development/skills/pre-commit-review/reference.md @@ -148,7 +148,7 @@ primitive, R11's the duplicated switch, R2's the ownerless validation: one disea four jurisdictions). Render each cluster as a first-class entry above the categories: ``` -🔗 CLUSTER: Alert.Channel +🔗 CLUSTER: Alert.Channel — R1, R11, R2, R7 Convergence: 4 findings — R1, R11, R2, R7 Hypothesis: missing domain concept — a Channel type wants to exist Skeptic: CONFIRMED (score 6: switched in 3 files, +2 unrepresentable — the @@ -170,12 +170,14 @@ script excluded renders as its heading and the script's reason. Clusters never cross a group: a Go type and a Python class are different anchors. `BROADER CONTEXT` and the closing `Caller decides` line come once, after the last group. -Render *every* cluster the pass finds, one `🔗 CLUSTER: ` line per converged -anchor: two findings or twenty, the largest and the smallest alike. The title is the +Render *every* cluster the pass finds, one `🔗 CLUSTER: — ` line per converged +anchor: two findings or twenty, the largest and the smallest alike. The title names the anchor itself — the type, field, function or package name the findings share -(`🔗 CLUSTER: ProcessHeartbeat`, `🔗 CLUSTER: Catalog.Find`, -`🔗 CLUSTER: internal/common, internal/utils`), never a description of the problem; -the description is the Hypothesis line beneath it. When the skeptic +(`🔗 CLUSTER: ProcessHeartbeat — R3, R11, R12`, `🔗 CLUSTER: Catalog.Find — R1, R2`, +`🔗 CLUSTER: internal/common, internal/utils — R4, R5`), never a description of the problem; +the description is the Hypothesis line beneath it. The rules after the dash are the ids +of the rules that converged on the anchor, on the title line itself, never on the +lines below. When the skeptic reviewed an extraction at that anchor, the entry carries its verdict — a CONFIRMED type routes design-first as above; a REFUTED one keeps the cluster (the convergence is still real) and routes to the cheaper alternative, which ships as 🟢 Polish. When no diff --git a/linter-driven-development/skills/pre-commit-review/reference.md b/linter-driven-development/skills/pre-commit-review/reference.md index 73f1281..268cbd2 100644 --- a/linter-driven-development/skills/pre-commit-review/reference.md +++ b/linter-driven-development/skills/pre-commit-review/reference.md @@ -148,7 +148,7 @@ primitive, R11's the duplicated switch, R2's the ownerless validation: one disea four jurisdictions). Render each cluster as a first-class entry above the categories: ``` -🔗 CLUSTER: Alert.Channel +🔗 CLUSTER: Alert.Channel — R1, R11, R2, R7 Convergence: 4 findings — R1, R11, R2, R7 Hypothesis: missing domain concept — a Channel type wants to exist Skeptic: CONFIRMED (score 6: switched in 3 files, +2 unrepresentable — the @@ -170,12 +170,14 @@ script excluded renders as its heading and the script's reason. Clusters never cross a group: a Go type and a Python class are different anchors. `BROADER CONTEXT` and the closing `Caller decides` line come once, after the last group. -Render *every* cluster the pass finds, one `🔗 CLUSTER: ` line per converged -anchor: two findings or twenty, the largest and the smallest alike. The title is the +Render *every* cluster the pass finds, one `🔗 CLUSTER: — ` line per converged +anchor: two findings or twenty, the largest and the smallest alike. The title names the anchor itself — the type, field, function or package name the findings share -(`🔗 CLUSTER: ProcessHeartbeat`, `🔗 CLUSTER: Catalog.Find`, -`🔗 CLUSTER: internal/common, internal/utils`), never a description of the problem; -the description is the Hypothesis line beneath it. When the skeptic +(`🔗 CLUSTER: ProcessHeartbeat — R3, R11, R12`, `🔗 CLUSTER: Catalog.Find — R1, R2`, +`🔗 CLUSTER: internal/common, internal/utils — R4, R5`), never a description of the problem; +the description is the Hypothesis line beneath it. The rules after the dash are the ids +of the rules that converged on the anchor, on the title line itself, never on the +lines below. When the skeptic reviewed an extraction at that anchor, the entry carries its verdict — a CONFIRMED type routes design-first as above; a REFUTED one keeps the cluster (the convergence is still real) and routes to the cheaper alternative, which ships as 🟢 Polish. When no diff --git a/python-linter-driven-development/skills/pre-commit-review/reference.md b/python-linter-driven-development/skills/pre-commit-review/reference.md index 21917f3..c180eb7 100644 --- a/python-linter-driven-development/skills/pre-commit-review/reference.md +++ b/python-linter-driven-development/skills/pre-commit-review/reference.md @@ -148,7 +148,7 @@ primitive, R11's the duplicated switch, R2's the ownerless validation: one disea four jurisdictions). Render each cluster as a first-class entry above the categories: ``` -🔗 CLUSTER: Alert.Channel +🔗 CLUSTER: Alert.Channel — R1, R11, R2, R7 Convergence: 4 findings — R1, R11, R2, R7 Hypothesis: missing domain concept — a Channel type wants to exist Skeptic: CONFIRMED (score 6: switched in 3 files, +2 unrepresentable — the @@ -170,12 +170,14 @@ script excluded renders as its heading and the script's reason. Clusters never cross a group: a Go type and a Python class are different anchors. `BROADER CONTEXT` and the closing `Caller decides` line come once, after the last group. -Render *every* cluster the pass finds, one `🔗 CLUSTER: ` line per converged -anchor: two findings or twenty, the largest and the smallest alike. The title is the +Render *every* cluster the pass finds, one `🔗 CLUSTER: — ` line per converged +anchor: two findings or twenty, the largest and the smallest alike. The title names the anchor itself — the type, field, function or package name the findings share -(`🔗 CLUSTER: ProcessHeartbeat`, `🔗 CLUSTER: Catalog.Find`, -`🔗 CLUSTER: internal/common, internal/utils`), never a description of the problem; -the description is the Hypothesis line beneath it. When the skeptic +(`🔗 CLUSTER: ProcessHeartbeat — R3, R11, R12`, `🔗 CLUSTER: Catalog.Find — R1, R2`, +`🔗 CLUSTER: internal/common, internal/utils — R4, R5`), never a description of the problem; +the description is the Hypothesis line beneath it. The rules after the dash are the ids +of the rules that converged on the anchor, on the title line itself, never on the +lines below. When the skeptic reviewed an extraction at that anchor, the entry carries its verdict — a CONFIRMED type routes design-first as above; a REFUTED one keeps the cluster (the convergence is still real) and routes to the cheaper alternative, which ships as 🟢 Polish. When no diff --git a/ts-react-linter-driven-development/skills/pre-commit-review/reference.md b/ts-react-linter-driven-development/skills/pre-commit-review/reference.md index 43342e6..291a2d5 100644 --- a/ts-react-linter-driven-development/skills/pre-commit-review/reference.md +++ b/ts-react-linter-driven-development/skills/pre-commit-review/reference.md @@ -148,7 +148,7 @@ primitive, R11's the duplicated switch, R2's the ownerless validation: one disea four jurisdictions). Render each cluster as a first-class entry above the categories: ``` -🔗 CLUSTER: Alert.Channel +🔗 CLUSTER: Alert.Channel — R1, R11, R2, R7 Convergence: 4 findings — R1, R11, R2, R7 Hypothesis: missing domain concept — a Channel type wants to exist Skeptic: CONFIRMED (score 6: switched in 3 files, +2 unrepresentable — the @@ -170,12 +170,14 @@ script excluded renders as its heading and the script's reason. Clusters never cross a group: a Go type and a Python class are different anchors. `BROADER CONTEXT` and the closing `Caller decides` line come once, after the last group. -Render *every* cluster the pass finds, one `🔗 CLUSTER: ` line per converged -anchor: two findings or twenty, the largest and the smallest alike. The title is the +Render *every* cluster the pass finds, one `🔗 CLUSTER: — ` line per converged +anchor: two findings or twenty, the largest and the smallest alike. The title names the anchor itself — the type, field, function or package name the findings share -(`🔗 CLUSTER: ProcessHeartbeat`, `🔗 CLUSTER: Catalog.Find`, -`🔗 CLUSTER: internal/common, internal/utils`), never a description of the problem; -the description is the Hypothesis line beneath it. When the skeptic +(`🔗 CLUSTER: ProcessHeartbeat — R3, R11, R12`, `🔗 CLUSTER: Catalog.Find — R1, R2`, +`🔗 CLUSTER: internal/common, internal/utils — R4, R5`), never a description of the problem; +the description is the Hypothesis line beneath it. The rules after the dash are the ids +of the rules that converged on the anchor, on the title line itself, never on the +lines below. When the skeptic reviewed an extraction at that anchor, the entry carries its verdict — a CONFIRMED type routes design-first as above; a REFUTED one keeps the cluster (the convergence is still real) and routes to the cheaper alternative, which ships as 🟢 Polish. When no