Commit Graph
722 Commits
Author SHA1 Message Date
Abdessamad Derraz 5d417c8229 feat: add data contract validation
JSON Schemas for the database, install and pack manifests, target
manifests, site API envelopes and stats, plus the semantic invariants a
schema cannot express: declared totals matching their lists, no
destination both installed and omitted, database keys matching their
sha1. validate_site.py checks the rendered HTML for metadata, headings,
image alternatives, duplicate ids and unresolved local links.

Pack manifests are read from inside the generated archives, where
generate_pack writes them, rather than from a dist/ glob that matches
nothing.

Emulator and platform schemas gain additionalProperties: false, and
cores[] plus contents[].name must be strings: an unquoted 81 or 01 in
YAML parses as a number and stops matching the upstream name.
2026-08-10 13:35:33 +02:00
Abdessamad Derraz 45f89cc6c0 feat: add region filters and profiles 2026-08-09 14:15:56 +02:00
Abdessamad Derraz 1c537c3a30 fix: keep mame refresh to profiles on mame's tree 2026-08-08 13:52:25 +02:00
Abdessamad Derraz 731096cf12 chore: refresh mame bios refs from 0.289 2026-08-08 13:50:25 +02:00
Abdessamad Derraz 89211003cb fix: refresh mame refs when a driver line moves 2026-08-08 13:48:54 +02:00
Abdessamad Derraz 1232e43e7a chore: recale refs after the parsing fixes 2026-08-08 13:44:47 +02:00
Abdessamad Derraz fa6de11133 feat: parse colon continuations and header stems 2026-08-08 13:44:03 +02:00
Abdessamad Derraz 587aefd282 fix: name the external project on every dosbox ref 2026-08-08 13:41:28 +02:00
Abdessamad Derraz dde5509a39 chore: recale refs followed to their subject 2026-08-08 13:40:37 +02:00
Abdessamad Derraz 17da2ae76f feat: follow refs to a unique declared value 2026-08-08 13:39:54 +02:00
Abdessamad Derraz c8e05013d9 feat: follow a ref when its subject moved with it 2026-08-08 13:38:30 +02:00
Abdessamad Derraz f4a8d8c54b chore: rebuild manifests and docs 2026-08-08 13:36:57 +02:00
Abdessamad Derraz 31c4bee36b fix: point amiberry kickstart refs at candidates 2026-08-08 13:36:51 +02:00
Abdessamad Derraz c42209fa96 fix: point three refs at their real locations 2026-08-08 13:35:19 +02:00
Abdessamad Derraz 82b510de0d fix: relocate gear family bios refs 2026-08-08 13:23:06 +02:00
Abdessamad Derraz 642e9ea9ca fix: mark ecwolf data as standalone only 2026-08-08 13:20:54 +02:00
Abdessamad Derraz 7755367787 docs: document tag-pinned profile handling 2026-08-08 13:17:52 +02:00
Abdessamad Derraz b00ca4d237 docs: state only what the data supports 2026-08-08 13:16:17 +02:00
Abdessamad Derraz 4c5ca17682 feat: judge tag-pinned profiles on their own revision 2026-08-08 13:12:35 +02:00
Abdessamad Derraz 088caef45e docs: use one plain vocabulary across surfaces 2026-08-08 12:59:46 +02:00
Abdessamad Derraz 89fe022196 chore: recale reviewed refs for three cores 2026-08-08 12:54:03 +02:00
Abdessamad Derraz c94771459c chore: rebuild manifests and docs 2026-08-08 12:51:42 +02:00
Abdessamad Derraz 1fda81fb52 feat: record ares laseractive firmware hashes 2026-08-08 12:47:41 +02:00
Abdessamad Derraz 09d586e387 docs: document the ref anchoring strategies 2026-08-08 12:42:29 +02:00
Abdessamad Derraz 38e39af561 docs: say what each platform actually checks 2026-08-08 12:42:06 +02:00
Abdessamad Derraz b65ff255cb chore: recale reviewed refs for two cores 2026-08-08 12:38:47 +02:00
Abdessamad Derraz 7c8958e02b chore: recale refs with their annotations kept 2026-08-08 12:36:00 +02:00
Abdessamad Derraz 763c159a9f feat: rewrite annotated refs keeping their prose 2026-08-08 12:35:02 +02:00
Abdessamad Derraz 16331a1712 feat: report external citations as unverifiable 2026-08-08 12:30:37 +02:00
Abdessamad Derraz ba898063c6 chore: recale refs settled by the new anchors 2026-08-08 12:25:42 +02:00
Abdessamad Derraz dc4b23a883 feat: anchor on declared values when refs miss 2026-08-08 12:24:31 +02:00
Abdessamad Derraz 6b0306b43d feat: settle ambiguity by file line shift 2026-08-08 12:21:13 +02:00
Abdessamad Derraz 9982748e49 fix: realign refs with their pinned revision 2026-08-08 12:17:11 +02:00
Abdessamad Derraz 34876ba610 fix: keep refs and pin on the same revision 2026-08-08 12:16:01 +02:00
Abdessamad Derraz de19473f2c docs: document upstream and exporter base modules 2026-08-08 12:15:48 +02:00
Abdessamad Derraz ace32054f5 chore: recale profile refs onto upstream head 2026-08-08 12:12:29 +02:00
Abdessamad Derraz c585452d46 feat: resolve bare and annotated ref paths 2026-08-08 12:05:59 +02:00
Abdessamad Derraz 344599f7ef docs: name the wanted list for what it is 2026-08-08 11:57:22 +02:00
Abdessamad Derraz 4d34cac45f chore: anchor profile refs to source commits 2026-08-08 11:52:28 +02:00
Abdessamad Derraz e39a6c5894 chore: wrap long test lines 2026-08-08 11:52:28 +02:00
Abdessamad Derraz 8ffe30efc8 feat: parse annotated and mode-keyed refs 2026-08-08 11:50:25 +02:00
Abdessamad Derraz b82b64472a chore: anchor profile refs to source commits 2026-08-08 11:47:37 +02:00
Abdessamad Derraz 3abeb77a48 fix: match the scoped provenance headline 2026-08-08 11:47:31 +02:00
Abdessamad Derraz a17945ec66 fix: match source_ref lines by value 2026-08-08 11:47:21 +02:00
Abdessamad Derraz 87c39c877e fix: scope the provenance ratio to system files 2026-08-08 11:43:50 +02:00
Abdessamad Derraz 7f8a277721 fix: retry transient network failures 2026-08-08 11:37:15 +02:00
Abdessamad Derraz af52c7ed24 chore: rebuild manifests and docs 2026-08-08 11:31:05 +02:00
Abdessamad Derraz 19a69bbd88 fix: treat only quota signals as fatal 2026-08-08 11:27:40 +02:00
Abdessamad Derraz 2ebe29a449 fix: survive a single forge failure 2026-08-08 11:23:49 +02:00
Abdessamad Derraz 8957f86d46 fix: send github token to github only 2026-08-08 11:23:49 +02:00