Breaking
- Multicast group change: Regeneration of all multicast group allowlists required, as allowlists are now stored within each Access Pass instead of at the multicast group level.
Changes
- CLI
- Added a wait in the
disconnectcommand to ensure the account is fully closed before returning, preventing failures during rapid disconnect/reconnect sequences. - Display multicast group memberships (publisher/subscriber) in AccessPass listings to improve visibility.
- Allow AccessPass creation without 'client_ip'
- Add 'allow_multiple_ip' argument to support AccessPass connections from multiple IPs
- Include validator pubkey in
exportoutput - Rename exchange.loc_id to exchange.bgp_community
- Added a wait in the
- Activator
- Reduce logging noise when processing snapshot events
- Wrap main select handler in loop to avoid shutdown on branch error
- Onchain programs
- Remove user-level allowlist management from CLI and admin interfaces; manage multicast group allowlists through AccessPass.
- Add Validate trait for core types (AccessPass, Contributor, Interface, etc.) and enforce runtime checks before account operations.
- Fix: resize AccessPass account before serialization to prevent errors; standardized use of resize_account_if_needed across processors.
- Internet telemetry
- Add circuit label to metrics; create a new metric for missing circuit samples
- Create a new metric that tracks how long it takes collector tasks to run
- Submit partitions of samples in parallel
- Include circuit label on submitter error metric
- Monitor
- Reduce logging noise in 2z oracle watcher
- Include response body on 2z oracle errors
- Collect contributors and exchanges into InfluxDB
- Device controller
- When a device is missing required loopback interfaces, provide detailed errors to agent instead of " not found". Also, log these conditions as warnings instead of errors, and don't emit "unknown pubkey requested" error metrics for these conditions
- Add device info as labels to
controller_grpc_getconfig_requests_totalmetric
- Device agents
- Submit device-link telemetry partitions in parallel
- Onchain programs
- Enable AccessPass with 'client_ip=0.0.0.0' to dynamically learn the user’s IP on first connection
- Enable AccessPass to support connections from multiple IPs (allowlist compatibility)
- Rename exchange.loc_id to exchange.bgp_community, and change it from u32 to u16
- Telemetry data API
- Filter by contributor and link type
- SDK/Go
- String serialization for exchanges status
- Exclude empty tags from influx serialization