Skip to content

test: add Megatron-backend variant of Gym token-capture recovery functional test #4163

Description

@lauradang

What is uncovered

Both token-capture recovery functional tests added in #4129 source the vLLM-only base
tests/functional/grpo_async_gym_single_controller.sh:

  • tests/functional/grpo_async_gym_single_controller_sibling_recovery.sh
  • tests/functional/grpo_async_gym_single_controller_streaming_recovery.sh

The Megatron path (MInf capture -> data-plane checkpoint -> process restart -> ledger finalization)
has no end-to-end coverage; only unit tests exercise the Megatron stager/preparer.

Why it is blocked

_require_minf_capture_hooks() in nemo_rl/algorithms/single_controller_utils/setup.py
(called at line 1201, raises at line 965) raises NotImplementedError when the pinned
megatron-core lacks RequestPayloadStager / RequestPromptPreparer from NVIDIA/Megatron-LM
PR #7015. Until 3rdparty/Megatron-Bridge-workspace/Megatron-Bridge is bumped to a revision
that includes #7015, policy.generation.backend=megatron ++token_capture.enabled=true fails at setup.

Steps once #7015 is pinned

  1. Add grpo_megatron_generation_gym_single_controller_sibling_recovery.sh (and a streaming twin)
    that set BASE_TEST to grpo_megatron_generation_gym_single_controller.sh (already
    policy.generation.backend=megatron + mcore_generation_config.expose_http_server=true
    via examples/nemo_gym/grpo_qwen3_0_6b_megatron_generation_single_controller.yaml).
  2. Register them in tests/functional/L1_Functional_Tests_SingleController.sh next to the
    vLLM variants (lines 191/194); use run_test fast only if runtime fits the Lfast budget.

Split out from #4129 per review discussion.

🤖 Generated with Claude Code

Activity

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

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions