AIDAWORK / ARCHITECTURE

AidaWork 系统运行全景

独立图页 ↗
机制说明(SoT)图是辅读 · 结论以说明与证据为准

AidaWork 由三个仓库协作:aida-agent(服务端控制面与执行)、aida-desktop(客户端,Main 进程承载本机能力与 PluginHost)、aida-plugins(插件协议、SDK 与不可变包)。本页是地图。

本页可直接往下读完整机制说明,不需要「演示 / 播放故事」。术语不熟先看 术语表。

先读机制说明,结论以说明与证据为准 · 基于固定代码版本核验 · 部署状态另行确认

机制说明(全文)

AidaWork 系统运行全景

AidaWork 由三个仓库协作:aida-agent(服务端控制面与执行)、aida-desktop(客户端,Main 进程承载本机能力与 PluginHost)、aida-plugins(插件协议、SDK 与不可变包)。本页是地图。

新人第一站

  1. site-runtime(「整站运行」) — 整站怎么跑:三仓归属 → 一轮用户话 → 本机/云端 → Pack×Edition 口径 → 信任门 → 失败落点。站点首页。
  2. enterprise-tour-narrative — 从一条企业任务看懂控制面 / 权威 / 六步主路径。
  3. 本全景与系统拓扑图继续当地图用。先读机制说明,结论以 NOTES + evidence 为准。

读图约定

  1. 钉点 SHA:catalog 三仓 commit 为准;工作区新于钉点先升钉再改 NOTES。
  2. 现状 ≠ 默认开 ≠ 生产启用:有实现 ≠ 开关默认开 ≠ 正式环境已开。
  3. 未实现分栏/分色:如 write-authority tip vs #255/#257;跨所有非 Chat 入口的统一 Command/Activation 尚未完成。禁止缺口画成已落地。
  4. 行号过期:evidence:check 失败则改 NOTES 或记 ATLAS-DEBT.md;本轮不大扫、不重做站岗 bot。
  5. 辅图:仓外 aidawork-step-diagrams 可链读;权威仍是仓内 NOTES + evidence。

三仓怎样协作

一次企业任务从客户端进入 Agent。Agent 组织会话、执行准备、模型循环与工具分发;工具需要本机能力时跨到 Desktop Main,PluginHost 在这里管理插件 Worker。Plugins 仓提供协议、SDK 与不可变包,包本身并不持有服务端任务状态。

读图时先沿请求箭头走到执行宿主,再沿状态关系寻找恢复依据。Run 记录当前执行状态与 lease,Interaction(IX,交互生命周期)管用户输入,展示投影用于呈现这些事实。Chat direct/routed 共用 runtime-work-v1 持久受理与 RunExecutionWorker;省略协议头只改变观察回执形式,不选择另一条执行通道。显式 runtime-v2.1 已拒绝(426),不是仍可启用的文本路径。runtime-v2/ 目录与 hostAdmission / RUNTIME_HOST_CONVERGENCE 已退役(历史开关,见 ATLAS-DEBT),不能用旧目录名或旧开关名推导切流状态。

证据与范围

  • aida-agent · packages/agent/src/runtime/README.md · 准入、执行与观察边界 · e2adc9a3c325
  • aida-desktop · apps/desktop/electron/plugin-host/plugin-host.ts L1–59 · 4346d79eb364
  • aida-agent · packages/agent/src/execution-host/router.ts L50–80 · ExecutionHostRouter · e2adc9a3c325
  • aida-agent · packages/agent/src/session/run-store.ts L658–688 · UPDATE agent_runs · e2adc9a3c325
  • aida-agent · packages/agent/src/shared/interaction-kernel-state.ts · INTERACTION_STATUSES · e2adc9a3c325
  • aida-agent · packages/agent/src/runtime/work/run-work-admission.ts · bindAdmittedWork(runtime-work-v1 默认绑定)· e2adc9a3c325
  • aida-agent · packages/agent/src/index.ts · executionWorker.start · e2adc9a3c325
  • RUNTIME_HOST_CONVERGENCE / hostAdmission:历史已退役,钉点源码中已删除;勿再当启用开关。说明见 runtime-v2-status 与 ATLAS-DEBT.md。

结论来自固定版本的静态源码与合同阅读;实现存在、默认开关和生产启用分别判断。本站代码证据面板列出声明状态与具体限制。

机制主题索引

Desktop 组补充 local-file-v5(path-free Local File V4;独立 LF 协议版本已并入 Desktop 协议 v3;关联 local-executor / desktop-runtime)。执行与交互补充 prompt-llm、digital-employee-skills、message-center。目录与证据钉见 site/catalog.json。

理解主题加深(2026-09-11):上列六题各增视图与证据(≥5 claims);目录与证据钉见 site/catalog.json。

失败链

六项理解主题的触发→检测→持久化→效应→恢复链见 FAILURE-CHAINS.md(2026-09-11)。

理解入口与 Runtime 对照

  • site-runtime — 整站运行(首页);三仓 / 一轮话 / 本机vs云端 / Pack×Edition / 信任门 / 失败落点(2026-10-29)。
  • enterprise-tour-narrative — 一条企业任务;理解型六步图;链到 e2e / 权威 / LF / 写权限 / Runtime。
  • runtime-v2-status — 当前 Chat Work 统一受理、Worker 执行与已退役文本协议;调度器/Child 等入口仍保留自身驱动,不能据目录统一推导全入口迁移。

写权限链(2026-10-09)

  • write-authority — 交互与恢复组:确认卡授权 → 写前 outcome 行 → VerifiedWriteAuthority 执行器内 CAS 消费 → 派发 → 读回结案;孤儿 Run 走 manual_recovery。tip 已有与 #255(写前声明总合同)/ #257(授权闸·凭证闸分离)未实现分列。交叉:state-authority、local-file-v5、vertical-plugin-mount、trust-boundaries。

agents 配置流水线(2026-09-16)

  • agent-config-pipeline — agents 配置如何经 resolveAgent → resolveAgentPipeline(Live Model / Capabilities / Prompt / Policy)注入 orchestrate;旁挂唯一生效热切换与 Child 收窄。交叉:control-plane、prompt-llm、capability-plugins、desktop-client。

时间盒与材料面(2026-09-11)

  • time-bounds — 墙钟/TTL/配额合同上界(非 multi-instance scaling)。
  • interaction-materials — Interaction 材料全家桶:Kernel / batch / critical-fields / inbox·投影 / 聊天附件分界。

产品叙事 / 会前口径(2026-10-29)

  • product-narrative — 对内材料口径:延期非单一技术债;MSP ≠ 单纯多租户(原中台算薪运维等能力入产品);难在 Windows + VMS + MSP Edition 同时稳;Pack×Edition;客户名内外分轨。非 tip 源码事实。

钉升流水与历史钉点见 CHANGELOG.md。

术语表

每条一两句人话,括号里是出处主题;结论仍以各主题 NOTES + evidence 为准。按新人阅读时大致遇到的顺序排列。

术语 人话解释 出处
三仓 aida-agent(服务端)、aida-desktop(客户端)、aida-plugins(插件协议 / SDK / 不可变包) PANORAMA
整站运行 站点首页主叙事:三仓归属 → 一轮用户话 → 本机/云端 → Pack×Edition 口径 → 信任门 → 失败落点 site-runtime
Main / Renderer Desktop 的两个进程层:Main 持有本机执行上下文、绝对路径和 PluginHost;Renderer 只呈现服务端事件和本地草稿 desktop-client、local-file-v5
Gateway Agent 的入口层:处理请求身份、租户上下文和会话绑定(SessionBinding) aida-agent
SoT(Source of Truth) 真相来源:某类事实唯一的写入权威;恢复只读 SoT state-authority
投影(Projection) 给界面看的读模型,例如 SSE 事件流、Desktop 本地仓;不能反写 SoT state-authority
Work / runtime-work-v1 chat 提交被受理成的一份「原工作」,是默认工作绑定(bindAdmittedWork) runtime-v2-status
Run 一次执行的持久化记录(agent_runs),带状态和 lease state-authority
lease Run 执行期间持有的租约:先获取、中途续期、做完释放;过期后可被接管或进入恢复 state-authority、enterprise-task-e2e
Interaction(IX) 交互生命周期:需要用户确认或补充信息时由 InteractionKernel 创建,任务挂起等待 interaction-lifecycle
settle 用户提交后,Kernel 校验回答人和答案并写结算;只有 accepted + resolved 才带恢复事件 enterprise-task-e2e
continuation IX 结算后再次 resolveAndRun 让任务接着跑的那一步 enterprise-task-e2e
outbox 结算后待执行的续跑记录;聊天轮次本身不授权业务效应,唯一执行路径是 Kernel 结算后的 Outbox continuation write-authority
厚控制面 / 薄执行切片 控制面管会话、准备执行、IX 结算、lease / 账本、恢复;执行切片只跑有界的模型 + 工具轮次(常称 ReAct 环) control-plane
ExecutionHostRouter 工具分发路由器:advertise / dispatch / reconcile / cancel;能力上可接多种宿主,钉点上 AgentRun 只为 server-read 建 enterprise-task-e2e
singleflight 同一调用(callId + bindingDigest)不会被并发派发两次 enterprise-task-e2e
possibly_sent 派发结果不确定的状态;先 reconcile 核对,禁止盲重试 enterprise-task-e2e
LF(Local File) 本机文件能力:架构族名 V4,wire 不带绝对路径(path-free);独立的 protocol 5 / local-files-v5 已删除,现随 Desktop 协议 v3(DESKTOP_PROTOCOL_VERSION = 3) local-file-v5
LE(Local Executor) 本机执行器宿主,本机能力调用完成后把结果交回 Agent local-executor
CAS 比较并交换:写前一次性消费授权,status='approved' 才能改成 executing write-authority
manual_recovery / RUN_ORPHANED lease 过期且还有未确认写操作的 Run 进入人工恢复;Run 级恢复不重放写 write-authority
426 硬门 协议 / 能力不匹配时直接拒绝(fail-closed),例如 LF 426 不创建 Run trust-boundaries
SSE 服务端推送事件流,Desktop 用它观察进度;不是成功与否的依据 enterprise-tour-narrative
LLM_BUSY 模型调用排队满或等待超时时返回的背压错误(ProviderLimiter) scaling-roles
钉点 结论所依据的三仓固定 commit;有实现 ≠ 默认开启 ≠ 生产启用 PANORAMA
MSP 产品口径(2026-10-29):原中台 / 既有算薪运维能力沉淀(算薪运维、复杂考勤、多客户账单)装入 AidaWork 的交付面;≠ 单纯多租户包装。验收要分清通用助手 vs 进月结经办 product-narrative
VMS(产品包语境) 客户侧业务场景(入职 / 人事等垂直);与 MSP 并列构成「VMS/MSP 产品包」。技术身份链路另见 auth-tenant product-narrative、auth-tenant
Pack × Edition 标准 Pack × 有界客户 Edition;AidaWork = VMS/MSP 产品包。技术装配 / 订阅见 agent-config-pipeline(ADR-0096) product-narrative、agent-config-pipeline
会前口径 2026-10-29 对内材料与延期叙事:先稳桌面(尤其 Windows),再核 VMS/MSP 路径;非 tip 源码事实 product-narrative

AidaWork 图集

钉点 e2adc9a3c325 / 8eecd12081db / a142b0a664c4(2026-10-28)

  • Schema tip aida-config-dev-2026-10-28-conversation-turn-queue(187 Credits → 188 远程 Desktop 设备 → 189 本地租户管理员 → 190 文档转换原件消费者 → 191 会话 turn FIFO 队列)。共享库 187–191(及此前 184–186)执行未核实。
  • ADR-0097(Proposed):非 VMS 租户目录收窄;D1-2a 已合入(forRouting + 已核验零业务 scope 时跳过 Pack、只装配本地/Plugin);D1-2b / D2 暂缓。
  • ADR-0098(方向 Accepted / 实施待批):可回访待办卡;STA-193 止血(只读旁问优先与既有等待前台 Root 收口;非新增 parked 归属)已合入,其余 DDL/生产者接入未批。
  • 安装即授权(Desktop):去掉 PluginExecutionGrantStore;无目录选择的插件调用直接放行;可随时发新消息。
  • Plugins:publish:all 编排发布,状态写入 OSS(与 Desktop 发布桶对齐)。
  • 大量 VMS/recruit/payroll/UI/IAM 业务修复:无边界变化则不入图。

新人第一站:site-runtime — 整站运行(三仓归属 → 一轮用户话 → 本机/云端 → Pack×Edition → 信任门 → 失败落点)。一条任务深读见 enterprise-tour-narrative。系统全景 / 拓扑见 PANORAMA;dense 时序仍在 enterprise-task-e2e。

产品叙事 / 会前口径(2026-10-29):product-narrative — 延期框架、MSP 纠正(≠单纯多租户)、Pack×Edition、通用/业务能力拆分;产品定位,非 tip 源码事实。

主题分组、顺序与关联由网站目录统一生成;详细权威关系见同目录 PANORAMA。site/catalog.json 的 home 指向 site-runtime。

新增理解入口:

  • site-runtime(2026-10-29)— 整站运行首页;三仓 / 一轮话 / 本机vs云端 / Pack×Edition 口径 / 信任门 / 失败落点;理解型 workflow
  • enterprise-tour-narrative(2026-10-09)— 一句话定位 → 控制面 vs 执行面 → 权威矩阵一行 → 六步主路径 → 深挖 LF / 写权限 / Runtime;特效默认关
  • runtime-v2-status 增补 compare 视图与 tip/默认/Hard Cut 分栏 NOTES

新增配置链路主题(2026-09-16):

  • agent-config-pipeline — agents 配置 → resolveAgent 门控 → resolveAgentPipeline(Live Model / Capabilities / Prompt / Policy)→ orchestrate;Admin 唯一生效热切换与 Child 收窄;钉点 Agent tip e2adc9a3c325

新增写权限主题(2026-10-09):

  • write-authority — 授权(ToolCallGate / registerAuthorization)→ 写前声明(businessEffects.start)→ 一次性消费(markExecuting CAS)→ 派发 → 读回 → 孤儿 Run;对照 LF fs/change、PluginCallJournal、ExecutionHostRouter;#255 / #257 只列为未实现目标

更早加入的主题

新增时间与材料主题(2026-09-11):

  • time-bounds — 模型/工具/LF TTL(~1800s)/OCR/配额时间盒(非扩缩容);旁挂 observability-map / FAILURE-CHAINS
  • interaction-materials — Save As / critical-fields / business effect batch / inbox·投影 vs Kernel;澄清 vs 聊天 LF 附件

加深理解主题(2026-09-11):

  • enterprise-task-e2e — 端到端主路径 + tool-branch;失败/成功对偶 fail|ok-host / fail|ok-ix / fail|ok-lease-mid
  • state-authority — SoT 矩阵 + recovery;失败/成功对偶 fail|ok-lease / fail|ok-concurrent
  • storage-planes — 三平面 + migrate;失败/成功对偶 fail|ok-schema / fail|ok-atomic
  • cold-paths — 冷路径前门 + when-runs;失败/成功对偶 fail|ok-gate / fail|ok-strip
  • vertical-plugin-mount — salary-smartcalc + call-receipt;失败/成功对偶 fail|ok-plugin-settle / fail|ok-manifest
  • trust-boundaries — 信任边界 + layers;失败/成功对偶 fail|ok-426-lf / fail|ok-426-ix / fail|ok-426-runtime
  • observability-map — 诊断码 → 产出面 → DB/本机文件/排障入口

失败/成功链总索引:FAILURE-CHAINS.md。排障地图:observability-map/NOTES.md。

新增机制主题(2026-09-10):

  • local-file-v5 — Desktop+Agent path-free Local File(族名 V4;独立 LF 协议版本已并入 Desktop 协议 v3);视图 wire-drift / cutover-deploy 为 v4→v5 清仓的历史快照
  • message-center — 通知读模型(PG + pg_notify,非业务 SoT)
  • prompt-llm — 七段 assembleSystemPrompt 与 DbModelRouter
  • digital-employee-skills — DE 编制门、User vs Bundled Skill、记忆门控旁路

运维备注:ATLAS-DEBT.md(critical-fields visual-check soft-pass 根因与口径)。

当前钉点

