Runtime configuration
woml.runtime.json is optional. Safe defaults keep local use simple.
JSON
{
"schemaVersion": 1,
"deploymentName": "order-automation",
"statePath": "./data/state.sqlite",
"public": { "host": "127.0.0.1", "port": 3000 },
"admin": { "host": "127.0.0.1", "port": 3001 },
"logging": {
"format": "text",
"level": "info",
"directory": "./logs"
},
"workers": 4,
"shutdownTimeoutMs": 30000,
"observability": { "health": true, "metrics": true },
"retention": {
"enabled": true,
"succeededAfterDays": 30,
"failedAfterDays": 90,
"cancelledAfterDays": 30,
"maintenanceHourUtc": 3
},
"backup": { "directory": "./backups" }
}| Field | Constraints and meaning |
|---|---|
schemaVersion | Required and exactly 1. |
deploymentName | Lowercase segmented identity, maximum 128. |
statePath | Durable state path, relative to the config file when relative. |
public | Trigger listener host/port. |
admin | Local operations listener host/port; production admin remains loopback-only. |
logging.format | text or json. |
logging.level | error, warn, info, or debug. |
logging.directory | Runtime log destination. |
workers | 1–256 Bun worker capacity. |
shutdownTimeoutMs | 1,000–300,000 ms graceful drain. |
observability.health, .metrics | Enable local operations endpoints. |
retention.enabled | Enables automatic retention. |
| Retention day fields | 1–3,650 days per terminal outcome. |
maintenanceHourUtc | 0–23. |
backup.directory | Configured backup directory. |
Precedence is explicit CLI option, reviewed WOML_RUNTIME_* environment variable, config file, then safe default.