Research log Small Model Experimentation
GitHub

Qwen3.5-4B Counterfactual Order-Support Selector

Meaningful order helps, but not enough to trust this selector

The one idea you need

The model answered each puzzle after writing a long scratchpad. We also kept a version with exactly the same scratchpad words scrambled. The new idea is to ask which answer gained the most support from meaningful word order rather than from the words merely being present.

The question

Can the change caused by meaningful scratchpad order tell us which of twelve possible answers to trust, without revealing the correct answer?

What we found

Not reliably. The meaningful-order rule got 43 of 113 puzzles right, clearly better than first attempt or majority vote. But it was only two puzzles ahead of simply choosing the most decisive attempt, and a deliberately mismatched scrambled scratchpad did one puzzle better. Those small differences could be noise, so the separate confirmation set stayed closed.

Why it matters

Averaging the model's full answer probabilities can recover useful weak clues that voting throws away. But the exact scrambled counterpart was not doing enough task-specific work to justify its extra cost. Future work should change the reasoning path itself, not keep polishing this final score.

Meaningful-order rule43 / 11338.1% correct, versus 29.2% for majority vote
Lead over simplest strong confidence rule2 puzzlestoo small for a reliable advantage
Correct answers found outside all three votes8weak probability clues sometimes recover a new answer
On this page
  1. Results at a glance
  2. Overview
  3. Report
    1. Summary
    2. Research Program Fit
    3. Method
    4. Results
    5. Controls
    6. Oracle Versus Deployable Evidence
    7. Interpretation
    8. Next Experiments
    9. Artifact Manifest
  4. Experiment log
  5. Reproduce
  6. Related

Results at a glance 1

A clear win over voting, but no clear win over confidence

How to read

Each bar is the share of 113 puzzles answered correctly by one way of combining three attempts; taller is better. The mismatched-scratchpad bar is a diagnostic with hidden balancing information, not a usable method.

0%10%20%30%40%order-support deltaorder-support delta38.1%first tracefirst trace27.4%majoritymajority29.2%mean probabilitymean probability32.7%max confidencemax confidence35.4%minimum entropyminimum entropy36.3%task-mismatched shuffletask-mismatched shuffle38.9%reverse deltareverse delta7.1%

Takeaway → Meaningful-order subtraction rises above first attempt and majority, yet barely edges the strongest ordinary confidence bars and loses to the diagnostic mismatch, so it does not qualify.

Data table
label-free selector or controlexact task accuracy
order-support delta38.1%
first trace27.4%
majority29.2%
mean probability32.7%
max confidence35.4%
minimum entropy36.3%
task-mismatched shuffle38.9%
reverse delta7.1%

Numbers from experiments/qwen35_4b_counterfactual_order_support_selector/runs/qualification.json

Technical framing

Order support beats voting but not strong confidence controls — The order-support vector beats first trace, majority, and mean probability, but its gains over max confidence and minimum entropy are too small and uncertain. The task-mismatched bar is an oracle-balanced mechanism control, not deployable. Qualification failed and confirmation stayed absent.

In the author’s words from the Overview · “Results”

Terminal qualification decision: NO_ORDER_SUPPORT_SELECTOR. The registered raw probability-delta rule reached 43/113 (38.05%), substantially above first trace (31/113), majority (33/113), and mean ordered probability (37/113). It nevertheless missed the conjunctive direct-control standard: minimum-entropy selection reached 41/113 and max-confidence 40/113, so candidate gains were only +1.77pp and +2.65pp with one-sided paired lower bounds -3.54pp and -2.65pp. The oracle-balanced task-mismatched shuffle reached 44/113, one task better than the candidate. Accuracy, reachability, breadth, and reverse-delta gates passed; mandatory point-gain and uncertainty gates failed. Predictions spanned 11 aliases and successes 10 target aliases. … Read the full result →

Overview

Terminal NO_ORDER_SUPPORT_SELECTOR: ordered-minus-exact-shuffle probability beats hard voting but not confidence/entropy robustly or the task-mismatch control, so confirmation and a fresh matched-compute run remain sealed.

Research Program

Question

Does the forward probability contribution of coherent thought order provide a label-free answer selector? For each alias, average across three paths:

P(alias | ordered thought) - P(alias | exact-token shuffle)

and choose the largest delta.

Hypothesis

The shuffled counterfactual holds the thought-token multiset, length, answer syntax, and alias vocabulary fixed while destroying coherent order. Subtraction should cancel identity and token-presence nuisance, isolating the part of the answer state caused by coherent reasoning. The hypothesis is actionable only if this vector beats every strong K=3 selector and a task-mismatched shuffle control on qualification and separately opened confirmation.

