Difficulty: Hard
Type: Documentation
Summary
Generate and publish an OpenAPI JSON artefact for the access API so SDKs, integrations, and contributors can rely on a stable machine-readable API contract.
Current Behaviour
Fastify route schemas may power Swagger UI at runtime, but there is no clearly versioned OpenAPI artefact committed or produced in CI.
Expected Behaviour
The repository should produce an OpenAPI JSON file that can be validated in CI and used by SDK tooling.
Suggested Implementation
Add a script that builds the Fastify app, serialises the OpenAPI specification, and writes it to docs/openapi.json or a generated artefact directory. Add CI validation to catch schema generation failures.
Files or Areas Likely Affected
apps/access-api/src/app.ts
apps/access-api/src/routes.ts
apps/access-api/package.json
docs/openapi.json
.github/workflows/
Acceptance Criteria
Additional Notes
This should complement route schemas and sdk-lite contract tests.
Difficulty: Hard
Type: Documentation
Summary
Generate and publish an OpenAPI JSON artefact for the access API so SDKs, integrations, and contributors can rely on a stable machine-readable API contract.
Current Behaviour
Fastify route schemas may power Swagger UI at runtime, but there is no clearly versioned OpenAPI artefact committed or produced in CI.
Expected Behaviour
The repository should produce an OpenAPI JSON file that can be validated in CI and used by SDK tooling.
Suggested Implementation
Add a script that builds the Fastify app, serialises the OpenAPI specification, and writes it to
docs/openapi.jsonor a generated artefact directory. Add CI validation to catch schema generation failures.Files or Areas Likely Affected
apps/access-api/src/app.tsapps/access-api/src/routes.tsapps/access-api/package.jsondocs/openapi.json.github/workflows/Acceptance Criteria
Additional Notes
This should complement route schemas and sdk-lite contract tests.