## meta-pytorch/monarch — v0.4.1…v0.5.0

_316+ commits._

### Features
- **add runtime-owned delayed posting (#3912)** (abe2149)
- **add generic send endpoint traits (#3890)** (4456737)
- **Add annotation support in Kubernetes.add_mesh (#3949)** (00d18a7)
- **add identity constructor aliases (#3938)** (4d3dbb8)
- **add explicit proc identity constructors (#3935)** (5953685)
- **introduce IbvProcessorActor with stub process_qp_group (#3884)** (dcee135)
- **add QueuePairInitializer + supporting message types (#3813)** (30fe30d)
- **add Proc builder and default Gateway (#3821)** (1e6446f)
- **introduce Gateway reachability state (#3820)** (181aaf2)
- **Add global cargo nextest timeout (#3855)** (3a7626e)
- **Add MacOS build to PyPI stable publish (#3854)** (da72836)
- **add token supervision integration tests (#3767)** (3cbbcb5)
- **add token supervision example (#3766)** (8b5afe3)
- **add rendezvous token datatypes (#3764)** (80690d7)
- **add remote supervision actors (#3763)** (d9ad0f2)
- **add keepalive link actors (#3762)** (9bf418b)
- **add Instance::gspawn for registered child actors (#3760)** (f736aef)
- **add deferred stop handling to actor lifecycle (#3742)** (439e00c)
- **Add cuda_tensor buffer_type to rdma_pingpong (#3799)** (1818c9e)
- **Add k8s backend to rdma_pingpong (#3798)** (9689fc4)
- **add point-to-point optimization for small v1 casts (#3646)** (a4d4e1a)
- **Add warning in logging_option when enable_log_forwarding is False and stream_to_client is True (#3753)** (5f07885)
- **Add bootstrap_command kwarg to HostMesh.spawn_procs (#3463)** (7b90387)
- **Add workflow for deleting stale PRs and branches (#3778)** (d44cefa)
- **introduce polymorphic Id address parsing (#3738)** (f02981c)

### Fixes
- **fix clippy lints (#3926)** (873a84c)
- **fix build_utils Cargo build (#3923)** (7490d0b)
- **Fix publish_release Docker build: use cuda12.6 base for pytorch 2.12.0 (#3921)** (e4f60af)
- **Fix nightly pytorch docker images (#3880)** (a996957)
- **Fix PyShared.__await__ borrow race by taking &self (#3862)** (76fb75a)
- **Fix crash recovery plugin for MacOS (#3831)** (d02ccfd)
- **Fix tokio runtime block with SIGINT (#3801)** (7983661)
- **Fix artifact name collision in test-cpu-rust CI (#3824)** (fb3d05c)
- **Fix clippy::useless_conversion issues in fbcode/monarch/hyperactor_macros/tests [B] (#3792)** (f3bdca9)
- **Fix clippy::useless_conversion issues in fbcode/monarch/hyperactor_macros/tests [A] (#3791)** (5992a8c)
- **Fix MacOS Build (#3786)** (d2af203)
- **Fix disable script (#3787)** (50273a1)
- **fix find_cuda_segment boundary: bound by mr_size, not phys_size (#3769)** (3fe6d9b)
- **Fix rust test xml uploading (#3756)** (8e4fd7e)
- **Fix two RwLock/DashMap deadlocks in actor teardown (#3754)** (f25108c)
- **Fix cuda available on ROCm (#3740)** (b80a331)
- **Fix rust 1.95 sysroot, third-party, and test breakages** (2fb3d3a)

### Backend
- **rename endpoint send APIs to post (#3894)** (121ed9b)
- **make endpoint sends infallible (#3893)** (0f47483)
- **report send failures through undeliverables (#3892)** (37623d3)
- **remove bespoke send methods in favor of destination traits (#3891)** (9805ef8)
- **No rocm builds on PRs (#3861)** (bab0e6b)
- **update identity constructor docs (#3942)** (f48da41)
- **remove old identity constructor aliases (#3941)** (0f07b1f)
- **rename labeled identity constructors (#3940)** (aef3f3e)
- **port identity constructor call sites (#3939)** (0e20ebe)
- **remove old proc constructor aliases (#3937)** (98685dc)
- **port proc constructor call sites (#3936)** (25ec402)
- **rename Proc::instance to Proc::client (#3934)** (84d4248)
- **cargo & buck agree - lint free (#3943)** (48a773f)
- **last lints (#3933)** (2dde3d4)
- **move cfg(fbcode_build) check-cfg to workspace lint inheritance (#3932)** (31ad2d4)
- **KeepaliveLocalMemory: unsafe accessors, drop the RdmaLocalMemory trait (#3922)** (f972bde)
- **box RaceResult; expect other large_enum_variant sites (#3929)** (382052c)
- **align cargo clippy lint set with arc via .cargo/config.toml (#3928)** (db6e42f)
- **enable OSS-aligned clippy lints in PACKAGE (#3927)** (ada0225)
- **lints (#3925)** (c071c36)
- **test GatewayServeHandle::stop unwinds in any order (#3914)** (2863677)
- **test Gateway::attach silently replaces dead WeakProc entry (#3913)** (6fbbc98)
- **test WeakGateway bounces BrokenLink after gateway drop (#3902)** (b5d7235)
- **test Gateway::flush propagates to attached procs (#3901)** (3a23c04)
- **test Gateway::attach panics on duplicate live proc (#3900)** (f053fef)
- **test Gateway lazily removes stale WeakProc entries (#3899)** (af53f53)
- **test cross-proc actor messaging via served shared gateway (#3898)** (3a09045)
- **test Gateway demuxes by ProcId (#3895)** (7f2b32b)
- **Switch actor-loop supervision channel to a raw tokio mpsc (#3834)** (0c5efd8)
- **remove current-actor proc shutdown exception (#3911)** (cbc16e1)
- **Remove unused pytest dependency from test_auto_reload** (1560436)
- **factor `Actor::handle_stop` default into free function (#3889)** (f70a012)
- **test that token validity is bounded by creator lifetime (#3860)** (9501c3e)
- **test Token::FromStr error paths (#3857)** (16d8cc5)
- **test that a Policy::Multi token accepts every join (#3856)** (d4b1887)
- **consolidate mailbox constructors (#3888)** (4298c47)
- **remove mailbox forwarders (#3878)** (44a974b)
- **remove mailbox-forwarder test dependencies (#3877)** (7f91faf)
- **hide mailbox forwarder constructor (#3876)** (878e231)
- **route actor egress through Proc (#3875)** (c7558fa)
- **remove InstanceSlot from Proc instances (#3873)** (60a8b90)
- **delete deprecated `defaults.config()` (#3882)** (e39ed8b)
- **arc-refcount registered MRs via IbvMemoryRegion (#3883)** (5ae9f6f)
- **wire IbvManagerActor onto QueuePairInitializer (#3814)** (de8fdc4)
- **Update KubernetesJob to use PodTemplateSpec (#3872)** (d2a05d7)
- **serve procs through Gateway (#3823)** (177863d)
- **route internal proc construction through builder (#3822)** (4e44208)
- **split Proc identity from default location (#3819)** (21e0d57)
- **route local Hyperactor delivery by runtime ids (#3818)** (8039d69)
- **enable ENABLE_NATIVE_V1_CASTING and ENABLE_DEST_ACTOR_REORDERING_BUFFER (#3812)** (8f399bf)
- **Bump pytorch from 2.11.0 to 2.12.0 for stable monarch release; track 2.13.0 nightly base image (#3863)** (c2ad9df)
- **Do not assign seq for actor ports which bypass workq (#3832)** (a95d309)
- **Set the right starting seq number in assert_buffered_and_replayed (#3836)** (12ba55b)
- **test that Worker accepts a fresh Link after Unlink under OrphanPolicy::Detach (#3847)** (3b7d0fe)
- **test that DrainAndStop propagates through the Worker after child work (#3843)** (ff245b4)
- **test that pending_stop propagates a parent stop received before Linked (#3842)** (097dbfe)
- **test that Worker rejects a second Link with LinkRejected (#3841)** (711aa07)
- **extract spawn_supervised_pair test helper (#3839)** (2858c6d)
- **test that SupervisedWorker::Unlink leaves the child running under OrphanPolicy::Detach (#3838)** (c0348f6)
- **test that SupervisedWorker::Unlink stops the child under OrphanPolicy::Stop (#3837)** (de1da99)
- **test that OrphanPolicy::Detach leaves the child running on supervisor loss (#3828)** (68d188e)
- **honor exit requests in Python actor loop (#3800)** (2a448ae)
- **document remote supervision and rendezvous (#3768)** (201e270)
- **implement rendezvous token actor (#3765)** (3121e66)
- **define remote supervision protocol (#3761)** (49f2b88)
- **gate handler ingress while draining (#3745)** (dd880c9)
- **move handler drain state into mailbox (#3744)** (afc476c)
- **rename actor ports to handler ports (#3743)** (07f65fe)
- **deprecate Future.get() called from inside an active event loop (#3827)** (0e69c64)
- **Onboard ProcMeshController; orphan-cleanup for hard client exit (#3811)** (a2d4dd0)
- **Crash Recovery Plugin (#3790)** (c85b033)
- **remove vestigial hyperactor_reference imports (#3809)** (05e414c)
- **Generic ResourceController; migrate ActorMeshController (#3383)** (602638f)
- **Bump libc 0.2.183 -> 0.2.186** (0a781a8)
- **traced decorator (#3774)** (36d6567)
- **Bump tracing-appender 0.2.4 -> 0.2.5** (ba04778)
- **remove unused actor_name compatibility helpers (#3784)** (880366f)
- **wrap PortHandle fields in Arc to make cloning cheap (#2850)** (a8f193d)
- **use multipart serialization in local channels (#2849)** (39adc15)
- **extract v1_casting_enabled() utility in casting module (#2848)** (2190de9)
- **re-enable V1 casting path in actor mesh (#2847)** (1a07834)
- **bump test_concurrent_send_to_same_target wrapper to 120s (#3793)** (9f3ec8c)
- **OCI (OKE) example (#3671)** (ae1460b)
- **pass missing per_rank_bootstrap to host_mesh.spawn (#3797)** (bd36f9e)
- **Periodically record RSS memory of monarch-managed processes (#3733)** (cea3778)
- **make some CPU-only tests not require GPUs (#3796)** (1936743)
- **drop `use hyperactor as reference` alias (#3785)** (9da6e11)
- **lints (#3772)** (cad91fa)
- **make resolve_ibv synchronous: ship IbvBuffer eagerly in RdmaRemoteBackendContext (#3773)** (47ca101)
- **adaptive PollSleepPolicy for completion polling (#3771)** (a21656f)
- **use structural Uid serde for binary formats (#3775)** (6f86959)
- **Re-sync with internal repository (#3779)** (2d1592f)
- **rename addr-returning APIs (#3755)** (2d47b3d)
- **simplify resource id grammar (#3751)** (6acd1c4)
- **move resource ids to mesh (#3750)** (ef05627)
- **host_mesh: attach fails closed on config-push errors (#3732)** (00e59fc)
- **Replace ThreadId transmute with stable as_u64() API (#3757)** (4e1b771)
- **Update GitHub Actions jobs to rust 1.95** (356943a)
- **Right pad values in logs (#3747)** (ad365d6)
- **Enable `enable_log_forwarding` in kubernetes_grpo example (#3752)** (9bcb558)
- **skip 8-gpu tests on diffs and remove #[ignore = ...] to prevent long queue times (#3692)** (54e67c8)
- **Avoid SUN_LEN unix socket errors on longer paths (#3697)** (51872ee)
- **Update comments about ProcMesh.logging_option (#3748)** (fc1a5ce)
- **CLAUDE.md: guidance about log messages (#3746)** (38328ea)
- **derive enum inner helpers for ids and addrs (#3739)** (41d159b)
- **return concrete addrs from parser (#3737)** (24eff5b)
- **return concrete ids from parser (#3736)** (fac76f5)
- **move labels into Uid (#3735)** (3894ada)

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