Skip to content

Conversation

@shayne-fletcher
Copy link
Contributor

Summary:
this completes the audit for ping_pong.rs. the single test here (test_sim_ping_pong) is V0-specific: it exercises the old multiprocess topology (SystemActor + ProcActor + System::attach) running over simulated networking. that model doesn't exist in V1, and while simnet itself is still available, there isn't a direct parity test to port — doing so would amount to adding new fault-injection coverage rather than closing a gap. the test is therefore annotated as V0-only.

with this file done, the V0→V1 test audit across hyperactor_multiprocess is complete. every V0 test is now categorized as V0-only, V1-equivalent, or needing V1 coverage (the only gap was stop-timeout/abort, which has already been added to V1). V0 tests remain in place until hyperactor_multiprocess is removed, but they are now explicitly marked so it’s clear which parts of the tree are legacy.

Differential Revision: D87931337

@meta-codesync
Copy link

meta-codesync bot commented Nov 26, 2025

@shayne-fletcher has exported this pull request. If you are a Meta employee, you can view the originating Diff in D87931337.

@meta-cla meta-cla bot added the CLA Signed This label is managed by the Meta Open Source bot. label Nov 26, 2025
shayne-fletcher added a commit to shayne-fletcher/monarch-1 that referenced this pull request Nov 26, 2025
Summary:

this completes the audit for ping_pong.rs. the single test here (test_sim_ping_pong) is V0-specific: it exercises the old multiprocess topology (`SystemActor` + `ProcActor` + `System::attach`) running over simulated networking. that model doesn't exist in V1, and while simnet itself is still available, there isn't a direct parity test to port — doing so would amount to adding new fault-injection coverage rather than closing a gap. the test is therefore annotated as V0-only.

with this file done, the V0→V1 test audit across hyperactor_multiprocess is complete. every V0 test is now categorized as V0-only, V1-equivalent, or needing V1 coverage (the only gap was stop-timeout/abort, which has already been added to V1). V0 tests remain in place until hyperactor_multiprocess is removed, but they are now explicitly marked so it’s clear which parts of the tree are legacy.

Differential Revision: D87931337
@shayne-fletcher shayne-fletcher force-pushed the export-D87931337 branch 2 times, most recently from fa32ba9 to b13f837 Compare November 26, 2025 16:43
shayne-fletcher added a commit to shayne-fletcher/monarch-1 that referenced this pull request Nov 26, 2025
Summary:

this completes the audit for ping_pong.rs. the single test here (test_sim_ping_pong) is V0-specific: it exercises the old multiprocess topology (`SystemActor` + `ProcActor` + `System::attach`) running over simulated networking. that model doesn't exist in V1, and while simnet itself is still available, there isn't a direct parity test to port — doing so would amount to adding new fault-injection coverage rather than closing a gap. the test is therefore annotated as V0-only.

with this file done, the V0→V1 test audit across hyperactor_multiprocess is complete. every V0 test is now categorized as V0-only, V1-equivalent, or needing V1 coverage (the only gap was stop-timeout/abort, which has already been added to V1). V0 tests remain in place until hyperactor_multiprocess is removed, but they are now explicitly marked so it’s clear which parts of the tree are legacy.

Differential Revision: D87931337
shayne-fletcher added a commit to shayne-fletcher/monarch-1 that referenced this pull request Nov 26, 2025
Summary:

this completes the audit for ping_pong.rs. the single test here (test_sim_ping_pong) is V0-specific: it exercises the old multiprocess topology (`SystemActor` + `ProcActor` + `System::attach`) running over simulated networking. that model doesn't exist in V1, and while simnet itself is still available, there isn't a direct parity test to port — doing so would amount to adding new fault-injection coverage rather than closing a gap. the test is therefore annotated as V0-only.

with this file done, the V0→V1 test audit across hyperactor_multiprocess is complete. every V0 test is now categorized as V0-only, V1-equivalent, or needing V1 coverage (the only gap was stop-timeout/abort, which has already been added to V1). V0 tests remain in place until hyperactor_multiprocess is removed, but they are now explicitly marked so it’s clear which parts of the tree are legacy.

Differential Revision: D87931337
shayne-fletcher added a commit to shayne-fletcher/monarch-1 that referenced this pull request Nov 26, 2025
Summary:

this completes the audit for ping_pong.rs. the single test here (test_sim_ping_pong) is V0-specific: it exercises the old multiprocess topology (`SystemActor` + `ProcActor` + `System::attach`) running over simulated networking. that model doesn't exist in V1, and while simnet itself is still available, there isn't a direct parity test to port — doing so would amount to adding new fault-injection coverage rather than closing a gap. the test is therefore annotated as V0-only.

