Problem
A compiler that rejects retired syntax can still load an older installed standard library containing that syntax. The resulting parse failure may look like a user-source error. The current update flow also removes the installed std before the replacement has been fetched and validated.
Scope
- Add language or compiler compatibility metadata to std/manifest.json.
- Validate compatibility before compiling an imported std module.
- Stage std updates in a temporary directory.
- Validate the manifest and Wave source corpus before replacing the installed copy.
- Atomically replace the installed std only after validation succeeds.
- Preserve the previous installation when download or validation fails.
- Produce a direct diagnostic with the installed and required compatibility revisions.
- Record enough install metadata to identify the source revision.
Completion criteria
Problem
A compiler that rejects retired syntax can still load an older installed standard library containing that syntax. The resulting parse failure may look like a user-source error. The current update flow also removes the installed std before the replacement has been fetched and validated.
Scope
Completion criteria