Skip to content

Commit 94fa6db

Browse files
committed
Restore plan gate and permission-asks guardrails in Skywalker prompt
1 parent 5b33b85 commit 94fa6db

2 files changed

Lines changed: 6 additions & 1 deletion

File tree

src/agent/directors/skywalker/package.test.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,9 @@ describe("skywalkerPackage", () => {
160160
expect(p).toContain("Do not reclassify COMMUNICATION as ORCHESTRATION");
161161
expect(p).toContain("synthesize what returned");
162162
expect(p).toContain("do **not** re-fan-out another diagnostic wave");
163+
expect(p).toContain(
164+
"Permission asks and long run_shell clocks on worker rows are not a signal to spawn more diggers",
165+
);
163166
expect(p).toContain(
164167
"`incomplete-report` from plan/counsel is not an attachable plan",
165168
);
@@ -302,6 +305,7 @@ describe("skywalkerPackage", () => {
302305
expect(p).toContain("explorer → plan → implement → critic");
303306
expect(p).toContain("Do not always explorer→plan→implement→critic");
304307
expect(p).toContain("Substantial builder work consumes a counsel");
308+
expect(p).toContain("builder blocks if the plan is still missing");
305309
expect(p).toContain("Tiny parent-DIY edits stay plan-optional");
306310
expect(p).toContain("`/implement` does not steal planning from `/plan`");
307311
});

src/agent/directors/skywalker/package.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ Do **not** turn a "why is this stalled / why no thinking / spawn looks broken" d
7777
- Parent-initiated interrupt (\`interrupt_agent\` / \`send_input\` with \`interrupt:true\`): wait unblocks with \`status: interrupted\` and \`stop_reason: interrupted\`. That is a resumable pause, not fail or incomplete-report. The worker is often still running and often has no report. Call \`resume_agent\` (changed follow-up into retained context) or re-wait. Do **not** \`spawn_agent\` a successor against a still-live worker. Successor only if the session is no longer resumable.
7878
- Operator-cancel (\`stop_reason\` cancelled, or Blockers that say wait for the operator): synthesize Findings and Paths, report Blockers, and **wait for the operator**. Do not auto-retry. Do not spawn a successor because the worker was cancelled.
7979
- Do **not** search the repo yourself after a worker stops without finishing its IMPLEMENTATION brief.
80+
- Permission asks and long run_shell clocks on worker rows are not a signal to spawn more diggers.
8081
8182
# Spawn handoff
8283
@@ -104,7 +105,7 @@ Every request resolves to one shape, and the shape sets the response — DIY, co
104105
105106
Tiny / single-file / one-route / clear bounded edit: DIY on the parent with write_file/edit_file; skip spawn, skip explorer, skip plan, skip critic. Prefer deletion and reuse; read first. Do not always explorer→plan→implement→critic for simple work — that burns wall clock.
106107
107-
Substantial / multi-file / parallel lanes / long-running: spawn builder with the counsel / \`/plan\` plan in the brief. Substantial builder work consumes a counsel / \`/plan\` plan (files, acceptance criteria, non-goals, risks, ordered steps). If that plan is missing, spawn counsel (or wait for \`/plan\`) before builder. Tiny parent-DIY edits stay plan-optional. \`/implement\` does not steal planning from \`/plan\`.
108+
Substantial / multi-file / parallel lanes / long-running: spawn builder with the counsel / \`/plan\` plan in the brief. Substantial builder work consumes a counsel / \`/plan\` plan (files, acceptance criteria, non-goals, risks, ordered steps). If that plan is missing, spawn counsel (or wait for \`/plan\`) before builder — builder blocks if the plan is still missing. Tiny parent-DIY edits stay plan-optional. \`/implement\` does not steal planning from \`/plan\`.
108109
109110
Docs/design (PRODUCT.md, ARCHITECTURE.md, docs/design/*, brand) still spawn shakespeare / bruckheimer / rand unless the ask is a one-line fix.
110111

0 commit comments

Comments
 (0)