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
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Branch Context Governance

Status: Approved
Owner: OWNER

## Purpose

Require Codex and teams to confirm branch context before changing files.

## Session Start Context

At the start of work, report or validate:

- current branch
- expected branch
- current commit
- local/origin sync status
- worktree status
- active team
- active assignment

## Stop Conditions

Stop and report before changing files when:

- current branch does not match the expected branch
- local branch is behind or ahead unexpectedly
- worktree has unrelated changes
- active assignment is missing or unclear
- active team does not match the branch or OWNER instruction
- the requested work would modify files outside the approved scope

## Continuation Rule

After a branch is created, the branch remains the working context.

Do not automatically return to `main` after:

- commit
- push
- draft PR creation
- validation
- review updates
- additional commits

Return to `main` only after the PR is merged, the branch is retired, or OWNER explicitly says to return to `main`.

## GitHub Authority

GitHub is authoritative for open PR state, merged PR state, review state, and remote branch state.

Local git state must be reconciled with GitHub before making OWNER-level cleanup decisions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Branch Lock Governance

Status: Approved
Owner: OWNER

## Purpose

Keep active work attached to the correct assigned team, branch, and OWNER decision.

## Active Work Lock

- Work must occur on the assigned team or OWNER branch.
- An assigned work item keeps its owner of record until complete or OWNER reassignment.
- Work must not move to another team, branch, or PR without OWNER approval.
- A team with no active assignment, active branch, or active PR is inactive.
- Project Instructions must not assume a permanent team roster.

## Branch Rules

- Start from current `main`.
- Pull latest `origin/main` before creating a work branch.
- Keep work on the active branch until the PR is merged, the branch is retired, or OWNER says to return to `main`.
- Do not commit directly to `main` unless OWNER explicitly approves.
- Do not merge stale historical branches directly unless they are current, clean, still needed, and OWNER-approved.

## OWNER Override

OWNER may override a branch lock or team assignment.

When OWNER overrides, the PR or report must document:

- original assigned team or branch
- override decision
- reason for the override
- new assigned team or branch, if any

## Protected Instruction Boundaries

Branch lock work must not silently delete, rewrite, or weaken protected Project Instructions guidance.

Protected guidance includes:

- source-of-truth rules
- approved naming rules
- status model rules
- team assignment rules
- PR workflow rules
- Governance Phase 1 completion guidance

If protected guidance must change, OWNER approval is required.
50 changes: 50 additions & 0 deletions docs_build/dev/ProjectInstructions/addendums/release_gate.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Release Gate Governance

Status: Approved
Owner: OWNER

## Purpose

Define release gates for Project Instructions governance without making governance a blocker by default.

## Rule

Release gates are validation gates.
They do not block development unless OWNER says governance is blocking.

## Project Instructions Release Gate

Before a governance, documentation, or administrative PR is merged, validate:

- Project Instructions folder exists.
- Required source-of-truth files still exist.
- Governance Phase 1 completion guidance remains intact.
- PR workflow guidance remains intact.
- Team assignment governance remains intact.
- Active team registry guidance remains compatible with temporary active teams.
- No protected Project Instructions guidance was deleted.
- No permanent team roster or permanent discipline ownership was restored.
- No direct-to-main commit rule was bypassed.
- No application code changed unless the PR explicitly scopes application code.

## Required Source Files

The release gate should confirm these files when relevant to the PR:

- `docs_build/dev/ProjectInstructions/README.txt`
- `docs_build/dev/ProjectInstructions/PROJECT_INSTRUCTIONS.md`
- `docs_build/dev/ProjectInstructions/backlog/BACKLOG_MASTER.md`
- `docs_build/dev/ProjectInstructions/addendums/governance_phase1_complete.md`
- `docs_build/dev/ProjectInstructions/addendums/pr_workflow.md`
- `docs_build/dev/ProjectInstructions/team_assignments/team_ownership.md`

## Validation Result

If a gate fails, stop and report:

- failing check
- current branch
- current worktree status
- recommended OWNER action

If every relevant check passes, the PR may proceed through the standard PR workflow.
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Team Start And Release Governance

Status: Approved
Owner: OWNER

## Purpose

Preserve useful historical team-start and release-readiness rules in the current Governance Phase 1 model.

## Team Start Rule

OWNER identifies available teams when starting work.

Before a team starts, validate:

- current branch and expected branch are known
- worktree is clean or unrelated changes are understood
- `main` is current when a new branch is required
- active assignment is selected or confirmed by OWNER
- assigned team uses NATO phonetic naming
- work remains with the assigned team until complete or OWNER reassignment

## Assignment Flow

For backlog-driven work:

1. Read `docs_build/dev/ProjectInstructions/backlog/BACKLOG_MASTER.md`.
2. Select only the OWNER-approved backlog item.
3. Use the approved status model from `status_model.md`.
4. Create or use the approved team branch.
5. Record active work in the active team registry when required.
6. Open a draft PR after validation.
7. Merge only through OWNER-approved PR workflow.

## Team Command Examples

Use these as naming examples, not as a permanent roster:

- Start Team Alfa
- Start Team Bravo
- Start Team Charlie
- Start Team Delta
- Start Team Echo
- Start Team Foxtrot

## Release Readiness

A team or OWNER PR is release-ready when:

- scope matches the OWNER request
- validation passes
- no application code changed unless explicitly scoped
- no protected Project Instructions guidance was deleted
- branch context is correct
- active assignment or OWNER ownership is clear
- PR summary states the validation result

## Gate Behavior

Release readiness is a validation gate.
It does not block unrelated development unless OWNER says governance is blocking.
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Active Team Registry

Status: Approved
Owner: OWNER

## Purpose

Track temporary active teams without creating a permanent team roster.

## Rule

Active teams may change day to day.
OWNER identifies available teams when starting work.
Project Instructions must not assume a permanent team roster.

## Active Criteria

A team is active when it has at least one of:

- OWNER-assigned work
- active branch
- draft or open PR
- active release or cleanup responsibility

If a team has no assignment, no active branch, and no active PR, it is inactive and may be omitted from the active registry.

## Registry

| Team | Active Assignment | Branch | PR | Status | OWNER Decision |
|------|-------------------|--------|----|--------|----------------|
| Team OWNER | none | none | none | Available | Governance Phase 1 complete |

## Update Rules

Update the registry when:

- OWNER starts a team
- OWNER reassigns work
- a branch is created
- a PR is opened
- a PR is merged
- a branch is retired
- a team becomes inactive

## Reassignment

Only OWNER may reassign work.
Assigned team remains owner of record until complete or OWNER reassignment.

## Reset Rule

After closeout, the active registry may reset to no active non-OWNER teams.
This reset does not delete historical ownership, PR history, or backlog source-of-truth records.
Loading