Skip to content

chore(release): prepare 0.1.5 — version bump + CHANGELOG date#127

Merged
luofang34 merged 1 commit intomainfrom
pr/0.1.5-release-prep
May 5, 2026
Merged

chore(release): prepare 0.1.5 — version bump + CHANGELOG date#127
luofang34 merged 1 commit intomainfrom
pr/0.1.5-release-prep

Conversation

@luofang34
Copy link
Copy Markdown
Owner

@luofang34 luofang34 commented May 4, 2026

Summary

Pre-tag preparation for the v0.1.5 cut.

  1. Workspace version 0.1.4 → 0.1.5 in Cargo.toml ([workspace.package].version plus the evidence-core internal-crate dependency line). The publish workflow's tag-vs-version assert will match v0.1.5 after merge.
  2. Cargo.lock rewritten with the new version stamps for the three workspace crates (3 lines).
  3. CHANGELOG.md gains a [0.1.5] — 2026-05-04 section covering the seven PRs since v0.1.4.

What's in 0.1.5

The signing-and-honesty release. Three tracks land together:

Signing rewrite

  • HMAC-SHA256 envelope replaced by ed25519 detached signature.
  • SYS-001's "HMAC + public signing key" internal contradiction fixed; layered integrity model documented (content / metadata / provenance) with DO-178C §7 SCM and FIPS 198-1 citations in cert/QUALIFICATION.md.
  • cargo evidence keygen lifecycle subcommand with refuse-overwrite + --rotate --reason <text>; appends to cert/KEY-ROTATION-LOG.
  • Default key paths (cert/signing.{key,pub}) + env-var hooks (EVIDENCE_SIGNING_KEY_PATH, EVIDENCE_VERIFY_KEY_PATH, EVIDENCE_PUBKEY_ANCHOR).
  • signing.pub anchor consistency check at generate (SIGN_PUBKEY_ANCHOR_MISMATCH) — silent re-key fork defense.
  • Project-self keypair bootstrapped: cert/signing.pub committed, cert/signing.key gitignored.

Trace data model evolution

  • cert/trace/derived.toml debuts as the explicit channel for derived requirements.
  • LlrEntry.derived legacy field retired.
  • Architectural HLRs gain analysis-method declarations.

Public-surface trim + ergonomics

  • evidence-core curated public API (~36 stable items, ~38 doc-hidden impl-detail leaves).
  • schema_version documented as informational during pre-1.0.
  • DOCTOR_FLOORS_SLACK hint pointing at untracked .rs files.
  • CI override-line tolerance for markdown decoration; pull_request: types: [edited] retrigger.

Breaking changes for 0.1.4 consumers

  • Bundle signature format: 0.1.4 BUNDLE.sig (HMAC, 64 hex) is byte-incompatible with 0.1.5 (ed25519, 128 hex). Re-sign with cargo evidence keygen + cargo evidence generate --signing-key.
  • Key file format: 0.1.4 raw HMAC bytes → 0.1.5 32-byte hex. Generate fresh keypair via cargo evidence keygen.
  • CLI flag: --sign-key--signing-key. Update CI scripts.

Per-item details and the floor-deltas table live in the [0.1.5] CHANGELOG.md section.

After-merge tag flow

git tag -a v0.1.5 -m "v0.1.5"
git push origin v0.1.5

triggers the existing publish workflow. Tag step is manual and stays with the maintainer (cross-session risky action).

Test plan

  • cargo fmt --check
  • cargo clippy --workspace --all-targets -- -D warnings
  • cargo test --workspace --all-targets (all green; 65 test groups)
  • RUSTDOCFLAGS='-D missing_docs -D rustdoc::broken_intra_doc_links' cargo doc --workspace --no-deps
  • cargo evidence trace --validateTRACE_OK
  • cargo evidence floors --format=jsonlFLOORS_OK (13 dimensions)
  • cargo evidence doctor → all checks green
  • CI green on push (cross-host + Nix flavors; cert-profile self-evidence with the ephemeral-keypair workflow from PR-C)

🤖 Generated with Claude Code

Override-Deterministic-Baseline: workspace version bump 0.1.4 → 0.1.5 rotates cargo_lock_hash. No dep / toolchain / RUSTFLAGS change otherwise.

Pre-tag preparation for the v0.1.5 cut.

- Workspace version 0.1.4 → 0.1.5 in `Cargo.toml`
  (`[workspace.package].version` plus the `evidence-core`
  internal-crate dependency line). The publish workflow's
  tag-vs-version assert will match `v0.1.5` after merge.
- `Cargo.lock` rewritten with the new version stamps for the
  three workspace crates (3 lines).
- `CHANGELOG.md` gains a `[0.1.5] — 2026-05-04` section
  covering the seven PRs since v0.1.4 (#120 derived.toml
  debut, #121 retire LlrEntry.derived legacy, #122 CI
  override-line tolerance, #123 doctor untracked-hint, #124
  public surface trim + schema_version policy doc, #125
  HMAC → ed25519 signing rewrite, #126 keygen subcommand +
  default key paths + signing.pub anchor consistency).

What's in 0.1.5

The signing-and-honesty release. Three tracks land together:

- **Signing rewrite.** HMAC-SHA256 envelope replaced by
  ed25519 detached signature; SYS-001's "HMAC + public
  signing key" internal contradiction fixed; `cargo evidence
  keygen` lifecycle subcommand with refuse-overwrite +
  `--rotate --reason <text>`; default key paths + env-var
  hooks; `signing.pub` anchor consistency check at generate
  to defend against silent re-key forks. Layered integrity
  model documented (content / metadata / provenance) with
  DO-178C §7 SCM and FIPS 198-1 citations in
  `cert/QUALIFICATION.md`.
- **Trace data model evolution.** `cert/trace/derived.toml`
  debuts as the explicit channel for derived requirements;
  `LlrEntry.derived` legacy field retired; architectural
  HLRs gain analysis-method declarations.
- **Public-surface trim + ergonomics.** `evidence-core`
  curated public API (~36 stable items, ~38 doc-hidden
  impl-detail leaves); `schema_version` documented as
  informational during pre-1.0; doctor untracked-hint;
  CI override-line tolerance for markdown decoration;
  `MCP_VERSION_SKEW` dogfood note in CONTRIBUTING.

Floor deltas + breaking-change migration notes for 0.1.4
consumers live in the `[0.1.5]` CHANGELOG section.

After-merge tag flow

```
git tag -a v0.1.5 -m "v0.1.5"
git push origin v0.1.5
```

triggers the existing `publish` workflow. Tag step is manual
and stays with the maintainer (cross-session risky action).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@luofang34 luofang34 merged commit 6c6ecdc into main May 5, 2026
30 of 31 checks passed
@luofang34 luofang34 deleted the pr/0.1.5-release-prep branch May 5, 2026 04:45
@luofang34 luofang34 deployed to crates-io May 5, 2026 05:04 — with GitHub Actions Active
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants