Skip to content

Broaden autonomous planning and harden Project drains - #36

Merged
chrisbanes merged 4 commits into
mainfrom
cb/autonomous-to-plan-decisions
Aug 5, 2026
Merged

Broaden autonomous planning and harden Project drains#36
chrisbanes merged 4 commits into
mainfrom
cb/autonomous-to-plan-decisions

Conversation

@chrisbanes

@chrisbanes chrisbanes commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Summary

  • let to-plan resolve repository-supported contract-realizing decisions across public interfaces, schemas, persistence, seams, and testing strategy
  • narrow human escalation to genuine stakeholder contract, policy, compatibility, migration, and data-loss decisions
  • align run-github-project around one canonical disposition-aware replan packet
  • park isolated required-CI failures after three non-converging repair rounds, release their implementation slots, and refresh and rerank the live queue
  • preserve parked claims across restarts with verified issue markers and resume them only after a relevant state change or explicit investigation
  • define one canonical live merge-policy fingerprint so policy drift remains a global stop rather than a ticket-local resume signal
  • add RED/GREEN scenarios for the revised planning, parking, refresh, restart, and failure-isolation boundaries

Why

The previous category-based planning gate rejected otherwise ready tickets whenever planning touched a public interface, schema, persisted representation, architectural seam, or testing contract. A human-authorized Planning transition should delegate those implementation decisions when repository evidence supports a design that preserves the accepted stakeholder contract.

The drain scheduler could also preserve a repeatedly failing ticket in an occupied slot and stop from a stale queue, even when unrelated Ready or Planning work existed. Terminal ticket-local required-CI failures now become durable parked claims outside implementation capacity, while configuration, policy, access, review, base-repair, ambiguous, correlated, and global failures retain their stricter stop behavior.

Validation

  • npm run lint
  • python3 -m unittest skills/run-github-project/scripts/test_rank_tickets.py (66 tests)
  • python3 /Users/chris/.codex/skills/.system/skill-creator/scripts/quick_validate.py skills/to-plan
  • python3 /Users/chris/.codex/skills/.system/skill-creator/scripts/quick_validate.py skills/run-github-project
  • Standards and Spec code-review axes: no findings
  • final four-role review-and-simplify-changes gate: no findings
  • ponytail-review: Lean already. Ship.

@chrisbanes chrisbanes changed the title Broaden autonomous planning decisions Broaden autonomous planning and harden Project drains Aug 5, 2026
@chrisbanes
chrisbanes marked this pull request as ready for review August 5, 2026 13:27
@greptile-apps

greptile-apps Bot commented Aug 5, 2026

Copy link
Copy Markdown

Greptile Summary

The PR broadens autonomous planning decisions and introduces durable, disposition-aware handling for repeatedly failing implementation claims.

  • Defines canonical planning and replan packet contracts.
  • Adds terminal required-CI parking, restart reconstruction, queue refresh, and reranking rules.
  • Introduces a canonical live merge-policy fingerprint and aligns ticket normalization and triage behavior with parked claims.

Confidence Score: 4/5

The PR needs a restart-time live-state validation requirement before stale resume records can safely restore parked claims.

Restart reconstruction can restore a parked claim from a previously valid resume marker even after its captured PR or required-check evidence has become stale, allowing the same non-converging failure to regain capacity and a reset repair budget.

Files Needing Attention: skills/run-github-project/references/drain-scheduler.md

Important Files Changed

Filename Overview
skills/run-github-project/references/drain-scheduler.md Adds durable CI-failure parking and recovery rules, but restart restoration can trust stale ticket-local recovery evidence.
skills/run-github-project/SKILL.md Integrates parked claims, refresh gating, merge-policy validation, and canonical replanning into the main workflow.
skills/run-github-project/references/planning-lane.md Defines a unified disposition-aware replan packet and separates autonomous replanning from human-required contract changes.
skills/run-github-project/references/project-config.md Defines canonical live merge-policy fingerprint contents and global drift handling.
skills/run-github-project/references/normalized-ticket.md Excludes unchanged parked implementation claims from ranking and slot accounting while preserving them as unresolved work.
skills/run-github-project/references/triage-lane.md Prevents triage and successful drain completion while parked implementation work remains.
skills/to-plan/SKILL.md Expands autonomous planning authority to repository-supported contract-realizing decisions while retaining stakeholder policy gates.
skills/to-plan/references/plan-templates.md Requires plans to record non-obvious contract-realizing choices and their supporting repository evidence.

Reviews (2): Last reviewed commit: "Require substantive parked-claim recover..." | Re-trigger Greptile

Comment thread skills/run-github-project/references/drain-scheduler.md Outdated
Comment on lines +281 to +282
record references its permalink and digest. On restart, keep an active matching
record parked; restore a claim with a valid later resume record without

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Stale resume records restore claims

When a resume marker is followed by a restart after the PR head or required-check state has changed back to the same non-converging failure, this path restores the parked claim without revalidating the marker's ticket-local recovery evidence against current live state, causing the claim to regain an implementation slot with a reset repair count.

@chrisbanes
chrisbanes merged commit 67cc77b into main Aug 5, 2026
2 checks passed
@chrisbanes
chrisbanes deleted the cb/autonomous-to-plan-decisions branch August 5, 2026 16:00

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: b8e556db91

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +214 to +217
Classify only a required-CI failure isolated to one ticket as parkable. Access,
authentication, authorization, configuration, review, base-repair, merge,
ambiguous-mutation, shared-infrastructure, and correlated failures are not
parkable. Preserve or stop them through their existing failure-isolation rule.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Compare parked CI fingerprints before parking

When a ticket reaches the parking threshold, this isolation gate should also compare the candidate failure fingerprint against already parked implementation claims. Parked claims are explicitly outside implementation slots, while the later correlation rule only mentions failures appearing in two slots or on the base; after ticket A is parked, ticket B with the same required-check fingerprint can still be treated as isolated and parked instead of stopping as correlated/shared-infrastructure. Include parked records in the isolation check before allowing this path.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant