Skip to content

Commit b973563

Browse files
committed
Add backlog startup assignment policy
1 parent 13cbe98 commit b973563

14 files changed

Lines changed: 10318 additions & 4269 deletions

dev/build/ProjectInstructions/PROJECT_INSTRUCTIONS.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,8 @@ That file owns Start of Day, PLAN_PR, BUILD_PR, APPLY_PR, and invalid command be
202202
- Team ownership: `dev/build/ProjectInstructions/team_assignments/team_ownership.md`
203203
- Team assignments: `dev/build/ProjectInstructions/team_assignments/TEAM_ASSIGNMENTS.md`
204204
- Backlog: `dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md`
205+
- Team backlog/startup assignment standard: `dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md`
206+
- Tool Votes/Admin Owner priority signal source: `admin/tool-votes.html`
205207
- Database docs: `dev/build/database/`
206208
- Runtime/API standards: `dev/build/ProjectInstructions/standards/`
207209
- Runtime/API governance: `dev/build/ProjectInstructions/addendums/environment_governance_model.md`

dev/build/ProjectInstructions/TEAM_START_COMMANDS.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,13 @@ Non-Owner team PRs use Stacked PR workstreams by default. A non-Owner team PR ma
2323

2424
Use `dev/build/ProjectInstructions/` as the only active Project Instructions source.
2525
Read `dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md` before implementation.
26+
Read `dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md` during startup.
27+
28+
`BACKLOG_MASTER.md` is the authoritative source for assigned product work. `admin/tool-votes.html` is the Tool Votes/Admin Owner priority signal source for tool demand and Owner/Admin review; it informs backlog priority but does not replace the backlog.
29+
30+
Team startup must display the Team Assignment table defined in `dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md`.
31+
32+
Codex must not invent work from conversation memory when `BACKLOG_MASTER.md` has a matching product area.
2633

2734
Branch Lifecycle (Canonical):
2835
- Follow `dev/build/ProjectInstructions/addendums/project_instructions_single_source_eod_lock.md` for START / WORK / END lifecycle, branch gates, mandatory hard stops, and EOD main lock.
@@ -45,10 +52,12 @@ Ready-to-copy command:
4552
OWNER override approved: Start Alfa from the ProjectInstructions release gate.
4653
4754
Read dev/build/ProjectInstructions/PROJECT_INSTRUCTIONS.md first.
55+
Read dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md.
4856
Read dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md.
4957
Read dev/build/ProjectInstructions/team_assignments/TEAM_ASSIGNMENTS.md.
5058
5159
Pull one [ ] item for Alfa from BACKLOG_MASTER.md.
60+
Report the Team Assignment table before implementation.
5261
Stop if Alfa already has an active branch.
5362
Stop if Alfa already has an active assignment.
5463
Stop if no [ ] Alfa backlog item is available.
@@ -67,10 +76,12 @@ Ready-to-copy command:
6776
OWNER override approved: Start Bravo from the ProjectInstructions release gate.
6877
6978
Read dev/build/ProjectInstructions/PROJECT_INSTRUCTIONS.md first.
79+
Read dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md.
7080
Read dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md.
7181
Read dev/build/ProjectInstructions/team_assignments/TEAM_ASSIGNMENTS.md.
7282
7383
Pull one [ ] item for Bravo from BACKLOG_MASTER.md.
84+
Report the Team Assignment table before implementation.
7485
Stop if Bravo already has an active branch.
7586
Stop if Bravo already has an active assignment.
7687
Stop if no [ ] Bravo backlog item is available.
@@ -89,10 +100,12 @@ Ready-to-copy command:
89100
OWNER override approved: Start Charlie from the ProjectInstructions release gate.
90101
91102
Read dev/build/ProjectInstructions/PROJECT_INSTRUCTIONS.md first.
103+
Read dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md.
92104
Read dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md.
93105
Read dev/build/ProjectInstructions/team_assignments/TEAM_ASSIGNMENTS.md.
94106
95107
Pull one [ ] item for Charlie from BACKLOG_MASTER.md.
108+
Report the Team Assignment table before implementation.
96109
Stop if Charlie already has an active branch.
97110
Stop if Charlie already has an active assignment.
98111
Stop if no [ ] Charlie backlog item is available.
@@ -111,11 +124,13 @@ Ready-to-copy command:
111124
OWNER override approved: Start Delta from the ProjectInstructions release gate.
112125
113126
Read dev/build/ProjectInstructions/PROJECT_INSTRUCTIONS.md first.
127+
Read dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md.
114128
Read dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md.
115129
Read dev/build/ProjectInstructions/team_assignments/TEAM_ASSIGNMENTS.md.
116130
Read dev/build/ProjectInstructions/team_assignments/team_ownership.md.
117131
118132
Pull one [ ] item for Delta from BACKLOG_MASTER.md.
133+
Report the Team Assignment table before implementation.
119134
Stop if Delta already has an active branch.
120135
Stop if Delta already has an active assignment.
121136
Stop if no [ ] Delta backlog item is available.
@@ -135,10 +150,12 @@ Ready-to-copy command:
135150
OWNER override approved: Start Golf from the ProjectInstructions release gate.
136151
137152
Read dev/build/ProjectInstructions/PROJECT_INSTRUCTIONS.md first.
153+
Read dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md.
138154
Read dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md.
139155
Read dev/build/ProjectInstructions/team_assignments/TEAM_ASSIGNMENTS.md.
140156
Read dev/build/ProjectInstructions/team_assignments/team_ownership.md.
141157
158+
Report the Team Assignment table before implementation.
142159
Stop if Golf already has an active branch.
143160
Stop if Golf already has an active assignment.
144161
Stop if OWNER has not explicitly assigned Golf work.

dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,29 +26,86 @@ Historical snapshots, archived references, and non-team phrases such as `Alfa/Be
2626

2727
## Team Backlog Ownership
2828

29+
Authoritative assigned product work source:
30+
31+
```text
32+
dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md
33+
```
34+
35+
Tool demand and Owner/Admin priority signal source:
36+
37+
```text
38+
admin/tool-votes.html
39+
```
40+
41+
The Tool Votes/Admin Owner planning surface informs backlog priority, Owner/Admin review, tool demand, and reprioritization. It does not replace `BACKLOG_MASTER.md` as the authoritative assigned-work source.
42+
2943
Every active team owns an active backlog when it has assigned work.
3044

3145
Each backlog item must track:
3246

3347
- name
3448
- description
49+
- product area
50+
- status
3551
- current completion percentage
52+
- active PR, when one exists
53+
- next milestone
3654
- remaining work
3755
- blocking dependencies
3856
- owning team
57+
- source or reference
3958

4059
Completion percentages are updated:
4160

4261
- at SOD
62+
- when work changes status
4363
- after every accepted PR
4464
- at EOD
4565

4666
The backlog is the authoritative source for determining the next logical PRs.
4767

4868
If the backlog and a generated report conflict, the backlog wins unless OWNER explicitly approves a newer governance decision.
4969

70+
Codex must not invent assigned product work from conversation memory when `BACKLOG_MASTER.md` has a matching product area.
71+
72+
Teams must update backlog status and percent complete when work changes status.
73+
74+
Owner must update backlog status, completion percentage, and Tool Votes/Admin Owner status when assigning, reprioritizing, completing, or deferring work.
75+
5076
When the Product Owner provides a completed PR ZIP, ChatGPT must review that ZIP, update the active team backlog and completion percentages, and recommend the next logical PRs needed to keep moving toward a Product Owner testable outcome.
5177

78+
## Team Assignment Startup Review
79+
80+
During startup, each team must:
81+
82+
1. Read `dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md`.
83+
2. Locate its assigned team section and assigned product areas.
84+
3. Read the Tool Votes/Admin Owner priority signal source at `admin/tool-votes.html` when the work involves tool demand, tool ordering, or Owner/Admin prioritization.
85+
4. Display assignments as a table grouped by Team, then Product Area.
86+
5. Include Team, Product Area, Status, Percent Complete, Active PR, Next Milestone, and Source / Reference for every assignment row.
87+
88+
Required startup output:
89+
90+
```text
91+
Team Assignment
92+
===============
93+
94+
Source ............ dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md
95+
Priority Source ... admin/tool-votes.html
96+
Team .............. <team>
97+
Status ............ PASS
98+
99+
Assignments
100+
-----------
101+
102+
| Team | Product Area | Status | Complete | Active PR | Next Milestone | Source |
103+
|------|--------------|--------|----------|-----------|----------------|--------|
104+
| Alfa | Objects Manager | Active | 45% | PR_26179_ALFA_011 | Properties | BACKLOG_MASTER.md |
105+
```
106+
107+
If the task is not represented in `BACKLOG_MASTER.md` or the Tool Votes/Admin Owner planning source, Codex must flag the missing representation and ask OWNER whether to add or update the backlog before continuing.
108+
52109
## Start Of Day Team Briefing
53110

54111
When a team is assigned, ChatGPT/Codex must provide this briefing before implementation begins:
@@ -65,6 +122,18 @@ When a team is assigned, ChatGPT/Codex must provide this briefing before impleme
65122

66123
This briefing is required before implementation begins.
67124

125+
The briefing must include the Team Assignment startup output defined above.
126+
127+
## Startup Hard Stops
128+
129+
STOP before implementation when:
130+
131+
- `dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md` cannot be found.
132+
- the assigned team cannot be found in the backlog, unless OWNER explicitly provided a one-off task.
133+
- the requested product-area task is not represented in the backlog or Tool Votes/Admin Owner planning source, until OWNER confirms whether to update the backlog.
134+
135+
If `admin/tool-votes.html` cannot be found, document the missing priority signal source and recommend `admin/tool-votes.html` as the canonical path instead of inventing a replacement.
136+
68137
## End Of Day Team Summary
69138

70139
At EOD, ChatGPT/Codex must provide:

dev/build/ProjectInstructions/addendums/team_start_and_release.md

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,13 @@ Before a team starts, validate:
1919
- `main...origin/main` is `0 0`
2020
- `HEAD` SHA matches published EOD SHA
2121
- active assignment is selected or confirmed by OWNER
22+
- `dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md` is loaded as the authoritative assigned-work source
23+
- `admin/tool-votes.html` is located as the Tool Votes/Admin Owner priority signal source
2224
- assigned team uses the canonical Owner plus military team-name set
2325
- work remains with the assigned team until complete or OWNER reassignment
2426
- the team's previous PR is Closed, unless OWNER documented an explicit stacked PR chain
2527

26-
Before implementation begins, ChatGPT/Codex must provide the SOD briefing defined in `dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md`.
28+
Before implementation begins, ChatGPT/Codex must provide the SOD briefing and Team Assignment table defined in `dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md`.
2729

2830
## Current Four-Team Start Set
2931

@@ -63,17 +65,19 @@ Clarification:
6365
For backlog-driven work:
6466

6567
1. Read `dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md`.
66-
2. Select only the OWNER-approved backlog item.
67-
3. Use the approved status model from `status_model.md`.
68-
4. Confirm the previous PR for the team is Closed, unless this is an explicitly documented stacked PR chain.
69-
5. Follow the canonical START phase in `project_instructions_single_source_eod_lock.md`.
70-
6. Create or use the approved team branch and PR identity only after START passes.
71-
7. Mark lifecycle state as PR Open.
72-
8. Plan on the same PR branch.
73-
9. Build on the same PR branch.
74-
10. Record active work in the active team registry when required.
75-
11. Open or update a draft PR during active WORK.
76-
12. Merge only through OWNER-approved PR workflow and canonical END.
68+
2. Locate the assigned team section and product areas.
69+
3. Locate `admin/tool-votes.html` as the Tool Votes/Admin Owner priority signal source when tool demand or Owner/Admin prioritization is relevant.
70+
4. Select only the OWNER-approved backlog item.
71+
5. Use the approved status model from `status_model.md`.
72+
6. Confirm the previous PR for the team is Closed, unless this is an explicitly documented stacked PR chain.
73+
7. Follow the canonical START phase in `project_instructions_single_source_eod_lock.md`.
74+
8. Create or use the approved team branch and PR identity only after START passes.
75+
9. Mark lifecycle state as PR Open.
76+
10. Plan on the same PR branch.
77+
11. Build on the same PR branch.
78+
12. Record active work in the active team registry when required.
79+
13. Open or update a draft PR during active WORK.
80+
14. Merge only through OWNER-approved PR workflow and canonical END.
7781

7882
## Team Command Examples
7983

dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,29 @@
44

55
Canonical backlog tracking owner: `dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md`.
66

7+
This file is the authoritative source for assigned product work.
8+
9+
This document is updated as work status changes, including Owner assignment, reprioritization, completion, deferral, accepted PRs, SOD review, and EOD review.
10+
11+
Backlog content must be organized by Team, then Product Area. Existing roadmap phase sections must preserve explicit team/product-area ownership until they are normalized into the Team/Product Area grouping.
12+
13+
Each product area must include status and percent complete.
14+
715
Every active team owns an active backlog when it has assigned work.
816

917
Backlog entries in this file follow the canonical field list, including:
1018

1119
- Name
1220
- Description
21+
- Product area
22+
- Status
1323
- Current completion percentage
24+
- Active PR, when one exists
25+
- Next milestone
1426
- Remaining work
1527
- Blocking dependencies
1628
- Owning team
29+
- Source or reference
1730

1831
Completion percentages are updated at SOD, after every accepted PR, and at EOD.
1932

dev/build/ProjectInstructions/bootstrap/codex_start_of_day_bootstrap.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ The bootstrap loads:
2929
- Canonical Repository Structure
3030
- Team instructions
3131
- Team backlog
32+
- `dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md` assignment source
33+
- `admin/tool-votes.html` Tool Votes/Admin Owner priority signal source
3234
- Current team status
3335
- Current branch
3436
- Worktree status
@@ -148,6 +150,31 @@ Additional Documents Loaded:
148150
Next Recommended PR:
149151
```
150152

