Commit Graph
1299 Commits
Author SHA1 Message Date
jesse-ux 6d06fca0d8 docs(tasks): mark four meeting implementations ready for review
Independent Staging Quality Gate / validate (push) Failing after 14m17s
Independent Staging Quality Gate / publish (push) Skipped
2026-09-22 12:16:41 +08:00
jesse-ux cc7ef8a339 fix(chart): keep account and chart-view birth truth consistent 2026-09-22 12:14:50 +08:00
jesse-ux dd4141a030 fix(report): project ordinary reports onto public prose only 2026-09-22 12:13:53 +08:00
jesse-ux 337d820076 fix(web): recover the home screen when the bundle never runs 2026-09-22 12:13:17 +08:00
jesse-ux 6ac61be07d fix(consult): resolve chat subject from server-owned profile binding 2026-09-22 12:11:52 +08:00
jesse-uxandClaude Code 10baeb2fa8 docs: split meeting product work into task books
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-22 11:19:35 +08:00
jesse-ux 1bc6a954c5 docs: record BUG-995 fix SHA 2503c019
Independent Staging Quality Gate / validate (push) Successful in 10m27s
Independent Staging Quality Gate / publish (push) Successful in 3m29s
2026-09-22 00:59:50 +08:00
jesse-ux 2503c0190b fix(test): passthrough stdout mocks so smalltalk TAP is visible
BUG-995: privacy tests were swallowing node:test TAP by replacing process.stdout.write without calling through.
2026-09-22 00:59:36 +08:00
jesse-ux 24795cbff8 docs: mark BUG-994 resolved after staging prune-before-pull deploy 2026-09-21 23:33:38 +08:00
Jesse_ChenandClaude Opus 5 26c1fbc6eb docs(tasks): 隐私测试接管 stdout 吞掉运行器报告(BUG-995)
consultation-smalltalk.test.ts mock process.stdout/stderr,
node:test 的 TAP 也走 stdout,四条用例只上报 1~4 条,
失败时只剩一行 not ok <文件路径>。修法是 mock 透传。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-21 23:10:53 +08:00
jesse-ux a06829b33e fix(deploy): prune unused staging images before digest pull
Independent Staging Quality Gate / validate (push) Successful in 16m51s
Independent Staging Quality Gate / publish (push) Successful in 6m45s
BUG-994: migrate run 2841 failed writing containerd ingest because the staging host had no space left after accumulated exact-SHA images.
2026-09-21 22:59:07 +08:00
jesse-ux f9685f2837 fix(web): paint session row highlight as one chip including the menu
Independent Staging Quality Gate / validate (push) Successful in 10m44s
Independent Staging Quality Gate / publish (push) Failing after 3m29s
Selected and hover fill stay on the whole row. The title and ⋯ no longer draw their own canvas or radius, so they stop looking like two controls (BUG-993, recurrence of BUG-024).
2026-09-21 20:12:58 +08:00
Jesse_ChenandClaude Opus 5 c954fb8e67 docs: BUG-991/992 收口,补真机走查清单
门禁 run 2837 全绿、d2cec179 已部署、retire 迁移已应用。
五条只有真人能验的写成 docs/testing 清单。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-21 19:40:24 +08:00
jesse-ux d2cec17995 test: stop requiring retired archive entrypoints in Python contracts
Independent Staging Quality Gate / validate (push) Successful in 11m24s
Independent Staging Quality Gate / publish (push) Successful in 3m45s
Flip archive tokens to must-not-appear on the session row and session hook only. Keep writeChatSession POST/PATCH and assert delete still uses DELETE. Grep tests/ before deleting frontend symbols.
2026-09-21 19:20:45 +08:00
Jesse_ChenandClaude Opus 5 d3e0edfd1b docs(tasks): 归档下线验收结论与修复单(BUG-992)
5a4b8738 业务三层均正确;门禁 run 2836 红在两条 Python 源码合同
仍要求归档入口存在。同类第四次(933/934/939),防复发落到
frontend/AGENTS.md 的 grep 口径。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-21 19:09:44 +08:00
jesse-ux 5a4b87383f fix(web): retire session archive UI and API, restore archived rows
Independent Staging Quality Gate / validate (push) Failing after 6m35s
Independent Staging Quality Gate / publish (push) Skipped
Remove archive/restore from the session menu and drop archived=1 listing. PATCH still accepts archived_at from old bundles then ignores it. A forward migration clears archived_at without bumping updated_at. Delete stays unchanged.
2026-09-21 18:49:40 +08:00
Jesse_ChenandClaude Opus 5 f8cb1dcdee docs(tasks): 归档能力整体下线任务书(BUG-991)
产品拍板下线而非装回入口:删前端链路与 ?archived=1,
迁移清空存量 archived_at(不 bump updated_at),列留待后轮。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-21 18:22:52 +08:00
Jesse_ChenandClaude Opus 5 11e4d5ff09 docs: 会话列表修复单验收通过,BUG-990 收口并更正影响面,新增 BUG-991
门禁 run 2833 全绿、df329fa9 已部署,987~990 回填修复版本。
归档视图的 UI 入口在 92558ee6 就已删除,BUG-990 的用户现象描述更正;
归档后无法查看与恢复记为 BUG-991,待产品决策。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-21 18:17:31 +08:00
jesse-ux df329fa96c fix(web): support PostgREST not(col, is) so archived session lists load
Independent Staging Quality Gate / validate (push) Successful in 10m31s
Independent Staging Quality Gate / publish (push) Successful in 3m37s
Local Postgres not() only handled eq/cs, so archived=1 threw and the sidebar archive view returned 500. Compile is not null/true/false instead of inequality.
2026-09-21 17:45:07 +08:00
Jesse_ChenandClaude Opus 5 70d595e361 docs(tasks): 会话列表重建验收结论与修复单(BUG-990)
e71e4f92 三条实现均通过独立复跑;门禁 run 2832 红在兼容层
not(col,"is",null) 未实现,归档视图自 a1956deb 起 500。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-21 17:33:03 +08:00
jesse-ux e71e4f9200 fix(web): keep rectification sessions listed and persist chats on first send
Independent Staging Quality Gate / validate (push) Failing after 16m52s
Independent Staging Quality Gate / publish (push) Skipped
Empty-consultation filtering is now session_type scoped so birth-time rows stay in the sidebar. Subtitles use updatedAt with sort/group/cursor. New chats stay local until the first send.
2026-09-21 16:39:32 +08:00
Jesse_ChenandClaude Opus 5 f8d65e484d docs(tasks): 会话列表重建任务书(BUG-987~989)
校正会话被 messages<>'[]' 整类过滤掉、副标题与排序不同源、
新建复用旧空草稿。产品拍板副标题改最后活动时间、第一问前不落库。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-21 16:11:04 +08:00
jesse-ux 0c3c9d6b42 fix(deploy): keep BuildKit cache and use Huawei mirrors for API images
Independent Staging Quality Gate / validate (push) Successful in 10m36s
Independent Staging Quality Gate / publish (push) Successful in 7m7s
Gitea run 2828 validated, then publish hit the 60-minute deadline while
Aliyun apt/pip crawled at about 22 kB/s after a 72h cache prune on a
runner with 677 GiB free. Skip BuildKit prune when disk is above the
minimum, split API apt/pip layers, and point apt/pypi at Huawei Cloud.
2026-09-21 10:56:38 +08:00
Jesse_ChenandClaude Opus 5 27a6c39b94 docs: 回填跨午夜日期锚点的合入状态与验收结论
b85c4a68 已由 Claude 独立验收后快进合入 staging。BUG-982/983 的「修复版本」
原写「本地未提交实现,未推送/部署」,与实际不符,改为记录实现 SHA 与合入
事实;两条状态仍保持 investigating,因为部署与真人验收未完成。

