- reflowed long lines (texts unchanged; generated launcher/PowerShell/README texts byte-identical)
- CONTRIBUTING, SECURITY, CODE_OF_CONDUCT, THIRD_PARTY_NOTICES; pyproject metadata (SPDX licence, authors, urls,
classifiers, keywords)
- maintainer-only notes moved to a git-ignored CLAUDE.local.md; CLAUDE.md facts updated
- README: what kinds of apps run and how; INSTALL: PC VR and Files wording, new labels
- New analysis signals: MR-only (passthrough required + boundaryless), required hand tracking, CryEngine,
Unreal version, which libs reference com.oculus.os, data size.
- Evidence-based detect() rules (force passthrough, scene emulation, meta permissions, controller passthrough,
space warp for heavy OVRPlugin games, nodebug for old UE4 / Unreal Meta XR Audio, oculusos, Unity MSAA,
CryEngine VRS config). With the catalog switched off they reproduce 33/34 verified recipes
(scripts/eval_heuristics.py); Phantom's no-ForceQuit build stays a runtime (triage) finding.
- Patch.applies(): GUI and CLI hide patches that can't matter for a game (engine/XR/graphics), with a
show-all toggle; enabled patches are always shown.