Discover a data estate and carry it across a gap
An Edge Agent can act as a discovery leaf: it scans sources on its side of a boundary, normalises what it finds into one canonical semantic model, and ships a signed inventory bundle home, including across an air gap where there is no link at all. This tutorial runs that flow with real commands.
What you will prove
The device will scan a source in place, map every discovered object to the vendor-neutral Universal Semantic Model, persist a signed, restart-safe inventory, export it as a sneakernet bundle, and let you browse the catalog from a local, offline frontend, all without copying the source data out.
Prerequisites
- A device with
s9on itsPATH(Quickstart working). - A source to scan, for a first run, a local file share or directory
(e.g.
/mnt/share). - A workspace id to scope the scan to (e.g.
ws-acme). - To register the leaf with a trunk, a reachable cell endpoint (one-time). The scan and bundle-export steps themselves run offline.
The flow
Figure: the discovery-leaf flow. The leaf scans a source in place, normalises it to the canonical model, and persists a signed inventory; that inventory both feeds an offline browser and exports as a sneakernet bundle (amber, dashed) carried to a trunk. Live cross-cell convergence is not part of this flow.
Table equivalent
| Stage | Command | Runs |
|---|---|---|
| Register the leaf | s9 discovery-mapping register | Needs a cell endpoint (once) |
| Scan in place | s9 discovery-mapping scan | Offline |
| Inspect | s9 discovery-mapping status --detailed | Offline |
| Export bundle | s9 discovery-mapping export-bundle | Offline |
| Browse | s9 discovery-mapping frontend | Offline (local HTTP) |
| Carry to trunk | s9 discovery-mapping ingest-canonical-bundle | On the trunk side |
Step 1: Register the device as a discovery leaf
s9 discovery-mapping register \
--workspace-id ws-acme \
--node-endpoint https://node-a.system9.local
This registers the device with the trunk as a scanning leaf. (For a device that will only ever export bundles by courier, this one-time registration is how the trunk learns to expect the leaf's signed deltas.)
Step 2: Scan a source in place
Run a scan, authoring the result as a signed leaf inventory delta by passing
--leaf-id:
s9 discovery-mapping scan \
--workspace-id ws-acme \
--source /mnt/share \
--policy edge_summary \
--leaf-id leaf-gateway-07
Scan policy (--policy) is one of edge_full, edge_summary (default),
edge_sample (with --one-in-n), or central_only. With --leaf-id, every
discovered object is mapped to the vendor-neutral model, signed with the device's
persisted authoring key, and sequenced from the device's own durable watermark,
so it keeps counting across reboots and couriers. The source data is read where
it lives, not copied out.
Step 3: Inspect what was catalogued
s9 discovery-mapping status --detailed
--detailed gives the full row-count breakdown by object kind. The inventory is a
signed projection, so a restart rebuilds the catalogue without re-walking the
sources.
Step 4: Export a signed bundle for the trip home
s9 discovery-mapping export-bundle \
--workspace-id ws-acme \
--leaf-id leaf-gateway-07 \
--out /media/usb/leaf.tar.zst
This exports the leaf's outbound queue as a sneakernet bundle (.tar.zst), the
air-gapped route home. Carry it to a machine that can reach the trunk.
Step 5: Browse the catalog offline
You do not need a link to explore what you found. Start the local, offline catalog browser:
s9 discovery-mapping frontend --bind 127.0.0.1:9090
Open http://127.0.0.1:9090 to browse the discovered estate, entirely on-device.
Step 6: Carry it to the trunk
On the trunk side (or a machine that can reach it), ingest the couriered bundle:
s9 discovery-mapping ingest-canonical-bundle --bundle /media/usb/leaf.tar.zst
What you proved
- A device discovered a source in place and mapped it to one canonical semantic model, stamping classification and provenance at the point of discovery, without creating a second copy of the estate.
- The inventory is a signed, restart-safe projection that survives reboots and couriers by counting from its own durable watermark.
- The estate crossed an air gap as a signed bundle, and was browsable offline the whole time, the deliberate answer to the no-link case, in place of live cross-cell convergence.
Related
- Discovery & Mapping: the concept, the model, and the convergence boundary.
- Edge command reference · Discovery, catalog & field manuals
- Data Platform · Catalog & lineage