All checks were successful
Cross-Node Transaction Testing / transaction-test (push) Successful in 5s
Deploy to Testnet / deploy-testnet (push) Successful in 1m9s
Documentation Validation / validate-docs (push) Successful in 8s
Documentation Validation / validate-policies-strict (push) Successful in 3s
Multi-Node Stress Testing / stress-test (push) Successful in 10s
Node Failover Simulation / failover-test (push) Successful in 9s
2.7 KiB
2.7 KiB
Scenario Validation Guide
Scope: All scenario documents in docs/scenarios/
Goal: Ensure every scenario is tested with scripts that exercise all 3 nodes: aitbc1, aitbc, and gitea-runner.
🧭 Node Roles
-
aitbc1- Genesis authority node
- Primary blockchain node for genesis, sync, and chain-state validation
-
aitbc- Follower / local integration node
- Used for cross-node transaction, wallet, and application-flow checks
-
gitea-runner- CI / automation node
- Used to verify the scenario can run in the same environment as the workflows
🧪 Canonical Validation Scripts
Use these scripts as the baseline when validating scenarios:
-
Bootstrap the multi-node environment
scripts/workflow/setup_multinode_blockchain.sh
-
Two-node blockchain smoke tests
scripts/workflow/25_comprehensive_testing.shscripts/workflow/31_consensus_testing.sh
-
Full 3-node scenario harness
scripts/workflow/44_comprehensive_multi_node_scenario.sh
-
Multi-Chain Island Architecture test
scripts/workflow/46_multi_chain_island_test.sh
✅ Validation Rule for Scenario Docs
Every scenario document should include a short validation section that answers:
- Which script validates this scenario?
- Which of the 3 nodes are exercised?
- What success criteria should be checked?
If a scenario is node-specific, note where each step runs:
aitbc1for genesis, primary chain, or authority actionsaitbcfor local/follower actionsgitea-runnerfor CI-side execution or third-node coverage
📝 Recommended Scenario Validation Block
Add a section like this to each scenario document:
## 🧪 Validation
Validate this scenario with the 3-node harness:
```bash
bash scripts/workflow/44_comprehensive_multi_node_scenario.sh
```
**Node coverage**:
- `aitbc1`: genesis / primary node checks
- `aitbc`: follower / local node checks
- `gitea-runner`: automation / CI node checks
**Expected result**:
- Scenario-specific commands complete successfully
- Cross-node health checks pass
- Blockchain heights remain in sync
- Any node-specific step is documented in the scenario workflow
🔁 Workflow for Scenario Testing
- Bring up the multi-node environment.
- Run the scenario-specific commands from the document.
- Execute the 3-node validation harness.
- Confirm the scenario behaves consistently on all 3 nodes.
- Record any node-specific exceptions in the scenario document.
📌 Notes
- The 3-node script is the preferred canonical validation path.
- The smaller blockchain scripts are still useful for focused smoke tests.
- Scenario docs should link back here so the validation approach stays consistent.