# 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 适配和国内切换。
```
