Manifest Format
A service's Manifest is one JSON document (format 1): its bounded contexts, their aggregates with the commands and events they speak, their subscriptions, the framework's error codes, and the JSON Schema 2020-12 of every payload under $defs. A module's fragment (META-INF/wow/manifest/<module>.json) has the same shape without service. This outline of every object and its keys is generated from the code that writes it, ManifestTree.
What the writer leaves out:
Absent optional values (a null description, unknown produces, derives, schedules or transformsTo, a fragment's service, a subscription's retry or job) are left out, not written as null, and so are a subscription source's nullableState and a command's mounted when false, an aggregate's ownership when it is OWNER, the default, and its retired events when it has none.
Manifest
formatservice: object; left out when absent or at its defaultnameversion
contexts: array ofContexterrors: array ofError$defs
Context
namedescriptionaggregates: array ofAggregatesubscriptions: array ofSubscriptionpublished: array of objectsaggregatetopicincludeState
errors: array ofError
Error
codestatusdescription
Aggregate
namedescriptionstate: objectschemafingerprint
snapshot: objectenabledstateRevision: left out when absent or at its default
commands: array of objectsnamealiasesschemacreationproducesroutes: array ofRoutemounted: left out when absent or at its defaulttransformsTodescription
events: array of objectsnamealiasesrevisionschemadescription
lifecyclequeries: array of objectsmodelroutes: array ofRoute
schedulesownership: left out when absent or at its defaultretired: left out when absent or at its default
Route
methodpath
Subscription
namekindsource: objectcontextaggregateseventsnullableState: left out when absent or at its default
function: objectkindcontextprocessorname
derivesrejectedcommittedcallsstart: left out when absent or at its defaultschedulesretry: object; left out when absent or at its defaultmaxAttemptsinitialBackoffmaxBackofftimeoutrecoverableunrecoverable
job: object; left out when absent or at its defaultnamecronzonescopeshardedmisfire