Variables, secrets, and runtime bootstrap
Required variable is missing
- Confirm the name exactly matches Manifest V5, including case.
- Check whether a managed value is set for the intended Application.
- Otherwise verify a non-secret manifest default exists.
- Publish/apply a successor according to update policy.
An empty string is an explicit value. A configuration save does not mutate a running process.
Required secret is missing
proof liskov application secrets APPLICATION_ID
Confirm the declared secret ID, requiredness, destination, and configured version presence. The command never returns plaintext. Add/rotate the value in Console, then create the required successor. Do not put it in a variable or repository to bypass the blocker.
Runtime rejects a secret grant
Record the non-secret error code and the Application UID, policy digest, deployment ID, job ID, processor ID, and runtime-instance ID. Identity, policy, job, expiry, destination, or version mismatch must fail closed. Never copy an encrypted grant from another job or enable a downgrade.
Native helper or file installation is incompatible
runtime_bootstrap_customer_secrets_runtime_incompatible means the pinned
native artifact predates customer-secret installation. Rebuild with
runtime-contact 0.10.40 or newer and publish a successor. Updating the
Application's active artifact does not replace the helper inside an existing job.
JavaScript absolute file destinations require SDK 0.3.32 or newer and the default
installer, or an atomic custom installGroup writer.
For runtime_secrets_file_installation, check the declared absolute path,
parent-directory access, free space, and whether a path component is a symlink.
Do not print the decrypted file. Required failures prevent customer startup;
disabling logging does not bypass secret requirements.
whenReady() throws
Inspect the attached runtime status and its blockers:
try {
await runtime.whenReady();
} catch (error) {
console.error(JSON.stringify(error.status));
throw error;
}
Redact messages before sharing and make sure no application value was included.
pending, failed, and blocked are not ready. Background logging can be
degraded without blocking when policy/code chose that mode; required secrets
cannot.
Stale or unexpected value
Read Configuration precedence. Confirm you are looking at the new runtime instance, not a predecessor still running to scheduled end. Signed current-job bootstrap is authoritative; do not manually set compatibility bootstrap variables.
Verify safely
Test presence or a harmless authenticated operation. Log a secret ID/version or boolean at most, never the value, token prefix, decrypted file, or full credential-bearing URL.