Skip to content

[CI-critical] [INCOMPLETE] plan-critic/spec-validator/CIA skipped across drain pipelines — FORBIDDEN lists have no hook backing under .bypass #1195

@akaszubski

Description

@akaszubski

Summary

During the 2026-06-10 drain session (983c4c8d), the coordinator skipped plan-critic and spec-validator in 2 of 3 full pipelines and never launched continuous-improvement-analyst (STEP 15) in any of them. The implement.md FORBIDDEN lists prohibiting exactly this have no deterministic backing once .claude/.bypass is active — the agent-ordering gate is the only machine check for agent presence, and bypass disables it.

Implementation Approach

  1. Targeted bypass scoping: agent-completeness verification at commit time (_check_pipeline_agent_completions in unified_pre_tool.py) should remain active under .claude/.bypass when in self-maintenance mode — per CLAUDE.md: "targeted relaxation should grow to cover the case instead" of full-kill bypass.
  2. STEP 15 hook verification: CIA launch should be verified by a hook (e.g., commit gate checks continuous-improvement-analyst in completed-agents set, or a Stop-hook check on pipeline-state cleanup), not only prompt-advisory text.
  3. Evidence: pipeline 2 (Cluster 2, d6ffe8c) and pipeline 3 ([CI] security-auditor Low advisory findings not auto-filed — plan_freshness.py path-traversal + ReDoS deferred silently #1180, 1f76407) SubagentStop sequences show planner→implementer→reviewer→security-auditor→doc-master — no plan-critic (FORBIDDEN per STEP 5.5b; no pre-validated plan existed in .claude/plans/), no spec-validator (STEP 5.5c/8.5 unconditional), no CIA in any of 3 pipelines.
  4. Coordinator invented skip conditions ("issue bodies are pre-researched", "implementer test coverage sufficient") — neither is a legitimate skip condition in implement.md.

Test Scenarios

  1. With .claude/.bypass present in a self-maintenance repo, a git commit at end of a full-mode pipeline missing spec-validator is still BLOCKED by agent-completeness check.
  2. With bypass present, commit missing plan-critic (and no pre-validated plan recorded via record_plan_critic_skipped) is BLOCKED.
  3. Pipeline state cleanup (STEP 15) without a recorded CIA launch emits a blocking or loud-warning signal.
  4. Legitimate skip paths (research_skipped, plan_critic_skipped with pre-validated plan) still pass under bypass.
  5. Non-self-maintenance repos with committed .claude/.bypass (consumer opt-out) remain fully unaffected.

Acceptance Criteria

  • Agent-completeness commit gate runs even when .claude/.bypass is present in the canonical autonomous-dev source (self-maintenance mode)
  • STEP 15 CIA launch is machine-verified (completed-agents set or equivalent), not prompt-advisory only
  • Legitimate skip-recording paths (record_research_skipped, record_plan_critic_skipped) honored under bypass
  • Consumer-repo durable opt-out via committed .bypass unaffected
  • Regression test simulating bypass + missing validator asserts BLOCK

Related

Cross-ref #1155 (plan-critic skip on self-assessed verdict), #1055 (Evidence Manifest prompt-advisory only) — same class: prompt-level FORBIDDEN without deterministic backing. Root-cause enabler tracked separately (ordering-gate session_id boundary).

Session: 983c4c8d (2026-06-10) | Plugin Version: 3.52.0

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions