API Schema Source of Truth
The orchestrator's OpenAPI schema is exported from relaymd.orchestrator.main:create_app.
Shared payload model definitions are still maintained in relaymd.models:
packages/relaymd-core/src/relaymd/models/api.pypackages/relaymd-core/src/relaymd/models/job.pypackages/relaymd-core/src/relaymd/models/worker.pypackages/relaymd-core/src/relaymd/models/enums.py
Typed client code for CLI/worker is generated into:
packages/relaymd-api-client/src/relaymd_api_client/
The generated package source is not committed. Regenerate it whenever API contracts change.
Transition-sensitive endpoints now also expose a typed 409 payload (JobConflict) for invalid
or stale state transitions.
Bootstrap workspace (recommended):
Regenerate schema + client only:
When adding or changing API fields, update shared models and router contracts first, then regenerate the client package.