验收证据回填状态板:用当初复现两条 Bug 的同一探针重跑——983 的申报分钟
落回申报日、late_night 300 个候选全在同一日两段;982 的跨午夜三分钟簇由
1440 变 3,同日两段为 300 未糊成一段。非跨午夜同机 A/B 6/6 逐位相同,新
测试基线 6 红修复后全绿,Python 组 216→272 零失败,tsc 0。

同时记下遗留待确认项:无 cluster_intervals 的行仍走旧按钟点算法,需确认
除修复前旧缓存外没有别的生产路径会产生无日期行。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-21 09:25:56 +08:00
jesse-ux b85c4a686a fix(rectification): anchor candidate windows to civil dates across midnight
Independent Staging Quality Gate / validate (push) Successful in 13m27s
Independent Staging Quality Gate / publish (push) Failing after 1h0m1s
Carry explicit local date intervals instead of inferring the day from clock
order. Cluster width, delivery, adoption, and reports keep the actual civil
date; adopted date is stored separately from the reported birth_date.

Algorithm identity is scoring-9 / spec-v5. Scoring weights, confirmation
thresholds, and Skill version are unchanged. Isolated Linux final-3 gates
passed; four pre-existing Python failures remain. This is not a production
release.
2026-09-21 02:55:00 +08:00
Jesse_ChenandClaude Opus 5 3be740f84d docs(tasks): 跨午夜日期锚点单三点拍板,转待领取
D1 late_night:选 late_night 时追问一次「午夜前还是午夜后」,答不上退
同日两段 [D 00:00–03:59] ∪ [D 23:00–23:59],一律不得跨到 D+1。写明连锁
范围:退路会产生不连续候选集,枚举、聚类、簇跨度、交付区间、宽度与交付
卡都要支持两段,不得用「取两段最小到最大」糊成一段。

