# 跃职练习时间：本地修复与复验

日期：2026-09-12。**已在本地源项目修复并验证，尚未部署到线上。** 本页是后续独立记录，不改写先前的缺陷截图或修复前核查结果。

## 修了哪里

申请详情中的练习开始、结束时间原本没有时区标记。浏览器把它当作访问者本地时间，而时间线中的 UTC 时间会正常转换，导致原演示出现 8 小时偏差。

本次只修改练习历史接口：已知按 UTC 存储的无时区时间补上 UTC，有时区时间保持同一瞬间并规范为 UTC，缺失时间继续为空。没有直接加 8 小时，也没有改数据库结构、提醒输入或前端格式化函数。

开始、结束和写入复盘时间线是不同事件，修复不强行让三个时间相等。

## 如何验证

- 新增 20 项专用回归。修复前为 15 失败、5 通过，失败来自真实时间行为断言，不是导入错误；修复后全部通过。
- 连同核心旅程、申请工作区、面试辅导，共 **38 项相关回归通过**。这不是整个产品或生产环境的全量认证。
- 原来的 6 组序列化输入与真实隔离 HTTP 夹具重新运行，均满足 UTC 输出契约。
- 源 Vue 格式化函数在 Node / Intl 的 UTC、上海、纽约、印度四个时区下均通过：对应本地时刻正确，固定夹具原有的 5 秒间隔保留。这不是四个地区的浏览器实测。

## 浏览器里看到了什么

另建一份隔离数据库，使用真实接口准备合成简历、待投递申请及文字练习。接口提交一条合成回答后提前结束，并生成本地规则复盘；随后在真实浏览器登录，打开这条申请，刷新并再次打开检查。

本次 API 的开始、结束和复盘时间线分别为 `15:15:26.169911+00:00`、`15:15:26.207270+00:00`、`15:15:26.231754+00:00`。本机页面中的时间线与练习记录均显示 `09/12 23:15`；秒和微秒不同，页面按分钟显示，没有人为改成相等。

[查看修复后的申请详情原图](01-application-time-fixed.jpg)

原图为浏览器直接导出的 1440×960 JPEG，没有重绘、标注或拼接。它与旧图来自不同的隔离数据库，不能拼成同一次操作的前后两步。浏览器本轮只回查申请，并未重走完整面试操作；分数仍是合成输入的本地规则结果，不是个人成绩。申请保持“待投递”，没有外部提交。

## 可核对记录

- [修复后接口与序列化结果](time-probe.json)
- [四时区格式化结果](time-format-probe.json)
- [本轮合成旅程与明确时间](fixed-demo.json)
- [选定回归汇总](regression-summary.json)
- [截图、记录与源文件指纹](manifest.json)
- [先前的时间基线与历史内容核查](../verification-20260912/source-notes.md)

修复和验收由 Coding Agent 完成，不作为本人独立编码证明。申请时版本封存仍未实现；生产数据库、线上部署、真实投递、音视频和外部模型质量不在本次验证范围内。工作树只登记了选定源文件，不是完整冻结发布包。
