Files
zeekay 7cf87b230b node-unified is the node
The module already called itself github.com/luxfi/node while containing no node
in Go: cmd/luxd was twenty-one lines that printed the size of a few types, and
the Go column of the matrix measured a VM plugin. A repo that fetches the thing
it claims to be has not replaced it, so the Go sources move in — 1515 files,
the daemon and everything under it — and the build reaches outside this module
for nothing.

Rust and C++ sit beside it unchanged and are still measured against it by the
differential. That is the point of one repo: the reference implementation and
the two ports are the same checkout, so parity is a thing you can run rather
than a thing you assert.

Verified: builds, and the closure carries no lux-private — checked at build time
rather than believed. The daemon starts twelve chains on a local network
(P X C Q Z A B G K M F, plus D through its plugin) and reports healthy.
2026-09-07 16:15:25 -07:00

76 lines
5.1 KiB
Go

// Code generated by zipdoc; DO NOT EDIT.
package health
import (
"encoding/json"
"github.com/zap-proto/zip"
)
func init() {
zip.Describe("GET /health", zip.Doc{
Description: "Health is whether this node is well: every check is passing now. Answers 503\nwhen one is not.",
Fields: map[string]string{
"APIArgs.tags": "Tags narrows the answer to checks carrying one of these tags. Empty asks\nfor all of them.",
"APIReply.checks": "Checks is what every check answered, ordered by name.",
"APIReply.healthy": "Healthy is whether every one of them passed.",
"Check.name": "Name is the check's name, the key it appears under on the JSON wire.",
"Check.result": "Result is what it answered.",
"Result.contiguousFailures": "ContiguousFailures is how many times running it has failed.",
"Result.duration": "Duration is how long it took.",
"Result.error": "Error is why the check failed, when it did.",
"Result.message": "Details is whatever the check chose to say, as the JSON it said it in.\nA check answers with an object, a string or a list as it sees fit, so\nthere is no struct to name and the bytes are the honest shape.",
"Result.timeOfFirstFailure": "TimeOfFirstFailure is when the current run of failures began.",
"Result.timestamp": "Timestamp is when the check last ran.",
"Time.nanos": "Nanos is the nanosecond within that second.",
"Time.offset": "Offset is seconds east of UTC.",
"Time.seconds": "Seconds is seconds since the epoch.",
},
Example: json.RawMessage(`{"tags":[]}`),
Response: json.RawMessage(`{"checks":{"database":{"timestamp":"2026-08-29T00:00:00Z","duration":100000}},"healthy":true}`),
})
zip.Describe("GET /liveness", zip.Doc{
Description: "Liveness is whether this node is worth keeping: a 503 here is a node that\nneeds restarting rather than one that is merely unwell.",
Fields: map[string]string{
"APIArgs.tags": "Tags narrows the answer to checks carrying one of these tags. Empty asks\nfor all of them.",
"APIReply.checks": "Checks is what every check answered, ordered by name.",
"APIReply.healthy": "Healthy is whether every one of them passed.",
"Check.name": "Name is the check's name, the key it appears under on the JSON wire.",
"Check.result": "Result is what it answered.",
"Result.contiguousFailures": "ContiguousFailures is how many times running it has failed.",
"Result.duration": "Duration is how long it took.",
"Result.error": "Error is why the check failed, when it did.",
"Result.message": "Details is whatever the check chose to say, as the JSON it said it in.\nA check answers with an object, a string or a list as it sees fit, so\nthere is no struct to name and the bytes are the honest shape.",
"Result.timeOfFirstFailure": "TimeOfFirstFailure is when the current run of failures began.",
"Result.timestamp": "Timestamp is when the check last ran.",
"Time.nanos": "Nanos is the nanosecond within that second.",
"Time.offset": "Offset is seconds east of UTC.",
"Time.seconds": "Seconds is seconds since the epoch.",
},
Example: json.RawMessage(`{"tags":[]}`),
Response: json.RawMessage(`{"checks":{},"healthy":true}`),
})
zip.Describe("GET /readiness", zip.Doc{
Description: "Readiness is whether this node has finished starting: every check that has to\npass once has passed. Answers 503 until it has.",
Fields: map[string]string{
"APIArgs.tags": "Tags narrows the answer to checks carrying one of these tags. Empty asks\nfor all of them.",
"APIReply.checks": "Checks is what every check answered, ordered by name.",
"APIReply.healthy": "Healthy is whether every one of them passed.",
"Check.name": "Name is the check's name, the key it appears under on the JSON wire.",
"Check.result": "Result is what it answered.",
"Result.contiguousFailures": "ContiguousFailures is how many times running it has failed.",
"Result.duration": "Duration is how long it took.",
"Result.error": "Error is why the check failed, when it did.",
"Result.message": "Details is whatever the check chose to say, as the JSON it said it in.\nA check answers with an object, a string or a list as it sees fit, so\nthere is no struct to name and the bytes are the honest shape.",
"Result.timeOfFirstFailure": "TimeOfFirstFailure is when the current run of failures began.",
"Result.timestamp": "Timestamp is when the check last ran.",
"Time.nanos": "Nanos is the nanosecond within that second.",
"Time.offset": "Offset is seconds east of UTC.",
"Time.seconds": "Seconds is seconds since the epoch.",
},
Example: json.RawMessage(`{"tags":[]}`),
Response: json.RawMessage(`{"checks":{"bootstrapped":{"message":{"P":true},"timestamp":"2026-08-29T00:00:00Z","duration":100000}},"healthy":true}`),
})
}