Commit Graph

6 Commits

Author SHA1 Message Date
lanrtop
d14b348845 feat(gitea): G2-G5 全链路——建仓/迁移/绑定 + webhook 收发 + 治理面板
G2 控制面:gitea_create_repo / gitea_migrate_repo / gitea_link_repo,
   upsert 绑定(换绑自动重置 webhook 字段),API 错误提取 Gitea message 可读返回
G3 观测面:MCP Server 新增 POST /webhook/gitea/:project_id——HMAC-SHA256 验签
   (X-Gitea-Signature,兼容 X-Hub-Signature-256)→ 解析 commits → 批量
   record_commit(sha 幂等,与本地 watcher 双路径不重复计数);验签失败记 log_event
G4 webhook 注册:gitea_setup_webhook 生成随机 secret 注册 push hook(重设先删旧)、
   gitea_unlink_repo 解绑顺带清理 Gitea 侧 hook
G5 治理面板:GiteaPanel——实例管理(添加/测试/删除)、当前项目三种绑定方式、
   webhook 注册与可复制回调地址、全部绑定概览

依赖:新增 hmac + sha2;project_id 与 commit_metrics 同源(Project.id),
避免双路径冲突复发;R10 修正设计文档错误签名头

验证:cargo test 58 passed(新增 upsert 换绑重置 + hmac 正反向 + payload 解析 5 测试)、
typecheck 全绿
2026-07-02 14:22:49 +09:00
lanrtop
f4dd0e4ea0 chore(blueprint): 蓝图↔Gitea 分工裁决 + R1/R2 飞轮卡 + Gitea Actions 卡升格可派发 2026-07-02 13:35:07 +09:00
lanrtop
289b558278 refactor(github): GitHub 全面退役——免登录 + 发布/导入/同步链路移除 + 凭据去 GitHub 化
D1 免登录改造:App 启动直接进主界面,删 LoginPage/github.rs/OAuth 全套命令、
   Sidebar 账户区与 GitHub OAuth 设置弹窗、健康检查 GitHub Token 项
D2 移除发布/导入/PR/CI 入口:删 PublishModal/ImportRepoModal、ProjectCard 的
   PR compare 链接与 Actions 状态灯、RepoRegistryModal 同步 tab、CicdModal runs tab、
   publish.rs 的 github_create_repo/git_push_to_github
D3 spacesSync 单机化:删 spacesSync/useSpacesSync/SpacesPage/DiscoveryPanel,
   拆除 App→Dashboard→ProjectCard 的 spacesJson 链
D4 git_ops 凭据链重写:ssh agent → git credential helper → gitea_instances token
   前缀匹配 → default,不再依赖 github_token

保留:server_software GitHub 镜像(Releases 下载加速)、gitea_migrate 迁移入口、
cicd.rs(待 Gitea Actions 改造卡);DB 表不删(R05 migration 兼容)

顺带:修复 servers.rs 两个存量测试的 schema 漂移(测试建表缺 deploy_type 列);
      包含会话前未提交的 agent-infra F3(get_agent_health 健康诊断,与 lib.rs/
      commands.ts 物理耦合无法拆分提交)

验证:cargo test 53 passed / typecheck 全绿 / vitest passWithNoTests
2026-07-02 13:15:56 +09:00
lanrtop
dcbf1f9355 feat(gitea): G1 DB schema + 实例 CRUD + 连接测试
新增 gitea_instances / gitea_repos 两张表(db.rs migrate);
实现 save/list/delete/update/test_connection 命令(ureq 调 GET /api/v1/user 验证 token);
gitea_list_linked_repos / gitea_get_repo_link 查询绑定状态;
前端 commands.ts 完整类型封装;4 个单元测试全绿。
2026-06-30 17:44:39 +09:00
lanrtop
6fdac2ec2f chore(blueprint): gitea-integration 架构设计 + 5 张可执行任务卡 2026-06-30 17:32:48 +09:00
lanrtop
2ed548556c docs(blueprint): 固化统一 Gitea 双层架构 + 接入包 architect 设计
战略转向统一自建 Gitea、冻结 GitHub;新增 onboarding-pack(两档接入包 + 基线 architect 设计 4 卡)与 gitea-integration(风筝线模型 + webhook);flywheel 转向 git 自吸 + 新增 L0 commit 解析层
2026-06-19 11:39:11 +09:00