|
28889
|
11
|
5
|
7
|
21
|
0
|
0
|
refs/heads/pay-260915
|
0
|
{"Commits":[{"Sha1":"3a76fd763 {"Commits":[{"Sha1":"3a76fd763e1d0214b97d62f358a97ca2d9aeeb7c","Message":"test\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:42:45+08:00"}],"HeadCommit":{"Sha1":"3a76fd763e1d0214b97d62f358a97ca2d9aeeb7c","Message":"test\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:42:45+08:00"},"CompareURL":"vodtest/pay/compare/06463fa023a67c1a3e8a36ba5b99b087ddcbe734...3a76fd763e1d0214b97d62f358a97ca2d9aeeb7c","Len":1}...
|
1789008173
|
Edit
Delete
|
|
28890
|
7
|
5
|
7
|
22
|
0
|
0
|
refs/heads/app-260915
|
0
|
{"Commits":[{"Sha1":"0b11becfd {"Commits":[{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"}],"HeadCommit":{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"},"CompareURL":"vodtest/app/compare/3a944efa0a2149f519fadbe93d484a2d29508601...0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Len":1}...
|
1789008583
|
Edit
Delete
|
|
28891
|
9
|
5
|
7
|
22
|
0
|
0
|
refs/heads/app-260915
|
0
|
{"Commits":[{"Sha1":"0b11becfd {"Commits":[{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"}],"HeadCommit":{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"},"CompareURL":"vodtest/app/compare/3a944efa0a2149f519fadbe93d484a2d29508601...0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Len":1}...
|
1789008583
|
Edit
Delete
|
|
28892
|
1
|
5
|
7
|
22
|
0
|
0
|
refs/heads/app-260915
|
0
|
{"Commits":[{"Sha1":"0b11becfd {"Commits":[{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"}],"HeadCommit":{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"},"CompareURL":"vodtest/app/compare/3a944efa0a2149f519fadbe93d484a2d29508601...0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Len":1}...
|
1789008583
|
Edit
Delete
|
|
28893
|
3
|
5
|
7
|
22
|
0
|
0
|
refs/heads/app-260915
|
0
|
{"Commits":[{"Sha1":"0b11becfd {"Commits":[{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"}],"HeadCommit":{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"},"CompareURL":"vodtest/app/compare/3a944efa0a2149f519fadbe93d484a2d29508601...0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Len":1}...
|
1789008583
|
Edit
Delete
|
|
28894
|
4
|
5
|
7
|
22
|
0
|
0
|
refs/heads/app-260915
|
0
|
{"Commits":[{"Sha1":"0b11becfd {"Commits":[{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"}],"HeadCommit":{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"},"CompareURL":"vodtest/app/compare/3a944efa0a2149f519fadbe93d484a2d29508601...0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Len":1}...
|
1789008583
|
Edit
Delete
|
|
28895
|
8
|
5
|
7
|
22
|
0
|
0
|
refs/heads/app-260915
|
0
|
{"Commits":[{"Sha1":"0b11becfd {"Commits":[{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"}],"HeadCommit":{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"},"CompareURL":"vodtest/app/compare/3a944efa0a2149f519fadbe93d484a2d29508601...0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Len":1}...
|
1789008583
|
Edit
Delete
|
|
28896
|
10
|
5
|
7
|
22
|
0
|
0
|
refs/heads/app-260915
|
0
|
{"Commits":[{"Sha1":"0b11becfd {"Commits":[{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"}],"HeadCommit":{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"},"CompareURL":"vodtest/app/compare/3a944efa0a2149f519fadbe93d484a2d29508601...0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Len":1}...
|
1789008583
|
Edit
Delete
|
|
28897
|
11
|
5
|
7
|
22
|
0
|
0
|
refs/heads/app-260915
|
0
|
{"Commits":[{"Sha1":"0b11becfd {"Commits":[{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"}],"HeadCommit":{"Sha1":"0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Message":"商品团购核销\n","AuthorEmail":"11833999+littlemaidi@user.noreply.gitee.com","AuthorName":"LITTLEMAIDI","CommitterEmail":"11833999+littlemaidi@user.noreply.gitee.com","CommitterName":"LITTLEMAIDI","Timestamp":"2026-09-10T10:49:37+08:00"},"CompareURL":"vodtest/app/compare/3a944efa0a2149f519fadbe93d484a2d29508601...0b11becfd1b5223c544e4c5a28d47b3b4de1c946","Len":1}...
|
1789008583
|
Edit
Delete
|
|
28898
|
5
|
5
|
5
|
57
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"dddfe0347 {"Commits":[{"Sha1":"dddfe03474a30345361b3509f30a0843724ffb47","Message":"test: verify the content brief default candidates round\n\nSeven heavy gates plus pnpm check pass on the isolated stack at source\nfingerprint 7b85b506; CLAUDE.md heavy rows re-marked accordingly.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T19:54:42-07:00"},{"Sha1":"24566351feb01ed76b5a7a2a136acadceabb4397","Message":"feat(content): propose brief default candidates after the purpose is chosen\n\nSelecting a creation purpose now submits one BRIEF content task (debounced,\nbrand required, existing idempotency/receipt chain). Both backends parse the\nmodel's JSON object through the shared contentBriefSuggestionSchema: only the\neleven proposable fields survive, enum-invalid values, blanks and fact fields\n(purpose, lockedFacts, references, music) are dropped, and an unusable answer\nis a 422. The candidate dialog lists current vs proposed per field; empty or\ndefault fields are pre-ticked and only ticked fields are written into a new\n\"采用简报候选\" revision.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T19:54:41-07:00"}],"HeadCommit":{"Sha1":"dddfe03474a30345361b3509f30a0843724ffb47","Message":"test: verify the content brief default candidates round\n\nSeven heavy gates plus pnpm check pass on the isolated stack at source\nfingerprint 7b85b506; CLAUDE.md heavy rows re-marked accordingly.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T19:54:42-07:00"},"CompareURL":"luoanwu/image-generation/compare/eb9f043fa4c56dae0d634c3b9de9b7de82514b24...dddfe03474a30345361b3509f30a0843724ffb47","Len":2}...
|
1789008924
|
Edit
Delete
|
|
28899
|
5
|
5
|
5
|
54
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"4a18e9104 {"Commits":[{"Sha1":"4a18e91045737eab943db36986074089b6c1923c","Message":"docs(governance): 发布快照按 2026-09-10 晚 ls-remote 更新——两远端已到 f5b6f69(v0.5.0),v0.6.0 三提交未推送\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T19:52:06-07:00"},{"Sha1":"73c9031e503fda71451cce750e18cbfbc910035c","Message":"chore(reports): refresh clean static evidence @ 7a9f675\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T19:49:53-07:00"},{"Sha1":"7a9f67596b2f9997cf46afb4ca113a3ce9c7a0a3","Message":"docs: record clean commit acceptance @ c1af469(runtime 231 / 差分 9×2 零差异 / UI 10;地板 testsPassed 225→231、ownTestCases 222→228;G29 第一半经验回灌)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T19:49:31-07:00"},{"Sha1":"c1af4695da80550a56a0bf4e6629f840c6f5978f","Message":"feat(context): 请求上下文贯通 Outbox → Redis → 消费者(I9-B)+ 平台端口束接入装配点(G29 第一半)\n\n- Outbox 新增可空 request_id / trace_id(两后端迁移 20260910090000_outbox_request_context);10 处写链同 tx 落入\n- RealtimeEnvelope 可选 context{requestId,traceId};dispatcher/重放从 outbox 行带出;schema 校验;README 与 docs-truth 断言同步\n- 队列载荷携带 context,两后端 worker restoreRequestContext 后处理\n- NestJS PlatformPortsModule(PLATFORM_PORTS) / Fastify app.platformPorts:默认 createFailClosedPlatformPorts\n- 矩阵 +HTTP-REQUEST-CONTEXT-003、PORTS-FAIL-CLOSED-001(matrixVersion 4);差分 DIFF-OUTBOX-001 含 request id 存在性\n- contracts 101/101、typecheck/lint/迁移/矩阵/静态 pnpm check 全绿;版本 0.6.0\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T19:45:56-07:00"}],"HeadCommit":{"Sha1":"4a18e91045737eab943db36986074089b6c1923c","Message":"docs(governance): 发布快照按 2026-09-10 晚 ls-remote 更新——两远端已到 f5b6f69(v0.5.0),v0.6.0 三提交未推送\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T19:52:06-07:00"},"CompareURL":"luoanwu/base-framework/compare/f5b6f69ce1f8d3e92e5decf64aef434d235ce4de...4a18e91045737eab943db36986074089b6c1923c","Len":4}...
|
1789010022
|
Edit
Delete
|
|
28900
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.6.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"c1af4695da80550a56a0bf4e6629f840c6f5978f","Message":"feat(context): 请求上下文贯通 Outbox → Redis → 消费者(I9-B)+ 平台端口束接入装配点(G29 第一半)\n\n- Outbox 新增可空 request_id / trace_id(两后端迁移 20260910090000_outbox_request_context);10 处写链同 tx 落入\n- RealtimeEnvelope 可选 context{requestId,traceId};dispatcher/重放从 outbox 行带出;schema 校验;README 与 docs-truth 断言同步\n- 队列载荷携带 context,两后端 worker restoreRequestContext 后处理\n- NestJS PlatformPortsModule(PLATFORM_PORTS) / Fastify app.platformPorts:默认 createFailClosedPlatformPorts\n- 矩阵 +HTTP-REQUEST-CONTEXT-003、PORTS-FAIL-CLOSED-001(matrixVersion 4);差分 DIFF-OUTBOX-001 含 request id 存在性\n- contracts 101/101、typecheck/lint/迁移/矩阵/静态 pnpm check 全绿;版本 0.6.0\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T19:45:56-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...0783dab348684e810ca2183f3888fa30f2d7e2d8","Len":0}...
|
1789010022
|
Edit
Delete
|
|
28901
|
5
|
5
|
5
|
57
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"cac4dfce5 {"Commits":[{"Sha1":"cac4dfce5420bb002137d3438e10560495d1f48f","Message":"test: verify the illustration brief candidates round\n\nSeven heavy gates plus pnpm check pass on the isolated stack at source\nfingerprint 96e80feb; CLAUDE.md heavy rows re-marked accordingly.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T20:53:33-07:00"},{"Sha1":"f7918d06a7da573f21729217c92449e446c205f1","Message":"feat(content): propose illustration brief candidates for one slot from the real intent\n\nThe illustration editor (\"编辑配图方案 · 封面/段落之后\") gains \"按真实意图生成简报候选\"\nand \"查看简报候选\". It submits one IMAGE_BRIEF content task carrying the\nillustrationId through the existing idempotency/receipt chain. Both backends\nrefuse unknown slots before calling the model and parse the JSON object through\nthe shared contentIllustrationSuggestionSchema: only the six text fields\n(purpose, description, visual, caption, alt, overlayText) survive; size,\nreferences, the factual flag, position and selected asset are dropped, and an\nunusable answer is a 422. The candidate dialog lists current vs proposed per\nfield, pre-ticks empty or default fields, and writes only ticked fields into a\n\"采用配图简报候选\" revision. Image history and the busy-slot check now look at\nIMAGE operations only.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T20:53:32-07:00"}],"HeadCommit":{"Sha1":"cac4dfce5420bb002137d3438e10560495d1f48f","Message":"test: verify the illustration brief candidates round\n\nSeven heavy gates plus pnpm check pass on the isolated stack at source\nfingerprint 96e80feb; CLAUDE.md heavy rows re-marked accordingly.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T20:53:33-07:00"},"CompareURL":"luoanwu/image-generation/compare/dddfe03474a30345361b3509f30a0843724ffb47...cac4dfce5420bb002137d3438e10560495d1f48f","Len":2}...
|
1789012460
|
Edit
Delete
|
|
28902
|
5
|
5
|
5
|
57
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"416d9a343 {"Commits":[{"Sha1":"416d9a34314fbcb00cd65866fd3f4521dd97ca9f","Message":"docs: record the illustration brief candidates release\n\nrelease-20260910-plan-cand1 at cac4dfce (fingerprint 96e80feb) is deployed; five services healthy, queue healthy, 10 probes and 13 backups passed.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:01:11-07:00"}],"HeadCommit":{"Sha1":"416d9a34314fbcb00cd65866fd3f4521dd97ca9f","Message":"docs: record the illustration brief candidates release\n\nrelease-20260910-plan-cand1 at cac4dfce (fingerprint 96e80feb) is deployed; five services healthy, queue healthy, 10 probes and 13 backups passed.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:01:11-07:00"},"CompareURL":"luoanwu/image-generation/compare/cac4dfce5420bb002137d3438e10560495d1f48f...416d9a34314fbcb00cd65866fd3f4521dd97ca9f","Len":1}...
|
1789012875
|
Edit
Delete
|
|
28903
|
5
|
5
|
5
|
57
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"5f5bbd7e2 {"Commits":[{"Sha1":"5f5bbd7e2fc3df1771de60b488bef8528df834cb","Message":"test: verify the merged brief-candidates branch at the new fingerprint\n\nSeven heavy gates plus pnpm check pass after merging main (plan-cand1); CLAUDE.md heavy rows re-marked.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:19:01-07:00"},{"Sha1":"1ea8882cf39506281b3e8f0df13cdb355c967e3e","Message":"Merge branch 'main' into feat/content-brief-candidates\n\n# Conflicts:\n#\tCLAUDE.md\n#\tapps/web/src/components/material-factory/ContentStudio.tsx\n#\treports/admin-brands.mobile.png\n#\treports/content-detail.output-mobile.png\n#\treports/contract-consumers.latest.json\n#\treports/creative-history-hidden.desktop.png\n#\treports/creative-history-restore.mobile.png\n#\treports/creative-quality.desktop.png\n#\treports/dependency-audit.latest.json\n#\treports/governance-docs.latest.json\n#\treports/governance.latest.json\n#\treports/image-creation-1440.png\n#\treports/image-edit-1135.png\n#\treports/image-edit-1440.png\n#\treports/image-edit-390.png\n#\treports/image-edit-768.png\n#\treports/image-edit-result.png\n#\treports/inference-acceptance.latest.json\n#\treports/material-review-concurrency-guard.latest.json\n#\treports/migrations.latest.json\n#\treports/model-api-key-saved.png\n#\treports/model-credential-error.desktop.png\n#\treports/module-boundary.latest.json\n#\treports/naming.latest.json\n#\treports/order-concurrency-guard.latest.json\n#\treports/prd-retry.mobile.png\n#\treports/prd-review.desktop.png\n#\treports/production-acceptance.latest.json\n#\treports/production-delivery-released.desktop.png\n#\treports/production-delivery-revoked.mobile.png\n#\treports/production-pagination.desktop.png\n#\treports/production-pagination.mobile.png\n#\treports/production-review-preview.desktop.png\n#\treports/production-security.latest.json\n#\treports/production-single-tenant-create.desktop.png\n#\treports/production-single-tenant-separation.desktop.png\n#\treports/public-file-acceptance.latest.json\n#\treports/public-file-integration.latest.json\n#\treports/runtime-acceptance.latest.json\n#\treports/runtime-governance.latest.json\n#\treports/schema-sync.latest.json\n#\treports/script-acceptance.latest.json\n#\treports/script-generation-queue.png\n#\treports/sidecar-tests.latest.json\n#\treports/storyboard-asset-dialog.desktop.png\n#\treports/storyboard-director-guard.latest.json\n#\treports/storyboard-frame-dialog.desktop.first.png\n#\treports/template-making.1440.png\n#\treports/template-saved-master.APPLICATION.png\n#\treports/template-saved-master.GENERAL.png\n#\treports/toolchain.latest.json\n#\treports/ui-acceptance.desktop.png\n#\treports/ui-acceptance.draft-import.png\n#\treports/ui-acceptance.latest.json\n#\treports/ux-edit.desktop.png\n#\treports/ux-intake.desktop.png\n#\treports/validation-source.latest.json\n#\treports/video-batch-paused.mobile.png\n#\treports/video-regenerate-2026-09-08/desktop.png\n#\treports/video-regenerate-2026-09-08/mobile.png\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:07:50-07:00"},{"Sha1":"d829bfd96ef0cf73377d098747a769fbbaa1a38a","Message":"test: verify the background-polling fix at the new fingerprint\n\nSeven heavy gates plus pnpm check pass on the isolated stack; CLAUDE.md heavy rows re-marked.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:05:13-07:00"},{"Sha1":"55b4b34f91af41d79bbee983f3038a393461c35b","Message":"fix(web): keep polling creative operations in background panes and surface unadopted draft candidates\n\nEmbedded browser panes report the document as hidden and never focused, so\nwith refetchIntervalInBackground off the content workbench never learned that\na task had finished: no candidate dialog, editor stuck on the empty state.\nPoll in the background (2.5 s while work is live, 30 s idle) and, on the draft\nempty state, point to unadopted draft candidates.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:04:34-07:00"}],"HeadCommit":{"Sha1":"5f5bbd7e2fc3df1771de60b488bef8528df834cb","Message":"test: verify the merged brief-candidates branch at the new fingerprint\n\nSeven heavy gates plus pnpm check pass after merging main (plan-cand1); CLAUDE.md heavy rows re-marked.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:19:01-07:00"},"CompareURL":"luoanwu/image-generation/compare/416d9a34314fbcb00cd65866fd3f4521dd97ca9f...5f5bbd7e2fc3df1771de60b488bef8528df834cb","Len":4}...
|
1789013978
|
Edit
Delete
|
|
28904
|
5
|
5
|
5
|
57
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"672a60365 {"Commits":[{"Sha1":"672a60365549d45bb4f522c4335773425337be8e","Message":"docs: record the brief-cand1 and brief-cand2 releases\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:30:03-07:00"}],"HeadCommit":{"Sha1":"672a60365549d45bb4f522c4335773425337be8e","Message":"docs: record the brief-cand1 and brief-cand2 releases\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:30:03-07:00"},"CompareURL":"luoanwu/image-generation/compare/5f5bbd7e2fc3df1771de60b488bef8528df834cb...672a60365549d45bb4f522c4335773425337be8e","Len":1}...
|
1789014628
|
Edit
Delete
|
|
28905
|
5
|
5
|
5
|
57
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"80452a178 {"Commits":[{"Sha1":"80452a1781562b103d1781d7da679128d9583a31","Message":"test: verify the direction and requirement candidates round\n\nSeven heavy gates plus pnpm check pass on an isolated stack; CLAUDE.md heavy rows re-marked.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:38:39-07:00"},{"Sha1":"7d6f6816a636dbf1304b7deac8113c00afdc7558","Message":"Merge branch 'main' into feat/content-guide-candidates\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:38:37-07:00"},{"Sha1":"23a5b1c9af37f264fd850c04f011541203a892f3","Message":"fix(web): do not read act.isPending inside the auto candidate paths\n\nThe debounced BRIEF/GUIDE submissions run inside the mutation, where the\npending flag is already true, so the guard could silently skip the request.\npendingKey and the live-operation checks remain; the manual buttons are still\ndisabled while busy. Reported by the illustration-descriptions session's UI gate.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:22:25-07:00"},{"Sha1":"b65c69223011d7c1951702204aa51a0982f1a859","Message":"Merge branch 'main' into feat/content-guide-candidates\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:20:07-07:00"},{"Sha1":"69834fbb080441aaabd2f441a35377fc52133ea6","Message":"feat(content): propose direction and writing-requirement candidates from the brief\n\nEntering 内容方向 with an empty direction submits one GUIDE content task per\nproject (brand required, explicit re-run button). Both backends keep only\nusable directions (1-5, object entries flattened, deduped, length-capped) and\nrequirements (0-5) via the shared contentGuideSuggestionSchema; nothing usable\nis a 422. The candidate dialog offers one direction (radio) and any\nrequirements (checkboxes); adoption saves a 采用内容方向候选 revision and\nfills the step's 本次创作要求 without replacing existing text.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:20:07-07:00"}],"HeadCommit":{"Sha1":"80452a1781562b103d1781d7da679128d9583a31","Message":"test: verify the direction and requirement candidates round\n\nSeven heavy gates plus pnpm check pass on an isolated stack; CLAUDE.md heavy rows re-marked.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:38:39-07:00"},"CompareURL":"luoanwu/image-generation/compare/672a60365549d45bb4f522c4335773425337be8e...80452a1781562b103d1781d7da679128d9583a31","Len":5}...
|
1789015145
|
Edit
Delete
|
|
28906
|
5
|
5
|
5
|
57
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"8c3bf82bd {"Commits":[{"Sha1":"8c3bf82bd2b356a92ff6f2ea88c9b46d8367b573","Message":"docs: record the guide1 release and its live check\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:50:25-07:00"}],"HeadCommit":{"Sha1":"8c3bf82bd2b356a92ff6f2ea88c9b46d8367b573","Message":"docs: record the guide1 release and its live check\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:50:25-07:00"},"CompareURL":"luoanwu/image-generation/compare/80452a1781562b103d1781d7da679128d9583a31...8c3bf82bd2b356a92ff6f2ea88c9b46d8367b573","Len":1}...
|
1789015849
|
Edit
Delete
|
|
28907
|
5
|
5
|
5
|
57
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"dcc386002 {"Commits":[{"Sha1":"dcc386002801b96fd48bb5a2c7743dc84c3e80e2","Message":"test: verify the default scene descriptions round\n\nSeven isolated gates and pnpm check pass at sha256:306ca1a3…; evidence in reports/illustration-default-descriptions-2026-09-10 and acceptance-artifacts/illustration-default-descriptions-2026-09-10.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:52:09-07:00"},{"Sha1":"d945e304e4d8c94f481cbffae037bdb87172fe23","Message":"feat(content): propose default scene descriptions for every slot when the plan step opens\n\nEntering 配图方案 from 文案就绪 submits one IMAGE_DESCRIPTIONS content task for all saved slots (once per version, only while a slot still lacks a description); the model returns a JSON object keyed by slot id, parsed leniently and only for known slots, and the candidate dialog pre-ticks slots without a user decision. Removes act.isPending from the automatic BRIEF/description guards: inside the mutation it already reads true and silently skipped the request in a real browser. UI gate gains a local chat-completions fixture and covers both automatic paths.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:28:44-07:00"}],"HeadCommit":{"Sha1":"dcc386002801b96fd48bb5a2c7743dc84c3e80e2","Message":"test: verify the default scene descriptions round\n\nSeven isolated gates and pnpm check pass at sha256:306ca1a3…; evidence in reports/illustration-default-descriptions-2026-09-10 and acceptance-artifacts/illustration-default-descriptions-2026-09-10.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:52:09-07:00"},"CompareURL":"luoanwu/image-generation/compare/8c3bf82bd2b356a92ff6f2ea88c9b46d8367b573...dcc386002801b96fd48bb5a2c7743dc84c3e80e2","Len":2}...
|
1789016248
|
Edit
Delete
|
|
28908
|
5
|
5
|
5
|
54
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"fb8ed6627 {"Commits":[{"Sha1":"fb8ed662710ed7d17ffe5f006c8da4ab611ecaba","Message":"chore(reports): refresh clean static evidence @ b8c8135\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:17:15-07:00"},{"Sha1":"b8c813531d1a08cb6a7237226926357d2b9a8aed","Message":"docs: record clean commit acceptance @ 55a27fd(registryVersion 5;runtime 238 / 差分 9×2 零差异 / UI 10)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:16:53-07:00"},{"Sha1":"55a27fdd836fc5c8aa393aa4831f18da6eccf8bb","Message":"feat(boundary): OS 产品扩展与两道 OS 门禁整体移出主仓——框架零依赖(G26 关闭)\n\n- 移出:products/juhai.baseframework、kernel.products.json、docs/os-product-extension.md、check-os-product-{compat,runtime}.mjs\n → 同级独立仓 base-framework-os-product(只依赖 OS 检出,不依赖本仓)\n- 删除 extension profile 与 GOV-EXTENSION-OS-001(registryVersion 4→5,schema 同步)、osProduct* 指标与地板、\n check:os-product / check:os-product:runtime / check:os / check:extension 入口、CI artifact 排除项、owner-matrix 两条 OS 对象行\n- scaffold 在源仓无 kernel.products.json 时跳过产品重绑定;迁移技能 SKILL/协议/模板改为\"若目标携带\"\n- 主仓 @repo/product-runtime / @repo/tool-runtime / @os/* 零命中;静态 pnpm check 全绿;版本 0.8.0\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:11:43-07:00"},{"Sha1":"386855e345bc76dd90f3e71da81e23897554c8f6","Message":"docs(governance): 发布快照按 2026-09-10 晚二 ls-remote 更新——两远端已到 4a18e91(v0.6.0),v0.7.0 四提交未推送\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T20:54:04-07:00"},{"Sha1":"83709a8e97293c65261b3138e337f4dbc47365bd","Message":"chore(reports): refresh clean static evidence @ e072bab\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T20:53:00-07:00"}],"HeadCommit":{"Sha1":"fb8ed662710ed7d17ffe5f006c8da4ab611ecaba","Message":"chore(reports): refresh clean static evidence @ b8c8135\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:17:15-07:00"},"CompareURL":"luoanwu/base-framework/compare/4a18e91045737eab943db36986074089b6c1923c...fb8ed662710ed7d17ffe5f006c8da4ab611ecaba","Len":8}...
|
1789016389
|
Edit
Delete
|
|
28909
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.7.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"c710b36306840b237fd6fb93f3be39f59b1a36c4","Message":"fix(ports): NestJS permit() 把 PermissionDeniedError 映射为 403(此前在 try/catch 外冒泡成 500,矩阵负向用例抓出);G29 经验回灌\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T20:35:10-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...61d40d84fcc9a61ed9d6d487e8dea4544759402f","Len":0}...
|
1789016389
|
Edit
Delete
|
|
28910
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.8.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"55a27fdd836fc5c8aa393aa4831f18da6eccf8bb","Message":"feat(boundary): OS 产品扩展与两道 OS 门禁整体移出主仓——框架零依赖(G26 关闭)\n\n- 移出:products/juhai.baseframework、kernel.products.json、docs/os-product-extension.md、check-os-product-{compat,runtime}.mjs\n → 同级独立仓 base-framework-os-product(只依赖 OS 检出,不依赖本仓)\n- 删除 extension profile 与 GOV-EXTENSION-OS-001(registryVersion 4→5,schema 同步)、osProduct* 指标与地板、\n check:os-product / check:os-product:runtime / check:os / check:extension 入口、CI artifact 排除项、owner-matrix 两条 OS 对象行\n- scaffold 在源仓无 kernel.products.json 时跳过产品重绑定;迁移技能 SKILL/协议/模板改为\"若目标携带\"\n- 主仓 @repo/product-runtime / @repo/tool-runtime / @os/* 零命中;静态 pnpm check 全绿;版本 0.8.0\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T21:11:43-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...11462f99f5f9d930c376b340b2d6aa4f2422b531","Len":0}...
|
1789016389
|
Edit
Delete
|
|
28911
|
16
|
5
|
16
|
86
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"9ca943548 {"Commits":[{"Sha1":"9ca9435481f5afbff2040e41fdf0d5bca7e6b7ec","Message":"feat(renderer): 重做团队操作记录弹窗布局\n\n团队操作记录改用与账号同步相同的工作台窗口:\n- 抽出共用 AuditStageDialog,个人同步与团队记录共用表面\n- 按成员、设备和远端操作分栏,并保留结果筛选\n- 记录图标按具体动作选择,重启不再误用文件图标\n\n验证:\n- npm run typecheck\n- npx vitest run src/features/audit/auditPresentation.test.ts\n","AuthorEmail":"gamebyteyu@gmail.com","AuthorName":"starry","CommitterEmail":"gamebyteyu@gmail.com","CommitterName":"starry","Timestamp":"2026-09-10T00:06:05+08:00"},{"Sha1":"7398bb86327a181138fd73ccd4f1456f5242c2b3","Message":"feat(devices): 重做服务器操作记录弹窗布局\n\n账号同步的操作记录不再使用 FormDialog 三明治骨架,改为迷你工作台窗口:\n- 深色顶栏承载标题、条数、刷新和关闭\n- 左侧按日分组记录,支持搜索和档案/密钥/指令筛选\n- 右侧展示选中记录的操作者、对象、时间和变更字段\n- 团队操作记录弹窗保持原模板,作为后续改造对照\n\n验证:\n- npm run typecheck\n- npx vitest run src/features/audit/auditPresentation.test.ts\n","AuthorEmail":"gamebyteyu@gmail.com","AuthorName":"starry","CommitterEmail":"gamebyteyu@gmail.com","CommitterName":"starry","Timestamp":"2026-09-09T23:50:41+08:00"},{"Sha1":"23a571761dad8c6e0b9a1bb8ec475e61af06fc90","Message":"fix(app): 修复团队同步边界并补齐远端操作审计\n\n- 隔离团队认证缓存和审计补报故障,优先应用成员撤权与连接回收\n- 统一团队档案 ID 为小写并迁移历史引用,拒绝缺少 profile 的隐式删除\n- 隔离单台设备上传错误,保留未确认请求、本机编辑与云端冲突\n- 为个人副本、终端和 SFTP 操作登记服务端审计,按物理设备关联团队记录\n- 校验操作身份、版本和客户授权,补报失败不重复执行设备命令\n- 补充回归测试、协议边界及部署记录,保留现有 INI 并发保存规则\n\n验证:\n- 客户端相关 301 项测试分批通过\n- npm run typecheck\n- npm run build\n- npm run build:admin\n- 服务端 go test -race ./...\n- 云端部署后数据库完整性、访问限制及二进制校验通过\n\nBREAKING CHANGE: 新版客户端远端审计需要配套更新服务端;个人设备的受审计操作也要求登录且账号服务可达\n","AuthorEmail":"228834386@qq.com","AuthorName":"starry","CommitterEmail":"228834386@qq.com","CommitterName":"starry","Timestamp":"2026-09-09T23:47:16+08:00"},{"Sha1":"7e25631be36c242edaf43954a0d2d507054310ea","Message":"feat(devices): 实现公网设备互斥连接与租约回收\n\n- 按物理设备 ID 申请、续约和释放公网操作锁,局域网保持多人连接\n- 同团队展示锁图标及操作者,跨团队连接仅返回通用占用提示\n- 为 SSH、终端和备用传输增加锁校验,处理取消、断网、休眠与迟到响应\n- 保持公网端口归属稳定,补充竞态测试、部署记录和双电脑验收步骤\n\n验证:\n- npm run typecheck\n- 完整桌面构建与 Linux 服务端交叉编译通过\n- 297 项相关客户端测试与服务端全量竞态测试通过\n- 云端健康、访问边界和数据库完整性检查通过\n\nBREAKING CHANGE: 公网转发接口要求 lockHolderId,客户端与服务端需配套升级;局域网不受影响\n","AuthorEmail":"228834386@qq.com","AuthorName":"starry","CommitterEmail":"228834386@qq.com","CommitterName":"starry","Timestamp":"2026-09-09T22:40:46+08:00"}],"HeadCommit":{"Sha1":"9ca9435481f5afbff2040e41fdf0d5bca7e6b7ec","Message":"feat(renderer): 重做团队操作记录弹窗布局\n\n团队操作记录改用与账号同步相同的工作台窗口:\n- 抽出共用 AuditStageDialog,个人同步与团队记录共用表面\n- 按成员、设备和远端操作分栏,并保留结果筛选\n- 记录图标按具体动作选择,重启不再误用文件图标\n\n验证:\n- npm run typecheck\n- npx vitest run src/features/audit/auditPresentation.test.ts\n","AuthorEmail":"gamebyteyu@gmail.com","AuthorName":"starry","CommitterEmail":"gamebyteyu@gmail.com","CommitterName":"starry","Timestamp":"2026-09-10T00:06:05+08:00"},"CompareURL":"pengzhiyu/JuhaiOpsDesk/compare/9a10c0b59597968e9d3e49c4adba9dc7eb056c5a...9ca9435481f5afbff2040e41fdf0d5bca7e6b7ec","Len":4}...
|
1789016658
|
Edit
Delete
|
|
28912
|
1
|
5
|
1
|
32
|
0
|
0
|
refs/heads/master
|
1
|
{"Commits":[{"Sha1":"e212d43b1 {"Commits":[{"Sha1":"e212d43b150b9f001ee92e83164101920c0c1559","Message":"智慧问答\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T13:40:14+08:00"}],"HeadCommit":{"Sha1":"e212d43b150b9f001ee92e83164101920c0c1559","Message":"智慧问答\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T13:40:14+08:00"},"CompareURL":"zhangjunnan/zhouhui/compare/a8b51d576f1eadeb28fb1916727201883d3f31c8...e212d43b150b9f001ee92e83164101920c0c1559","Len":1}...
|
1789018822
|
Edit
Delete
|
|
28913
|
16
|
5
|
16
|
86
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"cedc63635 {"Commits":[{"Sha1":"cedc6363530b6951aebb9ca57e4a888bdb5ca876","Message":"feat(styles): 为设备卡片操作按钮增加悬停选中投影\n\n主页设备卡片的操作按钮原先只有背景色变化,指向感较弱。悬停或键盘聚焦时在\n按钮底部叠加一层柔和投影,强化“当前选中”的按压感,并补充 120ms 的\nbox-shadow 过渡,与卡片自身的过渡节奏保持一致。\n\n实现内容:\n- 新增语义变量 --device-card-action-hover-shadow,补齐 Light、Dark 和 Auto\n 深色分支三套取值\n- home.css 为 .device-card .row-icon-button 增加 hover/focus-visible 投影,\n 并补充 box-shadow 过渡\n- 投影仅作用于按钮自身,卡片本体不变;禁用态(截图或连接进行中)不生效\n- 主操作按钮保留原有强调色背景,仅叠加投影,不覆盖其配色\n\n验证:\n- npm run typecheck\n- 人工确认操作按钮的悬停与聚焦效果,并在 Light、Dark、Auto 三套主题下\n 检查阴影表现\n","AuthorEmail":"228834386@qq.com","AuthorName":"starry","CommitterEmail":"228834386@qq.com","CommitterName":"starry","Timestamp":"2026-09-10T13:37:04+08:00"}],"HeadCommit":{"Sha1":"cedc6363530b6951aebb9ca57e4a888bdb5ca876","Message":"feat(styles): 为设备卡片操作按钮增加悬停选中投影\n\n主页设备卡片的操作按钮原先只有背景色变化,指向感较弱。悬停或键盘聚焦时在\n按钮底部叠加一层柔和投影,强化“当前选中”的按压感,并补充 120ms 的\nbox-shadow 过渡,与卡片自身的过渡节奏保持一致。\n\n实现内容:\n- 新增语义变量 --device-card-action-hover-shadow,补齐 Light、Dark 和 Auto\n 深色分支三套取值\n- home.css 为 .device-card .row-icon-button 增加 hover/focus-visible 投影,\n 并补充 box-shadow 过渡\n- 投影仅作用于按钮自身,卡片本体不变;禁用态(截图或连接进行中)不生效\n- 主操作按钮保留原有强调色背景,仅叠加投影,不覆盖其配色\n\n验证:\n- npm run typecheck\n- 人工确认操作按钮的悬停与聚焦效果,并在 Light、Dark、Auto 三套主题下\n 检查阴影表现\n","AuthorEmail":"228834386@qq.com","AuthorName":"starry","CommitterEmail":"228834386@qq.com","CommitterName":"starry","Timestamp":"2026-09-10T13:37:04+08:00"},"CompareURL":"pengzhiyu/JuhaiOpsDesk/compare/9ca9435481f5afbff2040e41fdf0d5bca7e6b7ec...cedc6363530b6951aebb9ca57e4a888bdb5ca876","Len":1}...
|
1789018953
|
Edit
Delete
|
|
28914
|
1
|
5
|
1
|
32
|
0
|
0
|
refs/heads/master
|
1
|
{"Commits":[{"Sha1":"9c921a8ef {"Commits":[{"Sha1":"9c921a8efcf661e923773a979a16cbb0c35ee430","Message":"智慧问答\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T13:46:14+08:00"}],"HeadCommit":{"Sha1":"9c921a8efcf661e923773a979a16cbb0c35ee430","Message":"智慧问答\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T13:46:14+08:00"},"CompareURL":"zhangjunnan/zhouhui/compare/e212d43b150b9f001ee92e83164101920c0c1559...9c921a8efcf661e923773a979a16cbb0c35ee430","Len":1}...
|
1789019181
|
Edit
Delete
|
|
28915
|
19
|
5
|
19
|
69
|
0
|
0
|
refs/heads/chanpin-20261013
|
0
|
{"Commits":[{"Sha1":"2e0f4824b {"Commits":[{"Sha1":"2e0f4824baf440493c6dc1ae6a1cd384bd1e2e28","Message":"Refine room list layout\n","AuthorEmail":"codex@example.local","AuthorName":"Codex","CommitterEmail":"codex@example.local","CommitterName":"Codex","Timestamp":"2026-09-10T11:27:32+08:00"}],"HeadCommit":{"Sha1":"2e0f4824baf440493c6dc1ae6a1cd384bd1e2e28","Message":"Refine room list layout\n","AuthorEmail":"codex@example.local","AuthorName":"Codex","CommitterEmail":"codex@example.local","CommitterName":"Codex","Timestamp":"2026-09-10T11:27:32+08:00"},"CompareURL":"linmingzhang/ktv-booking-prototype/compare/e3efb3c619905b02fe97a0d5c1222b3bccefb9f2...2e0f4824baf440493c6dc1ae6a1cd384bd1e2e28","Len":1}...
|
1789020246
|
Edit
Delete
|
|
28916
|
17
|
5
|
19
|
69
|
0
|
0
|
refs/heads/chanpin-20261013
|
0
|
{"Commits":[{"Sha1":"2e0f4824b {"Commits":[{"Sha1":"2e0f4824baf440493c6dc1ae6a1cd384bd1e2e28","Message":"Refine room list layout\n","AuthorEmail":"codex@example.local","AuthorName":"Codex","CommitterEmail":"codex@example.local","CommitterName":"Codex","Timestamp":"2026-09-10T11:27:32+08:00"}],"HeadCommit":{"Sha1":"2e0f4824baf440493c6dc1ae6a1cd384bd1e2e28","Message":"Refine room list layout\n","AuthorEmail":"codex@example.local","AuthorName":"Codex","CommitterEmail":"codex@example.local","CommitterName":"Codex","Timestamp":"2026-09-10T11:27:32+08:00"},"CompareURL":"linmingzhang/ktv-booking-prototype/compare/e3efb3c619905b02fe97a0d5c1222b3bccefb9f2...2e0f4824baf440493c6dc1ae6a1cd384bd1e2e28","Len":1}...
|
1789020246
|
Edit
Delete
|
|
28917
|
18
|
5
|
19
|
69
|
0
|
0
|
refs/heads/chanpin-20261013
|
0
|
{"Commits":[{"Sha1":"2e0f4824b {"Commits":[{"Sha1":"2e0f4824baf440493c6dc1ae6a1cd384bd1e2e28","Message":"Refine room list layout\n","AuthorEmail":"codex@example.local","AuthorName":"Codex","CommitterEmail":"codex@example.local","CommitterName":"Codex","Timestamp":"2026-09-10T11:27:32+08:00"}],"HeadCommit":{"Sha1":"2e0f4824baf440493c6dc1ae6a1cd384bd1e2e28","Message":"Refine room list layout\n","AuthorEmail":"codex@example.local","AuthorName":"Codex","CommitterEmail":"codex@example.local","CommitterName":"Codex","Timestamp":"2026-09-10T11:27:32+08:00"},"CompareURL":"linmingzhang/ktv-booking-prototype/compare/e3efb3c619905b02fe97a0d5c1222b3bccefb9f2...2e0f4824baf440493c6dc1ae6a1cd384bd1e2e28","Len":1}...
|
1789020246
|
Edit
Delete
|
|
28918
|
1
|
5
|
1
|
32
|
0
|
0
|
refs/heads/master
|
1
|
{"Commits":[{"Sha1":"3bf14f050 {"Commits":[{"Sha1":"3bf14f050814dcf27ecef9ec351eec258afb5a94","Message":"修改加载的\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T14:52:31+08:00"}],"HeadCommit":{"Sha1":"3bf14f050814dcf27ecef9ec351eec258afb5a94","Message":"修改加载的\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T14:52:31+08:00"},"CompareURL":"zhangjunnan/zhouhui/compare/9c921a8efcf661e923773a979a16cbb0c35ee430...3bf14f050814dcf27ecef9ec351eec258afb5a94","Len":1}...
|
1789023172
|
Edit
Delete
|
|
28919
|
1
|
5
|
1
|
32
|
0
|
0
|
refs/heads/master
|
1
|
{"Commits":[{"Sha1":"0e91fefee {"Commits":[{"Sha1":"0e91fefeef873195d79f270eaa73429c799a1940","Message":"merge nginx config\n","AuthorEmail":"zhangjunnan@g-hi.com","AuthorName":"zhangjunnan","CommitterEmail":"zhangjunnan@g-hi.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T15:10:36+08:00"}],"HeadCommit":{"Sha1":"0e91fefeef873195d79f270eaa73429c799a1940","Message":"merge nginx config\n","AuthorEmail":"zhangjunnan@g-hi.com","AuthorName":"zhangjunnan","CommitterEmail":"zhangjunnan@g-hi.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T15:10:36+08:00"},"CompareURL":"zhangjunnan/zhouhui/compare/3bf14f050814dcf27ecef9ec351eec258afb5a94...0e91fefeef873195d79f270eaa73429c799a1940","Len":1}...
|
1789024298
|
Edit
Delete
|
|
28920
|
10
|
5
|
10
|
21
|
0
|
0
|
refs/heads/pay-260915
|
0
|
{"Commits":[{"Sha1":"3c2bb7824 {"Commits":[{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"}],"HeadCommit":{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"},"CompareURL":"vodtest/pay/compare/3a76fd763e1d0214b97d62f358a97ca2d9aeeb7c...3c2bb782482da85b388e25f2a08b3ee3094a957b","Len":1}...
|
1789025357
|
Edit
Delete
|
|
28921
|
9
|
5
|
10
|
21
|
0
|
0
|
refs/heads/pay-260915
|
0
|
{"Commits":[{"Sha1":"3c2bb7824 {"Commits":[{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"}],"HeadCommit":{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"},"CompareURL":"vodtest/pay/compare/3a76fd763e1d0214b97d62f358a97ca2d9aeeb7c...3c2bb782482da85b388e25f2a08b3ee3094a957b","Len":1}...
|
1789025357
|
Edit
Delete
|
|
28922
|
1
|
5
|
10
|
21
|
0
|
0
|
refs/heads/pay-260915
|
0
|
{"Commits":[{"Sha1":"3c2bb7824 {"Commits":[{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"}],"HeadCommit":{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"},"CompareURL":"vodtest/pay/compare/3a76fd763e1d0214b97d62f358a97ca2d9aeeb7c...3c2bb782482da85b388e25f2a08b3ee3094a957b","Len":1}...
|
1789025357
|
Edit
Delete
|
|
28923
|
3
|
5
|
10
|
21
|
0
|
0
|
refs/heads/pay-260915
|
0
|
{"Commits":[{"Sha1":"3c2bb7824 {"Commits":[{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"}],"HeadCommit":{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"},"CompareURL":"vodtest/pay/compare/3a76fd763e1d0214b97d62f358a97ca2d9aeeb7c...3c2bb782482da85b388e25f2a08b3ee3094a957b","Len":1}...
|
1789025357
|
Edit
Delete
|
|
28924
|
4
|
5
|
10
|
21
|
0
|
0
|
refs/heads/pay-260915
|
0
|
{"Commits":[{"Sha1":"3c2bb7824 {"Commits":[{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"}],"HeadCommit":{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"},"CompareURL":"vodtest/pay/compare/3a76fd763e1d0214b97d62f358a97ca2d9aeeb7c...3c2bb782482da85b388e25f2a08b3ee3094a957b","Len":1}...
|
1789025357
|
Edit
Delete
|
|
28925
|
7
|
5
|
10
|
21
|
0
|
0
|
refs/heads/pay-260915
|
0
|
{"Commits":[{"Sha1":"3c2bb7824 {"Commits":[{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"}],"HeadCommit":{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"},"CompareURL":"vodtest/pay/compare/3a76fd763e1d0214b97d62f358a97ca2d9aeeb7c...3c2bb782482da85b388e25f2a08b3ee3094a957b","Len":1}...
|
1789025357
|
Edit
Delete
|
|
28926
|
8
|
5
|
10
|
21
|
0
|
0
|
refs/heads/pay-260915
|
0
|
{"Commits":[{"Sha1":"3c2bb7824 {"Commits":[{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"}],"HeadCommit":{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"},"CompareURL":"vodtest/pay/compare/3a76fd763e1d0214b97d62f358a97ca2d9aeeb7c...3c2bb782482da85b388e25f2a08b3ee3094a957b","Len":1}...
|
1789025357
|
Edit
Delete
|
|
28927
|
11
|
5
|
10
|
21
|
0
|
0
|
refs/heads/pay-260915
|
0
|
{"Commits":[{"Sha1":"3c2bb7824 {"Commits":[{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"}],"HeadCommit":{"Sha1":"3c2bb782482da85b388e25f2a08b3ee3094a957b","Message":"公众号扫码推送消息进入小程序点歌首页开房校验\n","AuthorEmail":"yangruilin888@gmail.com","AuthorName":"linyangrui","CommitterEmail":"yangruilin888@gmail.com","CommitterName":"linyangrui","Timestamp":"2026-09-10T15:29:05+08:00"},"CompareURL":"vodtest/pay/compare/3a76fd763e1d0214b97d62f358a97ca2d9aeeb7c...3c2bb782482da85b388e25f2a08b3ee3094a957b","Len":1}...
|
1789025357
|
Edit
Delete
|
|
28928
|
5
|
5
|
5
|
54
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"9371e2946 {"Commits":[{"Sha1":"9371e2946b802b351f5641762b8b3ca4470c409a","Message":"chore(reports): refresh clean static evidence @ da7d7aa\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T23:37:22-07:00"},{"Sha1":"da7d7aa269bc5892264eeaaa24021f63862e80da","Message":"docs: record clean commit acceptance @ fa77b22(runtime 252 / 差分 9×2 零差异;地板 testsPassed 242→252)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T23:37:00-07:00"},{"Sha1":"fa77b22af701d7a40ce19ebf1d6c14614b3afd6b","Message":"fix(redis): REDIS_URL 的 rediss:// TLS 与 ACL 用户名透传给 BullMQ(C28,09-05 审查 P1)\n\n- 两后端 parseRedisConnection:username(URL 解码)、tls.servername(rediss://)、只认 redis/rediss 协议\n- NestJS app.module 改消费共享解析器并透传 username/tls(消灭内联第二份拆解)\n- check:dual-backend C28 绊网(负向 exit 1);两后端各 5 个 infra-url 纯函数单测\n- 版本 0.12.0;CHANGELOG / COMPATIBILITY / CLAUDE.md(真源地图、G18、C28)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T23:34:56-07:00"},{"Sha1":"031ab536fb42ffc743666a4851f6a833e7bd3600","Message":"chore(reports): refresh clean static evidence @ 0acc198\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T22:55:05-07:00"},{"Sha1":"0acc19849f733625c7afa3ff83a9b01399aa0459","Message":"docs: record clean commit acceptance @ 6c60640(runtime 242 / 差分 9×2 零差异;地板 testsPassed 238→242、ownTests 31→32、ownTestCases 235→239)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T22:54:43-07:00"}],"HeadCommit":{"Sha1":"9371e2946b802b351f5641762b8b3ca4470c409a","Message":"chore(reports): refresh clean static evidence @ da7d7aa\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T23:37:22-07:00"},"CompareURL":"luoanwu/base-framework/compare/fb8ed662710ed7d17ffe5f006c8da4ab611ecaba...9371e2946b802b351f5641762b8b3ca4470c409a","Len":12}...
|
1789026271
|
Edit
Delete
|
|
28929
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.10.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"2df710d670c6be4c7e2d8d8a321b88bd4d24dc94","Message":"feat(release): 版本兼容矩阵 + 升级指南(FW-06)\n\n- COMPATIBILITY.md:运行基座矩阵、按版本派生仓必做动作(0.1.0→0.10.0 回填)、收据版本支持、0.x 弃用策略\n- check:docs-truth compat-* 断言:CHANGELOG 每个已发布版本有 ### [x.y.z] 升级小节;Node/pnpm/PG/Redis 与 package.json、CI 一致\n- migration:plan 报告 upgrade{from,to,versions[]}:目标凭证版本之后的动作累加并打印\n- 版本 0.10.0(root + contracts)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T22:42:00-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...bfa7cafcfa2cfbe8c68756ce2a276cc0631f494d","Len":0}...
|
1789026271
|
Edit
Delete
|
|
28930
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.11.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"6c60640adc403fed09fba13e9f258dd19e031a1e","Message":"feat(outbox): 死信处置与告警入口 pnpm outbox:remediate(G16 部分闭环)\n\n- scripts/outbox-remediate.mjs:--status(有死信 exit 2)/ --list-dead / --inspect / --retry / --discard --reason;\n 写库需 --execute,默认 dry-run;与 dispatcher 阻断语义一致(retry 重置三列按 seq 重投;discard 标 dispatchedAt、保留 deadLetteredAt)\n- NestJS test/outbox.remediate.test.ts:真实 DB 4 用例(告警退出码、dry-run、retry 后重投、discard 后放行、拒绝非死信)\n- 版本 0.11.0;COMPATIBILITY / CHANGELOG / CLAUDE.md G16 更新\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T22:52:39-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...08358ed9bd2af9c934d8758e1d9af7e7e8f52dc6","Len":0}...
|
1789026271
|
Edit
Delete
|
|
28931
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.12.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"fa77b22af701d7a40ce19ebf1d6c14614b3afd6b","Message":"fix(redis): REDIS_URL 的 rediss:// TLS 与 ACL 用户名透传给 BullMQ(C28,09-05 审查 P1)\n\n- 两后端 parseRedisConnection:username(URL 解码)、tls.servername(rediss://)、只认 redis/rediss 协议\n- NestJS app.module 改消费共享解析器并透传 username/tls(消灭内联第二份拆解)\n- check:dual-backend C28 绊网(负向 exit 1);两后端各 5 个 infra-url 纯函数单测\n- 版本 0.12.0;CHANGELOG / COMPATIBILITY / CLAUDE.md(真源地图、G18、C28)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T23:34:56-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...569fbabead2b43b2e014e559173029626b5f2014","Len":0}...
|
1789026271
|
Edit
Delete
|
|
28932
|
5
|
9
|
5
|
54
|
0
|
0
|
refs/tags/v0.9.0
|
0
|
{"Commits":null,"HeadCommit":{" {"Commits":null,"HeadCommit":{"Sha1":"eccb5c8098c5d0b6edb2b25ab8e26ac0265ab5ac","Message":"feat(ui-matrix): check:ui 支持 nestjs/fastify × ws/sse 矩阵;修复 Fastify SSE 两条浏览器分叉(G17 关闭,C27)\n\n- check:ui:UI_BACKEND / UI_TRANSPORT / UI_MATRIX=1,每组合独立起后端与前端跑同一套 Playwright 用例;\n 报告 matrix[],uiTestsPassed 取最小值对地板\n- web:NEXT_PUBLIC_REALTIME_TRANSPORT 设实时通路起始值\n- Fastify /sse/events:开流即写 \": connected\" 注释帧(否则经代理 EventSource 永不 open);\n Cache-Control 加 no-transform(否则 gzip 代理缓冲事件)——UI 矩阵 fastify/sse 首轮精确红盘抓出\n- 版本 0.9.0\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-09T22:25:25-07:00"},"CompareURL":"luoanwu/base-framework/compare/0000000000000000000000000000000000000000...5f190bbd89bb73e4b96138115c42dc5df11721eb","Len":0}...
|
1789026271
|
Edit
Delete
|
|
28933
|
5
|
5
|
5
|
57
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"886b07761 {"Commits":[{"Sha1":"886b077616eca50ded1e35a076d0a7759b24a0ab","Message":"test: verify the content slot navigation and factual dialog round\n\nSeven isolated gates and pnpm check pass at sha256:cdf13599…; evidence in reports/content-slot-navigation-2026-09-10 and acceptance-artifacts/content-slot-navigation-2026-09-10.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T01:41:08-07:00"},{"Sha1":"9674d8ab75d74e2465638e665c22490a670c7365","Message":"test(content): the dialog footer names the missing brand/model first; assert only the slot hint\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T01:31:59-07:00"},{"Sha1":"36ce3a865bad16594e8059d1420708235b8b90e7","Message":"test(content): assert the factual hint clears rather than the submit button, which brand/model also gate\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T01:19:34-07:00"},{"Sha1":"1aefca27390c0b00f7c3257c0d12be4984334d0c","Message":"fix(content): make the blocked illustration dialog actionable for factual and reference slots\n\nA slot flagged 事实画面 (by the user or a PLAN candidate) or carrying 参考素材要求 disabled 提交 with one line telling the user to go upload on the page they were already on. The dialog now names the cause separately for each case and offers the way out in place: upload an image for that slot (which drops it from the batch), drop the factual flag, or clear the reference note; 修改尺寸与配图方案 stays. e2e spec and the UI gate cover the factual case.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T01:10:25-07:00"},{"Sha1":"03a75d47ca02782fc06d4d3e6aeca915b370b749","Message":"fix(content): make illustration slots in the writing steps open the step that can act on them\n\nOutside 配图方案 / 插图生成 the editor rendered each slot as a figure whose click only toggled a highlight, so the 待生成/导入图片 placeholder looked interactive but did nothing. The slot is now a keyboard-reachable button: a slot without a scene description opens 配图方案 with that slot selected, any other slot opens 插图生成; the placeholder names the destination. e2e spec and the UI gate assert the jump.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T00:42:26-07:00"}],"HeadCommit":{"Sha1":"886b077616eca50ded1e35a076d0a7759b24a0ab","Message":"test: verify the content slot navigation and factual dialog round\n\nSeven isolated gates and pnpm check pass at sha256:cdf13599…; evidence in reports/content-slot-navigation-2026-09-10 and acceptance-artifacts/content-slot-navigation-2026-09-10.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T01:41:08-07:00"},"CompareURL":"luoanwu/image-generation/compare/dcc386002801b96fd48bb5a2c7743dc84c3e80e2...886b077616eca50ded1e35a076d0a7759b24a0ab","Len":5}...
|
1789029783
|
Edit
Delete
|
|
28934
|
5
|
5
|
5
|
57
|
0
|
0
|
refs/heads/fix/content-placeholder-navigation
|
0
|
|
1789029869
|
Edit
Delete
|
|
28935
|
5
|
5
|
5
|
57
|
0
|
0
|
refs/heads/fix/content-placeholder-navigation
|
0
|
{"Commits":[],"HeadCommit":{"S {"Commits":[],"HeadCommit":{"Sha1":"886b077616eca50ded1e35a076d0a7759b24a0ab","Message":"test: verify the content slot navigation and factual dialog round\n\nSeven isolated gates and pnpm check pass at sha256:cdf13599…; evidence in reports/content-slot-navigation-2026-09-10 and acceptance-artifacts/content-slot-navigation-2026-09-10.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","AuthorEmail":"hillao@juhailaoluodeMacBook-Pro.local","AuthorName":"juhailaoluo pro","CommitterEmail":"hillao@juhailaoluodeMacBook-Pro.local","CommitterName":"juhailaoluo pro","Timestamp":"2026-09-10T01:41:08-07:00"},"CompareURL":"luoanwu/image-generation/compare/main...886b077616eca50ded1e35a076d0a7759b24a0ab","Len":0}...
|
1789029869
|
Edit
Delete
|
|
28936
|
16
|
5
|
16
|
86
|
0
|
0
|
refs/heads/main
|
0
|
{"Commits":[{"Sha1":"c43e8452a {"Commits":[{"Sha1":"c43e8452abe292b34eac408ea4faaf3b262371c2","Message":"feat(renderer): 优化实时预览工具栏、空状态和侧栏布局\n\n实时预览页控件挤在一行、侧栏指标平铺、开始按钮不够突出,影响日常查看和操作。\n\n实现内容:\n- 重组顶部工具栏分组,开始/停止改成胶囊主按钮\n- 空状态改用中央圆形开始/重连按钮\n- 侧栏改为状态卡、画面指标网格和会话信息\n\n验证:\n- npm run typecheck\n- npx vitest run src/features/remotePreview/RemotePreviewWorkspace.test.ts\n","AuthorEmail":"228834386@qq.com","AuthorName":"starry","CommitterEmail":"228834386@qq.com","CommitterName":"starry","Timestamp":"2026-09-10T16:19:33+08:00"},{"Sha1":"1ee8e5591e97ac55af5fd89964b1fd638d71cc8f","Message":"feat(renderer): 统一搜索框并去掉文件树常驻筛选\n\n操作台搜索框原先焦点叠边框和 outline 成双环,Chromium 自带灰色清除钮\n与主题冲突。文件列表上方再放常驻筛选框,也和 VS Code 资源管理器不一致。\n\n实现内容:\n- 新增 SearchField:隐藏系统清除钮,改为主题化圆形 X,焦点改用半透明\n 描边加淡蓝光晕;Aa/ab 选项改为胶囊选中态\n- 日志/INI 侧栏文件树去掉常驻筛选,对齐 VS Code 资源管理器;找文件走\n 全局搜索或顶栏快速打开\n- 保留 INI 解码 Key 筛选和采集配置弹窗的文件搜索\n- 主页设备/密钥/快捷指令、内容查找和 JSON 查找接入同一组件\n\n未覆盖范围:\n- SFTP、UDP、终端抽屉、帮助和团队页搜索尚未改用 SearchField\n\n验证:\n- npm run typecheck\n- 人工确认日志/INI 文件树无筛选框,解码 Key 与采集配置仍可搜索,\n 焦点光晕和清除按钮在 Light、Dark 下可用\n","AuthorEmail":"228834386@qq.com","AuthorName":"starry","CommitterEmail":"228834386@qq.com","CommitterName":"starry","Timestamp":"2026-09-10T15:54:48+08:00"},{"Sha1":"a7f6740524c0c48ad85fdac3ecb9ce9780b80e29","Message":"feat(styles): 主页遗漏与弹窗按钮改用胶囊圆角\n\n主页工具栏和设置弹窗已改成胶囊圆角后,同画面上的空状态、团队切换、\n连接中操作和从主页打开的弹窗仍是 6–10px 小圆角。本次把这些按钮收齐,\n不改全局 toolbar-button 基元,避免操作台路径栏和工具条一起变。\n\n实现内容:\n- 主页空状态主按钮、团队切换器、操作结果 Toast 关闭、截图通知动作钮、\n SSH 连接中画面与新标签刷新改为胶囊\n- 按 .dialog-shell 覆盖弹窗内 toolbar-button / icon-button / row-icon-button,\n 覆盖确认框、改密、设备档案、密钥、指令、团队、同步、重启等 portal 弹窗\n- 设备档案表单的显示密码、选择私钥、添加/删除路径等自定义按钮同步胶囊\n- 操作记录窗口的刷新、关闭与筛选分段改为胶囊;页脚中等高度按钮组默认\n 圆角改为胶囊,操作台空状态仍保留中等圆角\n\n未覆盖范围:\n- 全局 toolbar-button、icon-button、row-icon-button 基元未改\n- 操作台路径栏、活动栏、终端工具抽屉、登录页按钮未改\n\n验证:\n- 人工确认主页遗漏按钮、从主页打开的弹窗,以及共用 dialog-shell 的\n 操作台弹窗在 Light、Dark、Auto 三套主题下的圆角表现\n- 对照操作台路径栏保存/拉取仍为小圆角矩形\n","AuthorEmail":"228834386@qq.com","AuthorName":"starry","CommitterEmail":"228834386@qq.com","CommitterName":"starry","Timestamp":"2026-09-10T15:10:06+08:00"},{"Sha1":"60dd681be72d939c2dcb88e85c71cead90e8d851","Message":"feat(renderer): 重做设置页存储与缓存面板布局\n\n设置页「存储与缓存」面板原有三张并排指标卡平铺数字,看不出包含关系;分类\n列表层级扁平、间距局促、缺少图标。本次做结构与视觉重做,清理语义与安全\n约束保持不变。\n\n实现内容:\n- 概览由三张指标卡改为大号总量 + 三段互斥堆叠条 + 同色图例,三个数字直接\n 对应堆叠段,不再需要读者自行推断\n- 分段按主进程口径精确划分:reclaimableBytes 只统计 selectedByDefault 且未\n 阻塞的分类,用户勾选的用户数据分类不在其中,故「可回收未选」必须扣掉已\n 选中且属于可回收范围的部分,三段合计恒等于本机占用\n- storageCategoryMeta 增加 icon 字段,列表行新增 26px 图标槽;用户数据行的\n 图标跟随标题转为风险色,且不被选中态覆盖\n- 分组标题改为「组名 | 说明 | 小计」三列,StorageUsageGroup 增加 sizeBytes\n- 列表间距、行内边距、组间距与底部清理条分隔留白整体放宽\n- 清理结果反馈改为固定占位槽,出现或消失不再推动上方列表\n- 窄屏由视口媒体查询改为 @container settings-storage:设置弹窗嵌在导航\n 布局里,导航折成顶栏时内容区反而变宽,同一面板宽度会有两个来源\n\n配色说明:\n- 中性段与轨道取 --code-bg 而非 --device-status-track-bg:后者在深色下是\n #3e4257,与面板所在的 --dialog-bg(#32364a)几乎同色,轨道和第三段会看\n 不见,该问题仅在深色主题暴露;--code-bg 深色为 #141729,明显下沉\n- 中性图例色块加内描边,保证在浅色弹窗面上可辨认\n- 未复用 getUsageTone:其口径是「占用越高越糟」,而这里展示的是可回收\n 占比,方向相反;且该函数在 DeviceOverviewVisuals 与 DeviceOverviewPanel\n 各有一份模块私有实现、均未导出,StorageUsageResult 也没有容量分母\n\n未覆盖范围:\n- settings-storage__empty 仍自建空状态,未收敛到 primitives.css 的\n .empty-state 家族,收敛会改动现有空状态外观\n- 清理流程与确认框未改动\n\n验证:\n- npm run typecheck\n- npm run build\n- 人工确认三套主题、勾选联动与窄屏降级\n","AuthorEmail":"228834386@qq.com","AuthorName":"starry","CommitterEmail":"228834386@qq.com","CommitterName":"starry","Timestamp":"2026-09-10T14:24:10+08:00"},{"Sha1":"29cc4048e10036d54c7a3500ec175f3f6e7a1e97","Message":"feat(styles): 设置弹窗按钮改用胶囊圆角\n\n设置弹窗的按钮圆角此前在 6px 到 14px 之间取值不一,与主页已统一的胶囊\n圆角语言不一致。本次把设置弹窗内的按钮统一为胶囊圆角。\n\n实现内容:\n- 分段控件容器与分段按钮(含主题选项)改为胶囊,容器高 44、内按钮高\n 36、padding 4px,两者保持同心圆\n- MCP 配置主操作按钮、截图清理按钮由 6px 改为胶囊\n- 新增 .settings-dialog 作用域规则,覆盖各分类面板与弹窗页脚的\n toolbar-button 和 row-icon-button\n\n未覆盖范围:\n- 开关轨道本就是 999px 胶囊,无需改动\n- settings-storage__text-action 是纯文字按钮,无可见圆角,未改动\n- “清理本机数据”确认框是 DialogShell 的兄弟节点,属于 .confirm-dialog\n 全局确认框体系;“修改密码”弹窗经 createPortal 挂到 body,二者均在\n .settings-dialog 作用域外,保持原有圆角\n\n验证:\n- npm run typecheck\n- 人工确认设置弹窗各分类面板按钮与分段控件在 Light、Dark、Auto 三套\n 主题下的圆角表现\n","AuthorEmail":"228834386@qq.com","AuthorName":"starry","CommitterEmail":"228834386@qq.com","CommitterName":"starry","Timestamp":"2026-09-10T14:04:38+08:00"}],"HeadCommit":{"Sha1":"c43e8452abe292b34eac408ea4faaf3b262371c2","Message":"feat(renderer): 优化实时预览工具栏、空状态和侧栏布局\n\n实时预览页控件挤在一行、侧栏指标平铺、开始按钮不够突出,影响日常查看和操作。\n\n实现内容:\n- 重组顶部工具栏分组,开始/停止改成胶囊主按钮\n- 空状态改用中央圆形开始/重连按钮\n- 侧栏改为状态卡、画面指标网格和会话信息\n\n验证:\n- npm run typecheck\n- npx vitest run src/features/remotePreview/RemotePreviewWorkspace.test.ts\n","AuthorEmail":"228834386@qq.com","AuthorName":"starry","CommitterEmail":"228834386@qq.com","CommitterName":"starry","Timestamp":"2026-09-10T16:19:33+08:00"},"CompareURL":"pengzhiyu/JuhaiOpsDesk/compare/cedc6363530b6951aebb9ca57e4a888bdb5ca876...c43e8452abe292b34eac408ea4faaf3b262371c2","Len":6}...
|
1789030822
|
Edit
Delete
|
|
28937
|
1
|
5
|
1
|
32
|
0
|
0
|
refs/heads/master
|
1
|
{"Commits":[{"Sha1":"d21195889 {"Commits":[{"Sha1":"d211958890d16326c17f9fd47b18697992817865","Message":"Merge remote-tracking branch 'origin/master'\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T17:43:03+08:00"},{"Sha1":"31ded5d3c85a17803a54caf1e2814398e083b7af","Message":"修改加载的\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T17:42:16+08:00"}],"HeadCommit":{"Sha1":"d211958890d16326c17f9fd47b18697992817865","Message":"Merge remote-tracking branch 'origin/master'\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T17:43:03+08:00"},"CompareURL":"zhangjunnan/zhouhui/compare/0e91fefeef873195d79f270eaa73429c799a1940...d211958890d16326c17f9fd47b18697992817865","Len":2}...
|
1789033396
|
Edit
Delete
|
|
28938
|
1
|
5
|
1
|
32
|
0
|
0
|
refs/heads/master
|
1
|
{"Commits":[{"Sha1":"fc56f470f {"Commits":[{"Sha1":"fc56f470fb2d2265a23fa058789387acb8771905","Message":"修改加载的\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T17:53:24+08:00"}],"HeadCommit":{"Sha1":"fc56f470fb2d2265a23fa058789387acb8771905","Message":"修改加载的\n","AuthorEmail":"121158035@qq.com","AuthorName":"zhangjunnan","CommitterEmail":"121158035@qq.com","CommitterName":"zhangjunnan","Timestamp":"2026-09-10T17:53:24+08:00"},"CompareURL":"zhangjunnan/zhouhui/compare/d211958890d16326c17f9fd47b18697992817865...fc56f470fb2d2265a23fa058789387acb8771905","Len":1}...
|
1789034012
|
Edit
Delete
|