Tags: attila/lore
Tags
chore(release): cut v0.4.0 (#64) * doc: mark merged plans complete with PR links Four plan docs were left with `status: active` after their PRs merged. Flip to `status: complete`, add `completed:` dates matching merge dates, and link the `pr:` URL — matching the frontmatter shape used by other completed plans that carry a PR link. - coverage-check skill (#32, merged 2026-04-08) - language-detection architecture (#50, merged 2026-05-14) - track-2 observability (#59, merged 2026-05-16) - mcp language arg (#63, merged 2026-05-19) * chore(release): cut v0.4.0
chore(release): cut v0.3.1 (#56) * chore(release): cut v0.3.1 Patch release with the symlink-canonicalisation fix from #55. Bumps Cargo.toml to 0.3.1 and rotates the CHANGELOG `[Unreleased]` block. * doc(release): bump README install snippet to v0.3.1 Mirrors the v0.3.1 cut. The parameterised install snippet uses a literal `VERSION=...` example so users copy-pasting verbatim land on the latest stable artifact. Until `release-prep.sh` learns to substitute this, it is a per-release manual step (see the v0.1.0 bump for prior art).
chore(release): cut v0.3.0 (#54) * doc: capture Rust edition-2024 env-var test pattern + `home_dir` gotcha Documents two findings that surfaced during the etcetera XDG path resolution refactor (#52): 1. Rust 1.85+ `std::env::home_dir` falls back to `/etc/passwd` via `getpwuid_r` when `$HOME` is unset, instead of returning `None`. Crates that delegate (etcetera, dirs, directories, xdg) inherit this. Pre-check `$HOME` yourself if your CLI promises an explicit "HOME is unset" error path. 2. Edition 2024 marks `std::env::set_var` as `unsafe`, and parallel tests race on shared env vars. Use the `temp-env` dev-dep (`temp_env::with_vars`) for safe, serialised env mutation in unit tests — keeps coverage off the `unsafe_code = "deny"` blast radius and avoids hiding invariants behind `#[ignore]`'d integration tests. Lands in `docs/solutions/best-practices/` (knowledge track, `problem_type: best_practice`) with cross-references to the sibling insta-snapshot doc (same toolchain update, different testing surface) and PR #52 for the originating context. * chore(release): cut v0.3.0
chore(release): cut v0.2.0 (#49) Rotates [Unreleased] into a dated [0.2.0] section in CHANGELOG and bumps the Cargo.toml version from 0.1.0 to 0.2.0 (Cargo.lock follows). Generated by `just release-prep 0.2.0`; `just ci` passed the same 500/4-sandbox-only-fail split that every recent run has produced. Highlights vs v0.1.0: - Universal-pattern predicate (`applies_when`) and engine/adapter split (Track 1) - Edge-case-handling umbrella closed (NFC slug collisions, no-HEAD progress line, lossy-path warning, missing-git regression test) - Effective-empty knowledge directory warning - Knowledge database schema bumped to v3 (one-way ALTER TABLE migration; see Notes) See CHANGELOG.md for the full set.
chore(release): cut v0.1.0 (#38) * chore(release): cut v0.1.0 First stable release. Promoting `v0.1.0-alpha.1` to stable after end-to-end validation of the release pipeline (build, publish-gate, deployment-policy, verify). No user-facing changes from the prerelease. - `Cargo.toml`: `0.1.0-alpha.1` → `0.1.0` - `CHANGELOG.md`: `[Unreleased]` rotated to `[0.1.0] - 2026-05-01` with the promotion note pointing at `[0.1.0-alpha.1]` for the full feature list. Generated by `just release-prep 0.1.0`. The script now invokes `just ci` as its final step (per ci/release-followups), which passed against the bumped tree — first real-world exercise of the structural fix that closes the "stale CI before release-prep" gap from the alpha.1 cut. * doc(release): bump README install snippet to v0.1.0 The parameterised install snippet uses a literal `VERSION=...` example. Bump it to the version this release ships so users copy-pasting verbatim land on the stable artifact rather than the alpha prerelease. Long-term fix: bake `VERSION=...` substitution into `release-prep.sh` so the script handles this automatically per release. Queued as a follow-up.
chore(release): cut v0.1.0-alpha.1 (#36) * chore(release): cut v0.1.0-alpha.1 * test(release): redact version field in initialize_response snapshot The `initialize` MCP response interpolates `env!("CARGO_PKG_VERSION")` into `serverInfo.version`. The inline snapshot in `server::tests::initialize_response` pinned the literal string `"0.1.0"`, so every release-prep version bump broke the test until the snapshot was re-accepted — a recurring footgun in the release workflow that would have fired on this very release. Use insta's redaction support to substitute `[VERSION]` into the snapshotted value at the `.result.serverInfo.version` path. The snapshot is now structural (field exists, shape preserved) rather than literal. Enables the `redactions` feature on `insta` (transitively pulls in pest + sha2; no new license categories needed in deny.toml). Also adds `*.pending-snap` to `.gitignore` so future failing snapshot tests don't leave a dirty tree (insta writes these next to the source file when a snapshot needs review).