mirror of https://github.com/garrytan/gstack.git
📝 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 |
||
|---|---|---|
| .. | ||
| SKILL.md | ||
| SKILL.md.tmpl | ||