Skip to content

Worker policy: require model escalation before BLOCKED or human handoff #14964

@marcusquinn

Description

@marcusquinn

Summary

Workers should solve tasks end-to-end and must not treat human review or BLOCKED as an easy escape hatch.

Required policy:

  • workers only stop when they have exhausted all reasonable autonomous solution paths
  • if the current model stalls or cannot finish safely, the worker must escalate to a higher-tier or alternative model path before exiting BLOCKED
  • human attention is reserved for genuine blockers that still remain after those escalation paths are exhausted

Why this matters

Current worker prompts already discourage early stopping, but operationally the system still tends to treat:

  • nominal GitHub review-policy states
  • unresolved ambiguity
  • or lower-tier worker limits
    as reasons to stop and surface decisions to a human.

That burdens humans with work the orchestration layer should absorb.

Required behavior

  • BLOCKED is allowed only for real blockers with evidence.
  • Review-policy metadata alone is not a blocker for admin-capable worker flows.
  • Lower-tier workers should escalate to gpt-5.4 and/or alternative providers when needed.
  • The escalation path should be deterministic enough that workers do not silently give up after one failed attempt.

Acceptance criteria

  • Update the headless worker contract and/or full-loop workflow so workers must attempt escalation before BLOCKED.
  • Define which failures trigger model escalation versus immediate retry versus genuine block.
  • Add regression coverage for cases where workers previously stopped early due to review-policy state or initial model insufficiency.
  • Ensure merge-drain workers follow this rule for review/merge/release/deploy completion.

aidevops.sh v3.5.525 plugin for OpenCode v1.3.10 with gpt-5.4 spent 1h 23m and 224,089 tokens on this with the user in an interactive session.

Metadata

Metadata

Labels

enhancementAuto-created from TODO.md tagorigin:workerCreated from worker sessionstatus:doneTask is complete

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions