Abdessamad Derraz
a5f549a1c6
fix: name rom members as their source names them
...
Four archives carried member names no MAME version uses. Each is decided
against MAME 0.289 at the revision the profiles cite:
manager.zip 1 -> 01 crvision.cpp:957
sys573.zip 700a01(gchgchmp).22g -> , ksys573.cpp:3575
cedmag.zip Magnet-Master-VID-E03.BIN cedar_magnet.cpp:1040
advision.zip b225__/b8223__ prefixes cut advision.cpp:456,459
Content is untouched: every member keeps its crc32 and size. The
archives are rebuilt with torrentzip so their bytes depend only on their
contents, which is the repository convention (51 of 60 sampled archives)
and what two of these four already were.
Batocera, RetroBat and RetroDECK pin the older naming, so the upstream
archives stay verbatim under .variants/ and resolve_local_file serves
each layer the copy it expects.
2026-08-10 13:35:53 +02:00
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