{
  "shard_id": "FV-PROPFLOOR-SHARD-B2-1",
  "spec_anchor": "FV-PBT-FLOOR-BUILD-SPEC.md §2/§3/§4",
  "population_definition": "all kernels in shard FV-PROPFLOOR-SHARD-B2-1, enumerated below by kernel id and spec digest",
  "human_sign_off": {
    "status": "PENDING",
    "name": null,
    "date": null
  },
  "independence_sentence": "Each item listed was reviewed and attested independently; the single signature is a mechanical convenience over the enumerated digests, not a bulk review.",
  "per_item_basis_of_review": "Every row ran the same two mechanical checks unconditionally: (1) the fixture-oracle gate — compute() output diffed against the kernel's own existing golden fixtures before any property was trusted, and (2) run-proptests.mjs green (process exit 0). ULP-boundary forcing was mandatory and present for the 3 float-sensitive rows named in the WU (art-101, art-107, art-141), checked per-item below, not assumed uniform. The other 7 rows (art-103, art-108, art-112, art-115, art-118, art-121, art-13) are the row's stated float:no exceptions and instead carry forced CATEGORICAL boundary cases (set-membership edges, empty/null inputs, threshold ties) in place of ULP forcing. No row beyond these two mechanical checks received a separate in-depth human review in this pass — that is exactly the gap human_sign_off.status=PENDING names.",
  "items": [
    {
      "kernel_id": "art-101-mica-art67-own-funds-calculator",
      "class": "B",
      "float_sensitive": true,
      "ulp_forcing_present": true,
      "kernel_digest": "sha256:7128ee0185f75fbe40c14da89571121926b7e634ea5764267e21766fe999983b",
      "proptest_file_digest": "sha256:1ffd9bbc8520a8c23066b97435c1d6637cd38d1a43ceac37f0c59f0a7c37aa29",
      "proptest_file": "chaingraph/kernels/__proptests__/art-101-mica-art67-own-funds-calculator.proptest.mjs",
      "properties_tested": ["monotone_in_own_funds_held", "boundedness_required_ge_permanent_minimum", "binding_basis_agreement_depends_only_on_class_and_overheads", "ULP_boundary_forcing"],
      "fixture_oracle_result": "PASS (1/1 vectors)",
      "run_proptests_result": "PASS"
    },
    {
      "kernel_id": "art-103-mar-crypto-surveillance-readiness",
      "class": "B",
      "float_sensitive": false,
      "ulp_forcing_present": false,
      "ulp_forcing_note": "stated float:no exception per the WU row — forced CATEGORICAL boundary cases (composite_pct exactly at grade-tier boundaries 88/72/56/40, unrecognized arrangement-state strings) used instead of ULP forcing",
      "kernel_digest": "sha256:ccfc18748b7ec8fa614b64c2704c277dbf6424b1634d54850f579057588da7a9",
      "proptest_file_digest": "sha256:5f47852be2d97bba03bc61ac87c5079d1fcbf156be7d5e627ddb544285a8d531",
      "proptest_file": "chaingraph/kernels/__proptests__/art-103-mar-crypto-surveillance-readiness.proptest.mjs",
      "properties_tested": ["monotone_composite_pct_nondecreasing_on_improvement", "boundedness_composite_pct_and_scores", "grade_matches_fixed_composite_pct_thresholds"],
      "fixture_oracle_result": "PASS (1/1 vectors)",
      "run_proptests_result": "PASS"
    },
    {
      "kernel_id": "art-107-tempo-gas-economics",
      "class": "B",
      "float_sensitive": true,
      "ulp_forcing_present": true,
      "kernel_digest": "sha256:73a3fb7dd9a7cccfa836d175216241be5000575c71fbea673621cf661401b806",
      "proptest_file_digest": "sha256:2b2835523534744523c98f499bf115138199a24a6a575d3374d195a1382e038c",
      "proptest_file": "chaingraph/kernels/__proptests__/art-107-tempo-gas-economics.proptest.mjs",
      "properties_tested": ["monotone_saving_nonincreasing_in_slippage", "boundedness_effective_cost_in_range", "subsidy_plus_effective_equals_blended", "ULP_boundary_forcing"],
      "fixture_oracle_result": "PASS (2/2 vectors)",
      "run_proptests_result": "PASS"
    },
    {
      "kernel_id": "art-108-canton-selective-disclosure",
      "class": "B",
      "float_sensitive": false,
      "ulp_forcing_present": false,
      "ulp_forcing_note": "stated float:no exception per the WU row — forced CATEGORICAL boundary cases (empty visible_to/fields arrays, empty shared_commitment string, missing dvp_structure) used instead of ULP forcing",
      "kernel_digest": "sha256:a255de01b67ae52790e981e245331dbb46ba3aeeec9c86f951688603f24bff64",
      "proptest_file_digest": "sha256:2f1a1b8445ff59821eb8af7cfc7ae79e827e7430e85eb18d66e23a0502e427bc",
      "proptest_file": "chaingraph/kernels/__proptests__/art-108-canton-selective-disclosure.proptest.mjs",
      "properties_tested": ["order_invariance_of_visible_to_and_fields_arrays", "boundedness_verdict_and_flags_from_known_sets", "verdict_equals_and_of_four_subchecks"],
      "fixture_oracle_result": "PASS (2/2 vectors)",
      "run_proptests_result": "PASS"
    },
    {
      "kernel_id": "art-112-dscsa-transaction-statement-verifier",
      "class": "B",
      "float_sensitive": false,
      "ulp_forcing_present": false,
      "ulp_forcing_note": "stated float:no exception per the WU row — forced CATEGORICAL boundary cases (13/15-digit GTINs, empty serial, unrecognized epcis_event_type) used instead of ULP forcing",
      "kernel_digest": "sha256:050a30a2760caae0cac020f44dd26cfe3f9be9ec02e89386c12b22dbe18f791c",
      "proptest_file_digest": "sha256:6806c5bcbc68bd9c1f062c0372dc0dec5727ab75bd6a7b86adb638a6fb0ac20d",
      "proptest_file": "chaingraph/kernels/__proptests__/art-112-dscsa-transaction-statement-verifier.proptest.mjs",
      "properties_tested": ["monotone_missing_elements_nonincreasing_on_completion", "boundedness_t3_complete_equals_conjunction", "epcis_event_category_agreement"],
      "fixture_oracle_result": "PASS (2/2 vectors)",
      "run_proptests_result": "PASS"
    },
    {
      "kernel_id": "art-115-dpp-data-carrier-validator",
      "class": "B",
      "float_sensitive": false,
      "ulp_forcing_present": false,
      "ulp_forcing_note": "stated float:no exception per the WU row — forced CATEGORICAL boundary cases (zero elements, invalid carrier type, empty-string element value) used instead of ULP forcing",
      "kernel_digest": "sha256:7d2f0c60cd204d6e7a54daef6611623df431e3924739025376b1277e3461c343",
      "proptest_file_digest": "sha256:33bd4726e8d2af58cdf87d21e9453a616e22f8b00b14665ff015919433cf3301",
      "proptest_file": "chaingraph/kernels/__proptests__/art-115-dpp-data-carrier-validator.proptest.mjs",
      "properties_tested": ["monotone_missing_elements_nonincreasing_on_addition", "boundedness_missing_elements_subset_of_required", "conformance_equals_conjunction_of_three_checks"],
      "fixture_oracle_result": "PASS (2/2 vectors)",
      "run_proptests_result": "PASS"
    },
    {
      "kernel_id": "art-118-fsma204-cte-validator",
      "class": "B",
      "float_sensitive": false,
      "ulp_forcing_present": false,
      "ulp_forcing_note": "stated float:no exception per the WU row — forced CATEGORICAL boundary cases (zero KDEs, unrecognized cte_type with empty required set) used instead of ULP forcing",
      "kernel_digest": "sha256:e34e3e945044a3bafac4c9c72d15227e4b0a89ddff995e5afb0f4ae661015922",
      "proptest_file_digest": "sha256:2a7103b368a5e543d3aa180ef65c8235023751369617f6095a7291d29f13d590",
      "proptest_file": "chaingraph/kernels/__proptests__/art-118-fsma204-cte-validator.proptest.mjs",
      "properties_tested": ["monotone_missing_kdes_nonincreasing_on_completion", "boundedness_missing_kdes_subset_of_required", "cte_valid_equals_nonempty_required_and_no_missing"],
      "fixture_oracle_result": "PASS (2/2 vectors)",
      "run_proptests_result": "PASS"
    },
    {
      "kernel_id": "art-121-document-integrity-anchor",
      "class": "B",
      "float_sensitive": false,
      "ulp_forcing_present": false,
      "ulp_forcing_note": "stated float:no exception per the WU row — forced CATEGORICAL boundary cases (63/65-hex-char hashes, uppercase algorithm prefix, empty/null timestamp) used instead of ULP forcing",
      "kernel_digest": "sha256:7f6d0e49c1eeb8c26e4d0453f504f575f36b4547315236e2d5796bea05076cb0",
      "proptest_file_digest": "sha256:c7d7cb9fc442c283d21272c6d9194d4cfcfe80076ed64341c171f3c6af0a9659",
      "proptest_file": "chaingraph/kernels/__proptests__/art-121-document-integrity-anchor.proptest.mjs",
      "properties_tested": ["anchored_equals_conjunction_of_hash_and_timestamp", "anchored_independent_of_document_type", "compliance_flags_mirror_boolean_outputs"],
      "fixture_oracle_result": "PASS (2/2 vectors)",
      "run_proptests_result": "PASS"
    },
    {
      "kernel_id": "art-13-eudi-wallet-credential-readiness-checker",
      "class": "B",
      "float_sensitive": false,
      "ulp_forcing_present": false,
      "ulp_forcing_note": "stated float:no exception per the WU row — forced CATEGORICAL boundary cases (pid with zero vs all-8 required claims, non_qualified_eaa branch, unrecognized format string) used instead of ULP forcing",
      "kernel_digest": "sha256:127c97da18f98fb9a3db038f6b7dee0dc52653f7e8d0145b0eb94e0f428c1857",
      "proptest_file_digest": "sha256:65a3c0265e37f26150a8da7d68b75e3c25198857e200fa1402aaca657902433f",
      "proptest_file": "chaingraph/kernels/__proptests__/art-13-eudi-wallet-credential-readiness-checker.proptest.mjs",
      "properties_tested": ["boundedness_readiness_score_and_acceptance_implies_no_fails", "monotone_readiness_score_nondecreasing_on_checklist_improvement", "verdict_matches_readiness_score_tier_thresholds"],
      "fixture_oracle_result": "PASS (1/1 vectors)",
      "run_proptests_result": "PASS"
    },
    {
      "kernel_id": "art-141-nis2-entity-scope-classifier",
      "class": "B",
      "float_sensitive": true,
      "ulp_forcing_present": true,
      "kernel_digest": "sha256:f5cdbd302bc819281ca45b0324490e3843d98a3ff0912db8177a323a66c79336",
      "proptest_file_digest": "sha256:50e6b7fae7d34c738760cfaa77c47fbec9897c62fb087203991969459e2fc8b9",
      "proptest_file": "chaingraph/kernels/__proptests__/art-141-nis2-entity-scope-classifier.proptest.mjs",
      "properties_tested": ["monotone_classification_rank_nondecreasing_in_size", "boundedness_known_sets_and_nonnegative_safe_inputs", "employee_250_boundary_forces_essential_regardless_of_turnover", "ULP_boundary_forcing"],
      "fixture_oracle_result": "PASS (4/4 vectors)",
      "run_proptests_result": "PASS"
    }
  ],
  "ulp_forcing_summary": "3 of 10 kernels required ULP-boundary forcing (art-101, art-107, art-141, as named in the WU row) and all 3 carry it, checked per-item above. The other 7 (art-103, art-108, art-112, art-115, art-118, art-121, art-13) are the row's stated float:no exceptions and carry forced categorical boundary cases instead.",
  "run_proptests_aggregate": "10/10 shard files passed (node scripts/run-proptests.mjs — 41/41 across the full tree, no regression in prior shards)",
  "fv_floor_coverage": "all 10 shard kernels confirmed absent from check-fv-floor-coverage.mjs --list-unfloored (grepped by exact tool_id); coverage gate reports 41/582 floored, clean ratchet"
}
