46 lines
1.8 KiB
Markdown
46 lines
1.8 KiB
Markdown
# NDC Device Plane
|
|
|
|
`device-plane` is the provider-neutral runtime boundary for physical devices.
|
|
It is intentionally separate from Foundry, Engine L2, External Data Plane and
|
|
the preserved Gelios integration.
|
|
|
|
Current implementation status: local fail-closed foundation; not deployed.
|
|
|
|
- `packages/device-protocol-contract` owns safe discovery and presentation
|
|
contracts.
|
|
- `packages/arusnavi-b2-adapter` owns the first model-profile evidence and a
|
|
fail-closed framing boundary.
|
|
- `services/device-control-core` owns the initial PostgreSQL schema, health
|
|
boundary and disabled-by-default quarantine ingest.
|
|
- `services/device-gateway` owns a disabled-by-default, loopback-only TCP
|
|
evidence listener that sends no bytes and extracts no identifier until the
|
|
official framing contract is known.
|
|
- `docker-compose.device-plane.yml` publishes only loopback health endpoints
|
|
and keeps the raw TCP listener unpublished.
|
|
- No device command can be built or sent.
|
|
- No real IMEI, ICCID, password, packet or provider credential is stored in
|
|
this source tree.
|
|
|
|
The planned runtime services are:
|
|
|
|
- `device-control-core`: contours, discoveries, devices, bindings, policy and
|
|
audit;
|
|
- `device-gateway`: raw TCP sessions, bounded codecs and presence;
|
|
- `device-postgres`: private persistent state.
|
|
|
|
The Foundry `Device Manager` is a canonical page template using a server-owned
|
|
`device-plane-control` binding. It is not a service in this directory.
|
|
|
|
Run the foundation tests:
|
|
|
|
```bash
|
|
npm test
|
|
```
|
|
|
|
See [IMPLEMENTATION_BASELINE.md](docs/IMPLEMENTATION_BASELINE.md) for the
|
|
placement, security and rollout contract.
|
|
|
|
The canonical runner registry and deterministic artifact builder live in
|
|
`../infra/deploy-runner`. The runner must be separately promoted and verified
|
|
before any Device Plane artifact is staged or planned.
|