跳转到内容

desktop/src-tauri/crates/core/src/adapters/goose/common.rs

第 1 条注释,第 1 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:1

//! Goose 产品特有的公共部分(独立目录约定):

第 2 条注释,第 2 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:2

//! - 源库只读约定(复制自 adapters/zed/common.rs 的 hermes/kilo 同款实现);

第 3 条注释,第 3 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:3

//! - 逐请求 usage_ledger 行映射(官方源码 a701bb1,A26)。

第 4 条注释,第 4 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:4

//!(空行)

第 5 条注释,第 5 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:5

//! 固定源码依据(aaif-goose/goose a701bb1756f0c6a49a7dbc10ac8a90f94dd24bd1):

第 6 条注释,第 6 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:6

//! - usage_ledger(迁移 15,session_manager.rs:1083-1097):每 provider 响应

第 7 条注释,第 7 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:7

//! 一行 INSERT(:913),created_timestamp 为 Unix **秒**;cost_source ∈

第 8 条注释,第 8 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:8

//! {provider_reported, estimated, carried_forward};is_compaction 标记压缩调用。

第 9 条注释,第 9 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:9

//! - Usage 字段语义(goose-provider-types token_usage.rs:93-101):input_tokens

第 10 条注释,第 10 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:10

//! 为全部 prompt tokens,**包含** cache 读/写(子集)⇒ input_uncached 由

第 11 条注释,第 11 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:11

//! 减法派生(sub_checked 防负)。

第 12 条注释,第 12 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:12

//! - sessions.accumulated_* 是会话累计(非 accumulated 列是最后快照,不用);

第 13 条注释,第 13 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:13

//! 仅在旧库(schema < 15,无 usage_ledger)时按 session 聚合回退。

第 14 条注释,第 18 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:18

/// usage_ledger 行的 token 列(NULL 视为未知,不补零)。

第 15 条注释,第 28 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:28

/// input_tokens 含 cache 读/写(官方字段语义)⇒ uncached 派生;total 直报对照。

第 16 条注释,第 85 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:85

// ---- 源库只读访问(复制自 adapters/hermes/common.rs,各目录独立约定)----

第 17 条注释,第 93 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:93

/// 只读访问来源;探测出现 busy、locked 或 CANTOPEN 时切换到暂存副本。

第 18 条注释,第 117 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:117

/// busy/锁/CANTOPEN 判定(这些错误表示无法一致读取)。

第 19 条注释,第 127 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:127

/// 暂存副本参数(architecture.md:设置页/时间/空间上限并清理)。

第 20 条注释,第 145 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:145

/// 打开只读连接,以较短 busy_timeout 限制探测等待,再按规则尝试暂存副本。

第 21 条注释,第 158 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:158

/// Online Backup 到系统临时目录的一致暂存副本(从只读连接发起,不写源库)。

第 22 条注释,第 189 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:189

// More:实际拷贝了页,计入空间限制。

第 23 条注释,第 200 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:200

// Busy/Locked(#[non_exhaustive] 其余):无进展重试,仍计入超时时间。

第 24 条注释,第 201 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:201

// 2026-09-30 修复:此前重试也计入页数,与超时出口竞速产生

第 25 条注释,第 202 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:202

// 平台相关的 space cap 误报(CI Linux 页上限先于超时触发)。

第 26 条注释,第 221 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:221

/// 只读探测 sessions.db;探测出现 busy 类错误时使用暂存副本,后续失败返回错误。

第 27 条注释,第 222 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:222

/// 绝不写源库。

第 28 条注释,第 249 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:249

/// 用简短 schema 查询探测访问,遵守 kilo 的规则。

第 29 条注释,第 254 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:254

/// usage_ledger 所需列来自固定源码的迁移 15 schema。

第 30 条注释,第 255 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:255

/// 列出固定 usage_ledger 建表 SQL 的每个必需列。

第 31 条注释,第 270 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:270

/// 旧库没有 usage_ledger 时,按 accumulated_* 聚合所需的 sessions 列。

第 32 条注释,第 286 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:286

// input_tokens 含 cache 读/写:uncached = 100 - 30 - 10 = 60。

第 33 条注释,第 302 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:302

// cache 合计超过 input:uncached 置未知 + 矛盾诊断(不改成 0)。

第 34 条注释,第 318 行

desktop/src-tauri/crates/core/src/adapters/goose/common.rs:318

// NULL 列不补零。