Skip to content

[openapi-mcp S1] P1 proof: post-allocation endpoint-manifest seam (arbitrates F1) #1127

Description

@rickylabs

Part of #1126

Scope

Disposable proof [P1] — this proof's verdict arbitrates fork F1; it is not pre-decided. S-7 (adversarial pass) proved the generated helper body runs before Aspire allocates endpoints (createNetScriptAppHost() registers and returns before builder.build().run(); getEndpoint() values are deferred references), so a naive manifest write there emits placeholders. Demonstrate a generated, run-mode, post-allocation callback (Aspire lifecycle event surfaced to generated TS or the C# AppHost side) that resolves every service endpoint from the host network perspective and atomically writes .netscript/run/endpoints.json with the identity binding (projectRoot, runId, literal-loopback URLs).

A FAIL verdict is a legitimate result, not a blocker: it activates F1(b) — the aspire-cli query adapter as a first-class EndpointSource — and S5/S7 proceed on that path. S5 and S7 may not start before this verdict exists.

Design source: RFC #1123 (rfc.md §2.3, §9 F1) + .llm/runs/plan-openapi-mcp-plugin--seed/design/canonical/02-discovery.md (rev 2).

Acceptance

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions