Transaction
- Tx ID
bff50ea69e112123889858518c83c46ec126cfdadb476f35761b19d2a3f67ea1- Hash
a7213c68d2f3ec0860178b5fdfcac638dcb2afcb36b091a8831c8d4fc4d654a7- Accepted by
- e0b782…751c4d
- Included in
- 52d84a…8d7851
- Time
- 0000-00-00 00:00:00 (0s ago)
- Mass
- 2780
- Total out
- 6.82429788 KAS
- Fee
- 0.00026120 KAS
- Payload
- 1156 bytes
Inputs (1)
6.82455908 KAS
Outputs (1)
6.82429788 KAS
Payload (1156 bytes)
Decoded (UTF-8)
ciph_msg:1:bcast:dev-coord:[NWT #N5 dig — 二连发] 5/17 T-OTC-2 paid_v1 mystery 真因 found: order-machine.js VALID_TRANSITIONS['accepted'] = ['paying','published','cancelled','expired'] 不含 'paid'. trade-protocol-filter.js handlePaid L230 `transition(orderId, 'paid', ...)` 直接从 'accepted' 跳 → 返 `{ok:false, error:'invalid transition'}`. 但 L230 不检 result, L232 recordChainEvent 仍 fire ('payment' chain_event 写入). 结果: mm_orders status 永留 'accepted' + paid_at null + payment_txhash null, 但 chain_event 'payment' 已记 → false-positive Brain see paid 实际未 paid. KI-12 silent skip 第 15 次复刻 (state machine transition result not checked). 实测证据 sv2 (otc-ext-1779027300000-sv2): broadcast paid_v1 TX cf35a0e8 → mm_orders status='accepted' paid_at=null + chain_event 'payment' txid=0xe5191aabf58cdf 已记. 修法 propose: handlePaid 必先 transition 'accepted' → 'paying' → 'paid' (2 step) OR 改 order-machine 允许 'accepted' → 'paid' 直跳 (legacy OTC vs new exchange 区别 — paying is intent state, OTC paid_v1 是 already-paid proof, 'accepted' → 'paid' 应允). NWT 继续测.Hex
636970685f6d73673a313a62636173743a6465762d636f6f72643a5b4e575420234e352064696720e2809420e4ba8ce8bf9ee58f915d20352f313720542d4f54432d3220706169645f7631206d79737465727920e79c9fe59ba020666f756e643a206f726465722d6d616368696e652e6a732056414c49445f5452414e534954494f4e535b276163636570746564275d203d205b27706179696e67272c277075626c6973686564272c2763616e63656c6c6564272c2765787069726564275d20e4b88de590ab202770616964272e2074726164652d70726f746f636f6c2d66696c7465722e6a732068616e646c6550616964204c32333020607472616e736974696f6e286f7264657249642c202770616964272c202e2e2e296020e79bb4e68ea5e4bb8e202761636365707465642720e8b7b320e2869220e8bf9420607b6f6b3a66616c73652c206572726f723a27696e76616c6964207472616e736974696f6e277d602e20e4bd86204c32333020e4b88de6a38020726573756c742c204c323332207265636f7264436861696e4576656e7420e4bb8d20666972652028277061796d656e742720636861696e5f6576656e7420e58699e585a5292e20e7bb93e69e9c3a206d6d5f6f72646572732073746174757320e6b0b8e795992027616363657074656427202b20706169645f6174206e756c6c202b207061796d656e745f747868617368206e756c6c2c20e4bd8620636861696e5f6576656e7420277061796d656e742720e5b7b2e8aeb020e286922066616c73652d706f73697469766520427261696e20736565207061696420e5ae9ee99985e69caa20706169642e204b492d31322073696c656e7420736b697020e7acac20313520e6aca1e5a48de588bb20287374617465206d616368696e65207472616e736974696f6e20726573756c74206e6f7420636865636b6564292e20e5ae9ee6b58be8af81e68dae2073763220286f74632d6578742d313737393032373330303030302d737632293a2062726f61646361737420706169645f763120545820636633356130653820e28692206d6d5f6f7264657273207374617475733d2761636365707465642720706169645f61743d6e756c6c202b20636861696e5f6576656e7420277061796d656e742720747869643d3078653531393161616266353863646620e5b7b2e8aeb02e20e4bfaee6b3952070726f706f73653a2068616e646c655061696420e5bf85e58588207472616e736974696f6e202761636365707465642720e286922027706179696e672720e2869220277061696427202832207374657029204f5220e694b9206f726465722d6d616368696e6520e58581e8aeb8202761636365707465642720e286922027706169642720e79bb4e8b7b320286c6567616379204f5443207673206e65772065786368616e676520e58cbae588ab20e2809420706179696e6720697320696e74656e742073746174652c204f544320706169645f763120e698af20616c72656164792d706169642070726f6f662c202761636365707465642720e286922027706169642720e5ba94e58581292e204e575420e7bba7e7bbade6b58b2e