153+
Start-of-Day bootstrap must also include the Team Assignment section defined by:
154+
155+
```text
156+
dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md
157+
```
158+
159+
Required assignment output:
160+
161+
```text
162+
Team Assignment
163+
===============
164+
165+
Source ............ dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md
166+
Priority Source ... admin/tool-votes.html
167+
Team .............. <team>
168+
Status ............ PASS
169+
170+
Assignments
171+
-----------
172+
173+
| Team | Product Area | Status | Complete | Active PR | Next Milestone | Source |
174+
|------|--------------|--------|----------|-----------|----------------|--------|
175+
| Alfa | Objects Manager | Active | 45% | PR_26179_ALFA_011 | Properties | BACKLOG_MASTER.md |
176+
```
177+
151178
## Loading Rules
152179

153180
Only `PROJECT_INSTRUCTIONS.md` is requested directly.

dev/build/ProjectInstructions/standards/CODEX_WORKFLOW_COMMANDS.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,10 +61,19 @@ Start of Day reports:
6161
- current branch
6262
- worktree status
6363
- latest main status
64+
- backlog assignment source
65+
- Tool Votes/Admin Owner priority signal source
66+
- Team Assignment table grouped by Team, then Product Area
6467
- active PR, if any
6568
- recommended next action
6669
- blockers
6770

