hiero-ledger / hiero-ledger/hiero-consensus-node

CLPR-8.4: Besu Transaction Submission and Gas Management

Open
#24,555 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
406
Forks
226
Avg merge
3d 4h
Merged PRs (30d)
210

Description

## Story CLPR-8.4: Besu Transaction Submission and Gas Management

**Parent Epic:** CLPR-8: Besu Endpoint
**Repo:** TBD

### Objective

Construct and submit signed `submitBundle()` transactions with EIP-1559 gas pricing.

### Acceptance Criteria

- **AC-1:** Pre-verification via read-only `eth_call` on verifier.
- **AC-2:** ABI-encoded `submitBundle(bytes32, bytes, bytes)` call.
- **AC-3:** `NonceTracker` for concurrent nonce management (shared across Connections).
- **AC-4:** Gas estimation with safety margin. EIP-1559 pricing with configurable max gas cap.
- **AC-5:** Submit via `TransactionPoolService.addLocalTransaction()`.
- **AC-6:** Retry: exponential backoff on transient failures. No retry on permanent revert.
- **AC-7:** Duplicate awareness: if another endpoint submitted, revert is normal.
- **AC-8:** Metrics: submission count, gas used, latency, success/failure.

### Dependencies

- CLPR-8.1 (`TransactionPoolService`)
- CLPR-8.3 (pre-verification)

### Risk

**Medium** — Nonce management with concurrency. Gas pricing tuning.

Contributor guide

Open the contributing guide

Research direction

Start by locating the CLPR-8.1 TransactionPoolService and its addLocalTransaction() entry point, then review the CLPR-8.3 pre-verification dependency and the proposed NonceTracker. The work is done when all eight acceptance criteria are covered, including EIP-1559 gas handling, retries, duplicate awareness, and submission metrics.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
blockchain
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.