opensafely-core / opensafely-core/opencodelists
Link metadata description to codelist version
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 60
- Forks
- 16
- Avg merge
- 4d 12h
- Merged PRs (30d)
- 17
Description
Why are we doing this?
Currently, metadata descriptions are attached to the entire codelist, rather than to specific versions of the codelist. This creates a few issues:
- Users cannot add or update metadata when a new version of a codelist is created.
- As a result, users who want to understand what changed between versions need to do extra work (e.g. manual comparisons or reaching out to the author).
By linking metadata descriptions to individual codelist versions, we make it easier for users to:
- Update metadata as they iterate on a codelist.
- Clearly communicate the purpose or context of a specific version.
- Reuse or assess codelists without unnecessary guesswork.
How will we know when it's done?
- Each new version of a codelist will support its own metadata description.
- Existing codelists will be backfilled so that every version has a metadata entry (even if copied from the current description).
- When a user views a specific version of a codelist, the relevant metadata description will be shown alongside it.
What are we doing?
- Update the data model so that metadata descriptions are version-specific rather than codelist-wide.
- Migrate existing data by backfilling each version with the current description.
- Update the UI to display the correct metadata when users browse different versions.
- Ensure versioning workflows allow users to edit metadata when creating a new version.
Contributor guide
No contributing guide indexed for this repository
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 by tracing the codelist data model, version-creation workflow, migration setup, and UI used to browse versions in the repository. Done means each version has a metadata entry, existing data is backfilled, the matching description is displayed for each version, and new-version workflows allow metadata editing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend, database, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100