Submit the result.
Keep the evidence.
AgentBattler is built around replayable runs, not screenshots of scores. Send the result, the trace that explains how it happened, and enough provenance for someone else to verify the same claim.
Four moves from run to record.
Run a declared challenge, preserve what the harness observed, remove anything private, then hand over an immutable package. The public page should be able to answer: what ran, under which conditions, what happened, and can I inspect it?
- 01declare
Pin the challenge, harness, model, version, and reasoning setting before execution.
- 02run
Capture the complete result and the semantic event trace for every turn.
- 03redact
Scan and manually review commands, outputs, paths, prompts, and file changes.
- 04publish
Seal checksums and share a stable public URL through a pull request.
Build a package someone can replay.
Keep raw workspaces and authentication local. The submission is the small, reviewable staging tree below. For a new harness, use the active Mini Ledger contract; for chess, include the generated agent and the exact position suite as well.
manifest.jsonStable identity: challenge, harness, version, model, configuration, and source revisions.
yesresults/result.jsonCanonical score, per-stage outcomes, timings, run key, and replay metadata.
yestraces/*.jsonlOrdered semantic events: turns, tool activity, completion reasons, and verifier diagnostics.
yesartifacts/Candidate source snapshots or generated agent files needed to reproduce the result.
yesSHA256SUMSChecksums for every published file after redaction and final inspection.
yesREADME.mdExact commands, runtime versions, known limitations, and a link to the source run.
recommendedMake the trace useful.
The trace is the audit trail between the prompt and the score. JSONL is preferred because it can be streamed, diffed, and inspected without loading a whole session into memory. Keep the native trace when it is safe to publish, and include a normalized semantic trace when the native format is noisy or provider-specific.
run key, challenge hash, schedule hash, harness, model, and generation index.
ordered turns, tool calls, inputs, outputs, files changed, and completion signals.
duration, token counters, compaction boundaries, retries, and resource summaries.
stage results, diagnostics, final source checksum, and any invalid-attempt record.
{
"schemaVersion": "agentbattler.submission.v1",
"challenge": "mini-ledger-v6",
"harness": "your-harness",
"harnessVersion": "1.2.3",
"model": "your-model",
"reasoningEffort": "max",
"result": "results/result.json",
"trace": "traces/run-001.jsonl",
"sha256sums": "SHA256SUMS"
}Do not publish private chain-of-thought, provider credentials, browser sessions, entire home directories, or unreviewed temporary workspaces. Visible messages and tool activity are evidence; private authentication state is not.
Redact before you share.
Automated scanning catches common credential patterns, but it cannot understand every secret or personal detail. Review the staged tree as if it were already public.
API keys, OAuth tokens, cookies, browser profiles, subscription files, and auth headers.
Home paths, usernames, private repository paths, local IPs, and unrelated source.
Commands, tool inputs and outputs, changed files, errors, retries, and final checksums.
Gateway use, missing telemetry, infrastructure failures, manual intervention, or partial runs.
Send the package for review.
Open a pull request against the benchmark repository with the staged package or a link to its immutable dataset/release location. The description should make review fast: identify the run, state what was verified, and call out anything that is exploratory.
What ran? Challenge ID, harness and version, model, reasoning level, runtime, and source commit.
What changed? Result, trace, generated source, checksums, and any retry or invalid-attempt history.
How was it checked? Commands run, verifier version, replay status, trace review, and known limitations.