Summary
The ArkivModule.execute() method is fundamentally broken for the Braga testnet. It attempts to send ABI-encoded smart contract calls to 0x4400...0044 (EntityRegistry), where no contract exists. The Braga node expects raw Golem Base storage transactions to the system address 0x0000...61726b6976 ("arkiv").
Environment
- arkiv-sdk version: 1.0.0b3.dev0
- Network: Braga Testnet
Root Cause
The SDK's execute() method uses the contract.functions.execute(ops).transact() path, which results in:
- To Address:
0x4400...0044 (No bytecode deployed on Braga)
- Calldata: ABI-encoded
execute(ops)
- Result: Revert with "non-golembase transaction"
Proof of Concept / Expected Behavior
A manual transaction sending raw Golem Base encoding to 0x0000...61726b6976 succeeds:
- To Address:
0x0000...61726b6976 (System-level handler)
- Calldata: 47 bytes raw Golem Base encoding
- Result: Success (21740 gas,
EntityCreated event emitted)
- Tx Hash:
0xc2ee...af37
Misleading Error
non_golem_base_transaction_error - The problem is the transaction format, not the SDK version.
Required Fix
ArkivModule.execute() needs to:
- Send transactions to
0x0000...61726b6976 instead of 0x4400...0044.
- Use raw Golem Base encoding instead of ABI encoding.
PLEASE ADVISE
Summary
The
ArkivModule.execute()method is fundamentally broken for the Braga testnet. It attempts to send ABI-encoded smart contract calls to0x4400...0044(EntityRegistry), where no contract exists. The Braga node expects raw Golem Base storage transactions to the system address0x0000...61726b6976("arkiv").Environment
Root Cause
The SDK's
execute()method uses thecontract.functions.execute(ops).transact()path, which results in:0x4400...0044(No bytecode deployed on Braga)execute(ops)Proof of Concept / Expected Behavior
A manual transaction sending raw Golem Base encoding to
0x0000...61726b6976succeeds:0x0000...61726b6976(System-level handler)EntityCreatedevent emitted)0xc2ee...af37Misleading Error
non_golem_base_transaction_error - The problem is the transaction format, not the SDK version.
Required Fix
ArkivModule.execute()needs to:0x0000...61726b6976instead of0x4400...0044.PLEASE ADVISE