Skip to content

Task/m3 011 tier1 lifecycle - #2

Merged
APXS114514 merged 2 commits into
mainfrom
task/M3-011-tier1-lifecycle
Oct 21, 2026
Merged

APXS114514 merged 2 commits into
mainfrom
task/M3-011-tier1-lifecycle

Conversation

@APXS114514

Copy link
Copy Markdown
Owner

改了什么

依据

自查

  • pnpm verify 本地通过(格式、lint、依赖边界、许可证、类型、单元测试、构建)
  • 动了界面:pnpm test:e2e 通过,并附截图
  • 新增或修改的界面/叙事文本同时提供 zh-Hans 与 en
  • 没有提交密钥、个人数据,或未登记许可的数据与素材
  • 新的工程决定已写成 ADR(docs/adr/);没有改变 GDD 冻结的 23 项决定

- 新增 packages/systems/src/npc.ts:npc.birthday 是每个 Tier1 NPC 每年一条的年度事件,
  就业与健康直接调用 career/health 的共享处理器(不复制概率公式),
  另导出 npcRoleOf / npcFactType / promoteToTier1 / npcBirthdayRequest
- shared.ts:SYSTEMS_VERSION 0.4.0 → 0.5.0;新增 EVENT.npcBirthday 与 PRIORITY.npcBirthday
- module.ts:装配 NPC 事件;新增 life.deceased-no-new-activity 不变量
- life.ts:出生时为 Tier1 NPC 安排生日;死亡按 tier 选 npc.death 模板并清除 coResident
- history.ts:锚点后果落到 NPC 身上时用 npc.* 模板并带 role;账户所有者已去世时
  事实写 actorIds: [] 与 npc.estate-redenominated,换算与归属逻辑不变
- narrative.ts:npc.* 中英模板与 enums.role.relative
- 测试:新增 npc.test.ts(角色称谓、提升、排程、夹具地区的完整 NPC 生命周期);
  family.test.ts 追加验收 1/2/3/4/8;cli.test.ts 追加验收 5/7(双语渲染与主角投影基线)
- polity-change.test.ts:系统版本断言随规则版本提升改为 0.5.0(同一断言,不是放宽)
- 黄金指纹未更新:factCount 72 → 85、fingerprint 变化,等待维护者批准
- summary.ts:按主角 vitalStatus.deathFactId 定位死亡事实。原来取第一条
  life.death,父母先去世时报的是父亲的享年(golden-1 报 73 岁,应为 64 岁),
  结局卡、时间控制条与 bench 的 meanAgeAtDeath(76.4 → 67.3)都受影响
- life.ts:NPC 死亡事实的类型与模板都用 npc.death,与其他 npc.* 事实一致,
  life.* 类型只属于主角(撤回任务文件原先「类型仍为 life.death」的要求)
- 测试:life.test.ts 追加 golden-1 总结回归;family.test.ts 追加 40 局
  life.* 归属与总结一致性;本分支新增的两处 NPC 死亡查找改为 npc.death
- golden.ts:GOLDEN_LIFE 72 / b4b67de5d12b1a4827e238ad2051d292
  → 85 / 23edb82419aa650e5f69b19527de406a(维护者批准)。相对 main:新增 13 条
  父母的就业/健康/死亡事实,2 条父母账户币制换算改为 npc.redenominated;
  主角事实不变(验收 7 的两段投影在 main 与本分支上一致)
- docs/tasks/M3-011.md:审查记录、接受的偏差、性能数字与已知限制
@APXS114514
APXS114514 merged commit 26ec2fe into main Oct 21, 2026
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant