<feed xmlns='http://www.w3.org/2005/Atom'>
<title>living-village.git/src/LivingVillage.Desktop/ChineseText.fs, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>http://git.somhairle.bid/living-village.git/atom?h=main</id>
<link rel='self' href='http://git.somhairle.bid/living-village.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/'/>
<updated>2026-09-29T01:27:16+00:00</updated>
<entry>
<title>p69: 中文 UI 文案统一审校（面板措辞/交易缺货口径/页脚留白与 ESC）</title>
<updated>2026-09-29T01:27:16+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-29T01:27:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=1d56991fadfaa6eb43d98b904db59685e77c220a'/>
<id>urn:sha1:1d56991fadfaa6eb43d98b904db59685e77c220a</id>
<content type='text'>
- 面板打开语统一：「年鉴已打开」→「年鉴面板已打开」（Interaction + requiredUiLabels）
- 交易缺货口径统一：「背包不足」→「库存不足」（PlayerTrade，与对话交易失败名一致）
- 分页页脚留白/大小写统一：「…页   空格 翻页   Esc 关闭」→「…页  空格 翻页  ESC 关闭」
- P69CopyAuditTests（2 例，红先）+ P61 钉住样例同步
- 只改字符串字面量与相关断言；Kernel/Sim/MapSnapshot 未动
- Desktop 338/338、Kernel 119/119；digest 953775FA…7F6C 不变
</content>
</entry>
<entry>
<title>p67: 每日任务面板展示目标（TargetNpc/TargetTile 可见化）</title>
<updated>2026-09-29T00:56:42+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-29T00:56:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=a578791b0dd8ca95fba3af6f3c2f39c816bd7e52'/>
<id>urn:sha1:a578791b0dd8ca95fba3af6f3c2f39c816bd7e52</id>
<content type='text'>
- TaskRuntime.targetText/taskLine：帮工→「村民 N」、翻土→「自家地块」，
  无目标时与旧任务行文案逐字节一致（不加箭头/目标名）
- Interaction TaskPanel 任务行改用 taskLine（其余面板/文案不动）
- 字形表新增 地 块 →（343 字，图集重生成）；ChineseText.requiredUiLabels 增补
- P67TaskTargetUiTests（5 例，红先）+ PrototypeTests 计数同步 340→343
- LV_P67_SHOT 证据钩子（有目标/无目标各一帧）+ scripts/analyze-p67.py
- Desktop 333/333、Kernel 119/119；digest 953775FA…7F6C ×3 PASS；未动 Kernel/Sim
</content>
</entry>
<entry>
<title>feat(kernel,desktop): P31 step3 story annals + identity entry + glyph atlas</title>
<updated>2026-09-22T08:33:03+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-22T08:33:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=9821b54ff2a77539898b62471d79dc4685b59cad'/>
<id>urn:sha1:9821b54ff2a77539898b62471d79dc4685b59cad</id>
<content type='text'>
- Sim.AnnalKind gains StoryAnnal (summary lives in the existing Summary
  field); WorldSave v3 serializes it with the new 'story' token. v1/v2
  saves never contain the token and stay byte-identical; v3 save -&gt; load
  -&gt; save roundtrips byte-for-byte (tested).
- Occupation.Story.identitySummaryOf: plain chronicle-style identity line
  written to the yearbook at game start (design section 3), e.g. yi-da-yu-wei-sheng.
- Desktop: story summaries render in the chronicle panel; StartNewGame
  appends the identity annal; chooseIntent now routes responses through
  Occupation.biasResponse and advances the storyline (one stage per
  player dialogue) with the summary appended as a StoryAnnal.
- M5View gains Seed (world seed source for the story start-day hash).
- Chinese copy synced into requiredUiLabels; cjk-glyphs.txt +
  CjkGlyphAtlas.characterTable extended 238 -&gt; 307 glyphs (384x480),
  atlas regenerated with the deterministic script.
