wangsli
|
2e00d30fd0
|
借款对账 SR-A/B:补证恢复与复核后释放(09-17-company-loan-principal-repayment)
保留原银行终态及依据,以恢复轮次绑定材料、候选和独立性;最终取消重验并原子消费批准、释放占用和记录审计。新增增量迁移、HTTP 回归及数据库保护。
验证:78 个迁移、HTTP 72 组、既有浏览器 7 组、数据库约束 9 组通过;7 个变异均被抓住。服务端首跑 4470 通过、6 失败、1 跳过,补齐 BIFF8 测试依赖后相关 146 项通过,未重跑完整套件。
限制:inline 主会话自查不等于独立复核,独立复核待完成;界面未完成,不能单独部署;真实回单待验。新恢复界面留待 S8,S4 另批,整体借款功能尚未完成验收。本次仅本地提交,不推送、不部署、不查询生产。
|
2026-10-07 20:07:57 +08:00 |
|
 wangsli和Claude Opus 5.5
|
14aee82d5c
|
借款对账 S3:银行终态确认与释放(09-17-company-loan-principal-repayment)
迁移 20261008010000
- 银行终态证据单独成表(不进 OCR、不改付款状态、不计回单),只能作废一次,
作废即令依赖事实失效;复核人可凭理由查看(审计、SHA-256 校验)
- 每次银行提交一条终态事实:书面终态证据,或流水号等于指令号的严格失败回单;
同一指令的终态可了结该指令的处理中回单,其他提交不能代替
- 新终态 confirmed_not_paid;释放须清单已复核未变、每次提交有成立的终态事实、
导出均关联提交、回单均有解释、等待期满、无历史汇总
- 最终取消在同一事务内重验(与新提交、晚到回单串行);两条释放路径都检查等待期
- 防挪用:指令号跨批次唯一(含撤回)、失败回单绑定本批次指令、一笔失败交易
只支撑一个批次、同一书面证据不能用于两个批次、登记提交即离开“未发送”
验证:借款 HTTP 57 组、浏览器 7 组、77 迁移;server 4472;四轮同模型只读复核
阻断项均已修复,资金守卫变异测试均变红。
注意:界面未完成,不能单独部署;真实回单待验;补证后的恢复缺口尚未设计。
未推送、未部署。
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
2026-10-07 16:50:17 +08:00 |
|
 wangsli和Claude Opus 5.5
|
db28706177
|
借款对账 S1、S2:导出与银行提交分开登记、确认失败收紧及失败回单识别口径(09-17-company-loan-principal-repayment)
S1(迁移 20261007010000)
- 借款导出逐次记录;存量批次保留已知导出次数为历史汇总,不视为真实导出,存在即拦截
- 银行提交登记(只能撤回一次)与提交清单确认;独立复核,复核后任何登记、撤回、导出即失效
- 确认失败只计未作废附件;作废附件无法证明为明确失败或确属他笔付款即阻断
- S3 前临时拦截:多次导出、多次提交、清单未复核或历史汇总均不能确认失败
- 确认失败改按付款后规则;确认人不得兼任导出、提交登记、清单确认
S2(迁移 20261007020000)
- 存在同金额候选时须有已复核、覆盖提交清单的失败归属;结算与失败归属分槽
失败回单识别口径(用户同意并入)
- 新增原始状态措辞字段(多字段原文不一致即为空);失败事实严格判定:单页完整、
仅“交易失败/转账失败/付款失败/支付失败”、唯一问题为交易失败、字段齐全;
已撤销、已冲正、已退汇不接受;顶层识别状态与成功匹配不变
- 测试改走真实识别与归一化链,仅替换云端 OCR 响应
验证:借款 HTTP 41 组、浏览器 7 组、76 迁移;server 4463;共享回单测试 237;
三轮同模型只读复核的阻断项均已修复。
注意:界面未完成,不能单独部署;真实回单待验。未推送、未部署。
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
2026-10-07 11:47:24 +08:00 |
|
 wangsli和Claude Opus 5.5
