175 Commits

Author SHA1 Message Date
andrussal
30a18710da configs: split config construction phases
Refactors long config builders into small, intent-named helpers.

- create_general_configs_with_blend_core_subset
  - Before: validation + id/port gen + component config build + provider/genesis + kms + per-node assembly.
  - After: validate_node_counts/generate_ids_and_ports/collect_blend_core_providers/
    apply_consensus_genesis_tx/build_kms_configs/build_general_configs.

- build_blend_service_config
  - Before: mixed constants parsing + user/deployment/network settings build.
  - After: message_frequency_per_round/build_blend_user_config/
    build_blend_deployment_settings/build_network_deployment_settings.

- create_validator_config/create_executor_config
  - Before: large struct literals mixing deployment, DA network, storage, dispersal.
  - After: deployment helpers + backend/settings helpers to keep top-level constructor readable.

- create_genesis_tx_with_declarations
  - Before: inscription + op building + proof signing + tx wrapping in one block.
  - After: build_genesis_inscription/build_genesis_ops/build_genesis_ops_proofs/build_genesis_tx.
2025-12-19 00:50:20 +01:00
andrussal
4d2c4c77e4 core: split topology build/readiness phases
Refactors long functions into small helpers without behavior changes.

- TopologyBuilder::build
  - Before: validation + base config build + provider/genesis wiring + node descriptor assembly.
  - After: participant_count/resolve_and_validate_vectors/collect_provider_infos/
    create+apply_consensus_genesis_tx/build_node_descriptors.

- GeneratedTopology::wait_remote_readiness
  - Before: endpoint assertions + network readiness + membership endpoint selection.
  - After: collect_node_endpoints/wait_for_network_readiness/
    collect_membership_endpoints/testing_base_url.

- NetworkReadiness::collect + MembershipReadiness::collect
  - Before: duplicated validator/executor join_all blocks.
  - After: collect_validator_statuses/collect_executor_statuses helpers.

- spawn_node
  - Before: mixed config IO + process spawn + readiness polling.
  - After: write_node_config/spawn_node_process/wait_for_consensus_readiness.
