SDK Spec Compliance Checklist

Copy Markdown View Source

Canonical spec: https://github.com/inngest/inngest/blob/main/docs/SDK_SPEC.md

Status Legend

StatusMeaning
plannedCovered by a local implementation plan but not implemented.
partialImplemented in part, or implemented with known spec gaps.
doneImplemented and covered by local tests.
deferredOptional or explicitly out of scope for the current plans.

Compliance Areas

Spec AreaStatusNotes
3. Environment VariablesdoneRequired environment variables, mode selection, URL overrides, and configuration precedence are covered by tests.
4.1. HTTP Headers And SigningdoneSDK/request-version headers, inbound current/fallback verification, outbound fallback retry/sticky behavior, and env-header gating are covered.
4.3. Sync RequestsdoneSync request shape, registration payload, registration failure behavior, deploy metadata forwarding, and dev-server smoke coverage are complete.
4.3. Function ConfigurationdoneFunction-level registration config renders spec keys for debounce, batching, rate limit, throttle, singleton, timeouts, idempotency, concurrency, and cancellation. Checkpoint fields remain deferred until checkpointing is implemented.
4.3. In-Band SyncdeferredIn-band sync is explicitly deferred until a later plan defines lifecycle and trigger behavior.
4.4. Call RequestsdoneCall request parsing around ctx.use_api, full payload retrieval, context/input shape, fetch failure behavior, and targeted stepId response behavior are covered.
4.5. Introspection RequestsdoneAuthenticated and unauthenticated introspection responses are implemented on the shared Plug/Phoenix serve endpoint.
5. StepsdoneStep memoization, opcode shape, targeted execution, StepError, and StepNotFound are covered for sequential execution.
6. MiddlewaredoneBehaviour-module middleware follows the current TypeScript SDK hook model with on_register, transform_*, wrap_*, and on_* lifecycle hooks across client/function registration, event sending, request handling, runs, and steps.
7. ModesdoneCloud/dev mode selection and precedence are covered by tests.
8. ConnectdeferredOptional capability; do not advertise until implemented.
9. StreamingdeferredOptional capability; do not advertise until implemented.
10. CheckpointingdeferredOptional capability; do not advertise until implemented.
5. Steps: Advanced RecoverydeferredFull out-of-order stack recovery, parallel branch reconstruction, and spec-complete parallel step execution/recovery are deferred beyond the sequential targeted-step recovery already implemented.
5.3.6. AI GatewaydeferredOptional step capability; do not advertise until implemented.
5.3.7. Gateway HTTP FetchdeferredOptional step capability; do not advertise until implemented.
11. Failure HandlerspartialThis SDK currently exposes a failure handler convention, but later work should verify registration shape and runtime behavior against the spec.

Deferred Decisions

DecisionStatusNotes
Middleware client struct configdoneMiddleware attaches to client modules/runtime structs, and function-level middleware composes after client middleware.
ConnectdeferredOptional capability; do not advertise until implemented.
StreamingdeferredOptional capability; do not advertise until implemented.
CheckpointingdeferredOptional capability; checkpoint registration fields remain deferred until checkpoint runtime behavior is implemented.
AI GatewaydeferredOptional step capability; do not advertise until implemented.
Gateway HTTP FetchdeferredOptional step capability; do not advertise until implemented.
In-band syncdeferredDeferred until a later plan defines lifecycle and trigger behavior.
Trust probedeferredDo not advertise through introspection until a separate trust probe feature exists. Signed introspection alone is not sufficient.