Repository navigation
v0.5.0
OpenCodifier v0.5.0
Released 2026-10-08 from commit 0fd6a1543c27 (full sha
0fd6a1543c27884fc757d3354c757da650ae7f5a, previous tag v0.4.0).
Highlights
— one bullet per user-visible change since v0.4.0, each citing its DECISIONS.md entry or CHANGELOG.md section.
Quality-gate receipts
just ci green at the release commit is the gate of record; the same gates
run line-for-line in the GitForge pipeline (.gitforge.yml, the platform of
record — a red GitHub Actions mirror is not a code-failure signal). Every
gate below needs its own receipt: a run id, or the local command output.
<receipt> is where that evidence goes; an unfilled receipt means the gate
did not run for this release.
| Gate | Command | Status | Receipt |
|---|---|---|---|
| Format | cargo fmt --all -- --check |
<PASS|FAIL> |
<receipt> |
| Lint | cargo clippy --workspace --all-targets -- -D warnings |
<PASS|FAIL> |
<receipt> |
| Tests | cargo test --workspace |
<PASS|FAIL> |
<receipt> |
| Docs | RUSTDOCFLAGS="-D warnings" cargo doc --workspace --no-deps + cargo test --doc |
<PASS|FAIL> |
<receipt> |
| Deps | cargo deny check |
<PASS|FAIL> |
<receipt> |
| Advisories | cargo audit |
<PASS|FAIL> |
<receipt> |
| Pattern scan | aegis --format json scan --file . --baseline .aegis/baseline.json (0 new) |
<PASS|FAIL> |
<receipt> |
| Coverage floor | cargo llvm-cov --workspace --lcov + scripts/coverage_floor.py … --floor 98.5 |
<PASS|FAIL> |
<receipt> |
| End-to-end | just e2e (serve + MCP over the real wire) |
<PASS|FAIL> |
<receipt> |
Artifacts
Built by just release-matrix (D24). Each row is backed by an attestation
beside the artifact; just release-verify re-checks every digest against the
bytes on disk.
| Target | Artifact | Bytes | SHA-256 | Linkage | Attestation |
|---|---|---|---|---|---|
aarch64-apple-darwin |
opencodifier |
5860416 | d054f790cb8cfa147af417ee8ff05f92510644f78fef427b1113f4a84174fedd |
unknown linkage | target/aarch64-apple-darwin/release/opencodifier.attestation.json |
aarch64-apple-ios |
libopencodifier_ffi.a |
30403008 | 1ce97d1d31bfe0253ff26b63da916f83c9b6598098d8485c17f58bfb1c3fc84a |
unknown linkage | target/aarch64-apple-ios/release/libopencodifier_ffi.a.attestation.json |
aarch64-linux-android |
opencodifier |
6426048 | 0f588fd2b64b401c0072dbe3bf164e6334aa14e6d7be2af2c76b0afb3f5c33a8 |
dynamic (interpreter /system/bin/linker64) | target/aarch64-linux-android/release/opencodifier.attestation.json |
aarch64-unknown-linux-gnu |
opencodifier |
4599136 | 29156b66f4b66e1bad722acb35258d3278df4239155fcd1f5eda7cbb533dbcbe |
dynamic (interpreter /lib/ld-linux-aarch64.so.1) | target/aarch64-unknown-linux-gnu/release/opencodifier.attestation.json |
wasm32-unknown-unknown |
opencodifier-0.5.0-wasm32-unknown-unknown.tar.gz |
577726 | 474d23c989740a66f5b948859aa061b6b6de70497924633353bc7cc049b254a8 |
unknown linkage | dist/v0.5.0-wasm32-unknown-unknown/opencodifier-0.5.0-wasm32-unknown-unknown.tar.gz.attestation.json |
x86_64-apple-darwin |
opencodifier |
6311544 | 7d7c2385ed9a8549378d20467bd9d3cc67019ba41c006b1c5ec2c02fb97aa4ec |
unknown linkage | target/x86_64-apple-darwin/release/opencodifier.attestation.json |
x86_64-pc-windows-gnu |
opencodifier.exe |
5120512 | ea24950cc59d18a51f9926363fb0e6626672c737160cd9726ba5ab40c8e48f80 |
unknown linkage | target/x86_64-pc-windows-gnu/release/opencodifier.exe.attestation.json |
x86_64-unknown-linux-gnu |
opencodifier |
6688576 | e087986d6115511dd8f51a991a3ec1a8038ac78bad3c3c14490852eddf421f5e |
dynamic (interpreter /lib64/ld-linux-x86-64.so.2) | target/x86_64-unknown-linux-gnu/release/opencodifier.attestation.json |
x86_64-unknown-linux-musl |
opencodifier |
6771880 | 2ecdf4444656239debf26a20eaf21a18341283a4bd9836f08966f85e88af6d2e |
static | target/x86_64-unknown-linux-musl/release/opencodifier.attestation.json |
Verification level, per artifact
The matrix states what was proven, never "supported": D24 sets the named
level each target can carry, and an artifact only claims the level it earned.
Mark one per row.
| Target | Level earned | Why |
|---|---|---|
| x86_64-unknown-linux-gnu | <filled-by-human> |
<receipt> |
| x86_64-unknown-linux-musl | <filled-by-human> |
<receipt> |
| aarch64-unknown-linux-gnu | <filled-by-human> |
<receipt> |
| x86_64-pc-windows-gnu | <filled-by-human> |
<receipt> |
| x86_64-apple-darwin | <filled-by-human> |
<receipt> |
| aarch64-apple-darwin | <filled-by-human> |
<receipt> |
| aarch64-linux-android | <filled-by-human> |
<receipt> |
| aarch64-apple-ios | <filled-by-human> |
<receipt> |
| wasm32-unknown-unknown | <filled-by-human> |
<receipt> |
Known gaps to state on the release page rather than paper over: no foreign
arch is executed here (no qemu, no arm hardware), so aarch64 artifacts are
link + file-magic only; registry publication (crates.io, Homebrew, winget)
is an outward action taken only on an explicit user go.
Reproduction
From a clean checkout at 0fd6a1543c27884fc757d3354c757da650ae7f5a, on a host with the matrix toolchains
(just release-preflight reports what is missing, naming each tool):
just release-preflight # toolchain readiness per target
just release-matrix # build + stage + attest every target
just release-verify # re-hash every artifact vs its attestation
just release-notes # this file, from the attestations
just ci # the gate of record, before tagging
just e2e # the run-tested claim, on the host targetSingle-target build and its exact recorded command:
# aarch64-apple-darwin
cargo zigbuild --release --locked --target aarch64-apple-darwin -p opencodifier-cli
# aarch64-apple-ios
cargo build --release --locked --target aarch64-apple-ios -p opencodifier-ffi
# aarch64-linux-android
cargo build --release --locked --target aarch64-linux-android -p opencodifier-cli
# aarch64-unknown-linux-gnu
cargo zigbuild --release --locked --target aarch64-unknown-linux-gnu -p opencodifier-cli
# wasm32-unknown-unknown
wasm-pack build crates/opencodifier-wasm --release --target web --out-dir target/wasm-release/pkg-web --out-name opencodifier && wasm-pack build crates/opencodifier-wasm --release --target nodejs --out-dir target/wasm-release/pkg-nodejs --out-name opencodifier && tar -czf dist/v0.5.0-wasm32-unknown-unknown/opencodifier-0.5.0-wasm32-unknown-unknown.tar.gz -C target/wasm-release pkg-web pkg-nodejs
# x86_64-apple-darwin
cargo zigbuild --release --locked --target x86_64-apple-darwin -p opencodifier-cli
# x86_64-pc-windows-gnu
cargo zigbuild --release --locked --target x86_64-pc-windows-gnu -p opencodifier-cli
# x86_64-unknown-linux-gnu
cargo build --release --locked --target x86_64-unknown-linux-gnu -p opencodifier-cli
# x86_64-unknown-linux-musl
cargo build --release --locked --target x86_64-unknown-linux-musl -p opencodifier-cliProvenance
| Field | Value |
|---|---|
| Commit | 0fd6a1543c27884fc757d3354c757da650ae7f5a |
| Commit date (UTC) | 2026-10-07T09:54:23Z |
| rustc | rustc 1.99.0 (b940084d7 2026-09-28) |
| cargo | cargo 1.99.0 (5f94df478 2026-08-27) |
Cargo.lock sha256 |
6d1b5112c91f12e14a0f4d031c0f0d6648e5ceb18f9a2139ee679cf1e76b1879 |
| Workspace tree sha256 | b3c17b4d04159f5eae881b3499a9f42fbdd277bba2e5bbaff806146600bd7ab0 |
| Feature flags | default |
| Attestation schema | opencodifier.attestation/1 |
Model weights are never committed (D14): any model artifact this release
references travels with its own models/*.json SHA-256 manifest, and the
runtime refuses a mismatch before reading a tensor.