{
  "version": 1,
  "source_note": "Row definitions follow Command Code's published shell (23 stated / 24 listed) and read (37) audits. Grades must be produced independently; do not copy their scores.",
  "weight_note": "null = not yet priced. The frontier script refuses to publish with null weights unless --allow-unpriced is passed, in which case null counts as 0.",
  "rows": [
    {
      "id": "shell.native_background",
      "group": "Execution model",
      "capability": "Native background mode",
      "definition": "A first-class background execution path with a task id, not a shell `&` escape hatch.",
      "weight": 32000
    },
    {
      "id": "shell.timeout_cap",
      "group": "Execution model",
      "capability": "Timeout default + cap + settable",
      "definition": "Model-settable timeout with a default and a hard maximum.",
      "weight": 8445
    },
    {
      "id": "shell.persistent",
      "group": "Execution model",
      "capability": "Persistent shell session",
      "definition": "A session survives across calls (cwd/env), or a documented equivalent.",
      "weight": 8445
    },
    {
      "id": "shell.powershell",
      "group": "Execution model",
      "capability": "First-class PowerShell",
      "definition": "PowerShell is a supported shell, not a bash-only harness.",
      "weight": 8445
    },
    {
      "id": "shell.middle_out",
      "group": "Output contract",
      "capability": "Middle-out truncation",
      "definition": "Keeps head and tail of oversized output, not head-only or tail-only.",
      "weight": 8445
    },
    {
      "id": "shell.full_log",
      "group": "Output contract",
      "capability": "Full log on disk, path in result",
      "definition": "Truncated output is recoverable from a file whose path is returned.",
      "weight": 8445
    },
    {
      "id": "shell.omitted_counts",
      "group": "Output contract",
      "capability": "Omitted counts + recovery note",
      "definition": "Tells the model exactly how much was omitted and how to recover it.",
      "weight": 8445
    },
    {
      "id": "shell.signal_honesty",
      "group": "Output contract",
      "capability": "128+N signal honesty",
      "definition": "Signal death is reported as 128+N (137/143), never a fake success.",
      "weight": 26000
    },
    {
      "id": "shell.benign_exit",
      "group": "Output contract",
      "capability": "Benign-exit annotation",
      "definition": "Non-zero exits that are not failures (grep 1, diff 1, test 1) are annotated.",
      "weight": 8445
    },
    {
      "id": "shell.untrusted_fencing",
      "group": "Output contract",
      "capability": "Untrusted-output fencing",
      "definition": "Process output is delimited as inert data so a log line cannot steer the agent.",
      "weight": 8445
    },
    {
      "id": "shell.bg_output_reader",
      "group": "Background management",
      "capability": "Background output reader",
      "definition": "A model-facing way to read a running job's output.",
      "weight": 8444
    },
    {
      "id": "shell.wait_modes",
      "group": "Background management",
      "capability": "Wait modes: now / output / exit",
      "definition": "All three wait modes exist: return now, wait for new output, wait for exit.",
      "weight": 8444
    },
    {
      "id": "shell.cursor_reads",
      "group": "Background management",
      "capability": "Cursor / delta reads",
      "definition": "Byte-offset reads return only new output, never the same bytes twice.",
      "weight": 24000
    },
    {
      "id": "shell.list_tasks",
      "group": "Background management",
      "capability": "List running tasks",
      "definition": "A model-facing list of live jobs.",
      "weight": 8444
    },
    {
      "id": "shell.kill_id",
      "group": "Background management",
      "capability": "Kill by task id",
      "definition": "A model-facing cancel by job id.",
      "weight": 8444
    },
    {
      "id": "shell.kill_pid_port",
      "group": "Background management",
      "capability": "Kill by pid / port",
      "definition": "Kill by raw pid and by listening port, not just a task id.",
      "weight": 8444
    },
    {
      "id": "shell.sigterm_escalation",
      "group": "Background management",
      "capability": "SIGTERM -> SIGKILL escalation",
      "definition": "Graceful signal, poll, then force kill.",
      "weight": 8444
    },
    {
      "id": "shell.group_kill",
      "group": "Background management",
      "capability": "Group-kill safety",
      "definition": "Never signals a process group the harness did not create.",
      "weight": 8444
    },
    {
      "id": "shell.monitor",
      "group": "Anti-polling",
      "capability": "Monitor / wake-ups",
      "definition": "The runtime wakes the agent on a schedule or output pattern; the agent does not poll.",
      "weight": 40000
    },
    {
      "id": "shell.sleep",
      "group": "Anti-polling",
      "capability": "Sleep tool, wake on input",
      "definition": "Parking the agent wakes early on user input or interrupt.",
      "weight": 8444
    },
    {
      "id": "shell.cron",
      "group": "Anti-polling",
      "capability": "Cron / scheduling",
      "definition": "Durable scheduled prompts that survive restarts.",
      "weight": 8444
    },
    {
      "id": "shell.bg_subagents",
      "group": "Anti-polling",
      "capability": "Bg sub-agents + wait tool",
      "definition": "Background subagents plus an explicit way to collect results.",
      "weight": 30000
    },
    {
      "id": "shell.safe_classification",
      "group": "Boundaries",
      "capability": "Safe-command classification",
      "definition": "Classifies commands from syntax (AST), not a token allowlist.",
      "weight": 8444
    },
    {
      "id": "shell.workspace_boundary",
      "group": "Boundaries",
      "capability": "Workspace boundary on shell",
      "definition": "Paths outside the workspace are detected and gated.",
      "weight": 2000
    },
    {
      "id": "read.line_window",
      "group": "Bounded window",
      "capability": "Default line window",
      "definition": "A default number of lines is returned, not the whole file.",
      "weight": 40000
    },
    {
      "id": "read.second_ceiling",
      "group": "Bounded window",
      "capability": "Second ceiling",
      "definition": "A byte budget in addition to the line window.",
      "weight": 30000
    },
    {
      "id": "read.per_line_clamp",
      "group": "Bounded window",
      "capability": "Per-line clamp",
      "definition": "A single long line is clamped before entering context.",
      "weight": 24000
    },
    {
      "id": "read.line_prefixes",
      "group": "Output contract",
      "capability": "1-indexed line prefixes",
      "definition": "Line numbers agree with cat -n.",
      "weight": 6967
    },
    {
      "id": "read.resume_offset",
      "group": "Output contract",
      "capability": "Resume offset in truncation note",
      "definition": "The dead end names the next offset; no pagination arithmetic.",
      "weight": 6967
    },
    {
      "id": "read.empty_file_note",
      "group": "Output contract",
      "capability": "Empty-file note",
      "definition": "An empty file is distinguishable from a broken tool.",
      "weight": 6967
    },
    {
      "id": "read.eof_note",
      "group": "Output contract",
      "capability": "Offset-past-EOF is a note, not an error",
      "definition": "Past-EOF returns a recovery note, not an Error.",
      "weight": 6967
    },
    {
      "id": "read.streaming",
      "group": "Memory + streaming",
      "capability": "Streaming, memory-capped read",
      "definition": "Reads stream and cap memory instead of loading the file.",
      "weight": 6967
    },
    {
      "id": "read.deferred_chunk",
      "group": "Memory + streaming",
      "capability": "Deferred chunk-boundary truncation",
      "definition": "Does not claim 'more remains' until it knows.",
      "weight": 6967
    },
    {
      "id": "read.dedup",
      "group": "Session state",
      "capability": "Unchanged-read dedup",
      "definition": "An identical window of an unchanged file returns a stub; the record is consumed on hit.",
      "weight": 26000
    },
    {
      "id": "read.ledger",
      "group": "Session state",
      "capability": "Read-before-write ledger",
      "definition": "Writes consult what the model has seen.",
      "weight": 6967
    },
    {
      "id": "read.partial_ledger",
      "group": "Session state",
      "capability": "Ledger tracks partial views",
      "definition": "A partial view is tracked and refuses a destructive overwrite.",
      "weight": 6967
    },
    {
      "id": "read.did_you_mean",
      "group": "Recovering from a miss",
      "capability": "Did-you-mean suggestions",
      "definition": "A miss suggests close filenames.",
      "weight": 6967
    },
    {
      "id": "read.unicode_retry",
      "group": "Recovering from a miss",
      "capability": "Unicode filename retry",
      "definition": "Retries known-equivalent spellings before failing.",
      "weight": 6967
    },
    {
      "id": "read.confusables",
      "group": "Recovering from a miss",
      "capability": "Unicode confusables in content",
      "definition": "Discloses zero-width or bidi characters in content.",
      "weight": 2000
    },
    {
      "id": "read.image_vision",
      "group": "Beyond text",
      "capability": "Image to vision",
      "definition": "Images attach for vision models.",
      "weight": 6967
    },
    {
      "id": "read.coord_scale",
      "group": "Beyond text",
      "capability": "Downscale coordinate mapping",
      "definition": "Downscaled images disclose the scale factor.",
      "weight": 6967
    },
    {
      "id": "read.magic_bytes",
      "group": "Beyond text",
      "capability": "Magic-byte sniff, not extension",
      "definition": "Media type comes from bytes; a .png of text is not an image.",
      "weight": 6967
    },
    {
      "id": "read.notebooks",
      "group": "Beyond text",
      "capability": "Notebook rendering",
      "definition": ".ipynb renders as tagged cells, with large outputs bounded.",
      "weight": 6967
    },
    {
      "id": "read.docx",
      "group": "Documents",
      "capability": "Word (.docx) as markdown",
      "definition": "Docx text is readable as text.",
      "weight": 6967
    },
    {
      "id": "read.pptx",
      "group": "Documents",
      "capability": "PowerPoint (.pptx) with speaker notes",
      "definition": "Slides and speaker notes are readable.",
      "weight": 6967
    },
    {
      "id": "read.xlsx",
      "group": "Documents",
      "capability": "Excel (.xlsx) as tables",
      "definition": "Sheets render as tables.",
      "weight": 6967
    },
    {
      "id": "read.odf",
      "group": "Documents",
      "capability": "OpenDocument (.odt/.ods/.odp)",
      "definition": "ODF text is readable.",
      "weight": 6967
    },
    {
      "id": "read.rtf_epub",
      "group": "Documents",
      "capability": "RTF and EPUB",
      "definition": "RTF and EPUB text is readable.",
      "weight": 6967
    },
    {
      "id": "read.pdf_text",
      "group": "Documents",
      "capability": "PDF text layer inline",
      "definition": "PDF text is extracted, not just attached.",
      "weight": 6967
    },
    {
      "id": "read.scanned_pdf",
      "group": "Documents",
      "capability": "Scanned PDF names pages + recovery",
      "definition": "A scan is identified and a rendering command is given.",
      "weight": 6966
    },
    {
      "id": "read.docs_windowed",
      "group": "Documents",
      "capability": "Documents windowed by offset/limit",
      "definition": "Document text honours the same line window.",
      "weight": 6966
    },
    {
      "id": "read.docs_bulk",
      "group": "Documents",
      "capability": "Documents in a bulk read",
      "definition": "Documents participate in a multi-file read.",
      "weight": 6966
    },
    {
      "id": "read.converter_on_demand",
      "group": "Documents",
      "capability": "Converter fetched on first use, not installed",
      "definition": "No heavyweight converter is required to start the harness.",
      "weight": 6966
    },
    {
      "id": "read.many_files",
      "group": "Bulk reads",
      "capability": "Many files in one call",
      "definition": "One call reads multiple files.",
      "weight": 20000
    },
    {
      "id": "read.globs",
      "group": "Bulk reads",
      "capability": "Glob patterns in the read",
      "definition": "Globs expand inside the read tool.",
      "weight": 6966
    },
    {
      "id": "read.per_file_range",
      "group": "Bulk reads",
      "capability": "Per-file line range in a bulk read",
      "definition": "Each entry carries its own line range.",
      "weight": 6966
    },
    {
      "id": "read.exclusions_gitignore",
      "group": "Bulk reads",
      "capability": "Exclusions + gitignore in the read",
      "definition": "Excludes and .gitignore are respected.",
      "weight": 6966
    },
    {
      "id": "read.aggregate_cap",
      "group": "Bulk reads",
      "capability": "Aggregate cap across matched files",
      "definition": "A bulk read has one budget across all files.",
      "weight": 6966
    },
    {
      "id": "read.aliased_input",
      "group": "Input + safety",
      "capability": "Lenient / aliased tool input",
      "definition": "Common alias spellings are repaired.",
      "weight": 6966
    },
    {
      "id": "read.negative_offset",
      "group": "Input + safety",
      "capability": "Negative offset (read the tail)",
      "definition": "A negative offset reads the last N lines.",
      "weight": 6966
    },
    {
      "id": "read.device_blocklist",
      "group": "Input + safety",
      "capability": "Device path blocklist",
      "definition": "Unbounded device paths are refused before I/O.",
      "weight": 2000
    }
  ],
  "weight_provenance": "Top-row and bottom-row prices are taken from Command Code's published shell/read posts (cited in README). Every remaining row is assigned the residual per-group average. All weights are modeled estimates, not measurements. Replace with measured step-finish deltas before claiming measured superiority."
}
