@thebassclef/lite 1.1.0 → 1.2.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.cjs +258 -63
- package/dist/cli.js +258 -63
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/lite/.claude/bassclef-configs.jsonc +56 -0
- package/dist/lite/.claude/bassclef-orientation.md +120 -0
- package/dist/lite/.claude/hooks/adr-discipline-check.sh +132 -0
- package/dist/lite/.claude/hooks/atomic-pr-check.sh +169 -0
- package/dist/lite/.claude/hooks/auto-save-idle.sh +51 -0
- package/dist/lite/.claude/hooks/bassclef-sync.sh +51 -13
- package/dist/lite/.claude/hooks/bet-doc-gate.sh +283 -0
- package/dist/lite/.claude/hooks/bug-diagnosis.sh +64 -0
- package/dist/lite/.claude/hooks/destructive-command-guard.sh +136 -0
- package/dist/lite/.claude/hooks/file-rename-discipline-check.sh +147 -0
- package/dist/lite/.claude/hooks/hook-classifier-canary.sh +158 -0
- package/dist/lite/.claude/hooks/kiss-default-check.sh +129 -0
- package/dist/lite/.claude/hooks/multi-tenancy-check.sh +83 -0
- package/dist/lite/.claude/hooks/oo-ad-entry-point-check.sh +216 -0
- package/dist/lite/.claude/hooks/operator-private-path-check.sh +203 -0
- package/dist/lite/.claude/hooks/pattern-annotation-validate.sh +142 -0
- package/dist/lite/.claude/hooks/plain-english-steering.sh +15 -1
- package/dist/lite/.claude/hooks/post-write-trace.sh +66 -0
- package/dist/lite/.claude/hooks/pr-body-scrub-check.sh +446 -0
- package/dist/lite/.claude/hooks/pre-commit-identifier-leak-scrub.sh +137 -0
- package/dist/lite/.claude/hooks/pre-gh-pr-body-scrub.sh +192 -0
- package/dist/lite/.claude/hooks/pre-gh-pr-title-scrub.sh +172 -0
- package/dist/lite/.claude/hooks/role-entry-gate.sh +115 -0
- package/dist/lite/.claude/hooks/save-state.sh +268 -0
- package/dist/lite/.claude/hooks/session-reflection.d/08-settings-drift.sh +8 -1
- package/dist/lite/.claude/hooks/session-reflection.d/10-abrupt-stop-recovery.sh +52 -0
- package/dist/lite/.claude/hooks/session-reflection.d/55-orientation-gate.sh +40 -4
- package/dist/lite/.claude/hooks/session-reflection.d/80-hook-heartbeat-check.sh +12 -5
- package/dist/lite/.claude/hooks/session-reflection.d/81-hook-manifest-staleness.sh +18 -2
- package/dist/lite/.claude/hooks/session-reflection.d/91-npm-version-drift.sh +54 -0
- package/dist/lite/.claude/hooks/session-reflection.d/tests/10-abrupt-stop-recovery.test.sh +95 -0
- package/dist/lite/.claude/hooks/session-reflection.sh +62 -15
- package/dist/lite/.claude/hooks/tool-failure-diagnosis.sh +50 -0
- package/dist/lite/.claude/luminaries/andrej-karpathy.md +165 -0
- package/dist/lite/.claude/luminaries/dave-gray.md +155 -0
- package/dist/lite/.claude/luminaries/gary-klein.md +166 -0
- package/dist/lite/.claude/luminaries/kaoru-ishikawa.md +162 -0
- package/dist/lite/.claude/luminaries/lean-product-canvas.md +33 -0
- package/dist/lite/.claude/luminaries/luke-wroblewski.md +224 -0
- package/dist/lite/.claude/luminaries/ryan-singer.md +113 -0
- package/dist/lite/.claude/luminaries/steve-krug.md +168 -0
- package/dist/lite/.claude/luminaries/tony-ulwick.md +134 -0
- package/dist/lite/.claude/rules/arc-level-orientation-before-leaf.md +60 -0
- package/dist/lite/.claude/rules/architect-review-discipline.md +71 -0
- package/dist/lite/.claude/rules/auto-fix-criteria.md +126 -0
- package/dist/lite/.claude/rules/bassclef-hook-drift-blocker.md +144 -0
- package/dist/lite/.claude/rules/bassclef-models-discovery.md +107 -0
- package/dist/lite/.claude/rules/bassclef-workflow-parity.md +104 -0
- package/dist/lite/.claude/rules/cost-governance.md +154 -0
- package/dist/lite/.claude/rules/file-rename-discipline.md +95 -0
- package/dist/lite/.claude/rules/mechanism-fidelity.md +88 -0
- package/dist/lite/.claude/rules/prototype-production-coupling.md +125 -0
- package/dist/lite/.claude/rules/quick-fix-criteria.md +90 -0
- package/dist/lite/.claude/rules/session-artifacts.md +30 -0
- package/dist/lite/.claude/rules/sibling-smoke-after-substrate-change.md +107 -0
- package/dist/lite/.claude/rules/substrate-as-system.md +67 -0
- package/dist/lite/.claude/rules/usability.md +22 -0
- package/dist/lite/.claude/settings.json +20 -0
- package/dist/lite/.claude/skills/agent-research-spawn/SKILL.md +100 -0
- package/dist/lite/.claude/skills/architect-review/SKILL.md +201 -0
- package/dist/lite/.claude/skills/auto-fix/SKILL.md +297 -0
- package/dist/lite/.claude/skills/autonomous/SKILL.md +300 -0
- package/dist/lite/.claude/skills/bind-subdomain/SKILL.md +232 -0
- package/dist/lite/.claude/skills/canvas/SKILL.md +41 -0
- package/dist/lite/.claude/skills/deploy-prod/SKILL.md +106 -0
- package/dist/lite/.claude/skills/docs-sync/SKILL.md +188 -0
- package/dist/lite/.claude/skills/eisenhower/SKILL.md +273 -0
- package/dist/lite/.claude/skills/empathy-map/SKILL.md +168 -0
- package/dist/lite/.claude/skills/frontend-design/SKILL.md +53 -0
- package/dist/lite/.claude/skills/interview-me/SKILL.md +171 -0
- package/dist/lite/.claude/skills/journal-export/SKILL.md +293 -0
- package/dist/lite/.claude/skills/jtbd-tasks/SKILL.md +203 -0
- package/dist/lite/.claude/skills/objectory-decompose/SKILL.md +256 -0
- package/dist/lite/.claude/skills/pick-luminaries/SKILL.md +100 -0
- package/dist/lite/.claude/skills/pre-mortem/SKILL.md +180 -0
- package/dist/lite/.claude/skills/prototype-gallery/SKILL.md +264 -0
- package/dist/lite/.claude/skills/provision-deploy-host/SKILL.md +257 -0
- package/dist/lite/.claude/skills/quick-fix/SKILL.md +273 -0
- package/dist/lite/.claude/skills/release/SKILL.md +311 -0
- package/dist/lite/.claude/skills/release-notes/SKILL.md +202 -0
- package/dist/lite/.claude/skills/rfc/SKILL.md +222 -0
- package/dist/lite/.claude/skills/riff-prototypes/SKILL.md +637 -0
- package/dist/lite/.claude/skills/secrets-bootstrap/SKILL.md +209 -0
- package/dist/lite/.claude/skills/skill/SKILL.md +304 -0
- package/dist/lite/.claude/skills/smoke-test/SKILL.md +100 -0
- package/dist/lite/.claude/skills/state/SKILL.md +204 -0
- package/dist/lite/.claude/skills/substrate-check/SKILL.md +218 -0
- package/dist/lite/.claude/skills/synthetic-user/SKILL.md +381 -0
- package/dist/lite/.claude/skills/task-scenarios/SKILL.md +105 -0
- package/dist/lite/.claude/skills/tier-dependency-audit/SKILL.md +139 -0
- package/dist/lite/.claude/skills/ux-migration/SKILL.md +424 -0
- package/dist/lite/.claude/skills/value-prop-canvas/SKILL.md +297 -0
- package/dist/lite/README.md +5 -1
- package/dist/lite/gitignore +6 -0
- package/dist/lite/lib/bassclef-dir-resolver.sh +85 -0
- package/dist/lite/lib/clone-failure-classifier.sh +59 -0
- package/dist/lite/lib/fixture-builder.sh +190 -0
- package/dist/lite/lib/fresh-install-check.sh +49 -0
- package/dist/lite/lib/hook-heartbeat.sh +0 -1
- package/dist/lite/lib/mechanism-fidelity.sh +569 -0
- package/dist/lite/lib/npm-version-check.sh +112 -0
- package/dist/lite/lib/preview-state.sh +229 -0
- package/dist/lite/lib/session-rescue.sh +0 -1
- package/dist/lite/scripts/generate-lite-manifest.sh +145 -4
- package/dist/lite/scripts/lite-manifest-drift-check.sh +5 -1
- package/dist/lite/standards/architect-review-discipline.md +222 -0
- package/dist/lite/standards/bassclef-platform.md +249 -0
- package/dist/lite/standards/bassclef-test-repos.md +97 -0
- package/dist/lite/standards/bassclef-wiring-manifest.json +25 -1
- package/dist/lite/standards/cold-adopter-harness.md +205 -0
- package/dist/lite/standards/data-management.md +135 -0
- package/dist/lite/standards/frontend-stack/nextjs-prisma.md +124 -0
- package/dist/lite/standards/lite-manifest-schema-changes.md +27 -0
- package/dist/lite/standards/lite-manifest.json +1456 -14
- package/dist/lite/standards/mechanism-fidelity.md +205 -0
- package/dist/lite/standards/operator-private-discipline.md +200 -0
- package/dist/lite/standards/operator-to-public-flow.md +195 -0
- package/dist/lite/standards/prototype-gallery.md +251 -0
- package/dist/lite/standards/pseudonym-key-schema.md +109 -0
- package/dist/lite/standards/sibling-validation-checklist.md +181 -0
- package/dist/lite/standards/slack-notifications.md +161 -0
- package/dist/lite/standards/synthetic-user-testing.md +173 -0
- package/dist/lite/standards/vendor-bindings.md +165 -0
- package/dist/lite/standards/vendor-plugins/frontend-design.md +66 -0
- package/dist/lite/standards/vpc-fit-validation.md +167 -0
- package/dist/lite/templates/gallery-yml.md +113 -0
- package/dist/lite/templates/product-canvas.md +169 -0
- package/dist/lite/templates/value-prop-canvas.md +180 -0
- package/package.json +12 -5
- /package/dist/lite/{whereami.md → docs/whereami.md} +0 -0
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
---
|
|
2
|
+
tier: lite
|
|
3
|
+
name: rfc
|
|
4
|
+
description: "Run an outside-luminary council review on a proposed design. Picks 3-5 luminaries not in the authoring set. Applies each lens to risks and decisions. Writes findings with severity and disposition options. Catches what the authoring lenses miss."
|
|
5
|
+
problem: "Design proposals get one lens set from the authoring session. Blind spots ship into HIGH-severity findings later."
|
|
6
|
+
value: "Outside-luminary council review on a proposed design. Picks 3-5 luminaries not in the authoring set."
|
|
7
|
+
inputs: [A goal doc path, Optional --lenses override for manual pick]
|
|
8
|
+
outputs: [RFC doc at docs/rfcs/, Severity-tagged findings per lens, Disposition options]
|
|
9
|
+
user_invocable: true
|
|
10
|
+
disable_model_invocation: false
|
|
11
|
+
composes_with: [architect-review, pre-mortem, luminary, pick-luminaries, state-a-problem, kiss, value-prop]
|
|
12
|
+
depends_on: [luminary]
|
|
13
|
+
---
|
|
14
|
+
<!-- andon-allow: operator-private -->
|
|
15
|
+
|
|
16
|
+
# /rfc — outside-luminary council review
|
|
17
|
+
|
|
18
|
+
## What you get
|
|
19
|
+
|
|
20
|
+
An RFC document. It carries findings from luminaries the authoring session did not use. Each finding gets a severity. Each severity gets a disposition. You pick which findings cure inline. You pick which defer.
|
|
21
|
+
|
|
22
|
+
The output is `docs/rfcs/RFC-NNNN-<slug>.md`. Field shape follows RFC-0001 from bassclef-cli scope-b1. See `standards/rfc-shape.md` for the field list.
|
|
23
|
+
|
|
24
|
+
## When to use it
|
|
25
|
+
|
|
26
|
+
Use `/rfc` when all of these hold:
|
|
27
|
+
|
|
28
|
+
- A goal doc or ADR has been drafted with 2-6 authoring luminaries
|
|
29
|
+
- `/architect-review` and `/pre-mortem` have already run against it
|
|
30
|
+
- The scope is consequential enough that a HIGH finding at Step 7 signoff would cost 100+ turns to cure
|
|
31
|
+
- The authoring session did not pick lenses outside its own lens set
|
|
32
|
+
|
|
33
|
+
Skip `/rfc` when the scope is trivial. A typo cure does not owe a council.
|
|
34
|
+
|
|
35
|
+
## When NOT to use
|
|
36
|
+
|
|
37
|
+
Do not use `/rfc` as a substitute for `/architect-review` or `/pre-mortem`. Those two must run first. They ground the RFC in real content.
|
|
38
|
+
INSTEAD: run `/architect-review` first. Then run `/pre-mortem`. Then dispatch `/rfc`.
|
|
39
|
+
|
|
40
|
+
Do not use `/rfc` on scope where the authoring set already crosses 6+ luminaries. The outside-set constraint is hard to honor without repeating what already got said.
|
|
41
|
+
INSTEAD: for wide authoring sets, run a second `/pre-mortem` with a new lens instead of `/rfc`. The new lens gets fresh eyes without the outside-set constraint.
|
|
42
|
+
|
|
43
|
+
Do not use `/rfc` to fix findings. `/rfc` surfaces findings; the operator picks the cure.
|
|
44
|
+
INSTEAD: dispatch `/build` or open a follow-on goal to ship the cure.
|
|
45
|
+
|
|
46
|
+
## FAQ
|
|
47
|
+
|
|
48
|
+
### What is the outside-set constraint?
|
|
49
|
+
|
|
50
|
+
The RFC picks luminaries who are NOT in the goal doc's `authoring_luminaries` list. This prevents lens echo chamber. The same lenses that shaped the design cannot review it.
|
|
51
|
+
|
|
52
|
+
Per bassclef-cli#38 — RFC-0001 caught 6 HIGH findings. All 6 came from lenses outside the authoring set. Without the RFC pass, they would have hit at Step 7 signoff.
|
|
53
|
+
|
|
54
|
+
The 6 HIGH findings came from `linus-torvalds` + `hyrum-wright` + `frederick-brooks` + `saltzer-schroeder` + `don-norman`. None of these were in scope-b1's authoring set.
|
|
55
|
+
|
|
56
|
+
### Which luminaries make good outside-set picks?
|
|
57
|
+
|
|
58
|
+
Pick lenses that reveal blind spots the design lenses cannot see. Five standing candidates per RFC-0001 evidence:
|
|
59
|
+
|
|
60
|
+
<!-- FKGL-EXEMPT: table row shape carries lens + role paired -->
|
|
61
|
+
|
|
62
|
+
| Lens | What it catches |
|
|
63
|
+
|---|---|
|
|
64
|
+
| `linus-torvalds` | Adopter compatibility (keep userspace working); silent adopter migration |
|
|
65
|
+
| `hyrum-wright` | Observable behavior binding; schema-as-API surface |
|
|
66
|
+
| `frederick-brooks` | Second-system effect; scope creep beyond the goal |
|
|
67
|
+
| `saltzer-schroeder` | Defense in depth; least privilege; security envelope |
|
|
68
|
+
| `don-norman` | User model; progress signals; error messages; adopter mental model |
|
|
69
|
+
|
|
70
|
+
<!-- /FKGL-EXEMPT -->
|
|
71
|
+
|
|
72
|
+
Other strong picks — `alan-cooper` (persona review), `martin-fowler` (refactoring debt), `michael-nygard` (stability), `clayton-christensen` (JTBD fit).
|
|
73
|
+
|
|
74
|
+
### What does a severity look like?
|
|
75
|
+
|
|
76
|
+
Three levels per RFC-0001:
|
|
77
|
+
|
|
78
|
+
- **HIGH** — would break an adopter or cost 100+ turns to cure at Step 7. Cure inline or defer with a specific plan.
|
|
79
|
+
- **MEDIUM** — would cost 20-50 turns to cure post-ship. Cure inline if scope allows.
|
|
80
|
+
- **LOW** — nice-to-have. Advisory only.
|
|
81
|
+
|
|
82
|
+
### What are disposition options?
|
|
83
|
+
|
|
84
|
+
Three shapes per RFC-0001:
|
|
85
|
+
|
|
86
|
+
- **Revised A** — accept scope. Cure HIGH findings inline.
|
|
87
|
+
- **Revised B** — trim scope. Move some steps to a follow-on plan doc.
|
|
88
|
+
- **Revised C** — split scope. Ship the safe part now. Defer the risky part.
|
|
89
|
+
|
|
90
|
+
The operator picks. Deferrals land in a follow-on plan doc.
|
|
91
|
+
INSTEAD of silent drops: the follow-on doc is the landing pad. Every deferral gets a home.
|
|
92
|
+
|
|
93
|
+
### How does /rfc compose with /architect-review + /pre-mortem?
|
|
94
|
+
|
|
95
|
+
<!-- FKGL-EXEMPT: workflow table shape -->
|
|
96
|
+
|
|
97
|
+
| Skill | When it fires | What it produces |
|
|
98
|
+
|---|---|---|
|
|
99
|
+
| `/architect-review` | After goal doc draft; before RFC | audit findings against ADRs + tenets |
|
|
100
|
+
| `/pre-mortem` | After goal doc draft; before RFC | risk ledger with lenses from authoring set |
|
|
101
|
+
| `/rfc` | After both above; before Step 4 build | RFC doc with outside-set findings + disposition |
|
|
102
|
+
| `/build` | After RFC disposition | ships the revised scope |
|
|
103
|
+
|
|
104
|
+
<!-- /FKGL-EXEMPT -->
|
|
105
|
+
|
|
106
|
+
### What is the estimated cost?
|
|
107
|
+
|
|
108
|
+
Per bassclef-cli#38 evidence — RFC-0001 took ~50 turns to run. Ratio ~1:12 turn savings vs curing HIGH findings at Step 7. The ratio compounds per consequential goal.
|
|
109
|
+
|
|
110
|
+
### How does /rfc know which luminaries to pick?
|
|
111
|
+
|
|
112
|
+
Two modes:
|
|
113
|
+
|
|
114
|
+
- **auto** (default) — dispatches `/pick-luminaries` with the intent paragraph from the goal doc. Filters out the authoring set. Picks the top 3-5 outside-lens roles (Linus + Hyrum + Brooks + Saltzer-Schroeder + Norman + Cooper). Falls back to the standing 5 when `pick-luminaries` is unavailable at the adopter tier.
|
|
115
|
+
- **manual** — operator names the 3-5 luminaries at dispatch (`/rfc --lenses linus,hyrum,cooper`).
|
|
116
|
+
|
|
117
|
+
## Details below the fold
|
|
118
|
+
|
|
119
|
+
### Procedure — full
|
|
120
|
+
|
|
121
|
+
**Step 0 — Pre-flight.** Verify:
|
|
122
|
+
|
|
123
|
+
- Goal doc exists at `docs/iteration-bets/<slug>.md`
|
|
124
|
+
- Goal doc has `authoring_luminaries` frontmatter with 2-6 named lenses
|
|
125
|
+
- `/architect-review` output exists (marker or doc; see `.claude/rules/architect-review-discipline.md`)
|
|
126
|
+
- `/pre-mortem` risk ledger exists at `docs/risk-ledgers/<slug>.md`
|
|
127
|
+
|
|
128
|
+
If any missing, BLOCK with the missing artifact named. Silence is not deferral.
|
|
129
|
+
|
|
130
|
+
**Step 1 — Read the design content.** Read every artifact the goal doc references. Compose `/state-a-problem` on any finding this pass surfaces.
|
|
131
|
+
|
|
132
|
+
**Step 2 — Pick the outside-set council.** Per FAQ. Default auto mode. Cite each pick's lens role in one line.
|
|
133
|
+
|
|
134
|
+
**Step 3 — Apply each lens.** For each picked luminary:
|
|
135
|
+
|
|
136
|
+
- Read `.claude/luminaries/<slug>.md`
|
|
137
|
+
- Walk each named risk in the ledger + each design decision in the goal doc
|
|
138
|
+
- Write findings with severity (HIGH / MEDIUM / LOW) tied to concrete artifacts
|
|
139
|
+
|
|
140
|
+
Every finding cites a file path, a decision, or a risk row.
|
|
141
|
+
INSTEAD of abstract concerns: cite the artifact per finding. Vague concerns get dropped or rewritten with a citation.
|
|
142
|
+
|
|
143
|
+
**Step 4 — Group findings + propose dispositions.** Group by severity. Propose 3-4 disposition options (Revised A / B / C — accept scope / trim scope / split scope). Cite which HIGH findings each disposition addresses.
|
|
144
|
+
|
|
145
|
+
**Step 5 — Surface to operator.** Print the finding table + disposition options. Wait for pick.
|
|
146
|
+
|
|
147
|
+
**Step 6 — Write the RFC doc.** Compose `docs/rfcs/RFC-NNNN-<slug>.md` per `standards/rfc-shape.md`. Fields:
|
|
148
|
+
|
|
149
|
+
- Frontmatter — tier, goal, council, disposition, references
|
|
150
|
+
- Council section — one row per luminary + lens role
|
|
151
|
+
- Findings section — grouped by severity, per-finding artifact citation
|
|
152
|
+
- Disposition section — chosen shape + rationale + deferrals
|
|
153
|
+
- Follow-on plan section — links to `docs/next-longrun-prep-<date>-<slug>.md` if scope trimmed
|
|
154
|
+
|
|
155
|
+
**Step 7 — Update the risk ledger + goal doc.** Amend the ledger with the RFC absorption. Add an `rfc_signoff` row to the goal doc frontmatter. Update any ADR being amended.
|
|
156
|
+
|
|
157
|
+
**Step 8 — Land deferrals.** If scope trimmed, write the follow-on plan doc at `docs/next-longrun-prep-<date>-<slug>.md` naming the deferred steps + reason.
|
|
158
|
+
|
|
159
|
+
**Step 9 — Report.** Surface RFC path + disposition + deferrals. Return control.
|
|
160
|
+
|
|
161
|
+
### Modes
|
|
162
|
+
|
|
163
|
+
- Default — auto pick + full 9-step procedure
|
|
164
|
+
- `/rfc --lenses linus,hyrum,cooper` — manual lens picks
|
|
165
|
+
- `/rfc --dry-run` — Steps 0-3 only. Surface findings without writing the RFC doc.
|
|
166
|
+
- `/rfc --council-only` — Steps 0-2 only. Propose the council. Wait for operator confirm before applying lenses.
|
|
167
|
+
|
|
168
|
+
### Override paths
|
|
169
|
+
|
|
170
|
+
- `SKIP_RFC_PREFLIGHT=1` — bypass Step 0 checks. Use only when a prior session skipped `/architect-review` or `/pre-mortem` on purpose. The reason must live in the goal doc.
|
|
171
|
+
- `RFC_LENS_MIN=3` — override the 3-lens minimum.
|
|
172
|
+
INSTEAD: 3-5 lenses is the calibrated range per RFC-0001. Dropping below 3 loses lens diversity.
|
|
173
|
+
- `RFC_LENS_MAX=8` — override the 5-lens ceiling. Wider councils cost more turns.
|
|
174
|
+
INSTEAD: 5 is the calibrated ceiling per RFC-0001. Add more only when scope crosses multiple bounded contexts.
|
|
175
|
+
|
|
176
|
+
INSTEAD of habitual overrides: run the 9-step procedure. The turn cost is bounded per RFC-0001 evidence (~50t). The Step-7-signoff cost is not.
|
|
177
|
+
|
|
178
|
+
### Reads
|
|
179
|
+
|
|
180
|
+
- `docs/iteration-bets/<slug>.md` — goal doc
|
|
181
|
+
- `docs/risk-ledgers/<slug>.md` — pre-mortem risk ledger
|
|
182
|
+
- `architecture/decisions/ADR-*.md` — any ADR being amended
|
|
183
|
+
- `docs/decompositions/<slug>-domain.md` — decomposition if present
|
|
184
|
+
- `.claude/luminaries/<slug>.md` — one read per picked luminary
|
|
185
|
+
- `standards/rfc-shape.md` — RFC field list
|
|
186
|
+
|
|
187
|
+
### Writes
|
|
188
|
+
|
|
189
|
+
- `docs/rfcs/RFC-NNNN-<slug>.md` — the output
|
|
190
|
+
- `docs/risk-ledgers/<slug>.md` — amended with RFC absorption
|
|
191
|
+
- `docs/iteration-bets/<slug>.md` — `rfc_signoff` row added to frontmatter
|
|
192
|
+
- `docs/next-longrun-prep-<date>-<slug>.md` — deferrals if scope trimmed
|
|
193
|
+
- `state/markers/rfc/<slug>.marker` — audit trail
|
|
194
|
+
|
|
195
|
+
### Grace window on old vocabulary
|
|
196
|
+
|
|
197
|
+
Old vocabulary — `bet`, `WU`, `appetite`, `chronicle` — still works through 2026-10-31 per ADR-031 and `.claude/rules/we-dont-break-adopters.md`. New RFC docs use `goal`, `step`, `time budget`, `session log`.
|
|
198
|
+
|
|
199
|
+
## Refs
|
|
200
|
+
|
|
201
|
+
- bassclef-cli#38 — parent ticket (evolution ask from adopter)
|
|
202
|
+
- RFC-0001 — the exemplar output at `~/src/sunj-labs/bassclef-cli/docs/rfcs/RFC-0001-npm-lite-substrate-bundling-review.md`
|
|
203
|
+
- `.claude/rules/architect-review-discipline.md` — precondition rule
|
|
204
|
+
- `.claude/skills/architect-review/SKILL.md` — precondition skill
|
|
205
|
+
- `.claude/skills/pre-mortem/SKILL.md` — precondition skill
|
|
206
|
+
- `.claude/skills/pick-luminaries/SKILL.md` — auto-mode dependency
|
|
207
|
+
- `standards/rfc-shape.md` — field list (companion standard to ship with this skill)
|
|
208
|
+
- `@luminary linus-torvalds` — standing outside-lens candidate
|
|
209
|
+
- `@luminary hyrum-wright` — standing outside-lens candidate
|
|
210
|
+
- `@luminary frederick-brooks` — standing outside-lens candidate
|
|
211
|
+
- `@luminary jerome-saltzer-and-michael-schroeder` — standing outside-lens candidate
|
|
212
|
+
- `@luminary don-norman` — standing outside-lens candidate
|
|
213
|
+
|
|
214
|
+
## Anchor luminaries
|
|
215
|
+
|
|
216
|
+
- `@luminary daniel-kahneman` — outside-view discipline. System 2 slows down when the inside-view lens has run.
|
|
217
|
+
- `@luminary gary-klein` — pre-mortem precedent. `/rfc` extends pre-mortem with an outside-set lens council.
|
|
218
|
+
- `@luminary frederick-brooks` — conceptual integrity via multiple reviewers per "The Mythical Man-Month" §"Aristocracy and Democracy".
|
|
219
|
+
|
|
220
|
+
## Retirement
|
|
221
|
+
|
|
222
|
+
Retires if outside-set council review becomes noise (operator dispatches fewer than 1 per month across sessions). Also retires if authoring lens sets grow past 6 luminaries by default. Wider default sets make the outside-set constraint impractical.
|