SkillOpt Ablations and Sleep: When Should an Agent Accept, Gate, or Reflect on Skill Updates?
++ A descriptive analysis of 499 completed run summaries across SearchQA, + LiveMathematicianBench, and SpreadsheetBench examines how combined update + policies trade exploration for stability. A separate five-night + SkillOpt-Sleep experiment studies the same controls using shipped components; + five nights is the study protocol, not a nightly CLI default. +
+ ++ SkillOpt improves an agent by iteratively editing a natural-language skill file. + That raises a practical control question: when the optimizer proposes a new skill + update, should the system accept it, gate it against validation performance, or + ask the model to reflect on its own successes and failures first? +
+ +
+ We analyze 358 completed gating and skill-aware reflection run summaries, plus
+ 141 completed consolidation summaries, for 499 included results. The target model is
+ the model being improved and evaluated; the optimizer model writes the skill
+ edits. The targets cover strong
+ proprietary models and a smaller open model: gpt-5.5,
+ gpt-5.4-mini, gpt-5.4-nano, and
+ Qwen3.5-4B. The optimizer model is held fixed at
+ gpt-5.5.
+
Accept Every Edit is competitive in this sweep.
+ Its combined candidate and slow-update policy often has a similar or higher exploratory diagnostic than the paper-style baseline, especially for gpt-5.5.
+ best-on-val) and the final checkpoint test score. Some exploratory
+ summaries also show max(best-on-val, final). That maximum is an
+ oracle diagnostic computed after seeing both test endpoints; it is not a
+ deployable selection rule and does not support choosing a production
+ checkpoint. We return to this distinction in the stability analysis below. Scores are shown
+ on a 0–100% scale. A delta such as +0.9% denotes an absolute
+ 0.9-percentage-point change, not a 0.9% relative change; relative gains are
+ explicitly labeled.
+ Experimental setup
++ We vary two core mechanisms in SkillOpt. The first is the acceptance gate: + should a candidate skill update be accepted only if it improves validation + performance? The second is skill-aware reflection: should trajectories from the + target model be summarized into reusable notes for future skill edits? +
+ +a49d0eb;
+ provider behavior can change independently of the repository.
+ Key terms
+-
+
- Gate: the rule that decides whether a proposed skill edit should become the current skill. +
- Hard score: exact task success, such as answering a question correctly or producing a fully correct spreadsheet output. +
- Soft score: partial credit, useful when a task has meaningful intermediate progress even if the final answer is not fully correct. +
- Slow update: a periodic rewrite or merge step that incorporates broader training evidence into the skill. +
- Skill-aware reflection (SAR): an EmbodiSkill-inspired routing mechanism that sends skill defects to body edits and execution lapses to protected appendix reminders. +
- Consolidation: a compression step for SAR notes. It removes duplicate or overlapping advice before the skill appendix becomes too long. +
| Base setting or SAR add-on | +Gate | +Slow-update gate | +Reflection | +Consolidation | +What it tests | +
|---|---|---|---|---|---|
| Paper-Style Fully Gated Baseline | +Hard validation gate | +Validation-selected | +None | +None | +The paper-style stability-first baseline; this is not the current main default. |
+
| Accept Every Edit | +Disabled | +Unconditional | +None | +None | +The combined behavior when candidate edits and slow updates are both accepted unconditionally. | +
| Hard Gate + Always-On Slow Updates | +Hard validation gate | +Unconditional | +None | +None | +Changes only the slow-update policy relative to the paper-style fully gated baseline. | +
| Soft-Score Gate + Always-On Slow Updates | +Soft score gate | +Unconditional | +None | +None | +Uses partial test-case success as the candidate signal while keeping slow updates unconditional. | +
| Hard/Soft Hybrid Gate + Always-On Slow Updates | +Mixed hard/soft | +Unconditional | +None | +None | +Combines exact correctness and partial test-case success while keeping slow updates unconditional. | +
| Failure-Only SAR + Consolidation (40) | +Base-dependent | +Base-dependent | +Appendix reminders from failed trajectories only | +After 40 notes | +Whether failure-sourced appendix routing plus periodic compression keeps memory useful. | +
| Success-and-Failure SAR | +Base-dependent | +Base-dependent | +Appendix reminders from successes and failures | +None in the comparison below | +Whether a broader memory of both good and bad trajectories is useful. | +
+ The base settings use mechanism-based names throughout this post.
+ Paper-Style Fully Gated Baseline is the paper-style
+ stability-first policy: it hard-gates candidate edits and validation-selects
+ slow updates. It is not the current main default, which leaves
+ slow_update_gate_with_selection=false. Accept Every
+ Edit force-accepts candidates while slow updates remain unconditional.
+ The other three settings keep slow updates
+ always on while changing the candidate gate to hard, soft-score, or hybrid
+ hard/soft evidence. Tag colors stay consistent throughout the post; a composite
+ configuration inherits its base setting's color, while standalone SAR add-ons
+ use their own colors. SAR can be added to any base setting. Here,
+ Failure-Only SAR is shorthand for sourcing protected appendix
+ reminders only from failures; it does not disable the baseline body-edit path.
+ For example,
+ Accept Every Edit + Failure-Only SAR + Consolidation (40) accepts
+ every candidate, draws appendix reminders only from failures, and compresses
+ accumulated notes once the appendix grows past 40 notes. Because appendix-source
+ selection and consolidation change together in this configuration, its result
+ supports the combined compact-memory recipe, not failure-only appendix sourcing
+ in isolation.
+
+ In configuration terms, the key controls are
+ evaluation.use_gate, evaluation.gate_metric, and
+ optimizer.slow_update_gate_with_selection. Several named arms
+ change more than one control. Comparisons against the paper-style baseline are
+ therefore combined-policy comparisons unless a common always-on-slow-update
+ baseline is stated explicitly.
+
Where SAR comes from
++ SkillOpt's skill-aware reflection adapts the central idea of + EmbodiSkill (Ju et al., 2026): + interpret a trajectory against the current skill before allowing that + trajectory to change the skill. A failed run is ambiguous evidence. It may + expose a missing or incorrect rule, or it may be an execution lapse in which + the model simply failed to follow valid guidance. Turning both cases into a + generic whole-skill rewrite can delete useful rules, add redundant advice, and + amplify noise. +
+ ++ EmbodiSkill makes this attribution explicit. It separates a prescriptive skill + body from an appendix that emphasizes valid rules. When a trajectory provides + reliable evidence, successful runs are routed to Discovery or + Optimization; failed runs are + routed to Skill Defect or Execution Lapse. The first three + categories can trigger targeted body edits, whereas an execution lapse only + adds an appendix reminder. Before editing, body-changing reflections are + consolidated: duplicates are removed, overlapping suggestions are merged, + target-specific edits are grouped, and unresolved conflicts can be discarded. + A constrained editor then changes the implicated rules while leaving unrelated + skill content intact (Ju et al., 2026, Sections 3.1–3.2.2, Equations 2 and + 6–11). +
+ +
+ SkillOpt transfers this failure-attribution rule to general-domain skill
+ optimization. A Skill Defect becomes a normal body edit governed by
+ the base setting's acceptance policy, whereas an Execution Lapse
+ becomes a short reminder in a protected appendix that step-level edits cannot
+ rewrite. Failure-Only
+ SAR is closest to EmbodiSkill's original appendix routing.
+ Success-and-Failure SAR extends it by allowing successful
+ trajectories to re-emphasize existing rules, and the note-count consolidation
+ thresholds tested here are a SkillOpt-specific compaction policy rather than a
+ parameter reported by EmbodiSkill. EmbodiSkill does not impose a formal length
+ penalty or show that shorter skills are always better: the compact-memory
+ conclusion below comes from the SkillOpt ablations. In EmbodiSkill's own
+ ALFWorld ablation, skill-aware revision raises success from
+ 78.36% to 93.28%, an absolute increase of
+ 14.92 percentage points (a 19.04% relative
+ improvement) over skill-unaware evolution.
+
+ We evaluate on three task families with different reward landscapes. + SearchQA has a high baseline and limited headroom. LiveMathematicianBench is small and high + variance. SpreadsheetBench is a code-execution benchmark with sparse hard + correctness and more room for partial progress signals. +
+ +Result 1: combined update policies trade exploration for stability
+
+ The Paper-Style Fully Gated Baseline is a useful
+ stability-first reference, but it is not the highest-scoring policy in every
+ cell. In this exploratory sweep, Accept Every Edit is associated
+ with a higher average oracle diagnostic for gpt-5.5 on all three
+ benchmarks. The observed differences are smaller for
+ gpt-5.4-mini.
+
+ The table below reports Accept Every Edit -
+ Paper-Style Fully Gated Baseline,
+ averaged over the hyperparameter sweep, using
+ max(best-on-val, final) as the per-run score. Each value is the
+ absolute difference after expressing the score on a 0–100% scale, displayed
+ with a percent sign. This test-aware maximum is an exploratory oracle
+ diagnostic, not a checkpoint-selection rule. Positive values mean the
+ accept-every-edit policy has the higher diagnostic; negative values favor the
+ paper-style policy. The comparison changes both the candidate gate and the
+ slow-update policy, so it cannot identify the effect of either mechanism by
+ itself.
+
| Model | +SearchQA change | +LiveMathematicianBench change | +SpreadsheetBench change | +Interpretation | +
|---|---|---|---|---|
gpt-5.5 |
+ +0.9% | ++3.2% | ++1.4% | +Consistent with the stronger target tolerating the combined exploratory policy. | +
gpt-5.4-mini |
+ +1.0% | ++0.2% | ++1.1% | +Small positive differences that require repeated-seed follow-up. | +
gpt-5.4-nano |
+ -0.7% | ++2.6% | +-1.1% | +Mixed signs are consistent with greater sensitivity to the combined policy. | +
Qwen3.5-4B |
+ +0.7% | ++3.6% | +not included | +Positive diagnostic differences on the included tasks; SpreadsheetBench is outside this Qwen analysis. | +
+ Across matched hyperparameters, Accept Every Edit beats
+ Paper-Style Fully Gated Baseline in 3 of 3 non-tied SearchQA comparisons and 3
+ of 4 LiveMathematicianBench comparisons for gpt-5.5. For
+ gpt-5.4-nano on SearchQA, it wins only 1 of 4. The observed pattern
+ is therefore broad for the strongest target, but not universal.
+
+ The completed Qwen SearchQA soft and mixed gate runs reinforce the same
+ close-setting result. Across four hyperparameter choices,
+ Soft-Score Gate + Always-On Slow Updates averages
+ 72.38%/72.77% and
+ Hard/Soft Hybrid Gate + Always-On Slow Updates averages
+ 72.73%/72.77% in best-on-val/final, compared with
+ 72.71%/72.25% for Accept Every Edit and
+ 72.43%/72.43% for Paper-Style Fully Gated Baseline. These
+ differences are small;
+ no gate policy clearly dominates for Qwen on SearchQA.
+
+ These observations motivate treating hard gating as a stability control rather
+ than assuming one policy dominates every target and task. By construction, a
+ hard gate can reject candidate edits; establishing its isolated performance
+ effect requires comparing policies that share the same slow-update behavior,
+ such as using Hard Gate + Always-On Slow Updates as the common
+ baseline.
+
Result 2: combined soft and hybrid policies use denser test-case feedback
+
+ An acceptance gate does more than find a promising candidate: it determines
+ which edits survive into the final skill. Hard correctness is a useful anchor,
+ but by itself it can be too sparse to distinguish partial progress from a
+ useless update. A soft score supplies denser supervision, while a hard/soft
+ hybrid gate incorporates exact correctness into the weighted gate signal; it
+ does not impose a hard veto. The key evidence is
+ therefore the final score, not only best-on-val.
+
+ In this SpreadsheetBench adapter, the soft score is the fraction of a task's
+ test cases that pass, while the hard score is 1 only when every test case
+ passes. Workbook formatting and style are not evaluated. This makes the soft
+ score denser than all-or-nothing task success. For gpt-5.5, the
+ combined soft-gate and always-on-slow-update policy is associated with an
+ average best-on-val/final change from 72.5%/72.5% to
+ 76.3%/74.2%. For gpt-5.4-mini, the pure soft gate finds
+ a better checkpoint but ends lower (65.9%/59.0%); the hard/soft
+ hybrid instead finishes at 66.3%, +5.4% above the fully
+ gated final score. This pattern is consistent with including hard correctness
+ in the weighted signal being useful alongside denser feedback, but the
+ comparison against the paper-style baseline also changes slow-update behavior
+ and therefore is not a single-factor gate-metric ablation.
+
| Model | +Paper-Style Fully Gated Baselinemean bov / fin |
+ Strong alternatives mean bov / fin |
+ Takeaway | +
|---|---|---|---|
gpt-5.5 |
+ 72.5% / 72.5% | +
+ Soft-Score Gate + Always-On Slow Updates: 76.3% / 74.2%
+ |
+ The combined soft/always-on policy has higher checkpoint and final averages in this sweep. | +
gpt-5.4-mini |
+ 60.9% / 60.9% | +
+ Soft-Score Gate + Always-On Slow Updates: 65.9% / 59.0%+ Hard/Soft Hybrid Gate + Always-On Slow Updates: 64.3% / 66.3%
+ |
+ The hybrid/always-on policy has the strongest final average among the displayed alternatives. | +
gpt-5.4-nano |
+ 52.1% / 52.1% | +
+ Hard/Soft Hybrid Gate + Always-On Slow Updates: 53.1% / 51.7%
+ |
+ The signal is useful but not universally better for the weakest target. | +
+ Note: these SpreadsheetBench numbers follow the adapter and split used in this
+ ablation study. They are intended for comparing SkillOpt settings under the
+ same harness, not for cross-harness leaderboard comparison. A direct isolation
+ of the gate metric should compare soft or hybrid gating with
+ Hard Gate + Always-On Slow Updates, which shares the same
+ slow-update policy.
+
Result 3: selective appendix routing and consolidation keep skill memory compact
+
+ The key question for skill-aware reflection is not simply whether to reflect,
+ but how much history should remain in the skill. Broad, unconsolidated
+ Success-and-Failure SAR is associated with gains for the strongest
+ target in some cells, yet with large regressions for smaller models in others.
+ Appendix-source selection limits which experiences become durable reminders;
+ consolidation removes duplicate or overlapping notes after they accumulate.
+ Both reflection configurations
+ below use Accept Every Edit as their base policy.
+
| Model | +Benchmark | +Accept Every Edit + Success-and-Failure SARno consolidation |
+ Accept Every Edit + Failure-Only SAR + Consolidation (40) |
+ Interpretation | +
|---|---|---|---|---|
gpt-5.5 |
+ SearchQA | ++1.2% | ++0.2% | +Consistent with the stronger model making use of broad experience notes. | +
gpt-5.5 |
+ Spreadsheet | ++0.5% | ++3.2% | +The compact-memory recipe has the higher diagnostic on this code task. | +
gpt-5.4-mini |
+ SearchQA | +-11.4% | ++0.2% | +Consistent with broad notes being difficult for the smaller target to use. | +
gpt-5.4-mini |
+ Spreadsheet | +-13.8% | ++4.7% | +The compact-memory recipe avoids the large regression. | +
Qwen3.5-4B |
+ LiveMathematicianBench | +-3.8% | ++10.1% | +The combined compact-memory recipe is associated with a gain on this low-baseline MCQ task. | +
+ Causal scope: the two SAR columns share the same accept-every-edit base, but the
+ compact recipe changes two controls together—it draws appendix reminders only
+ from failures and consolidates after the appendix grows past 40 notes. Their contrast therefore
+ supports the combined recipe, not either mechanism in isolation. Because the
+ displayed changes use Paper-Style Fully Gated Baseline as the reference, they
+ also include the base-policy change. Values are absolute percentage-point
+ differences, displayed with a percent sign.
+
A more direct comparison for consolidation
+
+ The next comparison holds the reflection source fixed at successes and failures
+ and adds consolidation after the appendix grows past 20 notes. This more
+ directly isolates compression. Relative to the same unconsolidated SAR memory,
+ the absolute score changes are +9.65% on mini SearchQA,
+ +15.00% on mini SpreadsheetBench, and +2.32% on nano
+ SpreadsheetBench.
+
| Model | +Benchmark | +Paper-Style Fully Gated Baseline |
+ Accept Every Edit + Success-and-Failure SARno consolidation |
+ Accept Every Edit + Success-and-Failure SAR + Consolidation (20) |
+ What changed | +
|---|---|---|---|---|---|
gpt-5.4-mini |
+ SearchQA | +82.30% | +70.87% | +80.52% | +Most of the broad-memory regression is recovered. | +
gpt-5.4-mini |
+ Spreadsheet | +60.89% | +47.14% | +62.14% | +Consolidation turns a large regression into a small gain. | +
gpt-5.4-nano |
+ Spreadsheet | +52.14% | +51.07% | +53.39% | +The consolidated setting has the higher diagnostic for the weakest GPT target. | +
+ Across these three direct-comparison cells, consolidation at threshold
+ 20 recovers some or all of the unconsolidated regression. This
+ limited subset suggests that earlier compression may help smaller targets, but
+ it does not establish a generally safest threshold. Broader repeated-seed
+ sweeps are needed before choosing a threshold by model size.
+
Compact-memory robustness across hyperparameters
+
+ Averages can hide whether a result is broad or driven by one lucky run. We also
+ compare settings against Paper-Style Fully Gated Baseline across four
+ hyperparameter choices. The counts below are wins/losses over paired settings,
+ with ties omitted.
+
| Comparison | +Examples | +What this adds | +
|---|---|---|
Accept Every Edit + Failure-Only SAR + Consolidation (40) vs Paper-Style Fully Gated Baseline |
+
+ Qwen3.5-4B: 3 / 1 on LiveMathematicianBench.+ gpt-5.4-mini: 3 / 1 on SpreadsheetBench.
+ |
+ The combined compact-memory recipe has gains in multiple matched settings, not only in the mean. | +
Accept Every Edit + Success-and-Failure SAR vs Paper-Style Fully Gated Baseline |
+
+ gpt-5.4-mini: 0 / 4 on SearchQA and 0 / 4 on SpreadsheetBench.+ gpt-5.5: 3 / 1 on SearchQA.
+ |
+ The pattern is consistent with model-capacity sensitivity, but does not establish a general capacity threshold. | +
Result 4: best-on-val and final expose different failure modes
+
+ The pair bov/fin is more useful than a single score because it
+ separates search ability from training stability. bov asks whether
+ SkillOpt ever found a good skill according to validation selection.
+ fin asks whether the skill left at the end of training is still
+ good. Some exploratory summaries above use max(bov, fin) to
+ describe observed reachability, but that test-aware maximum can inflate what a
+ deployable policy would achieve. The two endpoints must remain separate when
+ diagnosing drift, selection on a small validation set, or steady improvement.
+
| Example | +Benchmark | +Mean bov / fin | +Diagnostic | +
|---|---|---|---|
gpt-5.4-mini, Accept Every Edit + Success-and-Failure SAR |
+ SearchQA | +70.87% / 56.60% | +Large endpoint gap, consistent with end-of-run drift under broad reflection. | +
gpt-5.4-nano, Accept Every Edit + Success-and-Failure SAR |
+ SearchQA | +72.04% / 64.62% | +Same pattern at smaller scale: the final skill is worse than the selected checkpoint. | +
gpt-5.5, Accept Every Edit |
+ SpreadsheetBench | +73.49% / 70.36% | +The endpoint gap is consistent with later ungated updates eroding the final skill. | +
gpt-5.4-mini, Hard/Soft Hybrid Gate + Always-On Slow Updates |
+ SpreadsheetBench | +64.29% / 66.25% | +Final exceeds best-on-val; the run continued to improve beyond the validation-selected checkpoint. | +
gpt-5.5, Accept Every Edit + Success-and-Failure SAR |
+ SearchQA | +86.53% / 86.52% | +No measurable endpoint gap in this aggregate cell. | +
+ A high oracle maximum shows that one of two retrospectively inspected
+ endpoints scored well; it does not tell an operator which checkpoint could
+ have been selected without test awareness. A high fin is more
+ directly relevant to an automatic training policy. The observed
+ bov-fin gaps under Accept Every Edit motivate retaining
+ validation checkpointing and rollback. The hybrid policy's final-score pattern
+ makes it a candidate for repeated-seed evaluation when the target is smaller or
+ the validation signal is noisy, not a universal default.
+
Result 5: SkillOpt-Sleep applies these controls in an overnight preview
+
+ The ablations above ask which update policy is best under a training harness.
+ SkillOpt-Sleep asks the deployment version of the same question: if an agent
+ sees new real tasks today, can it improve a skill proposal overnight and
+ come back better tomorrow? The plugin runs this as an offline sleep cycle rather
+ than an in-session edit: it replays recent experience, proposes a consolidated
+ skill update, validates it against a held-out gate, and stages it for review.
+ Normal operation does not replace the deployed skill until the user explicitly
+ runs adopt; auto_adopt is an opt-in mode.
+
+ The sleep study uses a study recipe built from shipped components, including
+ skillopt_sleep.dream.dream_consolidate.
+ Unless stated otherwise, each cell runs five nights; each night adds 10 new
+ real "today" tasks, and the skill carries over night to night. The full
+ held-out test split is scored before night 1 and after the configured final
+ night, with delta = after - baseline in percentage points. The
+ optimizer is gpt-5.5, the seed is 42, and the targets are
+ gpt-5.5, gpt-5.4-mini, and
+ gpt-5.4-nano. The five-night recipe is an experiment-harness
+ protocol, not normal CLI behavior or a shipping default.
+
mock backend makes no provider calls. A real backend sends
+ truncated session excerpts and derived task content to the selected provider
+ for mining, replay, judging, and reflection. Depending on the stage, provider
+ prompts can also contain the current skill or memory document, configured user
+ preferences, and generated responses being judged or reflected on. Review and
+ redact sensitive material across these inputs, and check the provider's data
+ policy, before using a real backend. Accepted proposals are staged for manual
+ review by default; adoption is a separate, backed-up operation unless the user
+ explicitly enables auto_adopt.
+ | Benchmark | +Held-out test | +Scoring | +Why it matters for sleep | +
|---|---|---|---|
| SearchQA | +1,400 items | +SQuAD exact-match vs gold | +High-baseline QA task where a bad rule can silently spread. | +
| LiveMathematicianBench | +124 items | +Multiple-choice label with choices shuffled per item | +Small, high-variance reasoning set that tests whether gains survive noise. | +
| SpreadsheetBench | +280 items | +Generated openpyxl code is executed and compared cell-by-cell to a golden workbook |
+ Code-execution task where partial-looking progress must still produce a correct file. | +
The default validation gate bounded downside in a paired stress case
+
+ In a paired study with gpt-5.4-nano on SearchQA, the ungated run
+ adopted a plausible but wrong rule—answer with the document title string
+ verbatim—and fell from 55.4% to 2.6%. The gated run
+ rejected all proposals and remained flat at 57.0%. The two runs
+ started from different measured baselines, so this is not evidence that they
+ encountered identical candidate edits; it is an observed stress-case contrast.
+
SearchQA, gpt-5.4-nano |
+ Night 0 | +Night 5 | +Delta | +Interpretation | +
|---|---|---|---|---|
| No gate | +55.4% | +2.6% | +-52.8% | +The ungated study run propagated a wrong lesson across nights. | +
| Validation gate, default | +57.0% | +57.0% | +0.0% | +The run rejected all proposals and its measured score remained flat. | +
+ This motivates a more conservative deployment posture than the broad ablation
+ headline. Accept Every Edit can be useful for offline exploration,
+ but automated proposal generation should retain validation, checkpointing, and
+ rollback—and should stage changes for review before adoption.
+
Replay gives the overnight cycle something to learn from
+
+ In the study recipe, diverse rollouts and relevant recalled experience are
+ associated with larger gains where the target model has headroom. One practical
+ pattern worth testing is a cheaper target model paired with a stronger overnight
+ optimizer. On SearchQA with gpt-5.4-nano, the gated five-night cell
+ shows roughly twice the best measured gpt-5.5 gain on the same
+ benchmark.
+
| Config | +Baseline | +After sleep | +Delta | +Night-by-night shape | +
|---|---|---|---|---|
gpt-5.4-nano, cumulative replay, nights=5 |
+ 56.0% | +67.9% | ++11.9% | +56.0% → 62.6% → 66.5% → 66.5% → 66.5% → 67.9% | +
gpt-5.4-nano, recall_k=20, nights=5 |
+ 56.6% | +68.1% | ++11.5% | +56.6% → 65.9% → 68.5% → 68.5% → 68.1% → 68.1% | +
gpt-5.4-nano, cumulative replay, nights=8 |
+ 56.2% | +65.7% | ++9.5% | +Most of the gain arrives by night 5. | +
gpt-5.5, best gated SearchQA sleep cell |
+ 79.8% | +85.8% | ++6.0% | +Separate gated scaling cell with less measured headroom. | +
+ Recall captures much of the measured full-history gain at lower per-night cost.
+ In one SearchQA comparison with gpt-5.5,
+ recall_k=10 gives +3.1%,
+ recall_k=20 gives +4.5%, and a full-history reference
+ cell reports 79.6% → 85.1% (+5.6%). A separate gated scaling
+ cell reports +6.0% and the night-by-night curve
+ 79.8% → 81.4% → 85.4% → 85.4% → 85.4% → 85.8%.
+ These cells have different baselines and should not be treated as the same run.
+ All deltas here are percentage points.
+
Diverse dream rollouts improve the study's robustness profile
++ Sleep only learns useful contrastive lessons if the dream rollouts are + independent samples. An early engine configuration collapsed the rollouts to a + single cached sample, which made reflection brittle. In the measured study + configurations, diverse rollouts plus recall improve the grid mean and reduce + the worst observed downside. These are experiment-recipe settings, not shipping + defaults. +
+ +| Engine configuration | +Mean delta | +Worst-cell delta | +Cells > +0.5% | +Cells < -0.5% | +
|---|---|---|---|---|
| Single-sample reflection, degraded | +-2.66% | +-52.8% | +7 / 18 | +5 / 18 | +
Diverse rollouts, K=5, no recall |
+ +0.24% | +-4.0% | +6 / 18 | +7 / 18 | +
| Diverse rollouts + recall, experiment recipe | ++0.53% | +-2.4% | +7 / 18 | +7 / 18 | +
Sensitivity around the study recipe
+
+ On one gated nano SearchQA cell, every tested change away from the study recipe
+ (dream_factor=2, dream_rollouts=5, 10 tasks per night,
+ and five nights) reduces the measured gain. This supports the recipe only for
+ that subset; it does not establish a universal optimum. The plugin itself ships
+ replay off: dream_factor=0, dream_rollouts=1, and
+ recall_k=0.
+
| Variant | +Delta | +Vs study-recipe baseline +11.9% |
+ Reading | +
|---|---|---|---|
dream_factor=4 instead of 2 |
+ +8.8% | +-3.1% | +More synthetic breadth did not beat the study recipe in this cell. | +
rollouts=10 instead of 5 |
+ +9.5% | +-2.4% | +More rollouts added cost without improving this cell's final score. | +
per_night=15 instead of 10 |
+ +2.7% | +-9.2% | +This larger nightly batch has a lower measured gain in the tested cell. | +
nights=8 instead of 5 |
+ +9.5% | +-2.4% | +Extra nights mostly ran past the useful part of the curve. | +
skillopt-v1 report, four deliberately deficient, small,
+ single-flaw skills improve from 0% to 100% on held-out
+ tasks under its Claude-model setup. On the easy ablation fixture, a one-shot
+ rewrite ties the full validation-gated loop at 100%. This is a
+ useful mechanism check, not evidence of broad production coding-agent gains or
+ proof that the full loop always outperforms a single rewrite.
+ + Source for the Sleep numbers: + SkillOpt-Sleep results and analysis. + The Sleep study is single-seed per cell; treat differences below 1.5 percentage points as + noise, and keep the validation gate on unless there is no held-out validation + signal. +
+ +Settings worth follow-up evaluation
++ The table below summarizes exploratory candidates from this sweep, not + production defaults. Re-evaluate them on your own held-out data with repeated + seeds. For deployed workflows, retain validation checkpointing, review staged + changes, and keep a rollback path. +
+| Target model | +Candidate settings from this sweep | +Use caution with | +Reason | +
|---|---|---|---|
gpt-5.5 |
+ Accept Every Edit, Accept Every Edit + Failure-Only SAR + Consolidation (40), or Accept Every Edit + Success-and-Failure SAR; for Spreadsheet try Soft-Score Gate + Always-On Slow Updates or Hard Gate + Always-On Slow Updates + Failure-Only SAR + Consolidation (40) |
+ Consolidation is optional | +The aggregate cells are consistent with tolerance for exploratory updates and broader reflection. | +
gpt-5.4-mini |
+ Accept Every Edit, Hard/Soft Hybrid Gate + Always-On Slow Updates, Accept Every Edit + Failure-Only SAR + Consolidation (40), or Accept Every Edit + Success-and-Failure SAR + Consolidation (20) |
+ Accept Every Edit + Success-and-Failure SAR without consolidation |
+ The displayed cells associate more updates with gains and long unconsolidated memory with regressions. | +
gpt-5.4-nano |
+ Paper-Style Fully Gated Baseline or Hard Gate + Always-On Slow Updates for SearchQA; Hard/Soft Hybrid Gate + Always-On Slow Updates or Accept Every Edit + Success-and-Failure SAR + Consolidation (20) for Spreadsheet |
+ Pure soft-score gates and Accept Every Edit + Success-and-Failure SAR without consolidation |
+ The displayed cells are consistent with greater sensitivity to prompt length and noisy rules. | +
Qwen3.5-4B |
+ Accept Every Edit + Failure-Only SAR + Consolidation (40) or Hard Gate + Always-On Slow Updates on LiveMathematicianBench; SearchQA settings are close |
+ SpreadsheetBench is outside the Qwen scope of this post | +On the included tasks, the compact repair-memory setting has its largest gain on the lower-baseline task. | +
Accept Every Edit + Failure-Only SAR + Consolidation (40) is worth
+ testing because its reflection memory stays focused and periodically
+ compressed. It force-accepts body edits, however, and SAR appendix reminders
+ are not separately governed by the validation gate. A production workflow
+ should retain a validation gate, checkpoint before adoption, review the staged
+ diff, and keep rollback available.
+ Limitations
+
+ These results should be read as an ablation study, not as a benchmark
+ leaderboard. LiveMathematicianBench has high variance because the evaluation set is small.
+ Qwen3.5-4B is discussed only on SearchQA and LiveMathematicianBench in this post. Its
+ SpreadsheetBench Hard/Soft Hybrid Gate + Always-On Slow Updates result has only two valid hyperparameter cells, and the
+ consolidation sweep has three per threshold; failed all-zero connection runs
+ are excluded. SpreadsheetBench conclusions are therefore drawn from the
+ GPT-family target models.
+
+ SpreadsheetBench scores are sensitive to the spreadsheet execution adapter and + prompt format. The numbers here should be compared within this ablation + protocol rather than mixed with results from a different harness. +
++ The tested failure-only SAR cells also consolidate once the appendix grows past + 40 notes. + Consequently, this study supports the combined compact-memory recipe but does + not separately identify the effect of failure-only appendix sourcing. The raw + per-run artifacts for the 499-run ablation are not public, so those aggregate + results cannot currently be independently reproduced from this repository. +
+ +Conclusion
++ The main observation is that SkillOpt's update controls should be evaluated as + a policy, not inferred from one switch in a confounded comparison. The + exploratory sweep is consistent with stronger targets tolerating more candidate + updates, and with test-case pass rates providing useful signal on + SpreadsheetBench. Reflection can help, but the displayed comparisons favor + keeping its memory compact. +
++ In practice, choose a SkillOpt configuration with the target model, task, + validation signal, and deployment boundary in mind. Treat the settings above as + hypotheses to validate locally, and preserve checkpointing, staged review, and + rollback when skill updates can affect a deployed agent. +
+ +Method reference
++ Ju, Ruofei, Xinrui Wang, Xin Ding, Yifan Yang, Hao Wu, Shiqi Jiang, Qianxi + Zhang, Hao Wen, Xiangyu Li, Weijun Wang, Kun Li, Yunxin Liu, Haipeng Dai, Wei + Wang, and Ting Cao. 2026. “EmbodiSkill: Skill-Aware Reflection for + Self-Evolving Embodied Agents.” arXiv preprint arXiv:2605.10332 + [cs.AI]. https://doi.org/10.48550/arXiv.2605.10332. +
+ +Citation
+ ++ If you find this ablation useful, please cite it as: +
+@misc{zhou2026skilloptablations,
+ title = {SkillOpt Ablations and Sleep: When Should an Agent Accept, Gate, or Reflect on Skill Updates?},
+ author = {Zhou, Ziwei and Gong, Ziyang and Yang, Yifan},
+ year = {2026},
+ url = {https://microsoft.github.io/SkillOpt/blog/gating-reflection-safe-updates/},
+ note = {Blog post}
+}
+
+ + + +