Skip to content

v0.5.0

Choose a tag to compare

@aliasfoxkde aliasfoxkde released this 08 Oct 17:47
· 498 commits to main since this release
Immutable release. Only release title and notes can be modified.

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 target

Single-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-cli

Provenance

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.