232 lines
9.1 KiB
Text
232 lines
9.1 KiB
Text
# 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 适配和国内切换。
|
||
```
|