diff --git a/.release-please-manifest.json b/.release-please-manifest.json index e40ec3b1a6..fbc2a73538 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "1.0.0-beta.61" + ".": "1.0.0-beta.62" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 0d12ac929c..337328f5be 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,55 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.0.0-beta.62](https://github.com/ScriptedAlchemy/tracedecay/compare/v1.0.0-beta.61...v1.0.0-beta.62) (2026-09-29) + + +### ⚠ BREAKING CHANGES + +* **sessions:** session-store reset refusals name `tracedecay wipe --stale --yes` instead of `tracedecay wipe --all --yes`. +* **cli:** `tracedecay bench` and the `tracedecay_admin_project` `bench` action are removed; `@tracedecay/sdk` 0.9.0 drops `AdminProjectBenchV1`. +* **config:** per-project values of user.upload_enabled.v1, user.watcher_debounce_ms.v1 and user.extraction_timeout_secs.v1 are dropped from project snapshots; the profile store starts from the defaults (upload disabled). The dashboard's user settings now share the profile revision with the worker selection. +* **loom:** tracedecay_test_results drops the in-memory `generation` counter and adds session_id, started_at, finished_at, exit_code, passed, failed and ignored; affected-test runs report `ignored` and the terminal carries session_id; Loom events are a kind-tagged union with test_run. These types ship in `@tracedecay/sdk` 0.9.0. + +### Features + +* **loom:** record session-attributed test runs durably ([#2583](https://github.com/ScriptedAlchemy/tracedecay/issues/2583)) ([3c1dea4](https://github.com/ScriptedAlchemy/tracedecay/commit/3c1dea435c9f9d26875b7ca064fbcf82db431d2c)) + + +### Bug Fixes + +* **cli:** print whole typed results with one freshness reading ([#2576](https://github.com/ScriptedAlchemy/tracedecay/issues/2576)) ([8dbf767](https://github.com/ScriptedAlchemy/tracedecay/commit/8dbf767895950536490ff8c0d27c923730fb1984)) +* **cli:** remove the unmounted bench command ([#2589](https://github.com/ScriptedAlchemy/tracedecay/issues/2589)) ([01eb8a6](https://github.com/ScriptedAlchemy/tracedecay/commit/01eb8a62ee251efd2eb3d4b3ae55a82c86e8b8ef)) +* **code-extraction:** annotate #if attributes and TS fields ([a7200ad](https://github.com/ScriptedAlchemy/tracedecay/commit/a7200adc69c42ec0e2e130ceee61608c65e31e35)) +* **code-extraction:** annotate #if attributes and TS fields ([1e4a099](https://github.com/ScriptedAlchemy/tracedecay/commit/1e4a0990e09aa54fb9410a4d74239b73f9b17d6b)) +* **code-index:** bind Java overload calls by argument count ([#2601](https://github.com/ScriptedAlchemy/tracedecay/issues/2601)) ([697de61](https://github.com/ScriptedAlchemy/tracedecay/commit/697de61cf8fa4ec9541a57dac8c2c35501a22651)) +* **code-index:** bind Rust calls in macros and in-file paths ([#2588](https://github.com/ScriptedAlchemy/tracedecay/issues/2588)) ([507d91c](https://github.com/ScriptedAlchemy/tracedecay/commit/507d91cb7415addd830b944afe4be16858b54add)) +* **code-index:** drop wall budgets from load-sensitive waits ([#2600](https://github.com/ScriptedAlchemy/tracedecay/issues/2600)) ([7736848](https://github.com/ScriptedAlchemy/tracedecay/commit/7736848bb9967c70628619edbb6b11f8df0f3f4d)) +* **code-index:** Go interface specs, Java lines, search display ([#2567](https://github.com/ScriptedAlchemy/tracedecay/issues/2567)) ([c11186f](https://github.com/ScriptedAlchemy/tracedecay/commit/c11186f51ea4aa6a3f931b324f049fccf7a4fdc4)) +* **code-index:** plan the worker slab after the parent decode ([#2617](https://github.com/ScriptedAlchemy/tracedecay/issues/2617)) ([98c1eba](https://github.com/ScriptedAlchemy/tracedecay/commit/98c1eba5818a0d14f75e8d958b4811efc056f41c)) +* **config:** resolve user settings from the profile store ([#2563](https://github.com/ScriptedAlchemy/tracedecay/issues/2563)) ([5c78d2b](https://github.com/ScriptedAlchemy/tracedecay/commit/5c78d2b6ee5462b2334534e3a3759560845215b2)), closes [#2498](https://github.com/ScriptedAlchemy/tracedecay/issues/2498) +* **daemon:** refuse first-touch enrollment from another build ([#2577](https://github.com/ScriptedAlchemy/tracedecay/issues/2577)) ([4cbd6bc](https://github.com/ScriptedAlchemy/tracedecay/commit/4cbd6bcc573ec4ff189b5d3af5bd880a978f83b3)) +* **daemon:** retry a refused capacity retirement ([#2585](https://github.com/ScriptedAlchemy/tracedecay/issues/2585)) ([94c91d2](https://github.com/ScriptedAlchemy/tracedecay/commit/94c91d201422fa2fd6f11ce8fe3de70d258899ac)), closes [#2547](https://github.com/ScriptedAlchemy/tracedecay/issues/2547) +* **daemon:** serve cold-daemon reads once their owner is ready ([#2612](https://github.com/ScriptedAlchemy/tracedecay/issues/2612)) ([b896d9f](https://github.com/ScriptedAlchemy/tracedecay/commit/b896d9f8dbf46ef60dd652f6eb4ffc341bf5de25)) +* **daemon:** tell a missing socket apart from the managed unit ([#2575](https://github.com/ScriptedAlchemy/tracedecay/issues/2575)) ([8de78a0](https://github.com/ScriptedAlchemy/tracedecay/commit/8de78a0b62a91c8595db4506bfe2368641436265)) +* **hosts:** carry a host CLI refusal as the host's diagnosis ([#2573](https://github.com/ScriptedAlchemy/tracedecay/issues/2573)) ([77f18f9](https://github.com/ScriptedAlchemy/tracedecay/commit/77f18f935fde4f5458b40465c89354d848baf1b9)) +* **logging:** install callsite keepalive inside capture ([#2591](https://github.com/ScriptedAlchemy/tracedecay/issues/2591)) ([5bfa2da](https://github.com/ScriptedAlchemy/tracedecay/commit/5bfa2da48744961139649a3fd2b721159925bb2a)) +* **mcp:** fail daemon-initiated writes to a vanished peer ([#2579](https://github.com/ScriptedAlchemy/tracedecay/issues/2579)) ([72f5aaa](https://github.com/ScriptedAlchemy/tracedecay/commit/72f5aaa2c89e1ec61cccccb5d1216f006843c7cb)), closes [#2528](https://github.com/ScriptedAlchemy/tracedecay/issues/2528) +* **mcp:** serve user settings on projectless MCP sessions ([#2605](https://github.com/ScriptedAlchemy/tracedecay/issues/2605)) ([f5ca378](https://github.com/ScriptedAlchemy/tracedecay/commit/f5ca378a9a8e8612cb583b97cbb00aa0ba838f1a)) +* **privacy:** keep redacted JSON documents valid JSON ([#2621](https://github.com/ScriptedAlchemy/tracedecay/issues/2621)) ([75926a1](https://github.com/ScriptedAlchemy/tracedecay/commit/75926a1b3a0e1f3f2619a8253364a53491323449)), closes [#2523](https://github.com/ScriptedAlchemy/tracedecay/issues/2523) +* **private-fs:** verify content when no stat witnesses a rewrite ([#2574](https://github.com/ScriptedAlchemy/tracedecay/issues/2574)) ([dab3d89](https://github.com/ScriptedAlchemy/tracedecay/commit/dab3d89f25dd92c0691dfe1014fedc5eda1dfc93)) +* **query:** page index benches with the daemon's sealed bounds ([#2608](https://github.com/ScriptedAlchemy/tracedecay/issues/2608)) ([87b0de8](https://github.com/ScriptedAlchemy/tracedecay/commit/87b0de89c51da4514f6ea563d076bd33c6b2dd16)), closes [#2593](https://github.com/ScriptedAlchemy/tracedecay/issues/2593) +* **runtime-core:** grant discovery CLI fallback its reserve ([#2609](https://github.com/ScriptedAlchemy/tracedecay/issues/2609)) ([13a64b0](https://github.com/ScriptedAlchemy/tracedecay/commit/13a64b014c199ea504a03d15dccb0fb83b38d78a)) +* **runtime:** gate swapped-page admission test to Linux ([#2584](https://github.com/ScriptedAlchemy/tracedecay/issues/2584)) ([4c8f039](https://github.com/ScriptedAlchemy/tracedecay/commit/4c8f03979de1ad5ae16ddfc4634cd21c82de2149)), closes [#2572](https://github.com/ScriptedAlchemy/tracedecay/issues/2572) +* **sessions:** scope Kimi warning census to its thread ([#2586](https://github.com/ScriptedAlchemy/tracedecay/issues/2586)) ([68108a3](https://github.com/ScriptedAlchemy/tracedecay/commit/68108a3e18ffb09438a2ca20e782672b35264a3d)), closes [#2571](https://github.com/ScriptedAlchemy/tracedecay/issues/2571) +* **sessions:** scope stale session-store refusals and reset ([#2613](https://github.com/ScriptedAlchemy/tracedecay/issues/2613)) ([8a16c0e](https://github.com/ScriptedAlchemy/tracedecay/commit/8a16c0e137295578ba7ddbdb1945a0c3581080e0)) + + +### Performance Improvements + +* **memory:** stop retaining scan caches, parse trees, catalogs ([#2592](https://github.com/ScriptedAlchemy/tracedecay/issues/2592)) ([0e4a5ab](https://github.com/ScriptedAlchemy/tracedecay/commit/0e4a5abfd4339ef14b8b011292b4fd6d6c446ce7)) +* **sessions:** bound git convergence reads to new activity ([#2616](https://github.com/ScriptedAlchemy/tracedecay/issues/2616)) ([c067b81](https://github.com/ScriptedAlchemy/tracedecay/commit/c067b81172f63069c35cdc2c375ef0cd2571497e)) + ## [1.0.0-beta.61](https://github.com/ScriptedAlchemy/tracedecay/compare/v1.0.0-beta.60...v1.0.0-beta.61) (2026-09-29) diff --git a/Cargo.lock b/Cargo.lock index 697993bef7..cdb338d059 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5708,7 +5708,7 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracedecay" -version = "1.0.0-beta.61" +version = "1.0.0-beta.62" dependencies = [ "axum", "constant_time_eq", @@ -5981,7 +5981,7 @@ dependencies = [ [[package]] name = "tracedecay-cli" -version = "1.0.0-beta.61" +version = "1.0.0-beta.62" dependencies = [ "aws-lc-rs", "axum", @@ -6739,7 +6739,7 @@ dependencies = [ [[package]] name = "tracedecay-project" -version = "1.0.0-beta.61" +version = "1.0.0-beta.62" dependencies = [ "hotpath", "rusqlite", diff --git a/Cargo.toml b/Cargo.toml index f85a7db795..e7453c9027 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -64,7 +64,7 @@ resolver = "3" # inheritance table is the sanctioned single source of truth. [workspace.package] edition = "2024" -version = "1.0.0-beta.61" +version = "1.0.0-beta.62" [workspace.dependencies] # Opt-in profiler, pinned once for the whole workspace. Non-optional on purpose: diff --git a/server.json b/server.json index 90dc87b0d2..565d0f4701 100644 --- a/server.json +++ b/server.json @@ -8,6 +8,6 @@ "source": "github" }, "websiteUrl": "https://github.com/ScriptedAlchemy/tracedecay", - "version": "1.0.0-beta.61", + "version": "1.0.0-beta.62", "packages": [] } diff --git a/version.txt b/version.txt index b78df7b19a..cf74d848e7 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -1.0.0-beta.61 +1.0.0-beta.62