# @beignet/next

## 0.0.58

### Patch Changes

- 2aeb052: Skip application context creation and request parsing for router-generated
  404/405 responses while preserving response hooks, correlation, CORS, security
  headers, and instrumentation. Response hooks receive `ctx: undefined` for
  routing failures, and built-in request logging retains the server's request ID.
- Updated dependencies [2aeb052]
  - @beignet/web@0.0.58

## 0.0.57

### Patch Changes

- f039f89: Require Nodemailer 10.0.16 or newer within v10 for SMTP and Next.js 16.3.8 or
  newer within v16. Next.js 15 support is unchanged. Existing SMTP provider
  configuration works unchanged; Nodemailer includes its own TypeScript types.

  Generate apps with the updated dependency versions and install the shadcn CLI
  as development tooling.

  - @beignet/web@0.0.57

## 0.0.56

### Patch Changes

- b2bae46: Generate small features with named workflows in `use-cases.ts`, support both compact and split layouts in generators and diagnostics, and document when to split workflows into separate files.
  - @beignet/web@0.0.56

## 0.0.55

### Patch Changes

- a3085a6: Allow broadcast connections to configure lifetimes up to one hour while keeping
  the 60-second default. Browser clients honor the server's advertised lifetime
  with bounded watchdog grace, preserve heartbeat timeouts, and reconcile on
  renewal. Align CLI diagnostics and hosting guidance with configurable lifetimes.
- a3085a6: Coordinate broadcast refreshes with matching pending mutations or custom write
  gates. Add connection admission with automatic resource cleanup, and expose
  connection/reconciliation reasons. Keep the 60-second default, require valid
  lifetime metadata, and use explicit connection-wide renewal control frames.
- Updated dependencies [a3085a6]
- Updated dependencies [a3085a6]
  - @beignet/web@0.0.55

## 0.0.54

### Patch Changes

- b71b34f: Add typed, authorized browser broadcasting with bounded SSE connections, memory
  and Redis providers, reconnect reconciliation, React Query invalidation,
  initiating-client exclusion, notification delivery, and transactional inbox
  scaffolding. Raw routes now preserve context added by route hooks.
- Updated dependencies [b71b34f]
  - @beignet/web@0.0.54

## 0.0.53

### Patch Changes

- 6ef881c: Reject incompatible default route-binder inputs at compile time and classify
  type-erased runtime mismatches as framework-owned validation errors. Generated
  resource cursors now remain optional at the request boundary and normalize to
  nullable repository pagination state inside the use case.
- ce6a5f6: Require patched Next.js and Nodemailer releases, and use them in generated apps and SMTP provider setup.
  - @beignet/web@0.0.53

## 0.0.52

### Patch Changes

- b39bb6e: Clarify that Beignet applications require Node.js 22.12 or newer and can use
  npm, pnpm, Yarn, or Bun for package management and framework commands.
- 9d52cb7: Generate apps with patched integration dependencies and require maintained
  Next.js, Inngest, and Vercel Blob peer versions.
- 64dca8d: Bound webhook bodies, keep fallback errors private outside development and
  tests, serialize snapshot-safe local storage operations, preserve ambient audit
  correlation, surface provider shutdown failures, validate timer ranges, and
  omit raw search and database queries from instrumentation. Release unread
  storage bodies explicitly and bound provider-owned Redis shutdown.
- a50ef66: Send the parsed response-schema output from framework-neutral route handlers,
  including transformed catalog error details.
- Updated dependencies [b39bb6e]
- Updated dependencies [a50ef66]
  - @beignet/web@0.0.52

## 0.0.51

### Patch Changes

- ea3d734: Renew active outbox claims, reconcile exhausted deliveries, and surface uncertain lease or settlement outcomes across runtime and operational tools. Custom outbox adapters must implement `renewClaim(...)`, return `{ claimed, deadLettered }` from `claimBatch(...)`, and reject renewal or settlement after the active claim expires.
  - @beignet/web@0.0.51

