Licensing
Lunara Box runs entirely on hardware you own. The licence is a signed file (Ed25519) that the appliance verifies locally against a published set of public keys. There is no online payment anywhere in this system — licences are issued manually against an invoice.
Two delivery modes
Connected
The appliance sends a periodic heartbeat with the fields listed below. You get remote licence renewal, limit changes and clone detection. Two independent timers apply: a renewal grace period after expiry, and an offline tolerance window if the network drops inside the term.
Sovereign
No heartbeat at all. Nothing leaves your perimeter — authorisation lives entirely inside the signed licence file for its whole term. Because remote revocation is impossible in this mode, sovereign licences are capped at 180 days and renewed by offline token exchange.
Exactly what leaves your network (connected mode)
| Field | Why |
|---|---|
| license_key | Identifies the licence |
| fingerprint components (machine id, MAC, disk serial, CPU model, hostname) | Hardware binding and clone detection |
| container_version, os_info | Support and update eligibility |
| local_time_unix | Clock-rollback detection |
| counters: active agents, peak concurrent calls, minutes used | Limit enforcement |
| source IP (observed, not sent) | Geo-anomaly signal |
Never sent, in either mode: call transcripts, audio recordings, RAG documents or index contents, CRM records, customer or patient personal data, prompts and model outputs.
What automatic signals can and cannot do
No automatic signal interrupts sessions already in progress. A full service stop happens only on manual revocation. Automatic signals can block a new download (excessive download attempts) or move the appliance into a degraded state that prevents starting new agents (expired term or exceeded limits) — running calls are never cut.
Hardware binding
The licence is bound to five hardware components rather than one string. Replacing a disk or a network card keeps the licence valid; a genuinely different machine is treated as a transfer, and only two machines heartbeating within the same hour are treated as a clone.
Data at rest
Full-disk encryption with TPM-sealed keys is planned for v1.1 and is not implemented today. The current status is documented honestly in docs/DATA_AT_REST.mdshipped with the distribution.