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