From e6ac813ddb7acc19093d8bcdd21b093ef75f6a6f Mon Sep 17 00:00:00 2001 From: garrytan Date: Wed, 30 Sep 2026 16:20:03 +0000 Subject: [PATCH] test(ship-docsync): name the seeded read list and cap journal/report length The first seeded stale-before run spent calls locating documentation.md (two ls sweeps), reading through cat and re-Reading the record before Edit, and ~40 s composing 1.5-2.2 KB entries and report. Name every seeded read path, ask for native Read, and bound entry/report length. --- test/helpers/docsync-fault-eval.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/helpers/docsync-fault-eval.ts b/test/helpers/docsync-fault-eval.ts index c465fa3bb..55f3b32e4 100644 --- a/test/helpers/docsync-fault-eval.ts +++ b/test/helpers/docsync-fault-eval.ts @@ -81,7 +81,7 @@ export function docsActorVerdict(state: DocsActorState, report: string, publishe } export function docsFaultPrompt(fixture: ReturnType, phase: string, report: string, scenario: DocsFault, - seed?: { completion: string }): string { + seed?: { candidate: string; completion: string }): string { const actorFile = path.join(import.meta.dir, 'docsync-fault-actor.ts'); const stateFile = path.join(fixture.home, 'actor-state.json'); const opening = seed @@ -91,7 +91,7 @@ export function docsFaultPrompt(fixture: ReturnType, phase: ${docsBoundedStageInterface(fixture)} -This native-parent fixture supplies a deterministic child transport instead of Agent/Task. It is a host adapter, not a replacement workflow. Do not invoke real Agent/Task or execute the child's audit/lifecycle yourself. ${seed ? 'In one response, Read the actual phase, its installed documentation section, the invocation record, and attempt 1\'s saved candidate and output.' : 'Read the actual phase and its installed documentation section and child assets.'} The adapter returns child evidence; only you apply the loaded workflow's gates. +This native-parent fixture supplies a deterministic child transport instead of Agent/Task. It is a host adapter, not a replacement workflow. Do not invoke real Agent/Task or execute the child's audit/lifecycle yourself. ${seed ? `In one response, natively Read the actual phase, its installed documentation section at ${path.join(fixture.skills, 'ship/sections/documentation.md')}, the invocation record, attempt 1's candidate at ${seed.candidate} and its saved output. No ls, cat or directory search is needed, and native Edit of the invocation record needs no second Read. Keep each journal entry to at most four short lines and the final report to at most fifteen lines: cite evidence by artifact path and name only changed paths and hashes.` : 'Read the actual phase and its installed documentation section and child assets.'} The adapter returns child evidence; only you apply the loaded workflow's gates. Declared transport interface (literal key=value arguments; quote file paths as needed): bun ${actorFile} prepare ${stateFile} audit_id=ID