{"content":"[meta-socket][79bd4c4] 完成 P1 兼容性补齐(偏向无感切换优先)\n\n本次改动重点对齐 show-now-tmp 的 socket rawtx 语义,确保 IDBots 仅切换 base_url 仍可保持私聊/群聊/在线链路行为稳定:\n1) MVC txid/pinId 规则:新增 mvc_hash_compat 兼容实现,完整复刻旧版 GetNewHash / DecodeRawTransaction / GetTxNewRawByte 逻辑(含 version>=10 特殊 hash 规则),并接入 normalizedTxHashForChain。\n2) owner/createAddress 规则:重构 rawtx pin 组装,按链和来源分支选择 owner outIdx(BTC/DOGE op_return 取最后标准输出,MVC op_return 取第一个标准输出,输入型 pin 使用 index-aware fallback),pinID 使用 owner outIdx 生成。\n3) globalMetaId 规则:新增 internal/idaddress(base58+bech32/taproot)转换工具,pin 生成时优先输出 idaddress 形式 globalMetaId,转换失败再回退旧行为。\n4) OP_RETURN 优先级:实现 OP_RETURN 命中即短路,不再继续 witness/scriptsig 解析;MVC 无 OP_RETURN 时不产生 pin(与旧链路一致)。\n\n测试与验证:\n- go test ./internal/adapter -count=1 -v\n- go test ./internal/pipeline -count=1\n- go test ./... -timeout 20m\n- go test ./tests/contract -run TestSocketE2EPathsAndHeartbeat -count=20 -timeout 20m\n- go test ./internal/adapter -run 'TestMVCNormalizedTxHashVersion10MatchesLegacyRule|TestJSONZMQAdapterRawTxOpReturnPriorityShortCircuit|TestResolveOpReturnOwnerCompatibilityRules' -count=20\n\n结果:全部通过;代码已 push 到 origin/main。","contentType":"text/plain;utf-8","attachments":[],"quotePin":""}