release notes
v0.8.2
Added source-backed club lifecycle metadata and expanded validation around club continuity, metadata contracts, and table ordering.
Release
Summary
- Added source-backed club lifecycle metadata so consumers can distinguish active clubs from historical identities, dissolved clubs, mergers, relocations, phoenix clubs, and clubs that have dropped outside the tracked league coverage.
-
Promoted the historical club review path into the data workflow: reviewed lifecycle
facts now live in the curated source config and are regenerated into
club-metadata.jsoninstead of being patched into generated output.
Breaking Changes
None.
Data Changes
- Expanded generated club metadata with source-backed lifecycle facts for active, historical, dissolved, merged, relocated, phoenix, and lower-coverage clubs.
-
Regenerated reviewed lifecycle facts through the curated source config and
wiki:club-seedflow instead of patching generated output by hand.
Bug Fixes
None.
Validation
- Expanded data validation around club continuity, historical-reason coverage, generated metadata contracts, and table ordering.
- Added a points-order guard for league tables so a regenerated scrape fails when a lower row has more points than the row above it. The 2019-20 curtailed tiers remain explicitly exempt because those standings were finalized by points per game.
Consumer Notes
- No intentional schema break is included in this release.
-
Season table rows still expose scraped/canonical team names; club metadata remains a
sidecar keyed by
clubId. -
derived.coverageGapsdescribes gaps in this dataset's observed league-table coverage. It should not be read as confirmed club inactivity unless a source-backed lifecycle or absence explanation says so. -
Clubs that fell below the currently tracked tiers may still be active; use
status.current, lifecycle events, and absence explanations together.
Known Limitations
- Lower-tier historical coverage still needs more explicit vetting before it should be treated as equally mature across every tier.
-
Club metadata is a sidecar; season table rows do not yet embed
clubId.