- 4 new kernel tests (115 -&gt; 119); performance digest unchanged.
</content>
</entry>
<entry>
<title>feat(desktop): P16 HUD 顶部窄信息条（时段/时间/倍速/体力/钱币）+ 冬夜冷色 + 面板/提示渐变重绘</title>
<updated>2026-09-21T16:10:18+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-21T16:10:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=f79839a4bb57b977b7208e5f826a8b0989cbc33e'/>
<id>urn:sha1:f79839a4bb57b977b7208e5f826a8b0989cbc33e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(desktop): P16 启动画面淡入（Esc/空格跳过）+ 开始界面收敛三项（开始/读档/退出）+ CJK 补字 238</title>
<updated>2026-09-21T16:08:15+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-21T16:08:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=d85cce460fd7fbb8854fb11ba547be1baf576de7'/>
<id>urn:sha1:d85cce460fd7fbb8854fb11ba547be1baf576de7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(ui): P15 补齐职业/任务中文用字（CJK 图集 197-&gt;228），requiredUiLabels 锁定防复发</title>
<updated>2026-09-21T14:55:53+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-21T14:55:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=e1d8d45cf08b4f30e33299eb40e865729e7adfd2'/>
<id>urn:sha1:e1d8d45cf08b4f30e33299eb40e865729e7adfd2</id>
<content type='text'>
- CjkGlyphAtlas 字表 + Assets/cjk-glyphs.txt + cjk-glyph-atlas.png 重生成（384x360，15 行）：
  新增 职/业/收/货/转/事/论/理/粮/工/翻/土/捕/渔/询/送/帮/农/夫/郎/书/生/待/接/受/今/日/任/务/行/中
  共 31 字，覆盖职业选择页与 T 面板全部模板/状态文案，消除方框缺字。
- ChineseText.requiredUiLabels 增职业/模板/状态标签，既有 FormalChineseUiLabelsUseTheRealGlyphAtlasBoundary
  与 RequiredUiLabelsAreFullyCoveredByTheGlyphTable 继续强制全字形可渲染。
- PrototypeTests 几何常量同步 197-&gt;228、13-&gt;15 行、312-&gt;360 像素。Desktop 87 全绿。
</content>
</entry>
<entry>
<title>feat(desktop): 顶部极简状态条</title>
<updated>2026-09-21T03:45:11+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-21T03:45:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=b13b28521f4b286d9a750848c7940546cf50adf3'/>
<id>urn:sha1:b13b28521f4b286d9a750848c7940546cf50adf3</id>
<content type='text'>
常驻 HUD 新增右上角半透明状态条：天数（world.Tick/ticksPerDay+1）与金钱/精力（直接取自 avatar.Mind.Needs 真实数据，无编造数值源）；新增 cornerStatusLines 纯函数与回归测试，UI 文案目录补 天数/金钱/精力（字符表已含，无需重生成图集）。
</content>
</entry>
<entry>
<title>fix(desktop): 修复 HUD 缺字并统一轻量面板与情境提示</title>
<updated>2026-09-21T02:12:20+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-21T02:12:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=9df2da41289f4d0852f86e86eae81ca7f7e7b598'/>
<id>urn:sha1:9df2da41289f4d0852f86e86eae81ca7f7e7b598</id>
<content type='text'>
字符表扩充至 197 字（补 间/门/谈/体/屋/返/×/，/：等全部 UI 用字），用 Noto Sans CJK 重新生成图集并逐字校验；新增字符表覆盖全部 UI 文案、瞬态状态 2.5 秒过期、对话完成后回到轻量面板等回归测试；户外与室内统一左下角轻量 HUD，互动日志改为短暂反馈；样例脚本保留 E 交谈 提示与对话菜单停留帧。
</content>
</entry>
<entry>
<title>feat(m6c): 完成江南村庄中文交付</title>
<updated>2026-09-20T16:26:30+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-20T16:26:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=b6b95988e525a68ea7426ecc9690b18a1b3bbfe8'/>
<id>urn:sha1:b6b95988e525a68ea7426ecc9690b18a1b3bbfe8</id>
<content type='text'>
完成江南村庄场景、角色表现和中文界面的 M6c 交付范围。

新增 CJK 字形图集、中文文案与运行时加载，补充民居情境交互和确定性村庄美术表现。

更新资源复制与 Linux/macOS 打包校验，加入 188 字符清单、资源许可说明和对应原型测试。

补充江南美术方向与 M6c 交付说明，并保持原有模拟内核和桌面构建入口不变。
</content>
</entry>
<entry>
<title>feat(desktop): add deterministic Jiangnan art and Chinese text primitives</title>
<updated>2026-09-20T13:58:31+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-20T13:58:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=0ea26337830ada438df144b3a51f429f00dc1967'/>
<id>urn:sha1:0ea26337830ada438df144b3a51f429f00dc1967</id>
<content type='text'>
[Change Nature]
This commit adds the Task 3a desktop presentation data slice.

[New Capability]
- Defines immutable Jiangnan props, water and paving tiles, NPC variants, directions, and two-frame animation metadata.
- Provides formal Chinese scene, menu, status, and missing-glyph text layout primitives.

[Implementation]
- Keeps the new modules pure and deterministic with no GUI, network, or global mutable state.
- Adds focused prototype tests, F# compile ordering, and asset/license boundary documentation.

[Impact]
- Extends desktop presentation APIs without modifying Kernel or Game.fs.
- Leaves GUI rendering integration for Task 3b.
</content>
</entry>
</feed>