71+
The Team Assignment table and backlog hard stops are defined in:
72+
73+
```text
74+
dev/build/ProjectInstructions/addendums/team_backlog_sod_eod_standard.md
75+
```
76+
6877
Start of Day may recommend the next execution phase, but it must not execute that phase.
6978

7079
Start of Day must satisfy the Codex Completion Contract in `dev/build/ProjectInstructions/addendums/codex_artifact_and_reporting_standard.md`. Because Start of Day is read-only discovery, its ZIP outcome is review-only unless another outcome is explicitly documented.
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# PR_26180_OWNER_003 Branch Validation
2+
3+
| Gate | Result | Evidence |
4+
|---|---|---|
5+
| Project Instructions version loaded | PASS | `2026.06.28.002` |
6+
| Repository Project Instructions source | PASS | Loaded from `dev/build/ProjectInstructions/` |
7+
| Cached memory discarded | PASS | Repository instructions used as authority |
8+
| Branching policy loaded | PASS | `dev/build/ProjectInstructions/PROJECT_BRANCHING_POLICY.md` |
9+
| Batch Governance Mode loaded | PASS | `dev/build/ProjectInstructions/addendums/batch_governance_mode.md` |
10+
| Current branch | PASS | `PR_26180_OWNER_003-backlog-startup-assignment-policy` |
11+
| Owner independent PR model | PASS | Branch created from synchronized `main` |
12+
| Worktree before edits | PASS | Clean before PR edits |
13+
| Scope | PASS | Governance/documentation only |
14+
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# PR_26180_OWNER_003 Manual Validation Notes
2+
3+
- Confirmed `dev/build/ProjectInstructions/backlog/BACKLOG_MASTER.md` exists and is referenced as the authoritative assigned-work source.
4+
- Confirmed `admin/tool-votes.html` exists and is referenced only as the Tool Votes/Admin Owner priority signal source.
5+
- Confirmed the required Team Assignment startup output section appears in active startup governance.
6+
- Confirmed Tool Votes UI/page files were not modified.
7+
- Confirmed this PR does not implement Tile, Tool Votes, runtime, API, database, or UI behavior.
8+
- Playwright was not run because this is governance/documentation-only and no runtime or UI files changed.
9+

0 commit comments

Comments
 (0)