{
 "number": 36570,
 "input_hash": "091ee5ce0decdcc8",
 "model": "ledger",
 "prompt_hash": null,
 "created": "2026-10-21T01:17:30+00:00",
 "result": {
  "summary": "Passes base32 I2P addresses directly to the SAM bridge `STREAM CONNECT` command rather than issuing a preliminary `NAMING LOOKUP` command. This eliminates a round trip to the local SAM bridge on every outbound I2P connection.",
  "problem": "Outbound I2P connections perform a redundant `NAMING LOOKUP` step that adds latency. Furthermore, when unresolvable peers cause the lookup to return an empty `VALUE=` key, Bitcoin Core treats it as an internal proxy error rather than a peer reachability failure, preventing AddrMan from recording the failed attempt.",
  "card": "Passes base32 I2P addresses directly to the SAM `STREAM CONNECT` command, removing a redundant preliminary `NAMING LOOKUP` round trip on outbound I2P connections. When peer lookups fail under the old approach, empty responses are treated as local proxy errors rather than unreachable peers, preventing AddrMan from recording the failed connection attempt. The SAM v3 specification supports base32 destinations directly across all supported I2P router implementations.",
  "evidence": [
   "PR description quotes the SAM v3 API specification stating that STREAM CONNECT accepts `.b32.i2p` as DESTINATION (https://i2p.net/en/docs/api/samv3/#sam-virtual-streams-connect)",
   "PR description notes minimum router versions supporting this (Java I2P 0.9.48, i2pd 2.38.0) are older than encryption type requirements already merged in #35696"
  ],
  "scope_notes": "",
  "changed_since_previous": "",
  "thread": {
   "last_event_at": "2026-10-19T03:14:38Z",
   "events": 1,
   "head_sha": "abbdec21490ffb355c7918bdb3b9b16aa0e75e4b",
   "schema_floor": 2,
   "schema": 2
  },
  "waiting_on": [
   {
    "at": "2026-10-19",
    "id": "c:6258856189",
    "on": "reviewer",
    "url": "https://github.com/bitcoin/bitcoin/pull/36570#issuecomment-6258856189",
    "what": "review from tagged contributors"
   }
  ],
  "risk": {
   "level": "medium",
   "touches": [
    "p2p"
   ],
   "why": "A flaw in the SAM command formatting or compatibility could break outbound I2P connections for node operators using I2P."
  },
  "discussion": {
   "author_status": "last statement processed 2026-10-19",
   "open_concerns": [],
   "resolved_concerns": []
  },
  "reviewability": {
   "state": "Ready",
   "label": "Ready",
   "reason": "Nothing known that would invalidate a review now."
  },
  "agreement": {
   "state": "Crickets",
   "summary": "Crickets: no substantive comment either way",
   "reason": "Initial record. fanquake tagged potential reviewers for the PR. / Initial record. fanquake pinged relevant reviewers; no review comments or objections yet.",
   "evidence": [],
   "objections": [],
   "support": [],
   "participants": [
    {
     "login": "fanquake",
     "stance": "neutral",
     "note": "tagged potential reviewers",
     "association": "MEMBER",
     "comments": 1,
     "first": "2026-10-19",
     "last": "2026-10-19"
    }
   ],
   "derivation": "no substantive comment either way",
   "model_state": null,
   "corrections": [],
   "notes": "Initial record. fanquake tagged potential reviewers for the PR. / Initial record. fanquake pinged relevant reviewers; no review comments or objections yet."
  },
  "dependencies": {
   "depends_on": [],
   "enables": []
  },
  "categories": [
   {
    "name": "p2p",
    "member": true,
    "evidence": "Touches src/i2p.cpp and modifies outbound I2P connection setup and AddrMan failure handling.",
    "band": "P3",
    "reason_tag": "speedup",
    "score": 0.35,
    "factors": {
     "bug_severity": 1,
     "leverage": 0,
     "performance": 1,
     "security_stability": 1,
     "user_value": 1
    },
    "rationale": "Eliminating an extra SAM bridge round-trip removes connection latency and fixes unreachable peer error classification in AddrMan. According to the description, passing base32 addresses directly to STREAM CONNECT removes redundant NAMING LOOKUP requests and prevents unresolvable peers from being misclassified as internal proxy errors."
   }
  ],
  "confidence": "high",
  "uncertainties": [],
  "needs": []
 },
 "cost_usd": 0.0,
 "source": {
  "record": "2026-10-21T01:17:30+00:00",
  "code": "2026-10-21T01:23:17+00:00",
  "judgments": 1
 }
}