Abdessamad Derraz
597a8ff919
fix: quote rom and core names in yaml
...
YAML 1.1 reads an unquoted 01 as the integer 1 and 81 as 81, so the
manager set stopped naming the file its driver opens and the API
published "cores": [2048] as a number where consumers match strings.
Ground truth from MAME 0.289 at the revision the profile cites:
src/mame/vtech/crvision.cpp:957 loads "01" and "23".
The root cause was the scraper: _hash_merge wrote these names through an
f-string, so quoting the profiles alone would be undone on the next
refresh. _yaml_scalar now quotes every name, archive and description it
writes.
2026-08-10 13:35:42 +02:00
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
Abdessamad Derraz
a3cb6c59ae
chore: rebuild database, manifests and docs
2026-08-08 11:18:37 +02:00
Abdessamad Derraz
7bb9c61037
feat: profile eleven standalone emulators
2026-08-08 11:17:29 +02:00
Abdessamad Derraz
ec51a2d6da
chore: cover commented bios flags in mame
2026-08-08 11:17:21 +02:00
Abdessamad Derraz
aaba118edb
fix: quote numeric rom names in mame sets
2026-08-08 11:17:21 +02:00
Abdessamad Derraz
5bc8033688
feat: profile scph5903 for beetle psx
2026-08-08 11:17:21 +02:00
Abdessamad Derraz
ccb9b3e94f
feat: add profile sync against upstream
2026-08-08 11:17:21 +02:00
Abdessamad Derraz
eb2c064518
fix: create scratch dir and scope catalog ratio
2026-08-08 11:05:23 +02:00
Abdessamad Derraz
b26a874966
fix: link only system icons upstream serves
2026-08-08 09:59:07 +02:00
Abdessamad Derraz
5c776d19fb
fix: count unsourceable files in the code ratio
2026-08-08 09:04:30 +02:00
Abdessamad Derraz
918d6bc7cd
refactor: fold coverage tables into two ratios
2026-08-08 08:50:16 +02:00
Abdessamad Derraz
3e7805f838
feat: show core requirements in coverage tables
2026-08-08 08:34:23 +02:00
Abdessamad Derraz
c860dd7666
chore: rebuild database, manifests and docs
2026-08-08 08:21:29 +02:00
Abdessamad Derraz
8fdc8128b8
refactor: drop unopened flycast bios archives
2026-08-08 08:11:58 +02:00
Abdessamad Derraz
c4dbade280
fix: ignore commented flags in mame drivers
2026-08-08 08:11:58 +02:00
Abdessamad Derraz
8aceb64e1a
feat: profile five standalone emulators
2026-08-08 08:11:53 +02:00
Abdessamad Derraz
0296668ec6
feat: add amstrad cpc x-ddos rom
2026-08-08 08:11:09 +02:00
Abdessamad Derraz
e749ac382b
feat: add bios variants from tosec sets
2026-08-08 08:11:09 +02:00
Abdessamad Derraz
d1e3667f75
feat: add roland mt-32 and sound canvas roms
2026-08-08 08:11:03 +02:00
Abdessamad Derraz
1fa0c655ae
feat: add qemu firmware set
2026-08-08 08:10:59 +02:00
Abdessamad Derraz
e4fb173997
fix: state gap scope without a numeric claim
2026-08-08 07:21:21 +02:00
Abdessamad Derraz
1b9acff2ad
fix: reject name hits with contradicting size
2026-08-08 07:09:49 +02:00
Abdessamad Derraz
3a4f8a5111
feat: publish source coverage beyond shipped cores
2026-08-08 07:00:46 +02:00
Abdessamad Derraz
09c43be11a
fix: rename fbneo archives to runtime names
2026-08-08 06:37:37 +02:00
Abdessamad Derraz
f3bf8f365c
chore: regenerate database and manifests
2026-08-08 06:19:38 +02:00
Abdessamad Derraz
56baa3f23f
feat: profile cpcemu and dosbox variants
2026-08-08 06:19:38 +02:00
Abdessamad Derraz
25f8537a4a
fix: point manifest entries at a fetchable file
2026-08-08 06:19:38 +02:00
Abdessamad Derraz
c51fc233f9
fix: avoid shared scratch path in large-file cache
2026-08-08 06:19:38 +02:00
Abdessamad Derraz
0a59af3279
feat: add advancemame event definitions
2026-08-08 06:19:38 +02:00
Abdessamad Derraz
ed45cd4a76
fix: drop advancemame language file entry
2026-08-08 06:19:38 +02:00
Abdessamad Derraz
cdd2905c63
fix: name fbneo archives as the code opens them
2026-08-08 06:19:38 +02:00
Abdessamad Derraz
b586eddb2a
feat: report pack contents instead of list coverage
2026-08-08 05:42:13 +02:00
Abdessamad Derraz
38d8e78eb3
chore: drop es-de frontend profile
2026-08-08 04:58:59 +02:00
Abdessamad Derraz
a483ed93b0
refactor: stream zip rebuild instead of buffering
2026-08-08 04:40:07 +02:00
Abdessamad Derraz
4fac3bb0f6
feat: profile eight standalone emulators
2026-08-08 04:24:23 +02:00
Abdessamad Derraz
69d53c97c9
feat: add launchbox detection to installer
2026-08-08 04:24:17 +02:00
Abdessamad Derraz
393d32ed84
chore: pin docs theme and check site links
2026-08-08 04:24:11 +02:00
Abdessamad Derraz
a0ca5f208a
feat: validate emulator profiles in CI
2026-08-08 04:24:11 +02:00
Abdessamad Derraz
5f60138dce
docs: correct and complete the documentation set
2026-08-08 04:24:08 +02:00
Abdessamad Derraz
45dbc30301
feat: lock pack artifacts during pipeline runs
2026-08-08 04:24:03 +02:00
Abdessamad Derraz
f008568108
feat: publish dump provenance page
2026-08-08 03:23:35 +02:00
Abdessamad Derraz
018709c624
chore: regenerate database with three catalogs
2026-08-08 02:48:10 +02:00
Abdessamad Derraz
48b415e0d5
feat: import no-intro and tosec dump catalogs
2026-08-08 02:48:06 +02:00
Abdessamad Derraz
3514622936
chore: regenerate database with provenance
2026-08-08 02:27:42 +02:00
Abdessamad Derraz
a741828f3c
feat: show verified dump badges
2026-08-08 02:25:44 +02:00
Abdessamad Derraz
f4b02c2a43
feat: join dump-catalog provenance in database
2026-08-08 02:25:44 +02:00
Abdessamad Derraz
933d258df5
feat: publish collection composition
2026-08-07 20:20:46 +02:00
Abdessamad Derraz
06515e5e20
chore: add psp ppge atlas asset
2026-08-07 20:08:41 +02:00
Abdessamad Derraz
7bb9108892
docs: merge gap analysis pointers in legend
2026-08-07 19:53:18 +02:00
Abdessamad Derraz
e1a0907583
docs: define source-backed in readme legend
2026-08-07 19:49:19 +02:00