Skip to content

fix: preserve sampled conditioning during exact history recovery - #957

Draft
bradhilton wants to merge 3 commits into
mainfrom
hayek/exact-source-conditioning-20260925
Draft

bradhilton wants to merge 3 commits into
mainfrom
hayek/exact-source-conditioning-20260925

Conversation

@bradhilton

@bradhilton bradhilton commented Sep 25, 2026 •

Copy link
Copy Markdown
Collaborator

Agent: Hayek

When normal tokenization cannot recover a recorded history, retry against the complete recorded prompt, output, logprobs, stop token, and tail. Preserve native context between requests without treating it as sampled output. Incomplete, edited, incompatible, or overridden conditioning still refuses.

This intentionally rejects transferring recorded logprobs to a different known prefix. Three old tests now expect refusal. Multi-history remains supported when original conditioning matches; no output is silently dropped or reconditioned.

Validation: 17 source and 18 API checks passed; three captured cases were checked on a predecessor. Draft: a later controlled training case still refuses, general coverage remains unproved, and CI and independent source review remain gates. No frozen run is changed.

@bradhilton

Copy link
Copy Markdown
Collaborator Author

Investigation update: later captured refusals were localized without weakening this draft's complete-conditioning guard. The offline literal-thinking renderer fix and preceding-boundary regression are in #967. The ordinary-result STOP-authority gap and successful scoped correction are recorded in #961.

A separate explicit sampled-training prototype retains ordinary success first, catches only deliberate source-owned representation refusals, proves the complete native singleton inventory, and joins contiguous sources only with exact full-prefix nesting. Original conditioning, IDs, logprobs, sampled STOP and source order remain mandatory, with actual first-occurrence ownership before float32 finite filtering. This does not turn multi_history=True into a generic repair and is not included in this PR or ART main.

The latest complete captured CPU validation passed all 31 source encounters from two original histories, including input nonmutation and worker serialization. Of 29 adjacent pairs, 28 were compatible and one was not. It emitted three histories/28,414 tokens versus the previously validated singleton fallback's 31/297,827, preserving 4,139 finite first-occurrence terms and 29 sampled STOP tokens. This is emitted geometry only: the complete singleton proof is still built and retained; speed, memory, GPU fit and numerical training are unmeasured.

Result 025e803dcf5abd3a2f5b897f97b712932e99d33a1c5bb2c9c6e2cf94fa8e02fb; independent alignment e4fa66cbfb4b613f8bfaeef0ad4243c6baadab7a12ebd450e0d46b5a000b05d1. Only bounded scalars are reported, and diagnostic resources are closed.

Native partition/subchain recovery and post-render STOP reconciliation remain source-pinned experiment modules. Upstreaming them needs a separately reviewed explicit sampled API with process/thread dispatch and per-model STOP authority; generic SFT/OUTPUT equivalence and the native-only/no-load contract remain separate. This draft's proof requirements are unchanged.

@bradhilton bradhilton changed the title Preserve complete sampled conditioning in exact history recovery fix: preserve sampled conditioning during exact history recovery Sep 30, 2026

This branch has not been deployed

No deployments
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