## 0.0.50

### Patch Changes

- cede255: Keep JSON body nulls distinct in React Query keys, expose scoped service work
  through Fetch servers, preserve streamed responses, and reject non-object form
  body inputs at compile time.
- ee402a9: Map invalid adapter URLs to framework responses, cancel oversized request
  streams, distinguish typed idempotency inputs, preserve repeated response
  headers, and match Unicode static routes against encoded URL pathnames.
- d1db53e: Add a portable Server-Sent Events response helper with JSON framing,
  heartbeats, bounded unread buffering, optional maximum lifetime,
  cancellation-aware asynchronous setup, eventual late cleanup, and safe
  response headers, expose native request cancellation through
  `HttpRequestLike.signal`, and use recoverable bounded snapshots for the
  Devtools live stream with visible partial-data reporting.
- 7b0961b: Add a non-durable best-effort work port, a recording test adapter, and a Next.js `after()` adapter that isolates scheduler and callback failures.
- Updated dependencies [cede255]
- Updated dependencies [ee402a9]
- Updated dependencies [d1db53e]
  - @beignet/web@0.0.50

## 0.0.49

### Patch Changes

- e597d53: Require Node.js 22.12 or newer across every Beignet package, generated app,
  and documented workflow.
- 3049831: Prevent outbox job registries from silently running without a dispatcher by
  wiring generated jobs, reporting incomplete app-port configuration, and
  validating delivery transports before claiming messages. Jobs provider presets
  replace only the marked generated inline fallback.
- 8c0b355: Isolate and safely frame default rate-limit buckets, fail closed for unresolved user scopes, escape Swagger script data, and require an explicit access policy for devtools routes.
- Updated dependencies [e597d53]
  - @beignet/web@0.0.49

## 0.0.48

### Patch Changes

- @beignet/web@0.0.48

## 0.0.47

### Patch Changes

- 3847e21: Resolve trusted request metadata once per request from a server-level policy and share it with context factories, security hooks, rate limiting, and logging observers.
- Updated dependencies [3847e21]
  - @beignet/web@0.0.47

## 0.0.46

### Patch Changes

- @beignet/web@0.0.46

## 0.0.45

### Patch Changes

- b9df150: Declare client-component boundaries for hook entrypoints and document Swagger UI deployment constraints.
  - @beignet/web@0.0.45

## 0.0.44

### Patch Changes

- Updated dependencies [07baa79]
  - @beignet/web@0.0.44

## 0.0.43

### Patch Changes

- 19b9c52: Modernize generated Zod and Drizzle syntax, flush Pino logs during provider shutdown, strengthen shared credential redaction, add mail operation durations, and correct copied documentation examples.
  - @beignet/web@0.0.43

## 0.0.42

### Patch Changes

- @beignet/web@0.0.42

## 0.0.41

### Patch Changes

- @beignet/web@0.0.41

## 0.0.40

### Patch Changes

- f7bcd30: Add push-assisted Next.js outbox draining after successful Unit of Work transactions while retaining cron recovery.
  - @beignet/web@0.0.40

## 0.0.39

### Patch Changes

- @beignet/web@0.0.39

## 0.0.38

### Patch Changes

- 7b918c4: Standardize bounded terminal-only runtime error reporting, structured Sentry metadata redaction, and isolated reporting across HTTP, jobs, schedules, tasks, listeners, and outbox drains.
- Updated dependencies [1081ac6]
  - @beignet/web@0.0.38

## 0.0.37

### Patch Changes

- @beignet/web@0.0.37

## 0.0.36

### Patch Changes

- @beignet/web@0.0.36

## 0.0.35

### Patch Changes

