Skip to content

v0.7.0

Latest

Choose a tag to compare

@github-actions github-actions released this 21 Jun 22:47
· 1 commit to master since this release

Added

  • First-run orientation on the home screen. A fresh launch (or any time there
    are no recent items yet) now lands on an oriented getting-started panel — /
    search, j/k ↵ browse a kind from the rail, D dashboard, T prefix tree, ?
    help — instead of a bare "Press / to search". Returning users with recents are
    unaffected.
  • Connection status at launch, and a recoverable connection banner. A
    successful start shows a connected to NetBox vX.Y confirmation in the footer. A
    connection or auth failure (bad token, unreachable host) no longer hard-exits
    before the TUI opens — it launches with an actionable banner ("Press S to edit
    the profile or set NBOX_TOKEN"), so you fix the profile in-app and reconnect
    without re-running the binary. A server below the supported NetBox floor stays a
    hard, explicit error.
  • Edit the active connection from the Settings modal. The Config modal's
    Settings section gains a Connection category for the active profile's
    page_size, timeout_secs, exclude_config_context, and the per-surface
    [api] vrf / route_target backends (rest/graphql). Saving a change
    persists it to the profile (format-preserving) and reconnects so it takes effect
    live. The profile editor still manages every profile; Settings is the quick-tweak
    surface for the active one.

Performance

  • Prefix detail loads its child prefixes and contained IPs concurrently — one
    combined fetch after the prefix header instead of two sequential round-trips.
  • Search resolves the --scope and --vrf references concurrently before the
    multi-endpoint fan-out, so a scoped + VRF-filtered search pays one resolution
    tail instead of two.

Internal

  • Deepened machine-facing contract tests: strict response-shape pins for the MCP
    nbox_next_ip / nbox_next_prefix / nbox_cache_clear / nbox_journal /
    nbox_list_tags tools, and CSV RFC-4180 quoting verified through the compiled
    binary.
  • Refactors with no behavior change: bundled the profile-edit-form arguments
    (ProfileFormData), shared one HTTP 429 retry policy across the REST and GraphQL
    paths, and slimmed persist_profile's signature.
  • Dependency maintenance: sha2 0.11, several GitHub Actions bumps, and the Rust
    toolchain pinned to the project MSRV (1.88) so CI keeps a low support floor.

What's Changed

  • chore(deps): bump docker/build-push-action from 6 to 7 by @dependabot[bot] in #44
  • chore(deps): bump actions/download-artifact from 4 to 8 by @dependabot[bot] in #42
  • chore(deps): bump actions/checkout from 6 to 7 by @dependabot[bot] in #43
  • chore(deps): bump docker/metadata-action from 5 to 6 by @dependabot[bot] in #40
  • perf(detail): fetch prefix children and IPs concurrently by @lance0 in #48
  • chore(deps): ignore dtolnay/rust-toolchain bumps (deliberate MSRV floor) by @lance0 in #49
  • feat(tui): orient the empty home screen for first-run users by @lance0 in #50
  • chore(deps): bump sha2 from 0.10.9 to 0.11.0 in the rust-dependencies group across 1 directory by @dependabot[bot] in #45
  • refactor: bundle profile-edit-form args; share the 429-retry policy by @lance0 in #51
  • feat(tui): recoverable connect banner + connected cue at startup by @lance0 in #52
  • test: deepen CSV + MCP response-shape contracts by @lance0 in #53
  • feat(tui): connection knobs in the Settings modal with hot-apply by @lance0 in #54
  • refactor: persist_profile takes ProfileFormData; pin journal author key by @lance0 in #55
  • feat(tui): api backends in the Settings Connection category by @lance0 in #56
  • perf(search): resolve scope and VRF concurrently by @lance0 in #57

Full Changelog: v0.6.0...v0.7.0