SIP-Bench Protocol Spec v0
April 15, 2026 ยท View on GitHub
Purpose
SIP-Bench measures self-improvement as a longitudinal property rather than a point-in-time score. The protocol is designed to sit on top of existing agent benchmarks and expose three quantities that are usually missing:
- held-out improvement
- old-task retention
- improvement efficiency
This document defines the MVP protocol for the first release.
Benchmark Targets
The MVP protocol supports:
skillsbenchtau-bench
Optional later extension:
swe-bench-live
Protocol Units
The protocol has three units:
-
benchmarkCurrent environment and task family. -
phaseCurrent lifecycle checkpoint of the agent. -
splitTask subset used for replay, adaptation, held-out evaluation, or drift.
Phases
T0
Initial agent before benchmark-specific adaptation.
Rules:
- No targeted updates using
adapttasks. - Only generic prompting and default harness configuration are allowed.
T1
Agent after one adaptation cycle.
Allowed updates:
- external-path updates:
- skill insertion
- memory write/read support
- retrieval or prompt-library updates
- optional parameter-path updates:
- LoRA-lite
- small SFT
T2
Agent after delay, drift, or additional task exposure.
Purpose:
- measure stability after improvement
- check whether gains survive time or environment changes
Task Splits
Each benchmark adapter must export the following named subsets:
replay
Old tasks used to measure retention.
adapt
Tasks or trajectories the agent may use during adaptation.
heldout
New tasks used to measure forward gain.
drift
Optional shifted-distribution tasks used at T2.
Split Rules
Adapters must satisfy the following:
adaptandheldoutcannot overlap by task ID.adaptandheldoutshould not contain near-duplicate templates when metadata is available.replaymust contain tasks that were already solvable or attempted before adaptation.- If
driftexists, it must preserve task format while changing evidence, user state, policy, or environment conditions.
Path Types
Every run must declare one path type:
-
frozenNo improvement mechanism. -
externalOnly harness-layer adaptation. -
parameterParameter update such as LoRA or SFT. -
oracleUpper-bound or debugging mode. Not for the main leaderboard.
Required Metrics
FG
FG = score(T1, heldout) - score(T0, heldout)
BR
BR = score(T1, replay) - score(T0, replay)
BR_ratio
BR_ratio = score(T1, replay) / max(score(T0, replay), eps)
IE
IE = FG / cost
Recommended cost fields:
- total tokens
- wall-clock time
- tool calls
- optional human interventions
If cost is 0, IE must be recorded as null instead of forcing a fake finite value.
PDS
PDS = score(T2, heldout_or_drift) - score(T1, heldout)
If T2 has not been run yet, PDS-related summary fields remain null.
NIS
NIS = FG - lambda * max(0, -BR)
This is a reporting convenience metric, not a replacement for the main metrics.
Scoring
Each adapter must output a scalar score in [0, 1] when possible.
If a benchmark natively uses pass rate:
- success maps to
1.0 - failure maps to
0.0
If a benchmark uses partial credit:
- adapter must document the normalization rule
- normalized output must still be recorded as
score
Repeats
MVP requirement:
- each main result must be repeated at least
3times - reports must include mean and standard deviation
- high-variance results should not enter the main comparison table without an explicit warning
Logging Contract
Each benchmark execution must emit one JSON object per attempt to runs.jsonl.
Required fields are defined in:
Aggregated outputs must conform to:
Benchmark-Specific Adapter Contract
Each adapter must implement:
- task export for
replay,adapt,heldout, optionaldrift - a
run(task, phase, path_type, seed)interface - a normalized
score - cost logging
- stable task IDs
MVP Acceptance Criteria
The protocol is considered operational when:
skillsbenchcan runT0 -> T1with valid logstau-benchcan runT0 -> T1with valid logsFG,BR, andIEare computed automatically- at least one result shows a non-trivial tradeoff between forward gain and backward retention
Out of Scope for v0
- full parameter-path fairness
- large-scale third-environment support
- unified contamination auditing across all environments
- safety-improvement joint evaluation