<feed xmlns='http://www.w3.org/2005/Atom'>
<title>fund-lab.git/qa/driver/package.json, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>http://git.somhairle.bid/fund-lab.git/atom?h=main</id>
<link rel='self' href='http://git.somhairle.bid/fund-lab.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/fund-lab.git/'/>
<updated>2026-09-20T18:23:43+00:00</updated>
<entry>
<title>feat(web): 基金创建/读取界面与仓库内浏览器 QA</title>
<updated>2026-09-20T18:23:43+00:00</updated>
<author>
<name>Somhairle H. Marisol</name>
<email>muqiu-han@outlook.com</email>
</author>
<published>2026-09-20T18:23:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.somhairle.bid/fund-lab.git/commit/?id=f55ed58d2c75b53774ef7256fddb973ae3e73323'/>
<id>urn:sha1:f55ed58d2c75b53774ef7256fddb973ae3e73323</id>
<content type='text'>
[变更性质]
- 本提交完成 3c-1 切片：Web 端基金建档（创建/重读）表单接入既有幂等 API，并提供仓库内可复现的端到端 QA 入口与生命周期回归。

[新增功能]
- 前端新增 03 / CREATE 面板：名称与初始现金（decimal 字符串）输入、创建/重新读取按钮、服务端返回的基金档案行（份额诚实显示 0、来源标注真实建档/合成标记）；移动端单列布局。
- 创建请求携带 32 位十六进制 Idempotency-Key；网络失败重试复用同一 key，输入变更或成功后换新 key；token 变更清空档案并按序列号拒绝过期响应。

[实现方案]
- 金额全程 decimal 字符串，不经 JS float；update 层 fundSeq 守卫 FundCreate/FundRead 完成消息；BoundaryTests 新增 FundBoundaryTests 9 项（幂等键长度/复用、token 失效、stale 读取拒绝等）。
- qa/run.sh 一次性拉起非默认端口 Postgres/API/Vite（桩行情，_synthetic 标记），清理仅限本次创建的容器（ID+名称归属校验）；临时目录 mktemp 隔离；qa/lifecycle-test.sh 验证拒绝路径不破坏既有资源。

[影响范围]
- Web 测试增至 17 项，全套 56 项通过；浏览器 QA 30/30 通过；README 更新阶段描述。本提交不包含 docs/overnight-progress.md 的现有修改。
</content>
</entry>
</feed>
