Skip to content

docs(nvpair-errors): add normative service specification - #129

Open
Noah-Tervalon-Nvidia wants to merge 3 commits into
developfrom
docs/spec-nvpair-errors-gh
Open

Noah-Tervalon-Nvidia wants to merge 3 commits into
developfrom
docs/spec-nvpair-errors-gh

Conversation

@Noah-Tervalon-Nvidia

Copy link
Copy Markdown
Collaborator

Description

Adds services/nvpair-errors/spec.md, the normative specification for the error store and its cross-node sync, derived from the Go source and its tests and following the structure of the existing specs.

Peer sync is described as it runs today: every address a peer publishes is kept in the peer's own order, and the one to push to is confirmed by connecting and remembered until a transport failure retires it. Errors are relayed to the desktop client and nvpair-tui, and each nvpair-proxy engine facade is a producer. Open items record that the list does not survive a restart, that an entry with an empty nodeId cannot be cleared, and that the installer opens UDP 5353 for a binary that opens no multicast socket.

Release intent

Changelog title

n/a

Changelog body

n/a

Bumps

  • services: none
  • nvpair-cluster-manager: none
  • nvpair-engine-manager: none
  • nvpair-errors: none
  • nvpair-job-scheduler: none
  • nvpair-manual-nodes: none
  • nvpair-node-info: none
  • nvpair-node-scanner: none
  • nvpair-node-settings: none
  • nvpair-proxy: none
  • nvpair-tui: none
  • nvpair-ui-broker: none
  • nvpair-workload-manager: none

Scope

Documentation only: one new file. No Go, desktop, installer, or version changes. The open items above are recorded, not fixed.

Validation

  • node scripts/spdx-headers.mjs passes.
  • Every behavioral statement was checked against the source on develop.

Risk

None at runtime. spec.md is normative, so please flag any statement that does not match the code.

Checklist

  • I have read the Contributing Guidelines.
  • Every commit is signed off (git commit -s), certifying the Developer Certificate of Origin.
  • New or existing tests cover the change. (Not applicable: documentation only.)
  • Relevant documentation is updated.
  • I checked the diff, changed filenames, and commit messages for credentials, private data, internal URLs, internal issue identifiers, and generated artifacts.
  • I recorded the validation commands and results above.
  • I declared version bumps in the release-intent block above. services/versions.json is written by automation — do not edit it by hand.

Add services/nvpair-errors/spec.md, derived from the Go source and its
tests rather than the README, following the structure of the existing
specs: sections 1-15, a 7.0 method and notification table, and a
closing section on the process model, CLI, and build wiring.

Peer sync is described as it runs today: every address a peer publishes
is kept in the peer's own order, and the one to push to is confirmed by
connecting and remembered until a transport failure retires it. Errors
are relayed to the desktop client and nvpair-tui, and each nvpair-proxy
engine facade is a producer.

Documentation only. No Go file is touched and no version changes.

Signed-off-by: Terve <[email protected]>
The cross-node endpoint serves only TLS (runHTTPServer wraps its listener
in tls.NewListener over the cluster mesh) and pushes only to https://
URLs, but several labels still said plain HTTP. Call it HTTPS wherever
the spec names the surface, the interface, or the port.

Signed-off-by: Terve <[email protected]>
Two shutdown descriptions still named the TLS-only listener the HTTP server.

Signed-off-by: Terve <[email protected]>
@Noah-Tervalon-Nvidia
Noah-Tervalon-Nvidia requested review from kjlubick and nvrithik and removed request for kjlubick September 29, 2026 15:28
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