Files
xahaud/hook/tts.h
Nicholas Dudfield 985a194bdc feat(export): migrate to retriable ttEXPORT with proposal-based sigs
Replace the old ltEXPORTED_TXN + ttEXPORT_FINALIZE (validation-based
sigs, TxQ injection) approach with a retriable ttEXPORT that collects
validator signatures via TMProposeSet during consensus.

Added:
- terRETRY_EXPORT: keeps tx in retry set across ledger boundaries
- tecEXPORT_EXPIRED (200): LLS expiry frees sequence cleanly
- sfExportResult (OBJECT 98): signed export result in tx metadata
- ExportSigCollector: minimal thread-safe sig tracker
- Proposal sig attachment (RCLConsensus) + harvesting (PeerImp)
- exportSignatures field in TMProposeSet (ripple.proto)
- Metadata plumbing (TxMeta, ApplyViewImpl, ApplyStateTable)
- Hook xport() now emits ttEXPORT via normal emitted txn path

Removed:
- ttEXPORT_FINALIZE (type 90) pseudo-tx and Change::applyExportFinalize
- ltEXPORTED_TXN ledger entry and exportedDir/exportedTxn keylets
- ExportSignatureCollector (replaced by ExportSigCollector)
- TxQ export injection (quorum check + rawTxInsert)
- Validation-based export signing in RCLConsensus
- Application::getExportSignatureCollector

Verified on 5-node testnet: golden path (same-ledger finalization with
ExportResult in metadata), degraded path (tecEXPORT_EXPIRED on sub-quorum),
and hook xport() path (emitted ttEXPORT with shadow ticket creation).
2026-03-18 09:23:52 +07:00

79 lines
2.2 KiB
C

// For documentation please see: https://xrpl-hooks.readme.io/reference/
// Generated using generate_tts.sh
#define ttPAYMENT 0
#define ttESCROW_CREATE 1
#define ttESCROW_FINISH 2
#define ttACCOUNT_SET 3
#define ttESCROW_CANCEL 4
#define ttREGULAR_KEY_SET 5
#define ttOFFER_CREATE 7
#define ttOFFER_CANCEL 8
#define ttTICKET_CREATE 10
#define ttSIGNER_LIST_SET 12
#define ttPAYCHAN_CREATE 13
#define ttPAYCHAN_FUND 14
#define ttPAYCHAN_CLAIM 15
#define ttCHECK_CREATE 16
#define ttCHECK_CASH 17
#define ttCHECK_CANCEL 18
#define ttDEPOSIT_PREAUTH 19
#define ttTRUST_SET 20
#define ttACCOUNT_DELETE 21
#define ttHOOK_SET 22
#define ttNFTOKEN_MINT 25
#define ttNFTOKEN_BURN 26
#define ttNFTOKEN_CREATE_OFFER 27
#define ttNFTOKEN_CANCEL_OFFER 28
#define ttNFTOKEN_ACCEPT_OFFER 29
#define ttCLAWBACK 30
#define ttAMM_CLAWBACK 31
#define ttAMM_CREATE 35
#define ttAMM_DEPOSIT 36
#define ttAMM_WITHDRAW 37
#define ttAMM_VOTE 38
#define ttAMM_BID 39
#define ttAMM_DELETE 40
#define ttURITOKEN_MINT 45
#define ttURITOKEN_BURN 46
#define ttURITOKEN_BUY 47
#define ttURITOKEN_CREATE_SELL_OFFER 48
#define ttURITOKEN_CANCEL_SELL_OFFER 49
#define ttXCHAIN_CREATE_CLAIM_ID 50
#define ttXCHAIN_COMMIT 51
#define ttXCHAIN_CLAIM 52
#define ttXCHAIN_ACCOUNT_CREATE_COMMIT 53
#define ttXCHAIN_ADD_CLAIM_ATTESTATION 54
#define ttXCHAIN_ADD_ACCOUNT_CREATE_ATTESTATION 55
#define ttXCHAIN_MODIFY_BRIDGE 56
#define ttXCHAIN_CREATE_BRIDGE 57
#define ttDID_SET 58
#define ttDID_DELETE 59
#define ttORACLE_SET 60
#define ttORACLE_DELETE 61
#define ttLEDGER_STATE_FIX 62
#define ttMPTOKEN_ISSUANCE_CREATE 63
#define ttMPTOKEN_ISSUANCE_DESTROY 64
#define ttMPTOKEN_ISSUANCE_SET 65
#define ttMPTOKEN_AUTHORIZE 66
#define ttCREDENTIAL_CREATE 67
#define ttCREDENTIAL_ACCEPT 68
#define ttCREDENTIAL_DELETE 69
#define ttNFTOKEN_MODIFY 70
#define ttPERMISSIONED_DOMAIN_SET 71
#define ttPERMISSIONED_DOMAIN_DELETE 72
#define ttEXPORT 91
#define ttCRON 92
#define ttCRON_SET 93
#define ttREMARKS_SET 94
#define ttREMIT 95
#define ttGENESIS_MINT 96
#define ttIMPORT 97
#define ttCLAIM_REWARD 98
#define ttINVOKE 99
#define ttAMENDMENT 100
#define ttFEE 101
#define ttUNL_MODIFY 102
#define ttEMIT_FAILURE 103
#define ttUNL_REPORT 104
#define ttCONSENSUS_ENTROPY 105