|
b88790d396
|
借款还款同金额回单须经独立复核确认归属后方可核销(09-17-company-loan-principal-repayment)
- 同一出借人同金额的其他批次曾导出或上传回单(含确认失败后已取消的)时,
最终核销入口要求已复核的归属确认;OCR 匹配与人工回单复核均不能绕过,
证据不足保持待对账,本金与占用不变;存在候选时失败回单不能释放占用
- 新表 loan_receipt_attributions(迁移 20261006010000):绑定交易指纹、
回单核验与人工录入证据、当时候选集合;依据类型不含时间吻合;复核人须
当前有资格且独立于登记人、批次创建人、提交人、导出人、回单上传人、
人工录入人与出借员工;失效记录在重新登记时标为 superseded,历史只增不改
- 借款回单上传取出借人锁,与核销候选检查串行;串行只保证按当时已知候选
判断,核销之后才出现的新证据留待晚到结果对账流程处理
- 付款就绪检查反映归属要求;页面登记/复核/失效重登,写明同额分期每期需确认
- 测试:两个错误核销复现改为回归断言;证据绑定、确定性并发两种顺序、
PC 浏览器完整登记复核重登流程;变异测试均变红
注意:借款功能尚不具备真实还款验收条件(失败回单与对账流程、离职后确认
失败、真实回单样本、手机端弹窗、独立复核待完成);未推送、未部署。
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
2026-10-06 20:20:51 +08:00 |
|
 wangsli和Claude Opus 5.5
|
b639422211
|
修复在途还款被出借人维护卡死并按审批时资格登记付款后事实(09-17-company-loan-principal-repayment)
- A:出借人存在 reserved 额度占用时,身份关联与收款资料维护在出借人锁内
返回 409 loan.lender_in_flight;页面禁用并提示,修正账户弹窗误导文案
- B:回单 OCR 认领、人工回单参与人、核销按审批时资格认定,不再因原审批人
或出借员工事后离职/撤权、主数据停用而卡死;保留身份核实、版本与付款快照
一致、审批独立性及回单匹配校验;付款前环节仍校验当前资格
- 测试:隔离 PostgreSQL 合成全流程,含确定性并发交错、付款后独立性反例、
离职后经 OCR/人工复核核销、PC/手机按钮禁用;变异测试均变红
- 恢复手册:资金类数据恢复后先暂停付款,对照银行流水补齐并核对占用再开放
- design 按环节修订资格规则
注意:C(同金额回单传错批次错误核销)已复现但尚未修复,借款功能不具备
真实还款验收条件;未推送、未部署。
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
2026-10-06 13:13:30 +08:00 |
|
 wangsli和Claude Opus 5.5
|
1989f666ac
|
补齐手动快照模式回归测试与切换说明(08-28-production-arm-backup-transfer-incident)
- 合同测试补齐:watchdog/drill 服务仍运行、timer 已 disable 但仍 active、
断链模式文件三类场景,probe 与 refresh 两阶段均断言
- 三个源码变异在旧测试中全部放过、新测试全部拦住
- 切换说明补充超时处置需预先批准、安装前同步并核验源码、
回滚时 Persistent timer 可能立即补跑并告警
- 报错分类细化(复核第 5 条)后置;未推送、未做远端切换
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
2026-10-06 10:51:45 +08:00 |
|
 wangsli和Claude Opus 5.5
