ADR 0025 T8: dir= operations resolve their target's forge #34

Closed
opened 2026-07-13 15:58:25 +00:00 by hexajon · 0 comments
hexajon commented 2026-07-13 15:58:25 +00:00 (Migrated from codeberg.org)

Wire per-target resolution through the MCP/service layers:

  • Audit every forge-contacting path serving dir= tools (grep GetConfig(, NewClient(, RunGitAuth in internal/mcp, internal/service): classify caller-resolved vs internal-resolved.
  • Shared helper resolveConfigFor(ctx, dir)config.GetConfig when dir empty, else config.GetConfigForDir (from T5).
  • owner_repo-only calls keep config.GetConfig (now chain+session-forge correct).
  • Integration-style test: sibling repo with a codeberg origin gets a codeberg base URL while the process cache reports the cwd forge.

Depends on: T5 (and T7 for the repo-less path).

Acceptance: go build ./... && go test ./internal/mcp/ ./internal/service/... ./internal/git/ green.

Part of #30.

Wire per-target resolution through the MCP/service layers: - Audit every forge-contacting path serving `dir=` tools (grep `GetConfig(`, `NewClient(`, `RunGitAuth` in internal/mcp, internal/service): classify caller-resolved vs internal-resolved. - Shared helper `resolveConfigFor(ctx, dir)` → `config.GetConfig` when dir empty, else `config.GetConfigForDir` (from T5). - owner_repo-only calls keep `config.GetConfig` (now chain+session-forge correct). - Integration-style test: sibling repo with a codeberg origin gets a codeberg base URL while the process cache reports the cwd forge. Depends on: T5 (and T7 for the repo-less path). Acceptance: `go build ./... && go test ./internal/mcp/ ./internal/service/... ./internal/git/` green. Part of #30.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
sixfold-space/madtea#34
No description provided.