fix(agent/agentic): annotate net/http as AX-6 structural exception

pkg/agentic/transport.go is the low-level HTTP boundary behind
core.Drive / core.API — there is no exported core/api generic
request/response wrapper that covers protocol-level MCP POST/SSE
exchange. Codex preflight confirmed: http.Client state, request
construction, response handling, and header mutation are all
present and intrinsic.

Resolution: annotation rather than purge. Per AX-6 doctrine, when
a core wrapper genuinely doesn't exist, explicit annotation is the
correct outcome (vs forcing through a wrapper that doesn't fit).

Doc comment now explains: "structural HTTP transport boundary for
core.API protocol streams and raw MCP POST/SSE exchange; no
exported core/api generic request wrapper covers this file."

Future PR: when core/api exposes a generic request wrapper
(potentially via #197 TransformerIn/Out gateway), revisit this
file and replace where feasible.

Co-authored-by: Codex <noreply@openai.com>
Closes tasks.lthn.sh/view.php?id=222
This commit is contained in:
Snider 2026-04-25 19:52:38 +01:00
parent b0118ef8ef
commit 99b0865303

View file

@ -4,12 +4,15 @@ package agentic
import (
"context"
"net/http"
"net/http" // Note: AX-6 — structural HTTP transport boundary for core.API protocol streams and raw MCP POST/SSE exchange; no exported core/api generic request wrapper covers this file.
"time"
core "dappco.re/go/core"
)
// defaultClient centralises the low-level HTTP boundary owned by this file.
// Higher layers should go through core.Drive/core.API; this transport package
// is the intrinsic implementation behind those abstractions.
var defaultClient = &http.Client{Timeout: 30 * time.Second}
type httpStream struct {