A licence audit found that no published ZIP carries the licence texts its parts
require, and that three release tags name commits older than the ones built.
- tooling/notices/components.json lists every part of the title, its licence,
its licence texts and where its source is.
- tools/stage-notices.py (run by tools/build-title.sh before the manifest)
writes licenses/ into the title folder, tying every executable to its
source revision; tools/check-notices.py checks it in the integration gate.
- tools/source-bundle.py archives each part's source at that revision.
- LICENSE (GPLv3), docs/RELEASING.md, docs/releases/SOURCE_CORRESPONDENCE.md,
README licence and trademark sections, docs/RPCS3_PORT.md licence facts,
runtime/README.md (what libc.prx contains, as verified).
Evidence: stage-notices on a copy of the current 16-core build staged 28 parts,
every core equal to its build report; check-notices passes, --release fails on
uncommitted source; source-bundle built 10 archives whose sums verify;
make test-unit 83 OK; lint-shell PASS; libc.prx rebuilt from committed files is
byte-identical to every release's (e6ff45d1...).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>