D2 允许窗口跨到前一天,附带义务是交付层必须说明「若落在 23:5x 则出生
日期是前一天」,不得静默改用户的出生日期。

D3 加窗口相对序号,排序取首尾算跨度一律用序号,钟点只作展示。序号入
契约会改候选身份与缓存指纹,验收必须核对 BUG-984 的身份校验并确认历史
结果只读不被重标。

让步顺序补一条:追问可先上、两段退路后上,但退路就绪前 late_night 宁可
只搜后半夜并说明,也不得搜到用户没申报过的日期。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-20 20:24:09 +08:00
Jesse_ChenandClaude Opus 5 8aa5f6a444 docs(tasks): 跨午夜日期锚点与簇跨度任务书(BUG-982 + BUG-983)
两条 Bug 都实测复现,合并成一单,因为根因相同:契约只传钟点、日期不在
契约里,后端按钟点大小猜哪端跨日。

BUG-983 是静默算错盘:_candidate_datetimes() 把起始钟点无条件绑在申报
日期上,前端零补偿。实测申报 00:10 / 申报日 2000-06-15,申报分钟本身
落到 06-16 00:10,整套盘算在错误日期上。late_night 更重:其 00:00–03:59
共 240 分钟全部落在用户没有申报过的日期上。983 不修,BUG-981 的候选级
日期修复在这批人身上等于没上线。

BUG-982 影响面比原记录大:同缺陷在 _cluster_span、unionStillValidRange、
indistinguishableWidthMinutes 三处出现,原记录只写了 Python 两处。实测
跨午夜三分钟簇被报成 1440 分钟,且该链直达交付卡的「范围 X 分钟」。

三个待决点:late_night 的语义(按出生证明口径两段都在同一日,现行实现
一半落在次日)、申报贴近午夜时允不允许窗口跨到前一天、日期怎么进契约。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-20 20:15:30 +08:00
jesse-uxandClaude Code 8d0359fc62 fix(rectification): enforce trusted result identity and preserve receipt provenance
Independent Staging Quality Gate / validate (push) Successful in 10m4s
Independent Staging Quality Gate / publish (push) Successful in 10m26s
Unify minute and block cache identity, keep unverifiable historical results read-only across server tools and write entrypoints, and aggregate completed receipt sources chronologically through a compatible function migration.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-20 18:03:38 +08:00
jesse-uxandClaude Code 6dd62207eb docs(rectification): record independent review and SQL authorization stop
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-20 15:57:45 +08:00
jesse-uxandClaude Code d575e89a83 fix(rectification): stop stamping pending receipts and document aggregate blocker
Implement BUG-984 F2 option A and reproduce mixed completed identities through real tools. Stop at the required SQL authorization boundary; F1/F3/F4 remain pending.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-20 15:55:09 +08:00
Jesse_ChenandClaude Opus 5 f09f3d809a docs(tasks): 把 F2 的 engine_version 聚合缺陷查清并定序
复核结果写进 F2:engine_version 一个字段被两种含义共用——started/failed
行写前端常量(部署声称的版本),completed 行写实际产出结果的版本(命中
旧缓存即旧版本)——而聚合用与版本先后无关的字符串 max 跨行取值。

