Inference completion callback (internal)
Not part of the public API. Called by the inference plane when a submitted unit of
work settles. Authenticated by an HMAC-SHA256 of the raw body in X-Modal-Signature,
keyed with a shared secret; unsigned or stale (> 5 min skew) calls are rejected with
401.
The callback is what closes the billing loop: units_actual is the real billable count
(the per-detection meter is only knowable here), and the gateway commits that amount and
releases the rest of the reservation in the same transaction. Deliveries are at-least-once
and must be treated as idempotent on (job_id, status).
Headers
t=<epoch>,v1=<hex hmac-sha256 of "<t>.<raw body>">.
Body
Payload posted by the inference plane when a unit of work settles. Internal contract, not part of the public API surface.
Job identifier — job_ followed by a base58 string.
^job_[1-9A-HJ-NP-Za-km-z]{8,32}$"job_3ZxK9pQr7TnW"
Terminal state reached by the inference call.
succeeded, failed Storage key of the serialised result written by the worker. Required when status is succeeded.
"s3://carhub-out/2026/08/16/job_3ZxK9pQr7TnW.json"
Billable units really consumed. Only the worker knows this for the per-detection meter; the gateway commits exactly this amount and releases the rest.
x >= 0Build that produced the output, surfaced on the job.
"plate-reader@2026-08-01"
Populated when status is failed.
Identifier on the inference provider's side, for cross-system tracing.
Wall-clock time of the inference call, fed into latency metrics.
x >= 0Response
Callback accepted.