diff --git a/.release-please-manifest.json b/.release-please-manifest.json index a63f158288..cc47964021 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.1.0-beta.47" + ".": "0.1.0-beta.48" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 7c42d0b1c9..22f724c6de 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,125 @@ 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). +## [0.1.0-beta.48](https://github.com/ScriptedAlchemy/tracedecay/compare/v0.1.0-beta.47...v0.1.0-beta.48) (2026-09-21) + + +### Features + +* **graph-query:** scope the dead-code census by path before the limit ([9520d75](https://github.com/ScriptedAlchemy/tracedecay/commit/9520d75f3612016653d90f667c57bd5a7514e454)) +* **graph-query:** scope the dead-code census by path before the limit ([b137ee0](https://github.com/ScriptedAlchemy/tracedecay/commit/b137ee0e6a80f072eb816e85827899270dac3060)) + + +### Bug Fixes + +* clear clippy and rustfmt failures across the merged batch ([debc48c](https://github.com/ScriptedAlchemy/tracedecay/commit/debc48cee8109d876b43c75396eba8fc39c18aca)) +* clear the deterministic master CI failures ([094f5b4](https://github.com/ScriptedAlchemy/tracedecay/commit/094f5b44e0438522c2eb14e17397f72b587f4956)) +* clear the deterministic master CI failures ([eeb1ec1](https://github.com/ScriptedAlchemy/tracedecay/commit/eeb1ec1d1c4f0c658292f5340660e1302f9ff481)) +* **cli:** broker init through a connectable daemon socket ([2af65b1](https://github.com/ScriptedAlchemy/tracedecay/commit/2af65b1461168cf7564b221626a02523ad05436f)) +* **cli:** broker init through a connectable daemon socket ([9dfacab](https://github.com/ScriptedAlchemy/tracedecay/commit/9dfacabdebb06c930fc18d87e84b0c009c8e02ce)) +* **cli:** succeed when install finds no agent yet ([172dbff](https://github.com/ScriptedAlchemy/tracedecay/commit/172dbff709079a6354d41ffbd7af13bc690cc497)) +* **cli:** use ? for the missing install-probe binary ([fb58663](https://github.com/ScriptedAlchemy/tracedecay/commit/fb58663dd361ba11b0e933d267c717fa8244b584)) +* **code-index-runtime:** keep the index lock file one type ([9ded6cd](https://github.com/ScriptedAlchemy/tracedecay/commit/9ded6cd762d4b4058c6041897322d8d575c0fee5)) +* **code-index:** bind a seat's source proof under the scheduler lock ([e49f1ae](https://github.com/ScriptedAlchemy/tracedecay/commit/e49f1ae4d67ab02d10805e28297171818a8311b3)) +* **code-index:** hold the head-open claim across the clone copy ([cacf79a](https://github.com/ScriptedAlchemy/tracedecay/commit/cacf79a8d2e31620021c0d294e1a4fdb431fbc27)) +* **code-index:** hold the head-open claim across the clone successor copy ([83d9a3c](https://github.com/ScriptedAlchemy/tracedecay/commit/83d9a3cc02bbe962ce73d95ac5399cf430974bd9)) +* **code-index:** keep a terminal park reason in dashboard progress ([52b3772](https://github.com/ScriptedAlchemy/tracedecay/commit/52b3772241598e73424b031469b45eebe1e133cc)) +* **code-index:** keep clone copy off the freshness receipt ([76c58af](https://github.com/ScriptedAlchemy/tracedecay/commit/76c58af7e25dde6daa330bab74af5ee281d98c61)) +* **code-index:** keep sealed generation when proof expires ([c6aadcb](https://github.com/ScriptedAlchemy/tracedecay/commit/c6aadcb57790482fb3e76a19c73265359e8fd197)) +* **code-index:** keep the park reason in progress; fence the load-sensitive scheduler tests ([c7e9b75](https://github.com/ScriptedAlchemy/tracedecay/commit/c7e9b756acd800a51afb7b777ab4fd05d620eacd)) +* **code-index:** keep the reader charge on both publication tails ([09ef75e](https://github.com/ScriptedAlchemy/tracedecay/commit/09ef75ecae5fd96105e6129c4942fb73c392e827)) +* **code-index:** keep the reader charge on both publication tails ([a4318a6](https://github.com/ScriptedAlchemy/tracedecay/commit/a4318a6da9aaddb5ff633c18afdce6281199e088)) +* **code-index:** let a retired clone staging discard converge ([024364a](https://github.com/ScriptedAlchemy/tracedecay/commit/024364a1f112f0d84970e0444d9895efcc36bb10)) +* **code-index:** refuse a sealed generation the checkout moved past ([c1633dd](https://github.com/ScriptedAlchemy/tracedecay/commit/c1633dd96bb0f70d89d5a33cc64c3d5c35d71dfa)) +* **code-index:** seat text through retryable graph activation ([a82ad6c](https://github.com/ScriptedAlchemy/tracedecay/commit/a82ad6c300e22d3c8c87d1de6f83e24bd63a6950)) +* **code-index:** stop continuation receipts looking like probe wakes ([3510cf7](https://github.com/ScriptedAlchemy/tracedecay/commit/3510cf76e149cfdc6357699f9b3e765dadfab45e)) +* **daemon:** keep a published owner ahead of a recorded failure ([e3860bf](https://github.com/ScriptedAlchemy/tracedecay/commit/e3860bf9c199177a3e4bd2f53e3edfaa6b23001a)) +* **daemon:** observe dashboard completion with a closed semaphore ([112f2d2](https://github.com/ScriptedAlchemy/tracedecay/commit/112f2d27ce6ea51ef70fc5d0fb8ab9a94143601c)) +* **daemon:** resend a warming project open as mounting ([ad95bff](https://github.com/ScriptedAlchemy/tracedecay/commit/ad95bff640770db6953db07c80f47d3d393345a4)) +* **daemon:** retry a revoked response in the one-shot client ([f359cd9](https://github.com/ScriptedAlchemy/tracedecay/commit/f359cd98d16c8ffcc373320862bfceea9e26abf1)) +* **daemon:** retry a revoked response in the one-shot client ([e6f94cd](https://github.com/ScriptedAlchemy/tracedecay/commit/e6f94cdb90e3f094a5e14d6e3105fca6a0b11c6f)) +* **daemon:** retry a revoked response in the one-shot client ([0ebaf81](https://github.com/ScriptedAlchemy/tracedecay/commit/0ebaf81524448db53a32cc9318fd4615378f0506)) +* **daemon:** start open publication bound at claim ([a3c37a4](https://github.com/ScriptedAlchemy/tracedecay/commit/a3c37a475704d4ef4c84be14391348e32e14ee60)) +* **dashboard:** observe stop completion that fired first ([1d3bc9f](https://github.com/ScriptedAlchemy/tracedecay/commit/1d3bc9fdbab409f2ce870025c266f095fec00b09)) +* **dist:** match the test-API probe refusal by error code ([ac649b3](https://github.com/ScriptedAlchemy/tracedecay/commit/ac649b36b5f25ac7bb7c9ea8315a701a5c56c928)) +* **dist:** pass the generator commit to the packaged host bundle calls ([70517b8](https://github.com/ScriptedAlchemy/tracedecay/commit/70517b833785191ca9e0ae9df24056535876be8a)) +* **dist:** retry the packaged MCP suite before failing the battery ([50c359f](https://github.com/ScriptedAlchemy/tracedecay/commit/50c359f68ca32e7dc34ed8ac2488040859256845)) +* **dist:** run the packaged MCP suite from an untouched snapshot ([a496f5c](https://github.com/ScriptedAlchemy/tracedecay/commit/a496f5cc9a13b8b66236917715bfb0855868ebf6)) +* **dist:** run the packaged MCP suite from the staged snapshot ([f727c9c](https://github.com/ScriptedAlchemy/tracedecay/commit/f727c9ca09b362da40dab4945210af4a9fc77d47)) +* **dist:** seed the consumer crates with the workspace lockfile ([5d3b849](https://github.com/ScriptedAlchemy/tracedecay/commit/5d3b849aee55dd57ad5adb00a0b4644929c9950a)) +* **dist:** stage package assets onto a cleared destination ([1d7dee1](https://github.com/ScriptedAlchemy/tracedecay/commit/1d7dee1a68c5e339f1aa2a12e7de68112850c3c9)) +* **global-db:** adopt a raw session only for projector-owned outputs ([efdfdef](https://github.com/ScriptedAlchemy/tracedecay/commit/efdfdef0336b142dc3da1d9e78e12ba591cc9de2)) +* **global-db:** compare a raw twin's derived columns before trusting it ([0cf720a](https://github.com/ScriptedAlchemy/tracedecay/commit/0cf720aca6833eaedd0578c9d8ed23596af0f909)) +* **global-db:** page rebuild overlap reconciliation ([e7c3124](https://github.com/ScriptedAlchemy/tracedecay/commit/e7c312474f1b3d9339cf1625fa8a90ed9ba63aa6)) +* **graph-publication:** bound begin by wall clock, not one attempt ([2283a44](https://github.com/ScriptedAlchemy/tracedecay/commit/2283a446b5762aff76609229e2469699b074b38c)) +* **graph-publication:** surface a failed reader instead of deferring ([ba62697](https://github.com/ScriptedAlchemy/tracedecay/commit/ba62697f0d2ae946e5273341688c949a007cb2ec)) +* **graph-publication:** surface a failed reader instead of deferring ([54d8c91](https://github.com/ScriptedAlchemy/tracedecay/commit/54d8c9134d8f0a00c97086082dd9c32d5279938e)) +* **graph-query:** answer file neighbors for an unpublished path ([f0994a9](https://github.com/ScriptedAlchemy/tracedecay/commit/f0994a9cf997fefdb46f6b271b879d2180a9cfdc)) +* **hotpath-guard:** drop the leaf backend feature selector ([5234ef1](https://github.com/ScriptedAlchemy/tracedecay/commit/5234ef1704a086d857404d15a54790f8efa6a5d4)) +* **hotpath-guard:** drop the leaf backend feature selector ([8372962](https://github.com/ScriptedAlchemy/tracedecay/commit/8372962aaf7f690bfd9375d74eb3e31d2fa2d216)) +* **install:** make the documented install path deliver the current release ([064f425](https://github.com/ScriptedAlchemy/tracedecay/commit/064f425ad4147cf67ba276220e096133b8dfc0b9)) +* **install:** resolve prerelease assets and tags ([82dfcf4](https://github.com/ScriptedAlchemy/tracedecay/commit/82dfcf4bcd670b977e121accee4bd1e8fecd7aea)) +* **install:** skip incomplete prereleases in default path ([ab677fe](https://github.com/ScriptedAlchemy/tracedecay/commit/ab677feaa63ca6e708dac2f77d530b5c2b3815e3)) +* keep hotpath-instrumented values one type across feature sets ([efabbb3](https://github.com/ScriptedAlchemy/tracedecay/commit/efabbb3e502e2be027f41fd65674d5bc3d7589b5)) +* **mcp-catalog:** bind memory schema closure to 'static operations ([2071daf](https://github.com/ScriptedAlchemy/tracedecay/commit/2071daff7119da9df8aa9bb2860576261672616a)) +* **mcp:** drop the unreachable NotApplicable wire no-op ([c30cc2d](https://github.com/ScriptedAlchemy/tracedecay/commit/c30cc2d6dcbea0d0ec5ad8ad13ee84d3f0905bb8)) +* **mcp:** keep cancel registration until dispatch settles ([dfe6c7d](https://github.com/ScriptedAlchemy/tracedecay/commit/dfe6c7de23d45eb0a746ba779d688ddccfde64de)) +* **mcp:** keep cancel registration until dispatch settles ([67e6e22](https://github.com/ScriptedAlchemy/tracedecay/commit/67e6e22895ac0c322f7b4c368967aca03045b676)) +* **mcp:** keep grep lexical when enrichment refuses ([13d89e0](https://github.com/ScriptedAlchemy/tracedecay/commit/13d89e04f038f6adbb209c3f4162fe5d925c93fc)) +* **mcp:** keep grep lexical when graph enrichment refuses ([ba45baa](https://github.com/ScriptedAlchemy/tracedecay/commit/ba45baa54681115b21d6c9a6cd2948c48fc10c55)) +* **mcp:** keep the stdio transport halves one type ([e3caf72](https://github.com/ScriptedAlchemy/tracedecay/commit/e3caf7209a17f425bacb2be7edb1e7ad9b3d80c2)) +* **observability:** sweep staging temps a killed publisher leaves ([b4d80a6](https://github.com/ScriptedAlchemy/tracedecay/commit/b4d80a642f6f69e1c9f5b0454a3a79e235e5075a)) +* **query:** rank TaskSession on core fallback authority ([90f6448](https://github.com/ScriptedAlchemy/tracedecay/commit/90f6448bafccec222bf15f85cd867f8ba8981e67)) +* **query:** rank TaskSession on the core fallback authority ([ee548c4](https://github.com/ScriptedAlchemy/tracedecay/commit/ee548c4032442b1da11dea9e4303f93a5aafed56)) +* **query:** span the temporal range in TaskSession calibration ([df6bd75](https://github.com/ScriptedAlchemy/tracedecay/commit/df6bd75ada621e3ce2bdc6c10367c4981a91c4b4)) +* **release:** keep the transitive feature check on the release path ([cc28eeb](https://github.com/ScriptedAlchemy/tracedecay/commit/cc28eeb53b2a6fd1d075ec301039b38b032eca08)) +* **release:** publish install.sh with every prerelease ([8ca4241](https://github.com/ScriptedAlchemy/tracedecay/commit/8ca4241884ef230620994bb353c1e286479f08d3)) +* restore the pinned corpus fixture and a transport test import ([42597b2](https://github.com/ScriptedAlchemy/tracedecay/commit/42597b2c6910d3fb44c10376de85b94a894063e1)) +* **retention:** bound store locks by cancel and deadlines ([2b803ca](https://github.com/ScriptedAlchemy/tracedecay/commit/2b803caed912432023de85ace4bca085de9b2deb)) +* **retention:** keep absent durable state a storage failure ([d6d8665](https://github.com/ScriptedAlchemy/tracedecay/commit/d6d8665a80068bf8b28a995cdff6c412997720be)) +* **retention:** one contract for a missing scope root ([735bfbd](https://github.com/ScriptedAlchemy/tracedecay/commit/735bfbde8f090a5064ba928d0825373b82f7f162)) +* **runtime-core:** tolerate a released snapshot dir during cleanup ([54800e5](https://github.com/ScriptedAlchemy/tracedecay/commit/54800e51aaefc5bc1ff9a8017606e2fff4ac998d)) +* **runtime-core:** tolerate a released snapshot dir during cleanup ([9ebe9a7](https://github.com/ScriptedAlchemy/tracedecay/commit/9ebe9a7768fef53987359877b43ce87833e1d9e3)) +* **sessions:** continue catch-up when the cursor is already applied ([d15c0dc](https://github.com/ScriptedAlchemy/tracedecay/commit/d15c0dc04f24162db3b011f6e8fd1ce5a2938145)) +* **sessions:** continue catch-up when the cursor is already applied ([a3c2ee1](https://github.com/ScriptedAlchemy/tracedecay/commit/a3c2ee1b78ba73425a739c1807948b083cd24106)) +* **sessions:** drop a no-op file-length conversion ([b243795](https://github.com/ScriptedAlchemy/tracedecay/commit/b243795a74631f2adc5d31f6007245fb86f653ad)) +* **sessions:** drop the u64 identity conversion clippy rejects ([e130045](https://github.com/ScriptedAlchemy/tracedecay/commit/e1300458e4333902b37cd6772e9e5742e0ac885e)) +* **sessions:** drop the u64 identity conversion clippy rejects ([17b1022](https://github.com/ScriptedAlchemy/tracedecay/commit/17b102208151832ec2a6ad142d317c9f7146483b)) +* **sessions:** drop the u64 identity conversion clippy rejects ([cb730a9](https://github.com/ScriptedAlchemy/tracedecay/commit/cb730a980cf66f3334bab4df729c58b101d0e6ae)) +* **sessions:** drop useless u64 conversion of file length ([d4ebe94](https://github.com/ScriptedAlchemy/tracedecay/commit/d4ebe949650f48eb619a8ba02f5a8e484339cfe4)) +* **sessions:** replay a colliding Claude window one frame at a time ([8f8107b](https://github.com/ScriptedAlchemy/tracedecay/commit/8f8107ba0194c5526fcc625299264b363565f957)) +* **sessions:** replay a colliding Claude window one frame at a time ([8096ea1](https://github.com/ScriptedAlchemy/tracedecay/commit/8096ea131f7277dda0692adfd8fddbe898d5daca)) +* **sessions:** replay a partial JSONL cursor window ([f4da32f](https://github.com/ScriptedAlchemy/tracedecay/commit/f4da32f3953393bef0dd15fb775d34cab77c51c3)) +* **sessions:** replay a partial JSONL cursor window ([255e0c1](https://github.com/ScriptedAlchemy/tracedecay/commit/255e0c192aac822087cf75fa36c6fa91a148ace6)) +* **sessions:** wake temporal refresh from hook ingest ([993f5e3](https://github.com/ScriptedAlchemy/tracedecay/commit/993f5e3c9bce4cc2a03dc43ac0621f1f6ab85819)) +* **sessions:** wake temporal refresh from hook ingest ([6364f8d](https://github.com/ScriptedAlchemy/tracedecay/commit/6364f8dcbdad63a715d5addbb9b279d17def391e)) +* **store:** release the Tokio worker while awaiting the writer ([97f67b5](https://github.com/ScriptedAlchemy/tracedecay/commit/97f67b5982950c2b279f2f56e35c7fb54182657c)) +* **store:** release the Tokio worker while awaiting the writer ([b82a73e](https://github.com/ScriptedAlchemy/tracedecay/commit/b82a73e8bde618b152c477dcecdcadf2f405a957)) + + +### Performance Improvements + +* **code-extraction:** borrow grammar kinds in clone tokens ([caa981b](https://github.com/ScriptedAlchemy/tracedecay/commit/caa981b9f624430731b220cf93810ed953a39524)) +* **code-extraction:** borrow grammar kinds in clone tokens ([1c5a539](https://github.com/ScriptedAlchemy/tracedecay/commit/1c5a5393fa117f69cc751f2e9baf83420da0e248)) +* **code-index:** batch edges_among and drop neighbor hydration ([20a5de2](https://github.com/ScriptedAlchemy/tracedecay/commit/20a5de2a13adb79b207447e20093a733defd4392)) +* **code-index:** batch the edges_among edge read ([936b9fd](https://github.com/ScriptedAlchemy/tracedecay/commit/936b9fd7dfcb8ce7dc1150e5c9bb3c0dec2274fc)) +* **code-index:** build each re-export chain once per reference ([69a17c3](https://github.com/ScriptedAlchemy/tracedecay/commit/69a17c34c326cd2806a4e5639dd700d591fbbaa8)) +* **code-index:** edges_among returns bare edges ([7fec32a](https://github.com/ScriptedAlchemy/tracedecay/commit/7fec32aa12b292bbef6443d025d9be41b5de85b6)) +* **code-index:** keep the export-walk miss path allocation free ([4d7f96f](https://github.com/ScriptedAlchemy/tracedecay/commit/4d7f96f35f66032a92160e35d1cc9dbc4e9e2061)) +* **code-index:** sample git metadata through retained topology ([56bf72c](https://github.com/ScriptedAlchemy/tracedecay/commit/56bf72c816008b6759e962bf479b5cf71506f796)) +* **code-index:** stop the readiness waits competing with the rebuild ([7054463](https://github.com/ScriptedAlchemy/tracedecay/commit/7054463a56d574af04d5f062fa7f67fad9eaa500)) +* **code-index:** walk qualified Rust paths once per reference ([8eddbc8](https://github.com/ScriptedAlchemy/tracedecay/commit/8eddbc89015f6606c86c384dad0c6b7729522a59)) +* **code-index:** walk qualified Rust paths once per reference ([7fc6b2f](https://github.com/ScriptedAlchemy/tracedecay/commit/7fc6b2f6de16ca42e7218bf6af3f8258d395add1)) +* **daemon:** wake the composition code-index wait on seat changes ([996140a](https://github.com/ScriptedAlchemy/tracedecay/commit/996140af1952517f659b2607915df3222896fa05)) +* port measured git-metadata and clone-census improvements from [#1577](https://github.com/ScriptedAlchemy/tracedecay/issues/1577)/[#1580](https://github.com/ScriptedAlchemy/tracedecay/issues/1580) ([ac4e0b8](https://github.com/ScriptedAlchemy/tracedecay/commit/ac4e0b83e689a5c2b7206b1d790e4328beed5faa)) +* **query:** validate each stored clone payload once per census ([c18b3e6](https://github.com/ScriptedAlchemy/tracedecay/commit/c18b3e611da19db2ebf555eb2811cefcffff4a9b)) + + +### Reverts + +* "fix(codex): keep prepare Ready when the plugin CLI is absent" ([7d678d8](https://github.com/ScriptedAlchemy/tracedecay/commit/7d678d8fba6f28508c71e5732d277d9f5542c82c)) +* **code-index:** keep the terminal clone-warmup verdict ([ab0bd06](https://github.com/ScriptedAlchemy/tracedecay/commit/ab0bd0652d9eeb66d1091243ec7fd66ef1d3aa31)) + ## [0.1.0-beta.47](https://github.com/ScriptedAlchemy/tracedecay/compare/v0.1.0-beta.46...v0.1.0-beta.47) (2026-09-18) diff --git a/Cargo.lock b/Cargo.lock index 9ad08d8470..869cdb490f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5354,7 +5354,7 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracedecay" -version = "0.1.0-beta.47" +version = "0.1.0-beta.48" dependencies = [ "axum", "constant_time_eq", @@ -5621,7 +5621,7 @@ dependencies = [ [[package]] name = "tracedecay-cli" -version = "0.1.0-beta.47" +version = "0.1.0-beta.48" dependencies = [ "axum", "clap", @@ -6364,7 +6364,7 @@ dependencies = [ [[package]] name = "tracedecay-project" -version = "0.1.0-beta.47" +version = "0.1.0-beta.48" dependencies = [ "hotpath", "rusqlite", diff --git a/Cargo.toml b/Cargo.toml index eb65fc59d3..0e93ab3192 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 = "0.1.0-beta.47" +version = "0.1.0-beta.48" [workspace.dependencies] # Opt-in profiler, pinned once for the whole workspace. Non-optional on purpose: diff --git a/server.json b/server.json index f2a72f4a33..07c2de5941 100644 --- a/server.json +++ b/server.json @@ -8,6 +8,6 @@ "source": "github" }, "websiteUrl": "https://github.com/ScriptedAlchemy/tracedecay", - "version": "0.1.0-beta.47", + "version": "0.1.0-beta.48", "packages": [] } diff --git a/version.txt b/version.txt index 92fa81dc12..e6abbbdea1 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -0.1.0-beta.47 +0.1.0-beta.48