# Ship V1 — Fleet Telemetry Pack (v1.1.0)

**DBAOps Sovereign™** — first shippable vertical: register instances, ingest performance snapshots, view latest metrics in Fleet Command.

## What ships

| Deliverable | Description |
|-------------|-------------|
| `perf.Snapshots` | SQL Server table for point-in-time metrics |
| `POST /api/telemetry/snapshot` | Ingest (requires fleet-registered `serverName`) |
| `GET /api/telemetry/latest` | Latest row per instance |
| Optional auth | `SOVEREIGN_INGEST_KEY` → header `X-Sovereign-Ingest-Key` |
| Collector | `DBAOps-Sovereign-Collector.ps1 -SubmitTelemetry` |
| Dashboard | **Live Telemetry** section |
| Container | `docker compose up --build` (API only; bring your SQL) |

## Runbook (development)

1. `npm install` at repo root (installs API + web).
2. `npm start` — dashboard http://localhost:3000 · API http://localhost:3041
3. Optional SQL: set `SOVEREIGN_DB_CONNECTION` in `.env`, run `npm run migrate`.
4. Register + ingest (PowerShell):

```powershell
cd src\collectors
.\DBAOps-Sovereign-Collector.ps1 -ServerList "localhost" -SovereignApi "http://localhost:3041" -RegisterIfMissing -SubmitTelemetry
```

If `SOVEREIGN_INGEST_KEY` is set in `.env`, pass `-IngestKey` with the same value.

## Runbook (Docker)

From repo root (set `SOVEREIGN_DB_CONNECTION` to a reachable SQL host from the container, e.g. host gateway):

```bash
docker compose up --build
```

Run migration against SovereignRepository from any machine that can reach SQL (host `npm run migrate` or `sqlcmd`).

## Next ships (backlog)

- Time-series retention + rollup jobs  
- RBAC on API + dashboard roles  
- Alerting rules from telemetry thresholds  
- **Shipped:** fleet coverage module — see [SHIP-V1-FLEET-COVERAGE.md](./SHIP-V1-FLEET-COVERAGE.md)  
- PostgreSQL / cloud inventory adapters  

---

Powered by **RHOYLLE INNOVATION EMPIRE LLC**
