Repository navigation
Release v0.9.1
footy-data-kit v0.9.1
Summary
- Tightened existing generated data labels ahead of v1 by fixing reprieved-row flags and replacing generic overview tier titles with canonical league names.
- Added verifier coverage so future releases fail when a row note says a club was reprieved but
wasReprievedis not set. - Updated roadmap and next-work docs to reflect the post-v0.9.0 baseline and the v0.9.1 correctness scope.
Breaking Changes
None.
Data Changes
- Rows with notes such as
Reprieved from re-electionorReprieved from relegationnow setwasReprieved: true. - Generic overview metadata titles such as
League tablesare replaced with canonical season/level labels includingPremier League,Championship,League One,League Two, andConference Premier. - Source
leagueIdvalues remain unchanged so consumers can still inspect the original Wikipedia heading identity. - The legacy promotion aggregate was regenerated from source and now drops several stale top-flight relegation flags/lists where the current source no longer marks those clubs as relegated:
1892:tier1,1893:tier1,1894:tier1,1895:tier1,1896:tier1, and1987:tier1.
Bug Fixes
- Fixed reprieve detection in the shared table parser and typed output normalizer.
- Fixed generated tier metadata labels for overview pages whose source heading is generic but whose season/level position is unambiguous.
Validation
- Added focused Jest coverage for reprieved row parsing, typed entry normalization, overview metadata title canonicalization, and verifier note/flag consistency.
- Added a data verifier check for rows with reprieve notes and missing
wasReprievedflags.
Consumer Notes
- No schema shape change is included in this release.
wasRelegatedsemantics are unchanged for reprieved-from-relegation rows; this release adds the missingwasReprievedflag so consumers can distinguish those rows.- This is not a tier 5 or level 6 backfill release.
Known Limitations
- The 1957-58 Third Division North/South restructure still needs a v1 decision on whether bottom-half placement into the new Fourth Division should remain represented as ordinary relegation or gain more explicit restructure-placement metadata.
- Lower-tier historical coverage beyond the currently generated dataset remains deferred until after v1 readiness work.
Published Data
- Season coverage: 1888-2025 (138 season records)
- League table records: 438 tier tables
- Club metadata records: 232
- Club status split: 196 active, 5 historical, 31 unknown
- Clubs with source-backed lifecycle events: 87
- Clubs with tracked absence explanations: 117
Data Change Summary
- Seasons before: 138
- Seasons after: 138
- Added seasons: 0
- Removed seasons: 0
- Changed seasons: 0
No season-table changes were detected after regenerating the release data.
Validation
Release data is regenerated from the Wikipedia overview pipeline and checked before publishing.
- Jest unit tests
- Wikipedia integration tests
- ESLint
- Prettier format check
- FootballData structural validation
- Club continuity and historical-reason validation
- Table points-order validation, with known points-per-game and source-order exceptions explicitly exempted
Assets
all-seasons.jsonall-seasons.min.jsonwiki_overview_tables_by_season.jsonwiki_overview_tables_by_season.min.jsonclub-metadata.jsonrelease-diff.jsonrelease-diff.mdrelease-notes.md
The detailed machine diff is attached as release-diff.json; the compact markdown diff is attached as release-diff.md.