- 74aad51: Replace the schedule-specific instrumentation sink with shared provider targets, serve bodyless HEAD responses from GET routes, improve missing JSON content-type diagnostics, and expose the auth error HTTP status.
- db79263: Align route, listener, auth-provider, and webhook-integration APIs before 1.0. Route declarations now use an app-bound `createRoutes<AppContext>()` builder, listeners put their stable name first, Better Auth exports `createBetterAuthProvider(...)`, and vendor webhook verifiers live in `@beignet/webhooks-*` packages outside provider audits.
- 397f106: Standardize framework-owned operational errors, degrade opaque OpenAPI path parameters safely, and add direct Redis, Pino, and Upstash adapters.
- 40f4155: Refresh package-shipped agent guidance for app-bound route builders, configured route-builder paths, webhook integrations, and operational error responses.
- c403db2: Isolate use-case observers, authenticate operational routes before context creation, honor configured generated-test roots, correct feature-helper linting, preserve optional OpenAPI descriptions, and keep upload resets stable.
  - @beignet/web@0.0.35

## 0.0.34

### Patch Changes

- 9345cc9: Stabilize the pre-1.0 public surface around factory-only providers, canonical server and testing imports, consistent memory naming, and the removal of deprecated aliases.
- Updated dependencies [9345cc9]
  - @beignet/web@0.0.34

## 0.0.33

### Patch Changes

- c514ffc: Document the Next.js cached request-context convention separately from React
  Query prefetching, and update generated agent guidance to use
  `lib/server-context.ts` for shared Server Component request state.
- ae6d7f9: Document the Next.js server prefetch convention and teach generated agent
  guidance to preserve contract query keys while replacing server query
  functions with direct use-case calls.
- 0c6c0ee: Make generated app test and database scripts package-manager neutral by using
  `tsx`, and refresh package testing docs to avoid Bun-specific snippets.
- 450ce71: Add opt-in runtime integrity checks for workflow registries, teach the CLI a central listener registry, and document serverless-safe boot checks.
- f263650: Harden generic webhook verification with strict unknown-event defaults and opt-in HMAC timestamp tolerance.
- Updated dependencies [4341860]
  - @beignet/web@0.0.33

## 0.0.32

### Patch Changes

- eb680ef: Provider naming now follows one implementation-first order matching the
  factories. `@beignet/provider-redis` is renamed `@beignet/provider-cache-redis`
  (the package fills the cache port; the raw client stays as the
  `ctx.ports.redis` escape hatch) with `redisCacheProvider`,
  `createRedisCacheProvider`, and provider name `cache-redis` matching
  `locks-redis`. Default consts flip to implementation-first:
  `loggerPinoProvider` is now `pinoLoggerProvider`, `mailResendProvider` is now
  `resendMailProvider`, and `mailSmtpProvider` is now `smtpMailProvider`.
  CLI starter templates and the `redis-cache` provider preset wire the new
  names. No aliases are kept.
  - @beignet/web@0.0.32

## 0.0.31

### Patch Changes

- @beignet/web@0.0.31

## 0.0.30

### Patch Changes

- 38d1770: Every published package now rebuilds in `prepack`, so publishing can never ship a stale `dist/` again (the 0.0.28 packaging incident). No runtime behavior changes.
- Updated dependencies [38d1770]
  - @beignet/web@0.0.30

## 0.0.29

### Patch Changes

- @beignet/web@0.0.29

## 0.0.28

### Patch Changes

- 57504c5: Add `server.rawRoute(...)`: build handlers for routes that cannot be contracts — third-party callbacks, signature-verified webhooks, streaming endpoints — that still run the full pipeline (hooks, context creation, instrumentation, framework error mapping) with the request body left unconsumed. The Next.js webhook, payment webhook, schedule, and outbox drain route factories now run through this pipeline automatically when the server exposes `rawRoute`, with a new `pipeline` option for route identity and hook metadata.
- Updated dependencies [f21e8af]
- Updated dependencies [57504c5]
  - @beignet/web@0.0.28

## 0.0.27

### Patch Changes

