brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
audit-doctrineRead-only audit of custom lint and ratchet rules: is each rule right on the merits, not just enforced. Use when "is this lint rule wrong", "the ratchet banned a legitimate pattern", or "audit our guardrail doctrine". Enforcement → audit-gate-logic.
Independent GitHub snapshot · Automated classification · Original documentation governs
Degree of freedom: MIXED.
Read-only. audit-gate-logic asks "can this gate be bypassed or
gamed?" — it assumes the rule is correct. This asks the harder
question: is the rule right on the merits? A ratchet that flawlessly
enforces bad doctrine is worse than no ratchet, because greenness
certifies the mistake and the developer, given only a codemod list,
restyles legitimate work to appease a regex instead of fixing a real
problem. An unexplained lint rejection erodes trust at that decision
point until people "adopt their own truth." This audit finds the rules
that are measuring taste, not correctness.
Present findings. Do not rewrite detectors, baselines, or tokens here.
| Skill | Owns |
|---|---|
| audit-doctrine (this) | Rule content — remedy, named token, Tier-D practice |
audit-gate-logic | Rule machinery — bypass, gaming, required-but-not |
housekeep-gates | Consolidate / delete duplicate gates (apply-now) |
enhance-arch-boundaries | Install boundary enforcement, not judge doctrine |
housekeep-design | Token/component SSOT — the sanctioned-form side |
docs-adr | Record a justified divergence from Tier-D |
housekeep-backlog | Un-remedied long-tail axes as BL- rows |
A custom rule/axis is sound only if all hold:
file:line, not just a codemod list.audit-gate-logic).Observe: a
nested-rounded-boxaxis counts rounded + border lines without overflow-clip. Interpret: it rejects bordered 前の章/次の章 chapter-link cards — but the doctrine's own shell recipe passes it, so the sanctioned form exists. Reference-check: bordered chaptered-nav cards are standard — Docusauruspagination-nav, Stripe docs ship the same pattern. Contract-check: remedy missing; reachable token missing (the passing form was never named); failure printed only a codemod list. Verdict: false-positive + missing-remedy + folklore-token. Fix: name the sanctioned form (e.g.PAGE_LINK_CARD_CLASS— bordered, clipped, hover-tiered); print remedy + file:line. Baseline unchanged — the token already equals the baseline, proving the ban was never real.
Find the rule surface: custom lint/ratchet axes, the detector suite,
the doctrine/governance doc (e.g. MASTER.md), baseline files,
exception lists, and the failure-output code. Enumerate every axis
with: what it detects, its remedy (if any), its baseline, and whether
a named sanctioned token exists. Record the count — a long tail of
un-remedied axes is the common state.
For each axis, classify:
For each taste rule, check whether Tier-D products ship the pattern it
rejects. Use research / official docs against Stripe, Linear,
GitHub, Docusaurus, Radix, shadcn — fetch the live page or docs as
written; recognizing a product is not knowing what it ships today, and a
from-memory reference is needs-reference, not evidence. Where a rule
bans what Tier-D
ships, it is a false-positive candidate — the burden of proof is on
the rule. Document the shipping reference for each disagreement. No
reference → mark needs-reference, not a finding.
Check all five clauses per axis. State coverage honestly: N of M axes carry a remedy (usually a small fraction — remedies get seeded on the axes that bite during feature work; the long tail stays bare). Every bare axis is a latent appease-the-regex incident. Flag:
Un-remedied axes → housekeep-backlog as BL- rows (junior-PR
burndown).
Confirm or recommend a test suite that freezes the governance properties so remedies cannot be silently stripped and sanctioned tokens cannot drift back into a false-positive form. Without this, the fix decays.
audit-gate-logic). Do not claim a bypass finding.housekeep-backlog BL- rows)audit-gate-logic; token
SSOT → housekeep-design; justified divergence → docs-adr