Source status: no status is stated in the source document, so none is assigned here. Do not treat this page as a finalized specification. The normative rules are in the Technical Specification.
Build and Deployment System¶
The language will provide reproducible builds and verification-aware deployment.
1. Reproducible Builds¶
- Identical source code and dependencies should produce identical build outputs where the target permits.
- Dependency versions must be locked.
- Compiler versions and build configurations must be recorded.
- Build artifacts must have unique cryptographic hashes.
2. Verification Records¶
Every build must produce a verification report containing: - Source version and hash. - Compiler version. - Dependency versions. - Successful checks. - Failed checks. - Unverified properties. - Test results. - Formal verification evidence.
3. Build Restrictions¶
- Failed mandatory checks must block the build.
- Required verification failures must block verified-release status.
- Unverified properties must remain visible.
- Build artifacts must be traceable to their source code and verification records.
4. Deployment Integrity¶
- Deployment must use the exact artifact that passed verification.
- Artifacts must not be silently modified after verification.
- Deployment permissions must be explicit.
- Rollback must be supported.
- Deployment failures must be reported explicitly.
5. Release Classification¶
Builds should have distinct classifications:
- DEVELOPMENT: Intended for development and debugging.
- VALIDATED: Passed mandatory compiler and validation checks.
- VERIFIED: Satisfied all required verification criteria.
- RELEASED: An approved artifact has been deployed.
Design Goal¶
Software must have a traceable chain from source code through compilation and verification to deployment. No release should inherit a verification status from a different build.
Source and authority¶
This page migrates BUILD.md in full. It is an explanatory / implementation document, not the normative specification. Where it simplifies a rule, the Technical Specification governs. The original file is preserved in source-original/LANG/.