该缺陷此前一直撞对:改动前 started 写 rectification-v5,短于 completed
的 ...scoring-7,max 恰好选中正确的那行。aa46da10 把 v9EngineVersion()
缺省改成 ...scoring-8 之后,started 行在字符串序上反超,回执遂显示第 8 版
而分数实际来自第 7 版缓存。已核部署未设该环境变量,走缺省,是真实行为。

第二个缺陷:max("...-10","...-9") 实跑得到 "...-9",聚合在第 10 版静默
反向,当前第 8 版。

定序 A 先上(started/failed 不再写版本,应用层)、B 兜底(聚合改取成功
结果那一行,只改函数体)、C 拆列本单不做;第 10 版前必须解决。A 的已知
漏洞要求实测取证,不得以「应该不会」结案,并新增一条针对版本 10 反向的
回归。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-20 15:34:49 +08:00
jesse-uxandClaude Code 3f39bafc4a docs: record staging authentication blocker before BUG-984
Independent Staging Quality Gate / validate (push) Successful in 12m48s
Independent Staging Quality Gate / publish (push) Successful in 14m50s
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-20 15:15:52 +08:00
jesse-uxandClaude Code b27d4de963 merge: accept cross-midnight gate fix and sync approved cache task
Resolve BUG-985 using independent third-environment review recorded in 0ca3871d. Retain staging's complete BUG-984 task and approved read-only policy.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-20 15:13:59 +08:00
Jesse_ChenandClaude Opus 5 a3577ce2fa docs(tasks): BUG-984 的 F3 策略拍板选 b,四项全部可开工
产品 2026-09-20 拍板:版本接口取不到可信身份时,旧缓存只读展示并显著
标注「按旧算法产出」,不拒绝重算(否决 a)、不照常复用(否决 c)。

写入 b 的三条边界:只读结果必须由服务端拒绝采用/确认且要有定向用例
(入口靠删不靠藏);标注必须用户可见并对照 VOICE.md,涉界面同提交更新
DESIGN.md;回执来源身份仍须是产出它的版本,不被开始阶段版本覆盖。

SQL 迁移不放开:F2 优先应用层解决,做不到先在进度记录写明原因并停下
报告,获准后再做且必须向后兼容并真跑 test:db。

F3 解锁,本单四项全部可开工。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-20 15:09:10 +08:00
Jesse_ChenandClaude Opus 5 0ca3871dd8 docs(tasks): BUG-984 补单转待领取 + gate-fix review 通过结论
review 25232ce4 通过:F1 改为同进程 A/B(在 helper 调用边界剥掉
candidate_at 走生产既有 legacy 回退),另加两道防空转保险。独立复核:
写死哈希 0 残留;第三套环境(Linux + Python 3.13)定向 18 条全绿,两机
验收闭环;回退日期修复探针同日 3 绿、跨午夜 4 红,两种性质已真正分开;
快速门 glob 200 passed/0 failed → 216 passed/0 failed,零新增失败。
建议 BUG-985 由 blocked 改 resolved。

