Skip to content

release: v0.10.7#138

Merged
toasterbook88 merged 6 commits into
mainfrom
release-v0.10.7
May 22, 2026
Merged

release: v0.10.7#138
toasterbook88 merged 6 commits into
mainfrom
release-v0.10.7

Conversation

@toasterbook88
Copy link
Copy Markdown
Owner

Release v0.10.7 — daemon mesh subcommand.

Changes:

  • New axis daemon mesh subcommand for operator mesh introspection
  • /mesh endpoint registered in daemon router
  • mesh.PeerState now serializes as human-readable strings in JSON
  • Refactored daemon HTTP request creation into shared helper

Quality gates (all passed):

  • make lint
  • make test-race
  • make coverage ✅ (72.3%)
  • make build

Release checklist:

  • Version bumped in internal/buildinfo/version.go
  • CHANGELOG.md updated
  • Summary golden files updated
  • docs/current-state.md refreshed via ./hack/refresh-current-state.sh
  • ./hack/verify-repo-truth.sh passes

William and others added 4 commits May 22, 2026 19:14
Adds axis daemon mesh to query the /v2/mesh HTTP endpoint and display active gossip peers in a colored table.

- fetchDaemonMesh: authenticated GET to /v2/mesh with error handling
- printMeshPeers: color-coded state rendering for trusted/verified/discovered/suspect
- humanizeTime: relative timestamps for LastSeen
- Tests for peer fetching, empty state, CLI rendering, and time formatting

Quality gates passed: lint, test-race, coverage 72.4 percent, build.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Register /mesh endpoint in daemon router (internal/daemon/handlers.go)
- Add Mesh() to SnapshotCache interface; mockCache already satisfies it
- Add MarshalJSON/UnmarshalJSON to mesh.PeerState so it serializes as string
- Refactor fetchDaemonMesh to use shared newDaemonRequest helper
- Guard empty response body in mesh query error messages
- Remove ANSI color codes from tabwriter rows to avoid misalignment
- Handle negative durations in humanizeTime (clock skew)
- Update tests to use /mesh endpoint and string state values

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Bump version to 0.10.7
- Update CHANGELOG.md with daemon mesh subcommand release notes
- Update summary golden files
- Refresh docs/current-state.md

Quality gates passed: lint, test-race, coverage 72.3%, build.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@toasterbook88 toasterbook88 enabled auto-merge (squash) May 22, 2026 23:32
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces the axis daemon mesh subcommand for inspecting the operator mesh, alongside a new /mesh API endpoint. Key changes include the implementation of JSON serialization for mesh.PeerState, a refactored newDaemonRequest helper for standardized API calls, and comprehensive testing for the new functionality. Review feedback suggests further consolidating the daemon request logic across other commands, utilizing the existing mesh.Peer struct to avoid duplication in the CLI, and removing a redundant nil check in the mesh handler.

Comment thread cmd/axis/daemon.go Outdated
Comment thread cmd/axis/daemon.go Outdated
Comment thread internal/daemon/handlers.go Outdated
William and others added 2 commits May 22, 2026 19:36
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Refactor invalidateDaemonCache and refreshDaemonCacheWithTrigger to use
  newDaemonRequest helper, consolidating duplicated token loading logic.
- Replace local meshPeer struct with mesh.Peer; leverage PeerState JSON
  serialization and String() for consistent CLI rendering.
- Truncate mesh peer list at 50 peers with remaining count indicator.
- Remove redundant nil check for peers in daemon meshHandler.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@toasterbook88 toasterbook88 merged commit 72cf82c into main May 22, 2026
8 checks passed
@toasterbook88 toasterbook88 deleted the release-v0.10.7 branch May 22, 2026 23:43
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