Skip to content

Commit 54713b8

Browse files
authored
bump version to 0.26.0 (#3849)
1 parent 983499b commit 54713b8

3 files changed

Lines changed: 24 additions & 17 deletions

File tree

CHANGELOG.md

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,12 @@ All notable changes to this project will be documented in this file.
88

99
### Changes
1010

11+
## [v0.26.0](https://github.com/malbeclabs/doublezero/compare/client/v0.25.1...client/v0.26.0) - 2026-06-05
12+
13+
### Breaking
14+
15+
### Changes
16+
1117
- Onchain programs
1218
- Deprecate the `AccessPassStatus::Expired` access-pass status (renamed `ExpiredDeprecated`; discriminant `3` retained for wire compatibility). Access-pass epoch expiry no longer demotes users to `OutOfCredits`: `update_status` stops producing the status, and both `try_activate` (user creation) and `CheckUserAccessPass` (periodic re-check) keep users `Activated`. Epoch validity is still enforced at user creation for unicast users only; multicast publishers and subscribers are governed by `mgroup_*_allowlist`, not by epoch.
1319
- SDK
@@ -19,12 +25,13 @@ All notable changes to this project will be documented in this file.
1925
- Change `geolocation user update-payment` to `update-payment-status` for clarity.
2026
- geolocation `user get`: Show probe code, rather than probe pubkey in target list.
2127
- geolocation `probe get`: Show exchange code, rather than exchange pubkeys.
22-
- ci(e2e): report trusted fork e2e/shreds shard results onto the PR head SHA so branch protection's required `e2e (shard N)` / `shard-e2e (shard N)` checks are satisfied by a `/run-e2e` dispatch, removing the need for a maintainer to bypass the ruleset to merge fork PRs; also make the dispatcher's confirmation comment non-fatal so a capped `GITHUB_TOKEN` no longer fails the job after the runs have already launched (follow-up to [#3777](https://github.com/malbeclabs/doublezero/pull/3777))
23-
- Add `--json` output to `globalconfig feature-flags get` and `accesspass user-balances` per RFC-20 §Output. `feature-flags get` now renders a two-column (`flags`, `raw`) table by default instead of the prior `Enabled feature flags: <names> (raw: <N>)` / `No feature flags enabled (raw: <N>)` sentence.
2428
- Remove `env`/`argv` reads and `eprintln!` from the serviceability CLI module per RFC-20 §67. The keypair-source pre-flight check moves from a standalone `has_keypair_source()` (which read `std::env::args` and `stdin`) to a `CliCommand::has_keypair_source` method computed once by the binary at startup; diagnostic output in `check_id`, `check_balance`, `check_allowlist`, and `print_error` now routes through `tracing::error!` instead of writing to stderr directly.
29+
- Add `--json` output to `globalconfig feature-flags get` and `accesspass user-balances` per RFC-20 §Output. `feature-flags get` now renders a two-column (`flags`, `raw`) table by default instead of the prior `Enabled feature flags: <names> (raw: <N>)` / `No feature flags enabled (raw: <N>)` sentence.
30+
- CI
31+
- e2e: report trusted fork e2e/shreds shard results onto the PR head SHA so branch protection's required `e2e (shard N)` / `shard-e2e (shard N)` checks are satisfied by a `/run-e2e` dispatch, removing the need for a maintainer to bypass the ruleset to merge fork PRs; also make the dispatcher's confirmation comment non-fatal so a capped `GITHUB_TOKEN` no longer fails the job after the runs have already launched (follow-up to [#3777](https://github.com/malbeclabs/doublezero/pull/3777))
2532
- Tools
2633
- Complete the device-stress orchestrator (part 3): replace the stubbed agent runner with an SSH-backed runner that execs `doublezero-agent -verbose` on the DUT and tees its output to `orchestrator.agent.log`, and a log parser that turns the agent's commit-diff lines into `pre_commit_log` / `applied` runlog events. Adds `--dut-ssh-user` and `--no-agent` flags.
27-
- Add `tools/stress/device-observer/`, a per-device sampling tool for the GRE Tunnel Capacity Study. Each tick issues five eAPI `show` commands, scrapes the doublezero-agent Prometheus endpoint, polls EOS syslog via `show logging last` with cross-tick dedupe, tails the orchestrator's agent log for abort-trigger patterns, and tails the orchestrator's runlog to compute provision/deprovision durations. The abort decider evaluates the trigger list on every tick (provision/deprovision p95 and single-user thresholds, sustained CPU, agent error-counter increments, agent-log pattern matches, agent silence, ledger heartbeat staleness) and writes a JSON sentinel at `<working-dir>/abort` on the first match; the observer process then exits so the orchestrator's `abort.Watch` can archive. A `--force` flag is required to start over an existing sentinel from a previous run. The trigger consumes `<working-dir>/orchestrator.ledger_heartbeat` (file written by the orchestrator) when present; an absent file suppresses the heartbeat trigger so the contract is forward-compatible.
34+
- Add `tools/stress/device-observer/`, a per-device sampling tool that analyzes the output of the device-stress orchestrator and observer
2835
- Telemetry
2936
- Drop the redundant `ip-msdp-sa-cache` kind from the state-ingest server's default state-collect command list. `show ip msdp sa-cache rejected` already returns the full SA cache (accepted SAs in the `acceptedSaMsg` array plus any rejected SAs in `rejectedSaMsg`), so the bare `show ip msdp sa-cache` collection is redundant — devices were running both commands per tick and uploading the same accepted-SA data twice. The `ip-msdp-sa-cache-rejected` kind is retained.
3037
- Telemetry (geoprobe)

Cargo.lock

Lines changed: 13 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ exclude = [
2424
resolver = "2"
2525

2626
[workspace.package]
27-
version = "0.25.1"
27+
version = "0.26.0"
2828
authors = ["Malbec Labs <dev@malbeclabs.com>"]
2929
readme = "README.md"
3030
edition = "2021"

0 commit comments

Comments
 (0)