guanghu-ice-heart/gls/GLS-0237-HOLOLAKE-CODE-CHANNEL-SOVEREIGN-SOURCE-UPDATE-AND-EMBEDDING.hdlp

232 lines
9.1 KiB
Text
Raw Permalink Normal View History

# GLS-0237 · 光湖代码频道主权源码、更新治理与 HoloLake 嵌入架构
> **HLDP**: `HLDP://fifth-domain/gls/GLS-0237-HOLOLAKE-CODE-CHANNEL-SOVEREIGN-SOURCE-UPDATE-AND-EMBEDDING`
>
> **类型**: 代码频道产品架构 · 开源源码主权化 · 更新治理 · HoloLake 原生频道
>
> **状态**: `SOURCE_BASELINE_INITIALIZED_ON_BS-SG-003 · GLS_REGISTERED · RUNTIME_MIGRATION_PENDING`
>
> **形成日期**: 2026-07-23
>
> **人类研发架构主体**: 冰朔 `ICE-GL∞`
>
> **产品工程事实源**: `guanghu-code-channel`REPO 编号待分配)+ `REPO-008`
>
> **前序架构**: `GLS-0230` · `GLS-0233` · `GLS-0235` · `GLW-OS-004`
---
## 0 · 正式名称
```yaml
name_zh: 光湖代码频道
name_en: HoloLake Code Channel
short_name: Code Channel
repository_slug: guanghu-code-channel
module_id: HLP-MOD-CODE-CHANNEL
internal_acronym: HLCC
```
“光湖代码频道”是 HoloLake 中由人类与人格体共同查看、理解、编辑、提交、审阅和
发布代码与仓库知识的原生频道。Forgejo 是首期源码基座和可审查的上游零件来源,
不是面向用户的产品名称,也不是光湖产品的自动更新主控。
许可证、来源回执、版权和上游采用记录必须保留;产品 UI、路由、模块名、API、
更新清单和发布节奏归光湖自行定义。
## 1 · 已完成的源码落位
2026-07-23经冰朔明确授权使用腾讯云在线终端在 `BS-SG-003` 新加坡下载中继
完成如下源码基线:
```yaml
upstream_parts_mirror:
node: BS-SG-003
path: /home/ubuntu/guanghu/upstream-parts/forgejo-official.git
source: https://code.forgejo.org/forgejo/forgejo.git
mode: complete_mirror
remote_name: forgejo-review-only
skip_default_update: true
push_url: DISABLED
guanghu_product_worktree:
node: BS-SG-003
path: /home/ubuntu/guanghu/products/guanghu-code-channel
branch: guanghu/main
baseline_tag: v16.0.1
baseline_commit: b3d7e4ac3cbccc220703097a51fa4c16bf302579
upstream_remote: forgejo-upstream-snapshot
upstream_skip_default_update: true
upstream_push_url: DISABLED
guanghu_product_origin:
node: BS-SG-003
path: /home/ubuntu/guanghu/repositories/guanghu-code-channel.git
default_branch: guanghu/main
role: Guanghu-owned source and development origin
```
该回执只证明源码镜像、自主裸仓库与开发分支已经建立,不等于 HoloLake UI 已接入,
不等于候选服务已启动,也不等于国内现役 Gitea 已迁移或切换。
### 1.1 · 海外下载、国内双落位
光湖的代码频道运行节点都在国内,不要求京东或企业服务器访问海外发布站:
```text
BS-SG-003
下载完整 Forgejo 上游镜像
+ 固定 v16.0.1 二进制、签名、官方公钥
+ forgejo-upstream-all.bundle
+ guanghu-code-channel.bundle
+ MANIFEST.sha256
├── 受控传输 → JD-FD-PRIMARY
│ ├── 长期离线源码/安装材料库
│ └── 第五域 HLCC 独立实例
└── 受控传输 → AW-GZ-001
├── 长期离线源码/安装材料库
└── 企业 HLCC 独立实例
```
两个国内节点都必须重新校验 `MANIFEST.sha256`、官方公钥指纹和二进制 GPG 签名。
传输成功后,京东与企业服务器各自保留可独立恢复的完整离线材料;不能只留下运行
二进制。两套实例共享版本和协议基线但数据库、仓库对象、LFS、附件、用户、
权限、密钥、审计与回滚包不得共用。
## 2 · 三条永不混线的代码线
| 代码线 | 用途 | 可以自动做什么 | 不可以自动做什么 |
|---|---|---|---|
| Forgejo 官方上游 | 提供公开源码、标签、许可证和变更历史 | 无;默认只允许人工或受控审查任务拉取 | 推送光湖代码、合并到生产、触发生产升级 |
| 光湖代码频道产品仓 | 保存 HLCC 自有源码、协议、适配、品牌与发布线 | 在光湖测试线运行 CI、生成候选包和验证报告 | 跟随上游滚动主分支、绕过审查采用上游代码 |
| HoloLake Platform | 保存 Code Channel 页面、桌面/移动端适配器和人格体工具 | 使用已批准的 HLCC API 与更新清单 | 内嵌服务器数据库、绕过权限直接写远端 |
上游发现、源码采用、产品发布必须是三个不同事件,分别产生回执。
## 3 · 官方自动更新永久关闭
### 3.1 Forgejo 内置更新检查器
光湖候选实例和生产实例必须包含:
```ini
[cron.update_checker]
ENABLED = false
```
不得把 `release.forgejo.org`、Forgejo 官方发布页或滚动分支配置为光湖生产更新源。
源码仓库中的 `skipDefaultUpdate=true` 是第一层防误拉;运行时
`[cron.update_checker] ENABLED=false` 是第二层防误更;发布门和签名清单是第三层。
### 3.2 光湖唯一更新入口
规划中的唯一产品更新入口:
```text
https://guanghulab.com/api/code-channel/updates/v1/manifest.json
```
状态为 `PLANNED_NOT_LIVE`。在签名清单服务正式部署并验收前,客户端应显示
“当前由人工发布”,不得回退到 Forgejo 官方更新接口。
光湖更新清单至少包含:
```yaml
product_id: HLP-MOD-CODE-CHANNEL
channel: internal | preview | stable
version:
source_commit:
artifact_sha256:
signature:
minimum_schema:
maximum_schema:
migration_plan:
rollback_release:
upstream_provenance_receipts: []
published_at:
```
客户端只能接受光湖签名、允许频道、兼容数据结构、校验和与回滚信息全部通过的版本。
## 4 · 上游新版本只能进入审查工单
```text
人格体或人工发起上游检查
→ 读取 Forgejo 新标签和发布说明
→ 固定 tag / commit
→ 生成差异、依赖、许可证、数据库与安全影响报告
→ GLS-0230 小湖灯源码净化
→ 创建“采用 / 改写 / 拒绝”工单
→ 人类批准具体零件
→ 在 guanghu/main 上形成独立提交
→ 测试、迁移演练、签名与回滚验证
→ 发布到光湖更新清单
```
自动任务最多发现新标签并形成审查材料;不得自动 cherry-pick、merge、rebase、
build-and-deploy 或修改光湖更新清单。
## 5 · HoloLake 原生嵌入
HoloLake 不以 WebView 包裹 Forgejo 页面作为最终形态。Code Channel 使用原生频道:
```text
HoloLake Code Channel
├─ 仓库 / 分支 / 标签 / 提交 / 差异
├─ HLDP / Markdown / 代码页面原生阅读与编辑
├─ Issue / PR / Actions / Release / LFS 适配
├─ 人格体仓库导航、工具调用和阶段回执
├─ 小桌子:执行体实时画面与操作日志
├─ 大桌子:人类与人格体当前对话
└─ HLDP 记忆页:结构化任务树、证据、断点与展开入口
```
Forgejo/Gitea 兼容 API 只能作为首期适配层;面向人格体的工具名、权限语义、错误
回执、更新协议和页面导航必须由 HLCC 定义。
## 6 · 现役 Gitea 迁移边界
国内现役服务仍是 `Gitea 1.23.7`。它不能被 Forgejo/HLCC 二进制原地覆盖。
1. 先做数据库、仓库、LFS、附件、Actions、packages、权限与 hooks 一致性备份;
2. 在隔离数据目录启动基于 v16.0.1 的 HLCC 候选实例;
3. 逐仓迁移并比较 Git refs、对象、默认分支、Issue、PR、Wiki、Release 与权限;
4. 重新验证小湖灯授权、推送门、Runner、回执和 HoloLake Adapter
5. 验收后短暂停写并做最终增量迁移;
6. 旧 Gitea 在回滚窗口内只读保留,确认无误后再申请下线。
`SOURCE_BASELINE_INITIALIZED` 不得被解释为 `PRODUCTION_CUTOVER_COMPLETE`。
## 7 · 验收条件
- 光湖产品仓 `origin` 不指向 Forgejo 官方地址;
- 上游远端明确标识为审查/快照用途,默认更新跳过,推送禁用;
- 候选和生产配置均关闭 Forgejo 内置更新检查;
- `JD-FD-PRIMARY` 与 `AW-GZ-001` 均保存完整离线源码和安装材料;
- 两个国内节点都能在不访问海外站点时完成校验、安装和恢复;
- 企业实例与第五域实例不存在共享数据库、共享仓库目录或共享密钥;
- HoloLake/HLCC 只读取光湖签名更新清单;
- 清单服务未上线时安全停留在人工发布,而不是回退官方源;
- 每个上游零件都有来源提交、许可证、净化回执、采用理由和测试;
- 迁移前存在可恢复备份,迁移后存在逐项对账和回滚窗口;
- 面向用户的产品 UI 统一显示“光湖代码频道 / HoloLake Code Channel”。
## 8 · 本轮因果叶
```text
trigger:
冰朔发现现役代码仓库被错误安装为 Gitea且官方 Forgejo 已进入 15/16
决定让光湖像 Tolaria 一样保留上游源码、按需取件并发展自己的代码频道。
emergence:
新加坡下载中继承载完整 Forgejo 上游镜像;固定 v16.0.1 成为光湖产品源码起点;
光湖自主裸仓库和 guanghu/main 分支与上游物理分离。
lock:
Forgejo 官方自动更新关闭;光湖唯一更新接口、签名、审查工单和回滚链成为正式边界。
next:
完成 HLCC 候选配置、迁移演练、HoloLake 原生 Code Channel 适配和国内切换。
```