Setup

  • Model: no new model call; source rows were produced only by Qwen/Qwen3.5-4B revision 851bf6e806efd8d0a36b00ddf55e13ccb7b8cd0a under Transformers bf16 SDPA.
  • Dataset/task source: the parent's two disjoint 113-task, three-path, contamination-free procedural seam stages at cap 1,024.
  • Train/eval split: qualification may open now. Confirmation files are absent locally and fail closed until a passing qualification is committed/pushed.
  • Baselines: first trace, majority with mean-probability tie-break, mean ordered probability, max-confidence trace, and minimum-entropy trace.
  • Controls: reverse delta and a gold-alias-balanced but task-mismatched shuffled distribution. The latter uses hidden labels only to make the control harder; it never contributes to the candidate.
  • Primary metric: exact task accuracy and paired task-bootstrap differences.
  • Oracle-only metrics: correct/chosen alias breadth and mismatch construction.
  • Hidden-label boundary: prediction functions accept no correct alias or correctness field; mutation invariance is unit-tested.

Qualification and confirmation each require candidate accuracy in 15%--70%, at least +3pp over every deployable baseline and the mismatch control, a one-sided 95% paired-task lower bound above zero against every baseline/control, at least eight chosen and eight successful aliases, and at least +10pp over the reverse-delta anti-selector. No secondary score can rescue the primary rule.

This is a selector-signal qualification, not a matched-compute capability test. Ordered+shuffle uses three additional full prefills. Even a two-stage pass only licenses a fresh K=3 candidate versus K=6 actual-forward-token sample-more run.

Run

Smoke (never opens confirmation):

PYTHONDONTWRITEBYTECODE=1 .venv/bin/python \
  experiments/qwen35_4b_counterfactual_order_support_selector/scripts/run.py \
  --stage smoke

Qualification:

PYTHONDONTWRITEBYTECODE=1 .venv/bin/python \
  experiments/qwen35_4b_counterfactual_order_support_selector/scripts/run.py \
  --stage qualification

Results

Terminal qualification decision: NO_ORDER_SUPPORT_SELECTOR. The registered raw probability-delta rule reached 43/113 (38.05%), substantially above first trace (31/113), majority (33/113), and mean ordered probability (37/113). It nevertheless missed the conjunctive direct-control standard: minimum-entropy selection reached 41/113 and max-confidence 40/113, so candidate gains were only +1.77pp and +2.65pp with one-sided paired lower bounds -3.54pp and -2.65pp. The oracle-balanced task-mismatched shuffle reached 44/113, one task better than the candidate.

selector/controlaccuracycandidate gappaired lower
order-support delta38.05%
first trace27.43%+10.62pp+4.42pp
majority29.20%+8.85pp+2.65pp
mean ordered probability32.74%+5.31pp-0.88pp
max-confidence trace35.40%+2.65pp-2.65pp
minimum-entropy trace36.28%+1.77pp-3.54pp
oracle-balanced mismatch38.94%-0.88pp-7.08pp
reverse delta7.08%+30.97ppdiagnostic

Accuracy, reachability, breadth, and reverse-delta gates passed; mandatory point-gain and uncertainty gates failed. Predictions spanned 11 aliases and successes 10 target aliases. Twenty-seven predictions were absent from the three ordered argmax choices, and eight of those were correct, showing that the delta sometimes extracts weak probability support beyond voting. That clue is insufficient for qualification.

Confirmation artifacts remain absent. No fresh matched-compute run, causal stage, or capability claim is licensed.

Interpretation

The replicated ordered-thought group effect contains some per-task selection signal, but raw exact-shuffle subtraction is not reliably better than cheap confidence/entropy selection and is not specifically dependent on the matched task's shuffled distribution. Retire this exact selector rather than tune its transform on observed outcomes. The next capability mechanism must change the proposal/continuation, not merely re-rank the same commit logits.

Knowledgebase Update

  • Program evidence updated: all three programs.
  • Program backlog updated: exact-shuffle support selection retired.
  • Claim ledger updated: no new claim from retrospective rows.

Artifacts

  • src/selector.py: pure prediction, controls, statistics, and gates.
  • scripts/run.py: qualification/confirmation firewall.
  • configs/default.yaml: immutable hashes, aliases, gates, and seeds.
  • data/qualification/: hash-identical copies of parent qualification rows.
  • data/confirmation/: intentionally absent unless qualification passes.
  • runs/ and analysis/: gated summaries and task-level predictions.
  • reports/preregistration.md and reports/design_review.md: frozen rules and adversarial review.
  • reports/pre_qualification_implementation_audit.md: 36 outcome-blind data, firewall, selector, statistics, and anchoring assertions.
  • reports/post_qualification_adversarial_audit.md: 12 post-result objections, non-rescues, and the sealed-confirmation routing decision.
  • reports/artifact_manifest.yaml

