{"assets":[{"access":"public","architecture":"amd64","kind":"archive","name":"sonny-api_0.12.8_linux_amd64.tar.gz","platform":"linux","sha256":"4d09a9e65147c850c15b288d98ace87cf4c9a6526b732a1c702f15d40354154b","size_bytes":57623614,"url":"https://downloads.codepros.org/sonny/0.12.8/sonny-api_0.12.8_linux_amd64.tar.gz"},{"access":"public","architecture":"arm64","kind":"archive","name":"sonny-api_0.12.8_linux_arm64.tar.gz","platform":"linux","sha256":"5e77e02354682e1030eb1a63b25d728e48fb2bcca451eedf3203199bafa7171f","size_bytes":53124535,"url":"https://downloads.codepros.org/sonny/0.12.8/sonny-api_0.12.8_linux_arm64.tar.gz"},{"access":"gitlab_access_required","architecture":"amd64","kind":"installer","name":"sonny-desktop-0.12.8-1.x86_64.rpm","platform":"linux","sha256":"27fa3beb60d7e2ea6bad8412cc7cbc5b429d5f7e4f2375f2583be0713fdf2378","size_bytes":29609614,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny-desktop-0.12.8-1.x86_64.rpm"},{"access":"gitlab_access_required","architecture":"amd64","kind":"installer","name":"sonny-desktop_0.12.8_amd64.deb","platform":"linux","sha256":"e881eb87bde3a09db300d9652eb884c6f2c535ae905ca66d7d2de287feb91c39","size_bytes":29600950,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny-desktop_0.12.8_amd64.deb"},{"access":"public","architecture":"universal","kind":"installer","name":"sonny-desktop_0.12.8_darwin_universal.dmg","platform":"darwin","sha256":"45cc6f47117bbecd4649e0486e92b620ad5cc7b0c9d71c729c6ecb6e0f5b4753","size_bytes":234774997,"url":"https://downloads.codepros.org/sonny/0.12.8/sonny-desktop_0.12.8_darwin_universal.dmg"},{"access":"public","architecture":"amd64","kind":"installer","name":"sonny-desktop_0.12.8_windows_amd64-installer.exe","platform":"windows","sha256":"528aa551b20c6659bb94d9b98fab1c4e0e7c5301fe06ea5b5bfc2252005f4e91","size_bytes":108114744,"url":"https://downloads.codepros.org/sonny/0.12.8/sonny-desktop_0.12.8_windows_amd64-installer.exe"},{"access":"public","architecture":"arm64","kind":"installer","name":"sonny-desktop_0.12.8_windows_arm64-installer.exe","platform":"windows","sha256":"157dbe679021ac613c13cc939f1444e251d2b02d196f597a52159c7b530379bc","size_bytes":98277552,"url":"https://downloads.codepros.org/sonny/0.12.8/sonny-desktop_0.12.8_windows_arm64-installer.exe"},{"access":"public","architecture":"amd64","kind":"archive","name":"sonny_0.12.8_darwin_amd64.tar.gz","platform":"darwin","sha256":"074dfe01c07db65e14badf2777ca5a202388dd4ccb95d11a5ef683f6493c9ff3","size_bytes":78379064,"url":"https://downloads.codepros.org/sonny/0.12.8/sonny_0.12.8_darwin_amd64.tar.gz"},{"access":"public","architecture":"arm64","kind":"archive","name":"sonny_0.12.8_darwin_arm64.tar.gz","platform":"darwin","sha256":"b805d7bcc5f1047a384d3f9aa60a889ceb1a9972d6f58d1ddaa344e79e189003","size_bytes":73950281,"url":"https://downloads.codepros.org/sonny/0.12.8/sonny_0.12.8_darwin_arm64.tar.gz"},{"access":"gitlab_access_required","architecture":"amd64","kind":"installer","name":"sonny_0.12.8_linux_amd64.apk","platform":"linux","sha256":"049c50350c6331a6d4ddcd2f03af1f4de078d7d69cd9662d9a5a4d787edbf63a","size_bytes":145665986,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny_0.12.8_linux_amd64.apk"},{"access":"gitlab_access_required","architecture":"amd64","kind":"installer","name":"sonny_0.12.8_linux_amd64.deb","platform":"linux","sha256":"0c51398fdf8aef5b40380a93cc96524c3ff4675c4c129849079a39680e99bc86","size_bytes":139242792,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny_0.12.8_linux_amd64.deb"},{"access":"gitlab_access_required","architecture":"amd64","kind":"installer","name":"sonny_0.12.8_linux_amd64.rpm","platform":"linux","sha256":"96a501af88c3d99f6a0839456cb3d3e5da37eb5b1fb371d2f958463b34d6ebde","size_bytes":139278920,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny_0.12.8_linux_amd64.rpm"},{"access":"public","architecture":"amd64","kind":"archive","name":"sonny_0.12.8_linux_amd64.tar.gz","platform":"linux","sha256":"d8da1f04ac203832ef165144500776ad79c2b88f38904dde59a42f991b0f6042","size_bytes":81636460,"url":"https://downloads.codepros.org/sonny/0.12.8/sonny_0.12.8_linux_amd64.tar.gz"},{"access":"gitlab_access_required","architecture":"arm64","kind":"installer","name":"sonny_0.12.8_linux_arm64.apk","platform":"linux","sha256":"9c5739f38c364c80c77c52ca648bbc0584b27436b671973d5bf263725775be5a","size_bytes":133857989,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny_0.12.8_linux_arm64.apk"},{"access":"gitlab_access_required","architecture":"arm64","kind":"installer","name":"sonny_0.12.8_linux_arm64.deb","platform":"linux","sha256":"cf9c0f5fa82fae5223a088357a51d613e8bbe93841dd512709e8ca18bb3b451a","size_bytes":128401360,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny_0.12.8_linux_arm64.deb"},{"access":"gitlab_access_required","architecture":"arm64","kind":"installer","name":"sonny_0.12.8_linux_arm64.rpm","platform":"linux","sha256":"828a227da420a3b59f8212529f4c5fb12f483e6c59385ac1a6db205fddbb0471","size_bytes":128446170,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny_0.12.8_linux_arm64.rpm"},{"access":"public","architecture":"arm64","kind":"archive","name":"sonny_0.12.8_linux_arm64.tar.gz","platform":"linux","sha256":"d7254aaddab96b445d73f1fb390c51c090e5ee72a78750ec7f87749d124a4193","size_bytes":75301892,"url":"https://downloads.codepros.org/sonny/0.12.8/sonny_0.12.8_linux_arm64.tar.gz"},{"access":"public","architecture":"amd64","kind":"archive","name":"sonny_0.12.8_windows_amd64.zip","platform":"windows","sha256":"c88a96a12f4dba4f5600676ba7fea3fb3085c63d9c56eeba4f9530907af8bf4a","size_bytes":78200395,"url":"https://downloads.codepros.org/sonny/0.12.8/sonny_0.12.8_windows_amd64.zip"},{"access":"public","architecture":"arm64","kind":"archive","name":"sonny_0.12.8_windows_arm64.zip","platform":"windows","sha256":"933c0d14dd76a8a9349da27a733ee0fbc2accbe76f1b6f5d0c86d4282e93dc44","size_bytes":70899035,"url":"https://downloads.codepros.org/sonny/0.12.8/sonny_0.12.8_windows_arm64.zip"},{"access":"public","architecture":null,"kind":"checksums","name":"checksums.txt","platform":null,"sha256":"2e7c08b139265fa16d0bc0fbd7e407797b9aff078b28f385863011b4fbcb3038","size_bytes":2493,"url":"https://downloads.codepros.org/sonny/0.12.8/checksums.txt"},{"access":"public","architecture":null,"kind":"signature_bundle","name":"checksums.txt.bundle","platform":null,"sha256":"db95b54312586979b25acadd4ae00e0e256ca6665a7835f46a0f4e77eef31996","size_bytes":9332,"url":"https://downloads.codepros.org/sonny/0.12.8/checksums.txt.bundle"},{"access":"gitlab_access_required","architecture":"universal","kind":"sbom","name":"sonny-desktop_0.12.8_darwin_universal.sbom.cdx.json","platform":"darwin","sha256":"968d4665b8a70c2023276d31467812e2b0c71dc49ad364d51ed66a9634ef02fe","size_bytes":63478,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny-desktop_0.12.8_darwin_universal.sbom.cdx.json"},{"access":"gitlab_access_required","architecture":"amd64","kind":"sbom","name":"sonny-desktop_0.12.8_linux_amd64.cdx.json","platform":"linux","sha256":"d3b2269293e48ba9b1abb0d02fbcaeed6b0d2dd0fb8b46b0a031eb68246c9eb7","size_bytes":136243,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny-desktop_0.12.8_linux_amd64.cdx.json"},{"access":"gitlab_access_required","architecture":"amd64","kind":"reproducibility","name":"sonny-desktop_0.12.8_linux_amd64.reproducibility.json","platform":"linux","sha256":"672f95e816a46a1881ce40267d3e66e419d71eec60b10551451a996c7fe11a66","size_bytes":658,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny-desktop_0.12.8_linux_amd64.reproducibility.json"},{"access":"gitlab_access_required","architecture":"amd64","kind":"sbom","name":"sonny-desktop_0.12.8_windows_amd64-installer.sbom.cdx.json","platform":"windows","sha256":"6a5be449ed2740d66e0bd53325d0684fcb30df2632444e529b9d5105188b04ef","size_bytes":145267,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny-desktop_0.12.8_windows_amd64-installer.sbom.cdx.json"},{"access":"gitlab_access_required","architecture":"arm64","kind":"sbom","name":"sonny-desktop_0.12.8_windows_arm64-installer.sbom.cdx.json","platform":"windows","sha256":"70383da8deef7ded2e55cace3b93caa009892b7f45eb05d132f8ac01df994761","size_bytes":145267,"url":"https://gitlab.com/devnw/codepros/sonny/sonny/-/releases/v0.12.8/downloads/sonny-desktop_0.12.8_windows_arm64-installer.sbom.cdx.json"}],"channel":"stable","notes_markdown":"## v0.12.8 (2026-10-25)\n\n### Feat\n\n- **isolationruntime**: serve catalog tools from native Linux realms (SONNY-5241)\n- **isolationruntime**: run measured native cells on an in-realm workspace (SONNY-5241)\n- **release**: mirror binaries to downloads.codepros.org before the release is created (SONNY-5654)\n- **release**: integrate commitizen release notes (SONNY-2786)\n- **release**: render release notes with commitizen (SONNY-2786)\n- **vscode**: isolate multi-root workspace targets (SONNY-195)\n- **tui**: complete provider account setup (SONNY-3925)\n- **mesh**: provision managed-worker authority with sonny mesh managed (SONNY-5545)\n- **packaging**: rename the sonny-mesh daemon to sonnyd (SONNY-5471)\n\n### Fix\n\n- **recipes**: use recipe in installer next steps (SONNY-5023)\n- **a2a**: refuse an admission that ran out of the listener's own time as retryable (SONNY-5709)\n- **ci**: bound the mesh integration image context (SONNY-5594)\n- **ci**: integrate merged main and preserve validation history (SONNY-5241)\n- **ci**: integrate merged main and preserve validation history (SONNY-5300)\n- **ci**: integrate current main and retain cache reuse (SONNY-5594)\n- **postgres**: bound outbox pruning across query plans (SONNY-5070)\n- **agentmail**: release child charges whose children can no longer make progress (SONNY-5300)\n- **ci**: integrate merged main and preserve validation history (SONNY-5031)\n- **recipes**: reconcile paced benchmark with current main (SONNY-5037)\n- **mesh**: pace transport benchmark within admission budget (SONNY-5037)\n- **recipes**: integrate current main native evidence (SONNY-5031)\n- **mesh**: authenticate registry fixture membership (SONNY-5031)\n- **parity**: bind native session metadata inventory (SONNY-5031)\n- **recipes**: return durable native child evidence (SONNY-5031)\n- **ci**: integrate merged main and preserve validation history (SONNY-5037)\n- **recipes**: integrate current main conformance owners (SONNY-5037)\n- **parity**: refresh served session inventory pin (SONNY-5037)\n- **mesh**: authenticate Docker fixture membership (SONNY-5037)\n- **protocol**: align metadata with served session methods (SONNY-5037)\n- **ci**: integrate merged main and preserve validation history (SONNY-5043)\n- **isolation**: re-pin architecture revalidation to 6deb1852 (SONNY-5043)\n- **deps**: drop stale policy v0.1.3 go.sum entries (SONNY-5043)\n- **vscode**: drop extra trailing blank lines (SONNY-5043)\n- revalidate recipe context after approval (SONNY-5043)\n- **ci**: integrate merged main and preserve validation history (SONNY-5663)\n- **tui**: give a supervisor the TUI launched the desktop's cold-boot budget (SONNY-5663)\n- **isolation**: show realm tool results as the handler spelled them (SONNY-5704)\n- **isolation**: certify realm tool results that hold \u003c, \u003e or \u0026 (SONNY-5704)\n- **plan**: tighten a hosted plan worker's isolation files (SONNY-5698)\n- **plan**: pass a hosted plan worker its isolation files (SONNY-5698)\n- **ci**: integrate merged main and preserve validation history (SONNY-5656)\n- **packs**: name the source in the uncloned-catalog remedy (SONNY-5657)\n- **packs**: load pack-source model registries before resolving packs on a cold cache (SONNY-5657)\n- **deps**: bump llmtools to v0.16.10 for binary read_file (SONNY-5656)\n- **plan**: give a plan worker on its role pack a native launch (SONNY-5653)\n- **sonny**: consolidate TUI repairs and CI reliability (SONNY-5594)\n- **sonny**: integrate daemon projection repair and current main (SONNY-5648)\n- **tui**: present a daemon projection only for the session it was replayed from (SONNY-5648)\n- **sonny**: consolidate session, routing and CI repairs (SONNY-5594)\n- move messaging validation data module to lanning.dev (SONNY-5074)\n- **ci**: preserve release fallback when notes setup fails (SONNY-2786)\n- **lspwatch**: integrate workspace containment repair (SONNY-5640)\n- **lspwatch**: ignore edits of files outside the workspace (SONNY-5640)\n- **toolscope**: integrate precise guard refusals (SONNY-5639)\n- **toolscope**: name the real reason when the agent guard fails closed (SONNY-5639)\n- **ui**: consolidate asking-tab approval repair (SONNY-5638)\n- **ui**: arm approve-all on the tab whose prompt was answered (SONNY-5638)\n- **ci**: repair Windows fixtures and reuse dependency build caches (SONNY-4151)\n- **policy**: qualify Windows ledger recovery in the consolidated pipeline (SONNY-4151)\n- **agents**: don't reap sub-agents of a parent that is still calling tools (SONNY-5636)\n- **desktop**: re-resolve pack model profiles when the catalog changes (SONNY-5635)\n- **desktop**: keep hosted failover inside provider sets (SONNY-4768)\n- **tui**: register a tab's new session before every daemon call for it (SONNY-5633)\n- **goaltrack**: stop treating the engine's own nudges as user requests (SONNY-5637)\n- **permission**: let read-only hook inspection run without a bypass prompt (SONNY-5634)\n- **planpublish**: run no git in the workspace after a publish offer (SONNY-5607)\n- **planpublish**: record the ssh configs a Windows push reads (SONNY-5607)\n- **planpublish**: run no configured hook on a publish (SONNY-5607)\n- **e2e**: give the daemon's stop a grace that covers its realm teardown (SONNY-5604)\n- **e2e**: stop owned daemons with SIGTERM so their realms are torn down (SONNY-5604)\n- **supervisor**: refuse surface authority references on a scoped hosted session (SONNY-5624)\n- **supervisor**: refuse a foreign tenant on local hosted dispatch (SONNY-5602)\n- **supervisor**: dispatch local hosted turns as their own session (SONNY-5624)\n- **supervisor**: dispatch local hosted turns under the profile tenant (SONNY-5602)\n- **ci**: select disposable isolation campaigns explicitly (SONNY-5594)\n- **isolation**: share the composed binding verifier with every replacement realm (SONNY-5596)\n- **isolation**: keep the local daemon's realm usable past its plan (SONNY-5596)\n- **isolation**: replace a long-lived owner's realm before its plan ends (SONNY-5596)\n- **ci**: give regression-evidence a 4h timeout (SONNY-5405)\n- **hostlease**: continue a turn after every lease lapse and renew by CAS alone (SONNY-5597)\n- **registry**: record provider account command contracts (SONNY-3925)\n- **ci**: repair shared Sonny validation and retry costs (SONNY-5472)\n- **cli**: write Windows service install output through the command (SONNY-5549)\n- **secretresolver**: kill the token helper's whole process tree (SONNY-5593)\n- **spawn**: worker resolves the parent's pack copy; failed launch reported (SONNY-5543)\n- **cli**: run SonnyMesh as NT SERVICE\\SonnyMesh and make Windows service install idempotent (SONNY-5549)\n- **compaction**: stop re-running a timed-out compaction every round on slow models (SONNY-5538)\n- **executionroute**: keep the todo reconciliation reminder from reading as a user stop request (SONNY-5544)\n- **primary**: never call a retried attempt's timeout terminal (SONNY-5539)\n- **toolscope**: allow cp/install of binary files into the workspace (SONNY-5542)\n- **compaction**: compare the slow-model working budget with a provider-anchored size (SONNY-5470)\n- **ui**: fail a model-less turn with its real reason and trace it (SONNY-5452)\n- **desktop**: resolve hosted providers against the current catalog (SONNY-5451)\n- **toolscope**: let exec run sonny help and version without the agent-launch refusal (SONNY-5473)\n- **tui**: leave the tool pill when the next model request starts (SONNY-5407)\n- **trace**: redact a password-keyed JSON container, not the rest of the line (SONNY-5406)\n- **daemonhost**: reuse a busy live supervisor instead of starting a duplicate (SONNY-5404)\n- **tui**: register a cleared session with the daemon; stop the repeating live-state Failure (SONNY-5475)\n- **tui**: keep pack secret warnings off the TUI alt-screen (SONNY-5474)\n- **tui**: resume sessions the daemon runtime has never journaled (SONNY-5403)\n- **protocol**: align served session capability metadata (SONNY-5472)\n- **mesh**: qualify the docker cluster view through authenticated coordinator membership (SONNY-5472)\n- **desktop**: make session Delete work after a turn (SONNY-5469)\n- **deps**: require devnw.dev/isolation v0.14.1 to reclaim realms from the signed image (SONNY-5603)\n- **supervisor**: pin the Unavailable code of a refused daemon slot (SONNY-5589)\n- **isolation**: name the doctor's real daemon identity failure (SONNY-5590)\n- **isolation**: discard the local daemon's realm without an export (SONNY-5588)\n- **isolation**: check the local daemon's realm identity in the doctor (SONNY-5590)\n- **supervisor**: name the local daemon's isolation startup failure (SONNY-5589)\n- **isolation**: bootstrap the local daemon's realm under a UUID session (SONNY-5588)\n\n### Refactor\n\n- **tui**: split provider account handlers for lint (SONNY-3925)\n\n### Perf\n\n- **ci**: retain first-run test timings without a profiling rerun (SONNY-5594)\n- **ci**: reuse race build archives in qualification jobs (SONNY-5594)\n- **ci**: reuse PostgreSQL conformance evidence (SONNY-5594)\n- **ci**: run messaging benchmarks once per sweep (SONNY-5594)\n- **ci**: reuse compiled packages in native checks (SONNY-5594)\n- **ci**: reuse cross-build caches across dependency updates (SONNY-5594)\n- **test**: reuse migrated routing and worker fixtures (SONNY-5594)\n- **ci**: retain cross-build caches and deduplicate Windows builds (SONNY-5594)\n- **test**: reuse migrated plan fixture databases (SONNY-5594)\n\n\n","product":"sonny","published_at":"2026-10-25T16:41:03.251Z","schema":"sonny-release/v1","source_commit":"eaf885551c5834f4bee56ea48be7b9eff768c66d","tag":"v0.12.8","verification":{"checksums_url":"https://downloads.codepros.org/sonny/0.12.8/checksums.txt","scope":"File hashes match the release checksum manifest and GitLab package metadata; public assets also match an anonymous streamed download proof. The importer does not perform signature verification.","signature_bundle_url":"https://downloads.codepros.org/sonny/0.12.8/checksums.txt.bundle","signature_verified_by_importer":false},"version":"0.12.8"}