244 lines
11 KiB
YAML
244 lines
11 KiB
YAML
version: 1
|
|
batch:
|
|
id: "recruit-line-redesign-02"
|
|
revision: "graph-r6"
|
|
spec: ".agent-taskgraph/spec.md"
|
|
spec_revision: "design-spec-r3"
|
|
approved_by: "Owner"
|
|
approved_at: "2026-08-10T22:38:28+08:00"
|
|
max_concurrency: 6
|
|
|
|
nodes:
|
|
- id: "v2_core_systems"
|
|
title: "Recruit-line core systems redesign"
|
|
kind: "expert"
|
|
goal_ref: "task:ABG-V2-CORE-SYSTEMS"
|
|
needs: []
|
|
consumes: [".agent-taskgraph/spec.md", "docs/reference/"]
|
|
produces: ["docs/product/GAME_PRODUCT_CONTRACT.md", "docs/product/SYSTEMS_AND_BATTLE.md", "docs/product/ECONOMY_AND_BALANCE.md", "docs/product/SAVE_AND_FAILURE_CONTRACT.md"]
|
|
writes: ["docs/product/"]
|
|
acceptance: ["Horizontal ordered-line auto-battle replaces lane grid", "Recruitment/death/dismissal/capacity are executable", "Five pacing profiles and save/failure boundaries are consistent"]
|
|
on_pass: "v2_integration"
|
|
on_fail: "failed"
|
|
max_attempts: 2
|
|
|
|
- id: "v2_content_matrix"
|
|
title: "Generated recruit and complete content matrices"
|
|
kind: "expert"
|
|
goal_ref: "task:ABG-V2-CONTENT-MATRIX"
|
|
needs: []
|
|
consumes: [".agent-taskgraph/spec.md", "docs/reference/"]
|
|
produces: ["docs/content/"]
|
|
writes: ["docs/content/"]
|
|
acceptance: ["42 professions, 36 traits, 320 equipment, 60 artifacts, 100 enemies, 16 bosses and 8 regions", "No fixed protagonist relationships or filler rows", "All IDs and mechanics validate"]
|
|
on_pass: "v2_integration"
|
|
on_fail: "failed"
|
|
max_attempts: 2
|
|
|
|
- id: "v2_ux_screens"
|
|
title: "Landscape UX and complete screen-state architecture"
|
|
kind: "expert"
|
|
goal_ref: "task:ABG-V2-UX-SCREENS"
|
|
needs: []
|
|
consumes: [".agent-taskgraph/spec.md", "docs/reference/"]
|
|
produces: ["docs/presentation/SCREEN_AND_STATE_MAP.md", "docs/presentation/UI_AND_VISUAL_SYSTEM.md"]
|
|
writes: ["docs/presentation/SCREEN_AND_STATE_MAP.md", "docs/presentation/UI_AND_VISUAL_SYSTEM.md"]
|
|
acceptance: ["All player-facing landscape screens and states are covered", "Retired fixed-cast, lane-grid and manual-command UI is absent", "Shop, recruit, equip, reorder, auto-battle and recovery are immediately readable"]
|
|
on_pass: "v2_integration"
|
|
on_fail: "failed"
|
|
max_attempts: 2
|
|
|
|
- id: "v2_art_direction"
|
|
title: "Generated-recruit art, animation and VFX production bible"
|
|
kind: "expert"
|
|
goal_ref: "task:ABG-V2-ART-DIRECTION"
|
|
needs: []
|
|
consumes: [".agent-taskgraph/spec.md", "docs/reference/"]
|
|
produces: ["docs/presentation/ART_ASSET_AND_ANIMATION_CATALOG.md"]
|
|
writes: ["docs/presentation/ART_ASSET_AND_ANIMATION_CATALOG.md"]
|
|
acceptance: ["Modular recruits and 42 profession identities are production-countable", "Eight regions and 116 enemy identities have readable art/animation coverage", "Horizontal-line combat remains legible at target landscape sizes"]
|
|
on_pass: "v2_integration"
|
|
on_fail: "failed"
|
|
max_attempts: 2
|
|
|
|
- id: "v2_audio_direction"
|
|
title: "Music, ambience, SFX and voice production bible"
|
|
kind: "expert"
|
|
goal_ref: "task:ABG-V2-AUDIO-DIRECTION"
|
|
needs: []
|
|
consumes: [".agent-taskgraph/spec.md", "docs/reference/"]
|
|
produces: ["docs/presentation/AUDIO_MUSIC_AND_VOICE_CATALOG.md"]
|
|
writes: ["docs/presentation/AUDIO_MUSIC_AND_VOICE_CATALOG.md"]
|
|
acceptance: ["Audio makes shop, order, battle and failure consequences readable", "Voice scope matches generated recruits and no fixed-cast burden remains", "Production counts, priority, accessibility and lifecycle behavior are explicit"]
|
|
on_pass: "v2_integration"
|
|
on_fail: "failed"
|
|
max_attempts: 2
|
|
|
|
- id: "v2_design_validation"
|
|
title: "Pre-development design validator and coverage contract"
|
|
kind: "expert"
|
|
goal_ref: "task:ABG-V2-DESIGN-VALIDATION"
|
|
needs: []
|
|
consumes: [".agent-taskgraph/spec.md", "docs/reference/"]
|
|
produces: ["docs/reviews/DESIGN_VALIDATION_CONTRACT.md", "tools/validate_predevelopment_design.py"]
|
|
writes: ["docs/reviews/DESIGN_VALIDATION_CONTRACT.md", "tools/validate_predevelopment_design.py"]
|
|
acceptance: ["Expected counts and stable IDs are mechanically checkable", "Retired concepts and cross-reference failures are detected", "Validator reports unknown pending bindings without inventing product authority"]
|
|
on_pass: "v2_integration"
|
|
on_fail: "failed"
|
|
max_attempts: 2
|
|
|
|
- id: "v2_integration"
|
|
title: "Integrate and reconcile the redesign"
|
|
kind: "merge"
|
|
goal_ref: "task:ABG-V2-INTEGRATION"
|
|
needs: ["v2_core_systems", "v2_content_matrix", "v2_ux_screens", "v2_art_direction", "v2_audio_direction", "v2_design_validation"]
|
|
consumes: ["docs/product/", "docs/content/", "docs/presentation/", "docs/reviews/DESIGN_VALIDATION_CONTRACT.md", "tools/validate_predevelopment_design.py"]
|
|
produces: ["clean main revision", "contract validation report"]
|
|
writes: ["docs/reviews/PRE_DEVELOPMENT_READINESS_AUDIT.md"]
|
|
acceptance: ["No cross-document contradiction", "Repository validator passes", "All six design authorities are integrated", "Fixed revision ready for independent review"]
|
|
on_pass: "v2_systems_review"
|
|
on_fail: "failed"
|
|
max_attempts: 1
|
|
- id: "v2_systems_review"
|
|
title: "Independent systems integrity review"
|
|
kind: "verifier"
|
|
goal_ref: "task:ABG-V2-SYSTEMS-REVIEW-R2"
|
|
needs: ["v2_integration"]
|
|
consumes: ["fixed integrated revision"]
|
|
produces: ["read-only systems PASS/FAIL/INVALID review"]
|
|
writes: []
|
|
acceptance: ["Core loop, battle, economy, pacing, save/failure and mechanical content coherence pass"]
|
|
on_pass: "v2_review_synthesis"
|
|
on_fail: "v2_battle_outcome_repair"
|
|
max_attempts: 1
|
|
|
|
- id: "v2_experience_review"
|
|
title: "Independent experience and production review"
|
|
kind: "verifier"
|
|
goal_ref: "task:ABG-V2-EXPERIENCE-REVIEW-R2"
|
|
needs: ["v2_integration"]
|
|
consumes: ["fixed integrated revision"]
|
|
produces: ["read-only experience PASS/FAIL/INVALID review"]
|
|
writes: []
|
|
acceptance: ["UX comprehension, content presentation, art/animation/audio feasibility, accessibility and originality pass"]
|
|
on_pass: "v2_review_synthesis"
|
|
on_fail: "failed"
|
|
max_attempts: 1
|
|
|
|
- id: "v2_battle_outcome_repair"
|
|
title: "Define deterministic battle outcome vocabulary"
|
|
kind: "expert"
|
|
goal_ref: "task:ABG-V2-BATTLE-OUTCOME-REPAIR"
|
|
needs: ["v2_systems_review"]
|
|
consumes: ["systems R2 FAIL", "docs/product/SYSTEMS_AND_BATTLE.md", "all current miss/dodge/evasion references"]
|
|
produces: ["one executable deterministic outcome contract"]
|
|
writes: ["docs/product/SYSTEMS_AND_BATTLE.md"]
|
|
acceptance: ["No accuracy/evasion/hidden-miss probability is introduced", "Every applied/invalidated/resisted/immune/intercepted outcome is executable and journaled", "Skill schema can bind deterministic outcome triggers"]
|
|
on_pass: "v2_content_outcome_sync"
|
|
on_fail: "failed"
|
|
max_attempts: 1
|
|
|
|
- id: "v2_content_outcome_sync"
|
|
title: "Synchronize profession and content outcome semantics"
|
|
kind: "expert"
|
|
goal_ref: "task:ABG-V2-CONTENT-OUTCOME-SYNC"
|
|
needs: ["v2_battle_outcome_repair"]
|
|
consumes: ["deterministic outcome contract"]
|
|
produces: ["content rows bound to declared outcomes"]
|
|
writes: ["docs/content/PROFESSION_CATALOG.md", "docs/content/EQUIPMENT_CATALOG.md", "docs/content/TRAIT_CATALOG.md", "docs/content/ENEMY_CATALOG.md"]
|
|
acceptance: ["PF-A04 is executable without accuracy/evasion", "All miss/dodge wording maps to a declared outcome or is rewritten", "No content count or unrelated row changes"]
|
|
on_pass: "v2_outcome_reintegration"
|
|
on_fail: "failed"
|
|
max_attempts: 1
|
|
|
|
- id: "v2_art_outcome_sync"
|
|
title: "Synchronize art and VFX outcome semantics"
|
|
kind: "expert"
|
|
goal_ref: "task:ABG-V2-ART-OUTCOME-SYNC"
|
|
needs: ["v2_battle_outcome_repair"]
|
|
consumes: ["deterministic outcome contract"]
|
|
produces: ["art/VFX cues bound to declared outcomes"]
|
|
writes: ["docs/presentation/ART_ASSET_AND_ANIMATION_CATALOG.md"]
|
|
acceptance: ["Avoidance cues name only declared deterministic outcomes", "Readability and reduced-motion variants remain explicit"]
|
|
on_pass: "v2_outcome_reintegration"
|
|
on_fail: "failed"
|
|
max_attempts: 1
|
|
|
|
- id: "v2_audio_outcome_sync"
|
|
title: "Synchronize audio outcome semantics"
|
|
kind: "expert"
|
|
goal_ref: "task:ABG-V2-AUDIO-OUTCOME-SYNC"
|
|
needs: ["v2_battle_outcome_repair"]
|
|
consumes: ["deterministic outcome contract"]
|
|
produces: ["SFX/caption cues bound to declared outcomes"]
|
|
writes: ["docs/presentation/AUDIO_MUSIC_AND_VOICE_CATALOG.md"]
|
|
acceptance: ["Dodge/miss cues name only declared deterministic outcomes", "Bindings, production counts and accessibility remain valid"]
|
|
on_pass: "v2_outcome_reintegration"
|
|
on_fail: "failed"
|
|
max_attempts: 1
|
|
|
|
- id: "v2_outcome_reintegration"
|
|
title: "Reintegrate deterministic battle outcome repair"
|
|
kind: "merge"
|
|
goal_ref: "task:ABG-V2-OUTCOME-REINTEGRATION"
|
|
needs: ["v2_battle_outcome_repair", "v2_content_outcome_sync", "v2_art_outcome_sync", "v2_audio_outcome_sync"]
|
|
consumes: ["repaired product, content, art and audio authorities"]
|
|
produces: ["new fixed review revision", "validator and semantic reference audit"]
|
|
writes: ["docs/reviews/PRE_DEVELOPMENT_READINESS_AUDIT.md"]
|
|
acceptance: ["Validator remains green", "No undeclared accuracy/evasion/miss mechanic remains", "R2 FAIL and INVALID are append-only history"]
|
|
on_pass: "v2_systems_review_r3"
|
|
on_fail: "failed"
|
|
max_attempts: 1
|
|
|
|
- id: "v2_systems_review_r3"
|
|
title: "Fresh systems integrity re-review"
|
|
kind: "verifier"
|
|
goal_ref: "task:ABG-V2-SYSTEMS-REVIEW-R3"
|
|
needs: ["v2_outcome_reintegration"]
|
|
consumes: ["new fixed integrated revision"]
|
|
produces: ["read-only systems PASS/FAIL/INVALID terminal"]
|
|
writes: []
|
|
acceptance: ["All systems gates rerun from zero, including deterministic outcome vocabulary"]
|
|
on_pass: "v2_review_synthesis"
|
|
on_fail: "failed"
|
|
max_attempts: 1
|
|
|
|
- id: "v2_experience_review_r3"
|
|
title: "Fresh experience and production re-review"
|
|
kind: "verifier"
|
|
goal_ref: "task:ABG-V2-EXPERIENCE-REVIEW-R3"
|
|
needs: ["v2_outcome_reintegration"]
|
|
consumes: ["new fixed integrated revision", "actual reference authority paths"]
|
|
produces: ["read-only experience PASS/FAIL/INVALID terminal"]
|
|
writes: []
|
|
acceptance: ["All experience gates rerun from zero with valid context paths"]
|
|
on_pass: "v2_review_synthesis"
|
|
on_fail: "failed"
|
|
max_attempts: 1
|
|
|
|
- id: "v2_review_synthesis"
|
|
title: "PMO dual-review synthesis"
|
|
kind: "merge"
|
|
goal_ref: "task:ABG-V2-REVIEW-SYNTHESIS"
|
|
needs: ["v2_systems_review_r3", "v2_experience_review_r3"]
|
|
consumes: ["systems review terminal", "experience review terminal"]
|
|
produces: ["one PMO acceptance or earliest repair route"]
|
|
writes: [".agent-taskgraph/queue/review/", ".agent-taskgraph/STATUS.md"]
|
|
acceptance: ["Both reviewers used the same fixed revision", "No open reviewer failure or invalid environment", "Open human and implementation gates remain explicit"]
|
|
on_pass: "owner_v2_gate"
|
|
on_fail: "failed"
|
|
max_attempts: 1
|
|
|
|
- id: "owner_v2_gate"
|
|
title: "Owner approves complete design before HTML prototype redesign"
|
|
kind: "human_gate"
|
|
goal_ref: "decision:ABG-V2-OWNER-GATE"
|
|
needs: ["v2_review_synthesis"]
|
|
consumes: ["integrated design", "independent review"]
|
|
produces: ["owner accept or revise decision"]
|
|
writes: []
|
|
acceptance: ["Owner authorizes landscape HTML prototype redesign"]
|
|
on_pass: "done"
|
|
on_fail: "failed"
|
|
max_attempts: 1
|