Skip to content
Scalpels home

Scalpels is officially launching on October 31, 2026. Special early adopter pricing is available now.

← All documentation

Documentation

Wake

Configuration

Updated

Wake has no environment variables of its own. That is unusual enough among Built for Cloud products to be worth stating plainly: every setting that configures Wake's ingest and its lake is a literal in the server package's config file, with no env() wrapper around it, so there is no value to set on the Cloud environment and nothing for Scalpels to declare.

Never add DB_*, QUEUE_CONNECTION, CACHE_STORE, FILESYSTEM_DISK, AWS_* or REDIS_* to the Wake environment yourself. Laravel Cloud injects those for the resources the install attached, and a value you set shadows the injected one and breaks that resource.

Per-application ingest caps

Each application has its own limits, stored on its record rather than in configuration: batches per minute and events per minute. Leave them unset and the application uses the server defaults of 120 batches and 50,000 events per minute. When an application exceeds either, Wake answers 429 with a Retry-After, counts the rejection against that application, and the client holds the batch and retries with the same idempotency key.

Raise the caps for an application that genuinely produces that much. Lower them for one that is noisy in a way you would rather bound than fix, remembering that the client counts what it drops and reports the total on its next accepted batch, so the loss is visible in ingest health.

Server settings

These are the values in the server package's config, and all of them are fixed at the version you deployed:

The retention window is 30 days. The flush takes 20 staging batches per run. The lake runs DuckDB with one thread and a 384 MB memory limit, which is what keeps the web service comfortable on a small instance. Data is written under ducklake/logs/ on the attached bucket, and the DuckDB binary and its extensions live under the application root.

Changing one means changing it in your fork and deploying. Wake is MIT licensed and you own the fork, so that is supported rather than a workaround. It is still a deploy.

Credentials

Each application holds one ingest credential, created with the application and shown once. Rotate it from the application's page if it is exposed, then put the new value in the reporting application; the old one stops working at the moment you rotate. Credentials are stored hashed, so a lost secret cannot be recovered from Wake.

Wake's own MCP credentials are separate and are issued through Scalpels, as MCP tools describes.