fix(bmgd): correct workflow-status filename and add sprint-planning update (#1172)

* fix(bmgd): add workflow status update to game-architecture completion

The game-architecture workflow was not updating the bmgd-workflow-status.yaml
file on completion, unlike other BMGD workflows (narrative, brainstorm-game).

Changes:
- Add step 4 "Update Workflow Status" to update create-architecture status
- Renumber subsequent steps (5-8 → 6-9)
- Add success metric for workflow status update
- Add failure condition for missing status update

* feat(bmgd): add generate-project-context workflow for game development

Adds a new workflow to create optimized project-context.md files for AI agent
consistency in game development projects.

New workflow files:
- workflow.md: Main workflow entry point
- project-context-template.md: Template for context file
- steps/step-01-discover.md: Context discovery & initialization
- steps/step-02-generate.md: Rules generation with A/P/C menus
- steps/step-03-complete.md: Finalization & optimization

Integration:
- Added generate-project-context trigger to game-architect agent menu
- Added project context creation option to game-architecture completion step
- Renumbered steps 6-9 → 7-10 to accommodate new step 6

Adapted from BMM generate-project-context with game-specific:
- Engine patterns (Unity, Unreal, Godot)
- Performance and frame budget rules
- Platform-specific requirements
- Game testing patterns

* fix(bmgd): correct workflow-status filename and add sprint-planning update

- Fix all BMGD workflows to reference bmgd-workflow-status.yaml instead of bmm-workflow-status.yaml
- Add workflow-status update to sprint-planning workflow completion

Affected workflows:
- brainstorm-game (instructions.md, step-01-init.md, step-04-complete.md)
- game-brief (instructions.md)
- narrative (instructions-narrative.md, step-11-complete.md)
- game-architecture (instructions.md)
- sprint-planning (instructions.md)

---------

Co-authored-by: Scott Jennings <scott.jennings+CIGINT@cloudimperiumgames.com>
Co-authored-by: Brian <bmadcode@gmail.com>
This commit is contained in:
sjennings 2025-12-20 19:30:17 -06:00 committed by GitHub
parent a20198b94b
commit e59c7b79ed
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 24 additions and 15 deletions

View File

@ -8,7 +8,7 @@
<workflow>
<step n="1" goal="Validate workflow readiness" tag="workflow-status">
<action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
<action>Check if {output_folder}/bmgd-workflow-status.yaml exists</action>
<check if="status file not found">
<output>No workflow status file found. Game brainstorming is optional - you can continue without status tracking.</output>
@ -16,7 +16,7 @@
</check>
<check if="status file found">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Load the FULL file: {output_folder}/bmgd-workflow-status.yaml</action>
<action>Parse workflow_status section</action>
<action>Check status of "brainstorm-game" workflow</action>
<action>Get project_level from YAML metadata</action>
@ -85,7 +85,7 @@
<step n="4" goal="Update status and complete" tag="workflow-status">
<check if="standalone_mode != true">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Load the FULL file: {output_folder}/bmgd-workflow-status.yaml</action>
<action>Find workflow_status key "brainstorm-game"</action>
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
<action>Update workflow_status["brainstorm-game"] = "{output_folder}/bmm-brainstorming-session-{{date}}.md"</action>

View File

@ -58,7 +58,7 @@ Validate workflow readiness, check for workflow status tracking, and prepare for
**Search for workflow status file:**
Check if `{output_folder}/bmm-workflow-status.yaml` exists.
Check if `{output_folder}/bmgd-workflow-status.yaml` exists.
**If status file NOT found:**

View File

@ -123,7 +123,7 @@ Or type 'all' to see the complete document."
**If not in standalone mode:**
Load `{output_folder}/bmm-workflow-status.yaml` and:
Load `{output_folder}/bmgd-workflow-status.yaml` and:
- Update `brainstorm-game` status to the output file path
- Preserve all comments and structure

View File

@ -12,7 +12,7 @@
<workflow>
<step n="0" goal="Validate workflow readiness" tag="workflow-status">
<action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
<action>Check if {output_folder}/bmgd-workflow-status.yaml exists</action>
<check if="status file not found">
<output>No workflow status file found. Game brief is optional - you can continue without status tracking.</output>
@ -20,7 +20,7 @@
</check>
<check if="status file found">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Load the FULL file: {output_folder}/bmgd-workflow-status.yaml</action>
<action>Parse workflow_status section</action>
<action>Check status of "game-brief" workflow</action>
<action>Get project_level from YAML metadata</action>
@ -328,7 +328,7 @@ This brief will serve as the primary input for creating the Game Design Document
<step n="16" goal="Update status and complete" tag="workflow-status">
<check if="standalone_mode != true">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Load the FULL file: {output_folder}/bmgd-workflow-status.yaml</action>
<action>Find workflow_status key "game-brief"</action>
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
<action>Update workflow_status["game-brief"] = "{output_folder}/bmm-game-brief-{{game_name}}-{{date}}.md"</action>

View File

@ -12,7 +12,7 @@
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
<step n="0" goal="Check for workflow status" tag="workflow-status">
<action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
<action>Check if {output_folder}/bmgd-workflow-status.yaml exists</action>
<check if="status file not found">
<output>No workflow status file found. Narrative workflow is optional - you can continue without status tracking.</output>
@ -20,7 +20,7 @@
</check>
<check if="status file found">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Load the FULL file: {output_folder}/bmgd-workflow-status.yaml</action>
<action>Parse workflow_status section</action>
<action>Check status of "narrative" workflow</action>
<action>Get project_level from YAML metadata</action>
@ -558,7 +558,7 @@ Which would you like?</ask>
<step n="17" goal="Update status if tracking enabled" tag="workflow-status">
<check if="standalone_mode != true">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Load the FULL file: {output_folder}/bmgd-workflow-status.yaml</action>
<action>Find workflow_status key "narrative"</action>
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
<action>Update workflow_status["narrative"] = "{output_folder}/bmm-narrative-{{game_name}}-{{date}}.md"</action>

View File

@ -160,7 +160,7 @@ narrativeComplexity: '{{complexity}}'
**If not in standalone mode:**
Load `{output_folder}/bmm-workflow-status.yaml` and:
Load `{output_folder}/bmgd-workflow-status.yaml` and:
- Update `narrative` status to the output file path
- Preserve all comments and structure

View File

@ -15,7 +15,7 @@
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
<step n="0" goal="Validate workflow readiness" tag="workflow-status">
<action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
<action>Check if {output_folder}/bmgd-workflow-status.yaml exists</action>
<check if="status file not found">
<output>No workflow status file found. Decision Architecture can run standalone or as part of BMM workflow path.</output>
@ -30,7 +30,7 @@
</check>
<check if="status file found">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Load the FULL file: {output_folder}/bmgd-workflow-status.yaml</action>
<action>Parse workflow_status section</action>
<action>Check status of "create-architecture" workflow</action>
<action>Get project_level from YAML metadata</action>
@ -662,7 +662,7 @@ Enforcement: "All agents MUST follow this pattern"
<action>Save document to {output_folder}/architecture.md</action>
<check if="standalone_mode != true">
<action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
<action>Load the FULL file: {output_folder}/bmgd-workflow-status.yaml</action>
<action>Find workflow_status key "create-architecture"</action>
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
<action>Update workflow_status["create-architecture"] = "{output_folder}/bmm-architecture-{{date}}.md"</action>

View File

@ -177,6 +177,15 @@ development_status:
3. Agents will update statuses as they work
4. Re-run this workflow to refresh auto-detected statuses
<action>Update workflow status upon completion</action>
<check if="standalone_mode != true">
<action>Load the FULL file: {output_folder}/bmgd-workflow-status.yaml</action>
<action>Find workflow_status key "sprint-planning"</action>
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
<action>Update workflow_status["sprint-planning"] = "{status_file}"</action>
<action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
</check>
</step>
</workflow>