<feed xmlns='http://www.w3.org/2005/Atom'>
<title>living-village.git/src/LivingVillage.Desktop.Tests/DesktopTests.fs, branch p19-daylight-taming</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>http://git.somhairle.bid/living-village.git/atom?h=p19-daylight-taming</id>
<link rel='self' href='http://git.somhairle.bid/living-village.git/atom?h=p19-daylight-taming'/>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/'/>
<updated>2026-09-21T18:13:00+00:00</updated>
<entry>
<title>fix(desktop): P19 白天色调去偏黄（day tint 中性白平衡，黄昏暖橙保留）</title>
<updated>2026-09-21T18:13:00+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-21T18:13:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=5a908a17335ff291e2d8f2fb3a1ff0ab57770c80'/>
<id>urn:sha1:5a908a17335ff291e2d8f2fb3a1ff0ab57770c80</id>
<content type='text'>
</content>
</entry>
<entry>
<title>test(desktop): P15 选职业→第一天任务→完成判定→Done 全链路回归（既有事件通道）</title>
<updated>2026-09-21T14:59:12+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-21T14:59:12+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=50875bb65cc4cdba92f6745d2430a92d85474872'/>
<id>urn:sha1:50875bb65cc4cdba92f6745d2430a92d85474872</id>
<content type='text'>
- 从 WorldBootstrap.occupationStateFor（选择职业入口）取四职业第一天 Offered 任务，
  acceptTask 转 Active，再用该模板对应信号推到 Done：交易/对话模板走 InteractionEvent
  → signalOfInteraction（玩家买/卖、玩家对话），到达瓦片/夜水边/观察由调用方折叠信号。
- 覆盖农夫送粮、渔夫夜捕、货郎收货、书生观察记事等四职业首日模板，验证池内生成与终态。
- Desktop 94 / Kernel 83 全绿；不改 Sim.step 数值路径。
</content>
</entry>
<entry>
<title>feat(desktop): P15 开局职业选择页——新档四选一+暂不选择，接入 v3 存档与当日任务</title>
<updated>2026-09-21T14:57:50+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-21T14:57:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=60bbc83d9a1d047933e4128e7b48e1c61c925a14'/>
<id>urn:sha1:60bbc83d9a1d047933e4128e7b48e1c61c925a14</id>
<content type='text'>
- MenuState：新增 OccupationSelect 页与 StartNewGameWith 命令；occupationOptions=农夫/渔夫/货郎/书生/暂不选择，
  默认高亮「暂不选择」= 不写职业的旧行为；四选一确认后发 StartNewGameWith，ESC 返回主菜单（既有 MainMenu
  行为与测试不变）。
- WorldBootstrap.occupationStateFor/refreshOccupationToday：按 seed+职业种子生成/跨日刷新当日 Offered 任务。
- Game：主菜单「开始新游戏」→ 职业选择页；选定后 initialWorldWithOccupation 注入 Money/Energy 与 Today，
  m5View.Task 随之写入 v3 存档；游玩中按日刷新；autoplay/flow 默认走「暂不选择」保持旧演示行为；DrawMenu 渲染职业页。
- 测试 Desktop 93（新增 6）：职业页选项顺序/默认 None/标签、确认命令与返回、bootstrap 四职业 Money/Energy+当日池内
  Offered 任务、四职业 v3 round-trip（职业+任务逐字段）、T 面板显示所选职业的模板名与「待接受」、跨日刷新保持同日。
