Files
aetherbound-guild/.agent-taskgraph/graph.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