Skip to content

Say what the coverage matrix actually means, in ticks and dashes - #269

Merged
fstubner merged 1 commit into
mainfrom
fix/coverage-matrix-truth
Aug 28, 2026
Merged

fstubner merged 1 commit into
mainfrom
fix/coverage-matrix-truth

Conversation

@fstubner

Copy link
Copy Markdown
Owner

Two of the open items: the matrix should use ticks and dashes, and several of its cells were wrong about why something was absent.

It presented four programs. Three are one binary.

netscli with a command is the CLI, with no command it opens the terminal UI, and netscli serve starts the MCP server. Installing one installs all three; the desktop app is the only separate download.

That is now stated above the table, because without it a dash in the MCP column reads as "you need another install for that" — which is never true.

Rows that conflated two things

  • "Setup and doctor" was one row for two commands: netscli setup is an interactive wizard, netscli doctor is a headless capability report that works on every build. Split.
  • "ARP neighbor cache" was one row for reading the table and changing it. The MCP server reads it and deliberately cannot change it — that needs administrator rights and edits machine state. Split, with the reason given.

Dashes that meant "not applicable", not "missing"

  • Result bundles are the desktop app's own save format. --json on the CLI, /export in the TUI and JSON-RPC over MCP are the equivalent, so Structured output is a tick on all four with a note on what it means on each.
  • Reverse DNS over MCP works — dns_lookup takes a PTR record. What is missing is passing an address directly rather than an in-addr.arpa name.

Dashes that are real gaps, now labelled as such

  • Trace route has no MCP tool, and everything it needs is already in the core.

Also corrected

The build-availability section claimed the desktop app hides tools whose feature is absent from the build. Since #259 it greys Packet Capture with an explanation instead — a tool that vanishes leaves nowhere to say why.

The per-surface prose below the table was rewritten to name the actual commands (netscli setup, netscli doctor, netscli serve, netscli mcp-service, the TUI's slash commands) rather than describe them abstractly, and the MCP section now mentions that results are bounded before a model sees them.

Verified from the built page

19 rows · ticks and dashes rendering · legend present · table still inside its horizontal scroll wrapper with no page overflow at 500px or 1440px · astro check 0 errors · a11y 0 violations in both themes.

Every cell was checked against the real surfaces rather than the old table: netscli --help for the CLI, the TUI's slash-command list, the GUI tool registry, and the MCP tools/list names.

Yes/No became ✓/– with a legend, and several cells that said No were wrong
about why.

The table presented four programs. Three of them are one binary: `netscli`
with a command is the CLI, with no command it opens the terminal UI, and
`netscli serve` starts the MCP server. Installing one installs all three. The
page now says so before the table, because otherwise a dash in the MCP column
reads as "you need another install for that", which is never true.

"Setup and doctor" was one row for two different commands -- an interactive
first-run wizard and a headless capability report that works on every build.
Split.

"ARP neighbor cache" was one row for reading the table and changing it. The
MCP server can read it and deliberately cannot change it: that needs
administrator rights and edits machine state. Split, with the reason.

Two dashes that were really "not applicable" now say which:

- Result bundles are the desktop app's save format. The CLI's `--json`, the
  TUI's `/export` and MCP's JSON-RPC results are the equivalent, not an
  absence -- so "Structured output" is a tick on all four and the row says
  what it means on each.
- Reverse DNS over MCP works through `dns_lookup` with a PTR record; what is
  missing is the convenience of passing an address.

Two are genuine gaps and are labelled as such: trace route has no MCP tool,
and everything it needs is already in the core.

The build-availability section said the desktop app hides tools whose feature
is absent. It greys Packet Capture with an explanation instead, since #259 --
a tool that vanishes leaves nowhere to say why.

Verified from the built page: 19 rows, ticks and dashes rendering, legend
present, table still inside its horizontal scroll wrapper with no page
overflow at 500px or 1440px. astro check 0 errors, a11y 0 violations.
@github-actions

Copy link
Copy Markdown
Contributor

Site preview: https://pr-269.netscli-site-preview.pages.dev

Built from 1af1566 with NETSCLI_PREVIEW=1 — noindex, and analytics disabled so it does not report into netscli.com's numbers.

Production is unaffected: netscli.com is served from GitHub Pages via pages.yml, which is manual-only.

@fstubner
fstubner merged commit 3c97914 into main Aug 28, 2026
14 checks passed
@fstubner
fstubner deleted the fix/coverage-matrix-truth branch August 28, 2026 18:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant