提交图
24 次代码提交
作者 SHA1 备注 提交日期
wangsli c9ac18e2e2 feat(client): 完成 F34 票据中心增强\n\n- 补齐人工修正/手工归档/解绑/重试 OCR/判重例外等入口\n- 补充 data-testid 并与后端错误码映射保持一致\n- 更新 P5 蓝图 v3 中 F34 状态为 DONE 2026-02-09 18:55:46 +08:00
wangsli 00f23678ea chore(issues): 更新P5蓝图v3状态(F33)
- F33 标记 DONE(行政代提交/代上传入口验证通过)
2026-02-09 18:32:50 +08:00
wangsli 504ff02dd5 chore(issues): 更新P5蓝图v3状态(F32)
- F32 标记 DONE(部门管理与员工创建增强验证通过)
2026-02-09 18:24:25 +08:00
wangsli 1a5d3b1d52 chore(issues): 更新P5蓝图v3状态(F35,F38)
- F35/F38 标记 DONE(错误文案与改密守卫联动验证通过)
2026-02-09 18:16:32 +08:00
wangsli 7d50a85412 chore(issues): 更新P5蓝图v3状态(F16)
- F16 标记 DONE(通知中心与未读角标联动验证通过)
2026-02-09 18:01:39 +08:00
wangsli 589a248cc3 chore(issues): 更新P5蓝图v3状态(F6)
- F6 标记 DONE(报销明细编辑器联动验证通过)
2026-02-09 17:55:24 +08:00
wangsli 2bb804bc94 chore(issues): 更新P5蓝图v3状态快照(F14,F30,F42)
- F14/F30 标记 DONE(通知基础设施与触发)
- 追加 F42 架构文档修订条目并标记 DONE
2026-02-09 17:45:52 +08:00
wangsli 8bd068f2a3 feat(server): 票据增强闭环(F9/F10/F11/F12/F13/F28)
- /invoice-pool 新增 unbind、PATCH 修正、manual archive、OCR retry、判重例外 override(含 VALID_004/006/007)

- signed-url 签发/下载写入审计日志(脱敏 extra)

- 新增未绑定票据自动归档作业 + 一次性执行脚本

- 回归脚本增强:workflow-actions/dedup/audit/ocr 覆盖上述场景;v3 CSV 状态推进至 DONE
2026-02-09 17:09:34 +08:00
wangsli 3ae9e08692 chore(issues): 新增 P5 蓝图执行合同快照 v1-v3(F1)
- v3 修正通知依赖:F30 依赖 F14(不再被邮件阻塞)

- 提升关键项 Test_Method 为可复现 curl 步骤

- 新增回归脚本条目:F40/F41
2026-02-09 16:20:40 +08:00
wangsli a8080b05f8 chore(issues): P4 试运行/上线合同状态收口(E1~E21)
- Dev/Review/Regression 状态全部置为 DONE
2026-02-09 01:13:28 +08:00
wangsli 89c0ed2ec1 feat(server): 单域托管 client/dist 与 SPA 回退(E12)
- 新增 SERVE_CLIENT_DIST/CLIENT_DIST_DIR 配置
- 开启后注册 @fastify/static 并对非 /api GET(html) 回退 index.html
- docker-compose.yml 与 README 补充用法
2026-02-09 00:06:59 +08:00
wangsli 75d5b3d5de feat(server): readiness 与作业统计可观测性(E11)
- 新增 /ready(DB 探活失败返回 503)
- OCR 作业输出 claimed/available/duplicate/failed 统计
- README 补充 /health 与 /ready 说明
2026-02-09 00:02:49 +08:00
wangsli 479565f737 feat(server): 安全基线(Helmet+限流+脱敏)(E10)
- 注册 @fastify/helmet(CSP 关闭)
- 引入 @fastify/rate-limit,并对 login/forgot/reset 按开关启用
- Fastify logger 增加敏感字段 redaction(authorization/cookie/password 等)
2026-02-08 23:58:55 +08:00
wangsli 7597756fad feat(server): 试运行性能索引补强(E9)
- reimbursement_forms/invoice_pool/workflow_tasks/audit_logs 增加常用筛选组合索引
- 仅新增索引与迁移,便于回滚
2026-02-08 23:51:45 +08:00
wangsli f4c476883e feat: 默认账号文档与登录失败体验(E8)
- README 补充 seed:dev 默认账号(仅本地联调)
- LoginPage 增加后端不可达提示与 data-testid
- errorMessages 补充 SYS_001/AUTH_003 可读化
2026-02-08 23:42:59 +08:00
wangsli a707edd3c9 feat(client): 委派管理页最小运营闭环(E7)
- 新增委派 API 封装与委派管理页面(创建/列表/撤销)
- 增加菜单入口与路由守卫(expense.proxy_manage)
2026-02-08 23:38:38 +08:00
wangsli 63103be653 feat(client): 票据中心精修与 testid(E6)
- 上传/筛选/列表/绑定/详情轮询统一 Card/Table/Button
- 强化 OCR 状态展示(pending_ocr/ocr_failed)与错误可读性
- 增加 data-testid 供 E2E 稳定定位
2026-02-08 23:32:54 +08:00
wangsli e9974d4f59 feat(client): 报销页精修与 testid(E5)
- 报销列表使用 Tabs/Table 收敛展示
- 报销详情动作区(submit/withdraw/pay)统一组件与错误展示
- 支付凭证字段补齐 data-testid 供 E2E
2026-02-08 23:30:06 +08:00
wangsli b94959f7d0 feat(client): 待办页精修与 testid(E4)
- 待办列表使用 Tabs/Table 统一样式
- 待办详情动作区使用 Button/Textarea/Card 收敛
- 增加 data-testid 供 Playwright 稳定定位
2026-02-08 23:26:20 +08:00
wangsli 8196bc6e77 feat(client): 导航布局收敛与移动端菜单(E3)
- Sidebar/Topbar 统一交互与样式
- 移动端抽屉菜单(Dialog)+ 账号下拉菜单(DropdownMenu)
- 导航项抽取为 NavLinks 便于后续扩展
2026-02-08 23:22:22 +08:00
wangsli c7619e55b4 feat(client): UI primitives 基线(E2)
- 引入 Radix Dialog/DropdownMenu/Tabs + CVA
- 新增 Button/Input/Dialog/Tabs/Table/Card 等组件(本地拷贝单向同步)
- 增加 touch-target(44px) 样式基础
2026-02-08 23:17:38 +08:00
wangsli 4d4866d10e chore(issues): 新增 P2/P3/P4 执行合同快照
- P2: 2026-02-08_14-20-25-p2-ci-and-tests.csv
- P3: 2026-02-08_17-05-00-p3-full-delivery.csv
- P4: 2026-02-08_21-50-09-p4-trialrun-ready.csv
2026-02-08 23:09:02 +08:00
wangsli 17a6ff4ee0 chore: 新增 P2 稳定化执行合同快照及根目录门禁脚本
- B1~B4 全部 DONE,旧快照不变
- check-minimal.sh 本地最小门禁入口
2026-02-08 11:39:12 +08:00
wangsli 7ea25e9d72 chore: 建立 AGENTS 与 Issue CSV 执行合同基线 2026-02-07 21:54:04 +08:00