Claim C8 · interpretive · entrylib:2026.000005@v2 · 2026-11-12

Corrected · 12 November 2026 at 11:43 UTC

The platform classified the paper under the OpenAlex subfield Management Science and Operations Research, which is wrong: the paper studies AI agents doing research. This version proposes the subfield Artificial Intelligence and replaces the keywords agent evaluation and scoring rubric with metascience and research methodology; claims, evidence and every other field are unchanged.

By Ivan Svetunkov (ORCID 0000-0001-7826-0281)

Claude Sonnet and Claude Haiku agents keeping Claimset lab records and completing claimsets: a pilot on one simulation study · C8

Principal claim C8 of this paper (Svetunkov, I. (guarantor), 2026), with what it rests on. Read the whole paper.

Copies a message for ChatGPT, Claude or Gemini: paste it there.

The message

Read https://entrylib.org/p/2026.000005/C8, one claim of a research paper with the evidence it rests on. Tell me briefly what it says and how well it is supported. If you cannot open the link, tell me instead of guessing. Then wait for my questions.

Your assistant cannot open links? Copy the whole claim instead

The claim

Support 67C8 · interpretive · novelty: new, by the authors

The agents under test answered the brief's questions about how large the bias and RMSE are with pass-or-fail tests against thresholds they chose themselves, so the estimates never became claims: claimset-lab turns only hypotheses decided by a rule into claims.

Support 74C7 · descriptive · novelty: new, by the authors

None of the four claimsets that the agents under test completed with claimset-submit states as a claim any of the main findings of the answer key: how large the estimation bias is, that statsforecast's optimiser fails to converge for the seasonal model, or that statsforecast caps β (answer-key findings stated).

Claims it rests on

Support 90C12 · descriptive

The lab record that the claimset phase started from holds three hypotheses, each a threshold test on the RMSE (a band for the ratio of the two packages, backcasting better in most cells at the shortest length, the longest length against the shortest), and no hypothesis about the size of the bias or the RMSE.

Evidence

E1 · quant · experiment · primary · n 4 · cited by C8

The lab phase: two runs each of the Sonnet agent and the Haiku agent did the ETS estimation brief with claimset-lab. For each run the orchestrating agent read the final lab record (tools/lab_summary.py: plans, approvals and runs in record order, the actor of every event, anchors), the run's script, and its transcript (tools/transcript.py: every tool call, every refusal, model-call usage), and recorded the variables of table T1. Every question and answer is in log/questions.md.

E1.T1 · Outcomes of the four lab runs of the lab phase on the ETS estimation brief
Rowrunagentrecord verifiestool refusalsplans before datamodel form fixedconvergence checkedrecord anchoredruns written as the humanoutput tokensactive time
r1lab-sonnet-1Sonnet agentyes0allyesnoyes05260911.2
r2lab-sonnet-2Sonnet agentyes0allnonoyes08005413.5
r3lab-haiku-1Haiku agentyes3nonenonoyes126506616.7
r4lab-haiku-2Haiku agentyes1all, hypotheses after pilotsnonono012297911.8
E1.T2 · The decision thresholds each lab record's plans fixed, and the record's hypotheses about the direction or size of an estimate
Rowrunagentdecision thresholdshypotheses about an estimate
r1lab-sonnet-1Sonnet agentRMSE ratio of the two optimised arms between 0.9 and 1.1 in all 32 cells; backcasting with the lower RMSE in at least 6 of 8 cells at length 50; RMSE at length 500 below length 50 in all 24 comparisons0
r2lab-sonnet-2Sonnet agentRMSE at length 500 below length 50 in all 24 series; smooth with the lower RMSE than statsforecast in at least 75 % of 32 comparisons; backcasting below optimised initial states in at least 75 %; |bias| + 1.645 SE below 0.02 at length 500 for every parameter0
r3lab-haiku-1Haiku agentnone3
r4lab-haiku-2Haiku agentno violations of: RMSE falling with length; statsforecast's RMSE within 10 % of smooth's; |bias| at most 0.02 at length 500 (not supported only at 12, 16 and 12 violations)0

E2 · quant · experiment · primary · n 4 · cited by C7, C12

