mirror of
https://github.com/garrytan/gstack.git
synced 2026-11-05 00:03:15 +01:00
fix(evals): the docs observer accepts the spawned-prefixed gstack-skill-start --help read
Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
This commit is contained in:
1 parent
b40d8418f9
commit
32c3ddc7a5
2 files changed
+10
No files matched your search
@@ -36,6 +36,15 @@ test.each(['success', 'error', 'abort', 'unknown'])('same-session literal end ac
|
||||
expect(docsToolFailures(result, fixture)).toEqual([]);
|
||||
});
|
||||
|
||||
test('start --help is a read with or without the spawned prefix; anything else after the prefix still names document-release', () => {
|
||||
const start = `${fixture.skills.split(path.sep).join('/')}/bin/gstack-skill-start`;
|
||||
expect(docsCommandAllowed(`GSTACK_SESSION_KIND=spawned ${start} --help`, fixture)).toBe(true);
|
||||
expect(docsCommandAllowed(`${start} --help`, fixture)).toBe(true);
|
||||
expect(docsCommandAllowed(`GSTACK_SESSION_KIND=spawned ${start} --help --skill qa`, fixture)).toBe(false);
|
||||
expect(docsCommandAllowed(`GSTACK_SESSION_KIND=spawned ${start} --skill qa --model claude`, fixture)).toBe(false);
|
||||
expect(docsCommandAllowed(`GSTACK_SESSION_KIND=spawned /tmp/gstack-skill-start --help`, fixture)).toBe(false);
|
||||
});
|
||||
|
||||
test('historical misplaced spawned prefix remains rejected while corrected preamble stays supported', () => {
|
||||
const [original, spawned] = docsPreambleCommands(fixture);
|
||||
// The pre-#2763 wrapper put a misplaced prefix on its _SS assignment.
|
||||
|
||||
@@ -281,6 +281,7 @@ function literalDocsCommandAllowed(text: string, fixture: ReturnType<typeof fixt
|
||||
const start = path.join(fixture.skills, 'bin/gstack-skill-start').split(path.sep).join('/');
|
||||
const end = path.join(fixture.skills, 'bin/gstack-skill-end').split(path.sep).join('/');
|
||||
if ((commandName === start || commandName === end) && rest.length === 1 && rest[0] === '--help') return true;
|
||||
if (commandName === marker && rest.length === 2 && rest[0] === start && rest[1] === '--help') return true;
|
||||
return (commandName === marker && rest[0] === start || commandName === start || commandName === end) && args.includes('document-release');
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user