with this file done, the V0→V1 test audit across hyperactor_multiprocess is complete. every V0 test is now categorized as V0-only, V1-equivalent, or needing V1 coverage (the only gap was stop-timeout/abort, which has already been added to V1). V0 tests remain in place until hyperactor_multiprocess is removed, but they are now explicitly marked so it’s clear which parts of the tree are legacy.

Reviewed By: dulinriley

Differential Revision: D87931337
Summary:

this change applies the same V0->V1 test audit to 'system_actor.rs' that we did for 'proc_actor.rs'. i went through all 7 tests in this file and tagged each one as V0-specific, with no V1 equivalent: they all exercise `SystemActor`-centric behavior that simply doesn’t exist in the V1 design (world-level supervision state, world orchestration via hosts joining and `UpsertWorld`, snapshot filtering, and `ReportingRouter`/dynamic address updates). the new comments spell out what each test is validating in V0 and why there is no direct V1 analog, and where relevant they point at the closest V1 mechanism (for example, undeliverable handling now covered by `actor_mesh::test_undeliverable_message_return`). there are no behavior changes here; this is purely test documentation and migration context for the remaining V0 multiprocess tests in 'system_actor.rs'.

Reviewed By: pzhan9

Differential Revision: D87890512
Summary:

port stop-timeout / abort coverage from hyperactor_multiprocess into the v1 mesh layer. this adds a `SleepActor` helper and a new `actor_mesh::test_actor_mesh_stop_timeout` that overrides `ACTOR_SPAWN_MAX_IDLE`, spawns sleeping actors across a proc mesh, calls `stop()`, and asserts we get a timeout error within the expected window, proving hung actors are aborted via `Proc::destroy_and_wait` rather than waited out. the V0 test is left in place but re-documented to point at the new v1 test and to note the slight API difference (V0 reports abort counts, V1 surfaces the timeout as an error).

Reviewed By: dulinriley

Differential Revision: D87904499
Summary:

this completes the V0→V1 audit for system.rs. all remaining tests here are V0-specific and do not have V1 equivalents because the centralized `SystemActor` model (join, snapshot, system-wide stop, selective world stop, address-update routing, etc.) does not exist in the mesh-based architecture. each test is now annotated accordingly so it's clear which parts of the file are legacy behavior tied to the old system-wide coordinator.

the only behavioral change in this diff is the removal of `test_channel_dial_count`. that test was originally written as a debugging aid to understand when dials occur in the V0 forwarding path; it has never been a correctness test and has no meaningful counterpart in V1 (which uses static addressing and structured proc/host meshes). dropping it reduces noise in the V0 test corpus and clarifies which tests matter going forward.

as with the previous files, the intent of this stack is audit and classification, not behavior change: V0 tests stay in place until `hyperactor_multiprocess` is retired, but they are now explicitly marked as V0-only.

Reviewed By: dulinriley

Differential Revision: D87929235
Summary:

this completes the audit for ping_pong.rs. the single test here (test_sim_ping_pong) is V0-specific: it exercises the old multiprocess topology (`SystemActor` + `ProcActor` + `System::attach`) running over simulated networking. that model doesn't exist in V1, and while simnet itself is still available, there isn't a direct parity test to port — doing so would amount to adding new fault-injection coverage rather than closing a gap. the test is therefore annotated as V0-only.

with this file done, the V0→V1 test audit across hyperactor_multiprocess is complete. every V0 test is now categorized as V0-only, V1-equivalent, or needing V1 coverage (the only gap was stop-timeout/abort, which has already been added to V1). V0 tests remain in place until hyperactor_multiprocess is removed, but they are now explicitly marked so it’s clear which parts of the tree are legacy.

Reviewed By: dulinriley

Differential Revision: D87931337
shayne-fletcher added a commit to shayne-fletcher/monarch-1 that referenced this pull request Nov 26, 2025
Summary:

this completes the audit for ping_pong.rs. the single test here (test_sim_ping_pong) is V0-specific: it exercises the old multiprocess topology (`SystemActor` + `ProcActor` + `System::attach`) running over simulated networking. that model doesn't exist in V1, and while simnet itself is still available, there isn't a direct parity test to port — doing so would amount to adding new fault-injection coverage rather than closing a gap. the test is therefore annotated as V0-only.

with this file done, the V0→V1 test audit across hyperactor_multiprocess is complete. every V0 test is now categorized as V0-only, V1-equivalent, or needing V1 coverage (the only gap was stop-timeout/abort, which has already been added to V1). V0 tests remain in place until hyperactor_multiprocess is removed, but they are now explicitly marked so it’s clear which parts of the tree are legacy.

Reviewed By: dulinriley

Differential Revision: D87931337
@meta-codesync meta-codesync bot closed this in fbb8392 Nov 27, 2025
@meta-codesync
Copy link

meta-codesync bot commented Nov 27, 2025

This pull request has been merged in fbb8392.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Meta Open Source bot. fb-exported Merged meta-exported

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants