net (10/12): Migrate CLI summaries, diagnostics and current node info - #767
Merged
Patrick W. Healy (phealy) merged 2 commits intoSep 23, 2026
Conversation
This was referenced Sep 16, 2026
Patrick W. Healy (phealy)
force-pushed
the
phealy/lightweight-status-cli-transport
branch
from
September 22, 2026 17:09
58c76d7 to
e2630c8
Compare
Copilot started reviewing on behalf of
Patrick W. Healy (phealy)
September 22, 2026 17:15
View session
Patrick W. Healy (phealy)
force-pushed
the
phealy/lightweight-status-cli-transport
branch
from
September 22, 2026 17:22
e2630c8 to
6926278
Compare
Contributor
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Unresolved critical transport/watch failures and moderate summary rendering, delta, and retry issues remain.
Get a fresh assessment by requesting another Copilot review.
Review effort: Lite
Findings: 2
Open (4)
What changed in this PR
Migrates the net CLI to lightweight summaries for list/watch and adds authenticated named-node diagnostic retrieval with legacy compatibility.
Changes:
- Adds summary decoding, polling, delta merging, and legacy projection.
- Adds detail polling, expiry handling, and aggregated transport.
- Updates status JSON compatibility and expands CLI/controller tests.
| File | Review summary |
|---|---|
cmd/kubectl-unbounded/app/net/watch.go |
Summary watch and delta processing. Critical (1 vote): initial subscriptions can remain blank without a full summary. Moderate: preserve cleared delta fields (2 votes), copy legacy sequence numbers (3 votes), and keep transient polling/retry failures non-fatal (1 vote each, three findings). |
cmd/kubectl-unbounded/app/net/summary_types.go |
Summary metadata models and compatibility adapters; no final comments. |
cmd/kubectl-unbounded/app/net/summary_poll_test.go |
Summary compatibility and polling tests; no final comments. |
cmd/kubectl-unbounded/app/net/node.go |
Summary list/show integration. Moderate: normalize summary tones for list/watch (1 vote), preserve network fields (1 vote), and align legacy projection status semantics (1 vote). |
cmd/kubectl-unbounded/app/net/node_render.go |
Summary-based node rendering. Moderate: normalize controller tones before colorization (1 vote). |
cmd/kubectl-unbounded/app/net/node_detail_command_test.go |
Named-node command coverage; no final comments. |
cmd/kubectl-unbounded/app/net/detail_poll_test.go |
Diagnostic polling and expiry tests; no final comments. |
cmd/kubectl-unbounded/app/net/detail_client.go |
Diagnostic transport. Critical: non-2xx aggregated responses can suppress the port-forward fallback; distinguish unavailable routes from controller failures (2 votes). |
cmd/kubectl-unbounded/app/net/detail_client_test.go |
Aggregated transport tests; no final comments. |
cmd/kubectl-unbounded/app/net/controller.go |
Summary-preserving status JSON export; no final comments. |
cmd/kubectl-unbounded/app/net/controller_test.go |
Controller output compatibility tests; no final comments. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Patrick W. Healy (phealy)
force-pushed
the
phealy/lightweight-status-cli-transport
branch
from
September 22, 2026 17:32
6926278 to
b2cbe28
Compare
Patrick W. Healy (phealy)
force-pushed
the
phealy/lightweight-status-cli-transport
branch
2 times, most recently
from
September 22, 2026 18:03
829cd66 to
f4c6230
Compare
Patrick W. Healy (phealy)
marked this pull request as ready for review
September 22, 2026 18:06
Patrick W. Healy (phealy)
force-pushed
the
phealy/lightweight-status-cli-transport
branch
from
September 22, 2026 19:06
f4c6230 to
a6fc242
Compare
Cameron Childress (cchildress)
force-pushed
the
phealy/lightweight-status-cli-transport
branch
from
September 22, 2026 19:39
a6fc242 to
44ed520
Compare
Patrick W. Healy (phealy)
force-pushed
the
phealy/lightweight-status-cli-transport
branch
3 times, most recently
from
September 23, 2026 16:03
8a81b28 to
03830f5
Compare
Cameron Childress (cchildress)
previously approved these changes
Sep 23, 2026
…stics Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: d2243398-6c36-4c3d-969e-7ed7bfb5b459
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: d2243398-6c36-4c3d-969e-7ed7bfb5b459
Patrick W. Healy (phealy)
force-pushed
the
phealy/lightweight-status-cli-transport
branch
from
September 23, 2026 17:11
03830f5 to
df3a721
Compare
Cameron Childress (cchildress)
approved these changes
Sep 23, 2026
Patrick W. Healy (phealy)
deleted the
phealy/lightweight-status-cli-transport
branch
September 23, 2026 17:34
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Consolidated lightweight-status stack: 10/12
Based on #766. This existing draft PR is reused for the user-approved consolidation, replacing unnecessarily fragmented PRs rather than creating another set.
Scope
Complete CLI summary list/watch, explicit named-node show/refresh, authenticated aggregated diagnostic transport, polling, correlation, and expiry. Folds code/tests from independent fixes 1643e7d49723173eedb84b89eea997a248ecb7d3 and 55c62ff8d60d9cdb01188524d59f1da767d39501: controller status-json preserves raw summary fields/unknown metadata and projects legacy nodes without diagnostic arrays; node show INFO uses current overview health/metadata without changing raw diagnostic content or TTL. Both fixes' documentation belongs to layer 12. Includes final decoder allocation fix 31878a7c5b08c151a26e119ec399467a7ed916c7, which prevents summary metadata from retaining the full legacy diagnostic object.
Original work represented: #767, #768, #769, #785, #795. Cross-cutting originals may also be represented by adjacent functional layers.
Size
+1,790 / -172 = 1,962 non-generated changed lines, measured against the immediate parent. Generated changes: 0 lines, excluded from the approved 2,000-line ceiling. About 1,000 is a guideline, not a requirement to split coherent functionality.
Validation
The final stack preserves the validated implementation and all three CLI corrections exactly; its only additional tracked difference is the requested AGENTS.md approval/size policy. No PR is merged into main.
Approved 12-PR draft stack
Base: #745. Each PR targets its preceding layer.
#746 -> #812 -> #760 -> #762 -> #755 -> #757 -> #774 -> #764 -> #766 -> #767 -> #788 -> #748
Validation caveat: broader CLI install tests require rendered operator manifests absent from the isolated worktree. The changed net CLI package tests/race suite and complete plugin build pass.