Forge
markdown3407750f
1# FORGE release gate — IT CAD pilot v1
2
3**Goal:** deploy internal IT CAD pilot only after three gates pass.
4
5## Gates
6
7### A — Git transport e2e
8
9- [x] `git-ssh` service in `docker-compose.yml` (port 2222)
10- [x] `FORGE_GIT_SSH_PORT` on forge → correct `cloneUrl`
11- [x] `FORGE_GIT_AUTHORIZED_KEYS` bootstrap for pilot keys
12- [x] `scripts/smoke-git-transport.ps1`
13- [x] LibGit2Sharp transport unit tests
14- [x] `docs/git-transport.md`
15
16**DoD:** `smoke-git-transport.ps1` health + repo create PASS; optional SSH clone/push with authorized key.
17
18### B — CIDE write (Forge Lens)
19
20- [x] `forge_lens.create_issue` — title, body, optional `file_path` / `line_start` / `line_end`
21- [x] `forge_lens.create_merge_request` — title, `source_branch`, optional `target_branch`
22- [x] MCP tools `ide_forge_lens_create_issue`, `ide_forge_lens_create_merge_request`
23- [x] Bearer from CIDE secrets / `~/.forge/credentials.json` / workspace env
24
25**DoD:** from CIDE with `[workspace.forge]` configured, create issue with anchor on open file; MR appears in lens API.
26
27### C — Thin web UI
28
29- [x] `/view` — repo list
30- [x] `/view/repos/{name}` — issues + MR list
31- [x] `/view/repos/{name}/issues/{n}` — issue detail + anchors
32- [x] existing MR view + accept/reject
33
34**DoD:** human can browse repos/issues/MR without API client.
35
36## After gates
37
381. Update `deploy-it-cad.md` checklist (agent-notes)
392. `docker compose` on infra with HTTPS reverse proxy
403. CAD Cursor profiles: `FORGE_BASE_URL`, `forge_lens.connect`
414. One pilot repo (`cad-agent-tools` or similar)
42
43## Out of scope (v0.2+)
44
45- Full OAuth for all CAD users
46- CI webhook production wiring
47- GitLab migration automation
48
View only · write via MCP/CIDE