-
Notifications
You must be signed in to change notification settings - Fork 12
Open
Labels
github_actionsPull requests that update Github Actions code.Pull requests that update Github Actions code.
Description
Summary
The TCK CI has been updated to utilize Hiero Solo and parallel testing for SDK compatibility tests. The GitHub repository's branch protection rules need to be updated to reflect these changes by removing the old legacy tests from the required status checks and adding the new Solo-based compatibility tests.
Background
All Hiero SDKs are being updated to use Solo for testing. The TCK now has new compatibility test workflows that:
- Use Hiero Solo (
hiero-solo-action) instead of the legacy@hashgraph/hedera-local - Run tests against the latest stable consensus node version
- Support configurable SDK versions, Solo versions, and consensus node versions
- Are called via the orchestrator workflow
compatibility.yml
Current State
Legacy Tests (Old)
The following workflow runs individual test suites in a matrix using the old @hashgraph/hedera-local setup:
| Workflow | File | Description |
|---|---|---|
Run TCK Test Suites in Parallel |
test_regression.yml |
Matrix of 42 individual test suites using legacy hedera-local |
New Compatibility Tests (Solo-Based)
The new workflows use Hiero Solo for a more production-like testing environment:
| Workflow | File | Description |
|---|---|---|
SDK Compatibility Testing |
compatibility.yml |
Orchestrator workflow |
System Compatibility (JS SDK) |
js_compatibility.yml |
JS SDK tests with Solo |
System Compatibility (Java SDK) |
java_compatibility.yml |
Java SDK tests with Solo |
System Compatibility (GO SDK) |
go_compatibility.yml |
Go SDK tests with Solo |
System Compatibility (CPP SDK) |
cpp_compatibility.yml |
CPP SDK tests with Solo |
Requested Changes
Remove from Required Status Checks
- All individual test suite jobs from
test_regression.yml(e.g.,AccountCreate,TokenCreate,TransferHbar, etc.) - Any other legacy test jobs that may be marked as required
Add as Required Status Checks
-
js-compatibility / System Compatibility (JS SDK)- Most up-to-date, passing -
java-compatibility / System Compatibility (Java SDK)- Most up-to-date, passing
Keep as Required (PR Checks)
-
Title Checkfrompr_check.yml -
Assignee Checkfrompr_check.yml
Action Items
- Navigate to Repository Settings → Branches → Branch protection rules → Edit rule for
main - Under "Require status checks to pass before merging":
- Remove all individual test suite checks from
test_regression.yml - Add
js-compatibility / System Compatibility (JS SDK) - Add
java-compatibility / System Compatibility (Java SDK)
- Remove all individual test suite checks from
- After Go SDK failing tests are fixed:
- Add
go-compatibility / System Compatibility (GO SDK)
- Add
Related
- PR updating CI to use Solo and parallel testing (feat: replace test_regression workflow with Solo-based SDK compatibility testing #608)
Notes
- The legacy
test_regression.ymlworkflow can potentially be removed entirely once the new compatibility tests are verified as stable - CPP SDK compatibility tests are available but may need verification before being marked as required
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
github_actionsPull requests that update Github Actions code.Pull requests that update Github Actions code.