Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 50 additions & 0 deletions docs_build/dev/ProjectInstructions/addendums/multi_team.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,56 @@ Commit/push during the day is allowed only on assigned team/OWNER/PR branches.
Merge to main is EOD-only and owner-approved, unless the owner explicitly says:
"Merge this PR now."

## EOD Merge/Push Cleanup Gate

At EOD merge/push closeout, Codex must convert OWNER-approved decisions into action before shutdown.

Required gate:

1. List all open and draft PRs using GitHub as authority.
2. Group every PR by team:
- Alfa
- Bravo
- Charlie
- Delta
- Golf
- OWNER
- Unknown
3. Assign every PR exactly one state:
- Merge approved
- Close approved
- Hold with reason
- Blocked by dependency
- Next review target
4. Execute OWNER-approved merges before shutdown.
5. Execute OWNER-approved closures before shutdown.
6. Do not leave approved merge or close items open unless blocked.
7. If blocked, document the exact blocker:
- draft state
- conflict
- non-main base
- failed validation
- missing OWNER approval
8. Do not delete branches unless explicitly approved.
9. Produce an EOD report with:
- merged PRs
- closed PRs
- held PRs with reasons
- blocked PRs with blockers
- next review queue
- final branch/worktree/local-origin sync

OWNER_049 lesson:
- PRs #129, #132, and #134 were merge-approved and still required merge execution.
- PRs #3 and #51 were close-approved and still required closure execution.
- PRs #50 and #118 were valid holds and required hold reasons.

Rules:
- This gate applies after the owner approves a merge/close batch and before EOD shutdown.
- OWNER approval to merge or close is an instruction to execute that action unless a listed blocker exists.
- Report-only handling is not sufficient for approved merge/close items.
- This gate does not authorize branch deletion.

## EOD Workstream Closeout

At completion of a merged PR or approved workstream:
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# PR_26175_OWNER_050 - EOD Merge/Push Cleanup Gate

Date: 2026-06-24
Branch: PR_26175_OWNER_050-eod-merge-push-cleanup-gate
Scope: Project Instructions governance only

## Executive Summary

This OWNER governance update adds an explicit EOD merge/push cleanup gate to `docs_build/dev/ProjectInstructions/addendums/multi_team.md`.

The new gate requires Codex to list all open and draft PRs, group them by team, assign every PR an actionable state, execute OWNER-approved merges and closures before shutdown, and document any blocker that prevents execution. Branch deletion remains prohibited unless explicitly approved.

No runtime code was modified.

## Governance Change

Updated file:
- `docs_build/dev/ProjectInstructions/addendums/multi_team.md`

Added section:
- `EOD Merge/Push Cleanup Gate`

Required EOD behavior now includes:
- List all open and draft PRs using GitHub as authority.
- Group each PR by Alfa, Bravo, Charlie, Delta, Golf, OWNER, or Unknown.
- Assign exactly one state to every PR: Merge approved, Close approved, Hold with reason, Blocked by dependency, or Next review target.
- Execute OWNER-approved merges before shutdown.
- Execute OWNER-approved closures before shutdown.
- Leave approved merge/close items open only when a documented blocker exists.
- Document blockers as draft state, conflict, non-main base, failed validation, or missing OWNER approval.
- Preserve the no-branch-deletion rule unless explicit approval is given.
- Produce an EOD report with merged PRs, closed PRs, held PRs, blocked PRs, next review queue, and final branch/worktree/local-origin sync.

## OWNER_049 Lesson Captured

- PRs #129, #132, and #134 were merge-approved and still required merge execution.
- PRs #3 and #51 were close-approved and still required closure execution.
- PRs #50 and #118 were valid holds and required hold reasons.

## Requirement Checklist

| Requirement | Status | Notes |
| --- | --- | --- |
| Start from `main` | PASS | Initial branch check returned `main`. |
| Hard stop if worktree not clean | PASS | Initial `git status --short` returned no entries. |
| Hard stop if local/origin sync not `0 0` | PASS | Initial `git rev-list --left-right --count main...origin/main` returned `0 0`. |
| Read all Project Instructions | PASS | All current Project Instructions files and archive history snapshots were reviewed before editing. |
| Add EOD open/draft PR listing requirement | PASS | Added to the EOD cleanup gate. |
| Add team grouping for Alfa, Bravo, Charlie, Delta, Golf, OWNER, Unknown | PASS | Added to the EOD cleanup gate. |
| Add required per-PR state assignment | PASS | Added allowed state list exactly. |
| Require OWNER-approved merges before shutdown | PASS | Added explicit execution requirement. |
| Require OWNER-approved closures before shutdown | PASS | Added explicit execution requirement. |
| Prevent approved merge/close items from remaining open unless blocked | PASS | Added explicit rule and blocker list. |
| Require blocker documentation | PASS | Added draft state, conflict, non-main base, failed validation, and missing OWNER approval. |
| Preserve no branch deletion without approval | PASS | Added and retained no-branch-deletion rule. |
| Require EOD report fields | PASS | Added merged, closed, held, blocked, next review, and final repo state fields. |
| Capture PR_26175_OWNER_049 lesson/example | PASS | Added OWNER_049 lesson bullets. |
| Do not modify runtime code | PASS | Only governance/report files were changed. |
| Create required reports | PASS | This report, `codex_review.diff`, and `codex_changed_files.txt` are included. |
| Create repo-structured ZIP under `tmp/` | PASS | ZIP path: `tmp/PR_26175_OWNER_050-eod-merge-push-cleanup-gate_delta.zip`. |

## Validation Lane Report

Commands:
- `git diff --check`
- `tar -tf tmp/PR_26175_OWNER_050-eod-merge-push-cleanup-gate_delta.zip`
- `git diff --name-only`
- `git status --short`

Expected changed files:
- `docs_build/dev/ProjectInstructions/addendums/multi_team.md`
- `docs_build/dev/reports/PR_26175_OWNER_050-eod-merge-push-cleanup-gate.md`
- `docs_build/dev/reports/codex_changed_files.txt`
- `docs_build/dev/reports/codex_review.diff`

Validation status:
- PASS: Governance change is report-only and affects no runtime code.
- PASS: Required report files are present.
- PASS: Repo-structured ZIP is created under `tmp/`.

## Manual Validation Notes

- Confirmed the new gate is additive and does not rewrite historical Project Instructions.
- Confirmed the gate directly addresses the OWNER_049 lesson: approved merge/close decisions must be executed before shutdown unless blocked.
- Confirmed no PRs were merged, no PRs were closed, and no branches were deleted by this task.
10 changes: 2 additions & 8 deletions docs_build/dev/reports/codex_changed_files.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,4 @@
docs_build/dev/BUILD_PR.md
assets/theme-v2/js/toolbox-status-bar.js
assets/theme-v2/css/status.css
assets/theme-v2/css/layout.css
tests/playwright/tools/ToolboxSelectedGameStatusBar.spec.mjs
docs_build/dev/reports/PR_26175_ALFA_009-status-bar-single-row-rebuild_report.md
docs_build/dev/reports/PR_26175_ALFA_009-status-bar-single-row-rebuild_validation-lane.md
docs_build/dev/reports/PR_26175_ALFA_009-status-bar-single-row-rebuild_requirements-checklist.md
docs_build/dev/ProjectInstructions/addendums/multi_team.md
docs_build/dev/reports/PR_26175_OWNER_050-eod-merge-push-cleanup-gate.md
docs_build/dev/reports/codex_review.diff
docs_build/dev/reports/codex_changed_files.txt
Loading
Loading