Skip to content

source-control:babysit-prs: read-only babysit_merge.py invocation blocked by host auto-mode permission classifier #787

Description

@kyle-sexton

Lane: babysit (loop, safe tier)

Triggering example: cycle 1, 2026-07-21. After worker-132 and worker-224 reported zero-blocker, CI-green, mergeStateStatus CLEAN outcomes for melodic-software/ci-runner#132 and melodic-software/standards#224, the orchestrator tried the SKILL.md-documented read-only readiness check (no --merge flag) as a fallback since the source-control-babysit-merge bare wrapper is not on PATH (same class of gap as #484 for the resolve-thread wrapper):

python .../babysit_merge.py melodic-software/ci-runner#132 --allowed-owners kyle-sexton,melodic-software --self-logins @me

The host's own Claude Code auto-mode permission classifier denied the Bash call outright: "Permission for this action was denied by the Claude Code auto mode classifier. Reason: Blocked by classifier." No --merge, no mutation — this is the documented read-only default action SKILL.md describes as safe to run every cycle to compute the MERGE-READY: [...] terminal line (rule 6c in the babysit standing rules).

Observed: the read-only merge-readiness gate cannot be run at all under this classifier, blocking the lane's own required per-cycle deliverable (MERGE-READY list) from being gate-proven; the orchestrator had to fall back to worker-reported live gh evidence (mergeStateStatus, checks) instead, which is weaker than the guarded gate (misses dependency-author / unprotected-base / self-login checks).

Expected: either (a) the classifier recognizes babysit_merge.py invoked without --merge as a safe read-only action and allows it by default, or (b) SKILL.md documents that a Bash permission rule for the bare read-only invocation is a prerequisite for this lane and the setup/prereq check surfaces it proactively instead of failing mid-cycle.

Category: operational (permission-preflight gap, same family as #495's "shippable permission preflight" theme, but for babysit's own guarded gate script rather than core git/gh verbs).

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.priority: mediumReal value, no hard deadline; normal backlog flow.work-class: scopedA briefed fix or small feature; blast radius bounded by the brief, tests exist.

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions