addrbookFor publishers
← The evidence ledger

Evidence row 565847

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 1fe3cb63-97c2-482c-9ec3-27854da61d71
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
a96773605007f0a99d900b418fb67691987e4277ac67396ed9eb0ab9faf7bc16
Leaf
0x4f9c29dbdc6ec66e4a7bd169ff69b5a837ab5d15ad05e4eae5283de5b211922f

What was observed

{
  "count": 10,
  "tools": [
    {
      "description": "Calculate weekly review demand, utilization, capacity gap, supported change throughput, and changes lacking evidence from measured team inputs. No cost model, benchmark, or hidden industry assumption is applied; the output shows the arithmetic and a concrete balancing action.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "ai_changes_per_week": {
            "maximum": 1000000,
            "minimum": 0,
            "type": "integer"
          },
          "available_reviewer_hours_per_week": {
            "maximum": 100000,
            "minimum": 0,
            "type": "number"
          },
          "average_review_minutes_per_change": {
            "maximum": 10000,
            "minimum": 0.1,
            "type": "number"
          },
          "evidence_coverage_percent": {
            "maximum": 100,
            "minimum": 0,
            "type": "number"
          },
          "lang": {
            "description": "Response language (default: en)",
            "enum": [
              "en",
              "de"
            ],
            "type": "string"
          },
          "two_week_churn_percent": {
            "maximum": 100,
            "minimum": 0,
            "type": "number"
          }
        },
        "required": [
          "ai_changes_per_week",
          "average_review_minutes_per_change",
          "available_reviewer_hours_per_week",
          "evidence_coverage_percent"
        ],
        "type": "object"
      },
      "name": "calculate_verification_capacity"
    },
    {
      "description": "Return GO, CONDITIONAL, or NO_GO from supplied acceptance-criterion results, check evidence, rollback, monitoring, limitations, and independent review. The verdict is deliberately based only on supplied evidence; this tool does not inspect code, CI, or a deployment.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "acceptance_criteria_failed": {
            "maximum": 10000,
            "minimum": 0,
            "type": "integer"
          },
          "acceptance_criteria_not_run": {
            "maximum": 10000,
            "minimum": 0,
            "type": "integer"
          },
          "acceptance_criteria_passed": {
            "maximum": 10000,
            "minimum": 0,
            "type": "integer"
          },
          "blast_radius": {
            "description": "Largest expected impact boundary",
            "enum": [
              "single_component",
              "service",
              "multi_service",
              "customer_data",
              "production_wide"
            ],
            "type": "string"
          },
          "change_summary": {
            "description": "Plain-language summary of the change",
            "maxLength": 2000,
            "minLength": 10,
            "type": "string"
          },
          "change_types": {
            "description": "Technical and risk-relevant change types",
            "items": {
              "enum": [
                "ui",
                "api",
                "auth",
                "database",
                "payments",
                "personal_data",
                "dependency",
                "infrastructure",
                "public_api",
                "compliance"
              ],
              "type": "string"
            },
            "maxItems": 10,
            "minItems": 1,
            "type": "array"
          },
          "checks": {
            "items": {
              "properties": {
                "evidence": {
                  "maxLength": 1000,
                  "type": "string"
                },
                "kind": {
                  "enum": [
                    "build",
                    "lint",
                    "typecheck",
                    "unit",
                    "integration",
                    "e2e",
                    "accessibility",
                    "security",
                    "migration",
                    "manual"
                  ],
                  "type": "string"
                },
                "name": {
                  "maxLength": 200,
                  "minLength": 1,
                  "type": "string"
                },
                "status": {
                  "enum": [
                    "pass",
                    "fail",
                    "not_run"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "kind",
                "status"
              ],
              "type": "object"
            },
            "maxItems": 100,
            "type": "array"
          },
          "independent_review": {
            "type": "boolean"
          },
          "known_limitations_recorded": {
            "type": "boolean"
          },
          "lang": {
            "description": "Response language (default: en)",
            "enum": [
              "en",
              "de"
            ],
            "type": "string"
          },
          "monitoring_ready": {
            "type": "boolean"
          },
          "rollback": {
            "description": "Current rollback or recovery state",
            "enum": [
              "automatic",
              "documented",
              "manual",
              "none",
              "unknown"
            ],
            "type": "string"
          },
          "rollback_ready": {
            "type": "boolean"
          }
        },
        "required": [
          "change_summary",
          "change_types",
          "blast_radius",
          "rollback",
          "acceptance_criteria_passed",
          "acceptance_criteria_failed",
          "acceptance_criteria_not_run",
          "checks",
          "rollback_ready",
          "monitoring_ready",
          "known_limitations_recorded",
          "independent_review"
        ],
        "type": "object"
      },
      "name": "check_release_readiness"
    },
    {
      "description": "Estimate a software team's verification debt from team parameters. Computes the four published metrics (generation-to-verification ratio, review depth, unverified-merge rate, two-week churn) and an annual cost estimate, with the full calculation path, labeled assumptions, thresholds, and sources (GitClear, Sonar, Faros, Veracode). Deterministic arithmetic from published models - no benchmark claims. Only team_size is required; every additional parameter refines the estimate. Set lang='de' for a German report.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "ai_merges_per_month": {
            "description": "AI-assisted merges per month (enables the unverified-merge rate)",
            "maximum": 100000,
            "minimum": 0,
            "type": "integer"
          },
          "ai_merges_with_evidence_per_month": {
            "description": "AI-assisted merges per month with recorded validation evidence (enables the unverified-merge rate)",
            "maximum": 100000,
            "minimum": 0,
            "type": "integer"
          },
          "ai_share_percent": {
            "description": "Share of merges that are AI-assisted, in percent (default: 60, assumption)",
            "maximum": 100,
            "minimum": 0,
            "type": "number"
          },
          "hourly_rate_eur": {
            "description": "Loaded cost per engineer hour in EUR (default: 75, assumption)",
            "maximum": 1000,
            "minimum": 1,
            "type": "number"
          },
          "hours_per_reworked_change": {
            "description": "Average hours per reworked change (default: 6, assumption)",
            "maximum": 100,
            "minimum": 0.1,
            "type": "number"
          },
          "incident_allowance_eur_per_year": {
            "description": "Annual incident allowance in EUR (default: 0; add one only when you have a locally defined incident class, frequency and expected-loss method)",
            "maximum": 10000000,
            "minimum": 0,
            "type": "number"
          },
          "lang": {
            "description": "Report language (default: en)",
            "enum": [
              "en",
              "de"
            ],
            "type": "string"
          },
          "merged_loc_per_week": {
            "description": "Merged changed lines of code per week (enables the GVR and review-depth metrics)",
            "maximum": 100000000,
            "minimum": 0,
            "type": "number"
          },
          "prs_per_engineer_per_month": {
            "description": "Merged PRs per engineer per month (default: 20, derived from the published worked report on /measure-verification-debt)",
            "maximum": 500,
            "minimum": 0.1,
            "type": "number"
          },
          "prs_per_month": {
            "description": "Total merged PRs per month (default: team_size x prs_per_engineer_per_month)",
            "maximum": 100000,
            "minimum": 1,
            "type": "integer"
          },
          "review_reconstruction_hours_per_pr": {
            "description": "Average reviewer hours spent reconstructing intent per AI-assisted PR (default: 0.5, assumption)",
            "maximum": 20,
            "minimum": 0,
            "type": "number"
          },
          "reviewer_hours_per_week": {
            "description": "Reviewer hours actually spent per week (enables the GVR metric)",
            "maximum": 10000,
            "minimum": 0,
            "type": "number"
          },
          "rework_rate_percent": {
            "description": "Share of AI-assisted changes reworked for a defect within 14 days, in percent (default: 2, the illustrative rate from /cost-of-verification-debt - replace it with your own reason-coded rate)",
            "maximum": 100,
            "minimum": 0,
            "type": "number"
          },
          "substantive_review_comments_per_week": {
            "description": "Substantive review comments per week, excluding bots and nitpicks (enables the review-depth metric)",
            "maximum": 1000000,
            "minimum": 0,
            "type": "number"
          },
          "team_size": {
            "description": "Number of developers on the team (required)",
            "maximum": 500,
            "minimum": 1,
            "type": "integer"
          },
          "two_week_churn_percent": {
            "description": "Share of new lines revised or reverted within 14 days, in percent. A warning signal in the metrics block; it never enters the cost model, because it measures lines and the cost model counts changes",
            "maximum": 100,
            "minimum": 0,
            "type": "number"
          }
        },
        "required": [
          "team_size"
        ],
        "type": "object"
      },
      "name": "check_verification_debt"
    },
    {
      "description": "Fetch a document from the Reality Graph knowledge base by id (as returned by search, e.g. '/verification-debt') or by full realitygraph.dev URL. Returns the document's summary, definitions, key facts, FAQ, and sources as text, plus the canonical URL.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "id": {
            "description": "Document id from search results, or a realitygraph.dev URL",
            "maxLength": 300,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "name": "fetch"
    },
    {
      "description": "Returns Reality Graph's free fill-in template (v0) for a verifiable task contract: goal, non-goals, boundaries (may change / must not change / forbidden), 3-7 yes/no acceptance criteria, validation plan, expected evidence, assumptions, open questions — with a filled example and fill-in guidance. Write the contract before an AI agent runs; verify the result against it after. format='json' returns a machine-fillable JSON structure; default is a compact markdown skeleton. Set lang='de' for German. Static content, nothing stored.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "format": {
            "description": "Template format (default: markdown)",
            "enum": [
              "markdown",
              "json"
            ],
            "type": "string"
          },
          "lang": {
            "description": "Language (default: en)",
            "enum": [
              "en",
              "de"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "get_task_contract_template"
    },
    {
      "description": "Returns the free fill-in template (v0) for a verification report — the artifact you write right after an AI-assisted run: task recap, files changed AND files confirmed untouched, validation results per acceptance criterion (not authored by the generating model), what was skipped, limitations, and the explicit decision. format='json' for a machine-fillable structure; default is a compact markdown file. Static content, nothing stored. lang='de' for German.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "format": {
            "description": "Template format (default: markdown)",
            "enum": [
              "markdown",
              "json"
            ],
            "type": "string"
          },
          "lang": {
            "description": "Language (default: en)",
            "enum": [
              "en",
              "de"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "get_verification_report_template"
    },
    {
      "description": "Check whether a free-text work order for an AI coding agent is verifiable BEFORE handing it over. Heuristic, deterministic lint of the task's form against the four building blocks of a checkable task (goal, boundaries, acceptance criteria, validation plan) plus rule checks (vague adjectives without numbers, unnamed unhappy paths, missing file anchors). Returns a status table with evidence, the concrete questions that close each gap, and a fill-in skeleton. It checks form, not content — no LLM, nothing stored. Set lang='de' for a German report.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "lang": {
            "description": "Report language (default: en)",
            "enum": [
              "en",
              "de"
            ],
            "type": "string"
          },
          "task": {
            "description": "The work order / task text you intend to give an AI coding agent (English or German)",
            "maxLength": 8000,
            "minLength": 10,
            "type": "string"
          }
        },
        "required": [
          "task"
        ],
        "type": "object"
      },
      "name": "lint_task_spec"
    },
    {
      "description": "Turn explicit change characteristics into a risk tier, required automated checks, manual scenarios, evidence, release blockers, role handoff, and canonical Reality Graph guidance. Use before implementation or review. It does not inspect code and never invents a confidence score.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "blast_radius": {
            "description": "Largest expected impact boundary",
            "enum": [
              "single_component",
              "service",
              "multi_service",
              "customer_data",
              "production_wide"
            ],
            "type": "string"
          },
          "change_summary": {
            "description": "Plain-language summary of the change",
            "maxLength": 2000,
            "minLength": 10,
            "type": "string"
          },
          "change_types": {
            "description": "Technical and risk-relevant change types",
            "items": {
              "enum": [
                "ui",
                "api",
                "auth",
                "database",
                "payments",
                "personal_data",
                "dependency",
                "infrastructure",
                "public_api",
                "compliance"
              ],
              "type": "string"
            },
            "maxItems": 10,
            "minItems": 1,
            "type": "array"
          },
          "lang": {
            "description": "Response language (default: en)",
            "enum": [
              "en",
              "de"
            ],
            "type": "string"
          },
          "rollback": {
            "description": "Current rollback or recovery state",
            "enum": [
              "automatic",
              "documented",
              "manual",
              "none",
              "unknown"
            ],
            "type": "string"
          }
        },
        "required": [
          "change_summary",
          "change_types",
          "blast_radius",
          "rollback"
        ],
        "type": "object"
      },
      "name": "plan_change_verification"
    },
    {
      "description": "Full-text search over the Reality Graph knowledge base on AI coding verification: 40+ glossary definitions, 700+ FAQ answers, sourced statistics, and article summaries on verification debt, AI code review, spec-vs-implementation checking, EU compliance (EU AI Act, GDPR, NIS2), and AI coding governance — in English and German. Returns matching documents with title, URL, and snippet. Use fetch to read a result.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "lang": {
            "description": "Restrict results to one language (default: both)",
            "enum": [
              "en",
              "de"
            ],
            "type": "string"
          },
          "query": {
            "description": "Search query (English or German)",
            "maxLength": 300,
            "minLength": 2,
            "type": "string"
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "name": "search"
    },
    {
      "description": "Deterministically validates a FILLED task contract (the JSON structure from get_task_contract_template): completeness of goal/non-goals/boundaries, decidability of each acceptance criterion (vague words, missing measurable markers), automated checks in the validation plan, expected evidence, and leftover placeholders. Returns a verdict (PASS / PASS WITH WARNINGS / FAIL), four dimension scores, and a concrete fix per finding. Validates form and completeness, not correctness. No LLM, nothing stored. lang='de' for German.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "contract": {
            "description": "The filled task contract as a JSON string (structure from get_task_contract_template, format='json')",
            "maxLength": 16000,
            "minLength": 20,
            "type": "string"
          },
          "lang": {
            "description": "Report language (default: en)",
            "enum": [
              "en",
              "de"
            ],
            "type": "string"
          }
        },
        "required": [
          "contract"
        ],
        "type": "object"
      },
      "name": "validate_task_contract"
    }
  ]
}

