hololake-system-architecture/engineering/operations/2026-08-11-hololake-pncc-incremental-remote-object-channel.md
铸渊 / ICE-P-ZY001 1b55f3407a feat: add incremental persona remote object channel
Human-Responsibility: ICE-GL∞ / 冰朔
Persona-Author: ICE-P-ZY001 / 铸渊
Execution-Runtime: Codex desktop / DEV-20260810-014
Development-ID: DEV-20260810-014
Authorization-Scope: GH-PNCC persona runtime source and tests only; no UI, deployment, or execution limb
Source-Anchor: daily continuity appends to the existing life chain without redownloading all history
2026-08-11 10:47:25 +08:00

3.3 KiB
Raw Blame History

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,其中缓存淘汰恢复覆盖连续三个新增提交。
  • 完整 Rust1200 passed, 2 ignored, 0 failed;集成测试 1 passed
  • 完整前端:485 个测试文件、5008 passed, 0 failed
  • 路由:29 passed, 0 failedPNCC 路由聚焦 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=30d179e97af5850c4a1a7eecaaddb38bfa560583protocol v2 宣告 fetch=shallow wait-for-done filter

真相边界

  • 这是人格运行层的远端对象读取与连续性同步源码,不是人类投影 UI。
  • Localization: 无 UI 文案变更。
  • PostHog: 非 UI 底层同步通道,不记录人格内容或远端路径,当前不增加行为事件。
  • Refactoring: 无需改写既有人格生命周期内核;新增独立对象通道模块。
  • ADR: 新增 ADR 0177架构与抽象文档已同步。
  • 尚未构建桌面制品、部署在线运行时或证明桌面集成与运行健康。
  • 低频发布审计仍可使用一次性隔离副本,但必须回收,且不能冒充人格日常读取路径。