Stability contract
Frozen surface (semver patch/minor safe)
- Composition verbs:
endpoint(...).use(adopter).mount(app).run() - App primitives:
createApp,appCompose,definePlugin - Domain primitives:
defineAction,defineEvent,defineHandler,defineActor,defineWorkflow,defineProjection,defineQuery,defineSchema,defineResource,defineError - Adopter contract:
Adapterinterface ($kind,kind,boot,shutdown) - Binding helpers from
@nwire/wires/http,/queue,/cron,/mcp,/graphql - Envelope shape (
MessageEnvelope) —correlationId/causationId/tenant/userIdflow through every dispatch - HTTP handler shape —
(input, ctx) => result; ctx exposesresolve,logger,envelope, plus per-adopter raw access (ctx.koaetc.)
Experimental (may change between minors)
@nwire/graphql+@nwire/apolloadopter shapes@nwire/amqpbus adapter- Studio Live trace UX
/_nwire/dispatchPOST surface (manifest + wires + runtime endpoints are stable)- Doc-test harness coverage breadth
Deprecation policy
Breaking changes require a changeset + migration note. Deprecated APIs survive at least one minor release with console warnings where feasible.