From 091900050c54100acce7b6b4ddd3a995617b5fb1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 24 Aug 2026 04:40:42 +0000 Subject: [PATCH] chore(main): release spaghetti 0.8.0 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 292 ++++++++++++++++++ Cargo.lock | 2 +- crates/spaghetti-napi/Cargo.toml | 2 +- .../npm/darwin-arm64/package.json | 2 +- .../npm/darwin-x64/package.json | 2 +- .../npm/linux-arm64-gnu/package.json | 2 +- .../npm/linux-x64-gnu/package.json | 2 +- .../npm/win32-arm64-msvc/package.json | 2 +- .../npm/win32-x64-msvc/package.json | 2 +- crates/spaghetti-napi/package.json | 2 +- package.json | 2 +- packages/cli/package.json | 2 +- packages/sdk/package.json | 2 +- 14 files changed, 305 insertions(+), 13 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index e7ca6139..64f3cdd6 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.7.0" + ".": "0.8.0" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 88bb3da8..20bbd7e4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -234,6 +234,298 @@ git history at `211f4b1` if they are ever wanted back. +## [0.8.0](https://github.com/vibecook-dev/spaghetti/compare/spaghetti-v0.7.0...spaghetti-v0.8.0) (2026-08-24) + + +### ⚠ BREAKING CHANGES + +* **sdk:** delete the consumer-less RFC 012D validators and observer shims + +### Features + +* **adapters:** emit response-level usage from Codex and Grok ([00afa1f](https://github.com/vibecook-dev/spaghetti/commit/00afa1f5e62d1f8ac97402aa18549ab299c64e44)) +* **adapter:** type the observer payload per RFC 012C family ([46ef643](https://github.com/vibecook-dev/spaghetti/commit/46ef64358f2975206c8272efd82e52abbb158848)) +* add bounded Codex and Grok support probes ([1e1ab1c](https://github.com/vibecook-dev/spaghetti/commit/1e1ab1cd80ec80b5b081bb153ad17e3fac408c53)) +* add confined directory snapshots ([91aa1d1](https://github.com/vibecook-dev/spaghetti/commit/91aa1d1a66393ba70130fc970bb4f229c642fb8f)) +* add ordered artifact availability envelope ([dabce41](https://github.com/vibecook-dev/spaghetti/commit/dabce410f81752ee6e1887ce9edaf1d0e3baa17b)) +* add RFC 012A/012C N-API JSON contract parity ([c89ab5a](https://github.com/vibecook-dev/spaghetti/commit/c89ab5a7661470a846f1eba013992ebf3ac16b69)) +* add RFC 012C native marker contract parity ([39d26d9](https://github.com/vibecook-dev/spaghetti/commit/39d26d9b6fa030fb9f9f38c939bf91a308afb719)) +* add RFC 012C native marker facts ([b9cfd1e](https://github.com/vibecook-dev/spaghetti/commit/b9cfd1edc82da04ea4fba364e63fdbec9bf701ad)) +* add RFC 012C native marker fixture ([a0f8932](https://github.com/vibecook-dev/spaghetti/commit/a0f8932bdeb13b6a1c15cb360a0197dde0c9a47d)) +* add RFC 012C typed content blocks ([d0d98c5](https://github.com/vibecook-dev/spaghetti/commit/d0d98c5b8ca0a3fc443bee17977b89929bf35e24)) +* add RFC 012C usage-v2 compatibility-window collector ([7c842d1](https://github.com/vibecook-dev/spaghetti/commit/7c842d1452f0c829889537e4955b750e75e94a9a)) +* add RFC 012D explicit resync future ([cf0bfa4](https://github.com/vibecook-dev/spaghetti/commit/cf0bfa47af0b1991d7bc0223d1f1fc4627c572b4)) +* add typed RFC 012B catalog client ([31f9692](https://github.com/vibecook-dev/spaghetti/commit/31f9692efede6837d2d900c554557e546ec01587)) +* add typed RFC 012D session observer ([f048656](https://github.com/vibecook-dev/spaghetti/commit/f048656df52985a027925aba730e1011b48efa97)) +* add weighted source-pass admission ([9ec1075](https://github.com/vibecook-dev/spaghetti/commit/9ec107503aaf2ab5c6aef2b52cd8b8ff5198ea81)) +* admit RFC 012D related source lifecycles ([38bb60f](https://github.com/vibecook-dev/spaghetti/commit/38bb60f0e95be0698cbc86836c5389fd48a81057)) +* **agent-support:** restore the evidence-backed Claude scope relations ([1f9c17a](https://github.com/vibecook-dev/spaghetti/commit/1f9c17a1c3996822c2bd4db5a44ea9bb261d833d)) +* assemble complete catalog projection batches ([eb633df](https://github.com/vibecook-dev/spaghetti/commit/eb633dfa015b9a1ccd9461468f24cdbc703e308e)) +* audit scoped directory enumeration ([51c766b](https://github.com/vibecook-dev/spaghetti/commit/51c766b9f4c0ab567f29d495897247c37b6d5f57)) +* bind artifact availability to scoped barriers ([dae66ba](https://github.com/vibecook-dev/spaghetti/commit/dae66ba64978924d527c0133c0b68fd455c0bb89)) +* bind authorized scoped directory listings ([8d71360](https://github.com/vibecook-dev/spaghetti/commit/8d71360409b776b9e7724fb1fd7b8860161af251)) +* bind authorized scoped runtime streams ([b8f308e](https://github.com/vibecook-dev/spaghetti/commit/b8f308eaadaccb235a3cbac2097acd8204e904e0)) +* bind catalog negotiation to durable selection ([e84a371](https://github.com/vibecook-dev/spaghetti/commit/e84a371f8e60f099b4e9fe5e46c94dd4d9d4ac27)) +* bind catalog sessions to confined locators ([9359037](https://github.com/vibecook-dev/spaghetti/commit/9359037b8b703d44a2bcb4ebe08f110e917091f6)) +* bind Claude catalog runtime to typed authority ([856418f](https://github.com/vibecook-dev/spaghetti/commit/856418fde54e88cca2c540c657631b8fcc89aba1)) +* bind Claude RFC 012D observation sources ([eabef8d](https://github.com/vibecook-dev/spaghetti/commit/eabef8db2c4ea2776290f3dd6f9aee87cabee340)) +* bind Codex catalog runtime to typed authority ([03ecb26](https://github.com/vibecook-dev/spaghetti/commit/03ecb263da1eeeb1f0c95c27889ee8f687a9d1e2)) +* bind dependency-free scoped member bootstrap ([4503e3b](https://github.com/vibecook-dev/spaghetti/commit/4503e3b04c3ead9c5010111267a6b889701bf7d3)) +* bind Grok catalog runtime to typed authority ([a8b0437](https://github.com/vibecook-dev/spaghetti/commit/a8b0437500379c7adcf35de77df8d3e6bbb19b77)) +* bind RFC 012A access requests to typed authority ([639b0b3](https://github.com/vibecook-dev/spaghetti/commit/639b0b3941a07117d68aa7482e12a9b663654b93)) +* bind RFC 012A adapter scope joins ([9f17b86](https://github.com/vibecook-dev/spaghetti/commit/9f17b868ac55d9c949b6dfe556537d7cd135aa9d)) +* bind RFC 012B readiness to client offers ([8df4062](https://github.com/vibecook-dev/spaghetti/commit/8df40629489a8e6f6c0ca819280d24fc3b0d8226)) +* bind RFC 012D barrier capabilities ([29ac300](https://github.com/vibecook-dev/spaghetti/commit/29ac3001a542a9c708c226eb968ec2df08cc0aa6)) +* bind RFC 012D child directory locators ([1ccb0dd](https://github.com/vibecook-dev/spaghetti/commit/1ccb0dd6b36f231d10157ee2a04918922c55dc1d)) +* bind RFC 012D close to async runtime ([5f494a6](https://github.com/vibecook-dev/spaghetti/commit/5f494a63bf0af4ec59bbc5ad9060267cfd749d1b)) +* bind RFC 012D continuity contexts ([b88c902](https://github.com/vibecook-dev/spaghetti/commit/b88c902ab313e509db57e30232f71710d9ed6230)) +* bind RFC 012D dynamic relation membership ([8253e51](https://github.com/vibecook-dev/spaghetti/commit/8253e517aa08f9c35a76c7402f946867fdaa696f)) +* bind RFC 012D known roots to scoped streams ([3821f2c](https://github.com/vibecook-dev/spaghetti/commit/3821f2caf5da5e0478ae55ccd807bf95f4317c91)) +* bind RFC 012D observation sources ([dde701b](https://github.com/vibecook-dev/spaghetti/commit/dde701bf7b55f612485ee451e5430553b12cc053)) +* bind RFC 012D poll completions ([5854c5f](https://github.com/vibecook-dev/spaghetti/commit/5854c5fa5ce9e1566e0620fa3533938e6ca52476)) +* bind RFC 012D related membership ([72d5ec7](https://github.com/vibecook-dev/spaghetti/commit/72d5ec79318c283d35af8f6c4be9c210b2ef9a68)) +* bind RFC 012D related object locators ([f343497](https://github.com/vibecook-dev/spaghetti/commit/f3434970862af0ec8858a1c20ceabbf32b55ae2a)) +* bind RFC 012D related source state ([0808fdd](https://github.com/vibecook-dev/spaghetti/commit/0808fdd0faa64636d06f8a35b8c46dfa8f30c611)) +* bind RFC 012D unknown wire attachments ([89a0d3b](https://github.com/vibecook-dev/spaghetti/commit/89a0d3b38b4d97efd308c07ec24f18ccf78912d3)) +* bind RFC 012D unknown-wire delivery ([71afae4](https://github.com/vibecook-dev/spaghetti/commit/71afae4275117207f19ca5dbe9ae2a2c6bdf505a)) +* bind scoped artifact generations ([38ce442](https://github.com/vibecook-dev/spaghetti/commit/38ce4429daefce665018490546a56c9435fb436b)) +* bind scoped artifacts to source declarations ([18971a8](https://github.com/vibecook-dev/spaghetti/commit/18971a89a6f1c50d66390c7010ac150620630729)) +* bind scoped attachments to source instances ([eddecc2](https://github.com/vibecook-dev/spaghetti/commit/eddecc29f27cd86dcd4b42ec64641cbe506a6323)) +* bind scoped directory entry accounting ([6592ff1](https://github.com/vibecook-dev/spaghetti/commit/6592ff199aeca56d61c6f28439ca5eb055bda1e0)) +* bind scoped directory member reads ([8c53831](https://github.com/vibecook-dev/spaghetti/commit/8c538314bb357fef6193bb3c341aa5f89f1407b0)) +* bind scoped directory membership contracts ([2870468](https://github.com/vibecook-dev/spaghetti/commit/287046844afb9c901dc52549f234e21db60e3d85)) +* bind scoped discovered member identities ([39cf02e](https://github.com/vibecook-dev/spaghetti/commit/39cf02ee45bdb41e0b580dff7bbf7545fbda4f11)) +* bind scoped member decoder descriptors ([d9d2b12](https://github.com/vibecook-dev/spaghetti/commit/d9d2b127c9afbd159f888f5c923ba96813b3ad18)) +* bind scoped observation source reservations ([71c3f1e](https://github.com/vibecook-dev/spaghetti/commit/71c3f1ed96aaac6cb5a19799ba11dee959672617)) +* bind scoped runtime sources to attachment roots ([db947dc](https://github.com/vibecook-dev/spaghetti/commit/db947dc4aea03d949b7b752bafaf1c139499f162)) +* bind unknown evidence to RFC 012D completion ([8ad97ea](https://github.com/vibecook-dev/spaghetti/commit/8ad97ea3a3602bdb84746457b3b9b96bb5369f6f)) +* bind unknown evidence to RFC 012D watermarks ([ff42a6f](https://github.com/vibecook-dev/spaghetti/commit/ff42a6f063012a1e1e0bd1357127ef551b6b9195)) +* bootstrap configured RFC 012D directories ([15b5675](https://github.com/vibecook-dev/spaghetti/commit/15b56752f4a144a75884cea7623f40baf5187411)) +* capture confined scoped artifacts ([386e025](https://github.com/vibecook-dev/spaghetti/commit/386e0251780392a373c65631617391c028426905)) +* carry RFC 012A mappings into durable batches ([e646b56](https://github.com/vibecook-dev/spaghetti/commit/e646b563a55270a1dbea1746747468588943f5b0)) +* **catalog:** replace the 012B publication stack with catalog-first startup ([c22ada9](https://github.com/vibecook-dev/spaghetti/commit/c22ada94a7ff043a61a2e8cc242d8419773ff98b)) +* **catalog:** wire catalog-first startup to the SDK, CLI, and playground ([f9c5a69](https://github.com/vibecook-dev/spaghetti/commit/f9c5a69ab558413264eca25508789c99fcb0bf0a)) +* classify RFC 012A record mappings ([596535b](https://github.com/vibecook-dev/spaghetti/commit/596535b6c313b8a660bff9fbdd5ea7c2b76488d4)) +* classify RFC 012B refresh failures ([b1cdf88](https://github.com/vibecook-dev/spaghetti/commit/b1cdf882b95c9f41eceacbbbee6b143b69103029)) +* **claude:** emit the eight missing RFC 012C fact families ([13efc08](https://github.com/vibecook-dev/spaghetti/commit/13efc087ed203a03b546afe14e459d0b015eda1e)) +* compose configured RFC 012D root authority ([551d559](https://github.com/vibecook-dev/spaghetti/commit/551d5590b97238c70d1ce535ad4cba42c95645c1)) +* compose real Claude scoped sidecar replay ([cad998f](https://github.com/vibecook-dev/spaghetti/commit/cad998f7cd9c625cd8be04d2af754e7274274d3e)) +* compose scope-join directories to fixed point ([c6f57aa](https://github.com/vibecook-dev/spaghetti/commit/c6f57aa42175a47700474f8da0e49cd3c75a98a8)) +* continue history after catalog readiness ([1766d33](https://github.com/vibecook-dev/spaghetti/commit/1766d3358c6d64369eade584789adf992f92e76d)) +* coordinate authorized RFC 012B catalog builds ([0595b8a](https://github.com/vibecook-dev/spaghetti/commit/0595b8ae112c6b7667f8656d6263d86ae2d5a8c0)) +* coordinate RFC 012B workloads fairly ([994028c](https://github.com/vibecook-dev/spaghetti/commit/994028c97f8f0cbc382aef23f70d73e582350f84)) +* cover RFC 012C effective-state dimensions ([4eef047](https://github.com/vibecook-dev/spaghetti/commit/4eef047bcd8c63360cef360aac92c87873d1a8ec)) +* define RFC 012B coverage-plan successors ([55a970b](https://github.com/vibecook-dev/spaghetti/commit/55a970be6d9e4751381584e2486758c96fe77f28)) +* derive Claude RFC 012D scope joins ([506bcd4](https://github.com/vibecook-dev/spaghetti/commit/506bcd4b46303a51994cfbf1cb31086f0bfb614b)) +* derive RFC 012A tier digests from decoded facts ([d7b8d8c](https://github.com/vibecook-dev/spaghetti/commit/d7b8d8ce323148859793d8a67ad5d0a5f2bd1f1d)) +* dispatch known RFC 012D wire events ([1bda3ee](https://github.com/vibecook-dev/spaghetti/commit/1bda3ee0549b0c1ae4f86146f6354407220cbff8)) +* **engine:** make response-level usage the only usage query ([619ba21](https://github.com/vibecook-dev/spaghetti/commit/619ba21e7043a6bec9df127dfaa1757179092d3b)) +* execute catalog reads on query workers ([eadb752](https://github.com/vibecook-dev/spaghetti/commit/eadb752e483c5ced6c535ad3973f99897dd8185e)) +* execute confined catalog hydration ([57618ad](https://github.com/vibecook-dev/spaghetti/commit/57618ada3711f298a7132aeefb07edea29accd55)) +* execute RFC 012D related source reads ([b503a5f](https://github.com/vibecook-dev/spaghetti/commit/b503a5f99288c8501190cf2ecb88d853b980bad6)) +* expose RFC 012B selected hydration ([997ce39](https://github.com/vibecook-dev/spaghetti/commit/997ce39e378a9126ab124b5843435d553df5bbb7)) +* expose RFC 012D native observer owner ([630071e](https://github.com/vibecook-dev/spaghetti/commit/630071ed09b2e84776e02ef2c8f2a503d04bb015)) +* expose withheld RFC 012B catalog queries ([08e8d87](https://github.com/vibecook-dev/spaghetti/commit/08e8d87919404b9e239507592e15612d61163125)) +* frame authorized append directory members ([3333bc2](https://github.com/vibecook-dev/spaghetti/commit/3333bc2b94c915b5217f9e9731741ecf13f8b9ba)) +* frame scoped members with replace driver ([aa9b15d](https://github.com/vibecook-dev/spaghetti/commit/aa9b15d6a0abfd1e1524b2bfc9d146db7031d14a)) +* freeze bounded RFC 012D observer requests ([380c76d](https://github.com/vibecook-dev/spaghetti/commit/380c76d2b82b49432f29227a4980aaa813135585)) +* freeze bounded unknown evidence snapshot ([2925be5](https://github.com/vibecook-dev/spaghetti/commit/2925be57d6e1e545865a0f27a1a570b775882f48)) +* freeze catalog plan sources before reads ([1cfe06d](https://github.com/vibecook-dev/spaghetti/commit/1cfe06d026379a6e8faeea087205e2dce7180b9a)) +* freeze RFC 012D completion envelopes ([dc0fc41](https://github.com/vibecook-dev/spaghetti/commit/dc0fc417d15b8ed0c400887ff07b28c205e58dfa)) +* freeze RFC 012D poll watermarks ([c28bdef](https://github.com/vibecook-dev/spaghetti/commit/c28bdef7782af05266ba001952f0dd42b9290042)) +* freeze scoped artifact availability ([a8175c2](https://github.com/vibecook-dev/spaghetti/commit/a8175c225f43b651b5a2985cc8638301e2629ce6)) +* freeze scoped artifact availability wire ([2d1ead4](https://github.com/vibecook-dev/spaghetti/commit/2d1ead4232a864dd8ba49dc1608dc859b50cc02b)) +* gate RFC 012D scoped support preparation ([e5a0a9a](https://github.com/vibecook-dev/spaghetti/commit/e5a0a9a174abd43aebdfe90868a169a15e83f4d3)) +* **grok:** read exact per-turn usage instead of a session-scoped estimate ([99cb41c](https://github.com/vibecook-dev/spaghetti/commit/99cb41ccbfe8198f8e16f8337f4531a014e1e51f)) +* mediate RFC 012D decoder dependencies ([a7cfcb6](https://github.com/vibecook-dev/spaghetti/commit/a7cfcb6776a4cd8bf2859e22e06c8c977fa9cb9b)) +* multiplex known RFC 012D events ([612e680](https://github.com/vibecook-dev/spaghetti/commit/612e680f9ae8ae9fedd2f75e66d19e487c721cce)) +* **observer:** evaluate the declared scope program instead of restating it ([960921d](https://github.com/vibecook-dev/spaghetti/commit/960921dc18966f2d544bc3b5f2f2f9c636734cae)) +* **observer:** rebuild the store-free session observer small ([c292e00](https://github.com/vibecook-dev/spaghetti/commit/c292e005e0eab76648d190f4748387021fd0615e)) +* **observer:** surface records the decoder cannot interpret ([55d6bc3](https://github.com/vibecook-dev/spaghetti/commit/55d6bc39962ff5c1d115605a8535ba3875ffaea6)) +* order scoped artifact availability ([89e2ead](https://github.com/vibecook-dev/spaghetti/commit/89e2eada6251b0b78002b1380f1b2e789f7d84ba)) +* persist bounded RFC 012C unknown evidence ([2710e4d](https://github.com/vibecook-dev/spaghetti/commit/2710e4d8fce33ec8e47d64342e8ff79798bab7e3)) +* persist cold RFC 012B source failures ([61036f9](https://github.com/vibecook-dev/spaghetti/commit/61036f94d164e612bbc1cd771dc48477dd1db9be)) +* persist RFC 012B coverage plan replacements ([806b8d2](https://github.com/vibecook-dev/spaghetti/commit/806b8d2543f763a523a40694ca3100649dcf2a39)) +* persist RFC 012B degraded refresh recovery ([d5b92e0](https://github.com/vibecook-dev/spaghetti/commit/d5b92e0958a144eee190c165d4e0571f507d5502)) +* persist RFC 012B partial build progress ([b303b49](https://github.com/vibecook-dev/spaghetti/commit/b303b491be2b49df3f121f4669f40fc660e46bf6)) +* persist RFC 012B source generation epochs ([e98beb6](https://github.com/vibecook-dev/spaghetti/commit/e98beb622a74f0377d08c7d47c1a64991013d86d)) +* plan RFC 012D related source joins ([54bbbff](https://github.com/vibecook-dev/spaghetti/commit/54bbbff40e269fbb23208b96c5f6e27f17626e13)) +* **playground:** complete catalog-first session startup ([a49b7ac](https://github.com/vibecook-dev/spaghetti/commit/a49b7ac707b3fa0bd94571ea7a946f37226b1418)) +* **playground:** show the library from the catalog while history converges ([c301fff](https://github.com/vibecook-dev/spaghetti/commit/c301fffc91c14939a146799b02629d92b08961f2)) +* prepare configured RFC 012D append sources ([abe2961](https://github.com/vibecook-dev/spaghetti/commit/abe296170b75ed6a1c2cf54ff1076181b498be88)) +* prepare observation watchers before history scans ([5e45547](https://github.com/vibecook-dev/spaghetti/commit/5e455473629d5bce1ca121b2c67c0440ec221d7a)) +* prepare RFC 012D directory relations ([d832dbc](https://github.com/vibecook-dev/spaghetti/commit/d832dbc50aa6220e0318425207771bbf36577ed2)) +* prepare RFC 012D related source authority ([306e0bf](https://github.com/vibecook-dev/spaghetti/commit/306e0bfa50f92083daad9adb7c0a7f915a58a1c6)) +* preserve unknown RFC 012D wire events ([765dda4](https://github.com/vibecook-dev/spaghetti/commit/765dda46adb7eed15eda9a444d8310a46408d0b1)) +* project catalog membership into typed publication ([62ffa13](https://github.com/vibecook-dev/spaghetti/commit/62ffa133699621f6b34584a79660fcef343b2c1b)) +* project Claude catalog members for publication ([e5c27e3](https://github.com/vibecook-dev/spaghetti/commit/e5c27e3e8920ebcae8ae4b45b77bd00ca9d98bb4)) +* project Codex catalog members for publication ([3d187ba](https://github.com/vibecook-dev/spaghetti/commit/3d187ba7d1032c64c12a9fcc802323e5a5f997b5)) +* project Grok catalog members for publication ([66a7fe2](https://github.com/vibecook-dev/spaghetti/commit/66a7fe29165e125edd44fa5d1611f809103cffd8)) +* publish catalog refreshes from complete coverage ([5932f79](https://github.com/vibecook-dev/spaghetti/commit/5932f7946cede4cffadd1772abea9e5e4bac1172)) +* publish initial catalogs from frozen plans ([42704ad](https://github.com/vibecook-dev/spaghetti/commit/42704adcef3fa7b7d686f85b1c59c9e0080a0330)) +* qualify RFC 012C effective state ([45ce567](https://github.com/vibecook-dev/spaghetti/commit/45ce567f0b50b127642340c1d7ee29be31cb2476)) +* reconcile adapter catalog refresh scans ([2205549](https://github.com/vibecook-dev/spaghetti/commit/2205549978d01070fed0936db2ad0543987ab8a2)) +* reconcile all RFC 012C semantic families ([fd69883](https://github.com/vibecook-dev/spaghetti/commit/fd698839b209eac2000007784fa95e6e76935e01)) +* reconcile catalog refresh source generations ([9e66a45](https://github.com/vibecook-dev/spaghetti/commit/9e66a454eafe388221d6e80f3fada8858e97083b)) +* reconcile RFC 012D related sources ([6748df4](https://github.com/vibecook-dev/spaghetti/commit/6748df44c2c14e680f48e7846c948deeb22ad266)) +* recover RFC 012B initial integrity failures ([aea79a7](https://github.com/vibecook-dev/spaghetti/commit/aea79a7a0b2805ff45cfbd6bc8cd02ffd0741859)) +* recover RFC 012B integrity errors ([8910505](https://github.com/vibecook-dev/spaghetti/commit/89105058f2b724b842b7f038581ebf016261042f)) +* reduce bounded RFC 012C unknown evidence ([4b20b5f](https://github.com/vibecook-dev/spaghetti/commit/4b20b5fa7132abb1c2d3f5f251635656d7ae11a8)) +* reduce RFC 012C content-block state ([4e6d328](https://github.com/vibecook-dev/spaghetti/commit/4e6d328f900cbbc02fbfa13343b85d316b6e0d3b)) +* reduce RFC 012C native marker state ([7ce4ae0](https://github.com/vibecook-dev/spaghetti/commit/7ce4ae0150e95c7cc1e6ec463ce96d9327966878)) +* refresh configured catalogs after source changes ([32e9867](https://github.com/vibecook-dev/spaghetti/commit/32e98670d7122fe2a707b562694c036cbd607c50)) +* release configured history scans concurrently ([00cd0f5](https://github.com/vibecook-dev/spaghetti/commit/00cd0f5801be392438f4b534b89d3f889c182d29)) +* replay append-delimited scoped directory members ([fb44b96](https://github.com/vibecook-dev/spaghetti/commit/fb44b9672d6e994de16fde83a7481044d5d1ca8b)) +* replay RFC 012D directory snapshots ([e51b1a0](https://github.com/vibecook-dev/spaghetti/commit/e51b1a087d0094985a88229b1a53749f21546d51)) +* resync RFC 012D directory polls ([374df12](https://github.com/vibecook-dev/spaghetti/commit/374df122ad32ee76c006f9e4f5543384b6e38fb8)) +* retain authorized observation source contracts ([9238ac2](https://github.com/vibecook-dev/spaghetti/commit/9238ac2dbc951feddf903123c3c95cbfa8a6bd2b)) +* retain bounded unknown evidence in scoped state ([cebdee0](https://github.com/vibecook-dev/spaghetti/commit/cebdee099942781994a425fa63b5454c8be6ecb8)) +* retain RFC 012D scoped join state ([a4ff2f9](https://github.com/vibecook-dev/spaghetti/commit/a4ff2f96162b21f523d6abea8cdacfa162f85ca1)) +* retain RFC 012D sidecar in event drains ([b9d8824](https://github.com/vibecook-dev/spaghetti/commit/b9d8824ef5a6d89c3e275459e7d37ad3b507353b)) +* retain scoped member bootstrap authority ([a951d2d](https://github.com/vibecook-dev/spaghetti/commit/a951d2d77213650b3cf051b3f00f689613a82a98)) +* **rfc-012a:** add Factory candidate adapter without common-runtime change ([b968bab](https://github.com/vibecook-dev/spaghetti/commit/b968bab8f912f8e8f837306599def9c658591fa0)) +* **rfc-012:** add frozen X1/X2/B5/D5 experiment helpers ([31b8362](https://github.com/vibecook-dev/spaghetti/commit/31b8362e4e0be05bc4c4851da88a3d82485cb015)) +* **rfc-012a:** promote Claude 2.1.223 durable path with rollback ([7b90858](https://github.com/vibecook-dev/spaghetti/commit/7b90858f51e55ea6371b8eafa693ed07c5f6d870)) +* **rfc-012b:** bind Claude catalog producer to source-instance roots ([ef4536f](https://github.com/vibecook-dev/spaghetti/commit/ef4536fffdaca94b24a3554f7bdf028a451be05d)) +* **rfc-012:** C1 state/interaction fixtures and remaining Exit evidence ([b591bcc](https://github.com/vibecook-dev/spaghetti/commit/b591bcc33755ed837a187c8048c3cf5bcef70392)) +* **rfc-012:** close remaining honest Wave III gates except X4 ([994f145](https://github.com/vibecook-dev/spaghetti/commit/994f1453efbdf7feac5cb12193b342337019a12f)) +* **rfc-012:** close remaining program gates with promoted fixture-agent ([c51c072](https://github.com/vibecook-dev/spaghetti/commit/c51c072d8f3419a6c8fe2a09e81e2e17fa1ed94d)) +* **rfc-012c:** merge durable and scoped usage by semantic revision ([1cc37da](https://github.com/vibecook-dev/spaghetti/commit/1cc37da94b06b772afb90a2e5753e02b322d5263)) +* **rfc-012d:** decode scoped directory children through replace driver ([28c2ddb](https://github.com/vibecook-dev/spaghetti/commit/28c2ddb8afd6e0528e37e84a8f8ffad5ff97aabf)) +* **rfc-012d:** feature-flag watchSessionObservationShadow beside transcript tail ([591b79f](https://github.com/vibecook-dev/spaghetti/commit/591b79f576a12946ae54896d37c3436aafd310d0)) +* **rfc-012:** freeze scoped effective-state replacement from C1 ([c735eea](https://github.com/vibecook-dev/spaghetti/commit/c735eea9ee7e4b43de19cd9b2ad2f680f1878704)) +* **rfc-012:** freeze scoped message and task replacement from C1 ([e6950e1](https://github.com/vibecook-dev/spaghetti/commit/e6950e12b53111e354911a0ab168d693817c39d7)) +* **rfc-012:** freeze scoped plan replacement from C1 ([ce6fb4d](https://github.com/vibecook-dev/spaghetti/commit/ce6fb4d82c88098723067001de7921ba7662a838)) +* **rfc-012:** freeze scoped tool replacement from C1 ([60252db](https://github.com/vibecook-dev/spaghetti/commit/60252db7455890b1a4ced459844e81c7cee564c8)) +* **rfc-012:** freeze scoped user-input-request replacement from C1 ([d2a2228](https://github.com/vibecook-dev/spaghetti/commit/d2a222856b6f9f32b2fed9d68d9f5a1753279a44)) +* **rfc-012:** start honest Wave III remaining gates ([ca8fc3f](https://github.com/vibecook-dev/spaghetti/commit/ca8fc3fbba43adaaeb8e4042f48dfebe21d5c7c8)) +* schedule bounded RFC 012B catalog hydration ([c083bfe](https://github.com/vibecook-dev/spaghetti/commit/c083bfea09fd745f59851895999888a41c7e8398)) +* **sdk,cli:** serve corrected usage to the CLI and playground ([74b3add](https://github.com/vibecook-dev/spaghetti/commit/74b3add057253faecb91c51cc5d82c58dad19e91)) +* **sdk:** expose session decode state and identity ([c0232c9](https://github.com/vibecook-dev/spaghetti/commit/c0232c91adc4f22bb6eaf1e87694aec3a787e7fb)) +* **sdk:** expose the session observer to Node and retire the old wire ([42360e4](https://github.com/vibecook-dev/spaghetti/commit/42360e4c2cafed7c0e59d65706c0491603d2c40e)) +* **sdk:** generate TypeScript bindings from Rust with ts-rs ([a8bfe0e](https://github.com/vibecook-dev/spaghetti/commit/a8bfe0e8c87ac1733bd5de4736543fe07d8ebea3)) +* **sdk:** let a consumer name the value type a handler takes ([1d4fba0](https://github.com/vibecook-dev/spaghetti/commit/1d4fba0b1154100407a233c3446cc36bf2635f26)) +* **sdk:** let an AbortSignal end an observeSession iteration ([c981633](https://github.com/vibecook-dev/spaghetti/commit/c981633a56cab310f47e0294a0ce3ec20c3bdbb0)) +* **sdk:** observeSession — the store-free session observer as an async iterator ([3a2c0c4](https://github.com/vibecook-dev/spaghetti/commit/3a2c0c4237b8195fc3275df1b26b89d16e9ac4b5)) +* select remaining RFC 012C scoped families ([d478679](https://github.com/vibecook-dev/spaghetti/commit/d4786799988a3d3584228cbd1cdf417d67af097c)) +* shadow Claude tail with RFC 012D observer ([7c916bc](https://github.com/vibecook-dev/spaghetti/commit/7c916bc054004a639e59e64fbb54885ea9e5cc7c)) +* share RFC 012D bounded pass permits ([9402172](https://github.com/vibecook-dev/spaghetti/commit/94021723c68d2f6c2b1ffaa708dc1aad539af868)) +* start configured sources behind a global catalog barrier ([dba4f45](https://github.com/vibecook-dev/spaghetti/commit/dba4f454cc70a2ffcc67d13b2d3158430d409c4f)) +* start observation hosts through global planning ([ca7e1fc](https://github.com/vibecook-dev/spaghetti/commit/ca7e1fcecbc0ee5b7bc710a23c3fe604964aedbf)) +* supervise configured RFC 012D append observers ([3e8bf44](https://github.com/vibecook-dev/spaghetti/commit/3e8bf44d7fca665a56498772b1e239991343eec6)) +* supervise RFC 012D related source replay ([ddadd5b](https://github.com/vibecook-dev/spaghetti/commit/ddadd5ba8efe5ebc53f2507692f96606263b51fa)) +* track RFC 012D applied readiness ([eb68a6a](https://github.com/vibecook-dev/spaghetti/commit/eb68a6aed4c72382a6d091958a617c09b31f2bcd)) +* track RFC 012D applied resync ([62e6a0b](https://github.com/vibecook-dev/spaghetti/commit/62e6a0b6af5d411b010c0a9ca9bb6edeaa74bba5)) +* unify RFC 012C effective-state reduction ([e8ea18e](https://github.com/vibecook-dev/spaghetti/commit/e8ea18e105b954f364dc9b0ab2bfa208d3ce06c1)) +* wire RFC 012B coverage plan replacements ([7dd5143](https://github.com/vibecook-dev/spaghetti/commit/7dd514360feda9e110d68957acb6d2871189bfcf)) + + +### Bug Fixes + +* authorize bounded directory membership sources ([f3bca3e](https://github.com/vibecook-dev/spaghetti/commit/f3bca3e68f51f526305ea3add35143c1826b2f83)) +* bind catalog components to verified source streams ([5f1d5ee](https://github.com/vibecook-dev/spaghetti/commit/5f1d5ee1edba8e73eaac096deb862c4fb62ad979)) +* bind catalog queries to held snapshots ([8c327cd](https://github.com/vibecook-dev/spaghetti/commit/8c327cda13efad3efbd6daa69c03e02c912c755e)) +* bind RFC 012C identities to semantic values ([7fa5ede](https://github.com/vibecook-dev/spaghetti/commit/7fa5ede9bfaaef321c21230d1f174b1cf1de17a5)) +* bind RFC 012C live merge identities ([7a4198e](https://github.com/vibecook-dev/spaghetti/commit/7a4198eb5767a014c0be96a8334de94e412c2930)) +* bind RFC 012D directory reads to passes ([5173dbc](https://github.com/vibecook-dev/spaghetti/commit/5173dbcd17e945498f0d545575eacca3ad9272d8)) +* bind runtime fact revisions to the record that proved them ([debff36](https://github.com/vibecook-dev/spaghetti/commit/debff3677999f2a90280d2a299c2d7dbe4c365f7)) +* bind scoped directory identity authority ([149442a](https://github.com/vibecook-dev/spaghetti/commit/149442a7cd99b41685cf898c25faf8158d566489)) +* bound directory snapshot fan-out ([a2bb82d](https://github.com/vibecook-dev/spaghetti/commit/a2bb82df39a5cc435b5614e254041cf6b4991935)) +* bound retained unknown record evidence ([ca13e17](https://github.com/vibecook-dev/spaghetti/commit/ca13e17161f3383e679a900b62ed99c3f28ef8b5)) +* bound RFC 012D watcher scheduling ([76ca2ff](https://github.com/vibecook-dev/spaghetti/commit/76ca2ff47a059bb233db3bba19062d06b49850c7)) +* **catalog:** admit session directories, and keep the library off the ingest path ([20afef6](https://github.com/vibecook-dev/spaghetti/commit/20afef6c11f9f7c68069d9b20688bf27c4ce2d49)) +* **catalog:** keep a failure reason inside the row that records it ([d0fdd5d](https://github.com/vibecook-dev/spaghetti/commit/d0fdd5d4124052fa3eacc938190565a717b967dd)) +* **catalog:** keep listProjects/listSessions on their existing contract ([497b95c](https://github.com/vibecook-dev/spaghetti/commit/497b95c7ee722a17033ff8004603a390e649a785)) +* **catalog:** name claude projects from decoded session cwd ([d17bb14](https://github.com/vibecook-dev/spaghetti/commit/d17bb1417784e52d83c541ef646ad1ca81c465ad)) +* **catalog:** recover entity keys by prefix, not by splitting the id ([7bbb725](https://github.com/vibecook-dev/spaghetti/commit/7bbb725481baa4f8ad7133087b78027fabc11d01)) +* **ci:** close RFC 012 landing gaps ([c8ebeca](https://github.com/vibecook-dev/spaghetti/commit/c8ebecaa57f28406f51b327385b1f5f0abc5fbf4)) +* **ci:** compare index sets, not index creation order, in the ingest oracle ([bd2b29b](https://github.com/vibecook-dev/spaghetti/commit/bd2b29b495a7fec7c20b271adc9459601988540c)) +* **ci:** restore cross-platform landing gates ([68e53d8](https://github.com/vibecook-dev/spaghetti/commit/68e53d8039cb3a18361c383291a864de8c9bdbc6)) +* **ci:** satisfy Rust 1.98 digest parsing lint ([50386d6](https://github.com/vibecook-dev/spaghetti/commit/50386d6ef1e5d5abc9b6290c1aa5c65c91ae295f)) +* **cli:** resolve a project by the id the catalog handed the caller ([856ac91](https://github.com/vibecook-dev/spaghetti/commit/856ac91fb93933ebd099c7a6b6886db914ab1f4c)) +* compose RFC 012D member coverage ([d01663c](https://github.com/vibecook-dev/spaghetti/commit/d01663c0b4edeb73def170be57a19a592c86eb9e)) +* consume RFC 012D contract replay once ([0dd9351](https://github.com/vibecook-dev/spaghetti/commit/0dd9351e9dd2ad673cdc58c3e6780abe5a5dd8c8)) +* **core:** make source paths portable on Windows ([68c1e0a](https://github.com/vibecook-dev/spaghetti/commit/68c1e0a281c1197847dcddf831653664f91ffa74)) +* decode scoped members from authorized reads ([a4dbf80](https://github.com/vibecook-dev/spaghetti/commit/a4dbf8027bb24c14cdf37fa19a91e06cc7839a89)) +* **engine:** gate remaining deferred-index probes in detail, timeline, and orchestration queries ([eac0e32](https://github.com/vibecook-dev/spaghetti/commit/eac0e32a84754838ba5bc0cb1e5247407d3cf3c8)) +* **engine:** keep catalog and history queries bounded during deferred bootstrap ([ad0cc3d](https://github.com/vibecook-dev/spaghetti/commit/ad0cc3de95e389a87757ac3119e8ea1987c7c7d9)) +* **engine:** keep catalog-first startup nonblocking ([c0e5cbf](https://github.com/vibecook-dev/spaghetti/commit/c0e5cbff1fb9e8d81643bc8bb941e5964420fa38)) +* **engine:** one spelling for every opaque RFC 012A reference ([25ae8e2](https://github.com/vibecook-dev/spaghetti/commit/25ae8e2ea0968196eb8c5bc0679b5f06f849f734)) +* **engine:** record rejected semantic revisions instead of failing the commit ([e847ca6](https://github.com/vibecook-dev/spaghetti/commit/e847ca66ea56e36281afc249875390880018ec6d)) +* **engine:** satisfy the projection ratchet; admit the atis-latch record type ([c2852b8](https://github.com/vibecook-dev/spaghetti/commit/c2852b80b45cfe81a6b4ef94f1cafe7fd703b41d)) +* **engine:** stop the usage-v2 intern from rescanning every contribution ([669c34d](https://github.com/vibecook-dev/spaghetti/commit/669c34d9d13883ca1f574352d4b9be117eba2cd9)) +* expose blocked catalog retry coverage ([d0b0974](https://github.com/vibecook-dev/spaghetti/commit/d0b097498876e7a0255ef1e310bff422dc879d8c)) +* fail closed on unfrozen RFC 012D interaction wire ([10e88d3](https://github.com/vibecook-dev/spaghetti/commit/10e88d37a452a4dbbcb518bcf1dac57c232f5e51)) +* isolate RFC 012D bootstrap object failures ([eae57fd](https://github.com/vibecook-dev/spaghetti/commit/eae57fdac3104b89d673cdf7c05edd798dff55d1)) +* keep a truncated plan step a canonical runtime key ([4568796](https://github.com/vibecook-dev/spaghetti/commit/4568796db3c822351b4bd5a0a0aa5b87e6ef3fd6)) +* keep catalog membership stable across policy views ([307c64b](https://github.com/vibecook-dev/spaghetti/commit/307c64b81e5dfb405b1952a6759599399c03d99f)) +* make RFC 012A scope joins replaceable ([48ce7b3](https://github.com/vibecook-dev/spaghetti/commit/48ce7b34484a6496deb62636871bfbac02f5e58e)) +* make RFC 012D bootstrap completion atomic ([a798f02](https://github.com/vibecook-dev/spaghetti/commit/a798f0297f2b6e3750a2fb3dc448f8aab3ead441)) +* **napi:** clear non-dead-code clippy lints and gate the fixture-parser module ([b2cbf86](https://github.com/vibecook-dev/spaghetti/commit/b2cbf864837f7a3aa1150cc35dd0dffa3497d570)) +* negotiate RFC 012D unknown wire before probing ([e13724e](https://github.com/vibecook-dev/spaghetti/commit/e13724e8b6c86dfcae474a900b95646cfe417fd7)) +* **observer:** retraction names the generation that owned the fact ([beb08e3](https://github.com/vibecook-dev/spaghetti/commit/beb08e32804e68d97d02de8289d69b791cf57726)) +* **playground:** wait for supervisors before asserting on them ([e09ee94](https://github.com/vibecook-dev/spaghetti/commit/e09ee9498bf2a2e794a078fdfe0700e75a905e8a)) +* preserve artifact replay foreign keys ([c986373](https://github.com/vibecook-dev/spaghetti/commit/c98637322c5874cd2fcad0172172972e5925f698)) +* preserve catalog project reassociation evidence ([27a3e7a](https://github.com/vibecook-dev/spaghetti/commit/27a3e7a59a3151bdf4bf1da8ebea0208f46df9b7)) +* preserve directory members across corrections ([6af4b29](https://github.com/vibecook-dev/spaghetti/commit/6af4b29f87f9b0ae179f783477bcd3069b0b432a)) +* preserve RFC 012C selected identity axes ([a3cc8b5](https://github.com/vibecook-dev/spaghetti/commit/a3cc8b59bc920cc02f576ce23b8b4c92af19f4bb)) +* preserve RFC 012D related source ownership ([68cf2d9](https://github.com/vibecook-dev/spaghetti/commit/68cf2d960399ff5deadb65474458a560b07c9e45)) +* preserve RFC 012D watcher overflow ([d58ea42](https://github.com/vibecook-dev/spaghetti/commit/d58ea42c27a45dac02eabbda959052401aa2100b)) +* publish coherent query completion telemetry ([7dfedbb](https://github.com/vibecook-dev/spaghetti/commit/7dfedbb4e778a235ee5b214d4edf1bae6a1e9a09)) +* publish cold RFC 012B replacement epochs ([ba261f0](https://github.com/vibecook-dev/spaghetti/commit/ba261f029ae14798ad0a0f562b53f10167941937)) +* recover cold RFC 012B integrity failures ([72218db](https://github.com/vibecook-dev/spaghetti/commit/72218db6a9aca083c7bf01770ddeebd00a8f86f2)) +* redact RFC 012C collector source path ([3e0fac1](https://github.com/vibecook-dev/spaghetti/commit/3e0fac16ab2e5917c28b44bb2dd3be4b4e9c6b68)) +* reject incomplete catalog authority before source access ([643ddee](https://github.com/vibecook-dev/spaghetti/commit/643ddeea1b31fa804631dccd459d57dd1fcac065)) +* reject uncomposed RFC 012D relations ([9f9749b](https://github.com/vibecook-dev/spaghetti/commit/9f9749bde2efce4d2ee2ea301f66f2d7c527a796)) +* replay canonical artifact revisions ([9dd7428](https://github.com/vibecook-dev/spaghetti/commit/9dd74287dee6823c5f198cdc140c92c80211e3d6)) +* report selected hydration honestly ([91c04e0](https://github.com/vibecook-dev/spaghetti/commit/91c04e08847f767fccc64cbcb6e0ed74fb02549f)) +* reserve related source bytes per object ([302c96c](https://github.com/vibecook-dev/spaghetti/commit/302c96c5a8fe70d8478e75a548d319a6cb4247d7)) +* reserve RFC 012D related membership capacity ([b382c21](https://github.com/vibecook-dev/spaghetti/commit/b382c211acd6236209ec85fb6a8d961fa3ed6f01)) +* restore RFC 012 authority and evidence boundaries ([465dd46](https://github.com/vibecook-dev/spaghetti/commit/465dd4663b4c8d4566c9599ce97257335160891c)) +* retain prior-plan catalog continuations ([220f604](https://github.com/vibecook-dev/spaghetti/commit/220f604c0ee1f6f2358f11db67731926f7efb52e)) +* retain RFC 012D directory owner bindings ([ba978e8](https://github.com/vibecook-dev/spaghetti/commit/ba978e872417397d329f2800e5d2c93240690c90)) +* retain RFC 012D dynamic source state ([0d19336](https://github.com/vibecook-dev/spaghetti/commit/0d193362de8d8fcebdc5f81d08410049e39272d1)) +* revalidate RFC 012D directory membership ([912bc72](https://github.com/vibecook-dev/spaghetti/commit/912bc72b1ec9072ffa72e061cf999ba0a40c4319)) +* **rfc-012:** admit catalog queries before FTS and honest remaining gates ([9d6be3a](https://github.com/vibecook-dev/spaghetti/commit/9d6be3ae31d4eeb26722ced1b5e9926521aeae08)) +* **rfc-012a:** leave promoted Claude artifact digest unpinned ([58e0005](https://github.com/vibecook-dev/spaghetti/commit/58e0005d47ff3a6c71dc5bf55392134c3f6dec3c)) +* **rfc-012:** close honesty leftovers, Promoted directory composition, and query-pass-pool ([c5d57b8](https://github.com/vibecook-dev/spaghetti/commit/c5d57b8de611265fabec6c0731c83db169389fce)) +* route Claude catalog decoding through common runtime ([9189065](https://github.com/vibecook-dev/spaghetti/commit/91890657119b4cde3cc3185bfd788990a7a1e2ca)) +* route Claude catalog oracles through common runtime ([ff5a5f4](https://github.com/vibecook-dev/spaghetti/commit/ff5a5f44f0a34f799b77bb13fe72dc17ce440c50)) +* route Codex catalog oracle through common runtime ([53f43a3](https://github.com/vibecook-dev/spaghetti/commit/53f43a3a01cc6c149374954b2794c03be9cb13c1)) +* route cold RFC 012B source failures ([c12fd74](https://github.com/vibecook-dev/spaghetti/commit/c12fd74b163222ba4f840468b4989bfcc8d11da8)) +* route Grok catalog oracle through common runtime ([9a279e8](https://github.com/vibecook-dev/spaghetti/commit/9a279e8f17b2beef6b38b3c523853e95cf234cf9)) +* **sdk:** a search that outruns its index is pending, not an internal failure ([d74bd41](https://github.com/vibecook-dev/spaghetti/commit/d74bd4126189d42ca3fc4d24fdcd13f32141b7ca)) +* **sdk:** default the observation host back to cold-build query bootstrap ([ed40a3b](https://github.com/vibecook-dev/spaghetti/commit/ed40a3b0b4d9ce015ace0895861066d2c9b52c34)) +* **sdk:** do not fail a suite because a temp directory outlived its handle ([4228949](https://github.com/vibecook-dev/spaghetti/commit/42289498b282f299f197d87e449341383ad2941f)) +* **sdk:** make an empty extending interface an alias so `pnpm lint` passes ([a82f598](https://github.com/vibecook-dev/spaghetti/commit/a82f598a2a06cb6a5032d1cb5b5a4714b4a4f4a6)) +* **sdk:** re-apply the empty-interface lint fix lost in the L1/L2 merge ([f9a1b02](https://github.com/vibecook-dev/spaghetti/commit/f9a1b02c75162fb8b7ff11b20016a39b809e7976)) +* share RFC 012C message log reduction ([410d99a](https://github.com/vibecook-dev/spaghetti/commit/410d99ac903677b976a384bf59aefd6026a10f44)) +* share RFC 012C plan reduction ([c1a7fa4](https://github.com/vibecook-dev/spaghetti/commit/c1a7fa4ee89a7235994e3465cd00c832abe1d3b1)) +* share RFC 012C task reduction ([64de86e](https://github.com/vibecook-dev/spaghetti/commit/64de86ecc61f8a947f497f315dded7e9dfa3a42c)) +* share RFC 012C tool reduction ([68a3660](https://github.com/vibecook-dev/spaghetti/commit/68a3660612818846a2e2aa67a3b92b605ba451e4)) +* share RFC 012C user-input lifecycle reduction ([32cc6da](https://github.com/vibecook-dev/spaghetti/commit/32cc6da1134aadb78e81fc516f7d21e4b60c19e8)) +* surface what failed a configured observation startup ([50c75ac](https://github.com/vibecook-dev/spaghetti/commit/50c75ace5dd79f63b44639e4cabdda60df87ea6d)) +* treat unknown RFC 012C evidence as incomplete ([ec87514](https://github.com/vibecook-dev/spaghetti/commit/ec875146222b097c829e109e6f4cadb8e7d79c73)) +* validate sanitized unknown evidence ([2beac04](https://github.com/vibecook-dev/spaghetti/commit/2beac04936d735508336232db7807b486d122202)) +* version RFC 012D unknown-evidence watermarks ([a7059d2](https://github.com/vibecook-dev/spaghetti/commit/a7059d231b9dc884a92971afc9564a2c777b4dbd)) +* **windows:** normalize catalog paths ([9eb6c36](https://github.com/vibecook-dev/spaghetti/commit/9eb6c36bde7fed9129eac4b55d3034eebcfa9a81)) + + +### Performance Improvements + +* **catalog:** decide hydration by seek, not by counting every message ([d422939](https://github.com/vibecook-dev/spaghetti/commit/d422939c0307e3a9f56478336067e01ade4dd130)) +* **claude:** stop parsing every transcript record four times ([00d2854](https://github.com/vibecook-dev/spaghetti/commit/00d285487e9aa3029d215e54648e2cf4dd8f2984)) +* **engine:** evaluate the usage scope bridge once per query ([3239024](https://github.com/vibecook-dev/spaghetti/commit/323902429c31b36bd3958e51cc482f028c796c37)) +* **engine:** reader-safe bootstrap checkpoints, synchronous=OFF cold builds, self-healing validation failures ([c4d4090](https://github.com/vibecook-dev/spaghetti/commit/c4d4090436615c863e273bdd2c54e1a7b6e7408a)) +* **observer:** reconcile what changed, and stop cutting bootstrap short ([7195551](https://github.com/vibecook-dev/spaghetti/commit/71955513939c0fef25766440c754164e6bb0312b)) +* **observer:** record confirmed absence, so a missing sidecar costs one stat ([b4cfb18](https://github.com/vibecook-dev/spaghetti/commit/b4cfb18687908a2c8bfa513269e983405beee1a1)) +* **observer:** settle the transport on a measured comparison ([637ef80](https://github.com/vibecook-dev/spaghetti/commit/637ef80ae547f520b31fd0f073d337984e9c6df0)) + + +### Code Refactoring + +* **sdk:** delete the consumer-less RFC 012D validators and observer shims ([86ad9e5](https://github.com/vibecook-dev/spaghetti/commit/86ad9e5b6a7d1f438d9e78f70b3f77a8e4c45d11)) + ## [0.7.0](https://github.com/vibecook-dev/spaghetti/compare/spaghetti-v0.6.2...spaghetti-v0.7.0) (2026-08-11) diff --git a/Cargo.lock b/Cargo.lock index 7f3876de..8a405260 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1179,7 +1179,7 @@ dependencies = [ [[package]] name = "spaghetti-napi" -version = "0.7.0" +version = "0.8.0" dependencies = [ "anyhow", "base64", diff --git a/crates/spaghetti-napi/Cargo.toml b/crates/spaghetti-napi/Cargo.toml index 0e3a3ef7..858c267f 100644 --- a/crates/spaghetti-napi/Cargo.toml +++ b/crates/spaghetti-napi/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "spaghetti-napi" -version = "0.7.0" # x-release-please-version +version = "0.8.0" # x-release-please-version edition.workspace = true license.workspace = true repository.workspace = true diff --git a/crates/spaghetti-napi/npm/darwin-arm64/package.json b/crates/spaghetti-napi/npm/darwin-arm64/package.json index ca005bf6..ffde1e08 100644 --- a/crates/spaghetti-napi/npm/darwin-arm64/package.json +++ b/crates/spaghetti-napi/npm/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "@vibecook/spaghetti-sdk-native-darwin-arm64", - "version": "0.7.0", + "version": "0.8.0", "description": "Native (Rust) ingest core for @vibecook/spaghetti-sdk — darwin-arm64 binary", "cpu": [ "arm64" diff --git a/crates/spaghetti-napi/npm/darwin-x64/package.json b/crates/spaghetti-napi/npm/darwin-x64/package.json index c7eeedf8..82347dcb 100644 --- a/crates/spaghetti-napi/npm/darwin-x64/package.json +++ b/crates/spaghetti-napi/npm/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "@vibecook/spaghetti-sdk-native-darwin-x64", - "version": "0.7.0", + "version": "0.8.0", "description": "Native (Rust) ingest core for @vibecook/spaghetti-sdk — darwin-x64 binary", "cpu": [ "x64" diff --git a/crates/spaghetti-napi/npm/linux-arm64-gnu/package.json b/crates/spaghetti-napi/npm/linux-arm64-gnu/package.json index 8739a0a2..abaeb380 100644 --- a/crates/spaghetti-napi/npm/linux-arm64-gnu/package.json +++ b/crates/spaghetti-napi/npm/linux-arm64-gnu/package.json @@ -1,6 +1,6 @@ { "name": "@vibecook/spaghetti-sdk-native-linux-arm64-gnu", - "version": "0.7.0", + "version": "0.8.0", "description": "Native (Rust) ingest core for @vibecook/spaghetti-sdk — linux-arm64-gnu binary", "cpu": [ "arm64" diff --git a/crates/spaghetti-napi/npm/linux-x64-gnu/package.json b/crates/spaghetti-napi/npm/linux-x64-gnu/package.json index 69630bd8..7a2640b7 100644 --- a/crates/spaghetti-napi/npm/linux-x64-gnu/package.json +++ b/crates/spaghetti-napi/npm/linux-x64-gnu/package.json @@ -1,6 +1,6 @@ { "name": "@vibecook/spaghetti-sdk-native-linux-x64-gnu", - "version": "0.7.0", + "version": "0.8.0", "description": "Native (Rust) ingest core for @vibecook/spaghetti-sdk — linux-x64-gnu binary", "cpu": [ "x64" diff --git a/crates/spaghetti-napi/npm/win32-arm64-msvc/package.json b/crates/spaghetti-napi/npm/win32-arm64-msvc/package.json index c564b4d8..ebc120a2 100644 --- a/crates/spaghetti-napi/npm/win32-arm64-msvc/package.json +++ b/crates/spaghetti-napi/npm/win32-arm64-msvc/package.json @@ -1,6 +1,6 @@ { "name": "@vibecook/spaghetti-sdk-native-win32-arm64-msvc", - "version": "0.7.0", + "version": "0.8.0", "description": "Native (Rust) ingest core for @vibecook/spaghetti-sdk — win32-arm64-msvc binary", "cpu": [ "arm64" diff --git a/crates/spaghetti-napi/npm/win32-x64-msvc/package.json b/crates/spaghetti-napi/npm/win32-x64-msvc/package.json index 57c5eefe..d8a74874 100644 --- a/crates/spaghetti-napi/npm/win32-x64-msvc/package.json +++ b/crates/spaghetti-napi/npm/win32-x64-msvc/package.json @@ -1,6 +1,6 @@ { "name": "@vibecook/spaghetti-sdk-native-win32-x64-msvc", - "version": "0.7.0", + "version": "0.8.0", "description": "Native (Rust) ingest core for @vibecook/spaghetti-sdk — win32-x64-msvc binary", "cpu": [ "x64" diff --git a/crates/spaghetti-napi/package.json b/crates/spaghetti-napi/package.json index b9582c19..7998df37 100644 --- a/crates/spaghetti-napi/package.json +++ b/crates/spaghetti-napi/package.json @@ -1,6 +1,6 @@ { "name": "@vibecook/spaghetti-sdk-native", - "version": "0.7.0", + "version": "0.8.0", "description": "Native (Rust) ingest core for @vibecook/spaghetti-sdk", "main": "index.js", "types": "index.d.ts", diff --git a/package.json b/package.json index 11557f47..4630feda 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "spaghetti", - "version": "0.7.0", + "version": "0.8.0", "private": true, "type": "module", "description": "Local-first Claude Code explorer for searching sessions, browsing agent artifacts, and querying your history from the terminal", diff --git a/packages/cli/package.json b/packages/cli/package.json index 3f4175b1..71aba296 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@vibecook/spaghetti", - "version": "0.7.0", + "version": "0.8.0", "type": "module", "bin": { "spaghetti": "./dist/bin.js", diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 8ff4ee7f..23db3ec6 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@vibecook/spaghetti-sdk", - "version": "0.7.0", + "version": "0.8.0", "type": "module", "main": "./dist/index.cjs", "module": "./dist/index.js",