v0.77.0

promptslab/Promptifyv0.77.0Sep 28, 2026by github-actions[bot]

Upgrading?

AI Summary

This release focuses on expanding the Llama family certification and verifying models, implementing a new in-process payments engine, and enhancing OpenAI API compatibility by serving non-chat GGUF workloads.

Key Highlights

  • Expanded llama family certification with run-ahead verify windows and graph-derived stage filtering.
  • Serve non-chat GGUF workloads via OpenAI API.
  • Implementation of a payments engine for bookkeeping, provider management, and advertised pricing.
  • Improved runtime stability with better shutdown handling and KV cache reuse.
  • Introduction of live runtime event streams and anonymous opt-out usage reporting.

Breaking Changes

  • Drop unsupported Intel Apple targets
  • Replace family flags with typed activation frontiers

New Features

  • Serve Laya decision models on /systemone
  • Surface graph reuse counters to the host
  • Wire next-generation KV cache and publisher defaults
  • Add draft fallback for N-gram misses
  • Serve provenance, usage, and request_digest on terminal events

Full Release Notes

## [0.77.0] - 2026-09-28

### Added

#### skippy

* Expand and streamline llama family certification by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1865
* Recover llama family certification through Inkling by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1880
* Add run-ahead verify windows by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/1409
* Cut over to graph-derived stage filtering by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1927
* Bound exact-state recorder admission with two-class credits by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1936
* Add draft fallback for N-gram misses by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/1410
* Serve non-chat GGUF workloads via OpenAI API by @IvGolovach in https://github.com/Mesh-LLM/mesh-llm/pull/1833
* Surface graph reuse counters to the host by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/2016
* Replay extracted stage programs by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2025
* Wire next-generation KV cache and publisher defaults by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1838
* Serve Laya decision models on /systemone by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/2083

#### openai

* Publish Terminal events on the routing node by @StevenMih in https://github.com/Mesh-LLM/mesh-llm/pull/1668
* Serving provenance, usage and request_digest on the host-served terminal event by @StevenMih in https://github.com/Mesh-LLM/mesh-llm/pull/1841
* X-mesh-target / x-mesh-exclude remote-mesh routing headers (+ x-mesh-served-by echo) by @StevenMih in https://github.com/Mesh-LLM/mesh-llm/pull/1671
* Thread weights_digest onto serving_provenance by @StevenMih in https://github.com/Mesh-LLM/mesh-llm/pull/1942
* Response, tool_calls and reasoning digests on the terminal event by @StevenMih in https://github.com/Mesh-LLM/mesh-llm/pull/1946

#### payments