- f2461a9: Add lazy Next route server loaders and update generated route files and package docs to avoid booting providers during production build imports.
- 88200a0: Cron, webhook, payment webhook, and outbox drain route factories now build app
  context from the real request via `server.createRequestContext(...)` instead
  of `next/headers`, so route files run under `bun test` with a plain `Request`
  and request/trace headers propagate into context creation. Webhook routes read
  the raw body first and rehydrate the request for the context factory, so
  signature verification never races context creation over one body stream. The
  `server` option accepts any object exposing `createRequestContext`
  (`NextRouteServer<Ctx>`); existing `server: getServer` call sites keep working
  unchanged.
  - @beignet/web@0.0.27

## 0.0.26

### Patch Changes

- 104302c: Refresh package-shipped TanStack Intent skills and add package skills for Drizzle database providers, Better Auth, React Hook Form, and React uploads.
  - @beignet/web@0.0.26

## 0.0.25

### Patch Changes

- 7c83da7: Refresh package-shipped TanStack Intent skills to match current Beignet app structure, generators, route helpers, and React Query cache helpers.
  - @beignet/web@0.0.25

## 0.0.24

### Patch Changes

- 91bc9b5: Harden framework security defaults for generated tenancy, auth secrets, CORS,
  body limits, uploads, devtools, OpenAPI, rate-limit IP sources, public storage,
  and Meilisearch query fields.
- Updated dependencies [91bc9b5]
  - @beignet/web@0.0.24

## 0.0.23

### Patch Changes

- @beignet/web@0.0.23

## 0.0.22

### Patch Changes

- @beignet/web@0.0.22

## 0.0.21

### Patch Changes

- Ship TanStack Intent agent skills with Beignet packages and scaffold generated apps with Intent skill-loading guidance.
  - @beignet/web@0.0.21

## 0.0.20

### Patch Changes

- @beignet/web@0.0.20

## 0.0.19

### Patch Changes

- @beignet/web@0.0.19

## 0.0.18

### Patch Changes

- @beignet/web@0.0.18

## 0.0.17

### Patch Changes

- 0c98347: Synthesize the standard Cookie header from Next Server Component cookies when
  `headers()` does not expose one.
  - @beignet/web@0.0.17

## 0.0.16

### Patch Changes

- 712fb3f: Clarify the canonical route story for payment webhooks versus generic inbound webhooks and document verifier package setup semantics.
  - @beignet/web@0.0.16

## 0.0.15

### Patch Changes

- 73a682a: Make the type-preserving curried route-group form the canonical Beignet route
  API across generated apps, docs, READMEs, and examples. `beignet doctor` now
  warns when feature route groups use the direct generic form, and the direct
  overload is deprecated because TypeScript erases per-route contract output
  checks there.
- 7d3c980: Add provider-neutral inbound webhook definitions, verifiers, HMAC verification, memory test verifier, and a generic Next.js webhook route adapter.
  - @beignet/web@0.0.15

## 0.0.14

### Patch Changes

- d51a35f: Add the provider-neutral payments port, memory payments adapter, Stripe payments provider, Next.js payment webhook route helper, `beignet make payments`, and first-class payments devtools view.
  - @beignet/web@0.0.14

## 0.0.13

### Patch Changes

- @beignet/web@0.0.13

## 0.0.12

### Patch Changes

- @beignet/web@0.0.12

## 0.0.11

### Patch Changes

- @beignet/web@0.0.11

## 0.0.10

### Patch Changes

- @beignet/web@0.0.10

## 0.0.9

### Patch Changes

- 1bb42a3: Rename `@beignet/provider-drizzle-turso` to `@beignet/provider-db-drizzle`, with databases as subpath exports. Import from `@beignet/provider-db-drizzle/sqlite`; `DrizzleTurso*` symbols are now `DrizzleSqlite*`, the provider registers as `drizzle-sqlite`, and the connection env vars are `SQLITE_DB_URL` and `SQLITE_DB_AUTH_TOKEN` (the auth token applies to hosted libSQL such as Turso). Provider packages now follow `provider-<capability>-<implementation>` naming, and multi-backend implementations add backends as subpaths — `/postgres` and `/mysql` are planned next.
  - @beignet/web@0.0.9

