## meta-pytorch/monarch — v0.3.0…v0.4.0

_572+ commits._

### Features
- **Add missing ROCm compatibility aliases for CUDA constants (#3192)** (333ecd1)
- **add exponential backoff to connect_by retry loop (#3176)** (208a167)
- **add reconnect backoff to channel send loops (#3119)** (9833a86)
- **add logging to channel connection lifecycle (#3118)** (0d03dcf)
- **Add Mesh Admin TUI documentation (#3174)** (45ab0df)
- **fetch_disabled_tests.py: skip overwrite if files exist; add --force and report fetched skips (#3188)** (6fb207c)
- **Add OTel Integration documentation (#3170)** (ff73066)
- **Add buck integration and switch frontend build from react-scripts to esbuild (#3151)** (48c1eec)
- **add store_pyspy_dump endpoint, (#3168)** (b2c1c79)
- **Add more reason for actor status change event (#3169)** (962739c)
- **mesh admin: add /v1/pyspy/{proc_reference} to OpenAPI spec and extend conformance tests (MIT-53..62) (#3129)** (6ccecda)
- **mesh admin: add OpenAPI conformance test family (MIT-37 through MIT-52) validating live responses against the published spec (#3128)** (4564c10)
- **mesh_admin: add wave 2 integration tests: /v1/{ref} traversal, malformed-ref edge cases, and mTLS auth failures (MIT-20..MIT-36) (#3126)** (ac01f06)
- **add normalized py-spy DataFusion tables (#3136)** (9bf48e9)
- **mesh-admin: add per-proc config inspection overlay (C key) to admin TUI with /v1/config endpoint (#3117)** (535bbc0)
- **Add remotemount: parallel TLS transfer, FUSE integration, and examples (#3114)** (d7ebe26)
- **mesh-admin: add MAST-native py-spy validation workload for verify_pyspy end-to-end testing (#3109)** (8dd9856)
- **Add chunked_fuse: read-only FUSE filesystem for packed data (#3107)** (3146143)
- **Add HostMesh.with_python_executable() (#3063)** (4faa61a)
- **Add fast_pack: parallel file packing into contiguous buffers (#3097)** (9d10f8c)
- **Add aarch64 build to official release cuts (#3092)** (9373691)
- **add WaitRankStatus for race-free proc mesh shutdown (#3087)** (3ecacb6)
- **add message types to undeliverable message errors (#3086)** (8cef609)
- **add `unsplit` flag to PortRef to prevent port splitting during cast (#3085)** (fe57e1c)
- **add StreamState<S> for streaming actor state subscriptions (#3082)** (e0f1db1)
- **add flush() to MailboxSender (#3077)** (bdce8eb)
- **add missing build dependencies to README (#3071)** (aa91a3c)
- **admin_tui: add reusable Overlay abstraction and migrate diagnostics pane to use it (#3054)** (f6f4bf7)
- **pyspy: add validation workload, automated verifier, and integration test for GET /v1/pyspy endpoint (#3045)** (7861de3)
- **pyspy: add GET /v1/pyspy endpoint, migrate timeouts to config attrs (MA-C1), add PS-5 invariant (#3042)** (639f134)
- **pyspy: add PySpyDump message, PySpyRunner module, and ProcAgent handler for remote py-spy stack dumps (#3023)** (7219ddf)
- **Add Github Actions for aarch64 builds (#2972) (#2972)** (80bec8a)
- **Add NUMA bindings for spawning proc meshes (#2996)** (69f265a)
- **add channel::net internals chapter to the book (#2953)** (785df9f)
- **add NetLink enum to unify transport dispatch (#2951)** (1242c01)
- **replace ServerLink with AcceptorLink; add backoff to link layer (#2948)** (88ae9ce)
- **Add TCP fallback backend for RDMA (#2999)** (98decbb)
- **Add unit tests for dashboard thread startup (#2959)** (5e7120b)
- **Add ROCm/HIP Support for RDMA Stack (#2891)** (b8a786b)
- **Add DBAdapter pattern, QueryEngineAdapter, and dashboard server (#2957)** (d4c1fc0)
- **Add dashboard to OSS package (#2955)** (1cc4ae8)

### Fixes
- **Fix clippy::unnecessary_cast issues in fbcode/monarch/monarch_rdma/src/backend/ibverbs (#3197)** (1000989)
- **fix shutdown resource leak in rapid spawn/exit cycles (#3144)** (671eb4f)
- **fix flaky supervision replay for mesh slices (#3091)** (60dbc2c)
- **Fix build and publish CI (#3152)** (e9d59ac)
- **Fix TypeScript type mismatch in NodeDetail (#3149)** (928e8a7)
- **mesh admin: fix broken '$ref' in published OpenAPI spec by rewriting refs in hoisted component schemas (#3127)** (f3424fd)
- **Fix rsync daemon rejecting IPv6 loopback on hosts where ::1 maps to ip6-localhost (#3142)** (fce5c4d)
- **Fix clippy::unnecessary_cast issues in fbcode/monarch/monarch_rdma/src/backend/ibverbs [B] (#3135)** (49807fb)
- **Fix clippy::unnecessary_cast issues in fbcode/monarch/monarch_rdma/src/backend/ibverbs [A] (#3134)** (cc3b313)
- **Fix unused_mut issues in fbcode/monarch/monarch_rdma/src/backend/ibverbs (#3131)** (64b263e)
- **fix data-loss bug in DemuxFrameReader (#3112)** (c30b643)
- **Fix stale documentation across docs/source/ (25 files) (#3102)** (e341562)
- **Fix Dockerfile to use specified version for pre-release, and not tag as latest (#3115)** (385ae0c)
- **Fix clippy::needless_range_loop lint in fbcode/monarch/serde_multipart (#3110)** (9c92074)
- **fix teardown ordering: ack ShutdownHost after terminate_children, not before (#3106)** (7760e90)
- **Run uv audit to fix python dependencies with security issues (#3099)** (28cfac3)
- **Fix navbar logo, typos, broken link, stale repo URL. (#3060)** (3864f45)
- **fix uv cache-keys to exclude target/ build artifacts (#3072)** (c734f50)
- **fix subprocess spawning to preserve venv python path (#3070)** (5ccdd79)
- **Fix circular deadlock between RdmaManagerActor and IbvManagerActor (#3048)** (c905ba1)
- **fix ProcAgent DashMap convoy starvation and add S12 liveness invariant (#2994)** (d48dbbe)

### Backend
- **Restore files to previous state (#3221)** (5f4bdc3)
- **Bump tempfile 3.26.0 -> 3.27.0** (6f708e5)
- **Change HYPERACTOR_MESH_MAX_CAST_DIMENSION_SIZE default to 16 (#3212)** (3599e63)
- **Move docs deploy to specific branch (#3199)** (f38a7e1)
- **extract hyperactor_mesh_admin_tui library crate from hyperactor_mesh binary (#3195)** (040b239)
- **Split expanse into OSS and Meta entrypoints (#2973)** (4fd2204)
- **Link to fbsource** (07f34b8)
- **Change logo (#3191)** (704b3a1)
- **Print out dashboard URL (#3189)** (9542e05)
- **Bundle monarch-tui binary and py-spy in pip wheel (#3173)** (016b3c6)
- **Bump nightlies to 0.5.0 and upgrade pytorch (#3183)** (96dad68)
- **Use npx for building frontend (#3181)** (7fa1fe6)
- **Update comments and code about USE_UNIFIED_LAYER (#3171)** (a2c871e)
- **Look at open github issues to decide which OSS CI tests to skip (#3157)** (74d8a7c)
- **Remove host death propagation (#3154)** (0bd4c9b)
- **Use parent_view_json for host-unit to proc-mesh linking (#3150)** (7ac8dbc)
- **pyspy: extract exec_once helper to remove duplicated spawn/collect logic in try_exec native-all fallback (PS-11a..e) (#3146)** (4f4a4c7)
- **mesh_admin: move PySpyDump to pyspy.rs and clean up crate::pyspy:: qualified paths into use imports (#3139)** (11aaad3)
- **avoid double-binding mesh controller state port (#3124)** (73cc041)
- **Update GitHub Actions jobs to rust 1.94** (e41e12a)
- **mesh admin test hardening (#3125)** (71ceeaa)
- **Make overflow less fragile (#3140)** (685fbce)
- **Use parent_view_json for precise proc-unit to actor-mesh linking (#3141)** (c0c80ec)
- **Daily `arc lint --take BLACK` (#3133)** (917b8d6)
- **Bump libc 0.2.182 -> 0.2.183** (a6f1db8)
- **Implement HostMesh.stop() (#3052)** (392f30a)
- **Bump hostname 0.4.1 -> 0.4.2** (95c5805)
- **Update hostname from 0.3.1 to 0.4.1** (09628e2)
- **mesh-admin : universal py-spy: HostAgent handles PySpyDump on service proc, with defensive probe fast-fail (#3105)** (9380850)
- **Bump uuid 1.21.0 -> 1.22.0** (f799db7)
- **admin_tui: refactor TUI overlay system: centralize job lifecycle in set_job/dismiss_job/rebuild_overlay and move overlay construction into ActiveJob (#3113)** (46c7246)
- **bound forwarder flush during teardown with configurable timeout (#3104)** (f2543a8)
- **Frontend: align types with DataFusion schema + code quality (#3108)** (57fb244)
- **mesh admin : use attr for PYSPY_BIN (#3090)** (bf04547)
- **mesh admin: structured py-spy JSON output with native frames, nonblocking retry, and extended capture flags (#3066)** (ca7f75b)
- **mesh admin: delegate PySpyDump to a spawn-per-request child actor so ProcAgent never blocks on py-spy execution (#3065)** (3a865a1)
- **Backend: align schema with DataFusion telemetry + code quality (#3101)** (8ce368b)
- **Dining philosophers interactive example (#3100)** (e6a4fef)
- **Address remaining npm vulnerability (#3098)** (c91d26b)
- **Bump flatted from 3.3.3 to 3.4.2 in /python/monarch/monarch_dashboard/frontend (#3095)** (139f30c)
- **Lazy-initialize CUDA-to-RDMA device mapping in IbvManagerActor (#3064)** (4043db8)
- **discard stale CheckState after controller stop (#3088)** (3b99699)
- **only allow a single transition to a terminating status (#3084)** (b13f5bc)
- **use StreamState in ActorMeshController for real-time mesh status (#3083)** (60c380f)
- **expose flush() on Proc and call it during ProcAgent shutdown (#3081)** (0da020d)
- **make ProcAgent stop/stop-all fully async (#3080)** (1a87f48)
- **remove dead StopActor message variant from ProcAgent (#3079)** (37ec04a)
- **flush forwarder during proc teardown (#3078)** (0cb7445)
- **shut down supervision coordinator last during proc teardown (#3076)** (27acfa5)
- **test that supervision coordinators receive actor stop events (#3075)** (a09e0f3)
- **generate supervision events on normal actor stop (#3074)** (a95e23c)
- **speed up uv sync by skipping fresh C++ extensions and scoping RUSTFLAGS (#3073)** (5a3e98c)
- **Improve queue pair completion error handling (#3069)** (bf66fbb)
- **Handle cuda error properly in in dmabuf fallback path (#3002)** (f4e621b)
- **Separate segment registration state from segment identity (#3001)** (3d75535)
- **Bump tokio 1.49.0 -> 1.50.0** (6b53ba7)
- **Decouple RDMA/TCP data-plane from actor loops via IbvBackend/TcpBackend (#3007)** (69764a3)
- **Buffer messages arriving before CommMeshConfig (#3016)** (a8914e4)
- **Bump quote 1.0.44 -> 1.0.45** (07528b8)
- **Bump erased-serde 0.4.9 -> 0.4.10** (403878c)
- **admin_tui: unify diagnostics/py-spy overlay jobs under ActiveJob enum (TUI-21) (#3061)** (dccdc60)
- **admin-tui: style py-spy overlay to match diagnostics (running indicator, colors, gray-out tree pane) (#3059)** (4ad6044)
- **Re-enable ROCm build workflow triggers (#2828)** (f39b14d)
- **OnceBuffer accumulation with RLE (#2989)** (eb40762)
- **Lazily unpickle ValueMesh values (#2983)** (a67511d)
- **Torch not needed for rdma (#3055)** (3448104)
- **Move Drop on HostMesh to guard object** (5834a72)
- **remove DurableMailboxSender, mailbox::Buffer, checkpoint, and related dead code (#3053)** (184ff9a)
- **Per-device PD segment registration (#3043)** (9435f46)
- **Make USE_UNIFIED_LAYER=true default in hyperactor_telemetry (#3049)** (7b3b553)
- **Use host process name instead of hostname for proc naming (#3044)** (c359c55)
- **Unpatch cc crate by updating to 1.2.57** (a7f10e8)
- **share listeners between simplex and duplex; extend duplex to TLS (#2952)** (c1acfa9)
- **delete dead code and simplify test helpers (#2950)** (c9260d9)
- **Rewire client_run to use session driver for connectivity (#2949)** (20f67d6)
- **replace reconnectable streams with typestate session lifecycle (#2947)** (c36ec32)
- **rename inner protocol loops: send_loop → send_connected, recv_loop → recv_connected (#2946)** (fdb5ba3)
- **mesh admin OpenAPI 3.1 spec (#3004)** (5dc071c)
- **schema-first API contract: derive JSON Schema from types, serve at /v1/schema, snapshot tests, agent self-test eval (#3003)** (5018874)
- **typed attrs views: formalize introspection shapes at decode boundary (#2998)** (2fc8d56)
- **Bump pin-project 1.1.10 -> 1.1.11** (4af987d)
- **Run Flask in production mode (#2960)** (70614d2)
- **Move test_alloc.py and test_allocator.py to meta/tests (#2990)** (3bcd34a)
- **Remove unused old.pyi stub file (#2993)** (6b74f17)
- **Wire thread into start_telemetry() (#2958)** (2758b69)
- **normalize invariant labels/docs and consolidate canonical references across introspection/admin modules (2) (#2995)** (b76ab1a)
- **avoid DashMap convoy starvation in mesh admin introspection under rapid actor churn (#2987)** (1731b4e)
- **normalize invariant labels/docs and consolidate canonical references across introspection/admin modules (#2982)** (ff04f72)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/meta-pytorch/monarch?utm_source=github-action)._