commit 字段从 null 更新为合并提交 46a70aa5,notes 补充说明: 本地实现已经落地到主线,不再是仅存在于未提交分支的工作。 核实过任务实际验收标准后,明确维持 status=in_progress、不归档—— 真实样本验证/独立复核/生产切换等验收项对这5个任务都仍然开放, "代码已合并"不等于"验收完成",归档需要业务验收,不能只看自动化通过。 涉及: 09-17-company-loan-principal-repayment, 09-17-erp-exclusive-retirement, 09-18-local-concurrency-product-fixes, 09-18-reimbursement-periodic-numbering, 09-19-budget-pool-concurrency
59 行
2.8 KiB
JSON
59 行
2.8 KiB
JSON
{
|
||
"id": "local-concurrency-product-fixes",
|
||
"name": "local-concurrency-product-fixes",
|
||
"title": "PWA 更新事件与采购创建事务最小修复",
|
||
"description": "PWA原生控制器更新与采购最小写事务已本地实施;131单测、原四文件并发4/4、认证/OCR18/18通过。独立及完整门禁仍待,不提交发布。",
|
||
"status": "in_progress",
|
||
"dev_type": null,
|
||
"scope": "client PWA lifecycle and server purchase draft transaction",
|
||
"package": null,
|
||
"priority": "P1",
|
||
"creator": "shunli",
|
||
"assignee": "shunli",
|
||
"createdAt": "2026-09-18",
|
||
"completedAt": null,
|
||
"branch": null,
|
||
"base_branch": "main",
|
||
"worktree_path": null,
|
||
"commit": "46a70aa5",
|
||
"pr_url": null,
|
||
"subtasks": [],
|
||
"children": [],
|
||
"parent": null,
|
||
"relatedFiles": [
|
||
"client/src/pwa.ts",
|
||
"client/vite.config.ts",
|
||
"server/src/routes/purchaseRequests.js",
|
||
"server/tests/unit/utils/client-pwa-lifecycle.test.js",
|
||
"server/tests/unit/routes/purchase-request.errors.test.js",
|
||
"client/tests/e2e/pwa-cross-version-upgrade.spec.ts"
|
||
],
|
||
"notes": "2026-09-19 g20-full-r6:4437后端通过/1原跳过,372本地浏览器全过;PARTIAL仅dirty_candidate,独立PENDING/无部署,旧registry保护例外保留且无新增漂移。当前余额见implement顶部。\n2026-09-18本地验证完成,失败/诊断/修后回执与候选在local-coverage-g18-20260918。主会话自检不代替独立PENDING;无预算/并发/权限/审计弱化,未发布。\n 2026-09-26 更新:本地实现已通过候选分支合并落地到 origin/main(合并提交 46a70aa5),不再是仅存在于未提交分支的工作;但真实样本验证/独立复核/生产切换等验收项仍开放,任务状态维持 in_progress,未视为完成。",
|
||
"meta": {
|
||
"localImplementation": "VERIFIED",
|
||
"independentReview": "PARTIAL_WITH_LEGACY_BUDGET_FINDING",
|
||
"normalReleaseEligible": false,
|
||
"latestLocalCandidate": {
|
||
"run": "g20-full-r6",
|
||
"localChecksPassed": true,
|
||
"receiptStatus": "PARTIAL",
|
||
"browserPassed": 372,
|
||
"publicPending": 12,
|
||
"independentReview": "PARTIAL_WITH_LEGACY_BUDGET_FINDING",
|
||
"deploymentEligible": false,
|
||
"legacyProtectionStatus": "FAIL_ONE_KNOWN_DERIVED_REGISTRY",
|
||
"newProtectedDrift": false,
|
||
"productionNumberingActivated": false
|
||
},
|
||
"p9TargetedReview20260919": {
|
||
"status": "PASS_SCOPED",
|
||
"report": "artifacts/qa-governance/business-followup-claude-review-20260919T023537Z.txt",
|
||
"reportSha256": "b48e5f53340e139e5a97b5fdcb6d7003881a80a8a08d4004d01aaa6a759d2d0b",
|
||
"runtimeTestsRerun": false,
|
||
"budgetPoolFinding": "LEGACY_CONFIRMED_STATIC_UNFIXED",
|
||
"remediationTask": ".trellis/tasks/09-19-budget-pool-concurrency",
|
||
"evidence": "artifacts/qa-governance/business-followup-reception-20260919"
|
||
}
|
||
}
|
||
}
|