## 0.0.8

### Patch Changes

- @beignet/web@0.0.8

## 0.0.7

### Patch Changes

- @beignet/web@0.0.7

## 0.0.6

### Patch Changes

- @beignet/web@0.0.6

## 0.0.5

### Patch Changes

- @beignet/web@0.0.5

## 0.0.4

### Patch Changes

- 8bcb31f: Mark package READMEs with Beignet's experimental alpha status and 0.0.x stability expectations.
- d137044: Declare `@beignet/core` as a peer dependency with a lockstep version range in
  every integration and provider package instead of a regular `"*"` dependency.
  Installs now always resolve a single shared copy of core, so `instanceof`
  checks such as `isContractError` and upload error identity keep working, and
  mixed Beignet versions fail loudly at install time instead of at runtime.

  If your package manager does not install peer dependencies automatically, add
  `@beignet/core` to your app alongside these packages. `@beignet/nuqs` now also
  declares `@beignet/react-query` as a peer dependency, and
  `@beignet/provider-storage-s3` now expects you to install
  `@aws-sdk/client-s3` and `@aws-sdk/s3-request-presigner` yourself, matching
  how other providers treat their SDKs.

- 603478f: Align package documentation with the canonical route registry and AppContext conventions.
- ac78cdf: Make `createAuthHooks` the single route-scoped auth hook API. The factory is
  now curried — `createAuthHooks<AppContext>()({ resolve })` — so added context
  fields are inferred from `resolve` instead of passed as a type argument, and a
  new optional `headers` schema validates the raw lowercase request header
  record before `resolve` runs, giving `resolve` typed credential headers
  without contract casts. On `required()` hooks a header schema failure returns
  a framework-owned 401; `optional()` hooks skip auth resolution; `public()`
  hooks never parse headers. `defineRouteHook` (and the `RouteHookBuilder`
  types) are removed — write non-auth route hooks as plain `RouteHook` object
  literals.
- 1a79090: Emit Node-compatible ESM: all relative imports in published packages now carry explicit .js extensions, fixing ERR_MODULE_NOT_FOUND when running the CLI or importing package dist files under plain Node.
- 079bf59: Clarify unsupported catch-all contract path diagnostics and document that catch-all route files belong to runtime adapters, not individual contracts.
- 303ba07: Define the public HTTP adapter contract and expose the Web Fetch adapter implementation.
- 493d23b: Make the framework own context assembly with a server context blueprint and first-class service contexts.

  - `createServer(...)` (and the Next/Web adapters) replace the `createContext` option with `context`. Gate-less contexts keep the plain request-factory shorthand; contexts that declare a `gate` must use the blueprint form `{ gate: (ports) => ports.gate, request, service }`. Returning `gate` from a context factory or hook addition is now a compile error.
  - The gate port gains `gate.attach(ctx)`: it attaches a live, non-enumerable `ctx.gate` getter that re-binds against the receiving object on every access, so identity changes (including auth-hook elevation) can never authorize against a stale context, and spread copies drop the gate loudly instead of silently keeping stale identity. `bind(...)` remains the low-level primitive.
  - Servers expose `createRequestContext(req)` and `createServiceContext(input?)`; the optional `context.service` factory powers schedule, outbox, command, and background contexts. Provider `setup`, `start`, and `stop` receive a late-bound `createServiceContext` so infra providers no longer hand-build background contexts.
  - `createTestContextFactory(...)` now attaches the gate after all `extra` and override fields merge, fixing a stale-identity bug in tests.
  - CLI templates, generators, and doctor diagnostics emit and check the new context blueprint and service-context wrappers.

- eda7b59: Clarify that app-owned error details are public response data and should be
  mapped explicitly rather than automatically redacted by the framework.
