{
  "spec_elements": [
    {
      "id": "rc_structural_fidelity",
      "kind": "rubric_criterion",
      "slug": "structural_fidelity",
      "name": "structural_fidelity",
      "what_it_checks": "Validates that all four required top-level keys (inputs, outputs, steps, eval) are present, correctly typed, and non-empty. A spec missing or malforming any of the four fails this criterion outright.",
      "pass_threshold": "all 4 keys present + correctly typed",
      "sort_order": 1,
      "created_at": "2026-07-02 05:29:54",
      "cite_as": "https://subagentspec.com/api/criteria/rc_structural_fidelity"
    },
    {
      "id": "rc_terseness",
      "kind": "rubric_criterion",
      "slug": "terseness",
      "name": "terseness",
      "what_it_checks": "Penalizes verbosity: redundant keys, restated-in-prose fields duplicating structured data, multi-sentence step descriptions, and unearned YAML anchor/alias overhead.",
      "pass_threshold": "no redundant keys; steps read as single clauses",
      "sort_order": 2,
      "created_at": "2026-07-02 05:29:54",
      "cite_as": "https://subagentspec.com/api/criteria/rc_terseness"
    },
    {
      "id": "rc_io_contract",
      "kind": "rubric_criterion",
      "slug": "io_contract",
      "name": "io_contract",
      "what_it_checks": "Checks that inputs and outputs are fully typed and complete: every field has a declared type, required/optional status is unambiguous, and nothing referenced in steps or eval is missing from the declared contract.",
      "pass_threshold": "every field typed; no undeclared references",
      "sort_order": 3,
      "created_at": "2026-07-02 05:29:54",
      "cite_as": "https://subagentspec.com/api/criteria/rc_io_contract"
    },
    {
      "id": "rc_self_eval_tail",
      "kind": "rubric_criterion",
      "slug": "self_eval_tail",
      "name": "self_eval_tail",
      "what_it_checks": "Checks that the eval array exists and contains meaningful, executable self-check entries, not a placeholder or a single trivial assertion.",
      "pass_threshold": "eval array non-trivial and executable",
      "sort_order": 4,
      "created_at": "2026-07-02 05:29:54",
      "cite_as": "https://subagentspec.com/api/criteria/rc_self_eval_tail"
    },
    {
      "id": "rc_cross_platform",
      "kind": "rubric_criterion",
      "slug": "cross_platform",
      "name": "cross_platform",
      "what_it_checks": "Checks that the spec renders identically across standard YAML 1.2 parsers: no exotic tags, no parser-specific extensions, no constructs that parse differently across languages.",
      "pass_threshold": "parses identically on 3+ standard YAML 1.2 loaders",
      "sort_order": 5,
      "created_at": "2026-07-02 05:29:54",
      "cite_as": "https://subagentspec.com/api/criteria/rc_cross_platform"
    },
    {
      "id": "rc_determinism",
      "kind": "rubric_criterion",
      "slug": "determinism",
      "name": "determinism",
      "what_it_checks": "Checks for ambiguous or non-reproducible constructs: unordered maps where order matters, locale-dependent coercion, or steps whose outcome depends on unstated external state.",
      "pass_threshold": "no ambiguous or locale-dependent constructs",
      "sort_order": 6,
      "created_at": "2026-07-02 05:29:54",
      "cite_as": "https://subagentspec.com/api/criteria/rc_determinism"
    },
    {
      "id": "rc_traceability",
      "kind": "rubric_criterion",
      "slug": "traceability",
      "name": "traceability",
      "what_it_checks": "Checks that the spec is attributable, versioned, and citable: carries an identifiable version marker such as a2a.terse.v1, and cites sources where content is derived rather than original.",
      "pass_threshold": "version marker present; sources cited where derived",
      "sort_order": 7,
      "created_at": "2026-07-02 05:29:54",
      "cite_as": "https://subagentspec.com/api/criteria/rc_traceability"
    }
  ]
}