mirror of
https://github.com/garrytan/gstack.git
synced 2026-11-13 03:48:06 +01:00
plan reviews: '## CRITICAL RULE — How to ask questions' -> '## How to ask questions' (s04 F9, s05 L3)
The bodies are plain procedure; the caps label added nothing and competed with the CRITICAL GAP output label. Applied in plan-ceo-review, plan-design-review and plan-devex-review sections (s05 L3 promoted by the plan). W7a: test/devex-finding-fixture.test.ts:83-84 now finds the section by a heading regex ending in 'How to ask questions'; the skill-e2e-plan-ceo-plan-mode failure diagnosis names the new heading. Judge anchors NOT changed here (builder E moves them to structural anchors): skill-ceo-section-ordering.test.ts (old :938), workflow-excerpt.test.ts:109,296, skill-llm-eval.test.ts:638, workflow-judge-input.test.ts:366,373; the mirror in touchfiles.test.ts:219 also uses '## CRITICAL RULE'. These stay red until E's anchor commit lands. expected red until the regeneration commit
This commit is contained in:
1 parent
4a27431795
commit
f2eee1f2b8
5 files changed
+7
-7
No files matched your search
@@ -80,8 +80,9 @@ test('every host exposes the DX per-call rule before the pre-review audit and St
|
||||
const options = beforeAudit.indexOf('4. **Draft and answer one decision.**', gate);
|
||||
expect([gate, ground, classify, scope, options].every((offset, i, offsets) =>
|
||||
offset >= 0 && (i === 0 || offset > offsets[i - 1]!))).toBe(true);
|
||||
const localRule = allContent.slice(allContent.indexOf('## CRITICAL RULE — How to ask questions'),
|
||||
allContent.indexOf('## Required Outputs', allContent.indexOf('## CRITICAL RULE — How to ask questions')));
|
||||
const askHeading = allContent.search(/^## .*How to ask questions$/im);
|
||||
expect(askHeading).toBeGreaterThanOrEqual(0);
|
||||
const localRule = allContent.slice(askHeading, allContent.indexOf('## Required Outputs', askHeading));
|
||||
expect(localRule).toContain('Run the Decision gate before drafting options.');
|
||||
expect(localRule).not.toContain('use AskUserQuestion for each gap');
|
||||
expect(allContent).toContain('Record observed human onboarding separately from automated execution');
|
||||
|
||||
@@ -99,8 +99,7 @@ describeE2E('plan-ceo-review plan-mode smoke (gate)', () => {
|
||||
`plan-ceo-review smoke FAILED: outcome=${obs.outcome}\n` +
|
||||
`${diagnosis}\n` +
|
||||
`Expected 'asked'. See plan-ceo-review/SKILL.md.tmpl: the Step 0 STOP rules ` +
|
||||
`and the "One issue = one AskUserQuestion call" rule under "CRITICAL RULE — ` +
|
||||
`How to ask questions".\n` +
|
||||
`and the "One issue = one AskUserQuestion call" rule under "How to ask questions".\n` +
|
||||
`summary: ${obs.summary}\n` +
|
||||
`elapsed: ${obs.elapsedMs}ms\n` +
|
||||
`--- evidence (last 2KB visible) ---\n${obs.evidence}`,
|
||||
|
||||
Reference in new issue
Block a user