Skip to content

RFC 089: record how ontology types outside the enum are handled - #173

Merged
annak-k merged 1 commit into
mainfrom
rfc-089-out-of-enum-types
Oct 1, 2026
Merged

annak-k merged 1 commit into
mainfrom
rfc-089-out-of-enum-types

Conversation

@annak-k

@annak-k annak-k commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

Preview

What does this change?

Resolves wellcomecollection/platform#6537.

Open question 6 scoped the type enum to Work / Image / Item but did not say what happens to registry rows of other types, such as Concept, which the API was returning in responses that failed its own spec. It now records the behaviour implemented in wellcomecollection/catalogue-api#1023: a canonical id whose original row is outside the enum is a 404, and other out-of-enum rows are omitted from the identifier set. The original is chosen before rows are omitted, so the top-level type from open question 7 keeps its meaning.

The status codes paragraph, the ETag description in the caching section and the "aliases toggle" out-of-scope note are updated to match.

How to test

Read the amended open question 6 and status codes paragraph in the preview above, and compare them with identifiers/spec/openapi.yaml in catalogue-api. validate_rfc.py and create_table_summary.py --check-readme both pass locally.

How can we measure success?

The RFC and the deployed spec describe the same behaviour for out-of-enum types.

Have we considered potential risks?

Documentation only. No decisions other than open question 6 change.

Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@annak-k
annak-k merged commit 8b6cc5a into main Oct 1, 2026
7 checks passed
@annak-k
annak-k deleted the rfc-089-out-of-enum-types branch October 1, 2026 14:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Stop the Identifiers API emitting ontology types outside its own contract enum

2 participants