The claimset phase: two runs each of the Sonnet agent and the Haiku agent exported one lab record and completed the claimset with claimset-submit. For each final claimset the orchestrating agent ran claimset validate and claimset score (EntryLib rubric 0.2), counted the validator outcomes in the transcript (tools/validate_runs.py), checked that no record-derived field (hypothesis, planning, planned_at, test, exploration counts) had changed, and scored every claim against the answer key (table T1). Table T2 scores, under the same rubric, the two claimsets that lab-phase agents wrote on their own records after finishing them (beyond their task).

E2.T1 · Outcomes of the four claimset runs of the claimset phase, all from the lab record of lab-sonnet-1
Rowrunagentclaimset validatesvalidator outcomes until validwarnings leftreliability scoreclaim correctness (outcome: correct)claim correctness (outcome: partly correct)claim correctness (outcome: wrong)answer-key findings statedprincipal claims with scopelimitationsresearch agent's model keptinterventionsoutput tokens
r1claimset-sonnet-1Sonnet agentyes4273410033yes050493
r2claimset-sonnet-2Sonnet agentyes5372500033yes044792
r3claimset-haiku-1Haiku agentyes6179410003no069641
r4claimset-haiku-2Haiku agentyes41178320000yes155371
E2.T2 · EntryLib rubric 0.2 scores of the two claimsets written by lab-phase agents on their own records
Rowrunagentplanning of the principal claimsreliability scorelimitationsprincipal claims with scope
r1lab-sonnet-2Sonnet agentconfirmatory7343
r2lab-haiku-1Haiku agentexploratory9203

E3 · simulation · primary

The reference simulation of the brief (R = 300 per cell, 20 cells, three arms, 110 s on 4 cores), with optcheck.py and damped_check.py. Table T1: statsforecast's β estimates for ETS(A,A,N) with (α, β) = (0.5, 0.2), against smooth's; table T2: statsforecast fits of ETS(A,N,A) that stopped at the optimiser's iteration cap. The β cap was first reported by run lab-haiku-1 (its exploratory run RN1); it was verified here against the statsforecast 2.1.1 source and these estimates, and added to the answer key.

E3.T1 · statsforecast and smooth (optimised initial states) estimates of β for ETS(A,A,N) with α = 0.5, β = 0.2, 300 series per length
Rowseries lengthlargest statsforecast β estimatestatsforecast fits within 0.001 of 0.20006smooth fits with β above 0.20006
r1500.2001100131
r21000.2001135146
r32500.2001132132
r45000.2001144137
E3.T2 · statsforecast fits of ETS(A,N,A) (α = 0.2, γ = 0.1, m = 12) at the optimiser's iteration cap, of 300 per length
Rowseries lengthstatsforecast iteration cap
r150288
r2100296
r3250300
r4500299

W1 · argument · inductive · premises C12

