Files
2026-08-11 15:40:11 +08:00

134 lines
10 KiB
Markdown
Raw Permalink 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.
---
type: tasks
owner: Verlit
last_updated_at: 2026-08-11
last_updated_by: Codex
hash: sha256:1d348609d6a7a464a69599c921493fd3e44a14f7122c30a01fd7bfdfd5e9bff4
belongs_to:
- 3-业务线/Gitea知识库/_context
depends_knowledge: []
---
# Gitea知识库任务清单
## 当前阶段说明
- 当前阶段:`C0` 设计已完成;Verlit 已明确授权进入范围受限的 `G0` 基础实施。
- 已完成:目标主机上的 Gitea 1.26.4 基础安装、systemd 托管、`127.0.0.1:3000` 本地监听和 HTTP 验证。
- 当前待配置:正式域名/HTTPS、反向代理、备份、细分账号权限和试点仓库。
- 当前禁止:改动共享主机上的其他业务代码、宝塔/Nginx、防火墙、Redis、PHP 或复用其他业务数据库;平台代码开发也仍未授权。
- 后续数据库、公开访问、试点与代码开发均需要按各自范围继续推进,不能从本次基础安装自动推导。
## P0:业务线与 v1 基线归位(已完成)
- [x] 创建 Gitea 知识库独立业务线。
- [x] 索引公司共享 Context 项目仓库发布方案及配套方案包。
- [x]`公司共享 Context 项目仓库发布方案 v1` 从收集箱归位到本业务线,并保留原路径与正文 hash。
- [x] 确认主方案是当前设计基线,不重新打开已经冻结的仓库、权限、发布、`current` 和状态模型。
- [x] 纠正“同步器”“批量迁移”“重新确定模型”等偏移表述。
- [x] 明确当前不执行安装、部署、远端创建、权限调整或内容发布。
## P1:C0 工程设计构建(当前,已完成)
- [x] 建立主方案、审核开关治理基线、最终一致性校验、执行方案包和历史审查材料的一级版本关系。
- [x] 清点方案包内逐份文档,标记采用、补充、历史或废弃状态,不重新打开主方案冻结决策。
- [x] 建立设计追溯矩阵,将 v1 冻结原则映射到详细设计、EXE 执行单和验收证据。
- [x] 按 EXE-01~EXE-12 编制逐步骤实施方案,明确依赖、输入、动作、产物、验收和停止条件。
- [x] 建立工程构建规格,固定模块、逻辑仓库、依赖、契约、配置和秘密边界。
- [x] 建立 DEV-00~14 开发任务包,明确依赖、交付物、测试映射、完成和停止条件。
- [x] 将验收矩阵补充为 CT/UT/IT/SEC/REC/T 六层测试规格。
- [x] 建立实施参数与决策清单,明确它是未来实施准入材料,不阻断当前构建设计。
- [x] 形成实施风险、停止条件、回滚和验收矩阵。
- [x] 新增 v1.1 MCP-first 身份与审计差量覆盖层,不修改 v1 原稿。
- [x] 将 MCP 从可选适配器提升为唯一用户业务入口,并明确不建设自定义业务 Web。
- [x] 将飞书登录绑定、内部稳定主体/Gitea 账户、双层权限和 AgentSession 纳入必需设计。
- [x] 将逐次 MCP 调用的 humanagentservice 强制审计纳入工程、实施和验收。
- [x] 将工程构建、开发任务、实施参数、详细实施和验收文档统一切换到 v1.1 口径。
- [x] 形成 v1.1 推荐技术栈与详细实施设计,选择 Go+官方 MCP SDKPostgreSQLGitea 的默认基线,并定义 Agent 无关的 adapter contract。
- [x] 完成闭环缺口审查,补齐成熟 OAuth/OIDC Authorization Server、飞书—Gitea 受控预配置绑定与 `pg_trgm` 中文检索基线。
- [x] 形成 v1.1 完整 PRD 和 Obsidian Canvas,覆盖 S00~S28 的调用、功能、输出、审计、拒绝、撤权、重试和恢复回路。
- [x] 更新业务线入口、任务、资源和操作记录,并完成正文 hash 与一致性校验。
当前组合设计不在本阶段重新选择:v1 的一项目一私有仓库、单向明确发布、发布网关唯一写 `main``main/current` 唯一默认读取面、`discussion / confirmed` 内容状态和试点 `forced_off`;v1.1 的 MCP 唯一用户入口、飞书身份绑定、内部权限+Gitea 权限双层限制、A3/A4 受控网关请求、三主体强制审计和无自建 Web。
## P2:C1 代码开发准入(未来,未授权)
- [ ] 由 Verlit 明确宣布进入代码开发;没有该决定时 DEV 任务保持 `planned`
- [ ] 确认平台代码仓库的正式归属、名称、维护者和验收人。
- [ ] 确认运行时、编程语言、MCP SDK/协议、最低版本、依赖和制品策略;不选择自建 Web 前端框架。
- [ ] 在 C1-04 前确认可复用或独立部署的成熟 OAuth/OIDC Authorization Server;不得在业务服务内临时自研完整授权服务器。
- [x] 确认 Agent 接入原则:框架兼容不同 Agent,优先 Codex、Claude Code;每人独立远程 MCP OAuth,支持人类确认和受控本地文件传输。
- [ ] 先执行 `v1.1-技术栈与详细实施设计.md` 的 C1-00,固定 Codex/Claude Code 支持版本并通过统一 adapter contract。
- [ ] 确认飞书登录真实配置、受控飞书—Gitea 预配置绑定、身份权限库和 audit store 的环境技术参数。
- [ ] 确认开发仅使用合成身份/数据、fake adapter 和临时目录,不连接真实飞书或 Gitea。
- [ ] 依次执行 `v1-开发任务分解.md` 中 DEV-00~14,并按测试映射验收。
- [ ] 形成可复现、无秘密、不会自动连接环境的开发制品。
代码开发准入不包含服务器部署、真实账号、项目仓库创建和试点授权。
## P3:G0 实施准入(已进入,部分条件明确)
- [x] 由 Verlit 明确宣布进入实施;本轮仅授权 Gitea 基础安装与 localhost 验证。
- [x] 确认目标主机 `120.27.248.208` 与 SSH 范围 `/`;远端写入仍收窄到 Gitea 自身资源。
- [ ] 确认首个正在运行、确实需要共享 Context 的低敏感项目(D03)。
- [ ] 确认实际项目成员,不默认全员授权(D04)。
- [ ] 指定项目维护者、至少一名 publisher、治理身份和应急责任(D05/D16)。
- [ ] 确认目标服务器的 OS、网络、域名/HTTPS、磁盘、维护窗口和 NAS 备份路径(D12)。
- [ ] 确认 RPO/RTO 和恢复验收口径(D15)。
- [ ] 确认飞书身份应用/OAuth Authorization Server、远程 MCP 地址与认证、真实用户绑定范围。
- [ ] 确认身份权限数据库、audit store、保留期限、脱敏规则和安全责任人。
- [ ] 确认 Gitea 账户绑定、权限复核、缓存失效和撤权验证方式。
- [x] 自定义发布驾驶舱已在 v1.1 关闭,不作为待选项。
- [ ] 为每个远端动作明确目标、责任人、授权、回滚、验收和证据位置。
## P4G1G2 Gitea 基础实施(进行中,仅基础安装完成)
- [x] 盘点目标服务器 OS、CPU/内存/磁盘、端口 3000、Git/GPG、容器环境和现有业务边界。
- [x] 安装固定版本 Gitea 1.26.4,使用独立 `git` 系统账号、`/var/lib/gitea` 数据目录与 `gitea.service`,仅监听 `127.0.0.1:3000`
- [x] 验证 Gitea 服务 active、本机 HTTP 200、源码目录 tracked 状态干净,并记录脱敏运行证据。
- [x] 配置独立 MySQL 数据库,生成安全密钥,完成自动迁移、安装锁、配置权限收紧和重启验证。
- [x] 创建首个 active 管理员 `Verlit`,设置随机临时密码与首次登录强制修改。
- [ ] 配置正式域名/HTTPS 与反向代理(由 Verlit 处理),再将 `ROOT_URL` 更新为正式地址。
- [ ] 完成数据库、配置和仓库数据的异机备份与恢复验证,达到完整加固口径。
- [ ] 建立独立账号、SSH key、项目团队和一个试点私有仓库。
- [ ] 保护 `main`,只允许发布网关身份写入。
- [ ] 建立仓库、数据库、配置和关键凭据材料的异机备份,并验证一次恢复。
- [ ] 验证成员撤权后未来访问被阻止。
## P5G3 项目仓库到 MCP current 读取链路(未来,未开始)
- [ ] 按原方案建立 `README.md``current/``schema/``.gitignore`
- [ ] 从指定 commit 构建 staging,校验后原子切换唯一 `current`
- [ ] 建立按项目隔离的内部只读端口,并通过 Context Reader MCP 暴露用户读取能力。
- [ ] 绑定飞书登录用户、内部 ProjectGrant、Gitea 账户权限和 AgentSession。
- [ ] 验证人和 Agent 读取同一 release ID、hash 和 `content_status`
- [ ] 验证未授权项目、构建区、私人来源和 Git 历史不进入默认读取面。
## P6:G3 发布入口(未来,未开始)
- [ ] 实现本地 Markdown 文件、章节和多材料的明确选择与 selection manifest。
- [ ] 实现发布物构建、附件收集、链接改写、内容 hash 和 diff。
- [ ] 实现结构、链接、路径、凭据、隐私和控制文件检查。
- [ ] 实现发布网关的身份校验、幂等、`base_current` 并发阻断和受保护 `main` 提交。
- [ ] 实现远程 MCP 用户工具面,A3/A4 必须绑定精确确认;MCP 不持有 Git 写凭据。
- [ ] 实现服务端自动三主体审计和 outbox/等价可靠写入;审计写入/删除不暴露为普通工具。
- [ ] 生成发布回执,并完成 Git、current、只读入口和 Agent 四段读回。
## P7:G4~G5 真实试点(未来,未开始)
- [ ] 完成 `v1-验收与止损矩阵.md` 的 M01M10 和 T01T12。
- [ ] 验证发布、读取、纠错、撤权、恢复发布和空环境恢复。
- [ ] 确认普通成员无需处理 Git 分支、PR/MR 和复杂冲突。
- [ ] 确认没有两个 current、私人内容泄漏、共享账号或不可恢复备份等止损信号。
- [ ] 用真实成员使用结果完成试点验收,而不是以“软件已安装”代替验收。
## P8:v2 判决(未来,未开始)
- [ ] 根据 v1.1 真实摩擦决定是否增加正式审批、Skill Registry、飞书内容来源、自定义 Web 或跨项目能力。
- [ ] 没有真实使用证据的增强项不进入 v2。
- [ ] 允许选择保持轻量 v1,不把 v2 当作必然扩建。
## 当前推进点
P1 的 v1.1 本地工程设计构建已完成,Verlit 已在 2026-08-11 明确授权进入范围受限的 G0 基础实施。Gitea 1.26.4 已通过 MySQL 自动迁移并在本地健康运行,首个管理员已创建;域名/HTTPS、反代、备份、细分账号权限和试点仓库尚未完成,P2 平台代码开发仍未授权。下一推进点是由 Verlit 配置反向代理并更新正式 `ROOT_URL`