mirror of
https://github.com/garrytan/gstack.git
synced 2026-11-12 19:44:48 +01:00
test(W7c): loosen auq-format-always-loaded per-skill rule pins
W7c conversion (t01 F10-F12; W7c list item auq-format-always-loaded:61-72).
The MANDATORY format list (machine-read Recommendation:/(recommended) and the
AUQ format labels, W7 keep list) is unchanged.
Removed assertion groups (invariant -> remaining protection):
- plan-ceo-review /Do NOT batch/i (t01 F10): one decision per question ->
kept free: /One decision unit = one AskUserQuestion call/i in the same rule
list.
- plan-eng-review full-sentence regexes 'Send `AskUserQuestion({ questions:
[currentDecision] })` only after the pending-record checkpoint passes. Send
one question object for one choice; other IDs wait' and 'If you discover
another independent choice, separate it and rebuild this comparison before
saving or sending the question' (t01 F11): one question object per
independent choice survives the carve -> kept free: /one\s+question object
for one choice/i and /independently selectable changes separate IDs/i; the
checkpoint-before-send order stays pinned in eng-review-routing.test.ts.
- codex /Synthesis recommendation \(REQUIRED\)/i (t01 F12, caps marker):
codex keeps its synthesis rule always loaded -> kept free: /Synthesis
recommendation/i and the machine format /Recommendation\s*:\s*<action>\s*
because/i.
Mutation pass (scratch worktree, generated SKILL.md and sections): 8/8 as
expected; removing Recommendation: <action> because, the synthesis rule, or
the CEO/eng/design decision-unit rules goes red; dropping (REQUIRED) and
rewording the two dropped eng sentences stays green. Log:
.context/mutation-auq-format-always-loaded.md.
This commit is contained in:
1 parent
7dac647939
commit
227ec905a7
1 file changed
+4
-8
@@ -58,20 +58,16 @@ const MANDATORY: Array<{ name: string; re: RegExp }> = [
|
||||
* these into a section (they fire only once the section is loaded), but they
|
||||
* must never be DROPPED. Asserted against the skeleton+sections union. */
|
||||
const PER_SKILL_RULES: Record<string, RegExp[]> = {
|
||||
'plan-ceo-review': [/One decision unit = one AskUserQuestion call/i, /Do NOT batch/i],
|
||||
'plan-eng-review': [
|
||||
/Send `AskUserQuestion\(\{ questions: \[currentDecision\] \}\)` only after the pending-record checkpoint passes\.\s+Send one\s+question object for one choice; other IDs wait/i,
|
||||
/Give independently selectable changes separate IDs/i,
|
||||
/If you discover another independent choice,\s+separate it and\s+rebuild this comparison before saving or sending the question/i,
|
||||
],
|
||||
'plan-ceo-review': [/One decision unit = one AskUserQuestion call/i],
|
||||
'plan-eng-review': [/one\s+question object for one choice/i, /independently selectable changes separate IDs/i],
|
||||
'plan-design-review': [/One issue = one AskUserQuestion call/i],
|
||||
'plan-devex-review': [
|
||||
/One new or reopened decision = one AskUserQuestion call/i,
|
||||
/Never combine independent decisions, including in separate question tabs/i,
|
||||
],
|
||||
// /codex emits its recommendation as prose; the instruction MUST stay in the
|
||||
// /codex emits its recommendation as prose; the instruction must stay in the
|
||||
// always-loaded skeleton because codex has no on-demand section.
|
||||
codex: [/Synthesis recommendation \(REQUIRED\)/i, /Recommendation\s*:\s*<action>\s*because/i],
|
||||
codex: [/Synthesis recommendation/i, /Recommendation\s*:\s*<action>\s*because/i],
|
||||
};
|
||||
|
||||
/** Discover every repo-root skill dir that ships a generated SKILL.md. */
|
||||
|
||||
Reference in new issue
Block a user