Dapo17k - #6
Merged
Merged
Conversation
kbhardwaj-nvidia
pushed a commit
that referenced
this pull request
Sep 5, 2025
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>
This was referenced Jun 23, 2026
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>
5 tasks
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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.