BUG-984 补单按产品放行转待领取:F1/F2/F4 可立即开工,F3 卡在一条未拍板
策略(版本接口取不到可信身份时旧缓存拒绝重算还是只读展示),已列三方案
与代价并给出建议 b。补单文件原只在分支上,本次以分支最新版为底写入
staging,分支合并时该文件取 staging 版即可,不会丢内容。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-20 15:05:45 +08:00
jesse-uxandClaude Code 25232ce4ce test(rectification): compare same-day scores against legacy path in process
Replace machine-specific float hashes with strict score and matrix byte comparisons. Keep quick bridge coverage and document duplicate collection. Verify Windows/Linux float behavior and in-memory candidate-date reversal; record the separate-machine acceptance gap and BUG-984 end-to-end blocker.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-20 14:38:29 +08:00
jesse-uxandClaude Code 777bd53d7e merge: sync staging task sheet into cross-midnight gate fix
Preserve both the reviewed implementation and latest staging records. No production scoring changes beyond aa46da10.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-20 14:19:17 +08:00
Jesse_ChenandClaude Opus 5 1b646659e7 docs(tasks): 跨午夜 review 修复单(BUG-985)+ aa46da10 review 结论
review aa46da10:核心修复通过。修复后整窗打分与逐候选独立重算 21/21 一致;
非跨午夜分数基线与修复逐位不变(半径 10 六例 + 半径 60 三例,执行方证据
覆盖 19 例 2299 候选);打分常数一个未动;确认门仍关闭;决策 C 执行正确。

P1 阻塞:新增回归把 121 个浮点分数的 SHA-256 写死成字面量。在本机 ordinal
2/3 红,且基线与修复分支同样红,不是修复所致。该组 121 个分数全无浮点尾噪,
差异是第 4 位真的不同,靠改序列化消不掉。它经 gate bridge 落入快速门 glob,
同 glob 基线 214 passed/0 failed、aa46da10 4 failed,推 staging 会让门禁红。

根因是把相对不变量实现成了绝对不变量。F1 改用生产代码已有的 legacy 回退
路径做同机 A/B 对照,验收要求两台浮点环境不同的机器各跑一次。F3 查证
block_scan 重算是否经过被修 helper,它决定 BUG-984 是否为 BUG-981 的阻塞项。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-20 14:07:23 +08:00
jesse-uxandClaude Code aa46da1016 fix(rectification): use candidate dates for cross-midnight dasha scoring
Add date-isolated caches and regression coverage, align scoring identity, and freeze full research reruns while preserving historical artifacts. Record unresolved cache/receipt identity and end-to-end acceptance gaps for branch review only.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-20 13:56:11 +08:00
Jesse_ChenandClaude Opus 5 f8e40e5d3d docs: 回填寒暄快速通道的部署 SHA 与验收结论
BUG-976/977 修复版本写死 539d4dae 并记部署核对证据(状态仍 blocked,
真人走查未做);CHANGELOG 去掉「待部署」;状态板改为已验收通过并附
同机两侧对照数字。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-09-20 13:33:14 +08:00
jesse-uxandClaude Code 539d4daee4 feat(consult): add free model-classified smalltalk fast path
Independent Staging Quality Gate / validate (push) Successful in 9m35s
Independent Staging Quality Gate / publish (push) Successful in 3m52s
Keep full consultation tool contracts unchanged. Persist short replies and refund the original reservation atomically while recording actual model usage. Verify Linux frontend 3566/3566, database 40/40, Static home and gzip +0.0493%.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-20 12:58:34 +08:00
Jesse_ChenandClaude Opus 5 03cba4780a docs(tasks): 跨午夜单产品拍板放行 + 更正决策 C 的挂载点
产品 2026-09-20 就三点拍板:A 修;B 修完重新冻结并重跑 T1/T2;C 让修复
前后的结果可区分。任务书 §3 三个待决点改为已决,状态转待领取。

更正 C 的做法。原提案是改 calculation_spec 并 bump INPUT_CONTRACT_VERSION,
但查证发现 calculation_spec_hash 的消费方全在 V4 链路,生产跑的 V9 对它零
引用,改了对真实用户历史无效。改为随修复 bump engine_version:它取自
v9EngineVersion(),全仓只写不比、无任何相等性门控。明令不得动 skill_version,
BUG-621 就是 open RPC 的 Skill 版本绑定让历史校正打不开。

