{
  "authority_lineage": {
    "effective_authority": "5e6f invalidated; Task26 NO-GO",
    "gate20": "historical PASS for then-sealed bytes",
    "post_launch_repair": "later authoritative adverse evidence; candidate_invalidated_by_repair=true",
    "v6_readiness": "newer distinct candidate; READY_FOR_FIVE_FINAL_TASK26_LANES_NOT_TASK26_PASS"
  },
  "candidate": {
    "checkpoint_sha256": "3ec449df7fb12ce1cbe45f4808a26f5e463355b59415100f676c43046514fc76",
    "declared_repository_status_sha256": "ca1ce2705c0c406f30461e5f05e8d09468dee33348960c3650b6b98758895478",
    "manifest_sha256": "0422f192d187738dc5ff1faaf7dcfbc92c51b30c2d21b12c10438674d801dc08",
    "provider_digest": "f9a46172386333a0067f43695fb1429a043a606f04baceb06e8c59b90c36235c",
    "requested_full_digest": "5e6f2f2a01321ac89c2950e511e7346d23070c51146c14c22c04db54034b28f1",
    "source_entries_sha256": "70036a6a6b13a7f746f28b8609d2932c4603ce192f6c147380a2814f27ea8adf",
    "source_entry_count": 375,
    "wheel_sha256": "6a3f5f04a2982658f1c334273b05ae958b0353470997fc8df143c5b1fe12cbeb"
  },
  "cleanup_and_non_touch": {
    "build_artifacts_created": 0,
    "disposable_files_created_by_this_lane": 0,
    "evidence_receipts_written": 1,
    "git_mutations": 0,
    "preexisting_tmp_task26_paths_observed_but_not_touched": true,
    "product_edits": 0,
    "profile_mutations": 0,
    "receipt_creation": "O_CREAT|O_EXCL, mode 0600",
    "runtime_mutations": 0,
    "test_edits": 0
  },
  "commands_and_results": [
    {
      "command": "sha256sum candidate checkpoint/manifest/gate receipt/Gate20 outputs/repair/v6/oracle receipts",
      "result": "all hashes recorded above; exit 0"
    },
    {
      "command": "python3 compare all 375 manifest source_entries to /home/cube/projects/richard/hermes-agent",
      "result": "373 match, 2 drift, 0 missing; exit 0"
    },
    {
      "command": "git status --porcelain=v1 -z --untracked-files=all | SHA-256/count (in-process pipe)",
      "result": "80547 bytes, 1294 entries, ca1ce2705c0c406f30461e5f05e8d09468dee33348960c3650b6b98758895478; exit 0"
    },
    {
      "command": "python3 -m json.tool repair-receipt.json and task26-owner-v1-v6-provenance-readiness-receipt.redacted.json",
      "result": "repair invalidation true; v6 Task26 pass false; exit 0"
    },
    {
      "command": "broad tests/type/lint/build",
      "result": "NOT RUN after confirmed authority invalidation, per critical authority update"
    }
  ],
  "decision": "FAIL",
  "execution_constraints": {
    "build_artifacts_created": 0,
    "cache": "no test/type/lint/build cache used; broad execution stopped",
    "filesystem": "inspection was read-only except this one append-only evidence receipt",
    "network": "no network-capable validator executed; external network calls=0"
  },
  "findings": [
    {
      "code": "SEALED_CANDIDATE_EXPLICITLY_INVALIDATED",
      "evidence": {
        "deterministic_regression": "test_launch_refuses_to_start_without_a_durable_owner_review_to_recover",
        "pre_repair_result": "FAILED: ControllerState.ARMED instead of ControllerState.UNARMED; service start was accepted with no recoverable owner review",
        "repair_candidate_invalidated_by_repair": true,
        "repair_receipt_sha256": "17fd0654060371b75e1673cb634ffbbbc3630c24913ab8377962b78bb0818200",
        "root_cause": "launch_controller started systemd and unconditionally reported AWAITING_HUMAN_TELEGRAM_ACTION without proving a recoverable AWAITING_ACTIVATION plus COMMITTED owner_review state"
      },
      "severity": "critical",
      "summary": "The sealed controller can start the service and report a human owner-review handoff when no durable recoverable owner review exists."
    },
    {
      "code": "SOURCE_TEST_CLOSURE_DRIFT_AFTER_SEAL",
      "evidence": {
        "current_repository_status": {
          "bytes": 80547,
          "entries": 1294,
          "sha256": "ca1ce2705c0c406f30461e5f05e8d09468dee33348960c3650b6b98758895478"
        },
        "drift_count": 2,
        "drift_set_sha256": "784f38cd1916e89401eb3b4d32d882bf21d29c7f1811a3f17af1d99b08f3abdb",
        "interpretation": "The status hash is unchanged because it records porcelain names/status, not content bytes; it is not a post-seal content-integrity proof.",
        "leaves": [
          {
            "current_repaired_sha256": "b303634599c17e2f35339f964b2277c1a236f42c0ad5f3e4be18d3f38e556e13",
            "path": "gateway/platforms/dualcoach_tasks21_25_controller.py",
            "sealed_sha256": "76212d9caae866d7c5ed451d247165c8eb352c1a3af8281690b0ca7b9ba40a49"
          },
          {
            "current_repaired_sha256": "95300eb8243d88af01d0e1167390ab1c30d900fed34bad44f44f2e1aca65bcdf",
            "path": "tests/gateway/test_dualcoach_tasks21_25_controller.py",
            "sealed_sha256": "323bce7c875fcdfc3854ef40f81deea7687cc9ab771b41e891e5218e9ed598bd"
          }
        ]
      },
      "severity": "high",
      "summary": "Two candidate-bound leaves now contain the required repair and no longer match the sealed manifest."
    },
    {
      "code": "CANDIDATE_BOUND_QUALITY_EVIDENCE_INCOMPLETE",
      "evidence": {
        "repair_verification": "44 focused tests, Ruff PASS, ty PASS on repaired unsealed controller/test",
        "sealed_gate_receipt_sha256": "e60036fc6d6944bf91afcc15474d7f3b30275e22ee78fdca439e574df1cc28b1",
        "sealed_gate_scope": "source-closure regression plus reproducible wheel; no candidate-bound strict type/Ruff/compile fields",
        "transferable_to_5e6f": false,
        "v6_candidate_digest": "8536818c0fb846fdbc3e9993ebd9705fd440672bf0f89f6cd7bdb3e22fcfc0c3",
        "v6_receipt_sha256": "ed4a22c51d224714055ab3a36b77915728e75584a359bbae16ae3340d5aacf26",
        "v6_task26_pass": false
      },
      "severity": "high",
      "summary": "No strict-type-delta, zero-diagnostic Ruff, or compile result bound to 5e6f closes the repaired behavior; later clean evidence belongs to repaired or v6 bytes."
    },
    {
      "code": "GATE20_PRECEDES_ADVERSE_RUNTIME_DISCOVERY",
      "evidence": {
        "canonical_output_sha256": "d744524e938b4a6c5e143096c597122f38c64a447f6586052137793e77c20512",
        "canonical_result": "8136 passed, 59 skipped, 255 warnings",
        "earlier_full_output_sha256": "2524077d230e1feffef6a152eb7263773a831d305b6492e6ccb516119abda40d",
        "earlier_full_result": "2 failed, 8134 passed, 59 skipped, 256 warnings",
        "gate20_receipt_sha256": "0398155a1d39e6292bf31c22bfbbb26a190aa0b11901a81f0d55a4292cc02a52",
        "post_launch_repair_recorded_after_gate20": true
      },
      "severity": "moderate",
      "summary": "Gate20's green rerun cannot overrule the later deterministic launch-contract failure."
    },
    {
      "code": "REPAIR_RECEIPT_SEALED_HASH_TYPO",
      "evidence": {
        "manifest_and_wheel": "76212d9caae866d7c5ed451d247165c8eb352c1a3af8281690b0ca7b9ba40a49",
        "repair_receipt_claim": "76212d9caae866d7c5f567ff0f7a2332b70676d38e53091126fbf27048c4704dbd"
      },
      "severity": "moderate",
      "summary": "The repair receipt's sealed-candidate controller hash field disagrees with both the manifest and sealed wheel hash, although its explicit invalidation and repaired hashes remain independently confirmed."
    }
  ],
  "lane": "code_quality_and_maintainability",
  "pass_published": false,
  "prior_quality_failure_closure": {
    "detail": "Historical identity, red-gate, timing, and strict-type findings cannot be declared closed after the authoritative launch defect invalidated the sealed bytes. Missing or non-transferable evidence is fail-closed.",
    "oracle_receipt_sha256": "ff22c36391e05085feaaa3b029aacf3fc58efa64504c24e5754667881eecce0f",
    "status": "NOT_PROVEN_FOR_5E6F"
  },
  "reason": "A later authoritative post-launch repair proves deterministic unsafe behavior in the sealed controller and explicitly invalidates candidate 5e6f. The repaired controller and its regression test are outside the sealed closure; frozen repository-status equality cannot restore candidate authority.",
  "recorded_at_utc": "2026-08-15T03:54:09.825209+00:00",
  "rejected_scope": [
    "No broad Gateway rerun after decisive invalidation.",
    "No provider probe, Telegram action, service action, profile read/write, activation, release, reseal, Git mutation, commit, or Task27 action.",
    "No repaired or v6 result was misattributed to candidate 5e6f."
  ],
  "release_decision": "NO-GO",
  "schema": "task26-code-quality-final-sealed-candidate-v1",
  "task": 26,
  "task_id": "st_01a0038c"
}
