{
 "number": 36591,
 "input_hash": "7b5767797b5003fd",
 "model": "ledger",
 "prompt_hash": null,
 "created": "2026-10-23T01:15:45+00:00",
 "result": {
  "summary": "Reorganizes functional test coverage for PSBT unknown fields in `rpc_psbt.py`. It extracts the `walletprocesspsbt` pass-through test into a dedicated method, moves implicit-versus-explicit v0 merge checks into `test_combinepsbt_preserves_unknown_fields`, and removes redundant merge assertions.",
  "problem": "PSBT unknown-field merge tests were duplicated across disparate test sections, and the pass-through test block included merge assertions. Mutation testing on `PSBTInput::Merge` triggered failures under the pass-through test block rather than the dedicated merge test.",
  "card": "Deduplicates and reorganizes PSBT unknown-field test coverage in test/functional/rpc_psbt.py. Redundant test logic in run_test caused mutations in PSBTInput::Merge to fail under a pass-through test label rather than the dedicated merge test. The change isolates pass-through assertions into their own method and consolidates version-merging assertions into test_combinepsbt_preserves_unknown_fields.",
  "evidence": [
   "Author mutation testing in description: removing `PSBTInput::Merge` unknown field insertion caused the test labeled 'Test that unknown values are just passed through' to fail instead of the dedicated combine test"
  ],
  "scope_notes": "",
  "changed_since_previous": "",
  "thread": {
   "last_event_at": "2026-10-21T23:00:00Z",
   "events": 1,
   "head_sha": "ef4310097bd651497a98a9d1bb59560a7055ae01",
   "schema_floor": 2,
   "schema": 2
  },
  "waiting_on": [
   {
    "at": null,
    "id": "",
    "on": "nothing",
    "url": null,
    "what": ""
   }
  ],
  "risk": {
   "level": "low",
   "touches": [
    "tests"
   ],
   "why": "Only reorganizes test assertions within a functional test script."
  },
  "discussion": {
   "author_status": "last statement processed 2026-10-21",
   "open_concerns": [],
   "resolved_concerns": []
  },
  "reviewability": {
   "state": "Ready",
   "label": "Ready",
   "reason": "Nothing known that would invalidate a review now."
  },
  "agreement": {
   "state": "Strong",
   "summary": "Strong: substantive support, no open objection (Naomi-Gift)",
   "reason": "Initial record for the PR. Naomi-Gift provided a Tested ACK after testing the mutation cases mentioned in the PR description. / Initial record. Naomi-Gift provided a tested ACK confirming the test deduplication and mutation failure behavior.",
   "evidence": [
    "Naomi-Gift: Tested ACK \u2014 rpc_psbt.py passes and mutation testing of lines 71, 434, and 537 in psbt.cpp confirmed that all three are now caught by the combine-unknown-fields test as intended"
   ],
   "objections": [],
   "support": [
    {
     "reviewer": "Naomi-Gift",
     "reason": "rpc_psbt.py passes and mutation testing of lines 71, 434, and 537 in psbt.cpp confirmed that all three are now caught by the combine-unknown-fields test as intended",
     "substantive": true,
     "verdict": "Tested ACK",
     "id": "c:6328450439",
     "url": "https://github.com/bitcoin/bitcoin/pull/36591#issuecomment-6328450439",
     "at": "2026-10-21",
     "association": "NONE",
     "evidence": "both",
     "areas": [
      "psbt.cpp",
      "rpc_psbt.py"
     ]
    }
   ],
   "participants": [
    {
     "login": "Naomi-Gift",
     "stance": "support",
     "note": "tested mutation behavior and confirmed the test coverage changes",
     "association": "NONE",
     "comments": 1,
     "first": "2026-10-21",
     "last": "2026-10-21"
    }
   ],
   "derivation": "substantive support, no open objection (Naomi-Gift)",
   "model_state": null,
   "corrections": [],
   "notes": "Initial record for the PR. Naomi-Gift provided a Tested ACK after testing the mutation cases mentioned in the PR description. / Initial record. Naomi-Gift provided a tested ACK confirming the test deduplication and mutation failure behavior."
  },
  "dependencies": {
   "depends_on": [],
   "enables": []
  },
  "categories": [
   {
    "name": "rpc",
    "member": false,
    "evidence": "Touches test/functional/rpc_psbt.py to reorganize PSBT field checks; it does not touch RPC framework, server, or dispatch machinery.",
    "band": "Unranked",
    "reason_tag": "cleanup",
    "score": 0.0,
    "factors": {
     "bug_severity": 0,
     "leverage": 0,
     "performance": 0,
     "security_stability": 0,
     "user_value": 0
    },
    "rationale": "The PR tests PSBT handling exposed through RPC commands rather than altering the RPC interface or server machinery itself."
   },
   {
    "name": "tests",
    "member": false,
    "evidence": "Touches only test/functional/rpc_psbt.py to test subsystem-specific PSBT behavior rather than test runners, harnesses, or frameworks.",
    "band": "Unranked",
    "reason_tag": "test coverage",
    "score": 0.0,
    "factors": {
     "bug_severity": 0,
     "leverage": 0,
     "performance": 0,
     "security_stability": 0,
     "user_value": 0
    },
    "rationale": "The test infrastructure category covers general testing machinery rather than area-specific functional tests, which belong to the functional area they cover."
   },
   {
    "name": "wallet",
    "member": true,
    "evidence": "Modifies test coverage for PSBT unknown-field handling and walletprocesspsbt in test/functional/rpc_psbt.py.",
    "band": "P4",
    "reason_tag": "test coverage",
    "score": 0.15,
    "factors": {
     "bug_severity": 0,
     "leverage": 0,
     "performance": 0,
     "security_stability": 0,
     "user_value": 0
    },
    "rationale": "Refactors functional test assertions in `rpc_psbt.py` to isolate unknown-field merge coverage from pass-through checks. The change deduplicates existing test logic and ensures mutation testing correctly fails dedicated merge tests without affecting wallet behavior or user-facing functionality."
   }
  ],
  "confidence": "high",
  "uncertainties": [],
  "needs": []
 },
 "cost_usd": 0.0,
 "source": {
  "record": "2026-10-23T01:15:45+00:00",
  "code": "2026-10-23T01:20:28+00:00",
  "judgments": 3
 }
}