mirror of
https://github.com/garrytan/gstack.git
synced 2026-11-13 03:48:06 +01:00
Merge gsta-96-completeness-wording (#3425) into gsta-96-preamble-hoist
plan-ceo-review's parity cap moves 1.0999 -> 1.1006 for the approved COMPLETENESS IS COVERAGE bullet (Garry 2026-10-25: "do it", parity caps to measured size; applied by GStack Minder). Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
This commit is contained in:
commit
c9804fc681
7 files changed
+25
-13
No files matched your search
@@ -2,7 +2,7 @@ import { describe, expect, test } from 'bun:test';
|
||||
import { readFileSync } from 'node:fs';
|
||||
import { resolve } from 'node:path';
|
||||
import { readWorkflowJudgeInput } from './helpers/workflow-judge-input';
|
||||
import { expectMentions } from './helpers/prompt-structure';
|
||||
import { expectAbsent, expectMentions } from './helpers/prompt-structure';
|
||||
|
||||
const root = resolve(import.meta.dir, '..');
|
||||
const compact = (text: string) => text.replace(/\s+/g, ' ').trim();
|
||||
@@ -93,3 +93,11 @@ for (const source of sources) describe(`CEO clarity routing — ${source.label}`
|
||||
expectMentions(opening, [['do not', 'another', 'handoff']], 'opening');
|
||||
});
|
||||
});
|
||||
|
||||
describe('CEO completeness posture', () => {
|
||||
test('the Philosophy bullet measures completeness in coverage, not code', () => {
|
||||
const philosophy = readFileSync(resolve(root, 'plan-ceo-review/SKILL.md.tmpl'), 'utf8').split('## Philosophy')[1]!.split('## Prime Directives')[0]!;
|
||||
expectMentions(philosophy, [['whole requirement', '90% shortcut', 'no code beyond', 'equal coverage', 'smaller diff']], 'philosophy');
|
||||
expectAbsent(philosophy, ['COMPLETENESS IS CHEAP', '~150 LOC'], 'philosophy');
|
||||
});
|
||||
});
|
||||
@@ -191,7 +191,7 @@ export const CARVE_GUARDS: Record<string, CarveGuard> = {
|
||||
mustContain: ['SCOPE EXPANSION', 'SELECTIVE EXPANSION', 'HOLD SCOPE', 'SCOPE REDUCTION'],
|
||||
// Default-on Codex outside-voice (codexPreflight block + CODEX_MODE branch
|
||||
// prose replacing the smaller opt-in question) lands this ~5.2% over baseline.
|
||||
maxSizeRatio: 1.0999, // + the Aside probe's failure reason; measured 1.0803 + Oct 10 multi-agent wave PR D1 (reality rows): 0A/0B block in the skeleton, the Reality rows required output, the Completion Summary row and the checklist row; measured 165,042 / 151,747 = 1.0876 (2026-10-10). + GSTA-96 shared-preamble hoist (owner-approved raise, Garry 2026-10-25: "do it"): the union now holds sections/preamble.md, so a fresh invocation reads the pointer plus the shared file; measured 166,899 / 151,747 = 1.0999 (2026-10-25). Before: 1.088.
|
||||
maxSizeRatio: 1.1006, // + the Aside probe's failure reason; measured 1.0803 + Oct 10 multi-agent wave PR D1 (reality rows): 0A/0B block in the skeleton, the Reality rows required output, the Completion Summary row and the checklist row; measured 165,042 / 151,747 = 1.0876 (2026-10-10). + GSTA-96 shared-preamble hoist (owner-approved raise, Garry 2026-10-25: "do it"): the union now holds sections/preamble.md, so a fresh invocation reads the pointer plus the shared file; measured 166,899 / 151,747 = 1.0999 (2026-10-25). + GSTA-96 completeness rewording (#3425, Garry 2026-10-25: "1/ yes fix this") merged into the hoist (#3434): the COMPLETENESS IS COVERAGE bullet replaces COMPLETENESS IS CHEAP, +106 bytes under the same "do it" (parity caps to measured size); measured 167,012 / 151,747 = 1.1006 (2026-10-26). Before: 1.088.
|
||||
},
|
||||
'plan-eng-review': {
|
||||
skill: 'plan-eng-review',
|
||||
|
||||
@@ -14,6 +14,7 @@ import { CLAUDE_JUDGE_EVAL_MODEL } from '../lib/eval-model';
|
||||
import { readOverlay } from '../scripts/resolvers/model-overlay';
|
||||
import { generateCompletenessSection } from '../scripts/resolvers/preamble/generate-completeness-section';
|
||||
import { generateSetupCommand } from '../scripts/resolvers/utility';
|
||||
import { expectMentions } from './helpers/prompt-structure';
|
||||
|
||||
describe('model-overlay-fable-5', () => {
|
||||
function makeCtx(model: string): TemplateContext {
|
||||
@@ -121,6 +122,7 @@ describe('GPT-5.6 Sol model profile', () => {
|
||||
expect(generic).toContain('make your best judgment and proceed');
|
||||
expect(completeness).toContain('Complete coverage, minimal code.');
|
||||
expect(completeness).toContain('prefer the smaller diff');
|
||||
expectMentions(completeness, [['full coverage', 'requirement', 'error paths', 'no code beyond'], ['equal coverage', 'smaller diff'], ['no checks', 'impossible states'], ['unrelated', 'separate scope', 'never', 'gap']], 'default completeness section');
|
||||
});
|
||||
|
||||
test('terse mode still suppresses the completeness section for Sol', () => {
|
||||
|
||||
Reference in new issue
Block a user