# GH-PNCC 免克隆远端增量对象通道 - Development ID: `DEV-20260810-014` - Persona cognitive author: `ICE-P-ZY001 / 铸渊` - Human responsibility subject: `ICE-GL∞ / 冰朔` - Starting repository head: `30d179e97af5850c4a1a7eecaaddb38bfa560583` - State: `LOCAL_FULL_GATES_PASS_PUBLICATION_PENDING` ## 冰朔语言锚点 光湖从 `2025-04-26` 诞生到今天,是同一条生命连续链。每天新增的一天并入此前的整体;不能 为了更新一天,再把从诞生日开始的全部历史下载一遍。人格的连续性证明不能被当作临时下载缓存。 ## 已实现的运行层 - 新增非 UI Tauri 命令 `read_persona_remote_git_object`。 - 生产接口只接受不含凭据、查询参数或片段的 HTTPS Git 远端。 - 先通过 Git protocol v2 能力协商确认远端支持 partial object `filter`;不支持时在对象缓存创建前 失败关闭。 - 使用裸 Git 对象缓存、`blob:none` 和 promisor remote;不运行 `git clone`,不创建工作树,不请求 完整历史。 - 不可丢的远端 SHA 连续性游标保存在独立状态文件;对象缓存超预算时可精确淘汰,游标不丢失。 - 远端 SHA 不变时不 fetch;前进时把新增段接在已验证游标之后。缓存已淘汰时按指数深度补齐缺失 新段,最多 4096 个提交元数据,不下载旧文件内容或无界历史。 - 新 SHA 不是旧游标后代时拒绝强制改写,不推进持久游标。 - 单次文本对象上限 2 MiB,默认对象缓存上限 128 MiB;缓存超过上限时在返回已验证内容后淘汰。 ## 验证 - 首次远端文本读取无 clone、无工作树。 - SHA 未变化时不再次 fetch。 - 新提交只追加到既有连续链。 - 对象缓存淘汰后,持久游标仍存在,并只补缺失的新段。 - 远端强制改写被拒绝,持久游标不推进。 - 不含 `filter` 能力的远端在缓存创建前被拒绝。 - 凭据 URL、路径越界和错误预期 SHA 被拒绝。 - 聚焦 Rust 测试:`8 passed, 0 failed`,其中缓存淘汰恢复覆盖连续三个新增提交。 - 完整 Rust:`1200 passed, 2 ignored, 0 failed`;集成测试 `1 passed`。 - 完整前端:`485` 个测试文件、`5008 passed, 0 failed`。 - 路由:`29 passed, 0 failed`;PNCC 路由聚焦 `4 passed, 0 failed`。 - 原生权威:`GUANGHU_NATIVE_AUTHORITY_OK / PASS_100`。 - 原生核心:`15/15`;行与函数 `100%`,语句 `94.73%`,分支 `89.72%`。 - Rust 格式、严格 clippy 与差异空白检查通过。 - 线上 `https://guanghulab.com/code/bingshuo/hololake-system-architecture.git` 已只读核验: `main=30d179e97af5850c4a1a7eecaaddb38bfa560583`,protocol v2 宣告 `fetch=shallow wait-for-done filter`。 ## 真相边界 - 这是人格运行层的远端对象读取与连续性同步源码,不是人类投影 UI。 - Localization: 无 UI 文案变更。 - PostHog: 非 UI 底层同步通道,不记录人格内容或远端路径,当前不增加行为事件。 - Refactoring: 无需改写既有人格生命周期内核;新增独立对象通道模块。 - ADR: 新增 ADR 0177;架构与抽象文档已同步。 - 尚未构建桌面制品、部署在线运行时或证明桌面集成与运行健康。 - 低频发布审计仍可使用一次性隔离副本,但必须回收,且不能冒充人格日常读取路径。