2025-12-19 00:05:32 +01:00
andrussal
a1e0dddea3 workflows: remove panics from workloads 2025-12-18 23:10:22 +01:00
andrussal
14148221eb workflows: avoid panics in scenario builders 2025-12-18 23:05:20 +01:00
andrussal
07ee5bcd20 compose: avoid panics in cleanup and block feed 2025-12-18 23:01:24 +01:00
andrussal
7dea766801 cfgsync: remove panics and blocking mutex 2025-12-18 22:59:16 +01:00
andrussal
ecdbb3a171 core: make scenario initialization fallible 2025-12-18 22:52:53 +01:00
andrussal
47b4e8531d core: make scenario/topology building fallible 2025-12-18 22:48:45 +01:00
andrussal
4da09bfe85 core: avoid Url parse expect in topology readiness 2025-12-18 22:28:37 +01:00
andrussal
5bcdb6a1c9 core: remove deprecated membership panic helper 2025-12-18 22:27:52 +01:00
andrussal
a6bd57e1cf core: remove panics from ApiClient testing paths 2025-12-18 22:26:43 +01:00
andrussal
132c8d823e core: make node spawning fallible 2025-12-18 22:23:02 +01:00
andrussal
e16a169bbb configs: remove remaining unwrap/expect in topology configs 2025-12-18 22:16:42 +01:00
andrussal
b150c584c0 configs: remove unwrap/expect from node configs 2025-12-18 22:14:55 +01:00
andrussal
17180d8c37 configs: make consensus/genesis generation fallible 2025-12-18 22:12:28 +01:00
andrussal
c46f815293 configs: remove unwrap/expect from DA configs 2025-12-18 22:04:28 +01:00
andrussal
e841809d50 configs: make network config generation fallible 2025-12-18 22:02:25 +01:00
andrussal
9f403bf235 configs: remove ProviderId unwrap 2025-12-18 22:01:07 +01:00
andrussal
9b2cfeadfe configs: avoid SocketAddr parse unwrap 2025-12-18 21:59:40 +01:00
andrussal
347d72950d k8s: avoid blocking port-forwarding in async 2025-12-18 21:21:07 +01:00
andrussal
9392280127 k8s: remove panics from runner invariants 2025-12-18 21:17:26 +01:00
andrussal
e66a813e05 tests: add cfgsync/topology parity checks 2025-12-18 21:01:24 +01:00
andrussal
b9741f8d03 config: share base config generator 2025-12-18 20:33:37 +01:00
andrussal
ef5c59700d cfgsync: apply node config injection on client 2025-12-18 20:13:23 +01:00
andrussal
bd910953c0 kzg: unify params spec across runners 2025-12-18 20:01:27 +01:00
andrussal
027fd598a7 env: centralize NOMOS/POL env var parsing 2025-12-18 18:19:38 +01:00
andrussal
4a47024a11 config: return Result from api/network config builders 2025-12-18 18:08:53 +01:00
andrussal
128e073ed8 config: add shared topology invariants validator 2025-12-18 18:02:50 +01:00
andrussal
2c0f1b1acc Merge branch 'refactor/decouple-observability' 2025-12-18 17:33:30 +01:00
andrussal
222436ed8d Reorganize scripts into subdirectories
Move helper scripts under scripts/{run,build,setup,ops,lib} and update all references across docs, CI, Docker, and Rust call sites.
2025-12-18 17:26:02 +01:00
andrussal
e7093df4e5 core: add non-panicking testing-endpoint APIs 2025-12-18 15:04:25 +01:00
andrussal
8a6d7236ef workflows: add try_* builder APIs for URLs and rates 2025-12-18 14:53:08 +01:00
andrussal
f0e9d2807b cfgsync: add typed config build errors and validation 2025-12-18 14:46:27 +01:00
andrussal
540ef9f9c2 configs: validate DA subnet ids and handle empty network layouts 2025-12-18 14:40:49 +01:00
andrussal
a582c00692 core: make readiness collectors resilient to HTTP errors 2025-12-18 14:27:49 +01:00
andrussal
91c9044abb refactor: remove embedded observability 2025-12-18 13:05:40 +01:00
andrussal
25dd0f1ac4 compose: reuse stack image build; drop runner.Dockerfile 2025-12-18 10:10:19 +01:00
andrussal
a8bf7e5006 stack: split test image Dockerfile 2025-12-18 09:58:47 +01:00
andrussal
d91fcc1d9d k8s: default KZG mode to inImage 2025-12-18 09:31:28 +01:00
andrussal
29d9b40d72 obs: drop grafana query url + simplify env vars 2025-12-18 09:23:39 +01:00
andrussal
15971dbae0 k8s: stabilize tx+DA workloads 2025-12-18 09:00:14 +01:00
andrussal
3a25c776b2 test: stabilize compose/k8s runners 2025-12-17 21:52:11 +01:00
andrussal
acaede4b81 k8s: restore KZG PV/PVC templates 2025-12-17 19:10:47 +01:00
andrussal
e05bf5e0bd refactor(observability): remove embedded prometheus/grafana
Deployers no longer provision Prometheus/Grafana; metrics query/ingest now come from explicit URLs via env/flags.
2025-12-17 18:28:36 +01:00
andrussal
96fcea1f96 workflows: retry tx submission
Also bump pinned NOMOS_NODE_REV.
2025-12-17 17:34:32 +01:00
andrussal
3965669f12 core: fix shared assets binary paths 2025-12-17 17:32:17 +01:00
andrussal
eca9711ad9 examples: add cucumber runners 2025-12-17 17:28:29 +01:00
andrussal
d6c79ed179 k8s runner: role-based metrics URLs 2025-12-17 17:04:41 +01:00
andrussal
884490e634 fix(scripts): stabilize bundle + runners smoke tests
- Fix rapidsnark rebuild path in setup-nomos-circuits (Docker linux builds)

- Fix compose template path after runners→deployers rename

- Make local_runner 30s host run a pure smoke test
2025-12-17 09:10:09 +01:00
andrussal
f451fd504d refactor(testing-framework): rename runners to deployers
- Update paths and orchestration for deployers (compose/k8s/local/docker)

- Consolidate scripts helpers and refresh book/README docs
2025-12-16 21:20:27 +01:00