k88936
|
d860b84a02
|
「回到底部」胶囊改为基于列表可见底边定位
- styles.css 把消息列表改成 flex 列容器并显式 gap: 0——原 gap: 14px 对块级容器无效,改成 flex 后会与子项的 margin 叠成双倍间距
- 列表子项 flex: 0 0 auto 防止内容溢出一屏时被纵向压缩,列表仍是唯一滚动区
- 胶囊 margin-top: auto:内容不足一屏时吃掉剩余空间顶到可见底边,内容溢出一屏时归零、交由 sticky bottom-3 上拉贴底
- DirectProjectScrollToBottomCapsule 增加稳定类名 project-chat-scroll-to-bottom、去掉 mt-1,并更新组件说明
- ADR 第 3 节与备选方案 2 同步新的定位方式
|
2026-10-07 10:50:04 +08:00 |
|
k88936
|
c95ea8af85
|
短历史一屏以内时收起悬空的「回到底部」胶囊
- useConversationScroll 新增 syncBottomFromLayout:按真实几何复核 isNearBottom,为真即恢复跟随、收起胶囊并清掉「有新回复」
- 布局补偿、turns 内容变化与 ResizeObserver/MutationObserver 回调都先走一次复核,内容塌回一屏以内不再依赖滚动事件
- 补回归测试:列表内容塌回一屏以内并触发布局变化,没有任何滚动事件也应收起胶囊
- ADR 第 3 节记录贴底判定不能只认 onScroll
|
2026-10-07 10:49:56 +08:00 |
|
k88936
|
89d0f507e6
|
修复连续翻页时历史加载行忽隐忽现
- 加载行卸载加入 300ms 隐藏滞回:填充视口的自动加载连续翻页,两次之间只有一次 effect 回流,立即卸载会把加载行一帧内拆了又挂
- conversationScrollPolicy.ts 新增 HISTORY_LOADING_INDICATOR_HIDE_DELAY_MS,与显示延迟 150ms 配对
- useDelayedFlag 增加 hideDelayMs 参数,值转假后延迟再隐藏,转真仍立即显示
- 补回归测试:连续翻页之间小于隐藏延迟的空隙不卸载加载行,真正结束后照常卸载
- ADR 第 1 节记录隐藏滞回的动机与阈值
|
2026-10-07 10:49:41 +08:00 |
|
k88936
|
3e6d0f39e5
|
合并 origin/master 到 feat/adapt-xhs-skill:发布入口迁入导出产物面板并吸收发布绑定、内部版本与上传进度
Project CI / Backend tests (pull_request) Failing after 18s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 6m18s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 7m28s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 4m20s
Project CI / Repository checks (pull_request) Failing after 33s
Project CI / Frontend tests (pull_request) Successful in 3m7s
Project CI / AI game creator shell web tests (pull_request) Failing after 2m55s
Project CI / Native shell tests (pull_request) Successful in 8m39s
- 陶泥儿 tab 发布面板去掉前端灰度:删除 readGamePublishAvailability 调用、发布权限占位与对应测试 mock,与 master 删除原生灰度命令保持一致,只在项目清单就绪前显示「正在读取项目清单」
- App.tsx 保留本分支导出产物面板架构,发布入口不再挂 Direct 聊天头;useTaonierTab 收敛 allowed/availabilityPending 状态并同步注释
- 发布表单 hook 合并本分支表单状态与 master 的发布绑定回读、AGC 工程内部版本派生、线上最近提交与上传进度阶段
- GameDistributionPublishFormView 接入发布状态面板、只读「项目版本」标签、发布阶段步骤与「更新游戏」等文案
- 合并发布表单与发布反馈测试:恢复封面/试玩包断言,补 readGameDistributionPublication mock
- agc-skills/manifest.json 取本分支新增的 platform-abstract、vite-export-xhs-minitool 与 master 的三处 sha256,version 提升到 2026-08-26.66
- decision-log.md 保留双方新增条目;技术方案文档补回双方新增章节;玩法链路文档取 master 重写后的发行合同
|
2026-10-06 20:01:16 +08:00 |
|
k88936
|
af19af0a2f
|
清掉错误类型相关的过时文档
- 删两份 ADR:`AGC命令错误结构化与错误报告口径`、`AGC认证失败的JS侧载体与抛出时机`;错误通道的现行口径只留在代码与该专题技术方案里;
- 删导出面板的【实施计划】与【里程碑】两份计划,落地情况回到技术方案里一句话;
- `docs/README.md` 去掉对上述四份的链接,技术方案里的失败通道段落跟着删;
- `decision-log` 去掉 2026-10-01 那一段,2026-10-05 那段的标题与四条决策改成「同步细节与文案归属」;`pitfalls` 去掉两份 ADR 的引用。
|
2026-10-06 14:32:16 +08:00 |
|
k88936
|
e91abf9875
|
docs(会员): 定案模型列表可用/不可用分桶契约
- ADR 增补修订节:GET /api/llm/models 返回 models + unavailableModels,reason 枚举 plan_required/disabled/unknown,停用优先,不放松服务端强制
- 技术设计 §11.2 改述列表契约为分桶,§11.4 补 llm_catalog.rs 落点、域层分桶方法、AGC 客户端 hover 文案与 ts-rs 单一真源,并刷新落地提交号
- AGC 后台模型别名技术方案补 2026-10-03 修订说明
- AGC 模型目录上游同步里程碑标注「形状不变」已被后续变更取代
- decision-log 追加分桶决策、兼容与客户端口径
|
2026-10-04 13:28:37 +08:00 |
|
k88936
|
cbe6697d03
|
docs(会员): 定案模型权限与并发上限的服务端强制边界
- 新增 ADR「模型权限与并发上限的强制边界」:并发只在认领事务按账号过滤 running job、模型档缺省 Basic、直连同步生成暂不计入
- 技术设计新增 §11,承接并作废 §9/§10 的「只落字段、不拦截」表述
- CONTEXT 修订「模型权限」「并发上限」词条,新增「独立生成任务」
- docs/README 与 decision-log 登记本 ADR 与拷问定案
|
2026-10-04 13:28:09 +08:00 |
|
k88936
|
65b9821d25
|
Merge remote-tracking branch 'origin/master' into feat/pricing-plan
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust crates (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / AI game creator shell web tests (pull_request) Has been cancelled
# Conflicts:
# docs/project-memory/shared-memory/decision-log.md
|
2026-10-04 13:27:20 +08:00 |
|
k88936
|
08020e664b
|
文档:同步客户端 IP 只信 X-Real-IP
- ADR:身份与去重键节写明 IP 取 nginx 覆盖的 X-Real-IP、XFF 只取末段,并追加 2026-10-04 修订记录
- 玩法链路:去重与限流节标注 IP 来源
- decision-log:2026-10-04 条目补安全修正说明与标题
|
2026-10-04 11:39:00 +08:00 |
|
k88936
|
c0148dda7e
|
文档:同步游玩计数关停不强制 flush 与失败丢弃口径
- ADR:修订「正常关停必须 force flush」为关停不做强制 flush,并补充 flush 任一分片失败即丢弃剩余分片;追加修订记录
- 玩法链路:缓冲与延迟改为崩溃/被杀/正常关停都允许丢一个窗口;限流节补充先做内存预检;写入语义补充失败丢弃口径
- decision-log:顶部新增 2026-10-04 修订条目,并给 2026-10-03 条目标注失效项
- docs/README:ADR 摘要去掉「关停 flush」
|
2026-10-04 11:13:55 +08:00 |
|
k88936
|
dfa92607b4
|
Merge remote-tracking branch 'origin/master' into feat/pricing-plan
Project CI / Backend tests (pull_request) Failing after 1m51s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 3m10s
Project CI / Frontend tests (pull_request) Failing after 1m31s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 4m59s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 5m50s
Project CI / AI game creator shell web tests (pull_request) Successful in 2m38s
Project CI / Repository checks (pull_request) Failing after 4m27s
Project CI / Native shell tests (pull_request) Successful in 7m43s
# Conflicts:
# docs/project-memory/shared-memory/decision-log.md
# server-rs/crates/module-runtime/src/lib.rs
|
2026-10-03 20:32:40 +08:00 |
|
k88936
|
7f5ddf8f47
|
文档:新增游戏游玩次数计数 ADR
- 新增 docs/adr/【ADR】游戏游玩次数计数-2026-10-03.md:点开始游戏触发、api-server 纯内存 5s flush、30min 去重、IP+game 限流、批量 procedure 自增 play_count、不 bump updated_at、失败少计优于双计
- docs/README.md:登记该 ADR 到当前产品与平台
|
2026-10-03 17:55:36 +08:00 |
|
k88936
|
14ddf09f30
|
Merge remote-tracking branch 'origin/master' into feat/pricing-plan
Project CI / AI game creator shell Rust crates (pull_request) Successful in 1m28s
Project CI / Backend tests (pull_request) Failing after 53s
Project CI / Native shell tests (pull_request) Failing after 1m33s
Project CI / Frontend tests (pull_request) Failing after 1m2s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 5m43s
Project CI / AI game creator shell web tests (pull_request) Failing after 45s
Project CI / Repository checks (pull_request) Failing after 1m3s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 5m24s
|
2026-10-03 13:36:04 +08:00 |
|
k88936
|
d7d09f310c
|
合并:把 origin/master 并入回合错误重构分支并保留双方行为
- 解决 direct_runtime/mod.rs 冲突:保留本分支 typed 回合错误重构(TurnError/EnqueueError 与 record_direct_codex_failure_facts 拆分),接入 master 的诊断 v3 口径(persist_agent_runtime_error 新签名 + typed error 字段)、prompt 反馈改截断不脱敏、项目写锁改名
- 解决 thread_manager/dispatch.rs 冲突:保留本分支 TurnError/TurnCompletion 换代与 finish_turn_failure 分类层,接住 master 的 tt= 日志改名与 cc 执行器整轮成功后补写 completed 终态
- 解决 direct_tools_mcp.rs 冲突:采用 master 版(本分支唯一改动是 external MCP 容量测试读 body,master 已有等价实现)
- 处理 direct_turn_failure.rs 删除/修改冲突:维持本分支删除,把 completed() 语义迁进 TurnCompletion::Completed 并补回对应测试
- 处理 runtime_driver/entrypoints.rs 修改/删除冲突:接受 master 退役自建 Agent Runtime 的删除(本分支只在该文件做 direct_now_ms 改名)
- 合并 decision-log.md:双方条目都保留
- 修复 auto-merge 漏掉的语义冲突:claude_code_cli.rs 的 direct_now_ms() 改名 now_ms();诊断测试改为断言 AGENT_RUNTIME_ERROR_SCHEMA_VERSION、detail 字段改 message;record_direct_codex_failure_facts 新增 typed_error 入参(TurnError 不序列化,落盘用 classify 投影出的 TurnFailure)
|
2026-10-03 13:12:10 +08:00 |
|
k88936
|
3aef44c54a
|
文档:同步错误投影点改名与逐 delta 脱敏退役现状
- ADR 与 decision-log 里的 TurnError::terminal_failure 改成 TurnError::classify
- pitfalls 的「逐 delta 脱敏吃掉段尾换行」补一条现状:Rust 逐 delta 脱敏已退役,脱敏搬到前端 directThreadSanitize
|
2026-10-03 12:07:42 +08:00 |
|
k88936
|
0ae94caf16
|
修复:更早历史的世代号在渲染期推进,切换项目的守卫不等 effect
- 换项目时 historyLoadTokenRef 与 projectPathRef 同一处推进,复位 effect 不再推进
- 旧读取在「切换提交完成、复位 effect 未跑」的窗口落地时立刻失效,不再合并条目或写游标
- ADR 第 1 条与决策记录说明推进时机与其安全性依据(该窗口内不会新起带旧游标的读取)
Co-authored-by: Junie <junie@jetbrains.com>
|
2026-10-02 22:27:33 +08:00 |
|
k88936
|
2b01476891
|
修复:动画期间内容变高时把回到底部动画重新对准新底部
- 程序化平滑滚动期间布局补偿不再直接跳过:内容变高时以新的 scrollHeight 重发平滑滚动
- 避免动画停在旧目标后 programmaticScrollRef 等不到贴底事件、跟随与补偿整段挂起
- hook 用例断言动画目标从 [1200] 变为 [1200,1500] 且仍能交还控制权
- ADR 第 3 条补一条口径,决策记录补齐本条与错误行结构两条
Co-authored-by: Junie <junie@jetbrains.com>
|
2026-10-02 22:25:47 +08:00 |
|
k88936
|
8f91227d17
|
修复:历史加载错误行的重试按钮移出断言式 live region
- 内联错误行由 <p role=alert> 改为普通容器,role=alert 只包住错误文案本身
- 重试按钮留在 live region 之外,避免被卷进 assertive + atomic 的整体播报
- 组件用例断言 alert 不包含重试按钮,重试仍是可点击的唯一手动出路
- ADR 同步错误行的无障碍结构
Co-authored-by: Junie <junie@jetbrains.com>
|
2026-10-02 22:24:21 +08:00 |
|
k88936
|
9a75ea57f0
|
修复两处过期用例并补记 Direct 失败载荷改名与透传口径
- 修复 direct_tools_mcp 容量用例:handler 已改为返回 Response,改为取出 body 后再断言 JSON-RPC id
- 修复 direct_runtime 命令边界诊断用例:改为断言结构化 sidecar(schemaVersion/source/stage/code/clientTurnId/detail),不再断言早已不落盘的 direct-codex-failure:v2 文案
- AGC 命令错误 ADR 补记 TurnFailure 两个字符串债臂的命名与“terminal_failure 是唯一投影点、不许重包”口径
- 决策记录新增 2026-10-02 条目:两臂改名(SuperErrorFromStringPlusStage / Unclassified)与 typed 失败原样下发
- 排查记录补充:cargo test 过滤是子串匹配,会连带命中 export_bindings 并重写生成目录,用 --skip export_bindings 避开
|
2026-10-02 22:19:36 +08:00 |
|
k88936
|
9f7c2e318c
|
文档:前插锚点改用稳定块身份
锚点契约从「回合 key + 块序号 + 偏移」改为「回合 key + 块身份(data-block-key)+ 偏移」,写明 running→finished 收口后块序号整体后移、序号锚点会解析到隔壁块的原因。
补记锚点块没有布局盒(被折进收起的 details)时读锚点跳过、还原判失败并放弃这次补偿的规则。
备选方案补记被否掉的「锚点存块序号」与「改找同回合其它可见块」,验收清单补「长回合收口时视口不跳」。
决策记录同步同一条决策与测试口径。
Co-authored-by: Junie <junie@jetbrains.com>
|
2026-10-02 20:12:35 +08:00 |
|
k88936
|
a589dad003
|
文档:同步 review 修正后的会话滚动契约
- ADR 第 1 条补「一次加载与它所属的世代绑定」,第 2 条补块集合缓存与失效信号
- 决策记录追加两处内部缺陷的症状、修正与验证口径
Co-authored-by: Junie <junie@jetbrains.com>
|
2026-10-02 19:59:34 +08:00 |
|
k88936
|
97e8f1b652
|
Merge remote-tracking branch 'origin/master' into feat/smoother-dialog-history
Project CI / AI game creator shell Rust crates (pull_request) Successful in 1m50s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 4m30s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 4m51s
Project CI / Backend tests (pull_request) Successful in 4m53s
Project CI / Frontend tests (pull_request) Successful in 2m33s
Project CI / AI game creator shell web tests (pull_request) Successful in 2m27s
Project CI / Native shell tests (pull_request) Successful in 5m47s
Project CI / Repository checks (pull_request) Successful in 3m4s
|
2026-10-02 19:20:53 +08:00 |
|
k88936
|
95a32a316f
|
文档:换会话时复位 DirectProject 滚动所有权
- ADR 新增第 6 条:会话身份作为显式信号复位跟随最新/锚点/胶囊状态,并记录「key 重建列表」的取舍
- 决策记录追加换会话复位的症状、决策与验证口径
Co-authored-by: Junie <junie@jetbrains.com>
|
2026-10-02 19:08:54 +08:00 |
|
k88936
|
e82070098c
|
文档:修订 DirectProject 对话滚动契约
- 补充程序化平滑滚动独占滚动位置的规则:动画期间滚动事件与布局补偿都不得写 scrollTop
- 补充折叠展开「刚好露出新展开正文」的最小位移规则,并明确收起不额外滚动
- 决策记录追加两个真机缺陷的根因、修正与 Chromium 复验结论
Co-authored-by: Junie <junie@jetbrains.com>
|
2026-10-02 18:18:20 +08:00 |
|
k88936
|
c18c73fa2f
|
文档:记录 DirectProject 回合错误命名化、wire 拆分与终态判别联合
- AGC 命令错误 ADR:三条错误表补 DirectProject 现有命名(TurnError / TurnFailure / EnqueueError),并写明"回合终态 TurnCompletion 是宿主内部判别联合,不导出、不进 wire"
- 决策记录新增 2026-10-02 条目:命名去冗余前缀、wire.rs 按职责拆分、宿主终态改判别联合与 TurnCompletion 的落点
|
2026-10-02 18:10:54 +08:00 |
|
k88936
|
5092412d89
|
文档:同步 DirectProject 对话滚动契约与旧口径
- ADR 修正样式删除口径:.message-history-more 因策划对话仍在用而保留,后续项一并说明
- 历史技术方案去掉「必须显示显示更早的对话按钮」的过期要求,改为引用新 ADR 的入口形态
- 决策记录新增本次滚动契约、边界与验证口径
Co-authored-by: Junie <junie@jetbrains.com>
|
2026-10-02 17:54:15 +08:00 |
|
k88936
|
c68531b0aa
|
文档:新增 DirectProject 对话滚动与历史自动加载 ADR
新增 ADR,记录更早历史自动加载、内联加载/错误行、回合 key 锚点前插、回到底部胶囊与折叠展开的滚动契约。
在旧「对话历史单一事实源」ADR 的分页条目上补充指向新 ADR 的引用,保留原分页锚点口径。
docs/README.md 登记新 ADR。
Co-authored-by: Junie <junie@jetbrains.com>
|
2026-10-02 17:27:49 +08:00 |
|
k88936
|
4246052bff
|
合并 origin/master 到 feat/typed-tool-error
- 取 master 退役 DirectProject 工具调用与回合流账本(#560):删除 direct_tool_calls / direct_turn_stream,direct_events 的回合更新收敛为状态与活动,不再广播 game-creator-direct-turn-update
- 取 master 修复 AGC 文件列举被无关临时锁删除打断(#552)与素材导入 / 资源提交项目锁争用(#581)
- 保留本分支 typed 工具错误口径:逐工具错误枚举、派发边界携带原始 error、工具返回不再软失败
- 保留本分支退役 AGC 独立 Agent Runtime / CLI 执行面的删除,继续删掉 master 侧 runtime_actions 等测试与入口
- 补齐 master 新增的 with_conversation_write_contention 测试助手,项目写锁调用统一为 acquire_project_write_lock_with_wait
- 账户素材分页 offset 上限 500 的 schema、预检与行为对齐,越界 offset 返回 typed 错误并适配相关用例
- 错误事件结构体 message 保留调用方原文,脱敏只发生在落盘与应用日志边界
|
2026-10-02 16:18:50 +08:00 |
|
k88936
|
839051f532
|
退役AGC独立Agent Runtime与CLI执行面
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Failing after 1m50s
Project CI / Backend tests (pull_request) Failing after 24s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 1m47s
Project CI / Repository checks (pull_request) Failing after 21s
Project CI / Frontend tests (pull_request) Successful in 2m38s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Failing after 3m41s
Project CI / AI game creator shell web tests (pull_request) Successful in 2m23s
Project CI / Native shell tests (pull_request) Successful in 6m20s
- 删除 agent/runtime_driver、runtime_protocol、runtime_tools、runtime_actions、runtime_state、runtime_adapter、context_compaction、collaboration、delegation、goal 等自建 Runtime 执行面及专属测试与 fixture
- CliCommand 收敛为 LlmStatus | EnvironmentCheck | PreviewServe,删除 --agent-run / --agent-task / --agent-goal-* / --agent-resume / --agent-context-compact 等 CLI 与 Tauri 命令白名单条目
- 外部 Runner 收缩为编辑器桥 RPC 与 runner.attach_gui_owner + GUI owner 参与锁 / watchdog,保留 --agent-runner
- 前端删除 AgentRuntime* / AgentGoal* 状态与命令调用链,移除 agent-runtime real-e2e / steer / smoke / llm-transient-fault 脚本与对应 CI job
- 内置工具错误收口为 typed error,抽取 agent/tool/error.rs 共享错误供各工具复用
- 新增 agent/redaction.rs、runtime_models.rs、json_sidecar.rs、task_lock.rs、process_identity.rs、art_manifest.rs、design_session.rs、direct_events.rs
- 同步更新 ADR、decision-log、Runtime V1.1、App 实施计划、本地开发运维、pitfalls 与 CI 脚本
|
2026-10-02 15:23:12 +08:00 |
|
k88936
|
482af92327
|
文档:泥点三池与会员计费后端方案定稿
- 新增【技术设计】泥点三池与会员计费后端设计-2026-10-02.md:三池投影、会员档位枚举与目录表、账期与补差升级、接口契约、破坏性迁移计划与遗留清理清单
- 新增【实施计划】双余额泥点与会员补差升级-2026-10-02.md:规则细则、与现状差异、里程碑与验收判据
- 新增【ADR】泥点三池以单一总额为权威-2026-10-02.md
- 新增【ADR】会员账期按开通日自然月-2026-10-02.md
- 新增【ADR】会员订单复用充值订单与补差升级幂等锚点-2026-10-02.md
- 新增【ADR】会员档位以枚举为权威-2026-10-02.md
- CONTEXT.md 新增会员档位、会员计划目录、模型权限、并发上限等规范词
- decision-log.md 追加 2026-10-02 双余额与会员计费决策条目
- docs/README.md 新增「钱包与会员计费」文档索引分区
Co-authored-by: Junie <junie@jetbrains.com>
|
2026-10-02 14:06:05 +08:00 |
|
k88936
|
836f8a7348
|
手机号登录401归phoneCodeLoginRejected
- auth_session:/api/auth/phone/login 的 401(只来自「用户不存在」)改判为 phoneCodeLoginRejected{serverMessage},不再冒充「验证码错误或过期」
- auth_error:退役顶层变体 smsCodeRejected(唯一产生点就是这个错配的 401 分支)
- 前端三个 catch 删掉 smsCodeRejected 分支;phoneCodeLoginRejected 文案统一为「验证码登录失败:<服务端原文>」,冒号改全角
- ts-rs 重新生成 ClientAuthError 联合;carrier 用例同步删掉 smsCodeRejected
- 文档:ADR + decision-log 记录 401 归属与 smsCodeRejected 退役
|
2026-10-02 13:35:40 +08:00 |
|
k88936
|
d518bb2ceb
|
文档:系统类失败载荷保留原始错误
- 命令错误结构化 ADR:本机 IO / 网络客户端构建失败的原始 detail 留在载荷(调用方分流与报告诊断用),界面只用固定文案,路径交给报告侧 sanitize
- 认证失败 JS 侧载体 ADR:带 detail 的本机失败是例外,不把原始错误文本贴到界面上
- 决策记录:追加 2026-10-02 口径,取代上一轮"本机 IO 失败不进载荷"
|
2026-10-02 12:06:03 +08:00 |
|
k88936
|
8edbab9f3e
|
文档:本机IO失败去掉detail载荷
- 命令错误结构化 ADR:本机凭据/运行时会话 IO 失败不再把原始错误文本放进载荷,原始 error 只写本地日志
- 认证失败 JS 侧载体 ADR 与决策记录同步去掉 detail 口径,并追加 2026-10-02 的变体改无字段决定
|
2026-10-02 11:51:43 +08:00 |
|
k88936
|
f8c32e6346
|
文档:登录路由429归业务变体
- 命令错误结构化 ADR 补 429 按路由判定的口径:发码是频控、登录是验证码次数耗尽、其余才落未识别拒绝
- 决策记录同步追加 2026-10-02 的 429 归类
|
2026-10-02 11:50:34 +08:00 |
|
k88936
|
62f1a80e87
|
文档:认证失败载体把载荷序列化进message
- 更新 JS 侧载体 ADR:ClientAuthErrorWrapper 构造时把整份载荷 JSON.stringify 进 Error.message,上报事件拿到变体名与载荷,事件指纹按变体区分
- 记录 Tauri 缺陷抛真 Error 时序列化只有 {},但上报链路对真 Error 优先用其自身 message/stack
- 同步决策记录与技术方案的载体口径,不再写 Error.message 留空
|
2026-10-02 11:07:03 +08:00 |
|
k88936
|
f58c71bd68
|
文档:AGC认证失败ADR不再写死 catch 数量
- 「后果与边界」改为「必须同时改所有 catch 的 switch」,避免数量写法随实现漂移
|
2026-10-02 03:02:32 +08:00 |
|
k88936
|
79a5707a18
|
文档:AGC认证失败ADR修正为不改变用户可见行为
- 删除「后果与边界」里不再准确的「用户可见行为」一行(系统失败不是只进错误池)
- 该节改为说明系统变体先按载荷原始事实给一行可见反馈,再原样抛出
|
2026-10-02 02:55:47 +08:00 |
|
k88936
|
9fe692ba87
|
文档:AGC认证错误改为顶层类别加类型化reason
- 更新 AGC 命令错误结构化 ADR:顶层只放调用方要分流的类别,可枚举细分收进类型化枚举 reason 字段,不再拆成几十个顶层变体、也不用字符串
- 更新 AGC 认证失败 JS 侧载体 ADR:带载荷分支先 as 取具名类型,reason 是枚举时再 switch(payload.reason),两处 default 都用 expectNever
- 同步错误报告技术方案、README 索引、决策记录与踩坑的拍平变体口径
|
2026-10-02 02:42:15 +08:00 |
|
k88936
|
47392d13b8
|
文档:AGC认证错误收敛为拍平变体
- 更新 AGC 命令错误结构化 ADR:变体拍平不嵌套,无字段变体生成 { type },有字段变体生成 { type } & 载荷类型
- 记录本地前置校验拿不到细分事实时不编字段,phoneNumberInvalid 保持无字段
- 更新 AGC 认证失败 JS 侧载体 ADR:无字段分支用固定文案,带载荷分支先 as 再读 serverMessage/status/detail
- 更新错误报告技术方案与 README 索引,同步拍平变体与去 reason 口径
- 同步决策记录与踩坑:ts-rs 只写不删,变体改成无字段时要手动清孤立载荷文件
|
2026-10-02 02:23:51 +08:00 |
|
k88936
|
2a51f0b98c
|
文档:认证失败载体类改名 ClientAuthErrorWrapper
- ADR、README、技术方案、决策记录与排障记忆统一新类名
- auth_session.rs 注释同步
|
2026-10-02 01:40:14 +08:00 |
|
k88936
|
45774f1c02
|
文档:认证失败载体的 error 字段标注 ClientAuthError 类型
- ADR、技术方案、决策记录同步 error 字段的显式类型标注
|
2026-10-02 01:37:37 +08:00 |
|
k88936
|
218fba95b0
|
文档:认证失败载体收敛为只持 error 字段的薄包装
- ADR 认证失败载体:ClientActionError 只保留 error 字段,不读 message、不塞 context、message 留空
- 技术方案与决策记录同步载体形状与 error.error 分流
- 排障记忆:判据改为全局 unhandledrejection 显式上下文
|
2026-10-02 01:35:10 +08:00 |
|
k88936
|
19c75e8167
|
文档:认证失败 JS 侧载体改用已有 ClientActionError
- ADR 认证失败载体:删除手写 ClientAuthFailure 类,拒绝装进 ClientActionError,cause 即判别联合
- ADR 命令错误结构化:同步第 3 节对 JS 载体的描述
- 技术方案:认证命令封装形态改为 ClientActionError + cause
- 决策记录:影响范围去掉 clientAuthFailure.ts
- 排障记忆:载体、判据与关联文件路径同步
|
2026-10-02 01:22:55 +08:00 |
|
k88936
|
35f10c2051
|
文档:认证错误包装改为信任 ts-rs 映射,不做运行时形状嗅探
- ADR §2 去掉 type 存在性检查:Rust 与 TS 同包发布、形状由 ts-rs 保证,异常形状属 Tauri/Rust 缺陷,仍由 switch 的 default 抛出去上报
- requireInvoke 移到 try 之外,认证桥未安装的错误保持原样抛出
- Error.message 只从拒绝值读可展示字符串,不是分流判据
- ADR §1 记录保留 19 个具名载荷类型的理由:它们是每个分支 as 的目标;内联 struct 变体虽能少 19 个文件,但分支就拿不到可 as 的具名类型
|
2026-10-02 01:11:01 +08:00 |
|
k88936
|
c940bf502c
|
文档:修正认证 ADR 对系统变体分支的描述
- 说明系统变体不读载荷、只原样抛出,但变体名必须逐个列出以让 default: expectNever 成立
- 业务 / 会话变体仍要求每个 case 用 as 取具名载荷类型
|
2026-10-01 20:49:43 +08:00 |
|
k88936
|
478b9c9891
|
文档先行:AGC 认证失败的 JS 侧载体与抛出时机
- 新增 ADR:认证命令统一经 invokeClientAuth 把结构化拒绝转成 ClientAuthFailure(payload 判别联合);判定只写在 catch 子句里,系统变体原样抛出经 unhandledrejection 入池,default: expectNever 编译期挡住漏接变体
- 修订【ADR】AGC命令错误结构化与错误报告口径 §3 与后果:撤销"未识别变体上调是故意的",改为编译期穷尽
- 技术方案同步认证命令的封装形态与两个 ADR 链接
- decision-log / pitfalls 记录第二轮口径:删除形状读取与文案回落层、Rust 失败不再降级成字符串
- docs/README.md 登记新 ADR
|
2026-10-01 20:33:47 +08:00 |
|
k88936
|
2f51e043b7
|
文档先行:AGC 认证错误的 TS 形状改为每个变体一个具名载荷类型
- ADR §1 增加"每个变体一个具名载荷结构体 + ts-rs 生成 `{ type } & X`"的决策与代价
- ADR §3 说明 switch 分支里错误已窄化成具名类型
- 技术方案同步命令错误形状描述
- decision-log / pitfalls 记录形状约定:不手写这层类型、不再包派生分类与提示文案函数
|
2026-10-01 18:08:00 +08:00 |
|
k88936
|
b561db9249
|
删除认证失败上报的派生分类层,改为调用方按具体变体分流
- 删除 clientAuthErrorKind / clientAuthErrorNotice,clientAuthError.ts 只留 isClientAuthError 形状读取
- 删除 resolveClientAuthFailure 与 ClientAuthFailureResolution,AuthenticatedClient 直接 switch 具体变体名
- 同步重写相关单测与 ADR 第 3 节前端分流描述
|
2026-10-01 17:55:54 +08:00 |
|
k88936
|
8fefd393b2
|
Merge remote-tracking branch 'origin/master' into fix/wrong-report
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust smoke (pull_request) Has been cancelled
Project CI / AI game creator shell Rust crates (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / AI game creator shell web tests (pull_request) Has been cancelled
# Conflicts:
# docs/project-memory/shared-memory/decision-log.md
|
2026-10-01 16:51:37 +08:00 |
|
k88936
|
bb9b0b4d6c
|
文档对齐:AGC 报告池入口改为调用方带上下文交付
- 修订 ADR §2/§3:真故障由调用方包成 ClientActionError 交给错误池,不再把 rejection 留在无人接手的 Promise 上
- 说明 408/5xx/网络判定发生在调用方 catch,shouldCaptureClientError 随本 ADR 删除
- 同步技术方案、decision-log、pitfalls 的重抛口径与影响文件清单
|
2026-10-01 15:24:42 +08:00 |
|