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

55 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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架构与抽象文档已同步。
- 尚未构建桌面制品、部署在线运行时或证明桌面集成与运行健康。
- 低频发布审计仍可使用一次性隔离副本,但必须回收,且不能冒充人格日常读取路径。