initialize. A complete, valid manifest (validated in CI against world-manifest.schema.json; the file is examples/v0.1/world-manifest.json):
awp:world-manifest
$refs inside params_schema resolve against the manifest’s own $defs; shared primitives (pose, timestamps) come from the published common.schema.json. safety_policy is always a concrete object, never a reference.
- Every
channelandaction_typereferenced by an embodiment MUST be defined in the top-level lists.[AWP-MAN-001] params_schemavalues MUST be valid JSON Schema (2020-12).[AWP-MAN-002]- Manifests MUST be stable for the life of the connection; changes require re-
initialize.[AWP-MAN-003] capabilitiesis an open map. v0.1 standard keys:seed,snapshot,replay,command_channels,task. Unknown keys MUST be ignored; vendor keys usex-<vendor>.naming. New standard keys arrive by RFD (RFD process).[AWP-MAN-004]- Worlds declaring the
command_channelscapability additionally listcommand_channels— agent→world channels, same schema as observation channels — see command channels.[AWP-MAN-005] - Worlds offering
lockstepMUST declaretick_policy(on_tick) andtick_authority(any_session|barrier); worlds offeringstreamingMUST declaresafety_policy.safe_stateand MAY declaresafety_policy.max_basis_age_ms(time models, safe state).[AWP-MAN-006] - Embodiments that may be bound together by one session share a
multi_bind_group;session.opennames them inembodimentsand submissions then carryembodiment_id(AWP-EMB-005).[AWP-MAN-007]