§1.6 同步重写为 V9 的真实身份字段表;T4 改为 engine_version bump,验收加
一条历史会话仍能打开的定向回归。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-20 12:28:44 +08:00
Jesse_ChenandClaude Opus 5 dacd404480 docs(tasks): 跨午夜候选 Dasha 边界任务书(BUG-981)+ 验证补缺单验收结论
验收 932f2fff:T1 完整重跑 900 组合逐例 0 差异、45 格表逐位相同;T2 独立复跑
五项指标与哈希全序全部一致;12 个打分文件字节未动、确认门仍关闭。执行方正确
推翻任务书 T2.3「首次口径干净的官方盲测」——与 BUG-428 防复发冲突,已核原文。

遗留立单:scoring_service.py 调 merge_transition_proximity() 只传一个
birth_date,该函数用它算全部候选的 dasha 起始日期,候选只靠 HH:MM 区分。
窗口跨午夜时午夜后候选边界整体错一天。生产调用链独立复现:23:50→00:10 的
21 个候选里,恰好 11 个跨日候选分数错、10 个同日候选逐位相同。

连带发现 calculation_spec() 不含打分实现身份,修复后同一 spec hash 对应
不同分数。本单会改生产打分,三个待决点未由产品填答不得开工。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-20 12:23:08 +08:00
jesse-uxandClaude Code 932f2fffba research(rectification): add reported-offset evaluation and frozen rerun integrity
Independent Staging Quality Gate / validate (push) Successful in 12m7s
Independent Staging Quality Gate / publish (push) Successful in 3m46s
Preserve closed confirmation gates and previously-exposed dataset boundaries. Add auditable 900-trial sensitivity results, current scorer freshness checks, and the v5 collection protocol.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-20 12:03:52 +08:00
Jesse_ChenandClaude Opus 5 5049e7847b docs(tasks): 生时校正验证体系补缺任务书(BUG-978~980)
会议要求把「推断真实出生时间」与「用户认可的参考盘」分开证明。逐条核对
后:产品口径侧四条已落地(accepted≠confirmed 两条写入路径、确认门
fail-closed、采用不写 reported_birth_time、无把采用率当准确率的指标),
缺口全在评测本身。

三条实证:封存契约里三个打分哈希互不相同且 official_eval_trial_count 为
0,当前实现从未产出过有效官方盲测;全部离线评测的候选窗以真值为圆心而
生产以申报时间为圆心,真值掉出窗外这一失败模式从不可见;v3 封存但每例
仅 3 事件、v4 事件够却已被看过并用于调参,六题回放的高分是真值方向最优
答的上界。

任务分解:申报偏差敏感性 sweep、封存盲测有效重跑 + 契约对齐 + 防复发
测试、v5 采集协议(只出协议)、记录。硬红线:不改 12 个打分文件、不用
封存集调参、不得把 status 改 ready。家庭信息在拿到基线数字前不开工。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0199rbQDTsUbCVw84wc8BTFe
2026-09-20 11:05:46 +08:00
Jesse_ChenandClaude Opus 5 fcad06372e docs(tasks): 普通对话寒暄轮快速通道任务书(BUG-976/977)
一句「你好」走完整窗口排盘 + 400 字判词 + 扣 1 点。三层实证与不扣点
通道缺口写进任务书;产品拍板不扣点不排盘回一句,分流禁用正则,
BUG-922/923 的每轮必调合同不动。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-09-20 10:19:18 +08:00
jesse-ux 09b41009f5 docs(progress): record gate 2809 and staging deploy 2811 2026-09-20 09:39:08 +08:00
jesse-ux 12fdaed90b docs(bugs): record 8dc460da as BUG-974/975 fix SHA
Independent Staging Quality Gate / validate (push) Successful in 11m28s
Independent Staging Quality Gate / publish (push) Successful in 10m58s
2026-09-20 09:12:11 +08:00
jesse-ux 8dc460da23 fix(ci): untrack .venv symlink and align Beam avatar contract
The staging gate failed on READ_ERROR .venv after a docs commit tracked a
symlink that gitignore .venv/ does not ignore. CI replaces that path with a
real venv directory. Drop the symlink, ignore the name itself, and lock it
in the privacy scan. Also point the Beam avatar source contract at the
current profile-panel copy so npm test stops failing after Python.
2026-09-20 09:11:24 +08:00
jesse-uxandClaude Code 980c77c33e docs(progress): record staging delivery
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-20 01:07:26 +08:00