You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Captures with different original prompts can be mistaken for duplicates when their response identifiers, generated tokens, and output metadata match. Include captured prompt token IDs in the existing source fingerprint so both training examples survive. Genuine copies of the same capture still deduplicate.
This version is standalone on ART main 9a16366d79eebc36e00f75670965e2629c012b75. It contains only the source-identity change from the previous #886: one runtime function in art.trajectories._tokenize, its explanatory comment, and tests. _history.py is byte-identical to main; #885's automatic history-attribution change is excluded. Public APIs, automatic history construction, explicit reconciliation, manual-history editing, and loss normalization retain main's behavior. No new edited-history validator or probability recomputation is introduced. The broader history-attribution discussion in #883 remains separate.
Validation on the standalone source:
547 trajectory tests pass, including all 16 source-identity tests. On unchanged main, those 16 produce 10 expected failures and six passing controls.
Exact diff/AST checks prove the only runtime function change is the same fingerprint function as the original Preserve distinct captures with different prompt tokens #886, with captured-prompt extraction precedence preserved for Chat, Completions, Responses and Messages.
Ruff, formatting and lock checks pass. Local full type checks report the same 11 diagnostics on unchanged main and this candidate; hosted CI is tracked separately.
Independent standalone review passes nine extra identity controls and 11 manual/edit/reconciliation cases whose native outputs are byte-identical to main. Fresh formal reviews from Minsky and McCarthy are requested for head 3627311444748067482c486909d3642644509efd; earlier stacked-head approvals remain historical evidence.
Prepared at Brad's request. This does not merge #885, relax experiment source fences, launch research, or authorize deployment.
bradhilton
changed the title
Include captured conditioning in sampled-source identity
Preserve distinct captures with different prompt tokens
Sep 10, 2026
Consolidated review record (automated agent review traffic removed 2026-09-17)
Change. Captures with different original prompts but matching response IDs, generated tokens and output metadata were mistaken for duplicates, dropping a training example. The sampled-source fingerprint in art.trajectories._tokenize now includes captured prompt token IDs for all four protocols, so distinct prompts survive while genuine copies still deduplicate; standalone on main, excluding #885.
Review. Minsky and McCarthy each posted fresh CLEAR verdicts at the merged head 3627311, after earlier clearing the stacked head. Verified: 547 trajectory tests pass plus 21 extra identity controls; the 16 new identity tests give 10 expected failures on unchanged main; ruff/format clean; the two-file patch matches the original delta with _history.py unchanged. Schulman confirmed correct-base CI after reopening: the GPU classifier gate passed (GPU job skipped), Prek still in progress.
Prompt hashing adds work proportional to prompt length; no performance qualification claimed.
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
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.
Captures with different original prompts can be mistaken for duplicates when their response identifiers, generated tokens, and output metadata match. Include captured prompt token IDs in the existing source fingerprint so both training examples survive. Genuine copies of the same capture still deduplicate.
This version is standalone on ART main
9a16366d79eebc36e00f75670965e2629c012b75. It contains only the source-identity change from the previous #886: one runtime function inart.trajectories._tokenize, its explanatory comment, and tests._history.pyis byte-identical to main; #885's automatic history-attribution change is excluded. Public APIs, automatic history construction, explicit reconciliation, manual-history editing, and loss normalization retain main's behavior. No new edited-history validator or probability recomputation is introduced. The broader history-attribution discussion in #883 remains separate.Validation on the standalone source:
3627311444748067482c486909d3642644509efd; earlier stacked-head approvals remain historical evidence.Prepared at Brad's request. This does not merge #885, relax experiment source fences, launch research, or authorize deployment.