ObjectStackObjectStack

Events Dlq schema — Kernel Protocol reference

Events Dlq schemas of the ObjectStack Kernel Protocol: DeadLetterQueueEntry, EventLogEntry — each property with its type, default and a TypeScript example.

Source: packages/spec/src/kernel/events/dlq.zod.ts

TypeScript Usage

import { DeadLetterQueueEntrySchema, EventLogEntrySchema } from '@objectstack/spec/kernel';
import type { DeadLetterQueueEntry, EventLogEntry } from '@objectstack/spec/kernel';

// Validate data
const result = DeadLetterQueueEntrySchema.parse(data);

DeadLetterQueueEntry

Properties

PropertyTypeRequiredDescription
idstring✅Unique entry identifier
event{ id?: string; name: string; payload: any; metadata: object }✅Original event
error{ message: string; stack?: string; code?: string }✅Failure details
retriesinteger✅Number of retry attempts
firstFailedAtstring✅When event first failed
lastFailedAtstring✅When event last failed
failedHandlerstringoptionalHandler ID that failed

Nested Shape: DeadLetterQueueEntry.event

PropertyTypeRequiredDescription
idstringoptionalUnique event identifier
namestring✅Event name (dot notation by convention, e.g. user.created, order.paid; the platform-checked event vocabulary is the closed DataEventType / BulkDataEventType enums)
payloadany✅Event payload schema
metadata{ source: string; timestamp: string; userId?: string; tenantId?: string; … }✅Event metadata

Nested Shape: DeadLetterQueueEntry.error

PropertyTypeRequiredDescription
messagestring✅Error message
stackstringoptionalError stack trace
codestringoptionalError code

EventLogEntry

Properties

PropertyTypeRequiredDescription
idstring✅Unique log entry identifier
event{ id?: string; name: string; payload: any; metadata: object }✅The event
statusEnum<'pending' | 'processing' | 'completed' | 'failed'>✅Processing status
handlersExecuted{ handlerId: string; status: Enum<'success' | 'failed' | 'timeout'>; durationMs?: integer; error?: string }[]optionalHandlers that processed this event
receivedAtstring✅When event was received
processedAtstringoptionalWhen event was processed
totalDurationMsintegeroptionalTotal processing time

Nested Shape: EventLogEntry.event

PropertyTypeRequiredDescription
idstringoptionalUnique event identifier
namestring✅Event name (dot notation by convention, e.g. user.created, order.paid; the platform-checked event vocabulary is the closed DataEventType / BulkDataEventType enums)
payloadany✅Event payload schema
metadata{ source: string; timestamp: string; userId?: string; tenantId?: string; … }✅Event metadata

Nested Shape: EventLogEntry.handlersExecuted[number]

PropertyTypeRequiredDescription
handlerIdstring✅Handler identifier
statusEnum<'success' | 'failed' | 'timeout'>✅Handler execution status
durationMsintegeroptionalExecution duration
errorstringoptionalError message if failed

On this page