- ac78cdf: Add `createScheduleRoute(...)` to `@beignet/next` for triggering one registered schedule from a serverless cron route, with the same fail-closed bearer auth and JSON envelope conventions as `createOutboxDrainRoute(...)`. Unknown schedule names throw when the route module loads.

  The inline schedule runner in `@beignet/core/schedules` now accepts `instrumentation` and `instrumentationContext` options and records `schedule` devtools events (`started`, `completed`, `failed`) itself. Recording failures are isolated from schedule execution and reported to `onHookError`. `createScheduleRoute(...)`, `beignet schedule run`, and generated cron routes use this instead of hand-rolled lifecycle hooks.

  Security: cron route bearer secrets in `createScheduleRoute(...)` and `createOutboxDrainRoute(...)` are now compared with a timing-safe SHA-256 digest comparison instead of `!==`.

- 89390fe: Decouple devtools from app code with server-owned instrumentation.

  - `@beignet/core/tracing` is a new dependency-free subpath with the W3C trace
    primitives (`TraceContext`, `createTraceContext`, `createChildTraceContext`,
    `parseTraceparent`, `createTraceparent`, `createTraceId`, `createSpanId`).
    App context types now use `Partial<TraceContext>` instead of importing
    `DevtoolsTraceContext` from `@beignet/devtools`.
  - `createServer(...)` owns request instrumentation through a new
    `instrumentation` option (`ServerInstrumentationOptions | false`). The server
    resolves request IDs and trace context before user hooks and context
    creation, passes them to context factories as `requestId` and `trace`,
    writes `x-request-id`/`traceparent` response headers by default, and records
    request/error events into the instrumentation port resolved from final ports
    (`ports.instrumentation`, then `ports.devtools`). The ambient request
    context (`enterActiveRequestContext` and friends) moved into
    `@beignet/core/server`.
  - `createUseCase(...)` instruments runs by default, resolving the
    instrumentation port from `ctx.ports` per run; opt out with
    `instrumentation: false`. App `onRun` observers run in addition.
  - `createInstrumentedAuditLog({ audit, instrumentation })` in
    `@beignet/core/ports` replaces `createDevtoolsAuditLog`.
  - `createServer(...)` gains `validateResponses` (default `true`) to skip
    route-owned response validation, mirroring the client option.
  - Removed from `@beignet/devtools`: `createDevtoolsHooks`,
    `createDevtoolsUseCaseObserver`, `createDevtoolsAuditLog`, and the
    trace/request-context modules. Apps now only need `createDevtoolsProvider()`
    plus the devtools route; deleting both leaves the rest of the app compiling
    and running unchanged.
  - `@beignet/next` cron and upload helpers resolve their instrumentation sink
    with `resolveProviderInstrumentationPort(ctx.ports)` instead of hardcoding
    `ports.devtools`.
  - `beignet create` templates generate the decoupled shape.

- 16cc113: Clarify the canonical route registration story and align generated starters on `app-context.ts`.
- be85ab2: Document Next.js App Router server component, hydration, client component, and route handler patterns.
- ac78cdf: Split the client `validate` config flag into `validateInput` (default false)
  and `validateResponses` (default true). Client-side input validation failures
  now throw a client-source `ContractError` with code `INPUT_VALIDATION_ERROR`
  and no HTTP status instead of a synthetic 422 `VALIDATION_ERROR`. Setting
  `validateResponses: false` returns success bodies as-is and classifies non-2xx
  responses structurally while keeping `INVALID_JSON` transport errors.
- cca08b1: Align generated apps and package docs around the canonical auth, policy, and AppContext model.
- d6ad8bb: Standardize generated client helpers around `client/index.ts`, add a typed
  React Query invalidation helper, and align package docs with the canonical app
  client entrypoint.
