Active implementation work uses:
local/continue-project
Do not develop directly on main for this implementation program.
Remote pushes require explicit authorization.
Use the following order when making implementation decisions:
docs/axiom-spec-0.1.mddocs/axiom-language.mddocs/architecture.mddocs/self-hosting.mddocs/version-roadmap.mdROADMAP.mdDocumento sin título.txtfor the wider AXIOM SYSTEMS program.
The master roadmap is read-only for this repository work.
Do not preserve historical behavior merely because the prototype already implements it.
When historical behavior conflicts with the canonical AXIOM 0.1 design, migrate the implementation toward the specification and add a conformance test for the intended behavior.
Prefer small, meaningful commits.
A milestone should normally contain:
- implementation;
- tests;
- documentation;
- reproducibility evidence where relevant.
Avoid mixing unrelated refactors with language-semantic changes.
Before a milestone is considered complete, run the relevant checks:
python -m pytest
cargo fmt --manifest-path native/Cargo.toml -- --check
cargo clippy --manifest-path native/Cargo.toml --all-targets -- -D warnings
cargo test --manifest-path native/Cargo.toml
git diff --checkUse additional conformance tests for canonical AXIOM 0.1 syntax and semantics as they become available.
The historical Python and Rust implementations are bootstrap infrastructure.
Do not create new permanent compiler architecture that depends on either implementation unless the dependency is explicitly documented as a temporary bootstrap boundary.
Every removed dependency must be replaced by an implementation that is tested and reproducible.
Documentation is part of the implementation.
When a semantic decision changes:
- update the canonical specification;
- update the language documentation;
- update the relevant architecture or roadmap document;
- add or update executable conformance tests.
Keep compiler layers explicit and small.
Prefer deterministic behavior.
Diagnostics should explain the semantic problem and identify the source location.
Do not silently guess ambiguous programmer intent.
Before merging a branch into main, verify:
- the implementation matches the canonical specification;
- tests pass;
- generated artifacts are reproducible where required;
- documentation is current;
- the master roadmap was not modified unintentionally.
No push is implied by local completion.