diff --git a/.task/feature-gitea-access-facts.md b/.task/feature-gitea-access-facts.md new file mode 100644 index 00000000..f2087759 --- /dev/null +++ b/.task/feature-gitea-access-facts.md @@ -0,0 +1,26 @@ +# feature/gitea-access-facts 任务卡 + +任务主记录:;状态:进行中;owner:weichen + +## 基线与授权 + +- 权威仓:ssh://git@git-ssh.u1680832.nyat.app:31411/weichen/Agent-System-Dev.git;目标分支:main;R0(initial_base_sha)= 0654e035435ee6016ca8116f6eb394a824a0b9e2 +- 工作区:/home/weichen/projects/Agent-System-Dev-wt-feature-gitea-access-facts(worktree);分支:feature/gitea-access-facts +- 授权与交付终点:用户 2026-09-30 授权——把实测可用的 Gitea 主机与凭证位置写入本仓及各相关仓的项目规范(AGENTS.md),终结每次试错;终点为分支经 PR 合入 main。未授权:改写 Development-Guidelines(其 AGENTS.md 禁止项目事实)、迁移仓库 URL、变更凭证本身。 + +## 目标与非目标 + +- 目标:① `scripts/task.sh` 的 `TASK_CARD_WEB_BASE` 默认值由失效的 `git-panel...:30319` 改为实测可用的 `git-home...:30319`;② 本仓 AGENTS.md 增补「Gitea 与 Git 访问事实」节(HTTPS Web/API、SSH、token 文件指针、SSH key 指针),只记位置与字段格式,不写 secret 值。 +- 非目标:不改各子仓 URL、不动 Development-Guidelines、不在仓内写入 token 值或私钥。 + +## 同步记录 + +| 节点 | sync_base_sha | tested_head_sha | checked_at | +|---|---|---|---| +| 启动 | 0654e035435ee6016ca8116f6eb394a824a0b9e2 | 0654e035435ee6016ca8116f6eb394a824a0b9e2 | 2026-09-30T15:43:56Z | + +## 结果与验证(完成后填写) + +- 结果:task.sh:175 默认 `TASK_CARD_WEB_BASE` 改为 `https://git-home.u1680832.nyat.app:30319`(git-panel 前缀 TLS 握手失败已废弃);AGENTS.md 新增「Gitea 与 Git 访问事实」节:HTTPS Web/API、SSH 格式、token 文件指针(`~/.secrets/gitea` 的 `ACCESS_TOKEN` 字段)、SSH key 指针(`~/.ssh/home_gitea`,指纹 SHA256:GYXa…Q20)、GITEA_TOKEN 用法。未写入任何 secret 值。 +- 验证:`bash -n scripts/task.sh` 通过;目标行为实测——curl git-panel `/api/v1/version` exit 35(确认失效),curl git-home 同端点带 `~/.secrets/gitea` token 返回 `{"version":"1.27.3"}`,`ssh -p 31411 git@git-ssh.u1680832.nyat.app` 返回 `Hi there, weichen!`(BatchMode 免密)。本变更为文档+脚本默认值,无代码路径变更;task-sync 合入的子仓指针推进来自 main 已验证的 pin 提交(证据复用,条件未变化)。 +- 影响与剩余项:后续 PR 将同一访问事实节落到其余相关仓 AGENTS.md(Core/Backend/Frontend/Documents/UI/Native/Squad/Intent/Error-Code-System/Logging-System/Agent-Command/Releases/Development-Manager);Development-Guidelines 按其 AGENTS.md 规则不收项目事实,不改。 diff --git a/AGENTS.md b/AGENTS.md index cdedc04f..839c95a6 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -30,3 +30,22 @@ - 模块边界、公开契约与隔离档位见 `policy/modules/`(如有)与 PROJECT.md。 - 验证命令见 PROJECT.md「验证」节;完成声明须附实际命令输出证据。 - 首次克隆本仓后运行 `make setup` 启用本地 pre-commit 钩子。 + +## Gitea 与 Git 访问事实(2026-09-30 实测) + +历史任务卡与旧脚本里的 `git-panel.u1680832.nyat.app:30319` 已失效(TLS 握手失败), +见到一律按过期处理,不要再试。当前权威通道: + +- **Web / API(HTTPS)**:`https://git-home.u1680832.nyat.app:30319`(Gitea 1.27.3, + API 前缀 `/api/v1`;偶发 broken pipe / 超时,重试即可)。 +- **Git over SSH**:`ssh://git@git-ssh.u1680832.nyat.app:31411/weichen/.git` + (.gitmodules 与各仓 origin 均为此格式)。 +- **API token**:`~/.secrets/gitea`,两行键值 `URL_PREFIX=…` 与 + `ACCESS_TOKEN=<40 位 hex>`;取值 `grep ACCESS_TOKEN ~/.secrets/gitea | cut -d= -f2-`, + 用作 `Authorization: token <值>` 请求头。**token 值不入仓、不回显、不写进产出物** + (baseline 硬边界 2:只记录来源、字段与可用状态)。 +- **SSH key**:`~/.ssh/home_gitea`(ED25519,公钥指纹 + `SHA256:GYXaOXIMeloQ1fKSfdJ/ndgPQzs/Ix7Hk62ekfkfQ20`,Gitea 侧密钥名 GMKtec); + `~/.ssh/config` 已有 `git-ssh.u1680832.nyat.app` 主机条目,克隆/推送直接可用。 +- 任务卡闭合 PR(`make task-close` / `task-finish` 自动闭合)经 API 建 PR 时以 + `GITEA_TOKEN` 环境变量传入同上的 token。 diff --git a/modules/documents b/modules/documents index 58824482..bf0988b2 160000 --- a/modules/documents +++ b/modules/documents @@ -1 +1 @@ -Subproject commit 58824482372a78ffccc09910e83a955c4e8a8389 +Subproject commit bf0988b2b2eb61ad6a09241f91e0b0129da1300a diff --git a/modules/ui b/modules/ui index efa6c692..c7564791 160000 --- a/modules/ui +++ b/modules/ui @@ -1 +1 @@ -Subproject commit efa6c6924827f68e3fdea2b8b8f85b63b0867af4 +Subproject commit c7564791f8f0eae8d06d13effc72cefe2528bd3e diff --git a/scripts/task.sh b/scripts/task.sh index f9eadd84..2240b3a1 100755 --- a/scripts/task.sh +++ b/scripts/task.sh @@ -171,8 +171,9 @@ cmd_close() { local fold=0 [ "${1:-}" = "--fold" ] && fold=1 git fetch -q origin "${TARGET_BRANCH}" 2>/dev/null || true - # 默认值取远端通告的 Web 面(git push 输出的 PR 建议链接);可用 TASK_CARD_WEB_BASE 覆盖 - local web_base="${TASK_CARD_WEB_BASE:-https://git-panel.u1680832.nyat.app:30319}" + # 默认值取远端通告的 Web 面(git push 输出的 PR 建议链接);可用 TASK_CARD_WEB_BASE 覆盖。 + # git-panel 前缀已失效(TLS 握手失败),默认值改为实测可用的 git-home(AGENTS.md 访问事实节)。 + local web_base="${TASK_CARD_WEB_BASE:-https://git-home.u1680832.nyat.app:30319}" local url owner repo url=$(git remote get-url origin); url="${url%.git}" repo=$(basename "$url"); owner=$(basename "$(dirname "$url")")