From f6be7baa022e029ba053d30426cccf6227e75d3d Mon Sep 17 00:00:00 2001 From: Hunter B Date: Fri, 24 Jul 2026 01:23:32 -0700 Subject: [PATCH] fix(operate): keep starter synthesizers read-only MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit type "general" maps to a write-capable worker and fails closed without writeRoots/exactFiles/coordinationContracts. operate_read_audit and operate_parallel_scout only synthesize scout output — use type "review" so the starters complete under Operate dogfood. --- workflows/operate_parallel_scout.workflow.js | 4 +++- workflows/operate_read_audit.workflow.js | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/workflows/operate_parallel_scout.workflow.js b/workflows/operate_parallel_scout.workflow.js index 705e74f8b..36b0baaa2 100644 --- a/workflows/operate_parallel_scout.workflow.js +++ b/workflows/operate_parallel_scout.workflow.js @@ -41,7 +41,9 @@ export default async function () { const summary = await task({ description: "Synthesize from surviving parallel slots", label: "synthesizer", - type: "general", + // Read-only synthesizer — "general" is write-capable and fails closed without + // write scope (same class as operate_read_audit; dogfood 2026-07-24). + type: "review", prompt: [ "Build one operator-facing summary from the surviving scout results.", "Explicitly note which parallel slot failed or returned null.", diff --git a/workflows/operate_read_audit.workflow.js b/workflows/operate_read_audit.workflow.js index d0b13ab87..2e6b47041 100644 --- a/workflows/operate_read_audit.workflow.js +++ b/workflows/operate_read_audit.workflow.js @@ -35,10 +35,12 @@ export default async function (args) { ]); phase("Synthesize"); + // Synthesizer must stay read-only: type "general" is write-capable and + // requires writeRoots/exactFiles/coordinationContracts (dogfood 2026-07-24). const summary = await task({ description: "Synthesize audit findings for the operator.", label: "audit summary", - type: "general", + type: "review", prompt: [ "Synthesize a concise security/reliability audit from these scout results.", "Filter null/failed scouts. Group by severity. No file edits.",