* Payments engine as in-process payments.v1 plugin (alternative to #1926) by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/2035
* Bound payments.v1 bookkeeping ops and pin the provider per exchange by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2047
* Project advertised pricing and recovery through payments.v1 by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2048
* Block providers that take the input payment and deliver nothing by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/2057

#### Other

* Weights_digest — SHA-256 of served GGUF bytes, alongside identity_hash by @StevenMih in https://github.com/Mesh-LLM/mesh-llm/pull/1708
* Carry an optional self-reported claimed log head on PeerAnnouncement by @StevenMih in https://github.com/Mesh-LLM/mesh-llm/pull/1709
* Add a live runtime event stream with a contract-pinned wire format by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1777
* Explain the announced capacity in `gpus` by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1805
* Add package generation defaults and reasoning budgets by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1878
* Genesis invitations for private mesh, and correcting naming of models for remote access by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/1896
* Adapt Anthropic Messages through shared host ingress by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1911
* Prototype OpenJEV System One on Skippy by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/1939
* Read back the peer's X-Capsule-Id on RemoteMesh terminal events, labeled peer-asserted by @StevenMih in https://github.com/Mesh-LLM/mesh-llm/pull/1944
* Let a private-mesh service carry the invite token by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1960
* Configure Hermes and OpenClaw without launching by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/1964
* Add --parallel to set serve lanes from the command line by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/1973
* Add anonymous opt-out usage reporting by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/1993
* Plan the local fit and auto-join on GPU memory, with gpu.host_ram_offload as opt-in by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/2019
* Finish the structured native runtime event pipeline by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/2039
* Advertise System One capability by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2093

### Changed

* Replace family flags with typed activation frontiers by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1887
* --auto-balance speed-balanced layer placement with closed-loop rebalancing by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/1935
* Borrow the remembered stage slice instead of copying it by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/2007
* Drop unsupported Intel Apple targets by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2096

### Fixed

#### skippy

* Restore certified llama canary validation by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1853
* Certify split architectures by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1893
* Downgrade qwen4exp cache hits to full-state snapshots by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1912
* Prevent activation overreads and accept loader tensor reshapes by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1922
* Allow decoder and MTP profiles to share resident weights by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1933
* Emit native MTP generation in v2 package writer by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1937
* Batch activation exports by request offset, never by lane order by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/1971
* Memoise stage slice selection with exact dependency keys by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/1995
* Avoid duplicate model load in state handoff by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2032
* Preserve resident KV cache with durable L3 by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2067
* Reuse most of a prompt that exceeds the resident prefix cap by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2072
* Let DiffusionGemma System One start and read again by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/2088
* Preserve explicit F32 KV cache type by @sofiageo in https://github.com/Mesh-LLM/mesh-llm/pull/2089
* Reuse backend sampler across requests by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2080
* Reuse backend sampler across reset by default by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/2094

#### runtime

* Register termination-signal handling once at runtime entry by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1969
* Size the shared KV pool by budget, never by the lane override by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/1974
* Install against the current host Skippy ABI by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1987
* Validate speech audio metadata and keep an emptied host set retryable by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2006
* Reserve the multimodal projector in the fit plan by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2074
* Shut down cleanly on SIGTERM instead of hanging until SIGKILL by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/2054
* Address #2039 review findings by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/2078
* Require shutdown signal registration before startup by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/2077
* Avoid duplicate model log summaries by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2085

#### mesh

* Expose upsert_served_model_descriptor to production callers by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1885
* Keep departed peers from being resurrected by stale gossip by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1970
* Set claimed_log_head in the stale-announcement fixture, main is red without it by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1980
* Derive peer serving state and routing eligibility from observed liveness by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/2058

#### Other

* Bound layer artifacts and publish replacements atomically by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1718
* Skip zero-dimension GGUF tensor placeholders by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1807
* Read Windows adapter VRAM from a 64-bit source by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1836
* Preserve plugin models during health grace by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/1837
* Install composed product-v2 bundles in the self-updater by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1844
* Clear stale llama.cpp CMake cache on generator mismatch by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1846
* Redact the home directory on Windows too by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1852
* Reject rooted POSIX paths in delete on Windows too by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1854
* Preserve launched model names and remove default briefing by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/1879
* Enforce Linux glibc compatibility by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1881
* Avoid rehashing cached Hugging Face GGUFs by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1892
* Read process facts on Windows instead of answering Ok(None) by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1899
* Launch Claude Code with inherited stdio on macOS by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1908
* Return Responses-shaped 502 body from MoA failures (#1905) by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1910
* Normalize flat function tools before chat validation by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1913
* Use served model context limits in launchers by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1914
* Floor the node reserve at the compute graph; explicit starting cut by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/1938
* Respect canary runner caches and repair Kimi-K3 certification by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1958
* Accept layer packages across producer ABI versions by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1959
* Inspect local models without writing download caches by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1963
* Keep nested runtime settings in their own TOML tables by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1975
* Box GET route futures so the router frame stops summing its arms by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1976
* Update upstream pin to 26394b4e67 by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1977
* Build the tests on Windows, and close the rooted-path hole they expose by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1978
* Certify upstream 8212c78024 by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2033
* Redact the Windows home directory inside log words by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/2043
* Clear the Windows-only clippy warnings behind Unix-gated code by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/2044
* Report a held config write lock on Windows, and spawn a portable test child by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/2050
* Compile the GPU identity guard in test builds by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/2053
* Keep MoA off peers that charge for the model by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/2060
* Hide Logs and Configuration on client-only nodes by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/2063
* Stop reporting feature bits 38 and 39 as reserved by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/2065
* Clear Windows clippy errors and name a held cache root by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/2066
* Stop dropping operational audits behind the fallback recursion guard by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2069
* Keep the GitHub star count current by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2091
* Preserve free targets on mixed paid meshes by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/2097
* Regenerate model capability bindings by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/2098

### Other changes

* Decide there is nothing to regroup after the link pass by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1871

### Internal

<details>
<summary>CI, build, test, and repository work with no user-facing behavior change (89 changes)</summary>

#### CI and release engineering

* Check out commit-convention script from the default branch by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1824
* Resume partial crates.io publishing by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1826
* Remove daily layer package queue by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1825
* Skip confirmed crates when resuming by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1828
* Identify crates.io status probes by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1829
* Link crate verification to release runtime by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1830
* Add downloaded models to llama canary by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1700
* Keep llama canary repair active until gates pass by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1827
* Allow parity source variant rows by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1832
* Catch SDK runtime JSON breaks before main by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/1695
* Authorize runtime event model for PR and main by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1842
* Configure llama canary git identity by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1861
* Run llama canary repair with Goose by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1862
* Recover release-note entries credited only to a roll-up by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1835
* Render llama canary agent output as text by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1867
* Simplify agentic-replay workflow to essentials by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1717
* Register build accelerator routing by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1872
* Complete promoted runner transition by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1873
* Retry rate-limited ABI cache saves by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1877
* Restore the trusted Linux host sccache seed for amd64 host rows by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1889
* Allow large family certifications to finish by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1890
* Seed release Linux host objects by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1891
* Scope console-print ratchet to product code by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1840
* Retire the console-print ratchet for a plain output gate by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1860
* Avoid duplicate agent family certification sweep by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1894
* Own .gitattributes in the tooling rule by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1898
* Flag unused dependencies with cargo-machete by @iamthesvn in https://github.com/Mesh-LLM/mesh-llm/pull/1895
* Add the Windows unit row's steps, inert until the catalog registers it by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1917
* Register the windows-unit platform row by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1918
* List the Windows unit row in the platform-checks slice summary by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1920
* Give repaired llama candidates a full verification budget by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1919
* Use configured Goose provider for upstream canary by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1925
* Run agentic replay nightly with guarded regression repair by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1928
* Unblock nightly replay input verification by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1930
* Pair dense and recurrent product smokes by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1931
* Run nightly replay with its required Python environment by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1932
* Run llama canary families as parallel jobs by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1949
* Register Mesh and Skippy product layout ownership by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1961
* Support canary reruns and submit smaller models first by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1979
* Certify trusted MeshLLM revisions with mesh_ref by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1982
* Preserve source-owned canary handoff contracts by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1984
* Route canary families by available memory by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1988
* Clean self-hosted outputs and relax canary memory reserve by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2000
* Accept pretty-printed canary evidence by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2027
* Add optional PR workflow canary by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/2004
* Serialize canary host lock contention by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2031
* Resolve Rust test and Clippy batches against the revision under test by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2024
* Support Mesh and Skippy source layout migration by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1983
* Preserve certified canary handoffs across reruns by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2034
* Isolate canary runner resources by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2049
* Require every cfg-divergent crate to be Windows-routed or listed as unverified by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/2040
* Register six split-certification family artifacts by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2011
* Isolate canary host resources by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2052
* Keep release composers artifact-only by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/2079
* Simplify llama canary pipeline by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2090
* Prepare v0.77.0 source by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2100

#### Build and dependencies

* Remove unused dependencies flagged by cargo-machete by @iamthesvn in https://github.com/Mesh-LLM/mesh-llm/pull/1869
* Make sccache and fast linkers repository defaults by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1870
* Check out every text file with LF on every platform by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1883
* Align macOS deployment targets with llama.cpp by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1929
* Drop deprecated ggml_mul_mat_set_prec from the patch queue by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1989
* Make packaged native runtimes self-contained and pin-isolated by @danielwinterw in https://github.com/Mesh-LLM/mesh-llm/pull/2015
* Remove the transitional host-runtime glob re-export by @iamthesvn in https://github.com/Mesh-LLM/mesh-llm/pull/2030
* Prepare llama on Windows with prepare-llama.sh and key the build dir by pin by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/2028
* Resolve a relative MESH_LLM_LLAMA_DIR against the repository root by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/2038

#### Tests

* Render fixture model paths through toml_edit by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1834
* Stop test guards from using the real home on Windows by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1847
* Write test keystores to the temp dir, not the real one by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1850
* Render fixture paths through TOML at six more sites by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1888
* Keep the digest cache out of the real home under test by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1882
* Keep the smart-auto StartNew tests off the network by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1916
* Give the strict absolute-path case a path that is absolute everywhere by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1900
* Make the weights_digest cache-hit test deterministic by @StevenMih in https://github.com/Mesh-LLM/mesh-llm/pull/1947
* Gate the symlink escape test to Unix like its sibling by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/2002
* Build short-lived invoices after the slow setup (engine-suite flake) by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2046
* Wait for agentic replay runtime metadata by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2084
* Fail the feature-bit guard on a FEATURE constant it cannot read by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/2086

#### Refactors, docs, and hygiene

* Remove the legacy stage preparation protocol by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/1780
* Simplify sharing Ollama, vLLM and LM Studio through plugins by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/1823
* Label `--local-model-only` as a debugging endpoint; clarify `--gguf` vs `--model` by @StevenMih in https://github.com/Mesh-LLM/mesh-llm/pull/1820
* Give announcement building and merging their own module by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1806
* Thank spiral.xyz for project support by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/1863
* Route console output through the sink-aware writer by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1848
* Retire runtime console prints for the writer, tracing, and typed events by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1851
* Write inline progress directly to the stderr handle by @ndizazzo in https://github.com/Mesh-LLM/mesh-llm/pull/1858
* Follow-ups from #1841 review by @StevenMih in https://github.com/Mesh-LLM/mesh-llm/pull/1962
* Make the clippy gate pass on Windows by @Virgile-pct in https://github.com/Mesh-LLM/mesh-llm/pull/1997
* Distinguish join tokens from private mesh admission by @michaelneale in https://github.com/Mesh-LLM/mesh-llm/pull/1968
* State the real runtime selection boundary by @i386 in https://github.com/Mesh-LLM/mesh-llm/pull/2070

</details>

## New Contributors
* @iamthesvn made their first contribution in https://github.com/Mesh-LLM/mesh-llm/pull/1869
* @sofiageo made their first contribution in https://github.com/Mesh-LLM/mesh-llm/pull/2089

**Full Changelog**: https://github.com/Mesh-LLM/mesh-llm/compare/v0.76.2...v0.77.0

Related Repositories