@network-harness/core-api
v0.2.0
Published
Part of the network harness: @network-harness/core-api.
Readme
@network-harness/core-api
Claims ctx.api. One control API over HTTP, many faces: a CLI, a GUI, an MCP
server are all clients of it.
- Core routes are reserved by construction.
/healthand/tracesare registered on the server; everything an extension serves lives under/protocols/:extension/*and is dispatched from a table, so no extension has a path with which to claim a core route. The table exists because fastify's router is fixed once it listens, while extensions come and go. - A route is an effect of the extension that declared it.
handlederives the caller and registers through the caller's own fiber, so disabling the extension withdraws the route with no uninstall path of its own. - A reachable node must prove who is calling.
assertSafeBindingrefuses at load when a non-loopback bind carries no token, the daemon runs the same refusal in its preflight, and requests from an origin the human did not configure are refused even when they hold a token. - Bounds on both directions. Request bodies are bounded by fastify, an extension's response by its serialized size, and concurrent extension handlers by a count.
Phase 9 adds the manifest check on handle (a route must be one the
extension's manifest declared) and the /extensions lifecycle routes.
