Retracted: v1.36.21 does not compile: mcp.go calls networkOf, which was staged in a
file the commit left behind. It built locally because the working tree held
both halves, which is the whole lesson — verify the commit, not the
directory it came from.
The tag is not moved. A version is a permanent address, and a consumer that
already resolved to it must keep getting the same bytes. Retract is how Go
says "published in error" without rewriting history: the resolver stops
choosing it, `go list -m -versions` stops offering it, and anyone pinned to
it is told rather than silently moved. v1.36.22 is the re-cut.
go run ./examples/hello
curl http://localhost:8080/hello
curl http://localhost:8080/.well-known/openapi.json # the same two ops
curl -XPOST -d '{"method":"tools/list"}' http://localhost:8080/mcp
Both routes are TYPED ops, which is the default. zip.Get[In, Out] registers
ONE operation, and zip projects it into the REST route, the OpenAPI document,
an MCP tool, a `<service> <operation>` command line and a by-name call plane.
An untyped app.Get(path, func(c *zip.Ctx) error) registers no operation and
therefore appears in NONE of them — see examples/sse-streaming for the case
where that is still the right trade.