Skip to content
This repository was archived by the owner on Oct 1, 2026. It is now read-only.

feat(fleet): add RemoveNode to drop a node from the inventory - #141

Merged
Bugs5382 merged 1 commit into
mainfrom
feat/139-remove-node
Oct 1, 2026
Merged

Bugs5382 merged 1 commit into
mainfrom
feat/139-remove-node

Conversation

@Bugs5382

@Bugs5382 Bugs5382 commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

What and why

The Fleet Manager has no way to drop a node from its inventory without contacting it. DecommissionNode resets the node and keeps the row, so a node that was destroyed stays listed as down forever; in a lab run the row had to be deleted from the database by hand.

Closes #139

  • New FleetService.RemoveNode(RemoveNodeRequest) returns (RemoveNodeResponse): removes the node from the inventory without contacting it. node_id names the node and confirm_name must equal its current name. The comment documents the outcomes: NotFound, InvalidArgument on a name mismatch, FailedPrecondition while something still depends on the node (such as a pending enrollment naming it); admin-gated, audited as node-removed, audit and name history kept, credentials folder moved aside.
  • The response carries the removed node's summary.
  • Additive only: one RPC and two messages. Go and TypeScript stubs regenerated.

Docs: the RPC is documented in the companion PR of the manager change that implements it (CryptOS-PKI/cryptos-manager#155); nothing user-facing changes until then.

Merge order: merge this first; the manager PR for #155 pins this branch's head and re-pins to api main once this merges.

Verification

  • Lint clean
  • Tests pass
  • Build succeeds

How this was verified

task ci (buf format, buf lint, generate-and-verify with the pinned plugins, Go tests) passes, and buf breaking --against main reports nothing.

An admin call that removes a node from the manager's inventory without
contacting it, for a node that is gone. confirm_name must equal the node's
current name. Additive: one RPC and two messages.

Signed-off-by: Bugs5382 <12115015+Bugs5382@users.noreply.github.com>
@Bugs5382 Bugs5382 added this to the v0.1.0 milestone Oct 1, 2026
@Bugs5382 Bugs5382 added the enhancement New feature (feat). Minor version bump. label Oct 1, 2026
@Bugs5382 Bugs5382 self-assigned this Oct 1, 2026
@Bugs5382
Bugs5382 marked this pull request as ready for review October 1, 2026 14:32
@Bugs5382

Bugs5382 commented Oct 1, 2026

Copy link
Copy Markdown
Contributor Author

Merging for the v0.1.0 test run: CI green and mergeable at merge time.

@Bugs5382
Bugs5382 merged commit 41f7be4 into main Oct 1, 2026
18 checks passed
@Bugs5382
Bugs5382 deleted the feat/139-remove-node branch October 1, 2026 14:45
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

enhancement New feature (feat). Minor version bump.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(fleet): add RemoveNode to drop a node from the inventory

1 participant