Skip to main content

Runtime safety

Dhal v0.12 adds runtime controls for public beta usage.

{
"runtime": {
"onInternalError": "allow",
"internalErrorStatusCode": 500,
"maxInspectionMs": 25,
"bypass": {
"enabled": true,
"paths": ["/health", "/healthz", "/ready", "/readyz", "/live", "/livez"],
"methods": ["OPTIONS"]
}
}
}

onInternalError

Controls what happens if Dhal itself throws an internal error.

ValueBehavior
allowFail open and let the app continue
blockFail closed with runtime.internalErrorStatusCode

The alpha default is allow because availability is safer for first-time public installs.

internalErrorStatusCode

HTTP status used when onInternalError is block.

{
"runtime": {
"onInternalError": "block",
"internalErrorStatusCode": 500
}
}

maxInspectionMs

A budget marker for expected inspection time. Use this to guide diagnostics and future operational policies.

Bypass paths

Health, readiness, and liveness paths should usually remain available even during security-policy changes.

{
"runtime": {
"bypass": {
"enabled": true,
"paths": ["/health", "/readyz"],
"methods": ["OPTIONS"]
}
}
}

Preflight bypass

OPTIONS bypass keeps CORS preflight behavior predictable.

Only remove it when you understand your app's CORS behavior and have tested browser clients.