Skip to content

refactor(provider,agent-do,server-worker,bb): #434 删除 infra 部署默认逻辑——业务纯函数化,配置全显式,无隐式默认值 - #441

Merged
Samuka007 merged 2 commits into
mainfrom
lane/433-bug-discover-models-deployment-seed-omp
Oct 6, 2026
Merged

Samuka007 merged 2 commits into
mainfrom
lane/433-bug-discover-models-deployment-seed-omp

Conversation

@Samuka007

Copy link
Copy Markdown
Owner

Closes #434 (absorbs #433). Owner 裁决落地:显式声明=唯一配置来源,缺配置=具名 fail-closed,绝不静默合成。

逐点核销

  1. catalog.ts omp 合成行删:缺目录/坏目录=空 providers + decodeError 打点;声明缺 running 行不再 prepend 假行;defaultProviderId 收敛为声明 defaultProvider(string | null),first-key 兜底删
  2. MODEL_RELAY_MODEL 未设:rig 两处 ?? "glm-5.3" → 具名错误
  3. threads.ts ?? "omp" 哨兵删:无显式选择走声明默认;无声明默认 → 422 provider_default_undeclared(RelaySelectionError 新码)
  4. provider-catalog.ts 哨兵语义删:严格命中目录行;哨兵时代存量 "omp" → provider_unknown(点⑧不迁移,响亮失败)
  5. execution-options / project defaults:空目录=空列表 / null defaults(bb 存储缺省形态)
  6. CRUD display face 只列用户行:seedProviderConfigRows 删、wire 删 source 字段、seed id GET :id=404;omp reserved 守卫保留(哨兵时代 journal 不可复活);bb 半 PR:Samuka007/bb cap/434-configured-user-rows-only(空态指针 Server 节),本仓 pin→4e13558d4
  7. keyless 行级 mock 降级删:providerFor 具名 credential 错误;部署通道 mock 保留(relayMode 如实投影)
  8. 存量 D1 omp 行不迁移:L1 断言严格命中下 provider_unknown
  9. 扫尾:ask interaction providerId 改由 turn journal execution 派生(无 journal="unknown");?? "omp"/?? "glm-5.3" 代码兜底清零(声明/fixture 除外;HARNESS_DEFAULTS 为边界保留的部署通道声明)

验收证据

  • 未配置部署:execution-options 空 providers;建线程具名 422(L1 system-execution-options / thread-execution-selection)
  • 配置部署:rig 声明目录下全链行为不变(L1 全绿)
  • 测试全改写为 fail-closed 断言;@cap/agent-do 582 例、@cap/provider-app、@cap/server-worker 308 例本地全绿;typecheck 绿
  • 附带修复:migrations-replay 探针行清场(type=local 泄漏使共享 worker /hosts 500,文件序翻转即复现)

CI:双仓跑绿后关票由 PM 执行。

…务纯函数化,配置全显式,无隐式默认值

owner 裁决(#434,吸收 #433):显式声明=唯一配置来源;缺配置=具名
fail-closed,绝不静默合成。逐点核销:

① provider-app catalog.ts:删 omp 合成行(synthesisFromHarness +
   SYNTHETIC_PROVIDER_ID)与声明缺行时的 wire-truth prepend——缺目录/
   坏目录=空 providers + decodeError 打点;defaultProviderId 收敛为
   声明 defaultProvider(string|null),删 first-key 兜底
② agent-do worker.ts(rig):MODEL_RELAY_MODEL 未设=具名错误(两处
   ?? "glm-5.3" 兜底删)
③ server-worker threads.ts:删 ?? "omp" 哨兵——无显式选择走声明默认,
   无声明默认=422 provider_default_undeclared(execution-selection
   validate 恒返回,RelaySelectionError 新增该码)
④ agent-do provider-catalog.ts:resolveRelaySelection 删 omp→default
   哨兵映射,严格命中目录行;哨兵时代存量行=provider_unknown(⑧)
⑤ execution-options/projects defaults:空目录=空列表/null defaults
⑥ provider-configs.ts:删 seedProviderConfigRows——CRUD display face
   只列 D1 用户行;wire 删 source 字段;seed id GET :id=404;omp
   reserved 守卫保留(哨兵时代 journal 不可复活);bb 半 PR
   cap/434-configured-user-rows-only(空态指针 Server 节)pin→4e13558d4
⑦ relay-registry:keyless 行级 mock 降级删——providerFor 具名 credential
   错误(部署通道 mock 保留,relayMode 如实投影)
⑧ 存量 omp 行/线程不迁移:严格命中下响亮 provider_unknown(L1 断言)
⑨ 全仓扫尾:agent-do ask interaction providerId 改由 turn journal
   execution 派生(无 journal="unknown"),不再常量写 omp

测试:合成/兜底断言全部改写为 fail-closed 断言(catalog/relay-registry/
provider-config/execution-options/projections/selection L1 全链);L1 rig
声明 rig 目录(受配置部署形态),unconfigured 面局部 unset;migrations-
replay 探针行清场(type=local 泄漏使共享 worker 的 /hosts 500)。

Ref #434 (absorbs #433)
@Samuka007
Samuka007 force-pushed the lane/433-bug-discover-models-deployment-seed-omp branch from 6c02d3a to 5b55974 Compare October 6, 2026 19:40
@Samuka007
Samuka007 merged commit 0b66622 into main Oct 6, 2026
2 checks passed
@Samuka007
Samuka007 deleted the lane/433-bug-discover-models-deployment-seed-omp branch October 6, 2026 19:47
Samuka007 added a commit that referenced this pull request Oct 6, 2026
* fix(server-worker): #441 服务令牌空 sub 过 claims 解析——identity 字段宽容空值+principal 真值链+打点 lint 模板化+回归测试

* docs(ops): Access gate 401 三段事故复盘——会话无关正本(#438-#442 修复链)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[refactor] 删除 infra 部署默认逻辑——业务纯函数化,配置全显式,无隐式默认值(owner 裁决)

1 participant