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 列不补零。