Skip to content

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: Adapter interface ($kind, kind, boot, shutdown)
  • Binding helpers from @nwire/wires/http, /queue, /cron, /mcp, /graphql
  • Envelope shape (MessageEnvelope) — correlationId / causationId / tenant / userId flow through every dispatch
  • HTTP handler shape — (input, ctx) => result; ctx exposes resolve, logger, envelope, plus per-adopter raw access (ctx.koa etc.)

Experimental (may change between minors)

  • @nwire/graphql + @nwire/apollo adopter shapes
  • @nwire/amqp bus adapter
  • Studio Live trace UX
  • /_nwire/dispatch POST 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.

MIT licensed.