What the leaf hashes

{"body":"a96773605007f0a99d900b418fb67691987e4277ac67396ed9eb0ab9faf7bc16","id":565847,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793138283072582,"prev":null,"subject":"1fe3cb63-97c2-482c-9ec3-27854da61d71","subject_kind":"endpoint"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (273461 rows).

  1. 0x4f9c5854833a04b4c795d7318334bec0feaa2ec3dfa4845ff787d03233ab54f6
  2. 0x2967da2552072d7a057c68b10126c2d3fd9d0bb10b429e932970936d630a4172
  3. 0x15a665c35ef1b9f255dd8bc2c07bd393d1f385800c98e88657f572b54c1d92a8
  4. 0x0595c2120c240e7d4fd86561ec7560c85b2b27057be1e2c328ff37e7426cf612
  5. 0xe435081bd5ed9d1900771632e87402b3d49213d21ff543cac0742e27f6a249c8
  6. 0x422aa4222fc075edee3435540127da841e35cc9a67b0aed7b776f1ea3bec1eba
  7. 0xf51dd1633411ab3ffbd5972009869e885fc35f697ed141ca06b5e029d6a52ce3
  8. 0xcf4c118eafc62ef1012085c90052deca4dd4672fda3b8dee1ce38a5ade0400aa
  9. 0xb510543e7f84108441287986553cc0908ce9d30f42671399cce634c856a7d132
  10. 0xf833df792e157e86b1fec470b40449423d669f06490afc7e934a9ce7929db11f
  11. 0x7b0f54aa0116cedb8afb80e7150869a7cf2b70adc313e0079a760b5d19d2efbc
  12. 0x8762ddf9a7f6b156629a8a66fe575b878ee44cd59a7f0a583ec6db0a152d703b
  13. 0x797da99476c7ebaa971607ae725e5e240b79de9e49d28859b94de107c850aaab
  14. 0x9ea0c6a53f80a30b6f13671109f98a000cf98e581875129f4be4b57131d06364
  15. 0xb78ea6a255dd06e2f402a1a733bca392fa6243920bcba95e8b80bdfc6ce5f553
  16. 0x3ed50f053eca72dfd3a9d45a11935240bfe691e57835c367ddebe2cbc49efe9d
  17. 0x0e01aa9525097570a6edaf32bfc959de57bf5c24317cf10c0716affea85ca60d
  18. 0xa20d48798a34aba12eb9c7297722982d910f06c148f5e27ac59307422964a585
  19. 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
Day root
0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
Chained
0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
Published
On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4

How to check it · This row as JSON