- a67c637: Add Beignet runtime boundary markers and extend `beignet lint` to catch client-safe roots that value-reach server-only code.
- 7b0f708: Add first-class outbox instrumentation and devtools visibility for delivered, retried, and dead-lettered messages.
- 493d23b: Add typed provider-contributed ports. `InferProviderPorts` (replacing
  `ProvidedPortsOfList`) merges the ports a provider list contributes so apps can
  type `ctx.ports` as `AppPorts & InferProviderPorts<typeof providers>` without
  casts. The curried `definePorts<AppPorts>()({ bound, deferred })` form replaces
  throwing stub boilerplate: deferred keys boot as descriptive placeholders and
  `createServer(...)` fails startup with the unbound key list (configurable via
  `onUnboundPorts: "error" | "warn" | "ignore"`). App-local providers can declare
  required ports, app context, and service-context input through the curried
  `createProvider<Requires, Context, ServiceInput>()` form, which types
  `setup({ ports, createServiceContext })` and lifecycle contexts end to end.
  CLI templates and `beignet make` generate and maintain the new forms.
- 8063d38: Rename the contract front door to `defineContract`/`defineContractGroup`, rename operational commands to tasks (`@beignet/core/tasks`, `defineTasks`, `runTask`, `beignet task run`, `beignet make task`, `server/tasks.ts`, `features/<feature>/tasks/`, `paths.tasks`), and standardize context binding: context-free declarations stay top-level (`defineEvent`), while context-bound definitions come from per-capability factories (`createListeners`, `createJobs`, `createSchedules`, `createNotifications`, `createTasks`) called once in `lib/`. Top-level context-generic `defineListener`, `defineJob`, `defineSchedule`, and `defineNotification` are removed.
- 192c6ad: Routes can bind a contract directly to a use case with `{ contract, useCase }` — status is inferred from a sole 2xx response, input defaults to merged path/query/body parts, and validated inputs are not re-parsed when the use case reuses the contract schema by reference. Full `handle` routes remain the escape hatch for headers, streaming, and multi-status responses.
- Updated dependencies [8bcb31f]
- Updated dependencies [d137044]
- Updated dependencies [ac78cdf]
- Updated dependencies [1a79090]
- Updated dependencies [82c48dc]
- Updated dependencies [303ba07]
- Updated dependencies [493d23b]
- Updated dependencies [89390fe]
- Updated dependencies [e9c3209]
- Updated dependencies [493d23b]
- Updated dependencies [192c6ad]
- Updated dependencies [255527d]
  - @beignet/web@0.0.4

## 0.0.3

### Patch Changes

- 254ef6d: Add scoped route hooks for route and route-group policy, update auth hooks to expose public/optional/required route-hook factories, and teach CLI route inspection about curried route groups.
- 4cb1784: Add first-class upload router primitives, a typed browser upload client, a
  React upload adapter, Next.js upload route helper, S3-compatible direct upload
  signing, devtools upload watcher support, an upload generator, and a
  first-class `beignet make feature` command with optional policy, event, job,
  and upload artifacts for the standard vertical slice. Add first-class job retry
  helpers, outbox retry policy integration, and job retry/dead-letter devtools
  events. Add a Next.js outbox drain route helper and doctor warnings for
  serverless background-work footguns.
- 8bd9085: Add `@beignet/web` as a framework-neutral Web Fetch adapter, include a `@beignet/web/testing` route test harness, and have `@beignet/next` reuse the Web adapter for standard Request/Response handling.
- Updated dependencies [3160184]
- Updated dependencies [254ef6d]
- Updated dependencies [4cb1784]
- Updated dependencies [8bd9085]
  - @beignet/core@0.0.3
  - @beignet/web@0.0.3

## 0.0.2

### Patch Changes

- 90b29ad: Add pagination primitives and generate list responses with `items` and `page`.
- Updated dependencies [90b29ad]
- Updated dependencies [07fa19c]
- Updated dependencies [08bae67]
- Updated dependencies [730a818]
- Updated dependencies [a79f60c]
  - @beignet/core@0.0.2

## 0.0.1

- Initial Beignet release under the `@beignet` npm scope.