Agent 7f2e519936b5 · Desktop 4346d79eb364 · Plugins a33ce3733365(Docs d777a4b536e6;以 site/catalog.json 为准)。相对上一钉 d7974dcc37c0 / fb3e4fdfd5a2 / d220086aa495 的架构变化(Agent ~157 / Desktop ~255 / Plugins ~57):

  • 本机工作台续进:模型入口图片输入(STA-269);Desktop OCR/图片附件入模;澄清卡 pending 修复;run_python 默认开与限额;发布 0.2.10。
  • ADR-0100 / ADR-0101:工作台文档 OCR/识别/转换无确认(/api/local-workbench/documents/*);trajectory tool←model 归属与 unknown 后恰好一次 completed|failed 收口。
  • 领取公平:ADR-0095 附录——策略读取失败暂停新 claim。
  • 插件版本:aida-cli 0.3.13、Python SDK 2.3.0、attendance 2.1.38;requires.desktop 回放与 object-root 参数。
  • 写权限/turn-queue 形式化:Sync 仍钉 agent e2adc9a3c325(覆盖文件相对 tip 有实质 diff,本轮不推进)。
  • 大量 VMS/recruit/Data/IAM/attendance 业务修复未入图;共享库迁移与 Computer Use 真机等旧债仍显式保留。

逐次钉升流水见 CHANGELOG.md。

产品叙事 / 会前口径(2026-10-29)

性质:产品定位与对内材料口径,来自负责人转述的会前讨论结论(2026-10-29)。
不是 tip 钉点源码事实;本页无 code evidence。与运行机制交叉时,以各主题 NOTES + evidence 为准。
对外/站内文案不点名既有 skill 仓路径;统称「原中台 / 既有算薪运维能力沉淀」。

延期怎么对老板讲

不是单一技术债。AidaWork 被当成「企业级 Agent」在做,范围远超「本地 Agent + 业务抽象」。AI 写码验证慢、返工重。

交付顺序应对齐:

  1. 先稳住本地 / 桌面(尤其 Windows)
  2. 再核验关键 VMS 与 MSP 业务路径

技术落点见 desktop-client、desktop-runtime;VMS 身份 / 租户见 auth-tenant。

MSP 定义(纠正)

MSP ≠ 单纯多租户包装。

MSP = 原中台 / 既有算薪运维能力沉淀(算薪运维、复杂考勤、多客户账单等),现在必须装进 AidaWork 交付。老板侧若以为通用助手已能做——要讲清验收门槛:

档 含义
通用助手 能聊、能查、能草稿;不等于进月结经办
进月结经办 写操作人工确认 + 来源系统回读 + 带色审计底稿

「写确认 + 回读」与 tip 写权限链相邻,但验收口径 ≠ 已证代码完备;机制见 write-authority。

多实例配额 / 租户公平见 scaling-roles——那是运行扩缩与桶配额,不是 MSP 的产品定义。

方向对,难在打包

把上述中台能力做成 AidaWork 能力——方向正确。难,是因为三件事要同时稳:

  1. Windows 本地能力
  2. VMS 客户场景
  3. MSP 多客户运营(租户隔离、固定 duty key、按客户 Edition 模块)

对内材料口径(2026-10-29)

能力拆分(对外讲法)

面 内容
通用能力 理解异构源、规则引擎、质量门禁、桌面 / Agent;多模态解析 + 代码级计算;四态交付 + 带色审计底稿
业务能力 算薪运维、复杂考勤、多客户账单

桌面一键 / Agent 自然语言路由同一套能力。

产品包

AidaWork = VMS / MSP 产品包(标准 Pack × 有界 Edition)。

技术侧:产品目录仓库所有、租户订阅 / Edition 可写,见 agent-config-pipeline(ADR-0096)与 enterprise-task-e2e(ADR-0097 D1-2a)。本页只定产品口径,不另证装配实现。

读 entitled-local-catalog 等图时:卡片上的「本机」指桌面本机路径,不要把 MSP 读成「单纯多租户」或「离线版」。

客户名 vs 行业代称

  • 内部标杆:可用真实客户名(追觅 / MOVA、奥托立夫、联想深圳、复宏汉霖、经纬恒润、国家电投 / 山东核电、启云方、哔哩哔哩、萌电)
  • 投资人对外:仍用行业代称

与运行机制主题的边界

主题 关系
site-runtime 整站运行首页;本页产品口径在此旁挂
enterprise-tour-narrative 一条任务理解入口(控制面 / 账本);本页是产品定位
desktop-client · desktop-runtime 「先稳住桌面尤其 Windows」
auth-tenant 租户隔离 / VMS 身份;≠ MSP 定义
scaling-roles 多实例与租户配额;≠ MSP 产品定义
agent-config-pipeline Pack / Edition 技术装配
enterprise-task-e2e Pack 装配 / ADR-0097;勿把 MSP 读成单纯多租户
write-authority 写确认 / 回读机制;与月结经办验收相邻

未核实 / 本轮不做

  • 不升 tip 钉、不新画边界图(无新边界故事)。
  • 「四态交付」「duty key」「带色审计底稿」的代码级映射本轮未核实(产品用语;要对齐 tip 另开主题)。
  • 不把外部 pitch HTML 当 SoT。
  • 既有 skill 仓路径不入对外 / 站内文案。

失败链 / 成功链索引

Stanley 要求「失败链一条条挖」:每条链按 触发 → 检测 → 持久化 → 客户端效应 → 恢复/重试/死胡同 读,钉在固定 commit。成功对偶按 触发 → 受理 → 持久化 → 客户端效应 → 完成。下表链到主题视图规格。

# 失败链 成功对偶 主题 一句话(失败 / 成功)
1 fail-host ok-host enterprise-task-e2e dispatch catch → reconcile 禁盲重试 / host completed → delivery=completed
2 fail-ix ok-ix enterprise-task-e2e expire/cancel/reject / settle accepted→resolved+resume
3 fail-lease-mid ok-lease-mid enterprise-task-e2e RUN_LEASE_LOST/BUSY / acquire→renew→release 全程持有
4 fail-lease ok-lease state-authority recover→manual_recovery/BUSY / 持 lease 写终态并释放
5 fail-concurrent ok-concurrent state-authority 第二写者拒 / 单写者+合法 parseBound 落账
6 fail-schema ok-schema storage-planes schema assert fail-fast / assert 通过后启动
7 fail-atomic ok-atomic storage-planes corrupt/LEGACY_DROPPED / AtomicJson status=ok 原子写
8 fail-gate ok-gate cold-paths 名单/lifecycle 拒 / 齐备后进入实现
9 fail-strip ok-strip cold-paths memory strip / memoryEnabled 保留工具
10 fail-plugin-settle ok-plugin-settle vertical-plugin-mount journal uncertain / settle succeeded+parseBound
11 fail-manifest ok-manifest vertical-plugin-mount PLUGIN_TASK_UNAVAILABLE / 投影命中唯一候选
12 fail-426-lf ok-426-lf trust-boundaries Desktop 协议≠3 → 426 DESKTOP_UPGRADE_REQUIRED 整次阻断 / 协议=3 创建 Run
13 fail-426-ix ok-426-ix trust-boundaries 头不接受短路 / 头=2 进入 Kernel
14 fail-426-runtime ok-426-runtime trust-boundaries 协议串不匹配 / runtime-work-v1 放行

排障地图:observability-map(诊断码 → 产出面 → DB/本机文件/面板)。

时间盒(超时/TTL/配额上界,非扩缩容):time-bounds。

钉:aida-agent e2adc9a3c325 · aida-desktop 8eecd12081db · aida-plugins a33ce3733365。

Atlas 站点债务(运维备注)

钉升 7f2e519936b5 / 4346d79eb364 / a33ce3733365(2026-11-06 SGT tip sync)

  • evidence:自 d7974dcc37c0/fb3e4fdfd5a2/d220086aa495 机械升钉;版本钉与行号重定位。
  • 仍未核:共享库迁移 187–191+184/185/186;authorized-folders-v4;Computer Use 真机;ADR-0093 #2;formal-verification Sync 仍 e2adc9a3c325;垂域业务未入图。

产品叙事 2026-10-29(钉点不变)

  • 已入 NOTES:会前口径 / MSP 纠正 / Pack×Edition;无 tip 证据、无新图。
  • 显式未核(产品用语→代码):「四态交付」「duty key」「带色审计底稿」尚未映射到 tip 合同或主题;要对齐另开主题,勿从本页反推已落地。
  • 对外文案持续避开既有 skill 仓路径名;站内用「原中台 / 既有算薪运维能力沉淀」。

钉升 e2adc9a3c325 / 8eecd12081db / a142b0a664c4(2026-10-28 21:30 EDT)

  • evidence:机械升钉;约 778 条三仓引用按 symbol/excerpt 重定位;失败项改写(RUNTIME_WORK_PROTOCOL→runtime-work-identity.ts、prepareExecution→chat-work-prepare、identity→schema-metadata.ts、插件 grants 删除→安装即授权、admission rejection 迁到 shared schema)。
  • 仍未核 / 显式债务:共享库是否已执行迁移 187–191(及此前 184/185/186);authorized-folders-v4.json 仍无迁移;Computer Use 真机 macOS/Windows 授权+截图未跑;ADR-0093 #2(无本机载荷 Run 工具集合为空)未逐项核;attention API 仍无 Desktop 调用方;ADR-0098 除 STA-193 止血外的 DDL/生产者接入未实施;远程 Desktop 真机登记/租赁未跑;Credits 生产配额是否开通未核;大量 VMS/recruit/payroll/UI/IAM 业务修复未逐项入图。

全部 update(2026-10-25 21:15 EDT / 2026-10-26 09:15 SGT,钉点不变)

  • 在站岗升钉(4fcc939)基础上补五张边界时序图,并纠正「仍无生产者」与 computer-use「声明 linux-x64」两处错误。
  • 仍未核 / 显式债务:共享库是否已执行迁移 186(及 184/185);authorized-folders-v4.json 仍无迁移;Computer Use 真机 macOS/Windows 授权+截图未跑;ADR-0093 #2(无本机载荷 Run 工具集合为空)未逐项核;attention API 仍无 Desktop 调用方;大量 VMS/recruit/payroll/UI 业务修复未逐项入图(无架构边界变化则只保留 claim,不发明图)。

钉升 2141b561dc97 / 236252f2fdc3 / 77d3090b5d9a 复核(2026-10-25 20:49 EDT)

  • evidence:机械升钉后按 symbol 重定位(约 138 条);改写/新增 claim:后台生产者 MR6-B/C/D、迁移 186、ADR-0092 完成态、ADR-0096、computer-use、mail-archive、邮箱授权边界。
  • NOTES:对应主题与入口钉点/CHANGELOG 已改写;约 79 条证据块行号按 symbol 重定位。
  • 未核 / 未入图:共享库是否已执行迁移 186(及此前 184/185);Computer Use 真机 macOS/Windows 授权与截图链路;authorized-folders-v4.json 无迁移(仍属上轮遗留);大量 VMS/recruit/payroll/UI 业务修复未逐项入图;图几何与视图 id 未改。

critical-fields visual-check soft-pass

根因:Archify 在 pipe-Chrome + CDP 路径上对部分重图(观测到 critical-fields)会因主线程忙碌导致 Runtime.evaluate 饿死,触发 viewer/visual-check-runtime。同一产物用 Playwright + HTTP 的站点集成检查仍可通过。

站点侧 scripts/browser.mjs 在重试后若错误码仅有 viewer/visual-check-runtime,记为 chrome-runtime-flake soft-pass,并继续跑 site integration。不要把 soft-pass 当成图内容(节点/边/卡片语义)失败。

Archify visual-check.mjs 已对 pipe Chrome 跳过 Archify.whenStable(注释写明 critical-fields 观测)。本仓优先文档化;仅在有明确耐久收益时再做小改,不重写 Archify 内核。

wire-drift 视图口径

见 local-file-v5 NOTES:视图是对齐 + 清仓快照,挂在 local-file-v5 下,不是独立「开放 drift」主题。

tip 2026-09-22:cold-paths Archify 文案滞后 — 已清理(2026-10-09)

fail-gate / ok-gate / when-runs 已去掉现行 hostAdmission 节点;主图 HOST_CONVERGENCE 节点已改为 durableText(runtimeProtocol)。卡片注明已退役。若其它主题仍出现旧开关名,SoT 仍以各主题 NOTES + evidence 为准。

write-authority「未核实」两项 — 已核实(2026-10-09)

缺凭证后 outcome 收尾、Desktop 离线 / fs/change 写回收:已钉 tip 源码给出结论(未实现 / 走另一条链+Agent TTL 缺口),见 write-authority/NOTES.md;不再留「未核实」。

cold-paths fail/ok-gate·strip 纵向溢出 — 已压缩(2026-10-09)

四视图压到 viewBox≈560、减消息与卡片,目标 visual-check 硬 pass(不改 browser soft-pass 规则)。

读图约定与轻量漂移(2026-10-09)

入口 NOTES / PANORAMA 已钉「现状 ≠ 默认开 ≠ 生产启用」与行号过期处理。本轮不重做站岗 bot。

已知可记债、非阻塞理解:

  • cold-paths Archify hostAdmission / 主图 HOST_CONVERGENCE 文案:2026-10-09 已清理。
  • write-authority 两项「未核实」:2026-10-09 已钉源码结论。
  • cold-paths fail/ok-gate·strip 纵向 soft-pass:2026-10-09 已压缩求硬 pass。
  • overview / 部分 NOTES 历史段落仍可能写旧钉点短 SHA;以 catalog repositories 与各主题证据块为准。
  • 仓外辅图 /workspace/aidawork-step-diagrams 未迁入本仓;链读即可。

NOTES 证据块旧钉 77fe76838aa4 升钉(2026-10-14)

NOTES「证据与范围」中 86 条 aida-agent 引用原钉 77fe76838aa4,已逐条对 c47b25bf88b8 Git blob 复核(evidence/*.json 原已在 c47b,不受影响):

  • 78 条升钉:10 条原行号内容不变;8 条内容整段平移,改行号;57 条按 symbol 在新 blob 定位,改行号并确认 symbol 落在范围内;run-work-admission.ts 2 条原无 symbol 且内容已变,改钉 L15–56 · bindAdmittedWork(与 PANORAMA 一致)。另有 admission.ts 1 条:原范围 L112–120 本身不含 admitDigitalEmployeeTurn,改为 L90–120。
  • 8 条无法升钉(保留旧钉并就地标注「历史引用」):docs/architecture/{lifecycle-map,auth,digital-employee-admin,prompt-system,message-center}.md 已在 aida-agent 44d63e20(docs: retire architecture snapshots in favor of current code)删除,钉点无此文件。涉及 desktop-client、ledger-authority、harness、chat-workflow-bt、auth-tenant、message-center、digital-employee-skills(2 条)。这些主题的结论另有代码引用支撑,但对应文档段落的说法未在 c47b 复核。
  • 复核方式:机械比对 blob 文本与 symbol 位置;未做逐条语义重读(行为是否随代码变化仍需人工复核)。

图内字号偏小 / 演示按钮(2026-10-14,未在站点层解决)

  • 默认缩放下图内文字渲染约 8–9px(导览、overview)。实测 Archify viewer 把 SVG 固定在约 930px 宽,与 iframe 宽度无关(1440 与 1920 视口相同),所以站点模板改不了;要改需改 viewer 运行时,属于固定上游副本,普通内容维护不改内核。临时办法:主题页图下方已直接渲染机制说明全文,读者不必依赖图内小字。
  • 「演示 / 播放故事」按钮也来自 viewer,站点层没有隐藏;页首提示已写明「不需要演示 / 播放故事」。

钉升 7babdd215d1f / 0d19b3f8af7e / 5544709d588c 复核(2026-10-14 晚)

  • evidence/*.json 477 条三仓引用:363 条行号内容不变,92 条整段平移改行号,21 条按 symbol 重新定位;1 条(169_employee_lifecycle_cancellation_operations.sql)文件已改名为 170,整条 claim 按新事实重写。
  • NOTES 证据块 307 条:218 不变、55 平移、19 按 symbol 定位;5 条原本就指错(capability.ts 里没有 protocolVersion / local-files-v5 / Submitted attachments,run-work-admission.ts L1–80 无 symbol),已改指 shared/generated/local-files-v4.ts L5–6、assemble-submitted-attachments.ts、bindAdmittedWork。
  • 10 条无法复核,就地标「历史引用」:docs/architecture/lifecycle-map.md、docs/architecture/backend-admin.md、aida-agent / aida-desktop CONTEXT.md 在上一钉点和当前钉点都不存在(早已删除,之前漏标)。涉及 desktop-client、desktop-runtime、interaction-lifecycle、interaction-materials、local-executor、storage-planes。
  • 复核方式同上:机械比对 blob 文本与 symbol 位置;新增的 reply_user / 插件冻结 / 迁移 / 交付端口 / run_recovering 结论为本轮人工读代码所得。其余业务修复提交(VMS、薪资、考勤、离项结算、路由)未逐项判断是否影响现有图。

迁移编号矛盾已解决(2026-10-14,agent 931951dc69be)

上一条复核记下的「171/173/README 对 170、172 预留说法互相矛盾」已由 aida-agent !219 统一:角色按租户迁移预留 172(尚未提交、尚未执行)。剩余:docs/migration-drafts/rollback/170-role-capability-answer-DOWN-DRAFT.sql 与 tenant-resource-tiers-DRAFT.sql 仍写 170,README 说明正式提交时改为 172;资源档位草案执行前需 Max 确认。storage-planes 中对应 claim 已改写为已解决状态。

钉升 00bb88a84b63 / ae37b0944cf5 / 8cff57b90005 复核(2026-10-15 21:05)

  • evidence/*.json 495 条三仓引用:407 条文件未变,24 条文件有改动但范围内容不变,55 条整段平移改行号,8 条范围内容有变但 symbol 仍在范围内(逐条人工确认结论仍成立;其中 run-store.ts 4 条改指新范围 L1897–1932 / L1897–2000 / L1897–1986),1 条(plugins/aida-cli/plugin.json 版本 0.3.8)随版本升到 0.3.10 改写。
  • NOTES 证据块 345 条:277 条文件未变、15 条范围内容不变、26 条平移、6 条内容有变但 symbol 在范围内(run-store.ts 2 条改指新范围,其余 4 条结论不变保留)、21 条为历史引用;其中 interaction-materials 的 docs/architecture/message-center.md 此前漏标,本轮补标「历史引用」。write-authority 正文 4 处行号原本就偏(business-effect-task-continuation.ts L2492、main.ts L3850、local-file-operation-store.ts L220、run-store.ts L1877+),已对新钉改正。
  • aida-agent 本地为浅克隆(shallow 边界在 7525f1f5),git log 931951dc69be..origin/master 只列 11 条;实际差异按 git diff 与合并父提交 4fde16b4 判断,约 50 条提交。
  • 本轮人工读代码新增:过期卡任务树关闭(state-authority / interaction-lifecycle / write-authority)、Desktop「结束原任务」与「已收到答复」展示、Linux 平台与 safeStorage(desktop-client / trust-boundaries)、参数契约漂移(observability-map)、同名独立 Skill 跳过插件选择(vertical-plugin-mount)、aida-cli 结构化参数(capability-plugins)。
  • 未核实 / 未入图:Linux 包是否另有发布渠道、生产是否已发;safeStorage 策略未在真实 Linux 桌面运行;过期卡关闭守卫的生产命中率;MR-6a~6g 垂直 pack 迁移只确认现有引用平移可解析,未逐个判断是否值得单独成图;招聘 / VMS / Offer / 考勤业务修复未逐项判断。图(Archify JSON)本轮未改。

站会跟进(2026-10-16 SGT)

  • safeStorage:代码证据已补(策略 / Main 接线 / 凭证库 / 单测 file:line)。未在真实 Linux 桌面运行,未跑 Desktop 单测——等 Stanley 真机验证,不记为通过。
  • MR-6a~6g:已逐个读 diff,结论为行为不变的 verticals/ 搬家,不单独成题、不画图;约定与证据记入 vertical-plugin-mount。残留 child-run-orchestrator.ts L2758 recruit 字面量。

钉升 a3d56d1b0e2e / d7bb57ea1141 / eff845fd1d15 复核(2026-10-19 08:55 SGT)

  • evidence/*.json 原 540 条三仓引用:298 条范围内容不变,205 条整段平移改行号,37 条范围内容有变。其中 29 条按 diff 映射到新范围,symbol 仍在范围内,逐条读过结论仍成立(index.ts 会话存储那条收窄到 L1092–1100);8 条按新事实改写或删除:aida-cli 版本 2 条、Linux 发布 2 条(原「未接通」改为已接通)、.gitlab-ci.yml 已删 1 条(移除引用并改写结论)、提交观察日志 1 条、schema identity 2 条。新增 4 条 claim、19 条引用:迁移 174/176/177(storage-planes)、VMS 账号权限唯一来源(auth-tenant)、确认写入重试收窄(write-authority)、插件「始终允许」(trust-boundaries)。
  • NOTES 证据块约 390 条:204 条不变、128 条平移、34 条按 diff 映射(有 symbol 的都在范围内);19 条历史引用 / 同名文件无法自动定位,对应文件在两个钉点之间无改动;16 条 symbol 标签本来就不在所引范围内(迁移号、类名等宽松标注,上一钉点即如此),本轮未改。
  • 两个本地克隆(aida-agent、aida-desktop)都是浅克隆,git log 旧钉..新钉 计数不可信;变化按 git diff 与 first-parent 合并读。
  • 本轮人工读代码新增:Linux 发布链路(desktop-client)、迁移 174/176/177 与 identity(storage-planes)、VMS 唯一来源(auth-tenant)、重试收窄(write-authority)、插件始终允许(trust-boundaries)、观察日志尽力落盘(desktop-client)。
  • 未核实 / 未入图:177、176 在各环境是否执行(177 未执行的库上新 Agent 会拒绝启动);AIDA_IAM_VMS_SOT 等开关各环境是否打开;生产是否已发 Linux 包;子任务原子终止、识别失败收口、租户覆盖层只看了提交说明,未逐项判断是否要改图;VMS / 账单 / 考勤等业务修复未逐项判断。图(Archify JSON)本轮未改。本轮未跑三仓自身测试。

钉升 85546c2d37ea / a79bdcaac3ff / eff845fd1d15 复核(2026-10-19 21:15 EDT / 2026-10-20 09:15 SGT)

  • evidence/*.json 原 559 条三仓引用:252 条文件未变,25 条文件有改动但范围不变,161 条整段平移改行号,118 条范围内容有变,3 条所引文件已删(business-task-agent-harness/harness.ts)。范围有变的条目里,约 60 条按 diff 映射到新范围、symbol 仍在范围内,逐类读过结论仍成立;其余随 35 条 claim 改写换了引用(协议 v3 / 426、Local File 常量、握手、Skill 管理、超时、提示段、Harness、迁移 178、缺凭证收尾等)。新增 12 条 claim。现 612 条引用。
  • NOTES 证据块约 390 条:163 条文件未变、15 条范围不变、108 条平移、54 条按 diff 映射(symbol 在范围内)、24 条随正文改写换引用、21 条为历史引用(文件在旧钉即不存在);另修正 7 条本轮平移后 symbol 落在范围外的引用(plugin-host.ts PluginHost / taskProjections、chat-routes.ts RUNTIME_EXECUTION_PROTOCOL、local-file-v4-tool.ts ttlSeconds、orchestrator-runtime.ts resolveAndRun)。仍有 8 条 symbol 是宽松标注(迁移号、read 等,所引文件两钉之间无改动或改动与标注无关),上一钉点即如此,本轮未改。write-authority 缺口段里 2026-10-12 的旧行号作为「旧记录」保留,不再指向现行代码。
  • Agent 侧有两份编号都是 0090 的 ADR(0090-desktop-protocol-v3-and-retired-local-primitives.md 与 0090-skill-turn-recognition-failure-is-retryable.md),本站引用前者。
  • 未核实 / 未入图:
    • 迁移 177、178 在 150 / 202 / 任何共享库都没有执行记录(migrations/README.md 尚无 178 条目);未依次执行的库上本钉点 Agent 会因 identity 不符拒绝启动。
    • Desktop 协议 v3 的跨端验收:两个 ADR 都写明未运行 Desktop Electron / E2E / System / Pair;本站也没有跑。旧 Desktop 遇到 426 后的升级提示 UI 未逐条核对。
    • Desktop write-state 升级风险(静态推断,见 storage-planes 未核实 claim):旧版会在版本 3 文件里写出 protocolFeatures,新版遇到即判 corrupt 且整份解析;残留记录是否真会出现、corrupt 后如何处置未核实。
    • business_task_agent_turn_outbox 表仍在 DDL 与启动必需清单,源码已无写入方,是否计划删除未见记录。
    • Desktop 删除面(原语、Full access、FileGrant 等)依据 ADR 与提交说明,未逐文件核对。
    • TLA+ 模型本轮未运行 TLC,结果取自仓内 results/summary.txt。
    • Linux 真机:Skill 平台加入 linux 与 Linux 发布链路仍未在真实 Linux 桌面运行。
    • 本轮未跑三仓自身测试;ADR-0090 记载的 Agent 全量测试为 176 失败 / 23 文件(作者称改动前基线可复现)。

钉升 d4f252c559a8 / 5bba0a2f3c57 / eff845fd1d15 复核(2026-10-20 21:05 EDT / 2026-10-21 09:05 SGT)

  • evidence/*.json 原 612 条三仓引用:391 条文件未变,181 条范围内容不变(原地或整段平移),39 条范围内容有变(按 diff 映射,其中 12 条人工改范围:chat-routes.ts 协议门、write-state-persistence.ts LEGACY_DROPPED / read、atomic-json-store.ts、LF executor.ts、authorized-folder-authority.ts),1 条 symbol 失效(schema identity 字面量,随 claim 改写)。Desktop local-executor-service.ts 改名 local-execution-gateway.ts,引用改指新文件。范围有变的条目逐条读过;随 15 条 claim 改写换了引用(ADR-0093 协议门、迁移 179、加密信封、改名等),新增 8 条 claim。现 657 条引用。
  • NOTES 证据块约 400 条:260 条文件未变、105 条范围不变、25 条按 diff 映射或人工改范围、10 条为历史引用(文件在两钉均不存在,保持原样)、1 条随正文改写(178 段的 identity 引用移到新的 179 段)。另有 4 条迁移号宽松 symbol(113 / 114 / 115)沿旧状。
  • 仍有两份编号都是 0090 的 ADR(0090-desktop-protocol-v3-and-retired-local-primitives.md 与 0090-skill-turn-recognition-failure-is-retryable.md),本站引用前者;ADR-0093 只修订前者 D4 的 chat admission 一项。
  • 未核实 / 未入图:
    • 迁移 177、178、179 在 150 / 202 / 任何共享库都没有执行记录(migrations/README.md 仍无 178 / 179 条目;179 头注释写明共享部署需单独授权);未依次执行的库上本钉点 Agent 会因 identity 不符拒绝启动。
    • ADR-0093 状态仍是 Proposed,但代码已合入;移动端客户端本身、设备登记 / 吊销不在范围内。ADR 第 2 条(无本机载荷的 Run 本机工具集合为空)本站只读了 ADR 描述与 chat-routes / request-schemas,未逐条核对 resolveLocalFileV4ToolBinding / buildLocalExecutorRuntime 的空集合路径。
    • Desktop 加密信封升级路径(静态推断):旧明文 write-state-v4.json 不满足迁移条件(win32、含待用确认、非本账号、带 protocolFeatures 等)时写状态整体不可用;旧明文 authorized-folders-v4.json 不再读取、未见迁移代码。实际是否会发生、如何处置未核实;未在真机跑。
    • ADR-0092 路由迁移未完成:router.ts 仍有措辞续接(continuationFromRecentMessages 等),本站未逐条判断哪些规则已迁。
    • Work 展示账本跨 Run successor 的处理:提交说明写明既有 provider attempt guard 拒绝 completed / continued Root,尚无自然语料验收,交由独立 issue;本站未核对。
    • 诊断轨迹:Agent 侧 runtime-work-capture.ts(约 1000 行)与 Desktop desktop-local-resource-capture.ts 只读了入口与限额,未逐段核对采集内容是否只含公开字段。
    • business_task_agent_turn_outbox 仍在 DDL 与启动必需清单,源码无写入方。
    • TLA+ 模型本轮仍未运行 TLC。本轮未跑三仓自身测试,也未运行 Desktop Electron / E2E / System。

钉升 9b78ef6261a2 / 15a50c5c7369 / eff845fd1d15 复核(2026-10-21 20:55 EDT / 2026-10-22 08:55 SGT)

  • evidence/*.json 原 657 条三仓引用:441 条文件未变,156 条范围内容不变(原地或整段平移),58 条按 diff 映射(逐条读过;多数是 chat-routes 改用 rejectRequest / unavailable 指标包装造成的行移),2 条 symbol 失效人工改(identity 字面量、tenantCapFilter 移入 run-claim-quota.ts)。随 claim 改写 / 新增(迁移 180–185、ADR-0094 / 0095、配额桶、后台无生产者、指标 / attention / work-stop、Admin 收窄、Linux 发布、写状态退役)现 706 条,全部指向新钉且 symbol 在范围内。
  • NOTES 证据块约 430 条:298 条文件未变、80 条范围不变、32 条按 diff 映射、10 条为历史引用(两钉均不存在,保持原样)、2 条随正文改写;4 条迁移号宽松 symbol(113 / 114 / 115)沿旧状。
  • 本轮关闭 / 收窄的旧债:
    • 「177、178、179 无执行记录」——已收窄:migrations/README.md 记有 150 执行 178、179、181、182(2026-10-21),202 在 179 identity 上执行 181(重试)、182、183;184 / 185 无任何记录;README 177 段仍写「未执行」、另一行「150:未执行」与执行记录矛盾,本站按执行记录写、标为文档滞后。
    • 「Desktop 旧明文写状态升级路径」——已解决一半:代码改为退役不导入(write-state-v4.legacy-retired.json);旧明文 authorized-folders-v4.json 仍无迁移 / 退役代码。
    • Linux 发布链路:代码已有 generic feed 与固定下载地址;生产是否已发、AppImage 自动更新是否走通未核。
    • ADR-0093 无头放行:已画 ok-chat-headerless。
  • 仍未核实 / 未入图:
    • 迁移 184、185 在任何共享库都没有执行记录;未执行到 185 的库上本钉点 Agent 因 identity 不符拒绝启动。ADR-0094 仍是 Proposed,ADR-0093 仍是 Proposed(代码已合入)。
    • 后台工作 background_work.v1 无生产者:Work carrier 领取与 direct 领取都排除后台桶,MR6-A(!302)已合入但只有合同与策略,MR6 后续未见 MR / 分支;后台硬上限路径目前不会被生产流量走到。
    • ADR-0093 第 2 条(无本机载荷 Run 的工具集合为空)仍未逐条核对工具绑定的空集合路径;图里只写「Run 无本机执行载荷」。
    • Desktop 是否已接 GET /api/work/attention:本钉点 Desktop 源码未见调用;指标在各环境是否采集未核。
    • ADR-0092 路由迁移未完成(router.ts 仍引用 continuationFromRecentMessages);Work 展示账本跨 Run successor;诊断轨迹采集内容逐段核对——均沿旧状。
    • business_task_agent_turn_outbox 仍在 DDL 与启动必需清单,源码无写入方。
    • TLA+ 模型未运行 TLC;未跑三仓自身测试,未运行 Desktop Electron / E2E / System,未在真机验证 safeStorage / Linux 包。

补漏复核(2026-10-21 21:20 EDT / 2026-10-22 09:20 SGT,钉点不变)

  • 逐提交审阅 138 个(Agent 119 = 81 普通 + 38 merge;Desktop 19 = 13 + 6),架构相关 31 个;上一轮漏写的项已补入 9 个主题(见 CHANGELOG),evidence 现 764 条引用、NOTES 约 490 条,均指向钉点且 symbol 在范围内(4 条迁移号宽松 symbol 沿旧状)。
  • 仍未核实:
    • 后台工作「无生产调用方」是静态 grep 结论;MR6 合入后需重核。
    • VMS 表单描述工具在各租户是否挂载;AIDA_ENVIRONMENT、VMS Admin 登录开关、AIDA_ADMIN_VMS_PLATFORM_ADMIN_ROLES / AIDA_ADMIN_VMS_TENANT_ADMIN_ROLES 的环境配置;租户覆盖层与资源档位草案是否执行。
    • 工作台澄清复核由 LLM 判定,只核对了合同与校验,未跑判例。
    • 本轮 routing 修复(f5222c010 / e76845124 / b9ce82c11 等)是否都符合 ADR-0092「只否决 / 收窄 / 补参数」未逐条判断。
    • directoryIdentityDigest 要求先发 Agent 后发 Desktop;实际发布顺序未核。

继续核查(2026-10-21 21:45 EDT / 2026-10-22 09:45 SGT,钉点不变)

  • 已核:
    • ADR-0092:19 个 routing / llm-classifier 修复逐个判定,没有用原文正则 / 短语选能力;3 处第 4 条灰区(主分类内多一次 reviewAllFileTargets、考勤填报借 missing_input_reread 通道复核目标、HR 只读快捷入口硬编码)记在 enterprise-task-e2e,待 ADR owner 判断。
    • 后台工作生产者:GitLab(只读)MR6 只有 !302(MR6-A)已合入,没有 MR6-B / C 的 MR 或分支;origin/master 975c42720 仍无生产调用方。
    • directoryIdentityDigest:git 上 Agent 先合入 12 秒,Desktop v0.1.62 起带字段;Desktop 无版本协商,旧 Agent schema 严格。
    • 202 环境:仓库内人工记录显示 VMS Admin 登录开关与两份白名单已开、IAM 配置已迁 Nacos、tenant_adaptations 已建;2026-10-11 时 202 未声明 AIDA_ENVIRONMENT。
    • 工作台澄清:桩 LLM 单元测试 12 / 12 通过。
  • 三仓默认测试(钉点副本 /workspace/testrun,git clone --shared + pnpm install --frozen-lockfile,不连库、不跑 Electron E2E):
    • Agent:pnpm test(先按 CI gate 构建 tool-client)——@aida/agent 1252 文件 / 22614 通过、0 失败;tool-client 577 通过;web 326 通过;@aida/agent-eval 2 失败(index-cli.test.ts 子进程要 @aida/agent 的 dist,默认测试前没构建),其后的 boundaries / golden 未跑。
    • Desktop:pnpm test——14 文件 / 90 用例失败、6802 通过;失败集中在托管 Python 运行时未下载、macOS 专用路径(/private/tmp)、Linux 原生文件后端不可用,未逐条归因。
    • Plugins:pnpm test——contracts 19 / protocol 24 通过;plugin-cli 51 / 52,Python create pins the SDK shipped by the workspace 失败(CLI 模板写 aida-plugin==2.0.1,SDK 已是 2.0.2,是产品漂移);链式脚本就此停止,python-sdk / plugins / examples / typecheck 未跑。
  • 仍未核实:生产及 202 以外环境的 AIDA_ENVIRONMENT、VMS Admin 开关与白名单、Nacos 当前值;资源档位草案在各库的实际状态;describe_vms_form 在各租户是否挂载;Agent 部署时间(无发布 tag);真实模型下的工作台澄清判例。

钉升与内容变更流水

钉升(2026-11-06 tip sync / 全量)

Agent d7974dcc37c0 → 7f2e519936b5 · Desktop fb3e4fdfd5a2 → 4346d79eb364 · Plugins d220086aa495 → a33ce3733365(Docs 保持 d777a4b536e6)。

  • Agent(~157):STA-269 工作台图片入口;ADR-0100/0101;claim fairness 策略失败暂停领取;aidadata/IAM session proof;VMS/recruit 业务修复未入图。schema identity 仍 conversation-turn-queue。
  • Desktop(~255):工作台 OCR/图片、澄清 pending、run_python 默认开、artifact 引用、0.2.10。
  • Plugins(~57):attendance 2.1.36–2.1.38;aida-cli 0.3.13 / SDK 2.3.0;requires.desktop;object-root 参数。
  • 证据:机械升钉 + 行号重定位;版本钉改写。未新画必选视图(保留既有 attendance 深潜)。
  • formal-verification Sync 仍钉 e2adc9a3c325。

钉升与插件架构同步(2026-11-03 tip sync)

Agent 9542399f0060 → d7974dcc37c0 · Desktop 986b55d69f3f → fb3e4fdfd5a2 · Plugins ea65d3ca0d62 → d220086aa495 · Docs 7a8f209844ea → d777a4b536e6。

  • Agent:本地工作台 Plugin 调用身份合同(STA-221 plugin-local-execution.ts,enterprise_agent / local_workbench 双 owner 与 executionDigest);精确成功读取后消费待执行步骤(plugin-next-action.ts,写操作或缺参不释放 continuation / nextAction 义务);待审阅任务受限只读旁问(plugin-side-query.ts);内部 Preview 免签名发布校验(loadPreviewReleasePublisher / official-distribution/preview/v1/);文件拆分重定位(chat-business-task-admission.ts、resource-policy-limits.ts / resource-policy-resolver.ts、api-body-limit-middleware.ts、local-file-failure-history.ts)。
  • Desktop:本地工作台原生插件视图与工具闭环(createLocalPluginProvider、LocalPluginTaskInteractions、LocalPluginView、PluginHost.executeLocal(local:executionId));移除 directory-output / directory-batch / manual-batch 及 plugin-execution-approval.ts(PluginExecutionApprovalGate);PluginCallJournal.settle 在 !dispatched 落盘失败时显式抛 PLUGIN_CALL_JOURNAL_UNAVAILABLE(禁返回未持久化 failed 回执,配套 PluginCallOnce.tla);Windows Python MAX_PATH 260 预算预检(assertPluginPythonPathBudget / PluginPreparationError);连接 suggestedBaseUrl 与已配置连接 HTTP origin 复用(plugin-connection-target.ts);视图动作复用(pluginToolAllowsOrigin(tool, 'ui'));aida-session 邮箱连接状态读取 Desktop 邮箱账号列表。
  • Plugins:aida.mail-archive 重构为通用邮箱插件 aida.mail(新增 read_message 正文读取与 save_attachment 任务 Artifact 保存,移除目录归档与自带 UI);attendance-tally 2.1.16 边界收敛(task_provider.py 55 行纯路由、准入前确定性拒绝 calculation_rejection.py 与 AdmissionOutcome.tla、工作簿/回执状态去冗余约减三成、suggestedBaseUrl);CLI --unsigned-preview 内部预览发布通道。
  • 视图与证据:更新 plugin-run-projection/plugin-view-and-batch、trust-boundaries/mailbox-connect、capability-plugins/main、plugin-v2-host-runtime/plugin-end-to-end-trace 四张 Archify 图及对应 NOTES/MERMAID;全站 48 个主题证据升钉重定位并补充最新插件架构 claim。

钉升(2026-11-01 站岗 / tip sync)

Agent edc396052f26 → 9542399f0060 · Desktop a6cbb1e1af36 → 986b55d69f3f · Plugins a142b0a664c4 → ea65d3ca0d62。

  • Agent(213):ADR-0099 应用访问边界部分合入(application-route-catalog);历史入项权威/proposal 匹配与私有确认收紧;Python Runner 管理面;路由/读选择源归属与多垂域修复(未入图)。
  • Desktop(66):STA-188 续办不带客户端 capabilityId;STA-213 make_docx 投影;STA-210 异常落盘;发布通道隔离;本地副作用一次执行验证。
  • Plugins(89):条件产物声明 SDK 校验;attendance 访谈台账与发布签名;mail-archive authorizing 说明。
  • 证据:机械升钉 + symbol/行号重定位;改写 ADR-0097 fresh 目录调用点至 application-route-catalog;NOTES/CHANGELOG 叙事对齐。未新画必选视图;旧债(共享库迁移执行、Computer Use 真机、ADR-0093 #2 等)仍保留。

整站运行主叙事入口(2026-10-29 09:25 EDT,钉点不变)

Agent e2adc9a3c325 · Desktop 8eecd12081db · Plugins a142b0a664c4(未升钉)。

  • 新增 site-runtime:自解释「整站运行」——三仓谁拥有什么、一轮用户话路径、本机/桌面 vs 云端 Agent、VMS/MSP Pack×Edition 口径(MSP≠单纯多租户)、信任/鉴权硬门、失败落点索引。理解型 workflow;不新造边界几何,深挖链到既有主题视图。
  • site/catalog.json:home → site-runtime;newcomerRoute 第 1 站改为「整站运行」;原「从一条企业任务看懂」顺延为第 2 站。
  • 交叉:PANORAMA / NOTES / GLOSSARY;enterprise-tour-narrative、product-narrative 入口说明。
  • 未升 tip;product Pack×Edition 仍标产品口径(evidence 一条 unverified + limit)。

产品叙事 / 会前口径(2026-10-29 09:16 EDT,钉点不变)

Agent e2adc9a3c325 · Desktop 8eecd12081db · Plugins a142b0a664c4(未升钉)。

  • 新增 product-narrative/NOTES.md:对内材料口径——延期非单一技术债;MSP ≠ 单纯多租户(原中台算薪运维 / 复杂考勤 / 多客户账单入产品);难在 Windows + VMS + MSP Edition 同时稳;通用/业务能力拆分;Pack×Edition;客户名内外分轨。明确标注为产品叙事,非 tip 源码事实;无新 evidence claim。
  • 纠正:enterprise-task-e2e/entitled-local-catalog 现状卡片「MSP 本机」→「桌面本机」(避免把 MSP 读成部署口味 / 单纯多租户)。
  • 交叉:入口 NOTES / PANORAMA / GLOSSARY;enterprise-tour-narrative、agent-config-pipeline、enterprise-task-e2e、scaling-roles 旁挂链接。
  • 未核:四态交付 / duty key / 带色审计底稿的代码级映射;不把 pitch HTML 当 SoT。

钉升(2026-10-28 21:30 EDT / 2026-10-29 09:30 SGT)

Agent 2141b561dc97 → e2adc9a3c325 · Desktop 236252f2fdc3 → 8eecd12081db · Plugins 77d3090b5d9a → a142b0a664c4。

  • Agent(223 条 / 75 first-parent):迁移 187–191 与 tip identity conversation-turn-queue;LLM Credits 受理;远程 Desktop 设备目录;本地 tenant_admin;文档转换原件消费者;会话 turn FIFO 队列。ADR-0097(Proposed,D1-2a 合入)与 ADR-0098(方向 Accepted,STA-193 止血已合入、其余待批)。IAM subject/permission gateway、install-trust 服务端配合、mail 读恢复、Skill 插件范围、旁问等。大量 VMS/recruit/payroll 业务修复未入图。
  • Desktop(160 条):安装即授权(删除 execution-grants);原生路径 / Full access;mail 读恢复与旁问;Skill 受限 Plugin 协商;顺序报告;0.2.2–0.2.4 发布(未入图);开发者设置默认值(未入图)。
  • Plugins(7 条):publish:all + OSS 状态迁移;aida-cli dry-run/断点相对化;attendance-tally UI SDK 同步(未入图)。
  • 改写主题:storage-planes、auth-tenant、enterprise-task-e2e、trust-boundaries、desktop-client、desktop-runtime、scaling-roles、observability-map、plugin-bundle-release、state-authority、local-file-v5,以及入口 NOTES。新增时序图:storage-planes/turn-queue、desktop-runtime/remote-device、enterprise-task-e2e/entitled-local-catalog。
  • 证据:机械升钉 + symbol/excerpt 重定位;改写/新增 claim 覆盖 187–191、Credits、远程设备、turn queue、ADR-0097/0098、安装即授权、publish:all。共享库迁移执行与 Computer Use 真机等旧债仍显式保留。

全部 update(2026-10-25 21:15 EDT / 2026-10-26 09:15 SGT,钉点不变)

Agent 2141b561dc97 · Desktop 236252f2fdc3 · Plugins 77d3090b5d9a。站岗已升钉并写 NOTES/evidence;本轮把边界变化补进图,并纠正两处事实错误。

  • 新增时序图:scaling-roles/bg-admit(STA-33 MR6 后台受理,默认关)、enterprise-task-e2e/route-continuation(ADR-0092 续接只读 continuation_relation)、agent-config-pipeline/catalog-publish(ADR-0096 单向发布)、capability-plugins/computer-use(授权/观察/视觉回执)、trust-boundaries/mailbox-connect(connect-only vs JWT 读)。
  • 纠正:scaling-roles 删除过时「仍无生产者」;quota-claim 现状卡片改为「生产者已合入(默认关)」;capability-plugins computer-use targets 不含 linux-x64。
  • desktop-client 补 Computer Use Host / MailConnector / directory-batch NOTES 与 claim。
  • 未核债务仍显式保留:共享库迁移 186/184/185、authorized-folders-v4 无迁移、Computer Use 真机、ADR-0093 #2、attention API 无 Desktop 调用方;大量 VMS/recruit/payroll/UI 业务修复仍不入图。

这里是变更日志,不是架构说明。新人读架构请从 site-runtime(整站运行)开始;一条任务见 enterprise-tour-narrative;当前钉点以 site/catalog.json 为准。以下段落原样从 NOTES.md / PANORAMA.md 移入(2026-10-14)。

钉升(2026-10-25 20:49 EDT / 2026-10-26 08:49 SGT)

Agent 9b78ef6261a2 → 2141b561dc97 · Desktop 15a50c5c7369 → 236252f2fdc3 · Plugins eff845fd1d15 → 77d3090b5d9a。

  • Agent(约 316 条提交 / 79 first-parent):STA-33 MR6-B/C/D 后台生产者(执行循环、报告通知、租户门控,默认关)+ 迁移 186 / identity aida-config-dev-2026-10-22-background-open-roots-index;ADR-0092 迁移 4/4(knowledge/workforce/analytics、recruit、vms + 跨族清零,续接只读 continuation_relation,router.ts 拆分);ADR-0096 产品目录仓库所有;邮箱连接授权与读取分离(IMAP/OAuth);Computer Use 视觉回执合同;Skill 分发绑定执行归属、插件取消停续写、本机工具范围与直连准入对齐、tool-less shell、个人技能管理准入等。大量 VMS/recruit/payroll 业务修复未入图。
  • Desktop(约 118 条 / 39 first-parent):Computer Use 窗口授权与原生操作;邮件会话连接与目录归档卡;plugin-host 归档目录授权与 manual archive 隔离;Main 恢复 / Skill dispatch claim;Local File 候选不可探测时保持 pending;托管 Python 准备/信任边界与 Windows 路径预算;角色引导卡;0.1.64–0.1.72 发布(未入图)。
  • Plugins(14 条):aida.computer-use 协议与八种窗口操作;aida.mail-archive agent-first + directory-batch;官方插件 linux-x64。
  • 改写主题:scaling-roles、storage-planes、enterprise-task-e2e、agent-config-pipeline、capability-plugins、trust-boundaries,以及入口 NOTES。图几何与视图 id 未改。
  • 证据:evidence 引用对新钉机械升钉并按 symbol 重定位;新增/改写后台生产者、迁移 186、ADR-0092 完成态、ADR-0096、computer-use、mail-archive、邮箱授权边界等 claim。共享库是否已执行 186、Computer Use 真机链路未核。

继续核查(2026-10-21 21:45 EDT / 2026-10-22 09:45 SGT,钉点不变)

Agent 9b78ef6261a2 · Desktop 15a50c5c7369 · Plugins eff845fd1d15。把上一轮「仍未核实」逐项查到能查的程度,只改 NOTES + evidence,不加图:

  • enterprise-task-e2e:ADR-0092 逐提交判定(无违规)与第 4 条三处灰区。
  • scaling-roles:GitLab 上 MR6 只有 MR6-A 已合入;资源档位草案执行状态。
  • local-file-v5:directoryIdentityDigest 合入 / tag 顺序与兼容性;工作台澄清桩 LLM 判例。
  • auth-tenant:202 环境 VMS Admin 开关、白名单、tenant_adaptations 与 AIDA_ENVIRONMENT 的仓库内记录。
  • write-authority:describe_vms_form 只有配置脚本、无执行记录。

补漏(2026-10-21 21:20 EDT / 2026-10-22 09:20 SGT,钉点不变)

Agent 9b78ef6261a2 · Desktop 15a50c5c7369 · Plugins eff845fd1d15。逐个审阅本次钉升的 138 个提交(Agent 119 / Desktop 19)后,把上一轮复核漏写的架构变化补进 NOTES + evidence(新增 25 条 claim),不加图:

  • scaling-roles:MR6-A 后台命令合同、工具交集规则(BI 默认关)、workKind、无生产调用方、档位草案 max_concurrent_background_runs。
  • observability-map:work-attention-v1 合同 fixture、RUNTIME_WORK_READ_TIMEOUT 可重试、Pack 发布门 / readyz packs 覆盖隐式跟随租户、Desktop 超长消息拒绝回执。
  • auth-tenant:覆盖层管理角色读取侧兜底与版本 / 回滚路由、Pack 订阅选择校验、AIDA_ENVIRONMENT 生产判定与无声明 JWT、VMS 租户级管理员登录与 effective-permissions 复核;修正「VMS 会话只复核平台超管」的措辞。
  • write-authority:VMS 表单写入合同——确认时以确认人身份重读描述、formValidationVersion=2、只填后台认证可写的标准字段。
  • local-executor / local-file-v5:canPrepareSkillScriptEntry(可准备 ≠ 可信)、旧 root 效应冻结、directoryIdentityDigest、LF 参数纠错窗口、工作台正式澄清。
  • time-bounds:工具目录发现 10s / domain、Desktop fetchAidaJson 15s、Skill 选择器 20s。
  • trust-boundaries:原生路径引号父目录修复;enterprise-task-e2e:ADR-0092 续接仍在、本轮 routing 修复未逐条判定。

钉升(2026-10-21 20:55 EDT / 2026-10-22 08:55 SGT)

Agent d4f252c559a8 → 9b78ef6261a2 · Desktop 5bba0a2f3c57 → 15a50c5c7369 · Plugins eff845fd1d15(未动)。

  • Agent(119 条提交):迁移 180–182 把 messages 改回普通表(180 分区方案被取代,181 messages-unpartitioned 换表,182 删 messages_partitioned_old;启动要求 relkind = 'r');183 conversation_seq / quota_bucket / origin_run_id + 后台消息守卫,184 配额桶在首次写 run_kind 时推导,185 background_work.v1 不占会话唯一活跃槽(identity aida-config-dev-2026-10-21-background-outside-conversation-slot);ADR-0095(Accepted)消息按 conversation_seq 读、快照按输入消息序号截断、Run 领取按桶(前台软上限 / 后台硬上限 advisory lock / uncounted 不限)、Stop 必须指向 root(/api/runs/:runId/work-stop)、MR6-A 后台工作合同与只读工具策略(无生产者);ADR-0094(Proposed)锁层级,9a3e49ec1 删 runtimeExecution 受理分支、受理不再 FOR UPDATE 已有 root、过期任务树收口改不等待;MR1 运行时指标、MR3 GET /api/work/attention;ProviderLimiter 前台 / 后台分队;Admin 本地操作员收窄(T11-admin 固定租户 11 tenant_admin、会话版本 HMAC、VMS 复核)、租户覆盖层不能授予管理角色;migrations README 补 150 / 202 的 178 / 179 / 181 / 182 / 183 执行记录。VMS 标准 Pack 版本化与大量 recruit / vms 业务修复未入图。
  • Desktop(19 条提交):旧明文 write-state-v4.json 改为「退役、不导入」(ca745377,回执带 retiredOperationIds);Linux generic 更新源与固定下载地址(26187f12 / 08f6d362);移除 ripgrep 打包;Skill 目录有界等待、原生路径引号父目录修复;0.1.62 / 0.1.63 发布提交(未入图)。
  • 改写的主题:storage-planes、scaling-roles、runtime-v2-status、observability-map、auth-tenant、state-authority、desktop-client、trust-boundaries,以及入口 NOTES。新增三张时序图:trust-boundaries/ok-chat-headerless(ADR-0093 无头放行,补上次「图未画」)、observability-map/runs-stream、scaling-roles/quota-claim;已有图几何与视图 id 未改。
  • 证据:evidence 原 657 条引用对新钉复核,现 706 条;NOTES 约 430 条引用复核;见 ATLAS-DEBT。

钉升(2026-10-20 21:05 EDT / 2026-10-21 09:05 SGT)

Agent 85546c2d37ea → d4f252c559a8 · Desktop a79bdcaac3ff → 5bba0a2f3c57 · Plugins eff845fd1d15(未动)。

  • Agent(浅克隆,48 条 first-parent / 128 条提交):ADR-0093 chat 受理与本机执行协议解耦(bd7c504d1 / 6fca7631b:无 X-AIDA-Protocol 且无本机执行载荷的 chat 请求受理、Run 无本机工具,LOCAL_EXECUTION_CHAT_BODY_FIELDS;修订 ADR-0090 D4 的 chat admission 一项);docs/reference/mobile-client-readiness.md 与路由耦合清单脚本(bc2d0100e,未入图);ADR-0092 路由决策归分类器(Accepted,存量逐族迁移,未完成);迁移 179 + identity aida-config-dev-2026-10-20-local-file-transient-expiry(守卫函数新增 transient-expiry 写入者);只读 GET /api/runs/:runId/stream(8bbbc6986)与生产 Work 展示账本写入 run_projection_events(3d61c4903 / f3b517c5b savepoint 隔离 / da594270b 登记为受审 Run 写入者);Desktop 诊断轨迹交付 /api/trajectory-delivery + Redis 临时传输(984574a6f);超长消息受理前回执 RUNTIME_WORK_MESSAGE_TOO_LONG(547ae8ae2)。未入图的行为修复:Child Run 记录被能力策略替换的工具结果(96ee4b72f,不再以 RUNTIME_WORK_CHILD_TOOL_OBSERVATION_MISSING 失败)、tool-round-state.ts 拆出轮次状态契约解循环依赖(f8359826b)、同对象写目标争议独立复核(7e21d28f3),以及大量 recruit / vms / routing 业务修复。
  • Desktop(浅克隆,19 条 first-parent / 38 条提交):账号作用域加密信封 LocalSecureEnvelope(LF 写状态、授权文件夹、已选文件句柄、artifact 索引、原生路径 message-overlay),旧明文 write-state 迁移只在严格条件下进行;原生路径隐私:消息里的本机路径换成 [LocalMaterial:…] 标记(e2fdc7c7 / f54b63ce / 736ba9e9);LocalExecutorService → LocalExecutionGateway;Desktop 持有的轨迹采集与本地归档(da4fb523);移除已退役执行器的打包诊断检查(23d5344e)。服务重启后恢复原观察(d46e4486)、安全结束中断原任务(0414e9d6)等 UI 修复未入图。
  • 改写的主题:trust-boundaries、desktop-runtime、observability-map、local-file-v5、local-executor、storage-planes、enterprise-task-e2e,以及入口 NOTES。图只改 storage-planes 主图三处文字(Desktop Main / 授权夹 sublabel、卡片条目),不改几何与视图 id;ADR-0093 新增的「无头放行」分支没有画进 ok-426-lf,写在 NOTES。
  • 证据:evidence 原 612 条引用对新钉复核,现 657 条(新增 8 条 claim);NOTES 约 400 条引用复核;见 ATLAS-DEBT。

钉升(2026-10-19 21:15 EDT / 2026-10-20 09:15 SGT)

Agent a3d56d1b0e2e → 85546c2d37ea · Desktop d7bb57ea1141 → a79bdcaac3ff · Plugins eff845fd1d15(未动)。

  • Agent(浅克隆,按 git diff 与 first-parent 合并读,14 条 first-parent / 62 条提交):Desktop 协议 v3(ADR-0090)——DESKTOP_PROTOCOL_VERSION = 3,握手帧只剩 { type, protocolVersion, invocationId },chat 提交、validate-local-executor、本机执行回执、Local File 回执/投递、durable recovery、桌面分发对非 3 统一 426 DESKTOP_UPGRADE_REQUIRED;LOCAL_FILES_V4_PROTOCOL_VERSION=5、local-files-v5、feature token、LOCAL_FILE_PROTOCOL_UPGRADE_REQUIRED、desktop_protocol_version_required、local_execution_recovery_protocol_upgrade_required 删除;下发给 Desktop 的工具只剩 readSkillFile / runSkillScript / Skill 管理 / Local File V4;删除 User Skill delegated-run、workflow-runtime、attendance-rule-onboarding 与 BusinessTaskAgentHarness(user-skill-context 提示段、userSkillBinding 一并删除,历史 Work 停到 manual_recovery);Skill 脚本 argv ABI 与 linux 平台;迁移 178 + identity aida-config-dev-2026-10-18-desktop-protocol-v3;确认写入三组修复(消费 CAS 要求 Run 未停、未发送写记 failed BUSINESS_EFFECT_NOT_DISPATCHED、租约恢复移入 settleInterruptedBusinessEffect 与批次代际 fence)及 specs/tla 模型;SoD 多审批人修复;Run 内 request_file_access 授权不被 restrictFileTargets 过滤。
  • Desktop(浅克隆,5 条 first-parent / 19 条提交):ADR-0087 本地能力收敛与协议 v3(生成的 protocol-version.ts)、ADR-0086 Codex 风格 Skill 脚本 argv ABI;删除 Agent 从不下发的原语(ea79497f)、Full access / Trusted host User Skill 运行时(312e095b),Local File V4 成为唯一模型可见文件路径(fb0bf65a);V4 读不再受托管 Python 探针影响;授权附件以权威 id 作 attachmentId;macOS 退出标志改经 MainShutdownCoordinator(未入图);System 测试与对话面板修复(未入图)。
  • 改写的主题:trust-boundaries、desktop-runtime、local-file-v5、local-executor、capability-plugins、observability-map、interaction-lifecycle、digital-employee-skills、prompt-llm、harness、chat-workflow-bt、time-bounds、storage-planes、write-authority、state-authority、desktop-client,以及入口 NOTES / PANORAMA / GLOSSARY。图只改标签与卡片文字,不改几何与视图 id(fail-426-lf / ok-426-lf 沿用旧 id,内容改为 Desktop 协议 v3;wire-drift / cutover-deploy 标为历史快照)。
  • 证据:evidence 原 559 条引用对新钉复核,现 612 条;NOTES 约 390 条引用复核;见 ATLAS-DEBT。

钉升(2026-10-19 08:55 SGT)

Agent 00bb88a84b63 → a3d56d1b0e2e · Desktop ae37b0944cf5 → d7bb57ea1141 · Plugins 8cff57b90005 → eff845fd1d15。

  • Agent(浅克隆,按 git diff 与 first-parent 合并判断,约 90 条合并/提交):迁移 174(审计月分区)、176(分发 CHECK 加 linux-x64)、177(audit_events 加 state / failure_class,schema identity 推进到 aida-config-dev-2026-10-16-audit-state-contract,README 写明尚未在任何共享库执行);确认后写入只在确定没发出去时自动重试(not_sent 连接错误、无报文 503),502 / 504 / 超时按结果未知;可选的 VMS 账号权限唯一来源 AIDA_IAM_VMS_SOT、影子比对、租户角色映射覆盖层(都默认关,相关建表仍是草案);子任务不可续办时原子终止、识别失败在子任务受理前收口;VMS / 账单 / 考勤 / 向导等业务修复未逐项入图。
  • Desktop:Linux 发布脚本接上 linux-x64(AppImage + latest-linux.yml),删除 .gitlab-ci.yml;插件执行「始终允许」持久授权;提交观察日志改为尽力落盘(无强加密时只留内存,不再拒绝提交);长输入可展开编辑器、引导示例一键填入、发布 0.1.61(界面变化,未入图)。
  • Plugins:协议 Platform 枚举加 linux-x64,CLI 发布合同重生成;aida-cli 插件 0.3.11 / CLI 0.1.1。
  • 证据:evidence 559 条、NOTES 约 390 条引用对新钉复核;见 ATLAS-DEBT。

站会跟进(2026-10-16 SGT,钉点不变)

  • safeStorage 证据补单测引用并分层标注「代码已核 / 真机未核」(desktop-client、trust-boundaries)。
  • MR-6a~6g 记入 vertical-plugin-mount:不单独成图(理由见该 NOTES)。

钉升(2026-10-15 21:05)

Agent 931951dc69be → 00bb88a84b63 · Desktop 0d19b3f8af7e → ae37b0944cf5 · Plugins 5544709d588c → 8cff57b90005。

  • Agent(本地为浅克隆,git log 只显示 11 条;从合并父提交看实际约 50 条):过期确认卡——受理新消息时在同一事务关闭只等过期卡的任务树(expired-interaction-closure.ts,legacy 置 expired,Runtime Work 走 stopRuntimeWorkSupersededByNewTurnInTx),会话 lease 恢复也调用(只限 legacy);ToolContractMonitor 增加参数契约漂移(argumentDrift);与已安装独立 Skill 同名的「用 xxx-cli」不再当作插件选择;MR-6a~6g 把垂直业务特例迁入各 verticals/ pack(路由、网关路由、启动 pack、Child Kernel 招聘分支、确认工具特征),现有引用全部平移可解析,未改图;招聘 / VMS / Offer / 面试反馈等业务修复未逐项入图。无新迁移。
  • Desktop:过期卡「结束原任务」(Runtime Work 经 Main stopSubmission 持久停止,legacy 沿用 cancel,只停卡绑定的原始 Root);suspended 且最近交互已 resolved 显示「已收到答复,等待后续处理」;续办后新问题即时刷新;Linux x64 平台与 AppImage(发布脚本 targets 与 Agent 分发 CHECK 仍无 linux-x64);safeStorage 严格策略(Linux basic_text 视为不可用,凭证 session-only);首页按角色推荐 / 待办 CTA 直达确认卡、Velopack 工具预检、发布 0.1.60(非架构变化,未入图)。
  • Plugins:aida-cli 0.3.10 不再把对象/数组参数 JSON 字符串化;考勤字段适用性 / 来源统一与跨事实归属校验(插件内部业务规则,未入图)。
  • 证据:evidence 495 条、NOTES 345 条引用对新钉复核;见 ATLAS-DEBT。

钉升(2026-10-14 21:20)

Agent 7babdd215d1f → 931951dc69be(!219:只改 171/173 注释与 migrations README,统一角色按租户迁移预留 172)。Desktop / Plugins 未动。

钉升(2026-10-14 晚)

Agent c47b25bf88b8 → 7babdd215d1f · Desktop 5aaeceb707c0 → 0d19b3f8af7e · Plugins d7a432e3885b → 5544709d588c。

  • Agent:reply_user 内部工具(contextPolicy.replyUserEnabled,默认关)与 reply_user_message 运行事件;普通 Work 入口冻结路由选中的动态插件;迁移 169 拆号为 169 restore + 170 取消约束(旧名别名),新增 171、173 纯数据迁移;业务修复多项(VMS / 薪资 / 考勤 / 离项结算等,未逐项入图)。
  • Desktop:reply_user_message 独立助手消息行;run_recovering 显示「续跑中…」;LocalExecutor 交付端口收进 deliveries;关停测试跟进 AgentLoop 移除(移除本身在 91a25b75,早于上一钉点)。
  • Plugins:考勤规则修订 / 核算导出 / 完成状态修复,未改插件协议(未逐项入图)。
  • 证据:evidence 477 条引用、NOTES 307 条引用对新钉复核;见 ATLAS-DEBT。

[NOTES] tip 同步(2026-10-08)

全仓钉升至 Agent c47b25bf88b8 / Desktop 5aaeceb707c0 / Plugins d7a432e3885b;当前 schema identity 为 aida-config-dev-2026-10-10-work-side-queries(迁移 163–169;168 因撞号顺延;两个 169 须先 restore 再 cancellation;租户角色模型/资源档位的“迁移 170”仍只是 docs/migration-drafts 草案,未进 migrations/)。2026-10-14 钉升:按租户公平领取(顶层 run 标准档上限 2)、模型供应商限流与 LLM_BUSY 背压、pg_notify 配置跨实例失效、租户资源档位(表缺失回落 standard)、业务复核卡改后台 owner 执行、readyz 工具契约漂移;Desktop 删除旧设置迁移、markSent 必带 intakeIds;aida-cli 0.3.8 切回 npm 正式 0.1.0。2026-10-13 钉升:个人 Skill 管理 capability、Work SSE 路由决策脱敏投影与 run_recovering、aida-cli phase1.1 / SDK 2.0.2。2026-10-12 钉升:chat 提交与观察统一为 Work 路径(runtime-v2.1 入口移除,Desktop 删 runtime-v2-core-contract / agent-loop 合同);Local File 新增原件上传 capability local-files-v5-original-content-v1;Plugins SDK 迟到失败回执、salary-smartcalc 改 Python runtime。

[NOTES] tip 同步(2026-09-22)— 历史纪要

已失效作当前钉点;现行钉见上文「tip 同步(2026-10-08)」与 catalog。

当时钉 Agent 4523866f4e25 / Desktop 0634f8a9c148 / Plugins 15ebd254e0e7。架构主变:runtime 目录统一、runtime-work-v1 默认原工作绑定、hostAdmission / RUNTIME_HOST_CONVERGENCE 退役、普通 Skill≠业务任务受理、schema identity → offer-approval-cycle、官方插件货架无 caidao 目录。详见 PANORAMA.md。

[PANORAMA] tip 同步(2026-09-22)— 历史纪要(已失效作钉点)

失效说明:本节是 2026-09-22 升钉纪要,不再是当前钉点。当时钉为 Agent 4523866f4e25 / Desktop 0634f8a9c148 / Plugins 15ebd254e0e7。当前钉点与十月主题见上文「理解入口与 Runtime 对照(2026-10-09)」「写权限链(2026-10-09)」及 NOTES.md「tip 同步(2026-10-08)」;catalog repositories 为准。

  • 当时主变(结论仍可参考,钉点以现行为准):runtime 目录统一、runtime-work-v1 默认原工作绑定、hostAdmission / RUNTIME_HOST_CONVERGENCE 退役、普通 Skill≠业务任务受理、schema → offer-approval-cycle、官方插件货架无 caidao 目录。
  • Skill↔任务拆分(userSkillBinding vs businessTaskBinding);官方插件货架无独立 caidao 目录(余 attendance-tally / salary-smartcalc / aida-cli)— 方向保留,细节以现行 tip 为准。
  • Live Model / Exclusive live:ADR-0059 与 DbModelRouter 同 Provider 不做 supported_models 兄弟 fallback — 结论保留。

机制说明

AidaWork 系统运行全景

AidaWork 由三个仓库协作:aida-agent(服务端控制面与执行)、aida-desktop(客户端,Main 进程承载本机能力与 PluginHost)、aida-plugins(插件协议、SDK 与不可变包)。本页是地图。

新人第一站

  1. site-runtime(「整站运行」) — 整站怎么跑:三仓归属 → 一轮用户话 → 本机/云端 → Pack×Edition 口径 → 信任门 → 失败落点。站点首页。
  2. enterprise-tour-narrative — 从一条企业任务看懂控制面 / 权威 / 六步主路径。
  3. 本全景与系统拓扑图继续当地图用。先读机制说明,结论以 NOTES + evidence 为准。

读图约定

  1. 钉点 SHA:catalog 三仓 commit 为准;工作区新于钉点先升钉再改 NOTES。
  2. 现状 ≠ 默认开 ≠ 生产启用:有实现 ≠ 开关默认开 ≠ 正式环境已开。
  3. 未实现分栏/分色:如 write-authority tip vs #255/#257;跨所有非 Chat 入口的统一 Command/Activation 尚未完成。禁止缺口画成已落地。
  4. 行号过期:evidence:check 失败则改 NOTES 或记 ATLAS-DEBT.md;本轮不大扫、不重做站岗 bot。
  5. 辅图:仓外 aidawork-step-diagrams 可链读;权威仍是仓内 NOTES + evidence。

三仓怎样协作

一次企业任务从客户端进入 Agent。Agent 组织会话、执行准备、模型循环与工具分发;工具需要本机能力时跨到 Desktop Main,PluginHost 在这里管理插件 Worker。Plugins 仓提供协议、SDK 与不可变包,包本身并不持有服务端任务状态。

读图时先沿请求箭头走到执行宿主,再沿状态关系寻找恢复依据。Run 记录当前执行状态与 lease,Interaction(IX,交互生命周期)管用户输入,展示投影用于呈现这些事实。Chat direct/routed 共用 runtime-work-v1 持久受理与 RunExecutionWorker;省略协议头只改变观察回执形式,不选择另一条执行通道。显式 runtime-v2.1 已拒绝(426),不是仍可启用的文本路径。runtime-v2/ 目录与 hostAdmission / RUNTIME_HOST_CONVERGENCE 已退役(历史开关,见 ATLAS-DEBT),不能用旧目录名或旧开关名推导切流状态。

证据与范围

  • aida-agent · packages/agent/src/runtime/README.md · 准入、执行与观察边界 · e2adc9a3c325
  • aida-desktop · apps/desktop/electron/plugin-host/plugin-host.ts L1–59 · 4346d79eb364
  • aida-agent · packages/agent/src/execution-host/router.ts L50–80 · ExecutionHostRouter · e2adc9a3c325
  • aida-agent · packages/agent/src/session/run-store.ts L658–688 · UPDATE agent_runs · e2adc9a3c325
  • aida-agent · packages/agent/src/shared/interaction-kernel-state.ts · INTERACTION_STATUSES · e2adc9a3c325
  • aida-agent · packages/agent/src/runtime/work/run-work-admission.ts · bindAdmittedWork(runtime-work-v1 默认绑定)· e2adc9a3c325
  • aida-agent · packages/agent/src/index.ts · executionWorker.start · e2adc9a3c325
  • RUNTIME_HOST_CONVERGENCE / hostAdmission:历史已退役,钉点源码中已删除;勿再当启用开关。说明见 runtime-v2-status 与 ATLAS-DEBT.md。

结论来自固定版本的静态源码与合同阅读;实现存在、默认开关和生产启用分别判断。本站代码证据面板列出声明状态与具体限制。

机制主题索引

Desktop 组补充 local-file-v5(path-free Local File V4;独立 LF 协议版本已并入 Desktop 协议 v3;关联 local-executor / desktop-runtime)。执行与交互补充 prompt-llm、digital-employee-skills、message-center。目录与证据钉见 site/catalog.json。

理解主题加深(2026-09-11):上列六题各增视图与证据(≥5 claims);目录与证据钉见 site/catalog.json。

失败链

六项理解主题的触发→检测→持久化→效应→恢复链见 FAILURE-CHAINS.md(2026-09-11)。

理解入口与 Runtime 对照

  • site-runtime — 整站运行(首页);三仓 / 一轮话 / 本机vs云端 / Pack×Edition / 信任门 / 失败落点(2026-10-29)。
  • enterprise-tour-narrative — 一条企业任务;理解型六步图;链到 e2e / 权威 / LF / 写权限 / Runtime。
  • runtime-v2-status — 当前 Chat Work 统一受理、Worker 执行与已退役文本协议;调度器/Child 等入口仍保留自身驱动,不能据目录统一推导全入口迁移。

写权限链(2026-10-09)

  • write-authority — 交互与恢复组:确认卡授权 → 写前 outcome 行 → VerifiedWriteAuthority 执行器内 CAS 消费 → 派发 → 读回结案;孤儿 Run 走 manual_recovery。tip 已有与 #255(写前声明总合同)/ #257(授权闸·凭证闸分离)未实现分列。交叉:state-authority、local-file-v5、vertical-plugin-mount、trust-boundaries。

agents 配置流水线(2026-09-16)

  • agent-config-pipeline — agents 配置如何经 resolveAgent → resolveAgentPipeline(Live Model / Capabilities / Prompt / Policy)注入 orchestrate;旁挂唯一生效热切换与 Child 收窄。交叉:control-plane、prompt-llm、capability-plugins、desktop-client。

时间盒与材料面(2026-09-11)

  • time-bounds — 墙钟/TTL/配额合同上界(非 multi-instance scaling)。
  • interaction-materials — Interaction 材料全家桶:Kernel / batch / critical-fields / inbox·投影 / 聊天附件分界。

产品叙事 / 会前口径(2026-10-29)

  • product-narrative — 对内材料口径:延期非单一技术债;MSP ≠ 单纯多租户(原中台算薪运维等能力入产品);难在 Windows + VMS + MSP Edition 同时稳;Pack×Edition;客户名内外分轨。非 tip 源码事实。

钉升流水与历史钉点见 CHANGELOG.md。

术语表

每条一两句人话,括号里是出处主题;结论仍以各主题 NOTES + evidence 为准。按新人阅读时大致遇到的顺序排列。

术语 人话解释 出处
三仓 aida-agent(服务端)、aida-desktop(客户端)、aida-plugins(插件协议 / SDK / 不可变包) PANORAMA
整站运行 站点首页主叙事:三仓归属 → 一轮用户话 → 本机/云端 → Pack×Edition 口径 → 信任门 → 失败落点 site-runtime
Main / Renderer Desktop 的两个进程层:Main 持有本机执行上下文、绝对路径和 PluginHost;Renderer 只呈现服务端事件和本地草稿 desktop-client、local-file-v5
Gateway Agent 的入口层:处理请求身份、租户上下文和会话绑定(SessionBinding) aida-agent
SoT(Source of Truth) 真相来源:某类事实唯一的写入权威;恢复只读 SoT state-authority
投影(Projection) 给界面看的读模型,例如 SSE 事件流、Desktop 本地仓;不能反写 SoT state-authority
Work / runtime-work-v1 chat 提交被受理成的一份「原工作」,是默认工作绑定(bindAdmittedWork) runtime-v2-status
Run 一次执行的持久化记录(agent_runs),带状态和 lease state-authority
lease Run 执行期间持有的租约:先获取、中途续期、做完释放;过期后可被接管或进入恢复 state-authority、enterprise-task-e2e
Interaction(IX) 交互生命周期:需要用户确认或补充信息时由 InteractionKernel 创建,任务挂起等待 interaction-lifecycle
settle 用户提交后,Kernel 校验回答人和答案并写结算;只有 accepted + resolved 才带恢复事件 enterprise-task-e2e
continuation IX 结算后再次 resolveAndRun 让任务接着跑的那一步 enterprise-task-e2e
outbox 结算后待执行的续跑记录;聊天轮次本身不授权业务效应,唯一执行路径是 Kernel 结算后的 Outbox continuation write-authority
厚控制面 / 薄执行切片 控制面管会话、准备执行、IX 结算、lease / 账本、恢复;执行切片只跑有界的模型 + 工具轮次(常称 ReAct 环) control-plane
ExecutionHostRouter 工具分发路由器:advertise / dispatch / reconcile / cancel;能力上可接多种宿主,钉点上 AgentRun 只为 server-read 建 enterprise-task-e2e
singleflight 同一调用(callId + bindingDigest)不会被并发派发两次 enterprise-task-e2e
possibly_sent 派发结果不确定的状态;先 reconcile 核对,禁止盲重试 enterprise-task-e2e
LF(Local File) 本机文件能力:架构族名 V4,wire 不带绝对路径(path-free);独立的 protocol 5 / local-files-v5 已删除,现随 Desktop 协议 v3(DESKTOP_PROTOCOL_VERSION = 3) local-file-v5
LE(Local Executor) 本机执行器宿主,本机能力调用完成后把结果交回 Agent local-executor
CAS 比较并交换:写前一次性消费授权,status='approved' 才能改成 executing write-authority
manual_recovery / RUN_ORPHANED lease 过期且还有未确认写操作的 Run 进入人工恢复;Run 级恢复不重放写 write-authority
426 硬门 协议 / 能力不匹配时直接拒绝(fail-closed),例如 LF 426 不创建 Run trust-boundaries
SSE 服务端推送事件流,Desktop 用它观察进度;不是成功与否的依据 enterprise-tour-narrative
LLM_BUSY 模型调用排队满或等待超时时返回的背压错误(ProviderLimiter) scaling-roles
钉点 结论所依据的三仓固定 commit;有实现 ≠ 默认开启 ≠ 生产启用 PANORAMA
MSP 产品口径(2026-10-29):原中台 / 既有算薪运维能力沉淀(算薪运维、复杂考勤、多客户账单)装入 AidaWork 的交付面;≠ 单纯多租户包装。验收要分清通用助手 vs 进月结经办 product-narrative
VMS(产品包语境) 客户侧业务场景(入职 / 人事等垂直);与 MSP 并列构成「VMS/MSP 产品包」。技术身份链路另见 auth-tenant product-narrative、auth-tenant
Pack × Edition 标准 Pack × 有界客户 Edition;AidaWork = VMS/MSP 产品包。技术装配 / 订阅见 agent-config-pipeline(ADR-0096) product-narrative、agent-config-pipeline
会前口径 2026-10-29 对内材料与延期叙事:先稳桌面(尤其 Windows),再核 VMS/MSP 路径;非 tip 源码事实 product-narrative

AidaWork 图集

钉点 e2adc9a3c325 / 8eecd12081db / a142b0a664c4(2026-10-28)

  • Schema tip aida-config-dev-2026-10-28-conversation-turn-queue(187 Credits → 188 远程 Desktop 设备 → 189 本地租户管理员 → 190 文档转换原件消费者 → 191 会话 turn FIFO 队列)。共享库 187–191(及此前 184–186)执行未核实。
  • ADR-0097(Proposed):非 VMS 租户目录收窄;D1-2a 已合入(forRouting + 已核验零业务 scope 时跳过 Pack、只装配本地/Plugin);D1-2b / D2 暂缓。
  • ADR-0098(方向 Accepted / 实施待批):可回访待办卡;STA-193 止血(只读旁问优先与既有等待前台 Root 收口;非新增 parked 归属)已合入,其余 DDL/生产者接入未批。
  • 安装即授权(Desktop):去掉 PluginExecutionGrantStore;无目录选择的插件调用直接放行;可随时发新消息。
  • Plugins:publish:all 编排发布,状态写入 OSS(与 Desktop 发布桶对齐)。
  • 大量 VMS/recruit/payroll/UI/IAM 业务修复:无边界变化则不入图。

新人第一站:site-runtime — 整站运行(三仓归属 → 一轮用户话 → 本机/云端 → Pack×Edition → 信任门 → 失败落点)。一条任务深读见 enterprise-tour-narrative。系统全景 / 拓扑见 PANORAMA;dense 时序仍在 enterprise-task-e2e。

产品叙事 / 会前口径(2026-10-29):product-narrative — 延期框架、MSP 纠正(≠单纯多租户)、Pack×Edition、通用/业务能力拆分;产品定位,非 tip 源码事实。

主题分组、顺序与关联由网站目录统一生成;详细权威关系见同目录 PANORAMA。site/catalog.json 的 home 指向 site-runtime。

新增理解入口:

  • site-runtime(2026-10-29)— 整站运行首页;三仓 / 一轮话 / 本机vs云端 / Pack×Edition 口径 / 信任门 / 失败落点;理解型 workflow
  • enterprise-tour-narrative(2026-10-09)— 一句话定位 → 控制面 vs 执行面 → 权威矩阵一行 → 六步主路径 → 深挖 LF / 写权限 / Runtime;特效默认关
  • runtime-v2-status 增补 compare 视图与 tip/默认/Hard Cut 分栏 NOTES

新增配置链路主题(2026-09-16):

  • agent-config-pipeline — agents 配置 → resolveAgent 门控 → resolveAgentPipeline(Live Model / Capabilities / Prompt / Policy)→ orchestrate;Admin 唯一生效热切换与 Child 收窄;钉点 Agent tip e2adc9a3c325

新增写权限主题(2026-10-09):

  • write-authority — 授权(ToolCallGate / registerAuthorization)→ 写前声明(businessEffects.start)→ 一次性消费(markExecuting CAS)→ 派发 → 读回 → 孤儿 Run;对照 LF fs/change、PluginCallJournal、ExecutionHostRouter;#255 / #257 只列为未实现目标

更早加入的主题

新增时间与材料主题(2026-09-11):

  • time-bounds — 模型/工具/LF TTL(~1800s)/OCR/配额时间盒(非扩缩容);旁挂 observability-map / FAILURE-CHAINS
  • interaction-materials — Save As / critical-fields / business effect batch / inbox·投影 vs Kernel;澄清 vs 聊天 LF 附件

加深理解主题(2026-09-11):

  • enterprise-task-e2e — 端到端主路径 + tool-branch;失败/成功对偶 fail|ok-host / fail|ok-ix / fail|ok-lease-mid
  • state-authority — SoT 矩阵 + recovery;失败/成功对偶 fail|ok-lease / fail|ok-concurrent
  • storage-planes — 三平面 + migrate;失败/成功对偶 fail|ok-schema / fail|ok-atomic
  • cold-paths — 冷路径前门 + when-runs;失败/成功对偶 fail|ok-gate / fail|ok-strip
  • vertical-plugin-mount — salary-smartcalc + call-receipt;失败/成功对偶 fail|ok-plugin-settle / fail|ok-manifest
  • trust-boundaries — 信任边界 + layers;失败/成功对偶 fail|ok-426-lf / fail|ok-426-ix / fail|ok-426-runtime
  • observability-map — 诊断码 → 产出面 → DB/本机文件/排障入口

失败/成功链总索引:FAILURE-CHAINS.md。排障地图:observability-map/NOTES.md。

新增机制主题(2026-09-10):

  • local-file-v5 — Desktop+Agent path-free Local File(族名 V4;独立 LF 协议版本已并入 Desktop 协议 v3);视图 wire-drift / cutover-deploy 为 v4→v5 清仓的历史快照
  • message-center — 通知读模型(PG + pg_notify,非业务 SoT)
  • prompt-llm — 七段 assembleSystemPrompt 与 DbModelRouter
  • digital-employee-skills — DE 编制门、User vs Bundled Skill、记忆门控旁路

运维备注:ATLAS-DEBT.md(critical-fields visual-check soft-pass 根因与口径)。

当前钉点

Agent 7f2e519936b5 · Desktop 4346d79eb364 · Plugins a33ce3733365(Docs d777a4b536e6;以 site/catalog.json 为准)。相对上一钉 d7974dcc37c0 / fb3e4fdfd5a2 / d220086aa495 的架构变化(Agent ~157 / Desktop ~255 / Plugins ~57):

  • 本机工作台续进:模型入口图片输入(STA-269);Desktop OCR/图片附件入模;澄清卡 pending 修复;run_python 默认开与限额;发布 0.2.10。
  • ADR-0100 / ADR-0101:工作台文档 OCR/识别/转换无确认(/api/local-workbench/documents/*);trajectory tool←model 归属与 unknown 后恰好一次 completed|failed 收口。
  • 领取公平:ADR-0095 附录——策略读取失败暂停新 claim。
  • 插件版本:aida-cli 0.3.13、Python SDK 2.3.0、attendance 2.1.38;requires.desktop 回放与 object-root 参数。
  • 写权限/turn-queue 形式化:Sync 仍钉 agent e2adc9a3c325(覆盖文件相对 tip 有实质 diff,本轮不推进)。
  • 大量 VMS/recruit/Data/IAM/attendance 业务修复未入图;共享库迁移与 Computer Use 真机等旧债仍显式保留。

逐次钉升流水见 CHANGELOG.md。

产品叙事 / 会前口径(2026-10-29)

性质:产品定位与对内材料口径,来自负责人转述的会前讨论结论(2026-10-29)。
不是 tip 钉点源码事实;本页无 code evidence。与运行机制交叉时,以各主题 NOTES + evidence 为准。
对外/站内文案不点名既有 skill 仓路径;统称「原中台 / 既有算薪运维能力沉淀」。

延期怎么对老板讲

不是单一技术债。AidaWork 被当成「企业级 Agent」在做,范围远超「本地 Agent + 业务抽象」。AI 写码验证慢、返工重。

交付顺序应对齐:

  1. 先稳住本地 / 桌面(尤其 Windows)
  2. 再核验关键 VMS 与 MSP 业务路径

技术落点见 desktop-client、desktop-runtime;VMS 身份 / 租户见 auth-tenant。

MSP 定义(纠正)

MSP ≠ 单纯多租户包装。

MSP = 原中台 / 既有算薪运维能力沉淀(算薪运维、复杂考勤、多客户账单等),现在必须装进 AidaWork 交付。老板侧若以为通用助手已能做——要讲清验收门槛:

档 含义
通用助手 能聊、能查、能草稿;不等于进月结经办
进月结经办 写操作人工确认 + 来源系统回读 + 带色审计底稿

「写确认 + 回读」与 tip 写权限链相邻,但验收口径 ≠ 已证代码完备;机制见 write-authority。

多实例配额 / 租户公平见 scaling-roles——那是运行扩缩与桶配额,不是 MSP 的产品定义。

方向对,难在打包

把上述中台能力做成 AidaWork 能力——方向正确。难,是因为三件事要同时稳:

  1. Windows 本地能力
  2. VMS 客户场景
  3. MSP 多客户运营(租户隔离、固定 duty key、按客户 Edition 模块)

对内材料口径(2026-10-29)

能力拆分(对外讲法)

面 内容
通用能力 理解异构源、规则引擎、质量门禁、桌面 / Agent;多模态解析 + 代码级计算;四态交付 + 带色审计底稿
业务能力 算薪运维、复杂考勤、多客户账单

桌面一键 / Agent 自然语言路由同一套能力。

产品包

AidaWork = VMS / MSP 产品包(标准 Pack × 有界 Edition)。

技术侧:产品目录仓库所有、租户订阅 / Edition 可写,见 agent-config-pipeline(ADR-0096)与 enterprise-task-e2e(ADR-0097 D1-2a)。本页只定产品口径,不另证装配实现。

读 entitled-local-catalog 等图时:卡片上的「本机」指桌面本机路径,不要把 MSP 读成「单纯多租户」或「离线版」。

客户名 vs 行业代称

  • 内部标杆:可用真实客户名(追觅 / MOVA、奥托立夫、联想深圳、复宏汉霖、经纬恒润、国家电投 / 山东核电、启云方、哔哩哔哩、萌电)
  • 投资人对外:仍用行业代称

与运行机制主题的边界

主题 关系
site-runtime 整站运行首页;本页产品口径在此旁挂
enterprise-tour-narrative 一条任务理解入口(控制面 / 账本);本页是产品定位
desktop-client · desktop-runtime 「先稳住桌面尤其 Windows」
auth-tenant 租户隔离 / VMS 身份;≠ MSP 定义
scaling-roles 多实例与租户配额;≠ MSP 产品定义
agent-config-pipeline Pack / Edition 技术装配
enterprise-task-e2e Pack 装配 / ADR-0097;勿把 MSP 读成单纯多租户
write-authority 写确认 / 回读机制;与月结经办验收相邻

未核实 / 本轮不做

  • 不升 tip 钉、不新画边界图(无新边界故事)。
  • 「四态交付」「duty key」「带色审计底稿」的代码级映射本轮未核实(产品用语;要对齐 tip 另开主题)。
  • 不把外部 pitch HTML 当 SoT。
  • 既有 skill 仓路径不入对外 / 站内文案。

失败链 / 成功链索引

Stanley 要求「失败链一条条挖」:每条链按 触发 → 检测 → 持久化 → 客户端效应 → 恢复/重试/死胡同 读,钉在固定 commit。成功对偶按 触发 → 受理 → 持久化 → 客户端效应 → 完成。下表链到主题视图规格。

# 失败链 成功对偶 主题 一句话(失败 / 成功)
1 fail-host ok-host enterprise-task-e2e dispatch catch → reconcile 禁盲重试 / host completed → delivery=completed
2 fail-ix ok-ix enterprise-task-e2e expire/cancel/reject / settle accepted→resolved+resume
3 fail-lease-mid ok-lease-mid enterprise-task-e2e RUN_LEASE_LOST/BUSY / acquire→renew→release 全程持有
4 fail-lease ok-lease state-authority recover→manual_recovery/BUSY / 持 lease 写终态并释放
5 fail-concurrent ok-concurrent state-authority 第二写者拒 / 单写者+合法 parseBound 落账
6 fail-schema ok-schema storage-planes schema assert fail-fast / assert 通过后启动
7 fail-atomic ok-atomic storage-planes corrupt/LEGACY_DROPPED / AtomicJson status=ok 原子写
8 fail-gate ok-gate cold-paths 名单/lifecycle 拒 / 齐备后进入实现
9 fail-strip ok-strip cold-paths memory strip / memoryEnabled 保留工具
10 fail-plugin-settle ok-plugin-settle vertical-plugin-mount journal uncertain / settle succeeded+parseBound
11 fail-manifest ok-manifest vertical-plugin-mount PLUGIN_TASK_UNAVAILABLE / 投影命中唯一候选
12 fail-426-lf ok-426-lf trust-boundaries Desktop 协议≠3 → 426 DESKTOP_UPGRADE_REQUIRED 整次阻断 / 协议=3 创建 Run
13 fail-426-ix ok-426-ix trust-boundaries 头不接受短路 / 头=2 进入 Kernel
14 fail-426-runtime ok-426-runtime trust-boundaries 协议串不匹配 / runtime-work-v1 放行

排障地图:observability-map(诊断码 → 产出面 → DB/本机文件/面板)。

时间盒(超时/TTL/配额上界,非扩缩容):time-bounds。

钉:aida-agent e2adc9a3c325 · aida-desktop 8eecd12081db · aida-plugins a33ce3733365。

Atlas 站点债务(运维备注)

钉升 7f2e519936b5 / 4346d79eb364 / a33ce3733365(2026-11-06 SGT tip sync)

  • evidence:自 d7974dcc37c0/fb3e4fdfd5a2/d220086aa495 机械升钉;版本钉与行号重定位。
  • 仍未核:共享库迁移 187–191+184/185/186;authorized-folders-v4;Computer Use 真机;ADR-0093 #2;formal-verification Sync 仍 e2adc9a3c325;垂域业务未入图。

产品叙事 2026-10-29(钉点不变)

  • 已入 NOTES:会前口径 / MSP 纠正 / Pack×Edition;无 tip 证据、无新图。
  • 显式未核(产品用语→代码):「四态交付」「duty key」「带色审计底稿」尚未映射到 tip 合同或主题;要对齐另开主题,勿从本页反推已落地。
  • 对外文案持续避开既有 skill 仓路径名;站内用「原中台 / 既有算薪运维能力沉淀」。

钉升 e2adc9a3c325 / 8eecd12081db / a142b0a664c4(2026-10-28 21:30 EDT)

  • evidence:机械升钉;约 778 条三仓引用按 symbol/excerpt 重定位;失败项改写(RUNTIME_WORK_PROTOCOL→runtime-work-identity.ts、prepareExecution→chat-work-prepare、identity→schema-metadata.ts、插件 grants 删除→安装即授权、admission rejection 迁到 shared schema)。
  • 仍未核 / 显式债务:共享库是否已执行迁移 187–191(及此前 184/185/186);authorized-folders-v4.json 仍无迁移;Computer Use 真机 macOS/Windows 授权+截图未跑;ADR-0093 #2(无本机载荷 Run 工具集合为空)未逐项核;attention API 仍无 Desktop 调用方;ADR-0098 除 STA-193 止血外的 DDL/生产者接入未实施;远程 Desktop 真机登记/租赁未跑;Credits 生产配额是否开通未核;大量 VMS/recruit/payroll/UI/IAM 业务修复未逐项入图。

全部 update(2026-10-25 21:15 EDT / 2026-10-26 09:15 SGT,钉点不变)

  • 在站岗升钉(4fcc939)基础上补五张边界时序图,并纠正「仍无生产者」与 computer-use「声明 linux-x64」两处错误。
  • 仍未核 / 显式债务:共享库是否已执行迁移 186(及 184/185);authorized-folders-v4.json 仍无迁移;Computer Use 真机 macOS/Windows 授权+截图未跑;ADR-0093 #2(无本机载荷 Run 工具集合为空)未逐项核;attention API 仍无 Desktop 调用方;大量 VMS/recruit/payroll/UI 业务修复未逐项入图(无架构边界变化则只保留 claim,不发明图)。

钉升 2141b561dc97 / 236252f2fdc3 / 77d3090b5d9a 复核(2026-10-25 20:49 EDT)

  • evidence:机械升钉后按 symbol 重定位(约 138 条);改写/新增 claim:后台生产者 MR6-B/C/D、迁移 186、ADR-0092 完成态、ADR-0096、computer-use、mail-archive、邮箱授权边界。
  • NOTES:对应主题与入口钉点/CHANGELOG 已改写;约 79 条证据块行号按 symbol 重定位。
  • 未核 / 未入图:共享库是否已执行迁移 186(及此前 184/185);Computer Use 真机 macOS/Windows 授权与截图链路;authorized-folders-v4.json 无迁移(仍属上轮遗留);大量 VMS/recruit/payroll/UI 业务修复未逐项入图;图几何与视图 id 未改。

critical-fields visual-check soft-pass

根因:Archify 在 pipe-Chrome + CDP 路径上对部分重图(观测到 critical-fields)会因主线程忙碌导致 Runtime.evaluate 饿死,触发 viewer/visual-check-runtime。同一产物用 Playwright + HTTP 的站点集成检查仍可通过。

站点侧 scripts/browser.mjs 在重试后若错误码仅有 viewer/visual-check-runtime,记为 chrome-runtime-flake soft-pass,并继续跑 site integration。不要把 soft-pass 当成图内容(节点/边/卡片语义)失败。

Archify visual-check.mjs 已对 pipe Chrome 跳过 Archify.whenStable(注释写明 critical-fields 观测)。本仓优先文档化;仅在有明确耐久收益时再做小改,不重写 Archify 内核。

wire-drift 视图口径

见 local-file-v5 NOTES:视图是对齐 + 清仓快照,挂在 local-file-v5 下,不是独立「开放 drift」主题。

tip 2026-09-22:cold-paths Archify 文案滞后 — 已清理(2026-10-09)

fail-gate / ok-gate / when-runs 已去掉现行 hostAdmission 节点;主图 HOST_CONVERGENCE 节点已改为 durableText(runtimeProtocol)。卡片注明已退役。若其它主题仍出现旧开关名,SoT 仍以各主题 NOTES + evidence 为准。

write-authority「未核实」两项 — 已核实(2026-10-09)

缺凭证后 outcome 收尾、Desktop 离线 / fs/change 写回收:已钉 tip 源码给出结论(未实现 / 走另一条链+Agent TTL 缺口),见 write-authority/NOTES.md;不再留「未核实」。

cold-paths fail/ok-gate·strip 纵向溢出 — 已压缩(2026-10-09)

四视图压到 viewBox≈560、减消息与卡片,目标 visual-check 硬 pass(不改 browser soft-pass 规则)。

读图约定与轻量漂移(2026-10-09)

入口 NOTES / PANORAMA 已钉「现状 ≠ 默认开 ≠ 生产启用」与行号过期处理。本轮不重做站岗 bot。

已知可记债、非阻塞理解:

  • cold-paths Archify hostAdmission / 主图 HOST_CONVERGENCE 文案:2026-10-09 已清理。
  • write-authority 两项「未核实」:2026-10-09 已钉源码结论。
  • cold-paths fail/ok-gate·strip 纵向 soft-pass:2026-10-09 已压缩求硬 pass。
  • overview / 部分 NOTES 历史段落仍可能写旧钉点短 SHA;以 catalog repositories 与各主题证据块为准。
  • 仓外辅图 /workspace/aidawork-step-diagrams 未迁入本仓;链读即可。

NOTES 证据块旧钉 77fe76838aa4 升钉(2026-10-14)

NOTES「证据与范围」中 86 条 aida-agent 引用原钉 77fe76838aa4,已逐条对 c47b25bf88b8 Git blob 复核(evidence/*.json 原已在 c47b,不受影响):

  • 78 条升钉:10 条原行号内容不变;8 条内容整段平移,改行号;57 条按 symbol 在新 blob 定位,改行号并确认 symbol 落在范围内;run-work-admission.ts 2 条原无 symbol 且内容已变,改钉 L15–56 · bindAdmittedWork(与 PANORAMA 一致)。另有 admission.ts 1 条:原范围 L112–120 本身不含 admitDigitalEmployeeTurn,改为 L90–120。
  • 8 条无法升钉(保留旧钉并就地标注「历史引用」):docs/architecture/{lifecycle-map,auth,digital-employee-admin,prompt-system,message-center}.md 已在 aida-agent 44d63e20(docs: retire architecture snapshots in favor of current code)删除,钉点无此文件。涉及 desktop-client、ledger-authority、harness、chat-workflow-bt、auth-tenant、message-center、digital-employee-skills(2 条)。这些主题的结论另有代码引用支撑,但对应文档段落的说法未在 c47b 复核。
  • 复核方式:机械比对 blob 文本与 symbol 位置;未做逐条语义重读(行为是否随代码变化仍需人工复核)。

图内字号偏小 / 演示按钮(2026-10-14,未在站点层解决)

  • 默认缩放下图内文字渲染约 8–9px(导览、overview)。实测 Archify viewer 把 SVG 固定在约 930px 宽,与 iframe 宽度无关(1440 与 1920 视口相同),所以站点模板改不了;要改需改 viewer 运行时,属于固定上游副本,普通内容维护不改内核。临时办法:主题页图下方已直接渲染机制说明全文,读者不必依赖图内小字。
  • 「演示 / 播放故事」按钮也来自 viewer,站点层没有隐藏;页首提示已写明「不需要演示 / 播放故事」。

钉升 7babdd215d1f / 0d19b3f8af7e / 5544709d588c 复核(2026-10-14 晚)

  • evidence/*.json 477 条三仓引用:363 条行号内容不变,92 条整段平移改行号,21 条按 symbol 重新定位;1 条(169_employee_lifecycle_cancellation_operations.sql)文件已改名为 170,整条 claim 按新事实重写。
  • NOTES 证据块 307 条:218 不变、55 平移、19 按 symbol 定位;5 条原本就指错(capability.ts 里没有 protocolVersion / local-files-v5 / Submitted attachments,run-work-admission.ts L1–80 无 symbol),已改指 shared/generated/local-files-v4.ts L5–6、assemble-submitted-attachments.ts、bindAdmittedWork。
  • 10 条无法复核,就地标「历史引用」:docs/architecture/lifecycle-map.md、docs/architecture/backend-admin.md、aida-agent / aida-desktop CONTEXT.md 在上一钉点和当前钉点都不存在(早已删除,之前漏标)。涉及 desktop-client、desktop-runtime、interaction-lifecycle、interaction-materials、local-executor、storage-planes。
  • 复核方式同上:机械比对 blob 文本与 symbol 位置;新增的 reply_user / 插件冻结 / 迁移 / 交付端口 / run_recovering 结论为本轮人工读代码所得。其余业务修复提交(VMS、薪资、考勤、离项结算、路由)未逐项判断是否影响现有图。

迁移编号矛盾已解决(2026-10-14,agent 931951dc69be)

上一条复核记下的「171/173/README 对 170、172 预留说法互相矛盾」已由 aida-agent !219 统一:角色按租户迁移预留 172(尚未提交、尚未执行)。剩余:docs/migration-drafts/rollback/170-role-capability-answer-DOWN-DRAFT.sql 与 tenant-resource-tiers-DRAFT.sql 仍写 170,README 说明正式提交时改为 172;资源档位草案执行前需 Max 确认。storage-planes 中对应 claim 已改写为已解决状态。

钉升 00bb88a84b63 / ae37b0944cf5 / 8cff57b90005 复核(2026-10-15 21:05)

  • evidence/*.json 495 条三仓引用:407 条文件未变,24 条文件有改动但范围内容不变,55 条整段平移改行号,8 条范围内容有变但 symbol 仍在范围内(逐条人工确认结论仍成立;其中 run-store.ts 4 条改指新范围 L1897–1932 / L1897–2000 / L1897–1986),1 条(plugins/aida-cli/plugin.json 版本 0.3.8)随版本升到 0.3.10 改写。
  • NOTES 证据块 345 条:277 条文件未变、15 条范围内容不变、26 条平移、6 条内容有变但 symbol 在范围内(run-store.ts 2 条改指新范围,其余 4 条结论不变保留)、21 条为历史引用;其中 interaction-materials 的 docs/architecture/message-center.md 此前漏标,本轮补标「历史引用」。write-authority 正文 4 处行号原本就偏(business-effect-task-continuation.ts L2492、main.ts L3850、local-file-operation-store.ts L220、run-store.ts L1877+),已对新钉改正。
  • aida-agent 本地为浅克隆(shallow 边界在 7525f1f5),git log 931951dc69be..origin/master 只列 11 条;实际差异按 git diff 与合并父提交 4fde16b4 判断,约 50 条提交。
  • 本轮人工读代码新增:过期卡任务树关闭(state-authority / interaction-lifecycle / write-authority)、Desktop「结束原任务」与「已收到答复」展示、Linux 平台与 safeStorage(desktop-client / trust-boundaries)、参数契约漂移(observability-map)、同名独立 Skill 跳过插件选择(vertical-plugin-mount)、aida-cli 结构化参数(capability-plugins)。
  • 未核实 / 未入图:Linux 包是否另有发布渠道、生产是否已发;safeStorage 策略未在真实 Linux 桌面运行;过期卡关闭守卫的生产命中率;MR-6a~6g 垂直 pack 迁移只确认现有引用平移可解析,未逐个判断是否值得单独成图;招聘 / VMS / Offer / 考勤业务修复未逐项判断。图(Archify JSON)本轮未改。

站会跟进(2026-10-16 SGT)

  • safeStorage:代码证据已补(策略 / Main 接线 / 凭证库 / 单测 file:line)。未在真实 Linux 桌面运行,未跑 Desktop 单测——等 Stanley 真机验证,不记为通过。
  • MR-6a~6g:已逐个读 diff,结论为行为不变的 verticals/ 搬家,不单独成题、不画图;约定与证据记入 vertical-plugin-mount。残留 child-run-orchestrator.ts L2758 recruit 字面量。

钉升 a3d56d1b0e2e / d7bb57ea1141 / eff845fd1d15 复核(2026-10-19 08:55 SGT)

  • evidence/*.json 原 540 条三仓引用:298 条范围内容不变,205 条整段平移改行号,37 条范围内容有变。其中 29 条按 diff 映射到新范围,symbol 仍在范围内,逐条读过结论仍成立(index.ts 会话存储那条收窄到 L1092–1100);8 条按新事实改写或删除:aida-cli 版本 2 条、Linux 发布 2 条(原「未接通」改为已接通)、.gitlab-ci.yml 已删 1 条(移除引用并改写结论)、提交观察日志 1 条、schema identity 2 条。新增 4 条 claim、19 条引用:迁移 174/176/177(storage-planes)、VMS 账号权限唯一来源(auth-tenant)、确认写入重试收窄(write-authority)、插件「始终允许」(trust-boundaries)。
  • NOTES 证据块约 390 条:204 条不变、128 条平移、34 条按 diff 映射(有 symbol 的都在范围内);19 条历史引用 / 同名文件无法自动定位,对应文件在两个钉点之间无改动;16 条 symbol 标签本来就不在所引范围内(迁移号、类名等宽松标注,上一钉点即如此),本轮未改。
  • 两个本地克隆(aida-agent、aida-desktop)都是浅克隆,git log 旧钉..新钉 计数不可信;变化按 git diff 与 first-parent 合并读。
  • 本轮人工读代码新增:Linux 发布链路(desktop-client)、迁移 174/176/177 与 identity(storage-planes)、VMS 唯一来源(auth-tenant)、重试收窄(write-authority)、插件始终允许(trust-boundaries)、观察日志尽力落盘(desktop-client)。
  • 未核实 / 未入图:177、176 在各环境是否执行(177 未执行的库上新 Agent 会拒绝启动);AIDA_IAM_VMS_SOT 等开关各环境是否打开;生产是否已发 Linux 包;子任务原子终止、识别失败收口、租户覆盖层只看了提交说明,未逐项判断是否要改图;VMS / 账单 / 考勤等业务修复未逐项判断。图(Archify JSON)本轮未改。本轮未跑三仓自身测试。

钉升 85546c2d37ea / a79bdcaac3ff / eff845fd1d15 复核(2026-10-19 21:15 EDT / 2026-10-20 09:15 SGT)

  • evidence/*.json 原 559 条三仓引用:252 条文件未变,25 条文件有改动但范围不变,161 条整段平移改行号,118 条范围内容有变,3 条所引文件已删(business-task-agent-harness/harness.ts)。范围有变的条目里,约 60 条按 diff 映射到新范围、symbol 仍在范围内,逐类读过结论仍成立;其余随 35 条 claim 改写换了引用(协议 v3 / 426、Local File 常量、握手、Skill 管理、超时、提示段、Harness、迁移 178、缺凭证收尾等)。新增 12 条 claim。现 612 条引用。
  • NOTES 证据块约 390 条:163 条文件未变、15 条范围不变、108 条平移、54 条按 diff 映射(symbol 在范围内)、24 条随正文改写换引用、21 条为历史引用(文件在旧钉即不存在);另修正 7 条本轮平移后 symbol 落在范围外的引用(plugin-host.ts PluginHost / taskProjections、chat-routes.ts RUNTIME_EXECUTION_PROTOCOL、local-file-v4-tool.ts ttlSeconds、orchestrator-runtime.ts resolveAndRun)。仍有 8 条 symbol 是宽松标注(迁移号、read 等,所引文件两钉之间无改动或改动与标注无关),上一钉点即如此,本轮未改。write-authority 缺口段里 2026-10-12 的旧行号作为「旧记录」保留,不再指向现行代码。
  • Agent 侧有两份编号都是 0090 的 ADR(0090-desktop-protocol-v3-and-retired-local-primitives.md 与 0090-skill-turn-recognition-failure-is-retryable.md),本站引用前者。
  • 未核实 / 未入图:
    • 迁移 177、178 在 150 / 202 / 任何共享库都没有执行记录(migrations/README.md 尚无 178 条目);未依次执行的库上本钉点 Agent 会因 identity 不符拒绝启动。
    • Desktop 协议 v3 的跨端验收:两个 ADR 都写明未运行 Desktop Electron / E2E / System / Pair;本站也没有跑。旧 Desktop 遇到 426 后的升级提示 UI 未逐条核对。
    • Desktop write-state 升级风险(静态推断,见 storage-planes 未核实 claim):旧版会在版本 3 文件里写出 protocolFeatures,新版遇到即判 corrupt 且整份解析;残留记录是否真会出现、corrupt 后如何处置未核实。
    • business_task_agent_turn_outbox 表仍在 DDL 与启动必需清单,源码已无写入方,是否计划删除未见记录。
    • Desktop 删除面(原语、Full access、FileGrant 等)依据 ADR 与提交说明,未逐文件核对。
    • TLA+ 模型本轮未运行 TLC,结果取自仓内 results/summary.txt。
    • Linux 真机:Skill 平台加入 linux 与 Linux 发布链路仍未在真实 Linux 桌面运行。
    • 本轮未跑三仓自身测试;ADR-0090 记载的 Agent 全量测试为 176 失败 / 23 文件(作者称改动前基线可复现)。

钉升 d4f252c559a8 / 5bba0a2f3c57 / eff845fd1d15 复核(2026-10-20 21:05 EDT / 2026-10-21 09:05 SGT)

  • evidence/*.json 原 612 条三仓引用:391 条文件未变,181 条范围内容不变(原地或整段平移),39 条范围内容有变(按 diff 映射,其中 12 条人工改范围:chat-routes.ts 协议门、write-state-persistence.ts LEGACY_DROPPED / read、atomic-json-store.ts、LF executor.ts、authorized-folder-authority.ts),1 条 symbol 失效(schema identity 字面量,随 claim 改写)。Desktop local-executor-service.ts 改名 local-execution-gateway.ts,引用改指新文件。范围有变的条目逐条读过;随 15 条 claim 改写换了引用(ADR-0093 协议门、迁移 179、加密信封、改名等),新增 8 条 claim。现 657 条引用。
  • NOTES 证据块约 400 条:260 条文件未变、105 条范围不变、25 条按 diff 映射或人工改范围、10 条为历史引用(文件在两钉均不存在,保持原样)、1 条随正文改写(178 段的 identity 引用移到新的 179 段)。另有 4 条迁移号宽松 symbol(113 / 114 / 115)沿旧状。
  • 仍有两份编号都是 0090 的 ADR(0090-desktop-protocol-v3-and-retired-local-primitives.md 与 0090-skill-turn-recognition-failure-is-retryable.md),本站引用前者;ADR-0093 只修订前者 D4 的 chat admission 一项。
  • 未核实 / 未入图:
    • 迁移 177、178、179 在 150 / 202 / 任何共享库都没有执行记录(migrations/README.md 仍无 178 / 179 条目;179 头注释写明共享部署需单独授权);未依次执行的库上本钉点 Agent 会因 identity 不符拒绝启动。
    • ADR-0093 状态仍是 Proposed,但代码已合入;移动端客户端本身、设备登记 / 吊销不在范围内。ADR 第 2 条(无本机载荷的 Run 本机工具集合为空)本站只读了 ADR 描述与 chat-routes / request-schemas,未逐条核对 resolveLocalFileV4ToolBinding / buildLocalExecutorRuntime 的空集合路径。
    • Desktop 加密信封升级路径(静态推断):旧明文 write-state-v4.json 不满足迁移条件(win32、含待用确认、非本账号、带 protocolFeatures 等)时写状态整体不可用;旧明文 authorized-folders-v4.json 不再读取、未见迁移代码。实际是否会发生、如何处置未核实;未在真机跑。
    • ADR-0092 路由迁移未完成:router.ts 仍有措辞续接(continuationFromRecentMessages 等),本站未逐条判断哪些规则已迁。
    • Work 展示账本跨 Run successor 的处理:提交说明写明既有 provider attempt guard 拒绝 completed / continued Root,尚无自然语料验收,交由独立 issue;本站未核对。
    • 诊断轨迹:Agent 侧 runtime-work-capture.ts(约 1000 行)与 Desktop desktop-local-resource-capture.ts 只读了入口与限额,未逐段核对采集内容是否只含公开字段。
    • business_task_agent_turn_outbox 仍在 DDL 与启动必需清单,源码无写入方。
    • TLA+ 模型本轮仍未运行 TLC。本轮未跑三仓自身测试,也未运行 Desktop Electron / E2E / System。

钉升 9b78ef6261a2 / 15a50c5c7369 / eff845fd1d15 复核(2026-10-21 20:55 EDT / 2026-10-22 08:55 SGT)

  • evidence/*.json 原 657 条三仓引用:441 条文件未变,156 条范围内容不变(原地或整段平移),58 条按 diff 映射(逐条读过;多数是 chat-routes 改用 rejectRequest / unavailable 指标包装造成的行移),2 条 symbol 失效人工改(identity 字面量、tenantCapFilter 移入 run-claim-quota.ts)。随 claim 改写 / 新增(迁移 180–185、ADR-0094 / 0095、配额桶、后台无生产者、指标 / attention / work-stop、Admin 收窄、Linux 发布、写状态退役)现 706 条,全部指向新钉且 symbol 在范围内。
  • NOTES 证据块约 430 条:298 条文件未变、80 条范围不变、32 条按 diff 映射、10 条为历史引用(两钉均不存在,保持原样)、2 条随正文改写;4 条迁移号宽松 symbol(113 / 114 / 115)沿旧状。
  • 本轮关闭 / 收窄的旧债:
    • 「177、178、179 无执行记录」——已收窄:migrations/README.md 记有 150 执行 178、179、181、182(2026-10-21),202 在 179 identity 上执行 181(重试)、182、183;184 / 185 无任何记录;README 177 段仍写「未执行」、另一行「150:未执行」与执行记录矛盾,本站按执行记录写、标为文档滞后。
    • 「Desktop 旧明文写状态升级路径」——已解决一半:代码改为退役不导入(write-state-v4.legacy-retired.json);旧明文 authorized-folders-v4.json 仍无迁移 / 退役代码。
    • Linux 发布链路:代码已有 generic feed 与固定下载地址;生产是否已发、AppImage 自动更新是否走通未核。
    • ADR-0093 无头放行:已画 ok-chat-headerless。
  • 仍未核实 / 未入图:
    • 迁移 184、185 在任何共享库都没有执行记录;未执行到 185 的库上本钉点 Agent 因 identity 不符拒绝启动。ADR-0094 仍是 Proposed,ADR-0093 仍是 Proposed(代码已合入)。
    • 后台工作 background_work.v1 无生产者:Work carrier 领取与 direct 领取都排除后台桶,MR6-A(!302)已合入但只有合同与策略,MR6 后续未见 MR / 分支;后台硬上限路径目前不会被生产流量走到。
    • ADR-0093 第 2 条(无本机载荷 Run 的工具集合为空)仍未逐条核对工具绑定的空集合路径;图里只写「Run 无本机执行载荷」。
    • Desktop 是否已接 GET /api/work/attention:本钉点 Desktop 源码未见调用;指标在各环境是否采集未核。
    • ADR-0092 路由迁移未完成(router.ts 仍引用 continuationFromRecentMessages);Work 展示账本跨 Run successor;诊断轨迹采集内容逐段核对——均沿旧状。
    • business_task_agent_turn_outbox 仍在 DDL 与启动必需清单,源码无写入方。
    • TLA+ 模型未运行 TLC;未跑三仓自身测试,未运行 Desktop Electron / E2E / System,未在真机验证 safeStorage / Linux 包。

补漏复核(2026-10-21 21:20 EDT / 2026-10-22 09:20 SGT,钉点不变)

  • 逐提交审阅 138 个(Agent 119 = 81 普通 + 38 merge;Desktop 19 = 13 + 6),架构相关 31 个;上一轮漏写的项已补入 9 个主题(见 CHANGELOG),evidence 现 764 条引用、NOTES 约 490 条,均指向钉点且 symbol 在范围内(4 条迁移号宽松 symbol 沿旧状)。
  • 仍未核实:
    • 后台工作「无生产调用方」是静态 grep 结论;MR6 合入后需重核。
    • VMS 表单描述工具在各租户是否挂载;AIDA_ENVIRONMENT、VMS Admin 登录开关、AIDA_ADMIN_VMS_PLATFORM_ADMIN_ROLES / AIDA_ADMIN_VMS_TENANT_ADMIN_ROLES 的环境配置;租户覆盖层与资源档位草案是否执行。
    • 工作台澄清复核由 LLM 判定,只核对了合同与校验,未跑判例。
    • 本轮 routing 修复(f5222c010 / e76845124 / b9ce82c11 等)是否都符合 ADR-0092「只否决 / 收窄 / 补参数」未逐条判断。
    • directoryIdentityDigest 要求先发 Agent 后发 Desktop;实际发布顺序未核。

继续核查(2026-10-21 21:45 EDT / 2026-10-22 09:45 SGT,钉点不变)

  • 已核:
    • ADR-0092:19 个 routing / llm-classifier 修复逐个判定,没有用原文正则 / 短语选能力;3 处第 4 条灰区(主分类内多一次 reviewAllFileTargets、考勤填报借 missing_input_reread 通道复核目标、HR 只读快捷入口硬编码)记在 enterprise-task-e2e,待 ADR owner 判断。
    • 后台工作生产者:GitLab(只读)MR6 只有 !302(MR6-A)已合入,没有 MR6-B / C 的 MR 或分支;origin/master 975c42720 仍无生产调用方。
    • directoryIdentityDigest:git 上 Agent 先合入 12 秒,Desktop v0.1.62 起带字段;Desktop 无版本协商,旧 Agent schema 严格。
    • 202 环境:仓库内人工记录显示 VMS Admin 登录开关与两份白名单已开、IAM 配置已迁 Nacos、tenant_adaptations 已建;2026-10-11 时 202 未声明 AIDA_ENVIRONMENT。
    • 工作台澄清:桩 LLM 单元测试 12 / 12 通过。
  • 三仓默认测试(钉点副本 /workspace/testrun,git clone --shared + pnpm install --frozen-lockfile,不连库、不跑 Electron E2E):
    • Agent:pnpm test(先按 CI gate 构建 tool-client)——@aida/agent 1252 文件 / 22614 通过、0 失败;tool-client 577 通过;web 326 通过;@aida/agent-eval 2 失败(index-cli.test.ts 子进程要 @aida/agent 的 dist,默认测试前没构建),其后的 boundaries / golden 未跑。
    • Desktop:pnpm test——14 文件 / 90 用例失败、6802 通过;失败集中在托管 Python 运行时未下载、macOS 专用路径(/private/tmp)、Linux 原生文件后端不可用,未逐条归因。
    • Plugins:pnpm test——contracts 19 / protocol 24 通过;plugin-cli 51 / 52,Python create pins the SDK shipped by the workspace 失败(CLI 模板写 aida-plugin==2.0.1,SDK 已是 2.0.2,是产品漂移);链式脚本就此停止,python-sdk / plugins / examples / typecheck 未跑。
  • 仍未核实:生产及 202 以外环境的 AIDA_ENVIRONMENT、VMS Admin 开关与白名单、Nacos 当前值;资源档位草案在各库的实际状态;describe_vms_form 在各租户是否挂载;Agent 部署时间(无发布 tag);真实模型下的工作台澄清判例。

钉升与内容变更流水

钉升(2026-11-06 tip sync / 全量)

Agent d7974dcc37c0 → 7f2e519936b5 · Desktop fb3e4fdfd5a2 → 4346d79eb364 · Plugins d220086aa495 → a33ce3733365(Docs 保持 d777a4b536e6)。

  • Agent(~157):STA-269 工作台图片入口;ADR-0100/0101;claim fairness 策略失败暂停领取;aidadata/IAM session proof;VMS/recruit 业务修复未入图。schema identity 仍 conversation-turn-queue。
  • Desktop(~255):工作台 OCR/图片、澄清 pending、run_python 默认开、artifact 引用、0.2.10。
  • Plugins(~57):attendance 2.1.36–2.1.38;aida-cli 0.3.13 / SDK 2.3.0;requires.desktop;object-root 参数。
  • 证据:机械升钉 + 行号重定位;版本钉改写。未新画必选视图(保留既有 attendance 深潜)。
  • formal-verification Sync 仍钉 e2adc9a3c325。

钉升与插件架构同步(2026-11-03 tip sync)

Agent 9542399f0060 → d7974dcc37c0 · Desktop 986b55d69f3f → fb3e4fdfd5a2 · Plugins ea65d3ca0d62 → d220086aa495 · Docs 7a8f209844ea → d777a4b536e6。

  • Agent:本地工作台 Plugin 调用身份合同(STA-221 plugin-local-execution.ts,enterprise_agent / local_workbench 双 owner 与 executionDigest);精确成功读取后消费待执行步骤(plugin-next-action.ts,写操作或缺参不释放 continuation / nextAction 义务);待审阅任务受限只读旁问(plugin-side-query.ts);内部 Preview 免签名发布校验(loadPreviewReleasePublisher / official-distribution/preview/v1/);文件拆分重定位(chat-business-task-admission.ts、resource-policy-limits.ts / resource-policy-resolver.ts、api-body-limit-middleware.ts、local-file-failure-history.ts)。
  • Desktop:本地工作台原生插件视图与工具闭环(createLocalPluginProvider、LocalPluginTaskInteractions、LocalPluginView、PluginHost.executeLocal(local:executionId));移除 directory-output / directory-batch / manual-batch 及 plugin-execution-approval.ts(PluginExecutionApprovalGate);PluginCallJournal.settle 在 !dispatched 落盘失败时显式抛 PLUGIN_CALL_JOURNAL_UNAVAILABLE(禁返回未持久化 failed 回执,配套 PluginCallOnce.tla);Windows Python MAX_PATH 260 预算预检(assertPluginPythonPathBudget / PluginPreparationError);连接 suggestedBaseUrl 与已配置连接 HTTP origin 复用(plugin-connection-target.ts);视图动作复用(pluginToolAllowsOrigin(tool, 'ui'));aida-session 邮箱连接状态读取 Desktop 邮箱账号列表。
  • Plugins:aida.mail-archive 重构为通用邮箱插件 aida.mail(新增 read_message 正文读取与 save_attachment 任务 Artifact 保存,移除目录归档与自带 UI);attendance-tally 2.1.16 边界收敛(task_provider.py 55 行纯路由、准入前确定性拒绝 calculation_rejection.py 与 AdmissionOutcome.tla、工作簿/回执状态去冗余约减三成、suggestedBaseUrl);CLI --unsigned-preview 内部预览发布通道。
  • 视图与证据:更新 plugin-run-projection/plugin-view-and-batch、trust-boundaries/mailbox-connect、capability-plugins/main、plugin-v2-host-runtime/plugin-end-to-end-trace 四张 Archify 图及对应 NOTES/MERMAID;全站 48 个主题证据升钉重定位并补充最新插件架构 claim。

钉升(2026-11-01 站岗 / tip sync)

Agent edc396052f26 → 9542399f0060 · Desktop a6cbb1e1af36 → 986b55d69f3f · Plugins a142b0a664c4 → ea65d3ca0d62。

  • Agent(213):ADR-0099 应用访问边界部分合入(application-route-catalog);历史入项权威/proposal 匹配与私有确认收紧;Python Runner 管理面;路由/读选择源归属与多垂域修复(未入图)。
  • Desktop(66):STA-188 续办不带客户端 capabilityId;STA-213 make_docx 投影;STA-210 异常落盘;发布通道隔离;本地副作用一次执行验证。
  • Plugins(89):条件产物声明 SDK 校验;attendance 访谈台账与发布签名;mail-archive authorizing 说明。
  • 证据:机械升钉 + symbol/行号重定位;改写 ADR-0097 fresh 目录调用点至 application-route-catalog;NOTES/CHANGELOG 叙事对齐。未新画必选视图;旧债(共享库迁移执行、Computer Use 真机、ADR-0093 #2 等)仍保留。

整站运行主叙事入口(2026-10-29 09:25 EDT,钉点不变)

Agent e2adc9a3c325 · Desktop 8eecd12081db · Plugins a142b0a664c4(未升钉)。

  • 新增 site-runtime:自解释「整站运行」——三仓谁拥有什么、一轮用户话路径、本机/桌面 vs 云端 Agent、VMS/MSP Pack×Edition 口径(MSP≠单纯多租户)、信任/鉴权硬门、失败落点索引。理解型 workflow;不新造边界几何,深挖链到既有主题视图。
  • site/catalog.json:home → site-runtime;newcomerRoute 第 1 站改为「整站运行」;原「从一条企业任务看懂」顺延为第 2 站。
  • 交叉:PANORAMA / NOTES / GLOSSARY;enterprise-tour-narrative、product-narrative 入口说明。
  • 未升 tip;product Pack×Edition 仍标产品口径(evidence 一条 unverified + limit)。

产品叙事 / 会前口径(2026-10-29 09:16 EDT,钉点不变)

Agent e2adc9a3c325 · Desktop 8eecd12081db · Plugins a142b0a664c4(未升钉)。

  • 新增 product-narrative/NOTES.md:对内材料口径——延期非单一技术债;MSP ≠ 单纯多租户(原中台算薪运维 / 复杂考勤 / 多客户账单入产品);难在 Windows + VMS + MSP Edition 同时稳;通用/业务能力拆分;Pack×Edition;客户名内外分轨。明确标注为产品叙事,非 tip 源码事实;无新 evidence claim。
  • 纠正:enterprise-task-e2e/entitled-local-catalog 现状卡片「MSP 本机」→「桌面本机」(避免把 MSP 读成部署口味 / 单纯多租户)。
  • 交叉:入口 NOTES / PANORAMA / GLOSSARY;enterprise-tour-narrative、agent-config-pipeline、enterprise-task-e2e、scaling-roles 旁挂链接。
  • 未核:四态交付 / duty key / 带色审计底稿的代码级映射;不把 pitch HTML 当 SoT。

钉升(2026-10-28 21:30 EDT / 2026-10-29 09:30 SGT)

Agent 2141b561dc97 → e2adc9a3c325 · Desktop 236252f2fdc3 → 8eecd12081db · Plugins 77d3090b5d9a → a142b0a664c4。

  • Agent(223 条 / 75 first-parent):迁移 187–191 与 tip identity conversation-turn-queue;LLM Credits 受理;远程 Desktop 设备目录;本地 tenant_admin;文档转换原件消费者;会话 turn FIFO 队列。ADR-0097(Proposed,D1-2a 合入)与 ADR-0098(方向 Accepted,STA-193 止血已合入、其余待批)。IAM subject/permission gateway、install-trust 服务端配合、mail 读恢复、Skill 插件范围、旁问等。大量 VMS/recruit/payroll 业务修复未入图。
  • Desktop(160 条):安装即授权(删除 execution-grants);原生路径 / Full access;mail 读恢复与旁问;Skill 受限 Plugin 协商;顺序报告;0.2.2–0.2.4 发布(未入图);开发者设置默认值(未入图)。
  • Plugins(7 条):publish:all + OSS 状态迁移;aida-cli dry-run/断点相对化;attendance-tally UI SDK 同步(未入图)。
  • 改写主题:storage-planes、auth-tenant、enterprise-task-e2e、trust-boundaries、desktop-client、desktop-runtime、scaling-roles、observability-map、plugin-bundle-release、state-authority、local-file-v5,以及入口 NOTES。新增时序图:storage-planes/turn-queue、desktop-runtime/remote-device、enterprise-task-e2e/entitled-local-catalog。
  • 证据:机械升钉 + symbol/excerpt 重定位;改写/新增 claim 覆盖 187–191、Credits、远程设备、turn queue、ADR-0097/0098、安装即授权、publish:all。共享库迁移执行与 Computer Use 真机等旧债仍显式保留。

全部 update(2026-10-25 21:15 EDT / 2026-10-26 09:15 SGT,钉点不变)

Agent 2141b561dc97 · Desktop 236252f2fdc3 · Plugins 77d3090b5d9a。站岗已升钉并写 NOTES/evidence;本轮把边界变化补进图,并纠正两处事实错误。

  • 新增时序图:scaling-roles/bg-admit(STA-33 MR6 后台受理,默认关)、enterprise-task-e2e/route-continuation(ADR-0092 续接只读 continuation_relation)、agent-config-pipeline/catalog-publish(ADR-0096 单向发布)、capability-plugins/computer-use(授权/观察/视觉回执)、trust-boundaries/mailbox-connect(connect-only vs JWT 读)。
  • 纠正:scaling-roles 删除过时「仍无生产者」;quota-claim 现状卡片改为「生产者已合入(默认关)」;capability-plugins computer-use targets 不含 linux-x64。
  • desktop-client 补 Computer Use Host / MailConnector / directory-batch NOTES 与 claim。
  • 未核债务仍显式保留:共享库迁移 186/184/185、authorized-folders-v4 无迁移、Computer Use 真机、ADR-0093 #2、attention API 无 Desktop 调用方;大量 VMS/recruit/payroll/UI 业务修复仍不入图。

这里是变更日志,不是架构说明。新人读架构请从 site-runtime(整站运行)开始;一条任务见 enterprise-tour-narrative;当前钉点以 site/catalog.json 为准。以下段落原样从 NOTES.md / PANORAMA.md 移入(2026-10-14)。

钉升(2026-10-25 20:49 EDT / 2026-10-26 08:49 SGT)

Agent 9b78ef6261a2 → 2141b561dc97 · Desktop 15a50c5c7369 → 236252f2fdc3 · Plugins eff845fd1d15 → 77d3090b5d9a。

  • Agent(约 316 条提交 / 79 first-parent):STA-33 MR6-B/C/D 后台生产者(执行循环、报告通知、租户门控,默认关)+ 迁移 186 / identity aida-config-dev-2026-10-22-background-open-roots-index;ADR-0092 迁移 4/4(knowledge/workforce/analytics、recruit、vms + 跨族清零,续接只读 continuation_relation,router.ts 拆分);ADR-0096 产品目录仓库所有;邮箱连接授权与读取分离(IMAP/OAuth);Computer Use 视觉回执合同;Skill 分发绑定执行归属、插件取消停续写、本机工具范围与直连准入对齐、tool-less shell、个人技能管理准入等。大量 VMS/recruit/payroll 业务修复未入图。
  • Desktop(约 118 条 / 39 first-parent):Computer Use 窗口授权与原生操作;邮件会话连接与目录归档卡;plugin-host 归档目录授权与 manual archive 隔离;Main 恢复 / Skill dispatch claim;Local File 候选不可探测时保持 pending;托管 Python 准备/信任边界与 Windows 路径预算;角色引导卡;0.1.64–0.1.72 发布(未入图)。
  • Plugins(14 条):aida.computer-use 协议与八种窗口操作;aida.mail-archive agent-first + directory-batch;官方插件 linux-x64。
  • 改写主题:scaling-roles、storage-planes、enterprise-task-e2e、agent-config-pipeline、capability-plugins、trust-boundaries,以及入口 NOTES。图几何与视图 id 未改。
  • 证据:evidence 引用对新钉机械升钉并按 symbol 重定位;新增/改写后台生产者、迁移 186、ADR-0092 完成态、ADR-0096、computer-use、mail-archive、邮箱授权边界等 claim。共享库是否已执行 186、Computer Use 真机链路未核。

继续核查(2026-10-21 21:45 EDT / 2026-10-22 09:45 SGT,钉点不变)

Agent 9b78ef6261a2 · Desktop 15a50c5c7369 · Plugins eff845fd1d15。把上一轮「仍未核实」逐项查到能查的程度,只改 NOTES + evidence,不加图:

  • enterprise-task-e2e:ADR-0092 逐提交判定(无违规)与第 4 条三处灰区。
  • scaling-roles:GitLab 上 MR6 只有 MR6-A 已合入;资源档位草案执行状态。
  • local-file-v5:directoryIdentityDigest 合入 / tag 顺序与兼容性;工作台澄清桩 LLM 判例。
  • auth-tenant:202 环境 VMS Admin 开关、白名单、tenant_adaptations 与 AIDA_ENVIRONMENT 的仓库内记录。
  • write-authority:describe_vms_form 只有配置脚本、无执行记录。

补漏(2026-10-21 21:20 EDT / 2026-10-22 09:20 SGT,钉点不变)

Agent 9b78ef6261a2 · Desktop 15a50c5c7369 · Plugins eff845fd1d15。逐个审阅本次钉升的 138 个提交(Agent 119 / Desktop 19)后,把上一轮复核漏写的架构变化补进 NOTES + evidence(新增 25 条 claim),不加图:

  • scaling-roles:MR6-A 后台命令合同、工具交集规则(BI 默认关)、workKind、无生产调用方、档位草案 max_concurrent_background_runs。
  • observability-map:work-attention-v1 合同 fixture、RUNTIME_WORK_READ_TIMEOUT 可重试、Pack 发布门 / readyz packs 覆盖隐式跟随租户、Desktop 超长消息拒绝回执。
  • auth-tenant:覆盖层管理角色读取侧兜底与版本 / 回滚路由、Pack 订阅选择校验、AIDA_ENVIRONMENT 生产判定与无声明 JWT、VMS 租户级管理员登录与 effective-permissions 复核;修正「VMS 会话只复核平台超管」的措辞。
  • write-authority:VMS 表单写入合同——确认时以确认人身份重读描述、formValidationVersion=2、只填后台认证可写的标准字段。
  • local-executor / local-file-v5:canPrepareSkillScriptEntry(可准备 ≠ 可信)、旧 root 效应冻结、directoryIdentityDigest、LF 参数纠错窗口、工作台正式澄清。
  • time-bounds:工具目录发现 10s / domain、Desktop fetchAidaJson 15s、Skill 选择器 20s。
  • trust-boundaries:原生路径引号父目录修复;enterprise-task-e2e:ADR-0092 续接仍在、本轮 routing 修复未逐条判定。

钉升(2026-10-21 20:55 EDT / 2026-10-22 08:55 SGT)

Agent d4f252c559a8 → 9b78ef6261a2 · Desktop 5bba0a2f3c57 → 15a50c5c7369 · Plugins eff845fd1d15(未动)。

  • Agent(119 条提交):迁移 180–182 把 messages 改回普通表(180 分区方案被取代,181 messages-unpartitioned 换表,182 删 messages_partitioned_old;启动要求 relkind = 'r');183 conversation_seq / quota_bucket / origin_run_id + 后台消息守卫,184 配额桶在首次写 run_kind 时推导,185 background_work.v1 不占会话唯一活跃槽(identity aida-config-dev-2026-10-21-background-outside-conversation-slot);ADR-0095(Accepted)消息按 conversation_seq 读、快照按输入消息序号截断、Run 领取按桶(前台软上限 / 后台硬上限 advisory lock / uncounted 不限)、Stop 必须指向 root(/api/runs/:runId/work-stop)、MR6-A 后台工作合同与只读工具策略(无生产者);ADR-0094(Proposed)锁层级,9a3e49ec1 删 runtimeExecution 受理分支、受理不再 FOR UPDATE 已有 root、过期任务树收口改不等待;MR1 运行时指标、MR3 GET /api/work/attention;ProviderLimiter 前台 / 后台分队;Admin 本地操作员收窄(T11-admin 固定租户 11 tenant_admin、会话版本 HMAC、VMS 复核)、租户覆盖层不能授予管理角色;migrations README 补 150 / 202 的 178 / 179 / 181 / 182 / 183 执行记录。VMS 标准 Pack 版本化与大量 recruit / vms 业务修复未入图。
  • Desktop(19 条提交):旧明文 write-state-v4.json 改为「退役、不导入」(ca745377,回执带 retiredOperationIds);Linux generic 更新源与固定下载地址(26187f12 / 08f6d362);移除 ripgrep 打包;Skill 目录有界等待、原生路径引号父目录修复;0.1.62 / 0.1.63 发布提交(未入图)。
  • 改写的主题:storage-planes、scaling-roles、runtime-v2-status、observability-map、auth-tenant、state-authority、desktop-client、trust-boundaries,以及入口 NOTES。新增三张时序图:trust-boundaries/ok-chat-headerless(ADR-0093 无头放行,补上次「图未画」)、observability-map/runs-stream、scaling-roles/quota-claim;已有图几何与视图 id 未改。
  • 证据:evidence 原 657 条引用对新钉复核,现 706 条;NOTES 约 430 条引用复核;见 ATLAS-DEBT。

钉升(2026-10-20 21:05 EDT / 2026-10-21 09:05 SGT)

Agent 85546c2d37ea → d4f252c559a8 · Desktop a79bdcaac3ff → 5bba0a2f3c57 · Plugins eff845fd1d15(未动)。

  • Agent(浅克隆,48 条 first-parent / 128 条提交):ADR-0093 chat 受理与本机执行协议解耦(bd7c504d1 / 6fca7631b:无 X-AIDA-Protocol 且无本机执行载荷的 chat 请求受理、Run 无本机工具,LOCAL_EXECUTION_CHAT_BODY_FIELDS;修订 ADR-0090 D4 的 chat admission 一项);docs/reference/mobile-client-readiness.md 与路由耦合清单脚本(bc2d0100e,未入图);ADR-0092 路由决策归分类器(Accepted,存量逐族迁移,未完成);迁移 179 + identity aida-config-dev-2026-10-20-local-file-transient-expiry(守卫函数新增 transient-expiry 写入者);只读 GET /api/runs/:runId/stream(8bbbc6986)与生产 Work 展示账本写入 run_projection_events(3d61c4903 / f3b517c5b savepoint 隔离 / da594270b 登记为受审 Run 写入者);Desktop 诊断轨迹交付 /api/trajectory-delivery + Redis 临时传输(984574a6f);超长消息受理前回执 RUNTIME_WORK_MESSAGE_TOO_LONG(547ae8ae2)。未入图的行为修复:Child Run 记录被能力策略替换的工具结果(96ee4b72f,不再以 RUNTIME_WORK_CHILD_TOOL_OBSERVATION_MISSING 失败)、tool-round-state.ts 拆出轮次状态契约解循环依赖(f8359826b)、同对象写目标争议独立复核(7e21d28f3),以及大量 recruit / vms / routing 业务修复。
  • Desktop(浅克隆,19 条 first-parent / 38 条提交):账号作用域加密信封 LocalSecureEnvelope(LF 写状态、授权文件夹、已选文件句柄、artifact 索引、原生路径 message-overlay),旧明文 write-state 迁移只在严格条件下进行;原生路径隐私:消息里的本机路径换成 [LocalMaterial:…] 标记(e2fdc7c7 / f54b63ce / 736ba9e9);LocalExecutorService → LocalExecutionGateway;Desktop 持有的轨迹采集与本地归档(da4fb523);移除已退役执行器的打包诊断检查(23d5344e)。服务重启后恢复原观察(d46e4486)、安全结束中断原任务(0414e9d6)等 UI 修复未入图。
  • 改写的主题:trust-boundaries、desktop-runtime、observability-map、local-file-v5、local-executor、storage-planes、enterprise-task-e2e,以及入口 NOTES。图只改 storage-planes 主图三处文字(Desktop Main / 授权夹 sublabel、卡片条目),不改几何与视图 id;ADR-0093 新增的「无头放行」分支没有画进 ok-426-lf,写在 NOTES。
  • 证据:evidence 原 612 条引用对新钉复核,现 657 条(新增 8 条 claim);NOTES 约 400 条引用复核;见 ATLAS-DEBT。

钉升(2026-10-19 21:15 EDT / 2026-10-20 09:15 SGT)

Agent a3d56d1b0e2e → 85546c2d37ea · Desktop d7bb57ea1141 → a79bdcaac3ff · Plugins eff845fd1d15(未动)。

  • Agent(浅克隆,按 git diff 与 first-parent 合并读,14 条 first-parent / 62 条提交):Desktop 协议 v3(ADR-0090)——DESKTOP_PROTOCOL_VERSION = 3,握手帧只剩 { type, protocolVersion, invocationId },chat 提交、validate-local-executor、本机执行回执、Local File 回执/投递、durable recovery、桌面分发对非 3 统一 426 DESKTOP_UPGRADE_REQUIRED;LOCAL_FILES_V4_PROTOCOL_VERSION=5、local-files-v5、feature token、LOCAL_FILE_PROTOCOL_UPGRADE_REQUIRED、desktop_protocol_version_required、local_execution_recovery_protocol_upgrade_required 删除;下发给 Desktop 的工具只剩 readSkillFile / runSkillScript / Skill 管理 / Local File V4;删除 User Skill delegated-run、workflow-runtime、attendance-rule-onboarding 与 BusinessTaskAgentHarness(user-skill-context 提示段、userSkillBinding 一并删除,历史 Work 停到 manual_recovery);Skill 脚本 argv ABI 与 linux 平台;迁移 178 + identity aida-config-dev-2026-10-18-desktop-protocol-v3;确认写入三组修复(消费 CAS 要求 Run 未停、未发送写记 failed BUSINESS_EFFECT_NOT_DISPATCHED、租约恢复移入 settleInterruptedBusinessEffect 与批次代际 fence)及 specs/tla 模型;SoD 多审批人修复;Run 内 request_file_access 授权不被 restrictFileTargets 过滤。
  • Desktop(浅克隆,5 条 first-parent / 19 条提交):ADR-0087 本地能力收敛与协议 v3(生成的 protocol-version.ts)、ADR-0086 Codex 风格 Skill 脚本 argv ABI;删除 Agent 从不下发的原语(ea79497f)、Full access / Trusted host User Skill 运行时(312e095b),Local File V4 成为唯一模型可见文件路径(fb0bf65a);V4 读不再受托管 Python 探针影响;授权附件以权威 id 作 attachmentId;macOS 退出标志改经 MainShutdownCoordinator(未入图);System 测试与对话面板修复(未入图)。
  • 改写的主题:trust-boundaries、desktop-runtime、local-file-v5、local-executor、capability-plugins、observability-map、interaction-lifecycle、digital-employee-skills、prompt-llm、harness、chat-workflow-bt、time-bounds、storage-planes、write-authority、state-authority、desktop-client,以及入口 NOTES / PANORAMA / GLOSSARY。图只改标签与卡片文字,不改几何与视图 id(fail-426-lf / ok-426-lf 沿用旧 id,内容改为 Desktop 协议 v3;wire-drift / cutover-deploy 标为历史快照)。
  • 证据:evidence 原 559 条引用对新钉复核,现 612 条;NOTES 约 390 条引用复核;见 ATLAS-DEBT。

钉升(2026-10-19 08:55 SGT)

Agent 00bb88a84b63 → a3d56d1b0e2e · Desktop ae37b0944cf5 → d7bb57ea1141 · Plugins 8cff57b90005 → eff845fd1d15。

  • Agent(浅克隆,按 git diff 与 first-parent 合并判断,约 90 条合并/提交):迁移 174(审计月分区)、176(分发 CHECK 加 linux-x64)、177(audit_events 加 state / failure_class,schema identity 推进到 aida-config-dev-2026-10-16-audit-state-contract,README 写明尚未在任何共享库执行);确认后写入只在确定没发出去时自动重试(not_sent 连接错误、无报文 503),502 / 504 / 超时按结果未知;可选的 VMS 账号权限唯一来源 AIDA_IAM_VMS_SOT、影子比对、租户角色映射覆盖层(都默认关,相关建表仍是草案);子任务不可续办时原子终止、识别失败在子任务受理前收口;VMS / 账单 / 考勤 / 向导等业务修复未逐项入图。
  • Desktop:Linux 发布脚本接上 linux-x64(AppImage + latest-linux.yml),删除 .gitlab-ci.yml;插件执行「始终允许」持久授权;提交观察日志改为尽力落盘(无强加密时只留内存,不再拒绝提交);长输入可展开编辑器、引导示例一键填入、发布 0.1.61(界面变化,未入图)。
  • Plugins:协议 Platform 枚举加 linux-x64,CLI 发布合同重生成;aida-cli 插件 0.3.11 / CLI 0.1.1。
  • 证据:evidence 559 条、NOTES 约 390 条引用对新钉复核;见 ATLAS-DEBT。

站会跟进(2026-10-16 SGT,钉点不变)

  • safeStorage 证据补单测引用并分层标注「代码已核 / 真机未核」(desktop-client、trust-boundaries)。
  • MR-6a~6g 记入 vertical-plugin-mount:不单独成图(理由见该 NOTES)。

钉升(2026-10-15 21:05)

Agent 931951dc69be → 00bb88a84b63 · Desktop 0d19b3f8af7e → ae37b0944cf5 · Plugins 5544709d588c → 8cff57b90005。

  • Agent(本地为浅克隆,git log 只显示 11 条;从合并父提交看实际约 50 条):过期确认卡——受理新消息时在同一事务关闭只等过期卡的任务树(expired-interaction-closure.ts,legacy 置 expired,Runtime Work 走 stopRuntimeWorkSupersededByNewTurnInTx),会话 lease 恢复也调用(只限 legacy);ToolContractMonitor 增加参数契约漂移(argumentDrift);与已安装独立 Skill 同名的「用 xxx-cli」不再当作插件选择;MR-6a~6g 把垂直业务特例迁入各 verticals/ pack(路由、网关路由、启动 pack、Child Kernel 招聘分支、确认工具特征),现有引用全部平移可解析,未改图;招聘 / VMS / Offer / 面试反馈等业务修复未逐项入图。无新迁移。
  • Desktop:过期卡「结束原任务」(Runtime Work 经 Main stopSubmission 持久停止,legacy 沿用 cancel,只停卡绑定的原始 Root);suspended 且最近交互已 resolved 显示「已收到答复,等待后续处理」;续办后新问题即时刷新;Linux x64 平台与 AppImage(发布脚本 targets 与 Agent 分发 CHECK 仍无 linux-x64);safeStorage 严格策略(Linux basic_text 视为不可用,凭证 session-only);首页按角色推荐 / 待办 CTA 直达确认卡、Velopack 工具预检、发布 0.1.60(非架构变化,未入图)。
  • Plugins:aida-cli 0.3.10 不再把对象/数组参数 JSON 字符串化;考勤字段适用性 / 来源统一与跨事实归属校验(插件内部业务规则,未入图)。
  • 证据:evidence 495 条、NOTES 345 条引用对新钉复核;见 ATLAS-DEBT。

钉升(2026-10-14 21:20)

Agent 7babdd215d1f → 931951dc69be(!219:只改 171/173 注释与 migrations README,统一角色按租户迁移预留 172)。Desktop / Plugins 未动。

钉升(2026-10-14 晚)

Agent c47b25bf88b8 → 7babdd215d1f · Desktop 5aaeceb707c0 → 0d19b3f8af7e · Plugins d7a432e3885b → 5544709d588c。

  • Agent:reply_user 内部工具(contextPolicy.replyUserEnabled,默认关)与 reply_user_message 运行事件;普通 Work 入口冻结路由选中的动态插件;迁移 169 拆号为 169 restore + 170 取消约束(旧名别名),新增 171、173 纯数据迁移;业务修复多项(VMS / 薪资 / 考勤 / 离项结算等,未逐项入图)。
  • Desktop:reply_user_message 独立助手消息行;run_recovering 显示「续跑中…」;LocalExecutor 交付端口收进 deliveries;关停测试跟进 AgentLoop 移除(移除本身在 91a25b75,早于上一钉点)。
  • Plugins:考勤规则修订 / 核算导出 / 完成状态修复,未改插件协议(未逐项入图)。
  • 证据:evidence 477 条引用、NOTES 307 条引用对新钉复核;见 ATLAS-DEBT。

[NOTES] tip 同步(2026-10-08)

全仓钉升至 Agent c47b25bf88b8 / Desktop 5aaeceb707c0 / Plugins d7a432e3885b;当前 schema identity 为 aida-config-dev-2026-10-10-work-side-queries(迁移 163–169;168 因撞号顺延;两个 169 须先 restore 再 cancellation;租户角色模型/资源档位的“迁移 170”仍只是 docs/migration-drafts 草案,未进 migrations/)。2026-10-14 钉升:按租户公平领取(顶层 run 标准档上限 2)、模型供应商限流与 LLM_BUSY 背压、pg_notify 配置跨实例失效、租户资源档位(表缺失回落 standard)、业务复核卡改后台 owner 执行、readyz 工具契约漂移;Desktop 删除旧设置迁移、markSent 必带 intakeIds;aida-cli 0.3.8 切回 npm 正式 0.1.0。2026-10-13 钉升:个人 Skill 管理 capability、Work SSE 路由决策脱敏投影与 run_recovering、aida-cli phase1.1 / SDK 2.0.2。2026-10-12 钉升:chat 提交与观察统一为 Work 路径(runtime-v2.1 入口移除,Desktop 删 runtime-v2-core-contract / agent-loop 合同);Local File 新增原件上传 capability local-files-v5-original-content-v1;Plugins SDK 迟到失败回执、salary-smartcalc 改 Python runtime。

[NOTES] tip 同步(2026-09-22)— 历史纪要

已失效作当前钉点;现行钉见上文「tip 同步(2026-10-08)」与 catalog。

当时钉 Agent 4523866f4e25 / Desktop 0634f8a9c148 / Plugins 15ebd254e0e7。架构主变:runtime 目录统一、runtime-work-v1 默认原工作绑定、hostAdmission / RUNTIME_HOST_CONVERGENCE 退役、普通 Skill≠业务任务受理、schema identity → offer-approval-cycle、官方插件货架无 caidao 目录。详见 PANORAMA.md。

[PANORAMA] tip 同步(2026-09-22)— 历史纪要(已失效作钉点)

失效说明:本节是 2026-09-22 升钉纪要,不再是当前钉点。当时钉为 Agent 4523866f4e25 / Desktop 0634f8a9c148 / Plugins 15ebd254e0e7。当前钉点与十月主题见上文「理解入口与 Runtime 对照(2026-10-09)」「写权限链(2026-10-09)」及 NOTES.md「tip 同步(2026-10-08)」;catalog repositories 为准。

  • 当时主变(结论仍可参考,钉点以现行为准):runtime 目录统一、runtime-work-v1 默认原工作绑定、hostAdmission / RUNTIME_HOST_CONVERGENCE 退役、普通 Skill≠业务任务受理、schema → offer-approval-cycle、官方插件货架无 caidao 目录。
  • Skill↔任务拆分(userSkillBinding vs businessTaskBinding);官方插件货架无独立 caidao 目录(余 attendance-tally / salary-smartcalc / aida-cli)— 方向保留,细节以现行 tip 为准。
  • Live Model / Exclusive live:ADR-0059 与 DbModelRouter 同 Provider 不做 supported_models 兄弟 fallback — 结论保留。

代码证据

引用核验检查固定 commit 的文件与范围;实现结论来自代码阅读。自动检查不证明生产环境已启用。

已核验实现

Agent 持有企业执行机制;Desktop Main 承载本机能力;Plugins 仓提供协议、SDK 和不可变包。

aida-agentpackages/agent/src/gateway/orchestrator-runtime.ts:434–4627f2e519936b57902d4907ed8026fe1ecdd146e82符号:prepareExecution
aida-desktopapps/desktop/electron/plugin-host/plugin-host.ts:96–1274346d79eb36402355e51118df0edf1f98586880c符号:export class PluginHost
aida-agentpackages/agent/src/execution-host/router.ts:50–807f2e519936b57902d4907ed8026fe1ecdd146e82符号:ExecutionHostRouter
已核验实现

Run 状态是可更新的持久化记录;Projection 事件流与 Run 表职责不同。

aida-agentpackages/agent/src/session/run-store.ts:668–6987f2e519936b57902d4907ed8026fe1ecdd146e82符号:UPDATE agent_runs
aida-agentpackages/agent/src/shared/interaction-kernel-state.ts:11–417f2e519936b57902d4907ed8026fe1ecdd146e82符号:INTERACTION_STATUSES
已核验实现

runtime-v2.1 文本入口已从 chat 移除,chat 提交统一为 runtime-work-v1 Work;Worker 仍保留 v2.1 存量处理代码。不能据此推断生产全量切流已核实。

aida-agentpackages/agent/src/gateway/chat-routes.ts:1481–15217f2e519936b57902d4907ed8026fe1ecdd146e82符号:chatSubmissionStore!.admit
aida-agentpackages/agent/src/gateway/chat-routes.ts:401–4087f2e519936b57902d4907ed8026fe1ecdd146e82符号:RUNTIME_EXECUTION_PROTOCOL_UNSUPPORTED
aida-agentpackages/agent/src/index.ts:2625–26437f2e519936b57902d4907ed8026fe1ecdd146e82符号:workbenchExecution