|
f6d1025d85
|
备份策略改为部署前手动快照:部署合同增加手动快照模式 [08-28-production-arm-backup-transfer-incident]
- 用户决定仅用部署前手动轻量快照,不再推进对象存储、ARM/hyinda-20c 备份
- refresh-deployment-contract 新增 /etc/hyb-oa-backup-mode 显式模式:
无文件保持原自动模式;manual_snapshot 要求三个备份 timer 停用且备份
service 已退出,ops timer 仍须运行;内容/属主/符号链接异常 fail-closed
- probe 部署前与 refresh 部署后均校验模式与 timer/service 一致性
- 新增 44 backup_mode_invalid / 45 backup_timer_not_disabled 分类及合同测试
- 记录 10-05 ARM 与 hyinda-20c 只读核验结果、远端切换顺序与回滚
- 远端切换未执行,需另行批准
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
2026-10-05 17:28:45 +08:00 |
|
wangsli
|
0f9e704994
|
修复浏览器缓存内部链接复制并冻结门禁候选(09-06-release-gate-integrity)
|
2026-09-19 17:38:18 +08:00 |
|
wangsli
|
6e57d33715
|
保留原生浏览器探针失败阶段与清理证据(09-06-release-gate-integrity)
|
2026-09-19 15:43:44 +08:00 |
|
wangsli
|
16b9cad98c
|
接入发布候选回执强制校验(09-06-release-gate-integrity)
|
2026-09-19 14:25:33 +08:00 |
|
wangsli
|
1f8d5b658a
|
完善借款、编号、付款与预算并发及验收(09-06-release-gate-integrity)
汇总已落盘的借款本金与还款、兼容历史编号的周期化编号、付款责任与回单核验、报销进度和排序、PWA/采购事务、错误原因与日期校验及ERP退役。
统一共享预算池锁序和锁后判断,恢复差旅原预算选择,补原因码固定夹具及反向完整性检查。
纳入配套迁移、测试、受管QA、分层验收合同、规约及任务记录;原始证据留在ignored artifacts。
关联任务:09-17-company-loan-principal-repayment、09-17-erp-exclusive-retirement、09-18-reimbursement-periodic-numbering、09-08-reimbursement-payment-closeout、09-18-local-concurrency-product-fixes、09-19-budget-pool-concurrency、09-05-error-explainability-payment-readiness。
预算补审由Claude定向验证2文件928项通过,原4446/28及r6结果仍仅对应各自历史输入;本轮未重跑测试。
完整新候选门禁、R1真实入口接入与12项公网义务仍开放。生产编号未启用、差旅仍冻结;不推送、不部署,不宣称发布资格。
|
2026-09-19 13:11:04 +08:00 |
|
wangsli
|
3516d7ec04
|
fix: 完善动态错误指引与发票日期校验(09-05-error-explainability-payment-readiness)
|
2026-09-16 12:56:27 +08:00 |
|
wangsli
|
b7d2285d8d
|
fix: 完善回单失败引导及真实认证验证(09-08-reimbursement-payment-closeout)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-09-15 15:26:08 +08:00 |
|
wangsli
|
8d08d46d16
|
fix: 增加回单核对与付款登记门禁(09-08-reimbursement-payment-closeout)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-09-15 07:21:55 +08:00 |
|
wangsli
|
229867f5fd
|
fix: 财务本人报销由总经理独立审批(09-04-reimbursement-state-gap-finance-view)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-09-12 20:03:29 +08:00 |
|
wangsli
|
5d8cdf12b4
|
fix: 隔离门户待办身份并取消旧请求(09-11-reimbursement-payment-handoffs)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-09-11 20:21:46 +08:00 |
|
wangsli
|
9e41f107fa
|
fix: 收窄详情按钮并校正响应式回归(09-04-reimbursement-state-gap-finance-view)
|
2026-09-11 20:21:45 +08:00 |
|
wangsli
|
fedcaed1a1
|
feat: 补齐报销付款待办交接(09-11-reimbursement-payment-handoffs)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-09-11 09:43:37 +08:00 |
|
wangsli
|
f9aee4c932
|
fix: 统一报销付款状态与进度(09-04-reimbursement-state-gap-finance-view)
|
2026-09-11 09:43:36 +08:00 |
|
wangsli
|
fe025e65cf
|
fix: 优化报销制单下载与付款进度(09-08-reimbursement-payment-closeout)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-09-10 16:39:01 +08:00 |
|
wangsli
|
73fcd5a65a
|
fix: 退回报销支持留痕删除(09-04-reimbursement-state-gap-finance-view)
|
2026-09-10 16:38:37 +08:00 |
|
wangsli
|
e5685f18b2
|
feat: 选票自动生成报销明细并支持集中分类(08-29-reimbursement-expense-policy-invoice-guard)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-09-09 23:19:02 +08:00 |
|
wangsli
|
b87cc55aca
|
fix: 分离日常发布与首次初始化(09-09-existing-deploy-seed-separation)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-09-09 12:47:30 +08:00 |
|
wangsli
|
99167127b5
|
fix: 补齐候选诊断环境与证据保护(09-06-release-gate-integrity)
|
2026-09-08 07:21:19 +08:00 |
|
wangsli
|
f223bfb72f
|
fix: 隔离既有发布的数据库容器生命周期(09-05-existing-deploy-db-lifecycle-isolation)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-09-05 21:02:58 +08:00 |
|
wangsli
|
a837912638
|
feat: 完成错误原因合同与付款就绪提示(09-05-error-explainability-payment-readiness)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-09-05 19:00:35 +08:00 |
|
wangsli
|
abdd250325
|
实现 B-2b 统一报销工作台迁移(reimbursement-form-shared-component-migration)
|
2026-09-02 07:35:01 +08:00 |
|
wangsli
|
1bb066ddb7
|
修复(08-28-production-arm-backup-transfer-incident): 纠正partial停止偏移分类
|
2026-08-28 19:52:59 +08:00 |
|
wangsli
|
d6a2b85dc2
|
优化(08-28-production-arm-backup-transfer-incident): 收窄生产哈希读取
|
2026-08-28 14:14:11 +08:00 |
|
wangsli
|
573c46fbe7
|
运维(08-28-production-arm-backup-transfer-incident): 固化只读调查合同
|
2026-08-28 13:26:37 +08:00 |
|
wangsli
|
0b94b97a3a
|
增强(08-23-isolated-backup-restore-drill): 固化八阶段RTO合同
|
2026-08-25 20:57:15 +08:00 |
|
wangsli
|
6d7dfbb1eb
|
修复(08-23-isolated-backup-restore-drill): 消除影子库就绪竞态
|
2026-08-25 17:21:41 +08:00 |
|
wangsli
|
5ec7db13b2
|
验证(08-23-isolated-backup-restore-drill): 固化隔离恢复runner合同
|
2026-08-25 12:00:33 +08:00 |
|
wangsli
|
a0f0483514
|
优化(wecom-public-health-alert-diagnostics-and-debounce): 增强公网健康告警诊断与防抖
|
2026-08-23 11:02:35 +08:00 |
|
wangsli
|
71e68c8ddf
|
治理(08-11-internal-oa-finance-backoffice-positioning-and-navigation-reduction): 固化财务后台定位与写入定性
|
2026-08-13 21:27:53 +08:00 |
|
wangsli
|
6923f4d1f7
|
验证(08-10-pwa-cross-version-cache-upgrade-validation): 固化PWA跨版本升级回归
|
2026-08-10 18:05:15 +08:00 |
|
wangsli
|
21851774dd
|
feat(08-05-contract-detail-workspace): 完成合同详情与终止状态治理
|
2026-08-08 02:02:52 +08:00 |
|
wangsli
|
1118bfadd7
|
feat(08-05-business-detail-routing): 完成采购与资产独立路由
|
2026-08-07 11:00:56 +08:00 |
|
wangsli
|
4b0184c64b
|
feat(management-navigation-single-company-ux): 收敛管理导航与单公司配置体验
|
2026-08-03 12:43:00 +08:00 |
|
wangsli
|
7138d2b85c
|
固化部署体检与备份合同刷新(08-02-deployment-preflight-backup-contract-refresh)
|
2026-08-02 11:59:42 +08:00 |
|
wangsli
|
37b4ef2d10
|
恢复付款入口与常开基线(08-01-reimbursement-notification-progress-clarity)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-08-01 23:12:23 +08:00 |
|
wangsli
|
5dac336fbf
|
修复移动验收门禁漂移(07-27-yang-jun-reimbursement-readiness)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-08-01 16:28:14 +08:00 |
|
wangsli
|
5f2788ccac
|
增加铁路OCR金额字段安全诊断(07-28-travel-reimbursement-guide)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-07-29 15:07:58 +08:00 |
|
wangsli
|
fa326f92fa
|
收敛真实OCR样票验收入口(07-28-travel-reimbursement-guide)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-07-29 08:28:42 +08:00 |
|
wangsli
|
35948729cf
|
修正CEO报销财务兜底与部署护栏(07-28-ceo-finance-fallback)
ci-e2e / e2e (push) Canceled after 0s
ci-minimal / check-minimal (push) Canceled after 0s
|
2026-07-28 13:42:48 +08:00 |
|
wangsli
|
bb5113c58b
|
实现应用健康监控(07-27-app-health-monitoring)
|
2026-07-27 22:30:33 +08:00 |
|
wangsli
|
01f1259557
|
修复异机备份凭证与中断恢复(07-27-offhost-backup-final-fixes)
ci-e2e / e2e (push) Waiting to run
ci-minimal / check-minimal (push) Waiting to run
|
2026-07-27 17:58:11 +08:00 |
|
wangsli
|
a0006f07b8
|
完善异机备份告警与同日恢复点取代(07-27-automatic-offhost-backup)
ci-e2e / e2e (push) Waiting to run
ci-minimal / check-minimal (push) Waiting to run
|
2026-07-27 13:54:16 +08:00 |
|
wangsli
|
9875bc37a4
|
修复自动备份真实挂载解析(07-27-automatic-offhost-backup)
ci-e2e / e2e (push) Waiting to run
ci-minimal / check-minimal (push) Waiting to run
|
2026-07-27 11:19:13 +08:00 |
|
wangsli
|
b78f2a11ce
|
建立每日自动异机备份基线(07-27-automatic-offhost-backup)
|
2026-07-27 10:50:01 +08:00 |
|