D297 - SDK versions come from an external dictionary and are validated per generation
Status: decided Date: 2026-09-26
The SDK version an eboot or module declares is named by alias
(SDK, e.g. prospero, orbis) and
resolved through selfish/data/sdk-versions.toml, which
selfish stamps into the process and module parameter segments and
rejects when it does not match the target generation.
Why: the loader enforces a minimum SDK version, and a zero or wrong value aborts startup. A named table is legible and updatable without recompiling, and the generation check refuses an invalid combination at build time.
Rejected: hardcoded magic version numbers - opaque and unvalidated.