Skip to content

Commit 7d85030

Browse files
authored
Merge PR_26180_OWNER_003-backlog-startup-assignment-policy
Owner EOD merge for Project Instructions backlog startup assignment policy.
2 parents 652ade2 + 75d3792 commit 7d85030

15 files changed

Lines changed: 1105 additions & 893 deletions

dev/build/ProjectInstructions/PROJECT_INSTRUCTIONS.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ Rules:
117117

118118
## Current Version/Date
119119

120-
- Project Instructions Version: 2026.06.28.002
120+
- Project Instructions Version: 2026.06.28.003
121121
- Date: 2026-06-28
122122
- Owner: OWNER
123123

@@ -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/PROJECT_INSTRUCTIONS_VERSION.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Project Instructions Version
22

3-
Current Project Instructions Version: 2026.06.28.002
3+
Current Project Instructions Version: 2026.06.28.003
44

55
Last Updated: 2026-06-28
66

@@ -10,6 +10,7 @@ Last Updated: 2026-06-28
1010
- Project Instructions versions are repository-owned and increment independently of PR numbers.
1111
- Added dedicated branching policy document.
1212
- Startup validation now verifies the branching policy document was loaded instead of duplicating policy text.
13+
- Added backlog startup assignment policy requiring `BACKLOG_MASTER.md` and Tool Votes/Admin Owner priority signal review during team startup.
1314
- Codex must read this version file and the latest repository copy of `PROJECT_INSTRUCTIONS.md` before performing work.
1415
- Codex must discard previously remembered Project Instructions and treat the repository copy as authoritative.
1516
- Codex must validate canonical report and ZIP paths, branching model, and legacy path avoidance before work proceeds.

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: 37 additions & 2 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_MASTER.md` is now the canonical team/product-area assignment and status source. Future backlog changes must update this structure directly.
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

@@ -181,6 +194,29 @@ The backlog is the authoritative source for determining the next logical PRs.
181194
- OWNER merge approval and EOD merge governance verified.
182195
- Team ownership governance verified through the authoritative ownership map.
183196

197+
- [x] Alfa - Team-aware local dev bootstrap runtime complete
198+
199+
Notes:
200+
- Completion reference: PR #250 / `PR_26171_ALFA_009-team-aware-bootstrap`.
201+
- `npm run dev:bootstrap` is the primary team-aware local bootstrap command.
202+
- `npm run dev:local-api` remains as the legacy API alias.
203+
- `npm run dev:api` supports API-only startup.
204+
- `npm run dev:web` supports web-only startup.
205+
- `dev/bootstrap/start-dev.mjs` owns bootstrap orchestration.
206+
- `dev/bootstrap/team-port-config.mjs` owns team port resolution.
207+
- Team-aware `--team` runtime support is implemented.
208+
- Bootstrap orchestration, browser launch reporting, and port resolution are implemented.
209+
- Verified command: `npm run dev:bootstrap -- --team bravo`.
210+
- Observed verified output includes:
211+
- `GameFoundry team-aware dev bootstrap`
212+
- `Mode: bootstrap`
213+
- `Team: bravo`
214+
- `Web URL: http://127.0.0.1:5520`
215+
- `API URL: http://127.0.0.1:5521/api`
216+
- `Browser launch: http://127.0.0.1:5520/index.html`
217+
- `Supported teams: owner, alfa, bravo, charlie, delta, echo, foxtrot, golf, hotel`
218+
- Do not assign team-aware dev bootstrap, `dev:bootstrap`, team-port config, browser launch, bootstrap orchestration, or port resolution as remaining backlog work unless OWNER opens a new enhancement request.
219+
184220
- [x] OWNER - Repository hygiene governance complete
185221

186222
Notes:
@@ -195,11 +231,10 @@ The backlog is the authoritative source for determining the next logical PRs.
195231
Status: CANCELLED / NOT DOING
196232

197233
Items removed from backlog:
198-
- Multi-port workspace framework
199234
- Alfa/Beta/User isolation framework
200-
- Runtime port management initiative
201235

202236
Replacement governance:
237+
- Multi-port workspace framework and runtime port management are no longer cancelled/not doing; they are implemented by the team-aware local dev bootstrap runtime item above.
203238
- System Health remains one page per deployed environment.
204239
- Each deployment actively checks only itself.
205240
- Environment Summary, Database Health, Storage Health, Runtime Health, and Health Check History are Charlie System Health ownership.

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.

0 commit comments

Comments
 (0)