Skip to content

Dapo17k - #6

Merged
bxyu-nvidia merged 3 commits into
mainfrom
bxyu/dapo17k-github
Sep 5, 2025
Merged

Dapo17k#6
bxyu-nvidia merged 3 commits into
mainfrom
bxyu/dapo17k-github

Conversation

@bxyu-nvidia

Copy link
Copy Markdown
Contributor

No description provided.

Signed-off-by: Brian Yu <bxyu@nvidia.com>
@bxyu-nvidia
bxyu-nvidia merged commit 32d0e2e into main Sep 5, 2025
9 of 12 checks passed
@bxyu-nvidia
bxyu-nvidia deleted the bxyu/dapo17k-github branch September 5, 2025 20:57
kbhardwaj-nvidia pushed a commit that referenced this pull request Sep 5, 2025
Signed-off-by: Brian Yu <bxyu@nvidia.com>
Signed-off-by: Khushi Bhardwaj <kbhardwaj@nvidia.com>
soares-f pushed a commit that referenced this pull request Sep 8, 2025
Signed-off-by: Brian Yu <bxyu@nvidia.com>
Signed-off-by: soares-f <soarescmsa@gmail.com>
soares-f pushed a commit that referenced this pull request Sep 15, 2025
Signed-off-by: Brian Yu <bxyu@nvidia.com>
Signed-off-by: soares-f <soarescmsa@gmail.com>
abubakaria56 pushed a commit to abubakaria56/Gym that referenced this pull request Mar 2, 2026
Signed-off-by: Brian Yu <bxyu@nvidia.com>
abubakaria56 pushed a commit to abubakaria56/Gym that referenced this pull request Mar 2, 2026
Signed-off-by: Brian Yu <bxyu@nvidia.com>
@bxyu-nvidia
bxyu-nvidia restored the bxyu/dapo17k-github branch March 11, 2026 02:02
@bxyu-nvidia
bxyu-nvidia deleted the bxyu/dapo17k-github branch March 26, 2026 22:41
wprazuch added a commit that referenced this pull request Jun 24, 2026
… core)

Add nemo_gym.agent_registry, mirroring the environment registry: discover agents
under responses_api_agents/<name>/, resolve an agent name (+ optional variant) to
its config — the run-by-name primitive for 'gym run --agent <name>' — and classify
each agent as composable (Pattern A: references a separate resources server) vs
self-contained (Pattern B: agent_framework / external harness, e.g. swe_agents,
harbor_agent, claude_code_agent). Resolution-safe (reads configs only), with
did-you-mean hints, variant selection, and AgentNotComposableError for the composer.

