Repository navigation
v4.15.0
Nuthatch 4.15.0 adds the head count: after a successful nuthatch init, Nuthatch asks once whether it
may count you. The default is no, and nothing about serving, storage or indexing changes. There is no
storage migration.
The head count (RFC-0054)
Non-negotiable 3 is amended to allow exactly this and nothing else: no network call about the operator
that the operator did not explicitly turn on, with this one opt-in as the named exception (#1988).
- The question appears once per machine, after
inithas written the nest and printed its last line,
and only with a terminal on stdin and stdout. Enter is no. The answer is kept in
~/.config/nuthatch/count.toml(or under$XDG_CONFIG_HOME) and never asked again. - With a yes, each later
initsends one object tohttps://count.nuthatch-indexer.com: version, OS,
architecture, a built-in chain id (anything else is sent as 0) and which kind ofinitit was. No
identifier, no address. Everything a command sends shares one two-second ceiling, and a failure is
never printed. CIorNUTHATCH_NO_COUNTsilences it, question and pings alike.nuthatch countshows where things stand;on,off,payloadandforgetdo what they say.- The receiver keeps a tally per UTC day and nothing else. Its source is
count/receiver/, and the
totals are public at https://www.nuthatch-indexer.com/count.
Every line outside src/count.rs that reaches it is tagged, and a new leg of the required CI check
deletes the module and those lines and runs the whole suite on what is left. Deleting the head count
costs a self-hoster nothing, and that is now a job rather than a sentence.
Tooling
- The subgraph stopgap orphan alert retries a failed fetch twice before paging, honouring
Retry-After,
and a page now carries the HTTP status and the start of the body (#1990).
Gated on Lodestar's data
The head count runs only inside init, which serves nothing, so this release changes no query path the
release gate measures.
Compatibility and upgrade
Replace the binary and restart. No re-index. A scripted init without a terminal is never asked
anything and sends nothing.