179 Commits

Author SHA1 Message Date
andrussal
30b9950449 chore: rebrand to Logos and refresh docs 2025-12-20 10:05:21 +01:00
andrussal
d4958b5b1a workflows: split capture task setup
Refactors long expectation capture functions into phase helpers.

- DaWorkloadExpectation::start_capture
  - Before: planned channel math + shared state init + 2 spawned tasks + state install in one method.
  - After: planned_channel_ids/build_capture_state/spawn_run_block_counter/spawn_da_capture.

- TxInclusionExpectation::start_capture
  - Before: wallet/plan validation + tracked set build + capture loop in one method.
  - After: build_capture_plan/spawn_tx_inclusion_capture/capture_tx_outputs.
2025-12-19 01:55:17 +01:00
andrussal
870280e354 cfgsync: split repo/provider phases
Refactors long cfgsync helpers into smaller steps.

- ConfigRepo::run
  - Before: wait/timeout + lock draining + config generation + per-host response sending in one block.
  - After: wait_for_hosts_with_timeout/take_waiting_hosts/generate_node_configs/
    send_error_to_all/send_timeout_to_all/send_configs_to_all_hosts.

- try_create_providers
  - Before: mixed validation + duplicated locator parsing for DA/Blend.
  - After: validate_provider_inputs/build_da_providers/build_blend_providers/locator_for_host.
2025-12-19 01:48:50 +01:00
andrussal
938d782f8d deployers: split orchestrator and asset phases
Refactors long deployer functions into smaller phase helpers.

- k8s deploy_with_observability
  - Before: env/capability observability merge + cluster setup + client/telemetry/block feed init + endpoint printing + Runner construction.
  - After: resolve_observability_inputs/init_kube_client/build_node_clients_or_fail/
    build_telemetry_or_fail/spawn_block_feed_or_fail/maybe_print_endpoints/finalize_runner.

- k8s prepare_assets/build_values
  - Before: cfgsync render + tempdir + script/KZG/chart/values resolution in one function; duplicated validator/executor env building.
  - After: create_assets_tempdir/render_and_write_cfgsync/resolve_kzg_path/
    render_and_write_values/testnet_image + build_node_group/build_node_values.

- k8s install_release
  - Before: mixed KZG arg resolution + long CLI arg chain + debug logging.
  - After: resolve_kzg_install_args/build_install_command/maybe_log_install_output.

- compose DeploymentOrchestrator::deploy
  - Before: env/cap observability merge + readiness + endpoint logging/printing + Runner construction.
  - After: resolve_observability_inputs/wait_for_readiness_or_grace_period/
    log_observability_endpoints/maybe_print_endpoints.
2025-12-19 01:41:07 +01:00
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