Run a node
One program, one writer. Run it on a laptop, a server, a container or a serverless platform.
Where it runs
| Option | How |
|---|---|
| On-premises | A single binary and a local directory. Keep the key file private (mode 0600) and back up the directory. |
| Cloud (serverless) | A container on a serverless platform: one instance, scale to zero, the ledger on object storage, the key in a secret manager or a managed KMS. We run it on Google Cloud Run this way. |
Endpoints
| Call | Purpose |
|---|---|
POST /v1/decision | Record an AI decision |
POST /v1/evidence | Record audit evidence |
GET /v1/verify | Verify the AI decision ledger |
GET /v1/evidence/verify | Verify the evidence ledger |
GET /v1/pubkey | The public key to verify with |
Run the service privately and let your platform authenticate callers (for example, cloud identity tokens). Request bodies are limited to 2 MB, and error replies never echo what you sent.
Operating notes
- One writer per ledger. The node serialises writes. On a serverless platform set the maximum instances to one. A stale lock left by a crashed instance is cleared at start.
- Keys. A local key file is fine for evaluation. In the cloud use a managed key: set
ENTROPA_GCP_KMS_KEYto a Google Cloud KMS ML-DSA-65 key version (projects/.../cryptoKeyVersions/1) and give the node's service account the Cloud KMS signer role. The node then signs every event and checkpoint with that key, no key file exists anywhere, andGET /v1/pubkeyreturns the public key. To rotate, start a new ledger directory under the new key and publish the new public key. - Memory. A cloud storage volume needs at least 512 MB on Cloud Run.
- Backups. The ledger is plain files: copy the directory.
Cost
At demo volumes a scale-to-zero deployment is within a platform's free tier plus cents of storage. The hosted service is free for now and may later stop or carry a small per-event charge, with notice. A node is free to an organisation that hires the author, or can be bought outright; price is discussed privately. See contact.