gstack/scripts/resolvers
Benjamin D. Smith 2311e32d63 docs(workspace): mandate single-select default in AskUserQuestion format
📝 Summary:
• Add a `multiSelect` rule to the shared AskUserQuestion decision-brief
  preamble, plus a matching self-check bullet
• Regenerate the 44 SKILL.md surfaces that inline the preamble

🔧 Technical Improvements:
• `generate-ask-user-format.ts` now states that options are mutually
  exclusive by DEFAULT, and `multiSelect: true` is legal only when
  every option is an independently-selectable atom whose pro/con and
  effort stand alone
• Bundles or combinations of the same underlying items (`E1+E3`,
  `All three`, `E1 only`, `Defer all`) are mutually exclusive by
  construction, so they take `multiSelect: false` and score
  `Completeness:` per option LETTER, not per sub-item
• Names the diagnostic tell: a defer/none option or a do-everything
  option sitting in the list proves the question is single-select
• Routes 5+ independent atoms to the existing split chain rather than
  to `multiSelect`, so the 4-option cap is never silently exceeded

🏗 Architecture:
• The rule lives in the preamble resolver, not in any one skill, so
  every skill that renders a decision brief inherits it from one
  source; the 44 regenerated `SKILL.md` files are build output

🧾 Reports:
• Regenerated with `gen:skill-docs:user` to match how this branch's
  `SKILL.md` were produced (gbrain blocks inlined); the pure-form
  `gen:skill-docs` variant strips them and would have carried 326
  unrelated deletions
• `bun test test/host-config.test.ts test/skill-validation.test.ts
  test/audit-compliance.test.ts test/question-log-hook.test.ts
  test/gstack-question-preference.test.ts` — 387 pass, 0 fail across
  the four non-golden files
• The three `golden-file regression` tests were ALREADY red at HEAD:
  `test/fixtures/golden/*-ship-SKILL.md` are pure-form while the
  committed `ship/SKILL.md` is brain-form. Left untouched — a
  pre-existing defect, not this change

📊 Code Changes:
• 138 insertions, 0 deletions (net +138)

📦 Files Modified:
• `scripts/resolvers/preamble/generate-ask-user-format.ts`
  (substantial changes) — add the single-select rule paragraph and
  the `multiSelect: false` self-check bullet
• 44 × `**/SKILL.md` (minor updates) — regenerated preamble
2026-07-10 23:38:53 +10:00
..
preamble docs(workspace): mandate single-select default in AskUserQuestion format 2026-07-10 23:38:53 +10:00
browse.ts fix: avoid tilde-in-assignment to silence Claude Code permission prompts (#993) 2026-04-16 14:49:56 -07:00
codex-helpers.ts feat: Factory Droid compatibility — works across Claude Code, Codex, and Factory (v0.13.5.0) (#621) 2026-03-29 08:57:34 -07:00
composition.ts v1.57.4.0 refactor(ethos): rename Boil the Lake principle to Boil the Ocean (#1912) 2026-06-08 05:41:07 -07:00
confidence.ts v1.43.2.0 fix wave: post-Daegu paper-cut — 18 fixes, 28 bisect commits (#1642) 2026-05-21 21:21:07 -07:00
constants.ts v1.57.10.0 feat: Codex review default-on across review/ship/plan/docs (#1966) 2026-06-10 21:14:58 -07:00
design.ts v1.45.0.0 feat(design): persistent board daemon — 24h boards, one tab, board history (#1710) 2026-05-25 20:45:12 -07:00
dx.ts feat: /plan-devex-review + /devex-review — DX review skills (v0.15.3.0) (#784) 2026-04-03 16:22:57 -07:00
gbrain.ts v1.52.1.0 feat: brain-aware planning — 5 skills read structured gbrain context before asking (#1742) 2026-05-29 08:35:00 -07:00
index.ts v1.57.10.0 feat: Codex review default-on across review/ship/plan/docs (#1966) 2026-06-10 21:14:58 -07:00
learnings.ts v1.33.1.0 fix(learnings): token-OR query + task-shaped retrieval in 3 long skills (#1442) 2026-05-11 19:34:33 -07:00
make-pdf.ts feat(v1.4.0.0): /make-pdf — markdown to publication-quality PDFs (#1086) 2026-04-20 13:20:30 +08:00
model-overlay.ts feat(v1.10.1.0): overlay efficacy harness + Opus 4.7 fanout nudge removal (#1166) 2026-04-23 18:42:58 -07:00
preamble.ts v1.58.5.0 feat: first-run activation scaffold + gstack router front door (#2078) 2026-06-25 09:42:45 -07:00
question-tuning.ts v1.52.0.0 feat(plan-tune): explicit consent + first-run setup wizard for contributors (#1741) 2026-05-28 18:21:09 -07:00
redact-doc.ts v1.53.0.0 feat: smarter redaction — PII/secrets/legal guard across /spec, /ship, /cso, /document-* (#1797) 2026-05-30 08:54:46 -07:00
review-army.ts v1.42.0.0 Daegu wave: 23 community-filed bugs + PTY classifier enforcement (24 bisect commits) (#1594) 2026-05-20 07:35:01 -07:00
review.ts v1.57.10.0 feat: Codex review default-on across review/ship/plan/docs (#1966) 2026-06-10 21:14:58 -07:00
sections.ts v1.54.0.0 feat: carve /ship into skeleton + on-demand sections (-59% always-loaded) (#1806) 2026-05-30 12:09:10 -07:00
tasks-section.ts v1.38.1.0 fix wave: surrogate-safe page captures (#1440), Implementation Tasks across review skills (#1454), root-level artifact patterns (#1452) (#1504) 2026-05-14 21:46:50 -07:00
testing.ts feat(v1.3.0.0): open agents learnings + cross-model benchmark skill (#1040) 2026-04-19 17:50:31 +08:00
types.ts v1.46.0.0 feat: gstack v2 foundation — catalog tokens drop 56%, eval-first floor covers all 51 skills (#1712) 2026-05-26 16:50:03 -07:00
utility.ts feat(v1.5.2.0): Opus 4.7 migration — model overlay, voice, routing (#1117) 2026-04-22 01:06:22 -07:00