</content>
</entry>
<entry>
<title>feat(desktop): P12 中文每日任务面板——T 键任务页、Offered/Active/Done 三态+职业名，存读档字段级携带职业</title>
<updated>2026-09-21T11:34:32+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-21T11:34:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=98b6b21c56c7b061578e7d4b56d52450dc7bd575'/>
<id>urn:sha1:98b6b21c56c7b061578e7d4b56d52450dc7bd575</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(desktop): 民居正面完整化与图集足迹</title>
<updated>2026-09-21T02:58:30+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-21T02:58:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=e91a4a7ed0a55e9406623d1649cc432369bc0834'/>
<id>urn:sha1:e91a4a7ed0a55e9406623d1649cc432369bc0834</id>
<content type='text'>
新增屋脊/檐口/木构粉墙/格窗/木门五个地块图块，可进屋民居以门为锚点绘制四宽三高完整立面（黛瓦正脊、檐口层次、木构白墙、格窗与木门）；新增 planFootprint 供生成阻挡判定，村民不会刷在建筑图块上。
</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(desktop): 增加可选昼光自动演示启动</title>
<updated>2026-09-21T00:37:29+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-21T00:37:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=c932969539b00a42937f0aa5ed1e10b4e94932a3'/>
<id>urn:sha1:c932969539b00a42937f0aa5ed1e10b4e94932a3</id>
<content type='text'>
[变更性质]
- 本提交新增可选的 Desktop 启动行为，不改变默认启动行为。

[新增功能]
- 设置 LV_AUTOPLAY_DAYLIGHT=1 时，初始世界和 StartNewGame 从黎明 tick 开始。
- 未设置该变量时继续从 tick 0 的夜晚状态开始。

[实现方案]
- 在 WorldBootstrap 中集中计算昼光起始 tick 和同步时间。
- 在 Game 中复用同一世界工厂，并增加黎明与默认状态回归测试。

[影响范围]
- 仅影响 Desktop 运行时代码和测试；Kernel 保持不变。
- 环境变量为显式 opt-in，不影响现有自动演示和普通启动路径。
</content>
</entry>
<entry>
<title>feat(desktop): 固化样例世界与昼光呈现</title>
<updated>2026-09-21T00:16:10+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-21T00:16:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=f64045ca6245ed853f4d8ac1bcce6f4fe13068ce'/>
<id>urn:sha1:f64045ca6245ed853f4d8ac1bcce6f4fe13068ce</id>
<content type='text'>
[变更性质]
- this commit adds a deterministic desktop bootstrap for the playable sample world.

[新增功能]
- this commit places the avatar away from the home doorway and separates villagers from scene footprints.
- this commit provides a warm high-contrast daylight tint and exits autoplay after SampleComplete.

[实现方案]
- this commit isolates desktop spawn policy in WorldBootstrap and routes game startup and sample tests through it.
- this commit adds regression coverage for spawn positions, spacing, determinism, and daylight tint.

[影响范围]
- this commit affects the Desktop application and Desktop tests only.
- this commit preserves Kernel behavior and does not include unrelated worktree changes.
</content>
</entry>
<entry>
<title>feat(desktop): localize village presentation labels</title>
<updated>2026-09-20T13:38:46+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-20T13:38:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=c64779031d8459c44d78916ab6e38e80d2532a1c'/>
<id>urn:sha1:c64779031d8459c44d78916ab6e38e80d2532a1c</id>
<content type='text'>
[Change Nature]
- This commit adds the Chinese display layer for the desktop village prototype.

[New Capability]
- Menu, settings, controls, interaction panels, chronicle entries, trade results, day-night labels, and speed labels now use Chinese copy.

[Implementation]
- Keep simulation state, commands, and machine-readable status strings unchanged.
- Add focused formatter coverage and update affected presentation assertions.

[Impact]
- Desktop presentation behavior is localized without changing Kernel or simulation logic.
- Existing release build and test coverage remain green.
</content>
</entry>
<entry>
<title>feat(m6a): add save speed and day-night controls</title>
<updated>2026-09-20T07:14:23+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-20T07:14:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/living-village.git/commit/?id=9724663602b4b1eb755bf334c475dc2c80e4b386'/>
<id>urn:sha1:9724663602b4b1eb755bf334c475dc2c80e4b386</id>
<content type='text'>
</content>
</entry>
</feed>