Foundation for the M3 config_composer (epic #1205, friction #6); CLI wiring deferred
to align with the unified CLI.

Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
wprazuch added a commit that referenced this pull request Jun 24, 2026
Add nemo_gym/config_composer.py: a pure, resolution-safe composer that
rewrites an already-merged OmegaConf DictConfig along the agent and
dataset axes (RFC M3 / friction #6).

- find_agent_block_key: locate the single agent block carrying the
  type: benchmark dataset (mirrors benchmarks.py); raise
  NoComposableAgentBlockError on zero/ambiguous targets.
- substitute_agent: swap the composable harness via
  resolve_agent_config_path(require_composable=True), carrying over the
  env's resources_server / model_server / datasets wiring and re-keying
  the inner block. Pattern B agents raise AgentNotComposableError.
- substitute_dataset_params: edit num_repeats / prompt_config on the
  benchmark dataset entry.
- substitute_model: documented no-op (model axis is the CLI's job).
- _validate_no_mandatory_placeholders: reject remaining '???' fields in
  the agent and its referenced resources block without resolving
  interpolations.

Never starts servers, reads secrets, resolves interpolations, or emits
Hydra override tokens. 100% module coverage (24 tests).

Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
wprazuch added a commit that referenced this pull request Jun 24, 2026
… core)

Add nemo_gym.agent_registry, mirroring the environment registry: discover agents
under responses_api_agents/<name>/, resolve an agent name (+ optional variant) to
its config — the run-by-name primitive for 'gym run --agent <name>' — and classify
each agent as composable (Pattern A: references a separate resources server) vs
self-contained (Pattern B: agent_framework / external harness, e.g. swe_agents,
harbor_agent, claude_code_agent). Resolution-safe (reads configs only), with
did-you-mean hints, variant selection, and AgentNotComposableError for the composer.

Foundation for the M3 config_composer (epic #1205, friction #6); CLI wiring deferred
to align with the unified CLI.

Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
wprazuch added a commit that referenced this pull request Jun 24, 2026
… core)

Add nemo_gym.agent_registry, mirroring the environment registry: discover agents
under responses_api_agents/<name>/, resolve an agent name (+ optional variant) to
its config — the run-by-name primitive for 'gym run --agent <name>' — and classify
each agent as composable (Pattern A: references a separate resources server) vs
self-contained (Pattern B: agent_framework / external harness, e.g. swe_agents,
harbor_agent, claude_code_agent). Resolution-safe (reads configs only), with
did-you-mean hints, variant selection, and AgentNotComposableError for the composer.

Foundation for the M3 config_composer (epic #1205, friction #6); CLI wiring deferred
to align with the unified CLI.

Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
wprazuch added a commit that referenced this pull request Jun 24, 2026
Add nemo_gym/config_composer.py: a pure, resolution-safe composer that
rewrites an already-merged OmegaConf DictConfig along the agent and
dataset axes (RFC M3 / friction #6).

- find_agent_block_key: locate the single agent block carrying the
  type: benchmark dataset (mirrors benchmarks.py); raise
  NoComposableAgentBlockError on zero/ambiguous targets.
- substitute_agent: swap the composable harness via
  resolve_agent_config_path(require_composable=True), carrying over the
  env's resources_server / model_server / datasets wiring and re-keying
  the inner block. Pattern B agents raise AgentNotComposableError.
- substitute_dataset_params: edit num_repeats / prompt_config on the
  benchmark dataset entry.
- substitute_model: documented no-op (model axis is the CLI's job).
- _validate_no_mandatory_placeholders: reject remaining '???' fields in
  the agent and its referenced resources block without resolving
  interpolations.

Never starts servers, reads secrets, resolves interpolations, or emits
Hydra override tokens. 100% module coverage (24 tests).

Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
wprazuch added a commit that referenced this pull request Jun 24, 2026
… core)

Add nemo_gym.agent_registry, mirroring the environment registry: discover agents
under responses_api_agents/<name>/, resolve an agent name (+ optional variant) to
its config — the run-by-name primitive for 'gym run --agent <name>' — and classify
each agent as composable (Pattern A: references a separate resources server) vs
self-contained (Pattern B: agent_framework / external harness, e.g. swe_agents,
harbor_agent, claude_code_agent). Resolution-safe (reads configs only), with
did-you-mean hints, variant selection, and AgentNotComposableError for the composer.

Foundation for the M3 config_composer (epic #1205, friction #6); CLI wiring deferred
to align with the unified CLI.

Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
wprazuch added a commit that referenced this pull request Jun 24, 2026
Add nemo_gym/config_composer.py: a pure, resolution-safe composer that
rewrites an already-merged OmegaConf DictConfig along the agent and
dataset axes (RFC M3 / friction #6).

- find_agent_block_key: locate the single agent block carrying the
  type: benchmark dataset (mirrors benchmarks.py); raise
  NoComposableAgentBlockError on zero/ambiguous targets.
- substitute_agent: swap the composable harness via
  resolve_agent_config_path(require_composable=True), carrying over the
  env's resources_server / model_server / datasets wiring and re-keying
  the inner block. Pattern B agents raise AgentNotComposableError.
- substitute_dataset_params: edit num_repeats / prompt_config on the
  benchmark dataset entry.
- substitute_model: documented no-op (model axis is the CLI's job).
- _validate_no_mandatory_placeholders: reject remaining '???' fields in
  the agent and its referenced resources block without resolving
  interpolations.

Never starts servers, reads secrets, resolves interpolations, or emits
Hydra override tokens. 100% module coverage (24 tests).

Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
wprazuch added a commit that referenced this pull request Jun 24, 2026
Add nemo_gym/config_composer.py: a pure, resolution-safe composer that
rewrites an already-merged OmegaConf DictConfig along the agent and
dataset axes (RFC M3 / friction #6).

- find_agent_block_key: locate the single agent block carrying the
  type: benchmark dataset (mirrors benchmarks.py); raise
  NoComposableAgentBlockError on zero/ambiguous targets.
- substitute_agent: swap the composable harness via
  resolve_agent_config_path(require_composable=True), carrying over the
  env's resources_server / model_server / datasets wiring and re-keying
  the inner block. Pattern B agents raise AgentNotComposableError.
- substitute_dataset_params: edit num_repeats / prompt_config on the
  benchmark dataset entry.
- substitute_model: documented no-op (model axis is the CLI's job).
- _validate_no_mandatory_placeholders: reject remaining '???' fields in
  the agent and its referenced resources block without resolving
  interpolations.

Never starts servers, reads secrets, resolves interpolations, or emits
Hydra override tokens. 100% module coverage (24 tests).

Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
wprazuch added a commit that referenced this pull request Jun 25, 2026
… core)

Add nemo_gym.agent_registry, mirroring the environment registry: discover agents
under responses_api_agents/<name>/, resolve an agent name (+ optional variant) to
its config — the run-by-name primitive for 'gym run --agent <name>' — and classify
each agent as composable (Pattern A: references a separate resources server) vs
self-contained (Pattern B: agent_framework / external harness, e.g. swe_agents,
harbor_agent, claude_code_agent). Resolution-safe (reads configs only), with
did-you-mean hints, variant selection, and AgentNotComposableError for the composer.

Foundation for the M3 config_composer (epic #1205, friction #6); CLI wiring deferred
to align with the unified CLI.

Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
wprazuch added a commit that referenced this pull request Jun 25, 2026
Add nemo_gym/config_composer.py: a pure, resolution-safe composer that
rewrites an already-merged OmegaConf DictConfig along the agent and
dataset axes (RFC M3 / friction #6).

- find_agent_block_key: locate the single agent block carrying the
  type: benchmark dataset (mirrors benchmarks.py); raise
  NoComposableAgentBlockError on zero/ambiguous targets.
- substitute_agent: swap the composable harness via
  resolve_agent_config_path(require_composable=True), carrying over the
  env's resources_server / model_server / datasets wiring and re-keying
  the inner block. Pattern B agents raise AgentNotComposableError.
- substitute_dataset_params: edit num_repeats / prompt_config on the
  benchmark dataset entry.
- substitute_model: documented no-op (model axis is the CLI's job).
- _validate_no_mandatory_placeholders: reject remaining '???' fields in
  the agent and its referenced resources block without resolving
  interpolations.

Never starts servers, reads secrets, resolves interpolations, or emits
Hydra override tokens. 100% module coverage (24 tests).

Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
adil-a pushed a commit to adil-a/Gym that referenced this pull request Jun 25, 2026
…audit)

- (#4) Cache the static mcp_config (read once, reuse) instead of reading it from disk every rollout.
- (NVIDIA-NeMo#5) Document that the per-rollout Gym entry overwrites a same-named static mcp_config server.
- (NVIDIA-NeMo#6) Warn when seed MCP metadata has no headers (tool calls would otherwise be unauthenticated).
- (NVIDIA-NeMo#7) Add an agent test asserting the session cookie is threaded seed_session -> verify.
- (#8a) Move the example task ground truth (expected_city) under verifier_metadata, per convention.
- (#8b) Use the message-list input format in the example dataset, like the other examples.
- (NVIDIA-NeMo#9) Remove the dead 'url' branch in the rollout mcp_config (MCPServerMetadata has no 'url'); audited
  that every metadata field accessed (server_name/url_path/transport/headers) actually exists.
- (#2v) Add a test that a token-less MCP tool call surfaces as a clean isError (HTTP 200), not a 401.

Also patch only ensure_claude_code (not all of model_post_init) in the claude_code_agent test helper, so
the model's private attributes initialize.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Codex <codex@openai.com>
wprazuch added a commit that referenced this pull request Jun 29, 2026
Per review: pulling nemo-gym's [dev] extra (pre-commit/mypy/ruff + the pytest deps)
into every per-server test venv is too coarse just to get pytest for `gym env test`
from a wheel. Reverting the setup_command/_test_single `include_dev_extra` change;
`gym env test` from a wheel (a contributor-runs-in-repo edge case) stays a documented
limitation. PR #6 now only fixes the clear `gym dataset collate` write crash (mkdir).

Signed-off-by: Wojciech Prazuch <wprazuch@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant