OvertureMaps / OvertureMaps/schema
Support extensions for existing Overture models
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 213
- Forks
- 22
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 31
Description
Since the discovery rework (#463), third-party packages can register new Pydantic models through overture.models.
What is still missing is a way for those packages to add validated fields to existing Overture models. The current ext_* convention accepts arbitrary values, does not include them in the model schema, and is intended for deprecation.
An extension model should be able to declare an optional typed field, identify the models it extends, and register that declaration through overture.models. Loading the registered schemas should incorporate the field into its target models so it participates in validation and all schema-derived tooling. The extension should also remain usable independently for payloads stored separately and joined to base features later.
Once this mechanism exists, the unvalidated ext_* convention can be removed.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the overture.models registration and schema-loading entry points, then trace the current ext_* convention and review discovery rework #463. Done means a registered extension declares typed optional fields and target models, validation and schema-derived tooling include those fields, standalone payload use remains possible, and the unvalidated convention is removed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100