{
  "tool_id": "art-675-recordkeeping-completeness-mapper",
  "note": "Golden vectors authored by RECORDKEEPING-MAPPER-BUILD-1 per RECORDKEEPING-MAPPER-BUILD-SPEC.md. Vector 1 is the spec canonical preimage; its execution_hash pins 80e11f09ee7530d6091e58de7f6524e99fd906406da0a1727305c03a020141d8. Vector 2 is the opposite-verdict vector (COMPLETE). human_sign_off: PENDING.",
  "vectors": [
    {
      "name": "spec-canonical-preimage (parity pin 80e11f09)",
      "policy_parameters": {
        "channels": [
          {
            "name": "email",
            "captured": true,
            "retrieval_test": "pass"
          },
          {
            "name": "chat_app",
            "captured": false,
            "retrieval_test": "not_run"
          }
        ]
      },
      "output_payload": {
        "total": 2,
        "captured": 1,
        "completeness_pct": 50,
        "uncaptured": [
          "chat_app"
        ],
        "retrieval_passes": 1,
        "overall": "GAPS_FOUND"
      },
      "golden_hash": "80e11f09ee7530d6091e58de7f6524e99fd906406da0a1727305c03a020141d8"
    },
    {
      "name": "opposite-verdict all captured all pass",
      "policy_parameters": {
        "channels": [
          {
            "name": "email",
            "captured": true,
            "retrieval_test": "pass"
          },
          {
            "name": "chat_app",
            "captured": true,
            "retrieval_test": "pass"
          },
          {
            "name": "voice",
            "captured": true,
            "retrieval_test": "pass"
          }
        ]
      },
      "output_payload": {
        "total": 3,
        "captured": 3,
        "completeness_pct": 100,
        "uncaptured": [],
        "retrieval_passes": 3,
        "overall": "COMPLETE"
      },
      "golden_hash": "00fa45ee6a8c42ff5799daed8b6b54d1867fae717f83fa5b5c5246efef5e95cb"
    },
    {
      "name": "captured but retrieval fail is a gap",
      "policy_parameters": {
        "channels": [
          {
            "name": "email",
            "captured": true,
            "retrieval_test": "fail"
          },
          {
            "name": "chat_app",
            "captured": true,
            "retrieval_test": "pass"
          }
        ]
      },
      "output_payload": {
        "total": 2,
        "captured": 2,
        "completeness_pct": 100,
        "uncaptured": [],
        "retrieval_passes": 1,
        "overall": "GAPS_FOUND"
      },
      "golden_hash": "a61b1c0d97568733fa1e23dd8e254c2f324d5eeabb3af7a048cde16b40a18671"
    },
    {
      "name": "rounding 2 of 3 to whole pct",
      "policy_parameters": {
        "channels": [
          {
            "name": "a",
            "captured": true,
            "retrieval_test": "pass"
          },
          {
            "name": "b",
            "captured": true,
            "retrieval_test": "not_run"
          },
          {
            "name": "c",
            "captured": false,
            "retrieval_test": "not_run"
          }
        ]
      },
      "output_payload": {
        "total": 3,
        "captured": 2,
        "completeness_pct": 67,
        "uncaptured": [
          "c"
        ],
        "retrieval_passes": 1,
        "overall": "GAPS_FOUND"
      },
      "golden_hash": "043930613ab32d702f3dab1a20faf4004677bc1e62032187f09389804e3e2057"
    },
    {
      "name": "fail-closed non-boolean captured",
      "policy_parameters": {
        "channels": [
          {
            "name": "email",
            "captured": "yes",
            "retrieval_test": "pass"
          }
        ]
      },
      "output_payload": {
        "total": null,
        "captured": null,
        "completeness_pct": null,
        "uncaptured": [],
        "retrieval_passes": null,
        "overall": null,
        "trace": "fail-closed: each channel.captured must be a boolean; no completeness roll-up computed -- correct the named inputs and resubmit. Arithmetic of caller-declared channel declarations only: no live records, tapes, feeds, or registers are checked.",
        "domain_errors": [
          "INVALID_CAPTURED"
        ]
      },
      "golden_hash": "c6a6f0953907aa2fdb71cad2f947c60f98631cfe5199b5f8ceec59d98a1db677"
    },
    {
      "name": "fail-closed duplicate channel name",
      "policy_parameters": {
        "channels": [
          {
            "name": "email",
            "captured": true,
            "retrieval_test": "pass"
          },
          {
            "name": "email",
            "captured": false,
            "retrieval_test": "not_run"
          }
        ]
      },
      "output_payload": {
        "total": null,
        "captured": null,
        "completeness_pct": null,
        "uncaptured": [],
        "retrieval_passes": null,
        "overall": null,
        "trace": "fail-closed: each channel.name must be a non-empty string and channel names must be unique; no completeness roll-up computed -- correct the named inputs and resubmit. Arithmetic of caller-declared channel declarations only: no live records, tapes, feeds, or registers are checked.",
        "domain_errors": [
          "INVALID_CHANNEL_NAME"
        ]
      },
      "golden_hash": "c55d3968c7aeba9a8088f6ac19da36624e02d3ed4bc0eacf469ce747b0d192a8"
    },
    {
      "name": "fail-closed empty channels",
      "policy_parameters": {
        "channels": []
      },
      "output_payload": {
        "total": null,
        "captured": null,
        "completeness_pct": null,
        "uncaptured": [],
        "retrieval_passes": null,
        "overall": null,
        "trace": "fail-closed: channels must be a non-empty array of channel objects, at most 4096 entries; no completeness roll-up computed -- correct the named inputs and resubmit. Arithmetic of caller-declared channel declarations only: no live records, tapes, feeds, or registers are checked.",
        "domain_errors": [
          "INVALID_CHANNELS"
        ]
      },
      "golden_hash": "e8bf34ef7237391e89953c9d01c5817317b91090679cac9fc6f20bd12ee7c45a"
    },
    {
      "name": "fail-closed bad retrieval_test",
      "policy_parameters": {
        "channels": [
          {
            "name": "email",
            "captured": true,
            "retrieval_test": "PASS"
          }
        ]
      },
      "output_payload": {
        "total": null,
        "captured": null,
        "completeness_pct": null,
        "uncaptured": [],
        "retrieval_passes": null,
        "overall": null,
        "trace": "fail-closed: each channel.retrieval_test must be one of pass, fail, not_run; no completeness roll-up computed -- correct the named inputs and resubmit. Arithmetic of caller-declared channel declarations only: no live records, tapes, feeds, or registers are checked.",
        "domain_errors": [
          "INVALID_RETRIEVAL_TEST"
        ]
      },
      "golden_hash": "0dbc6effb88f2fe15e1811ac149b3812c5c739da65ecc7c11957a480102ff4a3"
    }
  ]
}
