Conversation
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Contributor
Author
|
Josh: |
Review against the blah2 source showed two figures wrong: the in-RAM IQ buffer is 0.75 s, not 1.5 s (config's buffer: 1.5 is in units of CPIs, sized cpi*buffer*fs at blah2.cpp:103), and saveIq writes 16 MB/s, not 8 MB/s (RspDuo.cpp:630 writes 4 int16 per sample instant: 2 channels of I+Q). The second has a knock-on the review surfaced: the 120 s ring buffer estimate used the same wrong 2 B/sample assumption, so the real size is ~1.9 GB, not ~960 MB. That exceeds a 2 GB node's total RAM and, next to blah2's 760 MB RSS, the 4 GB minority too, so raw IQ capture is now off the table on all current hardware rather than merely tight; this hardens the map-over-IQ working assumption (map advantage ~12x, not ~6x). No decision flips. Also adds a section 6 item recording that downlink commands are protected only by TLS terminating at Cloudflare's edge, with server-signed commands as the upgrade if that seems thin once real commands ship; later items renumbered. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
jonnyspicer
reviewed
Jul 29, 2026
| can be many nodes, so edge rules are tuned only for gross volumetric abuse. Ingest also | ||
| applies cheap plausibility gates (impossible delay, Doppler or position values, §10) | ||
| before frames reach the tracker. | ||
| - Payloads carry the existing `retina-custody` per-packet ECDSA signatures unchanged. |
Contributor
There was a problem hiding this comment.
Does the server explicitly reject packets with unsigned/invalid signatures? How should this be handled?
|
|
||
| Phase 1: | ||
|
|
||
| 1. **Control-plane and ingest authentication.** Requests signed with the custody key, or a |
Contributor
There was a problem hiding this comment.
What is the advantage of also using bearer tokens, alongside keys? Are there any tradeoffs?
The interim stopgap in §2.4 routed config visibility through a custom Mender inventory script with the poll interval shortened from its 8 h default. Building it buys a few weeks of visibility in exchange for a second place config lives, an inventory script deployed to the whole fleet, and a retirement step nobody prioritises once it works. Reporting straight to the server over the control plane is less total work and leaves config in one place. A6, D1 and A8 referred to that script, so they move with it. Also splits pairing from claiming, which the earlier text conflated as "account linking". Pairing gives a node an identity and must work before any other credential exists; claiming records whose node it is and needs a human, so only the latter belongs to the account model. That account model is decided in the phase 1 ADR (D25) rather than duplicated here. D-numbers are unique across the decisions folder, so a second statement of the same decision would have had to take a number the phase 1 ADR had already used, and the flow was in any case written out twice in near-identical words. This document now carries only what the control plane has to transport and points at the decision. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Babissimo
force-pushed
the
docs/node-server-interface-adr
branch
from
August 3, 2026 18:09
162ecb8 to
206461b
Compare
Babissimo
force-pushed
the
docs/node-server-interface-adr
branch
from
August 4, 2026 12:15
206461b to
60b14ff
Compare
Contributor
Author
|
Closing unmerged. The interface ADR is kept locally rather than published here for now; the branch is being deleted to stop it drifting further behind main, which has moved on considerably since it was opened. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds the node ↔ server interface design decision record (dated 2026-07-21, revised 2026-07-23) to
docs/decisions/.The ADR covers how RETINA radar nodes communicate with the central server, phased:
Status: Proposed (design agreed in discussion; implementation not started).
🤖 Generated with Claude Code