# module-npc 独立模块 package 说明 日期:`2026-04-21` ## 1. package 职责 `module-npc` 是 NPC 状态与互动模块 package,当前首轮已经开始承接: 1. `relation_state` 2. `stance_profile` 3. `npc_state` 4. `resolve_npc_social_action` 5. 与 `spacetime-module` 的 NPC 表、reducer、procedure 聚合对接 ## 2. 当前阶段说明 当前提交不再只是目录占位,已经进入首版领域 contract 落地阶段。 当前已冻结的最小能力包括: 1. `npc_state` 字段、校验与归一化 helper 2. `relation_state` 与 `stance_profile` 的派生规则 3. `Chat / Help / Gift / Recruit / QuestAccept` 五类社交动作的最小状态迁移 4. `SpacetimeDB` 真相表与同步 procedure 接线 ## 3. 边界约束 1. `module-npc` 负责 NPC 状态真相与互动规则,外部 LLM 台词生成与流式文本输出不直接塞进模块内部。 2. 对话与招募文案生成优先通过应用层和平台适配完成,`module-npc` 当前只处理状态真相,不直接产出台词。 3. 前端兼容接口与 SSE 由 `api-server` 暴露,但 NPC 状态不能再次分散到会话缓存或前端临时状态中。 4. 背包、任务、战斗、副本等副作用暂不在本 crate 内部结算,继续通过其他模块协作完成。