From 25305c477ba8e53861fecc506d499caab7360cac Mon Sep 17 00:00:00 2001 From: Norrie Taylor Date: Fri, 19 Jun 2026 07:53:36 -0700 Subject: [PATCH] fix(fastpath): floor the single-PR implementation tier at sonnet (B7) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The fast-path single-PR implementation no-ops on the haiku tier: the sdd-execute-haiku agent doesn't follow the situation-1a fast-path entry (read the plan comment via plan_comment_id and implement) and emits zero safe outputs — no impl PR, tracking issue stranded at sdd:in-progress. Sonnet executes the same entry reliably (proven by the full-path and spike-path runs, both sonnet). Floor the fast-path implementation dispatch at sonnet: in sdd-fastpath-approve, at the single point where the plan's model:* tier becomes the dispatch, map a haiku classification up to sonnet. Only the fast-path single-PR implementation is affected; full-path cascade tiering never flows through this action. Composite action — no lock recompile. Fixes #303. Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/actions/sdd-fastpath-approve/action.yml | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/.github/actions/sdd-fastpath-approve/action.yml b/.github/actions/sdd-fastpath-approve/action.yml index 7cca81e..748499a 100644 --- a/.github/actions/sdd-fastpath-approve/action.yml +++ b/.github/actions/sdd-fastpath-approve/action.yml @@ -340,7 +340,18 @@ runs: } return; } - const tier = tierMatch[1].toLowerCase(); + let tier = tierMatch[1].toLowerCase(); + // Floor the fast-path single-PR implementation at sonnet: the + // haiku sdd-execute variant no-ops on the situation-1a fast-path + // entry (B7 / issue #303), emitting zero safe outputs and no PR, + // whereas sonnet implements it reliably. Map a haiku plan tier up + // to sonnet for THIS dispatch only; full-path cascade tiering is + // unaffected (it never flows through this action). + if (tier === 'haiku') { + core.info('Fast-path implementation tier floored from haiku to' + + ' sonnet for #' + tracking + ' (B7 / issue #303).'); + tier = 'sonnet'; + } // Dispatch sdd-execute-{tier} with the fast-path entry context. // Dispatch *before* moving the lifecycle label so that a