docs: align wire-spec and mark implemented vs proposed
Keep the 45-byte pose frame consistent across docs, simulator, and prototype, clarify MinIO is not peer sync, and state clearly that the repo is a from-scratch platform sketch with options rather than mandates.
This commit is contained in:
+11
-8
@@ -20,8 +20,9 @@ graph TB
|
||||
subgraph serving [Layer 3 — Serving and sync]
|
||||
HOOK["event hook<br/>fires on new derived data"]
|
||||
PUB["state publisher<br/>pub/sub broadcast"]
|
||||
MINIO["MinIO<br/>derived datasets bucket"]
|
||||
QAPI["query API<br/>peer data requests"]
|
||||
BULK["bulk sync<br/>rsync over SSH"]
|
||||
MINIO["MinIO<br/>optional derived bucket"]
|
||||
QAPI["query API<br/>SQL-over-SSH"]
|
||||
end
|
||||
end
|
||||
|
||||
@@ -33,12 +34,14 @@ graph TB
|
||||
WRITER -->|derived rows| HOOK
|
||||
HOOK --> PUB
|
||||
HOOK --> MINIO
|
||||
HOOK --> BULK
|
||||
QAPI --> DUCK
|
||||
PUB -.->|mesh| PEERS["peer drones"]
|
||||
MINIO -.->|replication| PEERS
|
||||
PUB -.->|mesh pose| PEERS["peer drones"]
|
||||
BULK -.->|sealed partitions| PEERS
|
||||
QAPI -.->|on demand| PEERS
|
||||
```
|
||||
|
||||
MinIO stays available where an S3 API helps (on-board derived datasets, ground warehouse). **In-flight peer bulk sync is SSH/rsync**, not object-store replication — see [04 — Swarm sync](04-swarm-sync.md).
|
||||
### Layer 1 — Ingestion
|
||||
|
||||
- `sensor-ingest` subscribes to sensor sources (ROS 2 topics where available, raw drivers otherwise) and normalizes them into typed streams: IMU, barometer, temperature, LiDAR, RSSI, power, and so on.
|
||||
@@ -53,10 +56,10 @@ graph TB
|
||||
|
||||
### Layer 3 — Serving and sync
|
||||
|
||||
- The **event hook** is the on-board "lambda": when the writer lands new *derived* rows (state, detections), it triggers registered actions — broadcast, MinIO upload, or a local mission-logic callback. Nothing polls.
|
||||
- The **state publisher** broadcasts compact position/attitude/detection payloads over the mesh pub/sub (transport analysis in [04 — Swarm sync](04-swarm-sync.md)).
|
||||
- **Bulk sync** pulls sealed derived partitions from peers over persistent SSH (rsync delta transfer); MinIO remains optional where an S3 API is wanted.
|
||||
- **Peer queries** are read-only DuckDB SQL over SSH forced commands — SELECT-only gate, read-only OS user, columnar responses (the design decision and its reasoning are in [04](04-swarm-sync.md)).
|
||||
- The **event hook** is the on-board "lambda": when the writer lands new *derived* rows (state, detections), it triggers registered actions — broadcast, optional MinIO put, bulk-sync hint, or a local mission-logic callback. Nothing polls.
|
||||
- The **state publisher** broadcasts compact position/attitude/detection payloads over the mesh pub/sub (UDP in the PoC; Zenoh proposed — [04](04-swarm-sync.md)).
|
||||
- **Bulk sync** pulls sealed derived partitions from peers over persistent SSH (rsync delta transfer). MinIO is optional where an S3 API is wanted; it is **not** the in-flight peer replication path.
|
||||
- **Peer queries** are read-only DuckDB SQL — HTTP explorer gate in the PoC; **SSH forced commands** proposed for flight (SELECT-only gate, read-only OS user, columnar responses — [04](04-swarm-sync.md)).
|
||||
|
||||
## Communication planes
|
||||
|
||||
|
||||
Reference in New Issue
Block a user