Report

Rendered from reports/report.md

Summary

Terminal NO_ORDER_SUPPORT_SELECTOR. Confirmation artifacts and the fresh matched-compute successor remain sealed.

Research Program Fit

Method

For each task and alias, the frozen primary averaged three ordered probabilities minus their three exact-token-shuffle probabilities, then selected the largest delta. It used no label. See the preregistration and 15-point design review.

Results

methodcorrect / 113accuracyprimary minus methodone-sided paired lower
primary order delta430.3805
first trace310.2743+0.1062+0.0442
majority330.2920+0.0885+0.0265
mean ordered probability370.3274+0.0531-0.0088
max-confidence trace400.3540+0.0265-0.0265
minimum-entropy trace410.3628+0.0177-0.0354
oracle-balanced mismatch440.3894-0.0088-0.0708
reverse delta80.0708+0.3097diagnostic

The candidate passed its 15%--70% range, reachability, 11-alias prediction breadth, 10-alias success breadth, and reverse-control gap. It failed mandatory all-comparator point gain and uncertainty. Against minimum entropy it won nine tasks, lost seven, and tied 97. Against max confidence it won nine, lost six, and tied 98. These tiny net advantages cannot support a selector.

The candidate selected an alias absent from all three ordered argmax choices on 27/113 tasks and was correct on eight, so the vector can recover weak common support that voting discards. This is a useful mechanism clue, not a passed system.

Controls

The reverse delta collapsed to 8/113, confirming the sign contains information. But subtracting another task's shuffled distribution from the same correct-alias stratum reached 44/113, versus 43/113 for the exact matched shuffle. Because the mismatch is oracle-balanced, its absolute score is not deployable; nevertheless, the primary also independently failed three direct deployable comparator gates.

Oracle Versus Deployable Evidence

The primary and five standard baselines are label-free. The task-mismatch control uses gold only to preserve alias strata and is explicitly oracle-only. No confirmation or hidden label entered the candidate. This retrospective qualification is not matched compute: the three shuffle prefills would have to be charged against additional ordered samples.

Interpretation

The causal group effect does not become a robust per-task selector through raw probability subtraction. It beats majority decisively but fails to improve on simple confidence/entropy with adequate effect and uncertainty, and exact task matching is not load-bearing against the oracle-balanced mismatch. Retire the registered transform without log-ratio, residualization, or subset tuning.

Next Experiments

Do not open confirmation or a fresh compute-matched selector run. Redirect from commit-logit ranking to a method that changes the proposal or continuation distribution—where Jacobian counterfactuals could create new branches rather than score existing ones.

Artifact Manifest

See artifact_manifest.yaml.

Experiment log 2

Show the running log (2 entries, 2026-07-13)

2026-07-13 — Intake and adversarial design

  • Created a distinct follow-up rather than extending the result-bearing parent.
  • Copied only the parent's 113-task qualification real/shuffled slot rows and verified exact source hashes. Confirmation artifacts remain absent.
  • Froze one primary rule, five strong deployable baselines, reverse and task-mismatch controls, paired task uncertainty, breadth gates, and the matched-compute limitation before calculating any derived selector accuracy.

2026-07-13 — Terminal qualification negative

  • Ran the single frozen primary rule after pushed boundary 89a4949e.
  • Decision NO_ORDER_SUPPORT_SELECTOR: 43/113 candidate successes (38.05%).
  • Candidate beat first by +10.62pp (lower +4.42pp) and majority by +8.85pp (lower +2.65pp), but missed the registered all-comparator rule.
  • Gains over mean probability, max confidence, and minimum entropy were +5.31pp, +2.65pp, and +1.77pp; all paired lower bounds crossed zero.
  • The oracle-balanced task-mismatched shuffle scored 44/113 versus candidate 43/113, defeating task-specific counterfactual attribution.
  • Breadth passed at 11 predicted and 10 successful aliases; reverse delta was only 8/113. These cannot rescue the failed point/uncertainty gates.
  • Rerun hashes were byte-identical: summary 9fc1af5c..., task predictions 03d2e4ff....
  • Confirmation files remain absent. No fresh K=3-versus-K=6 GPU experiment is authorized.

Reproduce

Smoke test

PYTHONDONTWRITEBYTECODE=1 .venv/bin/python experiments/qwen35_4b_counterfactual_order_support_selector/scripts/run.py --stage smoke

Full run

PYTHONDONTWRITEBYTECODE=1 .venv/bin/python experiments/qwen35_4b_counterfactual_order_support_selector/scripts/run.py --stage qualification

Run steps are documented inside the experiment folder (README and scripts).

Browse the experiment folder on GitHub ↗