Restore CPU headroom for identity credential renewal
Assistant: codex Assistant-Model: gpt-6-astra Assistant-Session: 01a09cbb-87c6-7900-a145-4ce53ba9f1a6
This commit is contained in:
parent
65c83dedbf
commit
854affd2ef
3 changed files with 60 additions and 1 deletions
|
|
@ -0,0 +1,47 @@
|
|||
{
|
||||
"date": "2026-09-14",
|
||||
"cause": "10m factor-renewer Jobs unschedulable at full CPU requests; credential expired and KeyCape readiness failed",
|
||||
"observed_review_cpu": "1m",
|
||||
"review_request_before": "20m",
|
||||
"review_request_after": "5m",
|
||||
"review_limit_unchanged": "500m",
|
||||
"headroom_freed": "15m",
|
||||
"successful_renewal_job": "keycape-factor-renewer-29822490",
|
||||
"provider_credential_version": 60,
|
||||
"renewal_session_revoked": true,
|
||||
"keycape_ready": true,
|
||||
"reader_callback_routes": [
|
||||
{
|
||||
"callback": "http://localhost:8250/oidc/callback",
|
||||
"auth_url_status": 200,
|
||||
"client_id": [
|
||||
"openbao-admin"
|
||||
],
|
||||
"scopes": [
|
||||
"openid profile email groups"
|
||||
],
|
||||
"pkce_method": [
|
||||
"S256"
|
||||
],
|
||||
"keycape_status": 302,
|
||||
"redirect_host": "auth.coulomb.social"
|
||||
},
|
||||
{
|
||||
"callback": "http://127.0.0.1:8250/oidc/callback",
|
||||
"auth_url_status": 200,
|
||||
"client_id": [
|
||||
"openbao-admin"
|
||||
],
|
||||
"scopes": [
|
||||
"openid profile email groups"
|
||||
],
|
||||
"pkce_method": [
|
||||
"S256"
|
||||
],
|
||||
"keycape_status": 302,
|
||||
"redirect_host": "auth.coulomb.social"
|
||||
}
|
||||
],
|
||||
"renderer_tests_passed": 14,
|
||||
"residual": "CUST-WP-0071-T01: scheduler-effective capacity must reserve recurring credential maintenance demand"
|
||||
}
|
||||
|
|
@ -65,7 +65,7 @@ def render(inputs):
|
|||
# application gates acceptance on /readyz internally; monitoring
|
||||
# must scrape it separately. An outage must not restart the writer.
|
||||
'readinessProbe':probe('/healthz'),'livenessProbe':probe('/healthz'),
|
||||
'resources':{'requests':{'cpu':'20m','memory':'64Mi'},'limits':{'cpu':'500m','memory':'256Mi'}},
|
||||
'resources':{'requests':{'cpu':'5m','memory':'64Mi'},'limits':{'cpu':'500m','memory':'256Mi'}},
|
||||
'volumeMounts':[mount('data','/data'),mount('runtime','/run/informed-decision'),mount('tmp','/tmp'),
|
||||
readonly('configuration','/configuration'),readonly('caller','/var/run/secrets/informed-decision/policy'),
|
||||
readonly('audit','/var/run/secrets/informed-decision/audit')]}],
|
||||
|
|
|
|||
|
|
@ -825,3 +825,15 @@ Repeatable contained helper: key-cape/tools/register-informed-decision.py
|
|||
(default preflight; --apply mutates only a missing exact registration).
|
||||
Human callback/MFA/token proof and T03 approval entries remain pending. The
|
||||
previous ready check established service health, not browser login acceptance.
|
||||
|
||||
|
||||
### Credential-renewal scheduling recovery — 2026-09-14
|
||||
|
||||
KeyCape returned 503 after repeated 10m factor-renewer Jobs could not schedule
|
||||
at full cluster CPU requests. The reviewed service used 1m; lowered its request
|
||||
from 20m to 5m, retaining the 500m limit and memory settings. The next scheduled
|
||||
renewal completed, self-revoked, and propagated through ESO to KeyCape; all four
|
||||
readiness checks and both OpenBao reader callback routes passed. Renderer tests:
|
||||
14 passed. Receipt: docs/evidence/2026-09-14-keycape-renewal-capacity-recovery.json.
|
||||
Recurring-job scheduling headroom remains with CUST-WP-0071-T01. Human reviews
|
||||
remain confirmed; service restart does not require their repetition.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue