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

CLPR: HAPI Dual-Network Test Harness

Open
#20,174 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

# Goal
Enable CLPR-focused HAPI tests that orchestrate two independent ledgers in-process, validate dynamic address-book changes, wait for TSS-ledger IDs, and exercise CLPR state exchanges end-to-end.

# Sub-Issues / Workstreams
- [ ] **#20409 – CLPR HAPI: Isolated Dual-Network Harness**
- Implement the new `SubProcessNetworkBuilder.newIsolatedNetwork(...)` and `DualNetworkEnvironment` utilities.
- Provide initial ClprSuite smoke tests that boot two ledgers concurrently and assert they reach `ACTIVE`.
- [ ] **#20463 – CLPR HAPI: TSS Ledger-ID Gating & Multi-Network Clients**
- Extend HAPI clients with `waitForLedgerId(...)` semantics and outage simulation helpers.
- Add ClprSuite coverage that blocks until TSS-derived ledger IDs exist on both networks.
- [ ] **#20464 – CLPR HAPI: Dynamic Address-Book Rotation & Validation**
- Add DSL verbs for add/remove/update node (“DAB”) workflows and verify ledger IDs survive restarts.
- Record-before/after snapshots in ClprSuite to confirm the roster mutations.
- [ ] **(NEW)** CLPR HAPI: Cross-Ledger Exchange & Resilience DSL — implement the CLPR exchange helpers, timestamp assertions, and post-rotation regression tests.

# Completion Criteria
- ClprSuite contains representative tests for each workstream (smoke, DAB rotation, TSS gating, CLPR exchanges).
- Dual-network harness utilities are reusable by future CLPR issues.
- Documentation in `docs/dev/clpr-dual-network-testing.md` stays aligned with the implemented DSL.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.