hashgraph / hashgraph/solo-weaver

Story 4.7 — Operator verify (`network shape watch`) + restore last-stable

Open
#784 0 comments 0 reactions 0 assignees View on GitHub
BN order: polish Story
Dominant language
Go
Stars
3
Forks
0
Avg merge
3d 2h
Merged PRs (30d)
46

Description

**Epic:** #740 — Validation, rollback & observability

Design: [v4 design](https://github.com/automa-saga/traffic-shaper/blob/main/docs/bn-qos-multiclass-priority-design-v4-nft-priority.md) §8.4.3 (`shape show`), §11 (Validation and rollback).

Two operator-facing day-2 capabilities raised in the planning notes (13, 15) that go beyond the daemon's automatic per-poll rollback (#767):

1. **Verify shaping is working (note 15).** A way for the node operator to confirm traffic is actually being shaped/classified, e.g. `network shape watch` that samples `tc -s class show dev ` over a window and reports per-class byte/rate/overlimit deltas (rate-over-time), complementing the Prometheus counters (#769) which target dashboards rather than an operator at a terminal.
2. **Restore last-stable on demand (note 13).** An explicit operator command to restore the last-known-good network settings (`nft -f weaver-prev.conf` + re-render), distinct from the automatic per-poll auto-rollback in #767 — for the case where an operator wants to manually revert after a bad manual change.

**Acceptance criteria:**
- `network shape watch [--device|--class] [--interval]`: periodic `tc -s class show` sampling, prints per-class rate/overlimits over time; read-only.
- An operator-facing restore path that reverts the `inet weaver` table (and tc, if needed) to last-known-good and re-applies.
- Both documented in the `network` command docs (#761).

Fast-follow.

Contributor guide

Open the contributing guide

Research direction

Start with docs/bn-qos-multiclass-priority-design-v4-nft-priority.md sections 8.4.3 and 11, then review the network command docs tracked in #761. Define the watch sampling and operator restore entry points around the stated tc and nft commands. Done means both read-only watching and last-stable restoration work as specified and are documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
cli, networking
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.