Skip to content

feat(reward): preserve episode outcomes and support mean-only groups - #1750

Merged
sitabulaixizawaluduo merged 12 commits into
mainfrom
feat/group-reward-mean-only
Sep 26, 2026
Merged

sitabulaixizawaluduo merged 12 commits into
mainfrom
feat/group-reward-mean-only

Conversation

@dingzhiqiang

@dingzhiqiang dingzhiqiang commented Sep 22, 2026 •

Copy link
Copy Markdown
Collaborator

Description

Expose mean-only group reward normalization through the existing v1 rollout/controller interfaces. Add Arena model-versus-system failure classification to retain attributable model failures as zero-reward trajectories; the receipt-protocol isolation issue noted below remains outstanding.

Missing concat-leaf rewards are not inferred from a scalar episode outcome. Explicit rewards are preserved, and reward-normalized groups with missing rewards remain rejected.

Scope and compatibility

Split from #1731 and based on latest main, including the merged runtime fixes in #1749. This does not duplicate #1746/#1748. The merge preserves main's v2 partial-group support and forwarding of min_usable_group_size. Mean-only rollout normalization remains v1-only and fails before sampling when requested with v2.

Validation

  • 284 targeted CPU tests passed across context overflow recovery, grouped rollout workflow, remote reward normalization, trainer setup, and Arena single/multi-stream handling.
  • Full pre-commit and normal commit hooks passed.
  • GPU, multi-node integration, and combined real-model RL learning correctness were not validated in this update.

Outstanding review issue

Receipt parsing can fall through from invalid native receipts to GameAgent/legacy classification, and context-overflow handling can bypass native receipt health validation. Parser selection must follow the Harness result contract and reject invalid receipts without fallback. This reviewer finding remains open; the current merge-conflict resolution does not fix it. Unit-test success does not establish that this failure-classification path is safe to merge.

@dingzhiqiang dingzhiqiang added the safe-to-test Ready to run unit-tests in a PR. label Sep 22, 2026
Comment thread examples/swe/arena_agent.py Outdated
Comment thread areal/experimental/openai/proxy/workflow.py Outdated
Base automatically changed from fix/qwen-colocate-runtime to main September 23, 2026 09:46
@sitabulaixizawaluduo sitabulaixizawaluduo added safe-to-test Ready to run unit-tests in a PR. and removed safe-to-test Ready to run unit-tests in a PR. labels Sep 24, 2026

@fishcrap fishcrap left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@sitabulaixizawaluduo sitabulaixizawaluduo added safe-to-test Ready to run unit-tests in a PR. and removed safe-to-test Ready to run unit-tests in a PR. labels Sep 24, 2026
@dingzhiqiang
dingzhiqiang deployed to AReaL-unittests September 24, 2026 08:47 — with GitHub Actions Active
@dingzhiqiang
dingzhiqiang deployed to AReaL-unittests September 24, 2026 08:47 — with GitHub Actions Active
@sitabulaixizawaluduo sitabulaixizawaluduo added safe-to-test Ready to run unit-tests in a PR. and removed safe-to-test Ready to run unit-tests in a PR. labels Sep 24, 2026
@sitabulaixizawaluduo
sitabulaixizawaluduo merged commit 643b20b into main Sep 26, 2026
46 of 57 checks passed
@sitabulaixizawaluduo
sitabulaixizawaluduo deleted the feat/group-reward-mean-only branch September 26, 2026 01:05

This branch was successfully deployed

1 active deployment
AReaL-unittests — 028541c5 Deployed Sep 24, 2026 by sitabulaixizawaluduo via Run AReaL unit tests (sglang) #917
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

safe-to-test Ready to run unit-tests in a PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants