--- summary: "为同步 SQLite 访问生成清单和迁移优先级" read_when: - "选择数据库工作线程迁移" - "审计网关主线程SQLite曝光" title: "数据库工作者迁移清单" --- 该快照包含以下五个原语的 **607 个非测试文件和 2285 个调用表达式**。该活动此前报告了 404 个文件;这是历史估计,而不是固定目标或调用表达式的计数。该清单遵循当前来源,不包括仅导入的匹配、评论、测试、固定装置和测试支持。其扫描范围和排除情况如下所示。 用`pnpm db:worker-inventory:gen`重新生成;使用 `pnpm db:worker-inventory:check` 进行验证。 `node scripts/database-worker-inventory.mjs --json` 发出每个调用的原语、行、列、词法操作路径、可选变量初始化器绑定、封闭同步防护、文件所有者、层和分类证据。该脚本使用存储库的 TypeScript 解析器、入口点参考图和 `rg`;它不加载应用程序代码或打开数据库。 ## 范围和解释 T1 是 request/event/timer 暴露,包括保守保留的运行时或混合内核,其调用者仍需要跟踪。 T1-compat 是仅弃用的 SDK 兼容性和命名共享内核,其唯一的主线程路径源自机械保护的弃用 API。名为 worker/maintenance-only 的内核通过精确审查的入口点进行了验证;仅文件名线索不是证明根。转义回调和返回方法系列仍然存在 live/unproven. T2 是启动、迁移或命名的 boot/lock 异常候选者。 T3 是 CLI、博士或开发人员一次性代码。 W 单独标记工作线程实现:它们的同步 SQL 是有意为之的,并且不是未偿还的主线程债务。基于文件名的 T2/T3/W 分类是一种审计线索,而不是每个调用者都是安全的证明。不要在不跟踪其调用者的情况下将混合内核或名称中带有“worker”的模块移动到 W。 审查的混合模块按其命名的词法操作路径对调用进行分类,可以选择缩小到变量初始值设定项或精确的同步防护。这些限定符排除嵌套函数体,并且防护仅适用于其 then-branch,因此即使源代码行移动,不相关的站点仍保持保守。其他文件层保留最广泛的适用计数暴露,包括明确的 worker/maintenance 混合物。每个文件每层最多有一行;层文件计数重叠,而总文件数和调用表达式是唯一的。这些不是测量的运行时调用计数。在更改其分类之前,重新检查操作和所有已注册的调用者。网关定时器调用的维护仍然是 T1。准备好的结果永远不会赋予当前的权威;跟随[工人访问](/reference/database-schemas/worker-access)。 规范修复突变和精确行读取器为本地 Doctor 调用者保留 T2;网关遗留主检测会比较现有会话读取器工作器中的条目和转录内容。全代和节点工件保管指纹仍然仅限于医生。共享清理内核保留 T1,其中发布的不透明 SDK 回调需要本机事务;初始化回滚使用工作人员的提交终结器。同步生命周期和对话绑定的最终效果权限检查仍然是本机残留。内存演员类别读取使用准备好的目录事实;本机认证 SDK 兼容性保留其现有分类。 Claw 来源的写入计数仅为 CLI-;其原始网关读取在五基元扫描之外仍然存在运行时债务。同样,仅限工作人员的直接 Cron 接收调用不会对它们传递公开的主机当前权限读取进行分类。重新分类更正元数据;它不会移动运行时 SQL 或演示加速。 扫描涵盖由 `rg` 选择的 `src/`、`extensions/`、`packages/` 和 `scripts/` 下的 JavaScript/TypeScript 文件(尊重忽略规则)。它识别直接调用、使用这些名称的属性调用以及命名导入别名。它不解析高阶别名、动态调度、传递包装器、直接 `DatabaseSync` 方法、其他查询基元或本机语言 SQLite。它是一个可重现的迁移队列,而不是一个完全的禁止检查器。测试被故意排除而不计为 T3。 | 键 | 原始 | | --- | ----------------------------------- | | Q | `executeSqliteQuerySync` | | F | `executeSqliteQueryTakeFirstSync` | | S | `runOpenClawStateWriteTransaction` | | A | `runOpenClawAgentWriteTransaction` | | R | `withOpenClawAgentDatabaseReadOnly` | | 层级 | 文件数 | 调用表达式 | | --------- | ----: | ---------------: | | T1 | 96 | 222 | | T1-兼容 | 7 | 12 | | T2 | 107 | 397 | | T3 | 115 | 348 | | W | 348 | 1306 | ## 配置文件优先级和当前割接状态 通道入口 `listPending`、`listClaims`、`listFailed`、`listUnsettled` 和 claim/recovery 准备共享具有突变的写入代理的 FIFO。他们必须观察早期提交的写入并保留读写数据库准入。显式只读检查在该代理内部仍然是非创建的。失败的运行状况、压力和帐户发现诊断使用只读工作线程,其中有限的陈旧性是可以接受的。 2026 年 9 月 20 日构建 `ddb31b38a88c` 上的五秒网关配置文件将聚合 **中**47% 的主线程时间归因于同步状态写入协调,包括配置文件创建和执行批准更新。没有为下面的读取路径捕获单独的每个站点时序。他们的订单遵循报告的配置文件分类,而不是发明的个人成本。 T1 表将这些已知的所有者放在首位;所有其他所有者均按字母顺序排列。 | 优先级 | 入口点/所有者 | 车道前验证状态 | | -------- | --------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 1 | `ensureProfileForEmail`; `updateExecApprovals` | Exec 策略突变使用共享状态编写器;最终的 SDK 权限读取并且不透明的批准提交内核保留其原生合约。配置文件创建是一个单独的所有者。 47% 是共享的,而不是单独测量任何一种方法。 | | 2 | `sessions.list` → `listProjectedSessions` → 常驻会话行投影 | 热请求已经重用了驻留行,没有主机 Kysely 读取。 Hydration、dirty/archived 行和成员资格读取仍然是迁移债务;保留身份密钥重用和投影修订。 | | 3 | `chat.history` → 历史工作者 | 普通的持久页面已经使用了worker。此切换通过同一所有者移动原始游标增量读取和 JSON 解析; display/profile 投影、字节预算和新共享检查保留在主机上。 | | 4 | 成绩单搜索 → `session-transcript-search.ts` | 异步外观通过运行时调用者的现有工作生命周期移动持久的 FTS 读取:`sessions-read.ts`、`sessions-search-projected.ts` 和 `embedded-gateway-stub.ts`。调用者等待后重新检查当前范围和授权。 | | 5 | Task/flow 注册表 | 异步读取门面已经使用了workers;天然突变和混合内核仍然存在。保留已接受的写入栅栏和投影出版物。 | | 6 | 供应商目录 → `plugin-model-catalog.ts` | 持久读取从 `models-config.ts` 达到的数据并准备好模型运行时;保持 Doctor 导入的不同。 | 温暖的 `sessions.list` 基线使用了 5,000 行、50 个查看者和 350 个调用:**zero 主机 Kysely 读取**、**3.07538 每次调用的 ms CPU**,以及**3.12680 每次调用的分摊挂墙时间为毫秒**。最初的按请求存储扫描已经消失,因此该通道不会要求另一次热列表数据库切换或加速。这些数字不包括投影水合、脏行刷新、存档行物化或成员资格读取。 历史记录切换留下 selected/current 会话条目、保留的转录本会话密钥和惰性子代理 source/run-input 可见性读取作为本机工作。普通的整页和原始游标增量使用历史工作者。待输入源和收据读取也使用工人;同步 SDK 完成仍然是单独的本机路径。绑定 Claude CLI 历史记录现在使用其临时合并索引:冷准备扫描绑定的源窗口,并且 page/anchor 请求仅项目选定的消息。隐身历史记录来自会话参与者内存后端,它从不打开 SQLite 或使用数据库工作线程。其 CLI-history 适配器对内存中显示索引使用相同的匹配策略。失败的持久工作读取永远不会选择内存后端。 持久会话反应摘要和目标消息读取使用承认的历史工作者;反应写入使用具有实时事务和提交准入的规范 SQLite 工作代理。隐身反应使用会话参与者内存后端。同步反应内核现在仅通过承认的持久工作线程运行;删除了本机隐身 read/write 和仅测试同步生产读取器路径。反应镜像通过历史工作者读取持久源会话绑定,包括 account/config 准备之后和调度之前的最终读取;同步切换防护保留实时反应堆、会话和配置检查。对话注册表仍保留为 T1,因为其他同步调用者不在此次切换之内。架构、存储字节、保留和更新行为保持不变。 ## Next 四个独立通道 在历史记录-delta/search 切换和单独的 profile/exec-approval 通道之后,检查这些所有者。只有目录读取才会在此处具有配置文件列出的位置;另外三个是有来源支持的候选人,没有单独的时间安排。设备配对已通过工作线程进行调度,但存在本机 boot/Doctor 迁移异常。在选择迁移之前测量每个实际的入口点。 | 所有者 | 具体调用者/边界 | | ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 持久保存的提供商目录 | `prepared-model-runtime.facts.ts`和`prepared-model-runtime.scoped-catalog.ts`称为`loadPersistedPluginModelCatalogsReadOnly`;准备目录字节关闭线程而不更改注册表生成。 | | 经营者审批记录 | `operator-approval-session-events.ts` 调用 `listPendingOperatorApprovals`;其商店还有expires/prunes记录。保持新鲜的决议并允许交易所有者一次性消费。 | | 工人环境清单 | `worker-environments/environment-access.ts`和`prepared-pool.ts`称为`store.list`;等待后返回库存修订并重新验证 placement/credential 权限。 | | 会话会员资格 | `session-row-projection-materialize.ts` 使用行事实来消耗准备好的成员资格;共享出版物使现有的预测修订无效。隐身会员资格来自其记忆演员。 | ## 按级别和所有者划分的呼叫站点 按该顺序计数使用 `Q/F/S/A/R`。源位置可在 `--json` 中找到;下面的第一行调用是导航提示。所有者标签是源目录边界,而不是 CODEOWNERS 分配。通用运行时候选者在声明主线程缺陷或已完成的迁移之前需要调用者证据。 ### 最大活T1业主 这些是实时或未经验证的调用表达式,而不是每轮测量的语句。下表 T1 按文件和词汇 API/operation. 对剩余工作进行分组 | 所有者 | 实时/未经证实的通话 | | -------------------------- | --------------------: | | `src/config/sessions` | 164 | | `src/state` | 18 | | `src/agents/auth-profiles` | 6 | | `src/secrets` | 5 | | `src/plugin-state` | 4 | | `src/agents` | 3 | | `src/config` | 3 | | `src/infra` | 3 | | `src/infra/outbound` | 3 | | `src/proxy-capture` | 3 | | `src/sessions` | 2 | | `src/acp` | 1 | | `src/agents/sessions` | 1 | | `src/node-host` | 1 | | `src/pairing` | 1 | ### T1 | 所有者/文件 | 呼叫 (Q/F/S/A/R) | 第一行 | API / 操作 | 暴露证据 | | -------------------------------------------------------------------------------------------------------- | ----------------: | ---------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **src/infra** · `src/infra/exec-approvals-sqlite.ts` | 1/2/0/0/0 | 58 | `assertExecApprovalsMutationAllowed`, `readExecApprovalsConfigRow`, `writeExecApprovalsConfigRow` | 捆绑的执行守卫消耗承诺的策略收据;已弃用的同步 SDK 读取器和本机批准兼容性保留共享行内核 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry-read.ts` | 0/2/0/0/0 | 77 | `parseReadableSessionEntryData`, `readSessionKeyBySessionIdInDatabase` | 儿童条目阅读器为工人所有;其他会话条目读取器保留本机 SDK 和维护调用者,并需要单独的操作证据。 | | **src/config/sessions** · `src/config/sessions/session-sharing-store.kernel.ts` | 1/0/0/0/0 | 34 | `listSessionMembersInDatabase` | 会话读取器共享的成员行内核 | | **src/acp** · `src/acp/runtime/session-meta-keys.ts` | 0/1/0/0/0 | 133 | `selectAcpSessionRow` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/agents** · `src/agents/github-oauth-records.native.ts` | 0/0/1/0/0 | 30 | `remove` | 仅限已弃用的网关 SDK cancelAuthorization/retireProfile 方法;捆绑的呼叫者等待异步替代。本机完成将保留到稳定弃用后删除为止。 | | **src/agents** · `src/agents/plugin-model-catalog.kernel.ts` | 1/0/0/0/1 | 33 | `readPluginModelCatalogEntries` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/agents/auth-profiles** · `src/agents/auth-profiles/sqlite-json-write.ts` | 2/0/0/0/0 | 48 | `writeAuthProfileJsonCell.write`, `deleteAuthProfileJsonCell.write` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/agents/auth-profiles** · `src/agents/auth-profiles/sqlite-json.ts` | 0/2/0/0/0 | 93 | `readAuthProfileJsonCellText` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/agents/auth-profiles** · `src/agents/auth-profiles/sqlite.ts` | 0/0/1/1/0 | 580 | `runAuthProfileWriteTransaction` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/agents/sessions** · `src/agents/sessions/session-manager-append.ts` | 0/0/0/0/1 | 251 | `appendEntry` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config** · `src/config/io.health-state.kernel.ts` | 2/0/0/0/0 | 44 | `selectConfigHealthRows`, `writeConfigHealthPatchInDatabase` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config** · `src/config/io.health-state.ts` | 0/0/1/0/0 | 141 | `patchConfigHealthEntryToStore` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/conversation-registry.ts` | 0/0/0/0/1 | 210 | `selectConversationRows` | 异步注册表读取使用会话参与者或 session-transcript.worker.ts. selectConversationRows 对于已弃用的 SDK getConversationSession 和 session-entry-current-check.ts 保留的同步会话绑定源断言保持本机;不要将共享读取归类为仅限工作人员。 | | **src/config/sessions** · `src/config/sessions/goals-operations.ts` | 2/1/0/0/0 | 98 | `readSessionGoalOperationReceipt`, `writeSessionGoalOperationReceipt` | 普通sessions.goal突变使用目标-operations.worker.ts;收据读取使用 session-transcript.worker.ts. 共享收据内核还服务于 session-accessor.sqlite-transcript-turn.ts 保留的本机交易;隐身使用记忆演员。目标-management.ts 保留不透明 SDK 或跨商店源权限的原生突变;不要将这些安全边界调用者分类为仅限工作人员。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-acp-provenance.ts` | 0/1/0/0/0 | 148 | `prepareLegacyAcpMigrationSourcesForEntryWrite` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-active-context.ts` | 4/2/0/0/0 | 66 | `readBoundedRetentionRanges`, `readUnindexedLogicalParents`, `readIndexedLogicalParents`, `readSessionTranscriptBoundedActiveContextCore.read` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-active-projection.ts` | 0/0/0/0/1 | 38 | `withCurrentProjectionSnapshot` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-archive-read.ts` | 1/0/0/0/0 | 85 | `listTranscriptArchivesFromDatabase` | 持久存档枚举通过转录本、内存语料库和使用成本工作人员来实现此查询。 session-transcript-inventory-runtime.ts 返回内存参与者的空存档清单。同步 history/SDK 读取器保留共享的持久内核。共享列表内核仍然是混合的。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-archive-store-kernel.ts` | 1/2/0/0/0 | 88 | `hasPendingSessionTranscriptArchives`, `persistSessionTranscriptArchive` | Entry/lifecycle 读者工作者和替换-state.ts 查询待发布。替换状态还服务于不透明的 SDK 替换交易;保持这个共享的阅读混合。仅生命周期-state.ts deleteMaterializedSessionStatePlans 插入规范恢复副本。该生命周期内核为突变工作人员以及不透明的 SDK 删除交易提供服务;保留共享的用户数据完整性检查和混合层。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-branch-rewrite.ts` | 0/0/0/1/0 | 80 | `prepareTranscriptRewriteSync` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-compaction.ts` | 0/0/0/1/0 | 247 | `trimTranscriptForManualCompact` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-conversation-read.ts` | 1/0/0/0/0 | 109 | `selectConversationRowsFromDatabase` | session-transcript.worker.ts 和 session-source-predicate.worker.ts 读取工作人员中的对话行;对话-registry.ts和条目-mutation.ts保留已弃用的SDK和借用的交易调用者;隐身读取内存参与者状态。共享的查询仍然是混合的。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-conversation.ts` | 7/0/0/0/0 | 46 | `preserveSessionConversationIdentity`, `upsertConversationIdentities`, `linkSessionConversation.readAssociation`, `linkSessionConversation` | 所有突变都流经entry-store.ts中的writeSessionEntry,或openclaw-agent-execution-operations.ts.中的conversation.register。 writeSessionEntry 还提供不透明的 SDK 事务和 CLI 导入。保留共享身份和关联内核的混合分类。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-delete-snapshot.ts` | 0/1/0/0/0 | 42 | `readSessionStateDeleteSnapshot` | 归档、冷存储、清理和生命周期工作人员使用此删除快照;离线全店重置、已弃用的 SessionManager 重新加载和本机 lifecycle/opaque SDK 交易也可以到达。这些检查可防止删除已更改的用户数据;共享快照并非仅限工作人员使用。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-deletion.ts` | 0/0/0/2/0 | 586 | `runSqliteSessionDeletionTransaction` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-display-position.ts` | 1/0/0/0/0 | 56 | `positionTranscriptDisplayEvents` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry-cache-projection.ts` | 1/0/0/0/0 | 77 | `readSessionEntrySideMetadata` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry-identity.ts` | 0/1/0/0/0 | 12 | `readSessionEntryInstanceId` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry-list.read.ts` | 0/0/0/0/1 | 161 | `listSessionEntriesReadOnly` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry-select.ts` | 1/0/0/0/0 | 148 | `readSelectedSessionEntryRows` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry.ts` | 0/0/0/0/1 | 125 | `resolveSessionKeyBySessionId` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-exact-read.ts` | 0/0/0/0/4 | 194 | `resolveSessionEntry`, `loadExactSessionEntryCandidates`, `loadSessionEntryByIdReadOnly`, `loadExactSessionEntryCandidatesReadOnlyBatch` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-history-interval.ts` | 3/5/0/0/0 | 167 | `readDisplayableActiveEventById`, `readDisplayableActiveEventMetadataById`, `countHistoricalDisplayEvents`, `readHistoricalDisplayEventRange`, `readHistoricalHistoryAnchorPage` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-history-projection.ts` | 1/2/0/0/0 | 59 | `resolveHistoryBoundaryQueryShape`, `resolveVisibleHistoryProjection`, `readActiveTranscriptCoordinate` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-history.ts` | 1/0/0/0/1 | 175 | `listTranscriptInstancesFromDatabase`, `listSessionTranscriptArchivesReadOnly` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-initial-entry.ts` | 0/0/0/1/0 | 96 | `ensureSessionEntrySync` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-model-context.ts` | 0/1/0/0/2 | 163 | `validateDetachedSessionTranscriptContext`, `withTranscriptContextSnapshot` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-node-artifacts.ts` | 2/0/0/0/0 | 141 | `clearSessionCollaborationForKey`, `readSessionNodeArtifactTables` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-participant-projection.ts` | 1/0/0/0/0 | 103 | `readParticipantRows` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-participant-read.ts` | 0/0/0/0/1 | 25 | `listSessionParticipantsReadOnly` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-pending-inputs.ts` | 6/2/0/0/0 | 315 | `readSessionInputCompletion`, `writeSessionInputCompletion`, `readSessionPendingInputByKey`, `resolveSessionPendingInputAppend`, `consumeSessionPendingInput`, `deleteSessionPendingInputs` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-projection-read.ts` | 1/0/0/0/0 | 135 | `readSnapshotEventRows` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-provenance.ts` | 0/1/0/0/0 | 100 | `prepareSessionEntryWindowRow` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-read.ts` | 2/3/0/0/4 | 177 | `readTranscriptExportSnapshotReadOnlySync`, `readTranscriptExportSnapshotFromDatabase`, `loadTranscriptReadSnapshotSync`, `inspectTranscriptEventsSync`, `readTranscriptEventAtSeqInTransaction`, `readTranscriptEventRows`, `readTranscriptStorageRows`, `readTranscriptStatsBatchReadOnlySync`, `findTranscriptEventInDatabase` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-reset-window.ts` | 1/8/0/0/0 | 158 | `readUnindexedHistoryControls`, `readLatestActiveBoundaryMetadataByType`, `readBoundaryWindowFacts`, `findLatestResetMessageWindow`, `resolveClosedResetInterval`, `hasUnindexedVisibleMessages`, `hasOversizedVisibleMessages`, `readVisibleTranscriptStats` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-suffix-read.ts` | 2/2/0/0/0 | 65 | `loadTranscriptSuffixEventsBoundedFromDatabase`, `readPreviousIndexedTranscriptEventSync` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-anchor.ts` | 0/2/0/0/0 | 44 | `readActiveTranscriptEntryIdentityInSnapshot`, `readActiveTranscriptEntryFacts` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-identity.ts` | 0/2/0/0/0 | 54 | `readIdempotencyKeyOwner`, `readTranscriptMessageByIdentity` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-incremental-read.ts` | 1/0/0/0/0 | 24 | `loadTranscriptEventRowsAfterSeqInDatabase` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-metadata-read.ts` | 0/2/0/0/0 | 31 | `hasSessionTranscriptMessageInDatabase`, `readTranscriptHeaderFromDatabase` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-mirror.ts` | 1/1/0/0/0 | 38 | `readTranscriptMirrorProjection`, `readTranscriptMirrorFacts` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-parent.ts` | 0/5/0/0/0 | 261 | `transcriptEntryIsAncestor`, `readTranscriptVisibleTailEntryIdInTransaction`, `readActiveTranscriptAppendParentId`, `readTranscriptIdentityInTransaction` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-presence.ts` | 0/1/0/0/0 | 11 | `hasStoredTranscriptEvents` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-sequences.ts` | 1/0/0/0/0 | 85 | `rememberCommittedTranscriptMessageSequencesInTransaction` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-state.ts` | 9/5/0/0/0 | 167 | `readTranscriptGenerationInTransaction`, `writeTranscriptGeneration`, `ensureTranscriptSessionRoot`, `readNextTranscriptSeq`, `advanceTranscriptMutationAtInTransaction`, `deleteTranscriptEventsInTransaction`, `pruneTranscriptReactionsInTransaction` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-store.ts` | 1/0/0/0/0 | 246 | `appendTranscriptEventInTransaction` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-suffix-idempotency.ts` | 2/0/0/0/0 | 28 | `prepareIncrementalSuffixIdempotencyMutation` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-suffix-write.ts` | 0/0/0/1/0 | 39 | `replaceTranscriptSuffixEventsSync` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-suffix.ts` | 8/4/0/0/0 | 76 | `readTranscriptSuffixStorageRows`, `prepareIncrementalTranscriptSuffixMutation`, `replaceSqliteTranscriptSuffixInTransaction` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-turn.ts` | 0/0/0/1/1 | 245 | `appendPreparedSessionTranscriptTurn` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-watermark.ts` | 0/0/0/0/1 | 75 | `readSessionTranscriptWatermark` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-write-snapshot.ts` | 0/0/0/1/0 | 164 | `runTranscriptWriteSnapshotSync` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-write.ts` | 0/0/0/3/0 | 457 | `runNativeTranscriptWriteLock.replaceEvents`, `runNativeTranscriptWriteLock.appendMessage`, `runNativeTranscriptWriteLock.appendMessageWithMessageSequence` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-entry-snapshots.ts` | 2/0/0/0/0 | 98 | `writeSessionEntrySnapshots` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-history.ts` | 0/0/0/0/1 | 48 | `listSessionTranscriptInstances` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-pending-input-store.ts` | 0/0/0/1/0 | 149 | `preparePendingInputStore.nativeMutation.writeTransaction` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-transcript-fts.ts` | 1/0/0/0/0 | 90 | `deleteSessionTranscriptFtsRowsInTransaction` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-transcript-index.ts` | 3/3/0/0/0 | 91 | `shouldRebuildSessionTranscriptIndexSynchronously`, `readSessionTranscriptProjectionState`, `readSessionTranscriptIndexStatus`, `deleteActiveEventRows`, `deleteSessionTranscriptIndexInTransaction`, `replaceSessionTranscriptIndexSuffixInTransaction` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-transcript-projection-rebuild.ts` | 0/2/0/0/0 | 101 | `hasUnclassifiedSessionTranscriptEvents`, `readProjectionSession` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/session-transcript-retained-data.ts` | 1/0/0/0/0 | 136 | `copyRetainedTranscriptPayload` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/config/sessions** · `src/config/sessions/targets-discovery.native.ts` | 0/0/0/0/2 | 72 | `listKnownSessionStoreAgentIds`, `resolveExistingAgentSessionStoreTargets` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/infra/outbound** · `src/infra/outbound/current-conversation-bindings.ts` | 0/0/3/0/0 | 140 | `updateCurrentConversationBindingRecord`, `listCurrentConversationBindingRecordsBySession`, `deleteCurrentConversationBindingRecordsBySession` | 捆绑突变使用期待已久的工作方法;最终效果绑定检查保持同步。通过 v2026.10.2 的客户管理器和 SessionBindingService SDK 方法仍然可以访问同步 update/list/delete。共享的 V1/V2 管理器工厂返回两个方法集,因此这些转义接收器仍然保守 T1,未经过验证的 T1-compat 或仅限工作人员。 | | **src/node-host** · `src/node-host/node-worker-prepared-workspace-store.kernel.ts` | 1/0/0/0/0 | 85 | `find` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/pairing** · `src/pairing/pairing-store-sqlite.ts` | 1/0/0/0/0 | 76 | `readChannelAllowRows` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/plugin-sdk** · `src/plugin-sdk/sqlite-runtime-legacy.ts` | 1/0/0/0/0 | 90 | `sdkExecuteSqliteQuerySync` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/plugin-state** · `src/plugin-state/plugin-state-store.database.ts` | 0/0/1/0/0 | 133 | `runWriteTransaction` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/plugin-state** · `src/plugin-state/plugin-state-store.kernel.ts` | 2/0/0/0/0 | 299 | `deletePluginStateEntryRow`, `deleteExpiredPluginStateEntries` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/plugin-state** · `src/plugin-state/plugin-state-store.retention.ts` | 1/0/0/0/0 | 165 | `enforcePostRegisterLimits` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/plugins** · `src/plugins/plugin-metadata-state.kernel.ts` | 1/0/0/0/0 | 21 | `readPluginMetadataStateRowsInDatabase` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/proxy-capture** · `src/proxy-capture/store-readonly.ts` | 1/1/0/0/0 | 181 | `readDebugProxyCaptureSessionEvents`, `readDebugProxyCaptureBlob` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/proxy-capture** · `src/proxy-capture/store.sqlite.ts` | 0/0/1/0/0 | 226 | `runWrite` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/secrets** · `src/secrets/store/secret-store-hidden-github.kernel.ts` | 3/2/0/0/0 | 36 | `readPersonalGitHubSecret`, `writePersonalGitHubSecret`, `upsertHiddenGitHubSecret`, `readHiddenGitHubSecretInDatabase`, `deleteHiddenGitHubSecretInDatabase` | 为工作人员拥有的 GitHub 记录共享 SQL 内核,并弃用同步 managed/personal 网关 SDK 方法。本机兼容性调用仍然是显式的 T1 债务。 | | **src/session-cards** · `src/session-cards/progress-card-store.ts` | 0/1/0/0/0 | 45 | `clearProgressCardInTransaction` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/sessions** · `src/sessions/session-state-events.ts` | 1/0/0/0/0 | 380 | `listAmbientGroupWatchTargets` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/sessions** · `src/sessions/session-upstream-links.kernel.ts` | 0/1/0/0/0 | 147 | `(module)` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/skills/library** · `src/skills/library/selection-read.kernel.ts` | 1/0/0/0/0 | 45 | `selectSkillLibraryRevisionMetadataBatch` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/state** · `src/state/agent-deletion-journal.read.ts` | 1/0/0/0/0 | 130 | `readRetainedAgentDeletionsFromDatabase` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/state** · `src/state/agent-deletion-journal.ts` | 1/0/0/0/0 | 99 | `readAgentDeletionPathFenceRows` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/state** · `src/state/config-machine-state-row.ts` | 0/1/0/0/0 | 82 | `readConfigMachineStateRowInDatabase` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/state** · `src/state/config-machine-state-write.ts` | 2/1/2/0/0 | 51 | `upsertConfigMachineState`, `writeConfigMachineState`, `updateConfigMachineState`, `updateConfigMachineStateInDatabase` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/state** · `src/state/openclaw-agent-db-registry.read.ts` | 1/1/0/0/0 | 50 | `readOpenClawAgentDatabaseRegistryRows` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/state** · `src/state/user-github-connections.ts` | 0/0/2/0/0 | 51 | `cancelUserGitHubAuthorizationSync`, `disconnectUserGitHubConnectionSync` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/state** · `src/state/user-model-account-records.kernel.ts` | 1/1/0/0/0 | 26 | `readUserModelAccountRecord`, `readSelectedUserModelAccountRecords` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/state** · `src/state/user-model-accounts.ts` | 1/0/0/0/0 | 127 | `writeRecord` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/state** · `src/state/user-profile-github-identity.ts` | 1/0/0/0/0 | 75 | `selectStoredGitHubIdentities` | Runtime/mixed 候选;主线程可达性需要跟踪 | | **src/state** · `src/state/user-profiles-internal.ts` | 1/1/0/0/0 | 227 | `selectProfileDisplayEntries`, `selectResolvedUserProfile` | Runtime/mixed 候选;主线程可达性需要跟踪 | ### T1-兼容 | 所有者/文件 | 呼叫 (Q/F/S/A/R) | 第一行 | API / 操作 | 暴露证据 | | ------------------------------------------------------------------------- | ----------------: | ---------: | ---------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **src/plugin-sdk** · `src/plugin-sdk/sqlite-runtime-legacy.ts` | 0/1/0/0/0 | 99 | `sdkExecuteSqliteQueryTakeFirstSync` | 仅弃用 SDK 兼容性;在经过审查的兼容性边界之外没有捆绑的值引用。在稳定弃用后的后续版本中删除。 | | **src/plugin-state** · `src/plugin-state/plugin-state-store.mutations.ts` | 1/0/0/0/0 | 85 | `clearPluginStateNamespace` | 仅弃用 SDK 兼容性;在经过审查的兼容性边界之外没有捆绑的值引用。在稳定弃用后的后续版本中删除。 | | **src/plugin-state** · `src/plugin-state/plugin-state-store.reads.ts` | 1/0/0/0/0 | 37 | `lookupPluginStateEntries` | 仅弃用 SDK 兼容性;在经过审查的兼容性边界之外没有捆绑的值引用。在稳定弃用后的后续版本中删除。 | | **src/sessions** · `src/sessions/session-upstream-links.kernel.ts` | 2/0/0/0/0 | 178 | `upsertSessionUpstreamLinkInDatabase`, `deleteSessionUpstreamLinkInDatabase` | 仅弃用 SDK 兼容性;在经过审查的兼容性边界之外没有捆绑的值引用。在稳定弃用后的后续版本中删除。 | | **src/sessions** · `src/sessions/session-upstream-links.ts` | 0/0/2/0/0 | 45 | `upsertSessionUpstreamLink`, `deleteSessionUpstreamLink` | 仅弃用 SDK 兼容性;在经过审查的兼容性边界之外没有捆绑的值引用。在稳定弃用后的后续版本中删除。 | | **src/state** · `src/state/user-model-accounts.ts` | 1/0/2/0/0 | 275 | `listUserModelAccounts`, `setUserProfileAuthLink`, `clearUserProfileAuthLink` | 仅弃用 SDK 兼容性;在经过审查的兼容性边界之外没有捆绑的值引用。在稳定弃用后的后续版本中删除。 | | **src/state** · `src/state/user-profile-identity.read.ts` | 2/0/0/0/0 | 189 | `selectHasMultipleSessionSharingIdentities`, `selectUserProfileDisplaysInDatabase` | 仅弃用 SDK 兼容性;在经过审查的兼容性边界之外没有捆绑的值引用。在稳定弃用后的后续版本中删除。 | ### T2 | 所有者/文件 | 呼叫 (Q/F/S/A/R) | 第一行 | 暴露证据 | | ------------------------------------------------------------------------------------------------ | ----------------: | ---------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **extensions/codex** · `extensions/codex/src/migration/native-task-assignments.ts` | 6/0/0/0/0 | 132 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/acp** · `src/acp/runtime/session-meta-migration-embedded.ts` | 0/1/1/0/1 | 102 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/acp** · `src/acp/runtime/session-meta-migration-keys.ts` | 1/0/0/0/0 | 110 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/acp** · `src/acp/runtime/session-meta-startup.ts` | 0/0/0/0/1 | 154 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/acp** · `src/acp/runtime/session-meta.ts` | 0/0/1/0/0 | 43 | 本机编写器仅由 src/infra/state-migrations.acp-session-metadata.ts 和测试装置保留。网关重置重新绑定在共享状态工作线程中使用 session-meta-reset.ts -> commitAcpSessionMutation ;同步 SDK 读卡器保留其单独的本机分类。 | | **src/agents** · `src/agents/plugin-model-catalog.kernel.ts` | 4/0/0/0/0 | 77 | 本机替换仅是 Doctor 导入:src/commands/doctor-plugin-model-catalog.ts:103 -> 插件模型-catalog.ts:495,517 -> :162。另一个调用者是plugin-model-catalog.worker.ts:94; readPluginModelCatalogEntries 仍为 T1。 | | **src/agents** · `src/agents/plugin-model-catalog.ts` | 3/0/0/3/0 | 112 | 只有 doctor-plugin-model-catalog.ts:103,126 到达 repair/import/receipt 退休;运行时替换在plugin-model-catalog.ts:584处调度; ModelRegistry 同步内核读停留 T1 | | **src/agents** · `src/agents/workspace-alias-rebind.ts` | 5/4/1/0/0 | 86 | 仅src/commands/doctor-workspace-alias.ts:67,107,131调用detect/rebind; readWorkspaceMoveState 是私有的,地址:166,282。医生health/lint通过src/flows/doctor-health-contributions-final.ts:269和doctor-health-contribution-runners.workspace.ts:77达到检测;修复由src/commands/doctor-config-flow.ts:83,93安装。 | | **src/agents** · `src/agents/workspace-state-store.kernel.ts` | 2/3/0/0/0 | 115 | 工作空间 worker/read 调度以及医生别名重新绑定、工作空间设置迁移和重新定位退役;本机身份解析仅保留给那些维护调用者 | | **src/agents/auth-profiles** · `src/agents/auth-profiles/shared-store-bootstrap.ts` | 1/1/0/0/0 | 150 | 仅首次加载旧共享身份验证准入和迁移:initializeFreshSharedAuthStore 会跳过已检查的所有权; share-store-bootstrap.worker.ts 和 Doctor 拥有剩余的呼叫者。 | | **src/agents/worktrees** · `src/agents/worktrees/registry.ts` | 3/0/2/0/0 | 73 | 仅迁移发现src/infra/state-migrations.doctor-discovery.ts:84和Doctor修复src/config/sessions/worktree-workspace-migration.ts:116调用列表;后者需要医生修复模式。私有runRegistryMigration事务仅由discardLegacyRegistryWorktrees和rewriteRegistryWorktreePathsForMigration调用;他们唯一的生产调用者是位于 src/infra/state-migrations.doctor.ts:1256,1258 (Doctor/startup) 的托管工作树步骤。它在打开事务数据库之前获取现有的模式维护所有者。在 filesystem/Git 删除和进程退出锁清除之前立即同步删除锁断言。普通清理消耗现有工人租赁普查。 | | **src/agents/worktrees** · `src/agents/worktrees/run-lease-owner.ts` | 2/0/0/0/0 | 41 | 原生调用者是registry.tsassertWorktreeRemovalAvailable,一个移除锁原语;普通运行时租约通过共享状态工作线程读取和写入调度。 | | **src/agents/worktrees** · `src/agents/worktrees/run-lease-store.kernel.ts` | 1/0/0/0/0 | 71 | 原生调用是registry.ts进程退出锁清理;正常发布通过registry-run-end.worker.ts.调度 | | **src/channels** · `src/channels/message/ingress-queue.migration.ts` | 1/1/2/0/0 | 116 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/config/sessions** · `src/config/sessions/legacy-main-session-key-scan.ts` | 1/0/0/0/1 | 107 | 仅在检测模式返回后,legacy-main-session-migration.ts 才会调用完整的本机声明;检测使用prepareComparisonClaimsFromStores和session-retirement-read.worker.ts | | **src/config/sessions** · `src/config/sessions/legacy-main-session-migration-claims.ts` | 1/0/0/0/2 | 166 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/config/sessions** · `src/config/sessions/legacy-main-session-migration-operations.ts` | 6/0/0/1/3 | 206 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/config/sessions** · `src/config/sessions/legacy-main-session-migration.ts` | 2/0/1/0/0 | 265 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-canonical-repair.ts` | 14/4/0/1/0 | 66 | 会话退休 read.worker.ts 中的 Doctor 规范密钥 repair/import 和仅工人遗留比较;本机完整声明仅在检测返回后运行,并且allowCanonicalRepair仅由Doctor canonical-key Repair提供 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-generation-copy.ts` | 6/2/0/0/0 | 37 | 比较读取在 session-retirement-read.worker.ts 中运行;完整索赔和生成副本均由legacy/canonical医生修复。本机删除计划生成读取需要预期代数,仅由legacy-main-session-migration-operations.ts提供 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-import.ts` | 0/2/0/1/0 | 102 | 旧会话迁移:commands/doctor-session-sqlite-import.ts:84 和 doctor-session-sqlite-active.ts:73;医生在 doctor-session-sqlite-retained.ts:197 -> infra/deferred-plugin-session-sources.ts:541,590 -> deferred-plugin-session-verification.ts:92 -> deferred-plugin-session-empty.ts:78 保留恢复。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-lifecycle-state.ts` | 0/1/0/0/0 | 282 | Doctor-only原始行移除:commands/doctor-session-canonical-keys.ts构造expectedRawEntryJson; lifecycle-state.ts 和projection-state.ts 仅针对该删除变体调用此防护。其他生命周期操作保留其单独的分类。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-node-artifacts.ts` | 1/1/0/0/0 | 113 | 成员清理是Doctor规范修复。完整阅读索赔仅限医生;删除计划指纹读取需要预期NodeArtifactFingerprint,仅由Doctor deleteExpectedClaim提供。工人检测忽略了工件保管;其他本机工件内核仍然单独分类 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-pending-inputs-repair.ts` | 0/1/0/0/0 | 144 | node-artifacts.ts:151 是共享的,但entry-store.ts:372 运行时别名移动会传递相同的数据库并在pending-inputs-repair.ts:130处返回。现有的初始化程序仅是跨数据库 Doctor 修复,通过 canonical-repair.ts:514,521 和legacy-main-session-migration-operations.ts:343。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-state.ts` | 1/0/0/0/0 | 513 | 这里只守护着未承认的遗产UPDATE。状态 migrations.agent-database.ts 中的 createMigrationDatabaseHandle 提供原始 media/directive 迁移句柄。持久运行时开启器在曝光前注册身份;他们的 RETURNING 执行人仍然是 T1。 | | **src/config/sessions** · `src/config/sessions/session-canonical-key-read.ts` | 0/0/0/0/1 | 16 | 只有startup-migration.ts:287通过gateway/server-startup-session-migration.ts:201和server-startup-plugins.ts:99或server-agent-database-startup.ts:112处的延迟启动准入来调用它。 | | **src/config/sessions** · `src/config/sessions/session-canonical-key.ts` | 2/0/0/0/0 | 615 | setter 服务于启动 - migration.ts 引导准入和 commands/doctor-session-canonical-keys.ts 修复。等待验证仅由该 setter 或显式的allowStoredAlias(s)/allowCanonicalRepair 导入和修复写入:legacy-main-session-migration-operations.ts、session-accessor.sqlite-import.ts 和 Doctor projection/rewrite. 导入的保留恢复路径仅是 Doctor-only 通过 doctor-session-sqlite-retained.ts ->重建DeferredPluginSessionSourceIndex。 | | **src/config/sessions** · `src/config/sessions/session-canonical-validation.ts` | 0/1/0/0/0 | 41 | 本机就绪性通过startup-migration.ts和session-canonical-validation-readiness.ts.为启动和医生维护提供服务,准备好的网关行读取消耗工作人员承认的事实,而无需本机就绪性探针;另一个调用者是变异工作者的待处理操作。 | | **src/config/sessions** · `src/config/sessions/worktree-workspace-migration.ts` | 1/0/0/0/1 | 71 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/store-schema.ts` | 0/0/1/0/0 | 34 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/deferred-plugin-migrations.ts` | 2/0/2/0/0 | 82 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/deferred-plugin-session-sources.ts` | 2/0/2/0/0 | 587 | 医生保留源 recovery/import:src/commands/doctor-session-sqlite-retained.ts:197 和医生会话-sqlite.ts:376,1039。 | | **src/infra** · `src/infra/delivery-queue-sqlite-bound.ts` | 3/0/0/0/0 | 91 | 本机迁移:src/infra/outbound/delivery-queue-migration.ts:308;架构回填:src/state/openclaw-state-db-delivery-queue-backfill.ts:93。有界修剪还通过 Delivery-queue-sqlite.kernel.ts:192 提供本机命名空间迁移。其他 terminalization/pruning 呼叫者是 Delivery-queue.worker.ts:117,316,387,457 和 session-delivery-queue.worker.ts:264。 | | **src/infra** · `src/infra/delivery-queue-sqlite-namespace.kernel.ts` | 0/1/0/0/0 | 121 | 原生 replace/move: src/infra/delivery-queue-sqlite-namespace.ts:34,49 → outbound/delivery-queue-migration.ts:169,205,235,289,349,367,435。其他来电者是 enqueue/delivery 工人。 | | **src/infra** · `src/infra/delivery-queue-sqlite-namespace.ts` | 0/0/2/0/0 | 26 | 唯一本地呼叫者 src/infra/outbound/delivery-queue-migration.ts:169,205,235,289,349,367,435;医生条目src/commands/doctor-outbound-delivery.ts:137,162。 | | **src/infra** · `src/infra/delivery-queue-sqlite.kernel.ts` | 4/0/0/0/0 | 170 | 本机 loads/deletes/count 和收据所有权通过 commands/doctor-outbound-delivery.ts 和 infra/outbound/delivery-queue-migration.ts. 为医生迁移提供就绪后恢复计数和 cron 收据选择使用交付 - queue.worker.ts;仅测试状态检查存在于测试支持中。初始准备后恢复不是引导准入。 | | **src/infra** · `src/infra/device-identity-store.ts` | 4/2/2/0/0 | 235 | 实时调用者通过 openclaw-state.worker.ts. 使用 device-identity-async.ts 本机调用者是startup-local-cli-pairing.ts(服务器运行时状态准备启动)、node-host/runner.ts 和startup-state-readiness.ts(节点 boot/connect) CLI)、config-preflight-snapshot.ts、doctor-device-pairing.ts、heartbeat-schedule.ts(仅限 Doctor cadence 迁移)和 state-migrations.device-identity*.ts(Doctor)。 src/infra/state-migrations.device-identity.ts:475 强制 doctorOnlyStateMigrations,然后:494 → state-migrations.device-identity-repair.ts:64。 | | **src/infra** · `src/infra/device-pairing-node-desktop-migration.ts` | 0/1/1/0/0 | 76 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/device-pairing-store.ts` | 20/5/5/0/0 | 121 | 运行时使用device-pairing-core.worker.ts和state-read;仅在 device/node-pairing-migration.ts 和启动桌面节点迁移中使用本机快照 | | **src/infra** · `src/infra/exec-approvals-store.ts` | 0/0/1/0/0 | 343 | 只有 exec-approvals- generated-migration.ts 在生产中使用同步更新适配器;运行时编辑、删除和恢复分派给作者。 | | **src/infra** · `src/infra/gateway-boot-lifecycle.kernel.ts` | 0/1/0/0/0 | 54 | 从现有的 gateway-boot-lifecycle.ts 启动异常中提取。原生inspectGatewayCrashLoopBreaker仅在启动Gateway之前由cli/gateway-cli/run.ts beginBoot调用;运行时检查和恢复提交重新验证通过现有状态工作人员中的 gatewayBootReadOperations 和 gateway-boot-lifecycle.worker.ts 执行。 | | **src/infra** · `src/infra/gateway-boot-lifecycle.ts` | 3/1/2/0/0 | 93 | 引导或 lock/lease 原语;异常是操作范围的 | | **src/infra** · `src/infra/restart-handoff.ts` | 0/1/0/0/0 | 234 | 本机只读服务 server-startup-bootstrap.ts 启动准入、daemon CLI status.gather.ts 和 Doctor gateway-daemon-flow.ts;普通网关运行时不会调用此读取器。 | | **src/infra** · `src/infra/session-cost-usage-cache-migration.ts` | 3/0/0/0/0 | 54 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/session-sqlite-migration-readers.ts` | 1/0/0/0/0 | 421 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/session-sqlite-transcript-verification.ts` | 0/1/0/0/1 | 38 | 医生readers/import验证:src/commands/doctor-session-sqlite-missing-index.ts:80、doctor-session-sqlite-active.ts:60、doctor-session-sqlite-import.ts:302、doctor-session-sqlite-verification.ts:303;保留恢复医生-会话-sqlite-retained.ts:197。 | | **src/infra** · `src/infra/sqlite-audit-record-store.ts` | 0/0/2/0/0 | 26 | 仅旧版迁移:src/infra/state-migrations.audit-recovery.ts:561 和 state-migrations.audit-logs.ts:435,470,561;医生步态-migrations.doctor.ts:1436,1457。 | | **src/infra** · `src/infra/sqlite-audit-record.kernel.ts` | 4/1/0/0/0 | 110 | 原生 entries/upsert/count/next/prune 服务 state-migrations.audit-checkpoints.ts、audit-recovery.ts、audit-logs.ts 和 CLI 审计-backup.ts. 原生最新服务 Doctor 中的 readRecentConfigAuditRecords 和 update-immutable-protection.ts. 运行时配置观察在sqlite-audit-record.worker.ts中使用diagnostic.register;没有保留本机寄存器适配器。 | | **src/infra** · `src/infra/sqlite-schema-header.ts` | 0/1/0/0/0 | 26 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/sqlite-staging-token.ts` | 0/1/0/0/0 | 73 | 引导或 lock/lease 原语;异常是操作范围的 | | **src/infra** · `src/infra/startup-migration-checkpoint.ts` | 1/1/0/0/0 | 124 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.acp-session-metadata.ts` | 0/0/1/0/0 | 40 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.apns.ts` | 1/2/1/0/0 | 184 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.commitments.ts` | 0/0/1/0/0 | 111 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.debug-proxy.ts` | 0/0/1/0/0 | 371 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.deferred-session-import.ts` | 1/0/1/0/0 | 48 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.device-auth.ts` | 1/1/1/0/0 | 107 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.device-identity.ts` | 2/1/1/0/0 | 130 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.exec-approvals-canonical.ts` | 0/1/1/0/0 | 19 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.exec-approvals.ts` | 0/0/1/0/0 | 152 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.managed-outgoing-images.ts` | 2/1/2/0/0 | 313 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.media-persistence-database.ts` | 2/0/0/0/0 | 98 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.media-persistence.ts` | 2/1/0/0/0 | 304 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.meeting-transcripts-insert.ts` | 3/0/1/0/0 | 36 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.meeting-transcripts-verify.ts` | 1/0/0/0/0 | 35 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.meeting-transcripts.ts` | 8/2/3/0/0 | 61 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.node-host.ts` | 1/1/1/0/0 | 225 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.plugin-doctor-context.ts` | 2/0/0/0/0 | 348 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.receipts.ts` | 3/1/1/0/0 | 69 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.runtime-state.ts` | 3/0/1/0/0 | 124 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.session-window-repair.ts` | 1/1/0/0/0 | 71 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.shared-auth-store.ts` | 10/1/2/2/0 | 90 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.transcript-archive-publication.ts` | 3/2/0/0/0 | 91 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.transcript-directives-archives.ts` | 4/3/0/0/0 | 171 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.transcript-directives.ts` | 3/1/0/0/0 | 112 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.tui-last-session.ts` | 1/2/1/0/0 | 158 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.web-push.ts` | 2/3/1/0/0 | 157 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.workspace-setup-receipts.ts` | 2/1/0/0/0 | 110 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/state-migrations.workspace-setup-store.ts` | 7/3/1/0/0 | 160 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/infra** · `src/infra/update-managed-service-handoff-database.ts` | 1/1/0/0/0 | 164 | readManagedHandoffRepairMetadata 和initializeLeaseSchema 服务于托管更新源托管租约,这是一种跨进程锁原语。 | | **src/infra** · `src/infra/update-managed-service-handoff-mutation.ts` | 1/0/0/0/0 | 74 | createManagedHandoffMutationReader.childAliases实现托管源托管锁验证; config/write-lock.ts 和 daemon/service-operation-lock.ts 通过租赁所有者到达。 | | **src/infra** · `src/infra/update-managed-service-handoff-original-owner.ts` | 1/0/0/0/0 | 82 | readOriginalUpdateDependents 服务于跨进程源托管租约 acquisition/release,而不是普通的 Gateway 状态访问。 | | **src/infra** · `src/infra/update-managed-service-handoff-rows.ts` | 4/0/0/0/0 | 104 | descendants/deleteRow/updateRow/readRetainedSources属于跨进程托管源托管锁。 config/write-lock.ts和daemon/service-operation-lock.ts在效果之前使用assertSourceUnborrowed;网关发布解决了相同的租约。 | | **src/infra** · `src/infra/update-managed-service-handoff-source-inspection.ts` | 0/2/0/0/0 | 7 | 架构发现仅支持托管源托管锁原语的首次准入和修复。 | | **src/pairing** · `src/pairing/pairing-store-sqlite.ts` | 6/0/1/0/0 | 135 | 运行时突变通过共享状态写入器注册表在配对 store.worker.ts 中执行。对于 Doctor,本机快照仅保留在状态 migrations.channel-pairing.ts 中。释放的同步SDK reader仅调用readChannelAllowEntries;其共享白名单查询仍为 T1。 | | **src/plugin-state** · `src/plugin-state/plugin-state-store.kernel.ts` | 1/0/0/0/0 | 272 | 仅本机原始行检查:src/infra/state-migrations.plugin-doctor-context.ts:416 -> 插件状态-store.sqlite.ts:394。其他调用者是plugin-state.worker.ts:104 ->plugin-state-store.reads.ts:111和plugin-state.worker.ts:173 ->plugin-state-store.journal.ts:122;公钥范围外观在插件状态 store.ts:580 处是异步的。 | | **src/plugin-state** · `src/plugin-state/plugin-state-store.sqlite.ts` | 1/0/0/0/0 | 396 | 在 :464 进行修复权限验证后,只有 src/infra/state-migrations.plugin-doctor-context.ts:466 调用精确行删除。上下文创建仅限于state-migrations.plugin-doctor.ts:200,325;没有运行时键控存储方法公开此修复操作。 | | **src/state** · `src/state/agent-deletion-journal-history.ts` | 0/2/0/0/0 | 24 | 仅缺少模式准入:openclaw-state-db-schema-runtime.ts 初始化、openclaw-state-db-repair.ts 和 readRetainedAgentDeletionsFromDatabase 的日志前兼容性分支。 | | **src/state** · `src/state/config-machine-state-write.ts` | 0/1/1/0/0 | 199 | 仅迁移 src/infra/state-migrations.config-machine-state.ts:71 和状态 migrations.update-check.ts:66;医生根 doctor-config-preflight.cron.ts:27 和 state-migrations.doctor.ts:910,1394。 | | **src/state** · `src/state/openclaw-agent-canonical-validation-receipt.ts` | 1/1/0/0/0 | 62 | setOpenClawAgentDatabaseValidation 仅在 registry/schema 入场期间加载收据;另一个调用者是 !isMainThread 下的 openclaw-agent-db-readonly-open.ts。运行时 hasPersistedOpenClawAgentCanonicalValidation 仅消耗已承认的缓存。失效仅限于startup/Doctor主键迁移和allowStoredAlias import/repair分支;普通会话编写器不会启用这些分支。 | | **src/state** · `src/state/openclaw-agent-db-lease.ts` | 9/3/7/0/0 | 163 | 引导或 lock/lease 原语;异常是操作范围的 | | **src/state** · `src/state/openclaw-agent-db-metadata-write.ts` | 1/0/0/0/0 | 21 | 只有 openclaw-agent-db-schema-helpers.ts 和 openclaw-agent-db-schema.ts 调用此模式 admission/migration writer。 | | **src/state** · `src/state/openclaw-agent-db-registry.ts` | 2/0/1/0/0 | 55 | 私有定位器查询仅用于数据库开放注册准入和unregisterOpenClawAgentDatabase; unregister 在 openclaw-agent-db-registry.worker.ts 或离线状态-migrations.media-persistence.ts. 下运行;仅限数据库开放准入:openclaw-agent-db.ts 注册新准入的实体店; openclaw-agent-db-schema.ts 在模式初始化后注册。运行时异步打开在代理执行器中执行准入;同步SDK/Doctor打开保留准入异常。 | | **src/state** · `src/state/openclaw-agent-db-schema.ts` | 0/0/1/0/0 | 659 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/state** · `src/state/openclaw-agent-session-snapshots-migration.ts` | 1/0/0/0/0 | 75 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/state** · `src/state/openclaw-migration-witness.ts` | 3/4/0/0/0 | 198 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/state** · `src/state/openclaw-state-db-existing-schema.ts` | 0/1/0/0/0 | 50 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/state** · `src/state/openclaw-state-db-legacy-backfills.ts` | 1/1/0/0/0 | 208 | 只有ensureAdditiveStateColumns从模式运行时冷admission/migration和Doctor模式修复运行器调用此会计修复;没有网关运行时调用者。 | | **src/state** · `src/state/openclaw-state-db-maintenance.ts` | 1/0/0/0/0 | 618 | 仅 openclaw-state-db-schema-runtime.ts 模式 initialization/admission 写入当前模式标记。 | | **src/state** · `src/state/openclaw-state-db-session-watch-migration.ts` | 3/2/0/0/0 | 37 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/state** · `src/state/openclaw-state-db.ts` | 0/0/3/0/0 | 233 | 仅启动检查点调用者:startup-migration-checkpoint.ts:84,157 服务于 CLIstartup-config-preflight.ts admission/heartbeat/release; gateway-owner-lease.ts:253,282 claims/releases 进程锁,其运行时心跳已使用 openclaw-state-lease-heartbeat.ts. 其他共享状态写入仍为 T1。原生调用者均通过 openOpenClawStateDatabaseWithBusyTimeout 入场;网关观察程序等待 reconcileOpenClawStateSchemaPublicationAsync,由 openclaw-state.worker.ts. 作为 database.publishSchema 分派。该事务在独占模式维护下发布已承认的模式。 | | **src/state** · `src/state/openclaw-state-feature-schema-ensure.ts` | 0/0/1/0/0 | 36 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/state** · `src/state/openclaw-state-lease-storage.ts` | 0/0/1/0/0 | 87 | 引导或 lock/lease 原语;异常是操作范围的 | | **src/state** · `src/state/openclaw-state-lease-store.ts` | 5/2/0/0/0 | 27 | 引导或 lock/lease 原语;异常是操作范围的 | | **src/state** · `src/state/openclaw-state-schema-publication.ts` | 2/0/0/0/0 | 37 | Schema/startup/migration 候选;验证没有运行时调用者 | | **src/state** · `src/state/user-profile-mutation.ts` | 0/0/1/0/0 | 47 | 配置文件突变在 user-profile-writes.worker.ts 和 user-profiles.worker.ts 中运行;本机用户配置文件-schema.ts 仅将此用于每次加载一次模式初始化。 | | **src/state** · `src/state/user-profiles-schema.ts` | 2/0/1/0/0 | 120 | Schema/startup/migration 候选;验证没有运行时调用者 | ### T3 | 所有者/文件 | 呼叫 (Q/F/S/A/R) | 第一行 | 暴露证据 | | ----------------------------------------------------------------------------------------------------- | ----------------: | ---------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **extensions/memory-core** · `extensions/memory-core/src/memory/manager-status-state.ts` | 1/0/0/0/0 | 65 | 只有collectMemoryStatusSnapshot 调用存储查询,该查询由来自通过inspectSources 填充的sourceInspections 的includeStorage 进行门控。 manager-search.worker.ts 服务 statusAsync;保留的同步状态使用相同的快照。 CLI、status/index/search和commands/status.scan.shared.ts请求诊断检查;普通网关状态则没有。 | | **scripts/bench-agent-concurrency-worker.ts** · `scripts/bench-agent-concurrency-worker.ts` | 1/0/0/0/0 | 190 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **scripts/bench-agent-database-holds.ts** · `scripts/bench-agent-database-holds.ts` | 0/0/0/1/0 | 115 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **scripts/crabbox-source-mirror.mts** · `scripts/crabbox-source-mirror.mts` | 5/0/0/0/0 | 112 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **scripts/lib** · `scripts/lib/code-mode-matrix-usage.ts` | 4/0/0/0/0 | 135 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **scripts/perf** · `scripts/perf/team-shape-extras.ts` | 0/0/3/1/0 | 146 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **scripts/perf** · `scripts/perf/team-shape-sessions.ts` | 1/0/1/2/0 | 57 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/acp** · `src/acp/runtime/session-meta-doctor.ts` | 1/0/2/0/2 | 249 | 医生修复:src/commands/doctor-session-transcripts.ts:318。插件Doctor上下文:src/infra/state-migrations.plugin-doctor-context.ts:403,463,由state-migrations.plugin-doctor.ts:200,325构建。 | | **src/acp** · `src/acp/runtime/session-meta-keys.ts` | 1/1/0/0/0 | 304 | Mutators 服务于工作内核、独占维护 session-meta-write.native.ts、医生修复和离线迁移编写器。普通Gateway写使用workers; selectAcpSessionRow 保留其单独的同步 SDK 分类。 | | **src/acp** · `src/acp/runtime/session-meta-write.native.ts` | 0/0/2/0/0 | 73 | 仅当在独占 schema/agent 维护下supportsOpenClawAgentDatabaseExecution 为 false 时,session-meta-write.ts 才会调用此本机适配器。普通写调度给工人;代理删除清理提供了workerAuthority,并且内存读取器没有此适配器的文件范围。 | | **src/agents/auth-profiles** · `src/agents/auth-profiles/authorization-enrollment-runtime.ts` | 0/0/0/1/0 | 63 | 仅同步独占Doctor分支打开本机代理交易,捕获实时准入、凭证保存CAS并提交结算。普通shared/agent招生仍通过现有worker/executor进行调度;嵌套回调和不受保护的调用保留运行时分类。 | | **src/agents/harness** · `src/agents/harness/native-hook-relay-bridge-query.ts` | 0/1/0/0/0 | 9 | 原生 Node 一次性 CLI: src/cli/native-hook-relay-cli.ts:98 -> native-hook-relay-client.ts:39 -> native-hook-relay-client-store.ts:20 ->本机钩子中继客户端-read.ts:22。网关reads/mutations使用native-hook-relay-store.worker.ts:11,35,44,53到store.kernel.ts:48; Bun CLI 使用其客户端工作线程。 | | **src/agents/worktrees** · `src/agents/worktrees/registry.ts` | 2/0/0/0/0 | 88 | 旧列表仅在 doctorOnlyStateMigrations === true (:51) 下为 src/infra/state-migrations.doctor-discovery.ts:52;丢弃仅在 isDoctor (:1359) 下为 state-migrations.doctor.ts:1360。普通运行时工作树读取器和突变仍然是 T1。 | | **src/claws** · `src/claws/package-status.kernel.ts` | 1/0/0/0/0 | 15 | CLI 地址:src/claws/add.ts:264 → packages.ts:316,395,567,579,656 → provenance.ts:488;工人兄弟姐妹出处-write.worker.ts:81。 | | **src/claws** · `src/claws/provenance.ts` | 5/0/5/0/0 | 177 | CLI add/update/remove 作家;网关爪子-packages.ts:124注入worker ClaimPackageRef;原始网关读取仍处于原始普查之外 | | **src/commands** · `src/commands/doctor-agent-database-paths.ts` | 0/0/1/0/0 | 15 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-agent-deletion-journal-quarantine.ts` | 3/0/1/0/0 | 51 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-auth-migration-receipts.ts` | 3/2/2/0/0 | 95 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-heartbeat-task-migration.ts` | 2/0/1/0/0 | 252 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-session-canonical-keys.ts` | 0/0/0/0/1 | 528 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-session-incognito-key-repair-state.ts` | 10/1/0/0/0 | 32 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-session-incognito-key-repair.ts` | 4/0/3/1/1 | 75 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-session-sqlite-retained.ts` | 0/0/1/0/0 | 126 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-session-sqlite-verification.ts` | 0/1/0/0/1 | 137 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-session-transcript-headers.ts` | 0/1/0/1/0 | 98 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-session-transcript-labels.ts` | 0/0/0/1/0 | 201 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-skill-workshop-retire-proposals.ts` | 0/0/1/0/0 | 547 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-telegram-general-topic-conversations.ts` | 10/0/0/1/1 | 57 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-update-rehearsal-inventory.ts` | 0/1/0/0/0 | 328 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-update-run.ts` | 1/1/0/0/0 | 65 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor-update-schema-guard.ts` | 1/1/0/0/0 | 74 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor/auth-alias-receipt.ts` | 0/0/2/0/0 | 151 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor/cron/store-inventory.ts` | 2/0/0/0/0 | 14 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor/cron/store-repair.ts` | 2/0/1/0/0 | 100 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor/shared/legacy-webhook-pins.ts` | 0/1/0/0/0 | 119 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/commands** · `src/commands/doctor/shared/session-entry-rewrite.ts` | 4/0/0/1/1 | 59 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | | **src/config/sessions** · `src/config/sessions/session-accessor.reset.ts` | 0/0/0/0/1 | 95 | 回复初始化首先解析内存并使用 readExactEntries 来支持数据库执行。仅当在独占本机维护下supportsOpenClawAgentDatabaseExecution为false时才能到达此帮助程序;普通网关和删除清理保留其工人权限。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-acp-provenance.ts` | 1/1/0/0/1 | 34 | 仅旧版本出处 import/repair:recordLegacyAcpMigrationSources 由 sqlite-import.ts 调用,copyLegacyAcpMigrationSourcesForRepair 由 sqlite-node-artifacts.ts. 运行时条目写入并清除持久出处及其现有节点更新插入。只有独占维护适配器 session-meta-write.native.ts 和 state-migrations.acp-session-metadata.ts 调用此本机包装器。运行时源读取使用worker中的readLegacyAcpMigrationContextInDatabase; prepareLegacyAcpMigrationSourcesForEntryWrite 仍然是混合的。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-active-events.ts` | 2/2/0/0/0 | 105 | 仅通过 session-history-read-operation.worker.ts 或 openclaw-agent-execution.worker.ts -> session-actor.worker.ts -> session-actor-phase.worker.ts. 才能完成利用完成到达谓词可见 delta 仅具有 session-history-read-operation.worker.ts 和注册的执行工作进程visibleDelta 操作作为调用者;访问器重新导出不添加本机值调用者。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-archive-store-kernel.ts` | 5/0/0/0/0 | 36 | 只有离线全存储重置通过 commands/cleanup-utils.ts 在会话 accessor.sqlite-reset.ts:65,239 处调用这些;其他归档操作保留本机生命周期调用者;仅 archive-transaction.ts:24,30 和 openclaw-agent-execution-operations.ts:433,445 调用 prepare/record. 运行时发布通过 session-archive-publication.ts 分派到代理执行工作线程。备用存档-store.ts路线经过回收-run.ts:68,140:本机回收需要工人或明确的schema/agent维护保管; !supportsOpenClawAgentDatabaseExecution 单独执行绝不会允许本机回收。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-archive-transaction.ts` | 0/0/0/1/0 | 20 | 只有 session-accessor.sqlite-reclamation.ts:204 调用此 archive-publish-prepare/record 事务。传入回收通行证回收-run.ts:68,140: !isMainThread 或独占schema/agent 维护允许本机工作;普通运行时分派到会话 accessor.sqlite-archive.worker.ts:500-512。代理执行发布使用其自己的工作事务。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-canonical-inventory.ts` | 0/0/0/0/4 | 337 | 仅限医生呼叫者:commands/doctor-session-canonical-candidates.ts:94;医生会话规范-keys.ts:132;医生状态-integrity.ts:1280;医生-会话-标题-repair.ts:118;医生-会话-分娩-state.ts:112; doctor/shared/codex-route-session-repair.ts:551,552。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-compaction.ts` | 0/0/0/1/0 | 109 | agent-runner-memory.ts:489 使用异步压缩外观,它通过 withSessionMetadataWorker 将 session.transcript.compactionBoundary 分派到 session-manager-metadata.worker.ts:141。本机同步包装器没有生产值调用者:访问器桶仅重新导出它,并且 session-accessor.sqlite-compaction-runtime.ts:17,37-38 使用其类型。无 SDK 值导出。 Worker初始化使用ensureSessionEntryInTransaction;未使用的本机分支不是新进入豁免。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-creation.ts` | 0/0/0/1/0 | 204 | 创建条目首先返回内存状态。普通主线程持久创建保留历史工作者并在那里初始化;此本机初始化事务仅在线程外或在 schema/agent-maintenance 监管下运行。唯一的主线程删除清理生产者提供了workerAuthority,因此它保留了worker调度。工作线程错误不会选择此本机分支。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry-availability.ts` | 1/1/0/0/2 | 53 | 只有 acp/runtime/session-meta-doctor.ts 从 RepairAcpSessionMetaKeysForDoctor 和 readClaimBinding 调用此可用性探测,用于插件 Doctor 索赔检查。身份证据具有单独的 worker/Doctor 所有权。; state-migrations.plugin-doctor-context.ts 是唯一的本机批处理调用者,通过其异步 Doctor 上下文方法。数据库内读取器还提供 session-history-read-operation.worker.ts 服务;普通网关本机调用者不再存在。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry-clear.ts` | 1/0/0/0/0 | 56 | 只有deleteSessionEntryRows 将此称为更清晰。它的调用者是 worker/maintenance 生命周期投影、回收、代理清除和维护最终确定内核,以及来自 cleanup-utils.ts 离线重置的 ResetSessionStore。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry-inventory.ts` | 1/0/0/0/0 | 101 | 计数调用者是投影状态生命周期提交和维护存储准备、捕获应用和快速路径读取。生命周期原生提交需要维护托管; preparation/apply 保留在执行工作线程或其 reclamation/native-maintenance 分支中。快速路径读取器仅由工作人员维护读取调用。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry-store.ts` | 6/1/0/0/0 | 126 | 条目删除是通过 worker/maintenance 生命周期、回收、清除和最终化内核或 cleanup-utils.ts 离线重置来实现的。旧版删除和窗口重新安装还服务于替换状态和 Doctor 旧版修复。 Lifecycle/replacement 在内存退出后将持久的主线程工作分派给工作人员;遗留突变需要医生修复,而启动、入门引导和代理创建则使用检测。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-history-input-visibility.ts` | 0/1/0/0/0 | 89 | 只有只读历史阅读器才调用此投影。其唯一的生产构造函数是 gateway/session-history-worker-reader.ts,由会话 transcript.worker.ts 调用;回调保留在工人拥有的读者生命周期内。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-history-query.ts` | 1/0/0/0/0 | 294 | 投影调用者是只读历史读取器和转录读取内核选择读取器。后者仅由前者构造,其唯一生产构造函数是会话中的gateway/session-history-worker-reader.ts-transcript.worker.ts. | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-history-recency.ts` | 1/0/0/0/0 | 20 | 共享collector/probe查询。 readHistoricalSessionIdsInDatabase 通过 session-transcript.worker.ts 或显式 CLI reclamationMode=in-process 调用收集器。仅reclamation.ts和archive.worker.ts物化调用探针;本机回收需要线程外或 schema/agent-maintenance 所有者,并将普通持久调用者分派给工作人员。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-history-source.ts` | 1/0/0/0/0 | 142 | 只有 session-transcript-read-kernel.ts 调用此源投影。它的阅读器仅在 session-history-readonly-reader.ts 中构造,其唯一的生产构造函数是 session-transcript.worker.ts. 下的 gateway/session-history-worker-reader.ts | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-lifecycle-artifacts.ts` | 3/1/0/0/1 | 71 | 只要支持主线程数据库执行,sqlite-artifact-cleanup.ts 就会使用历史工作者,并在计划之前返回不存在的存储。本地规划仅是独家维护; session-transcript.worker.ts 是另一个计划程序调用者。代理删除提供了workerAuthority,并且内存清理永远不会到达这些SQL路径。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-lifecycle-state.ts` | 2/0/0/0/0 | 267 | 生成读取服务于生命周期规划、删除规划、维护应用和Doctor规范修复别名。 Lifecycle/reclamation/purge 原生分支机构需要工人或维护人员保管;具有预期数据库身份的删除计划仅由 Doctor 遗留修复生成。物理删除是物化状态删除私有的,由相同的 lifecycle/reclamation/purge 内核和工作线程或回收维护完成调用。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-lifecycle.ts` | 0/0/0/1/1 | 140 | ResetSessionEntryLifecycle 将普通主线程数据库执行分派到内存路径之后的 ResetSessionEntryInWorker。这个原生助手提供专门的维护或工作执行;普通代理删除清理提供workerAuthority。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-maintenance-store.ts` | 2/0/0/0/0 | 247 | 准备工作仅由维护事务工作人员 prepare/read 和在线维护调用。捕获的应用程序保留在执行工作人员维护所有者中或立即在内联 lifecycle/replacement/purge/reclamation 提交中运行;他们的本地分支机构需要维护保管。因此,两个 readInputs 调用都保留相同的 worker/maintenance 所有权。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-maintenance-transaction.ts` | 0/0/0/2/0 | 167 | 只有 openclaw-agent-execution-maintenance.ts 和 runSessionMaintenanceMetadataInDatabase 调用此事务。前者仅在执行工作者中注册;后者仅由回收内核调用,其本机分支需要线程外或 schema/agent-maintenance 所有者。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-node-artifacts.ts` | 23/0/0/0/0 | 188 | 复制调用者是入口存储遗留别名重新定位、Doctor 规范密钥修复、Doctor-only 规范修复别名以及由 doctor-fix 保护的遗留迁移。 Alias rehome 使用 worker/maintenance 生命周期或替换提交。 Node删除仅由条目删除调用;传递删除还提供回收服务。这些删除根是worker/maintenance内核或cleanup-utils.ts离线重置。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-owner.ts` | 1/0/0/0/0 | 89 | 所有者替换服务于 worker/maintenance 生命周期和替换提交、Doctor canonical/legacy 修复、离线团队形状会话固定装置 CLI 和 allocateSessionOwner。仅会话共享-store.worker.ts 在生产中调用 allocateSessionOwner;其访问器重新导出不添加本机 SDK 调用程序。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-pending-inputs-repair.ts` | 5/0/0/0/0 | 33 | 两个复制助手仅由 copySessionNodeArtifactsForRepair 调用:worker/maintenance 别名重新定位、Doctor 规范修复和由 doctor-fix 保护的遗留迁移。跨数据库完成查找保留了其较窄的仅医生分类。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-projection.ts` | 0/0/0/1/0 | 344 | 生命周期突变首先返回内存状态,并将普通主线程持久planning/commit分派给worker。仅在该拆分之后调用此私有本机提交:关闭线程、schema/agent-maintenance 托管或仅由 doctor-session-canonical-keys.ts. 设置的allowCanonicalRepair 实时删除清理提供workerAuthority 并保留调度。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-raw-delta-read.ts` | 1/0/0/0/0 | 120 | 数据库包装器由 session-history-read-operation.worker.ts 和执行工作程序 rawDelta 操作调用。投影包装器仅由转录工作器读取器生命周期内的历史查询调用。未使用的本机外观仅具有内部再导出; SDK Delta 读卡器使用异步读卡器所有者。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-reclamation.ts` | 1/0/0/3/0 | 136 | 私有行内核仅由reclaimSqliteSessionInTransaction 调用。它的进入者是存档mutation-worker运行时、session-native-binding.worker.ts和回收-run.ts,其本机分支需要线程外或schema/agent-maintenance所有权;普通主线程调用者使用工作调度。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-replacement-projection.ts` | 0/0/0/1/0 | 515 | 替换首先返回内存状态。仅当 useWorker 为 false 时,提交回调才会到达此事务:创建始终使用工作线程,普通主线程持久替换使用执行工作线程提交。原生执行需要线程外或者schema/agent-maintenance托管;实时删除清理提供了workerAuthority。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-replacement-read.ts` | 1/0/0/0/0 | 34 | 标签键由 session-entry-read.worker.ts 或本机替换分支中的替换快照帮助程序读取,并由替换状态提交重新检查。后者在 memory/worker 拆分后在 worker/maintenance 托管下提供执行工作线程提交或本机替换。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-reset.ts` | 3/0/0/0/1 | 47 | 仅 cleanup-utils.ts:620,628,641 从 reset.ts:154 和 onboard-helpers.ts:254 达到全存储重置,包括 CLI dev bootstrap;网关会话重置是单独的 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-anchor.ts` | 0/1/0/0/0 | 94 | 仅涵盖预期权限 SELECT。 model-context.ts:202 从anchor-read.kernel.ts:215转发;调用者是条目读取、条目队列、水合读取和历史读取操作工作人员,以及在 execution.worker.ts:454 中注册的 openclaw-agent-execution-operations.ts:185。运行时锚读者使用拥有的群组或转录工作者 readAnchors。发布的分离验证器仅接受 version/admission,并且 withTranscriptContextSnapshot 省略预期权限;共享锚助手仍然混合在一起。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-message-rewrite.ts` | 0/1/0/2/0 | 49 | 唯一的生产值调用者是 session-message-rewrite.ts:160,193,每个调用者都由 !isMainThread 控制:159,191。主线程调用者在 :176,208 处获取 rewritePreparedTranscriptMessage。两个本机助手都没有插件 SDK 值导出;周围的混合模块也不例外。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-write.ts` | 0/0/0/2/0 | 154 | 原始追加的唯一生产调用者是 !isMainThread 下的 session-transcript-event.ts:94;内存提前返回,主线程追加分派给其工作人员。 sqlite-runtime-testing.ts 是从已发布的包中排除的私有第一方测试助手。精确行重写仅由 runNative 内的 session-transcript-correction.ts:164 调用,仅在 !isMainThread 下调用:190。内部重新导出不是运行时根; snapshot/SDK 兄弟姐妹保持混合。 | | **src/config/sessions** · `src/config/sessions/session-cold-storage-backup.ts` | 1/2/0/0/0 | 21 | infra/backup-sqlite-snapshot.ts:292 通过备份-create.ts:320,332,352; snapshot/openclaw-snapshot-copy.ts:72 通过 local-repository.ts:148 和 git-backup.ts:310。根为 commands/backup.ts:52、backup-sqlite.ts:80、backup-git.ts:131、Doctor/update 备份和开发人员可靠性脚本; SQL 的目标是临时快照。 | | **src/config/sessions** · `src/config/sessions/session-history-eviction-candidates.ts` | 1/0/0/0/0 | 176 | session-transcript.worker.ts 读取worker中的历史ID; session-history-eviction.ts 仅在 reclamationMode=in-process 时调用本机读取器,仅在生产中由 commands/sessions-cleanup.runtime.ts. 选择 | | **src/config/sessions** · `src/config/sessions/session-transcript-index.ts` | 2/0/0/0/0 | 606 | 只有 reconcile.ts:205,206,280 和投影 writer.ts:299,301 在 no-execution/publication 分支中调用这些完整扫描。普通持久 reconcile/search 捕获代理执行并使用投影 publication.worker.ts 维护状态。 SQL之前内存返回; execution-scope.ts:93-112 将不支持的执行限制为显式维护或工作器本机删除清理。同步每会话重建使用单独的帮助程序。 | | **src/config/sessions** · `src/config/sessions/session-transcript-projection-rebuild.ts` | 6/1/0/0/0 | 287 | 准备好的claim/delete/append/finalize仅通过投影-writer.ts:124,143,184,212和投影-publication.worker.ts:118-128调用; snapshot/tail/insertion 帮手是私人后裔。 reconcile.ts:175-192 提供普通持久执行的出版物。记忆先恢复; execution-scope.ts:93-112 将本机分支限制为显式维护或工作人员本机清理。同步 index.ts:497-531 重建使用 visitSessionTranscriptProjection/readProjectionSource,而不是这些操作。 | | **src/config/sessions** · `src/config/sessions/session-transcript-projection-writer.ts` | 0/1/0/1/0 | 102 | runProjectionWrite 仅由该模块的本机 claim/delete/append/finalize/status 分支和 reconcile.ts:201,277 调用,无需发布。耐用 reconcile/search 使用出版工; Finalize 的工作分支在其 SELECT 之前返回。 SQL之前内存返回; execution-scope.ts:93-112 将不支持的执行限制为维护或工作人员本机清理,其唯一主机工厂在 agent-lifecycle-registry.ts:436-439 中提供workerAuthority。 | | **src/config/sessions** · `src/config/sessions/session-transcript-reconcile-readiness.ts` | 0/0/0/0/1 | 62 | 只有 reconcile.ts:557 在 waitForSessionTranscriptProjection 的内存返回和运行协调检查之后调用此函数。支持通过 withSessionHistoryWorkerDatabase 向会话 transcript.worker.ts:460-470 调度持久执行。本机读取需要执行中的 maintenance/worker-native 清理范围 - scope.ts:93-112;失败的执行捕获或工作线程准入永远不会回退到本机 SQL。 | | **src/cron** · `src/cron/scratch-read.kernel.ts` | 2/0/0/0/0 | 39 | 仅医生本机读取:src/commands/doctor-heartbeat-scratch-migration.ts:516,567,588 和 doctor-heartbeat-task-migration.ts:94,411 → scrap-store.ts:33,42,52。工人兄弟 src/cron/store/read-command.ts:54。 | | **src/cron** · `src/cron/scratch-store.ts` | 2/0/1/0/0 | 120 | 唯一本地调用者 src/commands/doctor-heartbeat-scratch-migration.ts:625:修订保护迁移补偿。 | | **src/cron** · `src/cron/scratch-write.kernel.ts` | 2/0/1/0/0 | 94 | migration/compensation医生,src/commands/doctor-heartbeat-scratch-migration.ts:570,617;工人兄弟 src/cron/store/scratch.worker.ts:28。 | | **src/cron** · `src/cron/store.ts` | 0/0/1/0/0 | 196 | 直接交易使用Doctor Legacy-repair.ts:395钩子;普通load/save派遣工人;传递当前权威 SQL 仍然混合 | | **src/cron** · `src/cron/store/quarantine.kernel.ts` | 2/0/0/0/0 | 81 | 由工人操作和本地 Doctor 商店维修交易共享 | | **src/cron** · `src/cron/store/row-codec.ts` | 9/2/0/0/0 | 255 | Cron 工作内核或 Doctor Legacy-repair.ts:395 transactionHooks / store-repair.ts:178 / doctor-heartbeat-task-migration.ts:261,308。保留的授权代仅由 commands/doctor/cron/store-repair.ts 的工作器 upsert 或resolveCronJobGrantDefinitionGenerationFloor 读取。 | | **src/cron** · `src/cron/store/runtime-authority-store.ts` | 4/0/0/0/0 | 81 | load/save 内核在 Cron 工作线程中运行;本机保存挂钩仅在 commands/doctor/cron/legacy-repair.ts:395 中 | | **src/daemon** · `src/daemon/runtime-pin-state.ts` | 1/1/0/0/0 | 49 | CLI 服务锁; CLI 状态和医生审核;没有网关调用者。 | | **src/daemon** · `src/daemon/runtime-pin-store.ts` | 0/1/0/0/0 | 147 | CLI 服务主/医生迁移;无网关运行时。 | | **src/hooks** · `src/hooks/install-record-transaction.ts` | 0/0/2/0/0 | 23 | 仅 CLI install/update:cli/hook-install-persistence.ts 调用 stageHookInstall; hooks/update.ts 仅通过 cli/plugins-update-command.ts. 回滚才能到达它,属于同一脱机安装事务。 | | **src/infra** · `src/infra/package-update-activation-immutable.ts` | 9/0/0/0/0 | 56 | Adoption/preparation writer 仅由 update-command-immutable.ts 到 update-immutable-install.ts 调用;网关巡检通过SQLite只读worker调度immutableInstall.read | | **src/infra** · `src/infra/package-update-activation-journal.ts` | 7/0/0/0/0 | 117 | CLI admission/status:src/cli/update-cli/update-command-run.ts:208,status.ts:240。受保护的交换: update-command-package.ts:542,645 → src/infra/package-update-swap.ts:342,356 → package-update-activation-prepare.ts:189,298;独立恢复包-更新-激活-sealed.ts通过openJournal开启严格或仅结算检查;两者都是冷 CLI-only 路径,SQL 操作未更改。 | | **src/infra** · `src/infra/package-update-activation-status.ts` | 2/0/0/0/0 | 50 | CLI 状态 src/cli/update-cli/status.ts:240 → src/infra/package-update-activation.ts:144; CLI 预检更新命令-run.ts:208 → activation.ts:79,40。 | | **src/infra** · `src/infra/restart-handoff.ts` | 1/0/1/0/0 | 401 | 只有CLI gateway-cli/register-restart-handoff.ts:61 调用consumeGatewayRestartHandoffSync 及其私有removeCurrent 帮助程序。 | | **src/infra** · `src/infra/restart-intent.ts` | 2/1/0/0/0 | 382 | 本机服务 CLI 意图记录和确切拥有的清理:守护进程-cli/lifecycle-restart-intent.ts,生命周期-unmanaged.ts,daemon/launchd-stop.ts;运行时信号消耗使用 restart-lifecycle.worker.ts. 网关系统代理使用 host.request,而不是守护进程生命周期。 | | **src/infra** · `src/infra/restart-sentinel-store.ts` | 2/2/0/0/0 | 193 | src/infra/restart-sentinel.worker.ts:74,150 加上 src/infra/update-managed-service-handoff.ts:101,439,1639,1649 中生成的一次性子项。 | | **src/infra** · `src/infra/state-migrations.daemon-runtime-pins.ts` | 3/0/1/0/0 | 53 | Doctor config-machine-state / pin fence;独占迁移锁。 | | **src/infra** · `src/infra/update-candidate-state.ts` | 1/0/0/0/0 | 119 | CLI 备份 src/cli/update-cli/update-command-database-backup.ts:104 → src/infra/update-database-backup.ts:387;基线更新命令初始化-run.ts:224→更新恢复基线-capture.ts:343;工作人员库存模式更新候选-state.worker.ts:49、68、73。 | | **src/infra** · `src/infra/update-managed-service-handoff-database-recovery.ts` | 2/0/0/0/0 | 137 | 仅显式更新恢复 CLI ->recoverImmutableUpdate ->withImmutableUpdateOwner({ recover: true });普通的lease和Gateway读者从来不称这种冷刊录取为己任 | | **src/infra** · `src/infra/update-managed-service-handoff-lease.ts` | 1/0/0/0/0 | 268 | createLeaseStore.admit 被原来的 acquisition.ts 从 update/repair/triage CLI 和生成的租用源助手调用;重定向在 HANDOFF_SCRIPT. 中运行 | | **src/infra** · `src/infra/update-managed-service-handoff-reclamation.ts` | 1/0/0/0/0 | 120 | observeManagedHandoffReclamation.readPairs 仅由 CLI/generated 源帮助程序中的 lease.ts createLeaseStore 准入调用。 | | **src/infra** · `src/infra/update-run-admission.ts` | 0/0/1/0/0 | 83 | createUpdateRun 是唯一的调用者:Gateway/update 活动将 updateRuns.create 调度到 update-run-mutation.worker.ts;本机创建调用是 CLI update-command-run.ts 和 update-repair-command.ts. 现有架构和引导事务保留工作线程的 transaction/commit 准入回调。 | | **src/infra** · `src/infra/update-run-ledger.ts` | 2/3/0/0/0 | 135 | 网关服务器-methods/update.ts和update-startup-auto-run.ts使用createUpdateRunAsync; update-run-mutation.worker.ts 执行创建。剩余的本机调用者是 update-command-run.ts 和 update-repair-command.ts. 旧版取代仍然是显式的 CLI-only 选项。仅 update-repair-command.ts 调用 reconcilePackageOwnerRefusal; update-command-mutable-signals.ts 在其 CLI 执行器下调用 finishInterruptedUpdateBeforeActivation。他们的 package/activation 保管支票完好无损。 | | **src/infra** · `src/infra/update-run-read.kernel.ts` | 1/2/0/0/0 | 61 | 运行时通过 update-run-reader.ts 读取调度到 openclaw-state-read.worker.ts;突变在 update-run-mutation.worker.ts、协调和中断工作人员中读取当前记录。原生读者服务 CLI update-command-* / update-repair-command.ts、医生入院、update-migerated-finalize.worker.ts 和 update-repair-turn-worker.ts. 网关 update/report/restart/notice 和启动活动调用者使用异步 API;生成的托管切换账本读取在辅助子项中执行。 | | **src/infra** · `src/infra/update-run-recovery-store.ts` | 1/0/0/0/0 | 21 | 运行时 mutation/reconciliation/interruption 读取器在现有工作线程中执行。本机 load/inspect 恢复呼叫者更新 CLI 修复、结果、回滚和终端所有者以及 CLI 托管切换清理;没有网关读取器使用同步恢复外观。恢复排除保留为 activation/rollback 保管,而不是作为簿记删除。 | | **src/infra** · `src/infra/update-run-write.ts` | 1/0/0/0/0 | 123 | 网关 update/run、启动观察、通知和启动活动使用 update-run-write.async.ts 和现有 update-run-mutation.worker.ts 编写器。剩余的本机 mutateRun 调用者是 CLI update-command-* 和 Doctor; update-migerated-finalize.worker.ts、reconciliation/interruption 工作线程和生成的托管切换帮助程序也拥有本机事务。不保留同步运行时回退。 | | **src/infra/outbound** · `src/infra/outbound/current-conversation-bindings.ts` | 1/0/1/0/0 | 727 | 仅显式测试 SDK 命名空间:session-binding-service.ts testing.resetSessionBindingAdaptersForTests 调用此重置;它的调用者是tests和contracts/test-helpers/session-binding-registry-backed-contract.ts beforeEach。没有生产绑定清理调用它。 | | **src/state** · `src/state/openclaw-agent-db-path-repair.ts` | 4/0/0/0/0 | 39 | 只有 noteDoctorAgentDatabasePathHealth 在其 Doctor 事务中调用修复。条目:src/flows/doctor-health-contribution-runners.state.ts. 中的 runStateIntegrityHealth | | **src/state** · `src/state/openclaw-agent-db-registry.ts` | 1/0/1/0/0 | 194 | 复数注销:CLI 爪去除 src/claws/lifecycle-delete-support.ts:519 → cli/claws-cli.runtime.ts:562; CLI 代理删除 src/commands/agents.commands.delete.ts:450 → cli/program/register.agent.ts:183。 | | **src/state** · `src/state/openclaw-state-ownership-operations.ts` | 1/0/1/0/0 | 85 | 仅 src/cli/program/register.database.ts:56 调用声明;其私有的claimOwnershipRow调用保留在此CLI操作中。 | | **src/state** · `src/state/openclaw-state-snapshot-sanitizer.ts` | 2/0/0/0/0 | 49 | CLI SQLite/git 备份:src/snapshot/local-repository.ts:148,git-backup.ts:310 → openclaw-snapshot-copy.ts:68;通过 src/infra/backup-create.ts:320,332,352 备份 archive/Doctor → backup-sqlite-snapshot.ts:287;开发人员可靠性脚本也使用该提供程序。 | | **src/state** · `src/state/user-channel-identities.ts` | 4/3/0/0/0 | 120 | 网关使用用户通道-identities.worker.ts 和状态读取;本机解析器通过更新请求者-authority.ts 为通道操作者-authority.ts CLI/updater 捕获提供服务 | | **src/state** · `src/state/user-model-accounts.ts` | 2/0/1/0/0 | 562 | 仅 src/commands/doctor-auth-flat-profiles.ts:1727(Doctor 别名迁移),由 doctor/repair-sequencing.ts:189 和 doctor/auth-profile-repair.ts:45 调用。 | | **src/state** · `src/state/user-profile-events.ts` | 1/0/0/0/0 | 219 | 本机仅从 src/commands/doctor/repair-sequencing.ts:353,354 调用 user-profiles-owner-migration.ts:68 和 user-profiles-tailscale-migration.ts:98;其余调用在 profile/preferences/channel-identity 工作线程中运行。 | | **src/state** · `src/state/user-profiles-internal.ts` | 1/0/0/0/0 | 130 | 经过机械验证的内核:每个价值参考都保留在经过审查的工人或维护条目内;没有运行时、SDK 或未经证实的回调转义。 | | **src/state** · `src/state/user-profiles-owner-migration.ts` | 3/0/1/0/0 | 46 | Doctor Repair-sequencing.ts 调用合并所有者修复; Preview-warnings.ts 使用 shouldRepair false 调用相同的条目。无网关呼叫者。 | | **src/state** · `src/state/user-profiles-owner.ts` | 0/2/0/0/0 | 16 | 仅本机读者用户配置文件所有者-migration.ts:25,52 → src/commands/doctor/shared/preview-warnings.ts:683 和 doctor/repair-sequencing.ts:354;另一个呼叫者是用户 profiles.worker.ts:78。 | | **src/state** · `src/state/user-profiles-tailscale-migration.ts` | 3/1/1/0/0 | 37 | 仅 commands/doctor/repair-sequencing.ts 调用旧版 Tailscale 身份修复。 | | **src/trajectory** · `src/trajectory/runtime-store.sqlite.ts` | 1/1/0/0/1 | 212 | 本机行读取为 CLI-only:commands/sessions-tail.ts tail/follow. 另一个调用者是 session-history-read-operation.worker.ts. 轨迹导出和运行时测试 SDK 使用异步加载器,而不是此本机行读取器。 | | **src/tui** · `src/tui/tui-last-session.kernel.ts` | 1/0/0/0/0 | 23 | CLI/Doctor/developer 一发;如果被网关调用则重新分类 | ### W | 所有者/文件 | 呼叫 (Q/F/S/A/R) | 第一行 | 暴露证据 | | ------------------------------------------------------------------------------------------------------------------- | ----------------: | ---------: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **extensions/imessage** · `extensions/imessage/src/chat-db.worker.ts` | 2/2/0/0/0 | 42 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/logbook** · `extensions/logbook/src/store.worker.ts` | 8/7/0/0/0 | 244 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory-entry-origin-reads.ts` | 0/0/0/0/1 | 42 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory-entry-origins-delete.ts` | 1/0/0/0/0 | 39 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory-entry-origins.worker.ts` | 1/0/0/0/0 | 108 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory-forget-index-read.ts` | 5/0/0/0/0 | 36 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory-forget-kernel.ts` | 5/0/0/0/0 | 42 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory-session-tombstones.ts` | 3/0/0/0/0 | 26 | memory-entry-origins.worker.ts -> memory-forget-kernel.ts 拥有逻辑删除写入; manager-publication.worker.ts 拥有每个 hasMemorySessionTombstone 调用,包括在工作区托管下保留用于影子发布的 session.current 谓词。 | | **extensions/memory-core** · `extensions/memory-core/src/memory/manager-chunk-writer.ts` | 3/0/0/0/0 | 61 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory/manager-embedding-cache.ts` | 4/0/0/0/0 | 94 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory/manager-publication.worker.ts` | 1/0/0/0/0 | 352 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory/manager-retrieval-read.ts` | 0/1/0/0/0 | 45 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory/manager-search.ts` | 3/0/0/0/0 | 364 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory/manager-search.worker.ts` | 1/0/0/0/1 | 130 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory/manager-source-index-kernel.ts` | 7/3/0/0/0 | 114 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/memory-core** · `extensions/memory-core/src/memory/manager-source-state.ts` | 2/0/0/0/0 | 108 | manager-publication.worker.ts source.state 和 manager-search.worker.ts source-state/recall-metadata 是唯一的运行时调用方。源同步和检查等待MemoryIndexDatabase.readSourceState;内核只能通过隔离测试直接调用。 | | **extensions/memory-core** · `extensions/memory-core/src/standing-intents-kernel.ts` | 8/2/0/0/0 | 60 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/qa-lab** · `extensions/qa-lab/src/execution-identity-storage-inspection.worker.ts` | 1/2/0/0/0 | 59 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/team-reports** · `extensions/team-reports/src/store-database.ts` | 1/1/0/0/0 | 119 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/team-reports** · `extensions/team-reports/src/store.worker.ts` | 16/4/0/0/0 | 119 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/workboard** · `extensions/workboard/src/sqlite-store-kernel.ts` | 1/7/0/0/0 | 82 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/workboard** · `extensions/workboard/src/sqlite-store-sessions-board.ts` | 4/1/0/0/0 | 68 | 工人实施;将 SQL 保留在此所有者中 | | **extensions/workboard** · `extensions/workboard/src/sqlite-store-write.ts` | 0/1/0/0/0 | 97 | 工人实施;将 SQL 保留在此所有者中 | | **packages/memory-host-sdk** · `packages/memory-host-sdk/src/host/memory-recall-metadata.ts` | 2/0/0/0/0 | 97 | extensions/memory-core/src/memory/manager-search.worker.ts拥有策划和回忆元数据读取,包括融合的仅会话关键字请求。 仅私有本地内存核心主机引擎存储外观仅重新导出内核;没有主机运行时读取器剩余。 | | **packages/memory-host-sdk** · `packages/memory-host-sdk/src/memory-entry-origins.ts` | 1/0/0/0/0 | 69 | 工人实施;将 SQL 保留在此所有者中 | | **src/acp** · `src/acp/event-ledger.worker.ts` | 2/0/0/0/0 | 452 | 工人实施;将 SQL 保留在此所有者中 | | **src/acp** · `src/acp/runtime/session-meta-entry.worker.ts` | 0/0/0/1/0 | 27 | 工人实施;将 SQL 保留在此所有者中 | | **src/acp** · `src/acp/runtime/session-meta-keys.ts` | 2/0/0/0/0 | 119 | session-meta-list.ts 将 acpSessions.list 提交给共享读取工作线程。批量精确键读取仅由 session-meta-read.worker.ts 调用;普通的捆绑条目读取器等待该工作程序,而已弃用的同步 SDK 读取器使用其单独的单行操作。 | | **src/acp** · `src/acp/runtime/session-meta-read.worker.ts` | 2/0/0/0/0 | 43 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents** · `src/agents/mcp-oauth-store.kernel.ts` | 3/2/0/0/0 | 207 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents** · `src/agents/mcp-oauth-store.worker.ts` | 5/0/2/0/0 | 61 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents** · `src/agents/plugin-model-catalog-read.worker.ts` | 1/0/0/0/0 | 29 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents** · `src/agents/plugin-model-catalog.worker.ts` | 5/0/0/0/0 | 59 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents** · `src/agents/workspace-state-store.kernel.ts` | 7/1/0/0/0 | 375 | workspace.replaceAttestation、workspace.expire 和 workspace.delete 在共享状态工作线程中调度;分享 snapshot/alias 帮手保留 Doctor/migration 曝光 | | **src/agents** · `src/agents/workspace-state-store.worker.ts` | 1/2/3/0/0 | 48 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/auth-profiles** · `src/agents/auth-profiles/shared-store-bootstrap.worker.ts` | 0/1/1/0/0 | 39 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/auth-profiles** · `src/agents/auth-profiles/sqlite-json.ts` | 2/0/0/0/0 | 276 | 只有 auth-profiles/store.worker.ts、plugin-model-catalog.worker.ts 和 sqlite-readonly-native-payload.ts 的 auth-profile-rows 工作程序调用此批量读取器;同步 SDK 单元读取器仍为 T1。 | | **src/agents/auth-profiles** · `src/agents/auth-profiles/store.worker.ts` | 0/0/3/0/0 | 50 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/harness** · `src/agents/harness/context-engine-turn-outbox.kernel.worker.ts` | 7/3/0/0/0 | 85 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/harness** · `src/agents/harness/native-hook-relay-store.kernel.ts` | 5/0/0/0/0 | 58 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/harness** · `src/agents/harness/native-hook-relay-store.worker.ts` | 0/0/1/0/0 | 16 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/sandbox** · `src/agents/sandbox/registry-import.worker.ts` | 0/0/1/0/0 | 16 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/sandbox** · `src/agents/sandbox/registry-write.worker.ts` | 0/0/1/0/0 | 20 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/sandbox** · `src/agents/sandbox/registry.kernel.ts` | 5/0/0/0/0 | 123 | 注册表突变,包括保留和删除意图选择,仅通过registry-write.worker.ts ->executeSandboxRegistryCommand运行;仅导入registry-import.worker.ts. 读取帮助器通过读取工作器中的openclaw-state-read-registry.ts 运行。同步沙箱效果检查消耗由提交的收据维护的注册表currentness.ts事实。 | | **src/agents/sessions** · `src/agents/sessions/session-manager-maintenance.worker.ts` | 0/0/0/1/0 | 43 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/sessions** · `src/agents/sessions/session-manager-metadata.worker.ts` | 0/0/0/2/0 | 169 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/subagents** · `src/agents/subagents/completion/subagent-completion-admission.worker.ts` | 1/0/1/0/0 | 57 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/subagents** · `src/agents/subagents/completion/subagent-completion-queue-receipt.ts` | 1/0/0/0/0 | 14 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/subagents** · `src/agents/subagents/registry/subagent-registry.store.kernel.ts` | 2/0/0/0/0 | 47 | 主机 FIFO 所有者根据已提交的收据进行计划后,注册表持久性和完成准入工作人员会调用批量写入内核。完成突变写入只能通过准入工作者完成;没有本地作家来电者留下。 | | **src/agents/subagents** · `src/agents/subagents/registry/subagent-registry.store.sqlite.ts` | 5/0/0/0/0 | 36 | 精确的行服务于竣工准入工人。会话列表和子读取服务于 openclaw-state-read.worker.ts. 注册表行服务于 store.worker.ts maintenance/versioned/session 读取或完成 -mutation.kernel.ts 到完成 -admission.worker.ts. 后代选择仅由 store.worker.ts 调用;本机摘要比较已被删除。 | | **src/agents/subagents** · `src/agents/subagents/registry/subagent-registry.store.worker.ts` | 0/0/1/0/0 | 165 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/subagents** · `src/agents/subagents/spawn/acp-parent-stream-store.worker.ts` | 1/1/0/0/0 | 50 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/worktrees** · `src/agents/worktrees/capacity.worker.ts` | 3/0/1/0/0 | 90 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/worktrees** · `src/agents/worktrees/pending-slots.worker.ts` | 5/0/0/0/0 | 27 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/worktrees** · `src/agents/worktrees/provisioned-snapshot.worker.ts` | 2/0/0/0/0 | 14 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/worktrees** · `src/agents/worktrees/registry-read.kernel.ts` | 7/0/0/0/0 | 137 | 运行时读取和精确行谓词通过共享状态工作注册表使用 worktrees/dispatch.worker.ts 和registry-run-end.worker.ts。清理库存在读取工作线程中使用 openclaw-state-read-registry.ts。本机夹具读取器仅存在于 registry.test-support.ts 中;医生迁移列表保留其单独的 registry.ts 查询。 | | **src/agents/worktrees** · `src/agents/worktrees/registry-retirement.worker.ts` | 2/0/2/0/0 | 33 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/worktrees** · `src/agents/worktrees/registry-run-end.worker.ts` | 11/0/1/0/0 | 73 | 工人实施;将 SQL 保留在此所有者中 | | **src/agents/worktrees** · `src/agents/worktrees/run-lease-owner.ts` | 2/0/0/0/0 | 104 | 运行租用库存由读取工作线程中的 openclaw-state-read-registry.ts 调度。注册表突变保管仅由registry-run-end.worker.ts. 调用,实际租约read/reap 原语仍保持同步豁免。 | | **src/agents/worktrees** · `src/agents/worktrees/run-lease-store.kernel.ts` | 2/0/0/0/0 | 28 | worktrees/dispatch.worker.ts通过WorkerWriteOperationContext.writeAdmitted登记入场; src/state/openclaw-state-worker-registry.ts 加载处理程序。本机退出清理单独分类为锁原语。 | | **src/agents/worktrees** · `src/agents/worktrees/template-registry.worker.ts` | 12/0/1/0/0 | 62 | 工人实施;将 SQL 保留在此所有者中 | | **src/audit** · `src/audit/audit-event-read.kernel.ts` | 1/0/0/0/0 | 53 | 工人实施;将 SQL 保留在此所有者中 | | **src/audit** · `src/audit/audit-event-store.ts` | 2/3/3/0/0 | 549 | 工人实施;将 SQL 保留在此所有者中 | | **src/audit** · `src/audit/audit-identity.ts` | 1/4/0/0/0 | 76 | 工人实施;将 SQL 保留在此所有者中 | | **src/audit** · `src/audit/execution-decision-facts.ts` | 4/4/2/0/0 | 152 | 工人实施;将 SQL 保留在此所有者中 | | **src/audit** · `src/audit/execution-identity-context.ts` | 4/3/2/0/0 | 123 | 工人实施;将 SQL 保留在此所有者中 | | **src/audit** · `src/audit/execution-owner-lifecycle-binding-store.ts` | 2/1/0/0/0 | 33 | 工人实施;将 SQL 保留在此所有者中 | | **src/audit** · `src/audit/execution-owner-lifecycle-receipts.ts` | 1/3/0/0/0 | 58 | 工人实施;将 SQL 保留在此所有者中 | | **src/audit** · `src/audit/message-delivery-audit-store.ts` | 1/2/0/0/0 | 122 | 工人实施;将 SQL 保留在此所有者中 | | **src/audit** · `src/audit/message-delivery-progress-store.ts` | 3/6/3/0/0 | 70 | 工人实施;将 SQL 保留在此所有者中 | | **src/audit** · `src/audit/message-execution-binding.ts` | 1/1/1/0/0 | 76 | 工人实施;将 SQL 保留在此所有者中 | | **src/boards** · `src/boards/sqlite-board-store.kernel.ts` | 8/0/0/0/0 | 134 | 工人实施;将 SQL 保留在此所有者中 | | **src/channels** · `src/channels/message/ingress-queue-health.kernel.ts` | 2/0/0/0/0 | 17 | 工人实施;将 SQL 保留在此所有者中 | | **src/channels** · `src/channels/message/ingress-queue.kernel.ts` | 16/1/0/0/0 | 41 | 工人实施;将 SQL 保留在此所有者中 | | **src/channels** · `src/channels/message/ingress-queue.worker.ts` | 0/0/1/0/0 | 48 | 工人实施;将 SQL 保留在此所有者中 | | **src/claws** · `src/claws/add-state.worker.ts` | 0/0/1/0/0 | 68 | 工人实施;将 SQL 保留在此所有者中 | | **src/claws** · `src/claws/cron-state.worker.ts` | 2/0/2/0/0 | 69 | 工人实施;将 SQL 保留在此所有者中 | | **src/claws** · `src/claws/mcp-state.worker.ts` | 2/0/2/0/0 | 73 | 工人实施;将 SQL 保留在此所有者中 | | **src/claws** · `src/claws/provenance-read.kernel.ts` | 0/1/0/0/0 | 189 | 仅 src/state/openclaw-state-read.worker.ts:232 和 src/claws/provenance-write.worker.ts:48 执行读取器。 | | **src/claws** · `src/claws/provenance-runtime-read.kernel.ts` | 1/0/0/0/0 | 18 | 工人实施;将 SQL 保留在此所有者中 | | **src/claws** · `src/claws/provenance-write.worker.ts` | 0/1/1/0/0 | 24 | 工人实施;将 SQL 保留在此所有者中 | | **src/claws** · `src/claws/workspace-state.worker.ts` | 2/0/2/0/0 | 16 | 工人实施;将 SQL 保留在此所有者中 | | **src/config** · `src/config/config-journal-snapshot.worker.ts` | 0/0/1/0/0 | 10 | 工人实施;将 SQL 保留在此所有者中 | | **src/config** · `src/config/io.health-state.kernel.ts` | 1/0/0/0/0 | 140 | 只有 openclaw-state-worker-runtime.ts 通过共享状态工作线程调用此条件补丁。本机配置兼容性读取和写入仍为 T1。 | | **src/config/sessions** · `src/config/sessions/cleanup-service-read.worker.ts` | 0/0/0/0/1 | 12 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/conversation-delivery-store.kernel.ts` | 3/0/0/0/0 | 151 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/legacy-main-session-ledger.read.worker.ts` | 0/1/0/0/0 | 8 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/provider-review-store.worker.ts` | 0/0/0/1/0 | 24 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-archive-read.ts` | 1/3/0/0/1 | 112 | 只有session-transcript.worker.ts:230(存在)和session-accessor.sqlite-archive.worker.ts:483,491(page/final)调用这些读取器;共享存档列表仍然是 T1。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-archive-selection.ts` | 0/1/0/0/0 | 192 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-archive.worker.ts` | 1/0/0/0/0 | 317 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry-facts.worker.ts` | 1/0/0/0/0 | 90 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry-list.read.ts` | 1/0/0/0/0 | 265 | 只有session-entry-read-runtime.ts:458,488通过withSessionStoreReaderInWorker产生cronRetention/expiredCronRuns; session-entry-read.worker.ts:166 调用 listSessionEntriesReadOnly。其他本机列表调用者省略两个选择器;只有行初始值设定项是仅限工作人员使用的。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry-read.ts` | 1/0/0/0/0 | 277 | 仅 session-entry-read.worker.ts 调用子条目读取器。该模块中的其他阅读器保留本机 SDK 和维护调用者。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-entry.ts` | 0/0/0/1/0 | 216 | 唯一的生产调用者是gateway/worker-environments/transcript-commit.kernel.ts中的applyPreparedTranscriptCommit,由transcript-commit.worker.ts.调用。其他调用者是固定装置;其余的条目操作保留其自己的分类。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-involvement.worker.ts` | 0/0/0/1/0 | 26 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-maintenance-store.ts` | 1/0/0/0/0 | 49 | 只有 openclaw-agent-execution-operations.ts 可以处理 session.maintenance.size,而 session-accessor.sqlite-archive.worker.ts 可以使用此读取器处理维护大小。其他维护准备工作仍然好坏参半。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-mutation-worker.runtime.ts` | 0/0/0/1/0 | 363 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-owner.ts` | 0/0/0/1/0 | 134 | 只有session-sharing-store.worker.ts在owner.assign下执行assignSessionOwner; session-metadata-write.async.ts 通过 runSessionCollaborationWrite 调度。访问器再导出服务于固定装置。所有者更换有单独的 worker/maintenance 分类。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-participants.native.ts` | 2/2/0/1/0 | 103 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-pending-input-receipts.ts` | 1/0/0/0/1 | 33 | 只有 session-history-read-operation.worker.ts 会调用此收据读取器来获取 session-pending-input-receipts。主机收据外观和工作合同仅导入其类型。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-summary.ts` | 1/0/0/0/1 | 57 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-binding.ts` | 0/1/0/0/0 | 15 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-reports.kernel.ts` | 0/1/0/0/0 | 96 | 只有session-accessor.sqlite-transcript-reports.worker.ts 调用prepareTranscriptReportSelection 和appendAbortedSessionTranscriptPartialInTransaction,这两个读取器的调用者。主机报告外观仅使用prepareCustomTranscriptReport序列化。 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-transcript-reports.worker.ts` | 0/0/0/1/0 | 120 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-accessor.sqlite-worktree-owner.ts` | 1/0/0/0/0 | 48 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-accessor.transcript-range.worker.ts` | 1/5/0/0/0 | 81 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-actor-hydration.worker.ts` | 1/0/0/0/0 | 68 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-canonical-validation.ts` | 5/0/0/0/0 | 61 | 只有 session-accessor.sqlite-mutation-worker.runtime.ts:375,280,381 在mutation-worker消息处理程序中调用这些操作。 | | **src/config/sessions** · `src/config/sessions/session-cold-storage-inventory.ts` | 0/2/0/0/0 | 14 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-cold-storage-selection.ts` | 2/0/0/0/1 | 32 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-cold-storage-worker.ts` | 11/1/0/1/6 | 153 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-entry-cohort.worker.ts` | 1/0/0/0/1 | 45 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-entry-current-admission.worker.ts` | 0/0/0/0/2 | 197 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-entry-list.worker.ts` | 3/0/0/0/1 | 46 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-entry-patch.worker.ts` | 0/0/0/1/0 | 104 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-entry-read.worker.ts` | 1/0/0/0/3 | 87 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-group-categories.read.ts` | 1/0/0/0/0 | 13 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-history-archive-pruning.worker.ts` | 4/0/0/3/1 | 36 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-history-eviction-candidates.ts` | 1/0/0/0/0 | 52 | 在删除隐身磁盘路径后,只有会话 transcript.worker.ts 会读取存档的逐出批次。本机历史-ID 读取是 CLI 清理;录取参考读者保留单独的分类。 | | **src/config/sessions** · `src/config/sessions/session-history-read-operation.worker.ts` | 0/0/0/0/2 | 270 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-membership-facts.ts` | 2/0/0/0/0 | 61 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-memory-entry.worker.ts` | 0/0/0/0/1 | 51 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-message-rewrite.worker.ts` | 0/1/0/0/0 | 578 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-participant-contribution.worker.ts` | 1/0/0/0/0 | 118 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-pending-input-history-read.worker.ts` | 0/0/0/0/1 | 12 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-pending-input-history-reconcile.ts` | 2/0/0/1/0 | 24 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-pending-input-history.kernel.ts` | 1/1/0/0/0 | 44 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-pending-input-operations.kernel.ts` | 1/2/0/0/0 | 181 | 阶段 SQL 仅通过 openclaw-agent-execution.worker.ts 或 session-actor-phase.worker.ts. 中的 session.pendingInputs.mutate 执行主机 nativeMutation 适配器仅接受完整的,因此此防护排除本机完成及其共享帮助程序。结果初始值设定项是通过 session.pendingInputs.mutate 或 session-actor-phase.worker.ts. 本机完成调用 writeSessionInputCompletion 实现的仅完成更新;共享业务仍然混杂。 | | **src/config/sessions** · `src/config/sessions/session-pending-input-source.kernel.ts` | 0/4/0/0/0 | 24 | 只有 session-history-read-operation.worker.ts 处理 session-pending-input-source,或者 readPendingInput 通过 openclaw-agent-execution.worker.ts. 中的 session.pendingInputs.read 到达此读取器主机本机适配器仅调用完成。 | | **src/config/sessions** · `src/config/sessions/session-pending-input-withdrawal.worker.ts` | 2/1/0/1/0 | 33 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-reaction-store.kernel.ts` | 2/3/0/0/0 | 27 | 只有代理执行工作器反应注册表调用此 SQL 内核。主机导入其错误类;隐身突变贯穿记忆演员。 | | **src/config/sessions** · `src/config/sessions/session-reaction-store.read.ts` | 1/0/0/0/0 | 53 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-retirement-read.worker.ts` | 1/0/0/0/1 | 16 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-sharing-store.native.ts` | 1/1/0/2/0 | 93 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-suggestion-store.kernel.ts` | 6/2/0/0/0 | 84 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-transcript-hydration-read.worker.ts` | 0/0/0/0/1 | 35 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-transcript-hydration.worker.ts` | 1/0/0/0/0 | 122 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-transcript-index-status.worker.ts` | 9/3/0/0/0 | 151 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-transcript-projection-publication.worker.ts` | 0/1/0/0/0 | 135 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/session-transcript-search.ts` | 1/1/0/0/1 | 178 | 同步搜索操作仅由会话 transcript.worker.ts. 调用。异步 Facade 直接读取内存 Actor 历史记录,并且从不进入隐身会话的 SQLite。 | | **src/config/sessions** · `src/config/sessions/session-transcript.worker.ts` | 0/0/0/0/14 | 138 | 工人实施;将 SQL 保留在此所有者中 | | **src/config/sessions** · `src/config/sessions/targets-read-availability.worker.ts` | 0/0/0/0/1 | 96 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/dispatch.worker.ts` | 0/0/3/0/0 | 187 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/external-state.worker.ts` | 0/0/1/0/0 | 19 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/guarded-mutation.worker.ts` | 0/0/1/0/0 | 177 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/job-mutations.worker.ts` | 0/0/1/0/0 | 233 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/job-name.kernel.ts` | 1/0/0/0/0 | 23 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/load.worker.ts` | 0/0/1/0/0 | 28 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/row-codec.ts` | 2/0/0/0/0 | 323 | run-admission.worker.ts:458 和工作线程运行时状态保存;医生从不请求状态只保存 | | **src/cron** · `src/cron/store/run-finalization.worker.ts` | 0/0/1/0/0 | 24 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/run-history.kernel.ts` | 6/1/0/0/0 | 102 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/run-queue.worker.ts` | 3/1/4/0/0 | 116 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/run-receipt-delivery.ts` | 1/0/0/0/0 | 11 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/run-receipt-read.ts` | 1/0/0/0/0 | 132 | 读取-command.ts当前收据并通过openclaw-state-read.worker.ts运行-recovery.read.ts路由;剩余的直接调用者是 run-admission.worker.ts 和 runtime-maintenance.worker.ts | | **src/cron** · `src/cron/store/run-receipt-store.ts` | 5/2/0/0/0 | 55 | Admission/recovery/reservation/state/maintenance/dispatch工人拥有直接原语;服务消息防护使用接收权限所有者事实,而无需删除本机当前作业读取器 | | **src/cron** · `src/cron/store/run-receipt-trigger-state.ts` | 1/2/0/0/0 | 54 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/run-receipt.worker.ts` | 0/0/3/0/0 | 20 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/run-recovery.worker.ts` | 1/0/1/0/0 | 19 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/runtime-maintenance.worker.ts` | 0/0/4/0/0 | 55 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/save.worker.ts` | 0/0/1/0/0 | 26 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/scheduler-actor.worker.ts` | 0/0/2/0/0 | 125 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/scheduler-state.worker.ts` | 0/0/1/0/0 | 34 | 工人实施;将 SQL 保留在此所有者中 | | **src/cron** · `src/cron/store/scratch.worker.ts` | 0/0/1/0/0 | 16 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/cli-session-history-index.worker.ts` | 4/3/0/0/0 | 203 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/config-revision-key.worker.ts` | 0/1/0/0/0 | 12 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/github-personal-publication-store.worker.ts` | 3/4/0/0/0 | 52 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/github-publication-shared-read.kernel.ts` | 0/6/0/0/0 | 37 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/github-publication-store.worker.ts` | 5/5/0/0/0 | 53 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/github-repository-publication-read.worker.ts` | 1/0/0/0/0 | 58 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/github-repository-publication-store.worker.ts` | 2/8/0/0/0 | 75 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/managed-image-record-store.kernel.ts` | 6/3/1/0/0 | 105 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/mention-inbox-store.worker.ts` | 3/1/0/0/0 | 37 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/mention-inbox.worker.ts` | 0/0/1/0/0 | 24 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/operator-approval-placement-grants.read.worker.ts` | 1/0/0/0/0 | 50 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/operator-approval-standing-grants.worker.ts` | 11/4/2/0/0 | 119 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/operator-approval-store.kernel.worker.ts` | 4/2/3/0/0 | 97 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/operator-approval-store.receipts.ts` | 1/2/0/0/0 | 414 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/operator-approval-store.rows.worker.ts` | 3/2/0/0/0 | 20 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/operator-approval-store.transitions.worker.ts` | 7/0/4/0/0 | 63 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/operator-approval-store.worker.ts` | 0/0/1/0/0 | 47 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/session-group-catalog.kernel.ts` | 9/0/1/0/0 | 33 | 目录快照和突变命令在共享状态工作线程中运行;在删除本机类别回调后,类别目标读取仅由 session-sharing-store.worker.ts 调用 | | **src/gateway** · `src/gateway/session-group-registration.kernel.ts` | 3/0/1/0/0 | 12 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway** · `src/gateway/session-row-transcript-backfill.worker.ts` | 1/0/0/0/0 | 65 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/inference-store.kernel.ts` | 7/3/0/0/0 | 103 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/local-workspace-store.kernel.ts` | 0/6/0/0/0 | 19 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/local-workspace-store.worker.ts` | 0/0/1/0/0 | 32 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-drain.ts` | 1/0/0/0/0 | 75 | 仅放置 turn/transition 工作人员和放置 lifecycle.worker.ts 排水放置中的移动突变内核。 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-lifecycle.worker.ts` | 2/0/0/0/0 | 142 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-move-intent.ts` | 5/2/0/0/0 | 248 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-pending-failure.ts` | 3/0/0/0/0 | 47 | 只有placement-turn-claims.worker.ts中的placementTurns.failResult构建了终端失败内核,包括其事务本地转换助手;所有运行时调用者都在等待其工作外观 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-read-projection.ts` | 5/0/0/0/0 | 47 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-retirement.ts` | 0/1/0/0/0 | 24 | 仅放置-lifecycle.worker.ts 废弃放置行;主机放置 API 通过生命周期工作线程进行调度。 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-row-codec.ts` | 6/1/0/0/0 | 180 | 状态读取和放置工作人员拥有所有行查询; GitHub 延迟选择仅在 state/github-publication.worker.ts. 主机消费者使用纯行编解码器或 async/receipt-backed 读卡器中运行。安置-lifecycle.worker.ts 中的调度和安置-转-claims.ts 索赔路径在工作人员中运行;放置-store.ts 使用异步工作外观。;转换仅在放置 -transitions.worker.ts 中运行并在放置 -lifecycle.worker.ts. 中准备绑定 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-session-tool-operations.kernel.ts` | 12/0/0/0/0 | 37 | 工厂运行在placement-session-tool-operations.worker.ts;索赔、协调和终端故障清理现在仅通过placement-turn-claims.worker.ts运行 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-transitions.worker.ts` | 2/0/0/0/0 | 158 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-turn-claims.ts` | 8/0/0/0/0 | 68 | 仅placement-lifecycle.worker.ts重启后清除本地声明;已发布的同步 SDK 方法现在拒绝异步迁移指导。 Claim/release/cancel 突变仅通过放置-转-claims.worker.ts 运行;主机等待和验证消耗异步读取和发布的声明事实。 placement-store.ts:132 提供工人突变; placement-turn-claims.worker.ts:299,355,360 执行 release/manifest 方法 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-turn-claims.worker.ts` | 1/0/1/0/0 | 76 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-workspace-journal.ts` | 8/0/0/0/0 | 63 | 读取 state-read.worker.ts:653 处的调度和 Placement-workspace-journal.worker.ts:30 处的日志突变工厂;在placement-turn-claims.worker.ts:190处接受,通过placement-workspace-journal.worker.ts:30日记中止,并通过placement-transitions.worker.ts:82清单排出;本机移动排水管不提供清单并跳过清理 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-workspace-reservation.kernel.ts` | 0/1/0/0/0 | 29 | 只有placement-lifecycle.worker.ts和worker拥有的claim kernel在生效前检查预留;主机准备使用工作器读取。 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/placement-workspace-result.ts` | 15/0/0/0/0 | 69 | 变异助手贯穿安置turn/lifecycle工人;协调和待结果读取在状态读取工作线程中运行。 GitHub 延迟选择也仅在 state/github-publication.worker.ts. 中运行主机导出是异步读取器或纯 row/claim 帮助程序。仅placement-turn-claims.worker.ts发布阶段性结果;主机调用者使用异步读取器并发布结果事实。 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/prepared-environment-store.ts` | 2/3/0/0/0 | 94 | 准备好的突变在store.worker.ts中运行;消耗及其放置引用谓词仅在放置-lifecycle.worker.ts.中运行 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/prepared-pool-presence-store.worker.ts` | 2/1/0/0/0 | 69 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/session-attachment-store.ts` | 1/2/0/0/0 | 58 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/store-mutations.ts` | 0/2/0/0/0 | 33 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/store-row-codec.ts` | 3/1/0/0/0 | 189 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/store-transitions.ts` | 1/1/0/0/0 | 76 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/store-write.ts` | 1/0/0/0/0 | 15 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/store.kernel.ts` | 0/1/0/0/0 | 114 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/store.worker.ts` | 0/0/1/0/0 | 47 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/terminal-environment-retention.ts` | 1/1/0/0/0 | 64 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/transcript-commit-store.worker.ts` | 5/2/1/0/0 | 75 | 工人实施;将 SQL 保留在此所有者中 | | **src/gateway/worker-environments** · `src/gateway/worker-environments/transcript-commit.worker.ts` | 0/0/0/1/0 | 72 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/delivery-queue-sqlite-bound.ts` | 1/0/0/0/0 | 138 | 唯一运行时调用者:src/infra/delivery-queue.worker.ts:480 → 交付队列-sqlite.kernel.ts:409。 | | **src/infra** · `src/infra/delivery-queue-sqlite-namespace.kernel.ts` | 1/0/0/0/0 | 43 | src/infra/outbound/delivery-queue-enqueue.worker.ts:95;注册调度 src/infra/delivery-queue.worker.ts:445。 | | **src/infra** · `src/infra/delivery-queue-sqlite.kernel.ts` | 3/0/0/0/0 | 67 | 到期快照:src/infra/delivery-queue.worker.ts:487 → outbound/delivery-queue-media-staging.kernel.ts:74。失败计数:交货-queue.worker.ts:455。 | | **src/infra** · `src/infra/delivery-queue.worker.ts` | 0/0/1/0/0 | 295 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/device-auth-store.kernel.ts` | 3/1/0/0/0 | 85 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/device-pairing-cloud-worker.ts` | 1/2/0/0/0 | 18 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/device-pairing-dispatch.worker.ts` | 0/0/1/0/0 | 36 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/device-pairing-join-code.worker.ts` | 4/1/0/0/0 | 28 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/exec-approvals-sqlite.ts` | 1/0/0/0/0 | 185 | exec-approvals-mutation.worker.ts 通过共享状态写入器恢复不存在的策略行。 | | **src/infra** · `src/infra/gateway-boot-lifecycle.worker.ts` | 3/1/2/0/0 | 29 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/gateway-owner-lease.worker.ts` | 1/0/0/0/0 | 64 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/heartbeat-outcome-store.kernel.ts` | 2/0/0/0/0 | 17 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/heartbeat-outcome-store.worker.ts` | 1/0/0/0/0 | 34 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/message-tool-run-outcome-store.kernel.ts` | 2/0/0/0/0 | 18 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/promotions-feed.kernel.ts` | 1/0/0/0/0 | 53 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/promotions-feed.worker.ts` | 0/0/2/0/0 | 28 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/push-apns-store-transaction.ts` | 2/2/0/0/0 | 36 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/push-apns-store.ts` | 1/1/0/0/0 | 367 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/push-apns-store.worker.ts` | 2/0/2/0/0 | 64 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/push-web-store.database.worker.ts` | 12/5/6/0/0 | 78 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/restart-lifecycle.worker.ts` | 1/1/0/0/0 | 24 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/restart-sentinel-store.ts` | 1/0/0/0/0 | 447 | 仅 src/infra/restart-sentinel.worker.ts:79;工人登记号 src/state/openclaw-state-worker-registry.ts:110。 | | **src/infra** · `src/infra/session-cost-usage-cache.kernel.ts` | 5/0/0/0/0 | 228 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/session-cost-usage-partitions.worker.ts` | 5/0/0/0/0 | 37 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/session-cost-usage-refresh-inputs.worker.ts` | 0/0/0/0/3 | 100 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/session-cost-usage-worker.ts` | 0/0/0/0/3 | 177 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/sqlite-audit-record.kernel.ts` | 1/1/0/0/0 | 244 | src/config/config-journal-snapshot.worker.ts → 配置日志-snapshot.kernel.ts;问候语比较使用 src/infra/sqlite-audit-record.worker.ts. 中的 diagnostic.compareAndSet 不保留本机比较适配器。 | | **src/infra** · `src/infra/sqlite-page-cache.worker.ts` | 6/2/0/0/0 | 59 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/state-migrations.mcp-oauth.worker.ts` | 2/1/1/0/0 | 45 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/telemetry-store.kernel.ts` | 0/1/0/0/0 | 23 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/telemetry-store.worker.ts` | 0/0/1/0/0 | 26 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/update-candidate-exec-approvals.ts` | 1/0/0/0/0 | 29 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/update-candidate-plugins.ts` | 1/1/0/0/0 | 250 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/update-candidate-state.ts` | 3/0/0/0/0 | 659 | 快照唯一执行者 src/infra/update-candidate-state.worker.ts:63(孤立的候选子)。 | | **src/infra** · `src/infra/update-failure-report-receipt-store.ts` | 3/0/0/0/0 | 79 | 收据突变和权威修订重读仅通过 restart-sentinel.worker.ts 调用;报告提交和工件扫描正在等待物理共享状态所有者。 | | **src/infra** · `src/infra/update-run-interruption-store.ts` | 1/0/0/0/0 | 120 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/update-run-reconciliation.read.ts` | 1/0/0/0/0 | 47 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra** · `src/infra/update-run-reconciliation.worker.ts` | 0/1/0/0/0 | 55 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra/outbound** · `src/infra/outbound/current-conversation-bindings.worker.ts` | 0/0/1/0/0 | 34 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra/outbound** · `src/infra/outbound/delivery-queue-enqueue.worker.ts` | 0/0/1/0/0 | 42 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra/outbound** · `src/infra/outbound/delivery-queue-media-staging.kernel.ts` | 1/0/0/0/0 | 83 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra/outbound** · `src/infra/outbound/delivery-queue-pending-failure.worker.ts` | 0/0/1/0/0 | 27 | 工人实施;将 SQL 保留在此所有者中 | | **src/infra/outbound** · `src/infra/outbound/delivery-queue-storage.kernel.ts` | 1/0/0/0/0 | 99 | 工人实施;将 SQL 保留在此所有者中 | | **src/media** · `src/media/generated-html-provenance.worker.ts` | 3/1/1/0/0 | 24 | 工人实施;将 SQL 保留在此所有者中 | | **src/node-host** · `src/node-host/node-worker-launch-store.kernel.ts` | 12/3/1/0/0 | 146 | 工人实施;将 SQL 保留在此所有者中 | | **src/node-host** · `src/node-host/node-worker-lineage-completion.ts` | 2/0/0/0/0 | 58 | 分离锚点生成于 src/process/supervisor/service-child-relay.ts:167;仅 service-child-group-anchor.ts:229,273 调用完成。 W 表示隔离的主管子进程。 | | **src/node-host** · `src/node-host/node-worker-prepared-workspace-store.kernel.ts` | 5/2/1/0/0 | 35 | List/mutations 仅运行在node-worker-journal.worker.ts:14,19,26,31,36; selectRow/write 是仅突变的帮助者; node-worker-prepared-workspace-store.ts:31 处的本机 findSync 仅到达查找,仍为 T1 | | **src/node-host** · `src/node-host/node-worker-turn-settlement.worker.ts` | 1/0/0/0/0 | 21 | 工人实施;将 SQL 保留在此所有者中 | | **src/node-host** · `src/node-host/node-worker-turn-store.kernel.ts` | 1/3/1/0/0 | 51 | 工人实施;将 SQL 保留在此所有者中 | | **src/pairing** · `src/pairing/pairing-store.worker.ts` | 4/0/0/0/0 | 83 | 工人实施;将 SQL 保留在此所有者中 | | **src/plugin-state** · `src/plugin-state/plugin-blob-store.sqlite.ts` | 7/5/0/0/0 | 154 | 工人实施;将 SQL 保留在此所有者中 | | **src/plugin-state** · `src/plugin-state/plugin-blob-store.worker.ts` | 0/0/1/0/0 | 30 | 工人实施;将 SQL 保留在此所有者中 | | **src/plugin-state** · `src/plugin-state/plugin-state-store.kernel.ts` | 0/1/0/0/0 | 418 | 只有plugin-state-store.journal.ts:202调用分配,并且只有plugin-state.worker.ts:173调用该日志内核;主机外观插件状态-store.ts:555 调度 registerPluginStateJournalInWorker。 | | **src/plugin-state** · `src/plugin-state/plugin-state.worker.ts` | 0/0/3/0/0 | 213 | 工人实施;将 SQL 保留在此所有者中 | | **src/plugins** · `src/plugins/conversation-binding-state.kernel.ts` | 2/0/0/0/0 | 14 | 工人实施;将 SQL 保留在此所有者中 | | **src/plugins** · `src/plugins/installed-plugin-index-store-write.ts` | 0/1/2/0/0 | 149 | 在保留的生命周期租约下通过 plugins/state.worker.ts 实时安装记录提交、直接索引写入、刷新和精确修订回滚调度。来源准入出版物也使用该工作人员。同步刷新内核没有剩余的非工作线程生产调用者。 | | **src/plugins** · `src/plugins/official-external-plugin-catalog-snapshot-store.kernel.ts` | 1/1/0/0/0 | 156 | 工人实施;将 SQL 保留在此所有者中 | | **src/plugins** · `src/plugins/state.worker.ts` | 0/0/4/0/0 | 100 | 工人实施;将 SQL 保留在此所有者中 | | **src/projects** · `src/projects/project-registry.kernel.ts` | 6/7/0/0/0 | 45 | 工人实施;将 SQL 保留在此所有者中 | | **src/projects** · `src/projects/project-registry.worker.ts` | 0/0/1/0/0 | 31 | 工人实施;将 SQL 保留在此所有者中 | | **src/proxy-capture** · `src/proxy-capture/store.worker.ts` | 0/0/1/0/0 | 17 | 工人实施;将 SQL 保留在此所有者中 | | **src/secrets** · `src/secrets/store/secret-store-config-ref.kernel.ts` | 1/1/1/0/0 | 47 | 工人实施;将 SQL 保留在此所有者中 | | **src/secrets** · `src/secrets/store/secret-store-expiry.kernel.ts` | 3/1/1/0/0 | 52 | 工人实施;将 SQL 保留在此所有者中 | | **src/secrets** · `src/secrets/store/secret-store-github-handoff.worker.ts` | 0/1/0/0/0 | 52 | 工人实施;将 SQL 保留在此所有者中 | | **src/secrets** · `src/secrets/store/secret-store-hidden-github.kernel.ts` | 1/0/0/0/0 | 192 | 只有 Secret-store-github-handoff.worker.ts 中的 githubSecrets.list 选择隐藏记录列表;本机 SDK 兼容性仅使用精确的 read/delete 操作。 | | **src/secrets** · `src/secrets/store/secret-store-metadata.kernel.ts` | 1/1/0/0/0 | 65 | 工人实施;将 SQL 保留在此所有者中 | | **src/secrets** · `src/secrets/store/secret-store-write.ts` | 4/1/4/0/0 | 76 | 只有 openclaw-state-worker-runtime.ts 调用这些普通的秘密突变内核 | | **src/session-cards** · `src/session-cards/progress-card-store.ts` | 0/2/0/0/0 | 19 | session-transcript.worker.ts拥有卡读取; Progress-card-store.worker.ts 拥有写入及其回退读取。网关引用是类型用途;其他 writeSessionProgressCard 调用者是固定装置。 clearProgressCardInTransaction 保持混合状态,因为本机生命周期重置调用其单独的清除器。 | | **src/sessions** · `src/sessions/session-state-events.kernel.ts` | 11/4/0/0/0 | 97 | 会话状态-events.worker.ts 和会话上游-links.worker.ts; Watch命令和事件记录仅在session-state-events.worker.ts和subagent-registry.store.worker.ts中执行;种子游标运行通过sessionState.record/registerWatch;定期并重新启动修剪调度 sessionState.prune;所有生产者等待sessionState.record;唯一的直接生产内核调用者是 session-state-events.worker.ts 和 subagent-registry.store.worker.ts | | **src/sessions** · `src/sessions/session-state-events.read.worker.ts` | 4/3/0/0/0 | 19 | 工人实施;将 SQL 保留在此所有者中 | | **src/sessions** · `src/sessions/session-state-events.worker.ts` | 6/0/6/0/0 | 41 | 工人实施;将 SQL 保留在此所有者中 | | **src/sessions** · `src/sessions/session-upstream-links.kernel.ts` | 1/0/0/0/0 | 92 | 仅 sessionUpstream.listWatched 调度此读取;突变内核保留 v2026.9.8 同步 SDK 调用者,直到稳定弃用后删除。 | | **src/sessions** · `src/sessions/session-upstream-links.worker.ts` | 2/0/2/0/0 | 25 | 工人实施;将 SQL 保留在此所有者中 | | **src/skills/library** · `src/skills/library/import.kernel.ts` | 4/0/0/0/0 | 41 | 工人实施;将 SQL 保留在此所有者中 | | **src/skills/library** · `src/skills/library/selection-read.kernel.ts` | 1/0/0/0/0 | 56 | 仅由 openclaw-state-read.worker.ts:477 调用的清单批次;元数据批次保持主机可访问 | | **src/skills/library** · `src/skills/library/service.kernel.ts` | 6/0/0/0/0 | 114 | 工人实施;将 SQL 保留在此所有者中 | | **src/skills/library** · `src/skills/library/store.ts` | 3/3/1/0/0 | 88 | 库参与者、所有者、行、修订、上传和突变内核仅通过共享状态 reader/writer(read.kernel.ts、service.kernel.ts、import.kernel.ts 和 store.worker.ts)运行; readOwners 对于工作列表投影来说是私有的。 SDK 元数据批次仍在选择中 - read.kernel.ts. | | **src/skills/library** · `src/skills/library/store.worker.ts` | 0/0/3/0/0 | 31 | 工人实施;将 SQL 保留在此所有者中 | | **src/skills/lifecycle** · `src/skills/lifecycle/upload-store-commit.ts` | 2/0/1/0/0 | 96 | 工人实施;将 SQL 保留在此所有者中 | | **src/skills/lifecycle** · `src/skills/lifecycle/upload-store.kernel.ts` | 7/3/5/0/0 | 48 | 工人实施;将 SQL 保留在此所有者中 | | **src/skills/lifecycle** · `src/skills/lifecycle/upload-store.sqlite.ts` | 4/5/3/0/0 | 63 | 工人实施;将 SQL 保留在此所有者中 | | **src/skills/workshop** · `src/skills/workshop/changes.kernel.ts` | 3/0/0/0/0 | 62 | 工人实施;将 SQL 保留在此所有者中 | | **src/skills/workshop** · `src/skills/workshop/changes.worker.ts` | 0/0/2/0/0 | 19 | 工人实施;将 SQL 保留在此所有者中 | | **src/skills/workshop** · `src/skills/workshop/skill-usage.kernel.ts` | 2/0/0/0/0 | 26 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/agent-deletion-cleanup.worker.ts` | 0/0/1/0/0 | 103 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/agent-deletion-journal-authority.worker.ts` | 1/2/0/0/0 | 21 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/agent-deletion-journal-recovery.ts` | 1/0/0/0/0 | 130 | 仅agent-deletion-recovery.worker.ts 和worker-only 日志完成解析有效;重建和医生持有生产者仍然是独立的本地维护业务 | | **src/state** · `src/state/agent-deletion-journal.read.ts` | 0/1/0/0/0 | 81 | src/state/openclaw-state-read-registry.ts:65下读取工人:679;其他执行人src/state/openclaw-agent-execution.worker.ts:190。 | | **src/state** · `src/state/agent-deletion-journal.snapshot.worker.ts` | 1/0/0/0/0 | 25 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/agent-deletion-journal.ts` | 6/2/0/0/0 | 338 | agent-deletion.worker.ts 拥有所有生产期刊突变;同步夹具适配器位于 test-utils 下。本机 SDK 清理仅保留代理 COMMIT 周围的实时 journal/lease 读取 | | **src/state** · `src/state/agent-deletion.worker.ts` | 4/0/0/0/0 | 311 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/agent-lifecycle-read.worker.ts` | 0/1/0/0/0 | 51 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/agent-provenance.kernel.ts` | 2/0/0/0/0 | 26 | agentProvenance.list/readBatch/record通过openclaw-state-worker-runtime.ts执行;本机同步生命周期防护使用 agent-lifecycle-read.kernel.ts 中的联合投影 | | **src/state** · `src/state/agent-provenance.ts` | 1/0/0/0/0 | 90 | 仅从代理 deletion.worker.ts 到达的completeAgentDeletionJournalInDatabase 会删除出处;生命周期化身阅读器保留同步实时权限检查 | | **src/state** · `src/state/backup-run-records.kernel.ts` | 3/0/0/0/0 | 27 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/config-machine-state-write.ts` | 1/0/1/0/0 | 169 | src/state/onboarding-recommendations.ts:77 提交明确→工人注册表:171→入门引导-recommendations.kernel.ts:178。 | | **src/state** · `src/state/github-personal-publication-lifecycle.ts` | 3/2/1/0/0 | 115 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/github-publication-session-lifecycles.worker.ts` | 1/1/0/0/0 | 38 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/github-publication-source.kernel.ts` | 0/2/0/0/0 | 70 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/github-publication-source.worker.ts` | 0/0/1/0/0 | 123 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/github-publication.worker.ts` | 0/0/1/0/0 | 78 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/openclaw-agent-canonical-validation-receipt.ts` | 1/0/0/0/0 | 88 | src/config/sessions/session-accessor.sqlite-mutation-worker.runtime.ts:392;仅由 archive.worker.ts:523,594 加载。 | | **src/state** · `src/state/openclaw-agent-db-registry.ts` | 1/0/1/0/0 | 164 | 运行时删除由 openclaw-agent-db-registry.worker.ts 调度;唯一的本机生产调用方处于离线状态医生迁移状态 - migrations.media-persistence.ts. 没有网关本机调用方保留。 | | **src/state** · `src/state/openclaw-agent-db-registry.worker.ts` | 0/0/1/0/0 | 18 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/openclaw-agent-execution-cleanup.worker.ts` | 0/0/1/0/0 | 16 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/openclaw-agent-execution.worker.ts` | 0/0/1/1/0 | 407 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/openclaw-state-lease-renewal.worker.ts` | 1/0/0/0/0 | 91 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/openclaw-state-worker-runtime.ts` | 0/0/3/0/0 | 192 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/openclaw-state.worker.ts` | 0/0/3/0/0 | 215 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/session-repository-workspaces.kernel.ts` | 0/5/0/0/0 | 58 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/session-repository-workspaces.worker.ts` | 0/0/1/0/0 | 76 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/user-background.store.ts` | 3/2/0/0/0 | 22 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/user-channel-identities.ts` | 2/0/2/0/0 | 277 | 仅user-channel-identities.worker.ts执行通道link/unlink突变;网关调用者等待注册的工作人员操作。 | | **src/state** · `src/state/user-channel-identities.worker.ts` | 0/0/1/0/0 | 82 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/user-github-connections.worker.ts` | 1/0/0/0/0 | 42 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/user-model-accounts.ts` | 2/0/2/0/0 | 391 | 只有 agents/auth-profiles/store.worker.ts 调用此 writer,在 authProfiles.personalReplace 和 authProfiles.personalUsage. 这些注册的工作处理程序分别更新凭据和使用情况;没有网关主线程接收器剩余。个人登录持久性仅通过 user-profiles.worker.ts. 中的 userProfiles.modelAccount.connect 执行 Inventory/link/unlink 内核为已弃用的 v2026.9.8 网关 SDK 方法保留 T1;捆绑调用者使用异步替换。共享credential/OAuth内核和真实账户密码保护也保留T1。仅 src/state/user-profiles-merge.ts:57,由 user-profile-writes.worker.ts:375,425,482 执行。 | | **src/state** · `src/state/user-preferences.store.ts` | 9/0/0/0/0 | 47 | 优先选择read/write在用户preferences.worker.ts:52,74处调度; merge/GitHub 帮助程序仅在用户配置文件-writes.worker.ts:375,425,482 和 openclaw-state-read.worker.ts:616 中;私钥扫描为这些工人作家服务 | | **src/state** · `src/state/user-preferences.worker.ts` | 0/0/1/0/0 | 42 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/user-profile-github-identity.ts` | 5/2/0/0/0 | 145 | 读取调度程序src/state/openclaw-state-read.worker.ts:577;突变用户配置文件-writes.worker.ts:474,482 和合并:375,425。角色权限仅通过用户-profiles.worker.ts:152运行。确保邮箱路径user-profiles.worker.ts:61;私有 writeIdentity 仅来自 applyVerifiedGitHubIdentity;仅从 readGitHubIdentityBinding 和 read-worker 缓存绑定命令 (openclaw-state-read.worker.ts:520) 中选择私有 selectGitHubProfileAlias。 | | **src/state** · `src/state/user-profile-identity.read.ts` | 4/0/0/0/0 | 59 | 注册的配置文件编写器和 openclaw-state-read.worker.ts 执行这些读取器; projects.list 通过用户配置文件准备准确的别名 - reads.ts. 发布的 SDK identity/display 后备保留本机读取。经过机械验证的内核:每个价值参考都保留在经过审查的工人或维护条目内;没有运行时、SDK 或未经证实的回调转义。 | | **src/state** · `src/state/user-profile-writes.worker.ts` | 8/2/0/0/0 | 92 | 工人实施;将 SQL 保留在此所有者中 | | **src/state** · `src/state/user-profiles-internal.ts` | 2/2/0/0/0 | 58 | Creation/link/merge/sync 呼叫流经 src/state/user-profiles.worker.ts:61,69,71 和 user-profile-writes.worker.ts:375,400,409,425,480; identity/avatar 仅从 openclaw-state-read.worker.ts:577,604,631 读取调度。 | | **src/state** · `src/state/user-profiles-merge.ts` | 6/0/0/0/0 | 35 | 只有 src/state/user-profile-writes.worker.ts:375,425,482 执行 mergeUserProfiles。 | | **src/state** · `src/state/user-profiles-owner.ts` | 3/0/0/0/0 | 75 | src/state/user-profiles.ts:320调用ensureGatewayOwnerProfileRow;唯一执行人用户-profiles.worker.ts:78。 | | **src/state** · `src/state/user-profiles.ts` | 3/1/0/0/0 | 128 | 唯一执行者 src/state/user-profiles.worker.ts:69 → EnsureProfileForTailscaleIdentity → 用户 profiles.ts:339,345。 | | **src/state** · `src/state/user-profiles.worker.ts` | 2/0/2/0/0 | 181 | 工人实施;将 SQL 保留在此所有者中 | | **src/talk** · `src/talk/client-voice-session-lookup.worker.ts` | 0/0/0/0/1 | 69 | 工人实施;将 SQL 保留在此所有者中 | | **src/trajectory** · `src/trajectory/runtime-retention.sqlite.ts` | 2/1/0/0/0 | 97 | 工人实施;将 SQL 保留在此所有者中 | | **src/trajectory** · `src/trajectory/runtime-store.sqlite.ts` | 2/0/0/0/0 | 113 | 持久接收器通过 openclaw-agent-execution-operations.ts. 调度 trajectory.events.append 隐身接收器通过会话参与者内存后端追加,无需 SQLite。同步夹具附加和保留仅存在于运行时-store.test-support.ts. | | **src/transcripts** · `src/transcripts/store-export.worker.ts` | 0/1/0/0/0 | 34 | 工人实施;将 SQL 保留在此所有者中 | | **src/transcripts** · `src/transcripts/store-read.ts` | 0/4/0/0/0 | 328 | 通过store-worker-read.ts进行普通读取调度;流式库通过 store-export.worker.ts. 导出调度 TranscriptsStore 不再调用本机生成器;剩余的主机引用是类型和纯助手。 | | **src/transcripts** · `src/transcripts/store-sqlite-read.ts` | 5/4/0/0/0 | 32 | 工人实施;将 SQL 保留在此所有者中 | | **src/transcripts** · `src/transcripts/store-sqlite-write.ts` | 3/4/0/0/0 | 59 | 工人实施;将 SQL 保留在此所有者中 | | **src/transcripts** · `src/transcripts/store-sqlite.ts` | 3/5/0/0/0 | 74 | 工人实施;将 SQL 保留在此所有者中 | | **src/transcripts** · `src/transcripts/store-worker-write.ts` | 0/0/1/0/0 | 39 | 工人实施;将 SQL 保留在此所有者中 |