# module-combat 日期:`2026-04-21` ## 1. package 职责 `module-combat` 是 M4 阶段的战斗规则 crate,当前负责: 1. `battle_state` 首版领域类型与字段校验 2. `resolve_combat_action` 的纯规则推进 3. `fight / spar` 两种模式下的战斗收束规则 4. 为 `spacetime-module` 提供可直接复用的战斗状态与 reducer 输入输出类型 ## 2. 当前实现范围 当前已经真实落地: 1. `BattleMode / BattleStatus / CombatOutcome` 2. `BattleStateInput / BattleStateSnapshot / BattleStateQueryInput` 3. `ResolveCombatActionInput / ResolveCombatActionResult` 4. `BattleStateProcedureResult / ResolveCombatActionProcedureResult` 5. `battle_attack_basic / battle_recover_breath / battle_use_skill / battle_escape_breakout` 6. 旧攻击类 function 的兼容解析 7. `chapter_id / experience_reward` 最小承载字段,供 `spacetime-module` 在胜利时联动成长结算 当前刻意未做: 1. `inventory_use` 2. 掉落、好感、任务信号联动 3. story AI 续写触发 4. 多目标或完整 build / cooldown 真相建模 ## 3. 配套文档 落地依据见: 1. [../../../docs/technical/M4_MODULE_COMBAT_SPACETIMEDB_BASELINE_2026-04-21.md](../../../docs/technical/M4_MODULE_COMBAT_SPACETIMEDB_BASELINE_2026-04-21.md) 2. [../../../docs/technical/M4_MODULE_COMBAT_AXUM_FACADE_DESIGN_2026-04-21.md](../../../docs/technical/M4_MODULE_COMBAT_AXUM_FACADE_DESIGN_2026-04-21.md) 3. [../../../docs/technical/M4_MODULE_COMBAT_STATE_QUERY_DESIGN_2026-04-22.md](../../../docs/technical/M4_MODULE_COMBAT_STATE_QUERY_DESIGN_2026-04-22.md) 4. [../../../docs/technical/M4_PROGRESSION_QUEST_COMBAT_INTEGRATION_2026-04-21.md](../../../docs/technical/M4_PROGRESSION_QUEST_COMBAT_INTEGRATION_2026-04-21.md) 5. [../../../docs/prd/AI_NATIVE_BATTLE_SINGLE_ACTION_FUNCTION_PRD_2026-04-18.md](../../../docs/prd/AI_NATIVE_BATTLE_SINGLE_ACTION_FUNCTION_PRD_2026-04-18.md) ## 4. 边界约束 1. `module-combat` 只做纯规则、纯状态推进,不承接 HTTP、LLM、OSS 或文件 IO。 2. 任何与 `inventory / progression / npc / story` 的联动,都应先在文档里冻结边界后再继续接入。 3. 该 crate 的目标不是替代 Axum facade,而是成为 `spacetime-module` 里的战斗真相规则层。