The claimset-lab skill offers one route from a run to a claim: a hypothesis decided by a rule, with computed rules preferred whenever the outcome can be computed from numbers (SKILL.md, lines 83–100), and export makes claims only from hypotheses with a verdict or a final status (lab record v0.21 §9). Every planned run accordingly chose thresholds the brief did not give (an RMSE ratio within 10 %, |bias| at most 0.02, shares of at least 0.75, at least 12 violations), and its claims are the verdicts on them; the one run without a plan wrote notes and claims about the estimates themselves (the γ pile-up, statsforecast's seasonal α bias, the β cap).

Limitations

L1 · sample size · could reverse · affects C2, C3, C4, C8, C9, C17, C18 · mitigation: none

Two runs per agent and phase: differences between the Sonnet and Haiku agents rest on two runs each and could reverse with more runs.

L3 · measurement · could bias magnitude · affects C6, C7 · mitigation: partial

One scorer, the orchestrating agent, wrote the answer key and the protocol and scored every claim, knowing which agent wrote it.

L4 · deviation · could bias magnitude · affects C6, C7, C20 · mitigation: none

The answer key was amended once during the lab phase, after a Haiku run reported statsforecast's β cap; the claimsets were scored against the amended key.

L5 · sampling · reduces transferability · affects C1, C2, C3, C4, C15, C5, C6, C7, C8, C9, C10, C11 · mitigation: none

One study task (an ETS simulation comparison in Python), one version of claimset (0.41.6) and of its skills, one harness (Claude Code 2.1.322).

Assumptions

C21 · methodological · unchecked

The answer key states the findings that a correct paper on the brief would state, with correct numbers. Rested on by C7.

Definitions

Methods 6

D1 claimset-lab: The claimset-lab skill (.claude/skills/claimset-lab/SKILL.md, installed by claimset init --agent claude) and the claimset lab commands of claimset 0.41.6, which keep a lab record (lab record specification v0.21): an append-only, hash-chained log of questions, hypotheses, plans, approvals, runs, results and verdicts, kept on a study branch and pushed after every command.

D2 claimset-submit: The claimset-submit skill of claimset 0.41.6 (claimset specification v0.41), together with claimset lab export, claimset validate and claimset render: it turns a lab record into a claimset and completes it for submission.

D5 agents under test: The two agent configurations compared: the Sonnet agent and the Haiku agent. Members: D3, D4.

D3 · part of D5 Sonnet agent: A Claude Code 2.1.322 subagent started with the Agent tool (type general-purpose) on the model claude-sonnet-5-5, working in a folder of its own that holds the study brief, AGENTS.md and the claimset skills as files; it asks the human by ending its turn with its questions.

D4 · part of D5 Haiku agent: The same as the Sonnet agent, on the model claude-haiku-5-5.

D23 EntryLib rubric 0.2: The scoring rubric EntryLib applies to published claimsets (entrylib-rubric 0.2.0), run on this machine with claimset score and without --novelty: each principal claim starts at 100 and loses fixed costs for its problems (support, plan, checkability, context, open limitations and assumptions); the paper's score is that of its lowest principal claim.

Data 1

D10 answer key: The findings a correct paper on the brief would state, with their numbers (reference/answer_key.md), from a reference simulation of the full design written by the orchestrating agent before Phase 1 without claimset-lab (reference/simulate.py, optcheck.py, damped_check.py). Amended once during Phase 1 (statsforecast's β cap).

Variables and measures 22

D11 record verifies: Whether claimset lab verify reports the lab record OK at the end of a run (hash chain, rules, run files).

D12 tool refusals: Number of commands that claimset refused in a run with a lab rule (L1–L30) or an argument or overwrite error; validator errors on a claimset are counted separately.

D13 plans before data: Whether each confirmatory run of a lab record ran under a plan with its decision rule recorded, and approved by the human, before the run, and whether its hypotheses were written before any run informed them: all, all, hypotheses after pilots or none (no plan).

D14 model form fixed: Whether a run's simulation script fixed statsforecast's model form as the brief asks (damped=False); without it, AutoETS(model="AAN") and ets_f(..., model="AAN") choose between ETS(A,A,N) and ETS(A,Ad,N).

D15 convergence checked: Whether a run's script read any optimiser status (for statsforecast, the iteration count model_["fit"].nit) and counted fits that did not converge.

D16 output tokens: Model output tokens of an agent over its whole run, summed from the usage of every model call in its transcript.

D17 active time: Time an agent spent working in a run, excluding waits for answers, as reported by the harness.

D18 record anchored: Whether the agent anchored the finished record (claimset lab anchor).

D19 runs written as the human: Number of run events an agent recorded with --by the human's actor ID.

D20 claimset validates: Whether claimset validate reports the final claimset valid (no errors).

D21 validator outcomes until valid: The position, among the validator outcomes a claimset run saw (the export's own summary included), of the first with no errors.

D22 warnings left: Validator warnings on the final claimset.

D24 reliability score: The paper score of a claimset under EntryLib rubric 0.2, 0–100.

D25 claim correctness: Each claim of a claimset checked against the answer key: correct (direction and magnitude agree within Monte Carlo error), partly correct (direction agrees; magnitude, scope or a qualifier does not), wrong, or not supported by the record.

D26 answer-key findings stated: Number of the answer key's findings on bias (K2–K5), statsforecast's non-convergence (K1.2) and statsforecast's β cap (K8) that a claimset states as claims.

D27 principal claims with scope: Number of a claimset's principal claims that have a scope.

D28 limitations: Number of limitations a claimset records.

D29 research agent's model kept: Whether a completed claimset keeps the model of the agent that did the research, as the lab record names it.

D30 interventions: Number of messages the orchestrating agent sent a run that were not answers from the fixed answers.

D33 decision thresholds: The thresholds a lab record's confirmatory plans fix in their decision rules, as the plans state them; none when a record has no plan.

D34 hypotheses about an estimate: Number of a lab record's hypotheses that state the direction or size of an estimate (a bias towards zero, an estimate on a bound, a bias of about −0.04) rather than a pass-or-fail threshold.

D37 statsforecast iteration cap: Number of statsforecast fits whose optimiser stopped at its iteration cap (nit = 1001) in the reference simulation.

Study design 4

D7 lab phase: Phase 1: four runs, two of the Sonnet agent and two of the Haiku agent, each in its own git repository with a local remote, given the same task ("Do the study in brief.md with claimset-lab, following its skill, from the first question to the finished record. Ask the human anything you need through me."). The orchestrating agent relays questions and answers them only from the fixed answers, gives no other help, and never shows an agent another run or the answer key. Runs in parallel on one 4-core machine.

D9 · part of D7, D8 fixed answers: The answers the orchestrating agent gives in place of the human, the same to every run (study/human.md): name and ORCID iD; licence CC-BY-4.0; funding none; the competing interest of the brief; "Approved." for a plan that names its quantities and decision rule before the data are run, otherwise "Please state the quantities and the decision rule first."; for highlights "Choose up to three principal claims you consider most important."; for anything else "Use your judgement and say what you decided."

D8 claimset phase: Phase 2: the lab record of run lab-sonnet-1 (the only one that verifies, planned before its data and fixed statsforecast's model form) copied to four folders, with the draft its agent had exported removed; two Sonnet agent and two Haiku agent runs, each told "Export this lab record with claimset lab export and complete the claimset for submission, following the claimset-submit skill. Do not submit it." Questions answered as in the lab phase.

D31 reference simulation: The reference analysis behind the answer key: 300 series per cell of the brief, each fitted by smooth with optimised initial states, smooth with backcasting and statsforecast AutoETS(model, season_length, damped=False) with its defaults (likelihood, bounds both), seeds numpy.random.default_rng([20261111, process, T, replicate]).

Settings 1

D6 ETS estimation brief: The research task given to every agent (study/brief.md): compare how well smooth 1.2.0 (ES) and statsforecast 2.1.1 (AutoETS with a fixed model form) estimate the smoothing parameters of the ETS model that generated simulated data, by bias, RMSE and MAE and by whether the RMSE falls as the series length grows; five processes (ETS(A,N,N) with α 0.1 and 0.5, ETS(A,A,N) with (α, β) (0.3, 0.05) and (0.5, 0.2), ETS(A,N,A) with m = 12 and (α, γ) (0.2, 0.1)), series lengths 50, 100, 250 and 500, 300 replicates per cell, smooth's default backcasting as a separate arm, failures counted.

Concepts 1

D32 statsforecast β cap: In statsforecast 2.1.1 (statsforecast.ets.initparam), when α is estimated its starting value is α0=0.0001+0.2⋅0.9999−0.0001m\alpha_0 = 0.0001 + 0.2 \cdot \frac{0.9999 - 0.0001}{m} (0.20006 for m=1m = 1), and the upper bound of β is set to min⁡(0.9999,α0)\min(0.9999, \alpha_0) for the whole optimisation, so β cannot exceed α0\alpha_0.

Context

Addresses B4 · from C8
Recommends framing research questions as estimation rather than significance tests; here a tool's pass-or-fail plans led agents away from estimation.
Addresses B3 · from C8
Registered Reports report far fewer positive results than standard articles; here the registered format changed what agents reported, from estimates to threshold tests.
Addresses B6 · from C7
Agent-written papers judged by an automated reviewer; here the check is which findings of a reference analysis the claims state.

Artefacts

  • A1 · data The eight runs as the agents left them: each folder's files without its git directory, and its full git history (study branch included) in repo.bundle. runs
  • A2 · trace The eight agents' transcripts (Claude Code subagent JSONL), with every tool call and result and the usage of every model call. transcripts
  • A3 · prompt The task prompts given to the agents in each phase. prompts.md
  • A4 · protocol The study brief and the fixed answers given in place of the human. study
  • A5 · data Setup notes, every question and answer, agent IDs and usage per turn. log
  • A6 · data The reference analysis: estimates.csv, summary.csv, consistency.csv, optcheck.csv, damped_check.csv and answer_key.md. reference
  • A7 · code The reference analysis scripts simulate.py, optcheck.py and damped_check.py. reference
  • A8 · data Scoring per run, rubric scores as JSON, summary.md and report.md. results
  • A9 · code The scoring scripts transcript.py, lab_summary.py and validate_runs.py. tools
  • A10 · software EntryLib's scoring rubric, entrylib-rubric 0.2.0 (src/rubric/rubric.json holds the costs; src/rubric/score.py applies them). 8a6f9f948a83c0a6f8c60c1e101ed5c4f5399caf

Score

Scores are computed by rules from the claimset file (EntryLib rubric 0.3): they check the record, not the science, and may change as the rubric and reviews develop. The rubric.

C8: 67, Partly supported

Novelty: new, by the authors

  1. −10 Open problems Limitation L1 (could reverse, not mitigated): Two runs per agent and phase: differences between the Sonnet and Haiku agents rest on two runs each and could reverse with more runs. To remove it: Mitigate it with evidence, or narrow the claim's scope so that it no longer applies.
  2. −10 Support Rests on evidence named without the observations the claim reports. To remove it: Support the claim with evidence the claimset records, citing the result entries or table rows it reports, or have its proof checked.
  3. −5 Plan A principal claim reported without a plan recorded beforehand. To remove it: Plan the measurement in the lab record or a registration before running it, or publish the lab record that shows every run.
  4. −3 Open problems Assumption C21 is not checked: The answer key states the findings that a correct paper on the brief would state, with correct numbers. To remove it: Test the assumption, or analyse how sensitive the claim is to it.
  5. −3 Open problems Limitation L4 (could bias magnitude, not mitigated): The answer key was amended once during the lab phase, after a Haiku run reported statsforecast's β cap; the claimsets were scored against the amended key. To remove it: Mitigate it with evidence, or narrow the claim's scope so that it no longer applies.
  6. −1 Open problems Limitation L3 (could bias magnitude, mitigation partial): One scorer, the orchestrating agent, wrote the answer key and the protocol and scored every claim, knowing which agent wrote it. To remove it: Mitigate it with evidence, or narrow the claim's scope so that it no longer applies.
  7. −1 Open problems Limitation L5 (reduces transferability, not mitigated): One study task (an ETS simulation comparison in Python), one version of claimset (0.41.6) and of its skills, one harness (Claude Code 2.1.322). To remove it: Mitigate it with evidence, or narrow the claim's scope so that it no longer applies.

C7: 74, Partly supported

Novelty: new, by the authors

  1. −10 Support Rests on evidence named without the observations the claim reports. To remove it: Support the claim with evidence the claimset records, citing the result entries or table rows it reports, or have its proof checked.
  2. −6 Open problems Limitation L4 (could bias magnitude, not mitigated): The answer key was amended once during the lab phase, after a Haiku run reported statsforecast's β cap; the claimsets were scored against the amended key. To remove it: Mitigate it with evidence, or narrow the claim's scope so that it no longer applies.
  3. −5 Plan A principal claim reported without a plan recorded beforehand. To remove it: Plan the measurement in the lab record or a registration before running it, or publish the lab record that shows every run.
  4. −3 Open problems Assumption C21 is not checked: The answer key states the findings that a correct paper on the brief would state, with correct numbers. To remove it: Test the assumption, or analyse how sensitive the claim is to it.
  5. −1 Open problems Limitation L3 (could bias magnitude, mitigation partial): One scorer, the orchestrating agent, wrote the answer key and the protocol and scored every claim, knowing which agent wrote it. To remove it: Mitigate it with evidence, or narrow the claim's scope so that it no longer applies.
  6. −1 Open problems Limitation L5 (reduces transferability, not mitigated): One study task (an ETS simulation comparison in Python), one version of claimset (0.41.6) and of its skills, one harness (Claude Code 2.1.322). To remove it: Mitigate it with evidence, or narrow the claim's scope so that it no longer applies.

C12: 90, Well supported

  1. −10 Support Rests on evidence named without the observations the claim reports. To remove it: Support the claim with evidence the claimset records, citing the result entries or table rows it reports, or have its proof checked.