email-connect/workplans/EMAIL-WP-0009-wave2-resource-right-sizing.md
tegwick c7cede849b
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Wave-2 right-sizing applied 2026-10-22 (CUST-WP-0071)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 276069@bnt-lap001
Assistant-Session: 2e192b3d-b3e8-4403-94d4-d55a2c8b476c
2026-10-22 00:57:24 +02:00

4.2 KiB

id type title domain repo status flavor owner topic_slug created updated related state_hub_workstream_id
EMAIL-WP-0009 workplan Wave-2 resource right-sizing from the 2026-10-21 allocation review infotech email-connect finished implementation claude email-connect 2026-10-21 2026-10-21
CUST-WP-0071
RESOURCE-WP-0008
cf2bc940-4a8c-5785-b005-c73122603a2e

EMAIL-WP-0009 — Wave-2 resource right-sizing from the 2026-10-21 allocation review

Receiving workplan in email-connect for the wave-2 request changes below.

Origin: the 2026-10-21 node allocation review (RESOURCE-WP-0008-T03, feeding CUST-WP-0071-T03). Per the founder's 2026-10-21 delivery interview (the-custodian/docs/decisions/2026-10-21-cust-wp-0071-delivery-interview.md) the small adjustments form wave 2: one receiving task per owner repo, applied later in a batch. Applying wave 2 needs a separate founder approval, so every cluster-write task here is a human-gated wait. This file changes no manifest.

Apply the reviewed request changes

id: EMAIL-WP-0009-T01
status: done
priority: medium
state_hub_task_id: "b34ff94e-a2ef-5df1-b7ec-f2a29ae0191f"

Values are pod-aggregate figures from the budget file (7-day window ending 2026-10-21T06:08Z). Limits stay unchanged unless stated.

Workload (ns/name) Pods CPU request CPU limit CPU p95/peak 7d (m) Memory request Memory limit Mem p95/peak (Mi) Throttle Action
email-connect/email-connect 1 25m → 5m 250m 0.3/0.8 64Mi → 64Mi 256Mi 13.0/13.0 0.001 decrease

Source and container detail:

  • email-connect/email-connect: Deployment email-connect, container email-connect, deploy/k8s/railiance/deployment.yaml (25m/64Mi).

Evidence: resource-control docs/evidence/2026-10-21-node-allocation-review/2026-10-21-node-budget.md (+ .json, commit 3d9b1bd). Rule: CPU = max(floor, p95x1.5, peakx0.5) rounded up to 5m; memory request = 7d p95 working set x1.15 (only when the change is at least 64Mi).

Steps:

  1. Map the pod-aggregate proposal onto the named container(s) in the source file; where a workload has several containers or pods, split by the per-pod figures in 2026-10-21-workload-usage.json and keep the sum at the proposed value.
  2. Prepare the source change as a reviewed commit (no push, no sync) and record the before values here.
  3. Apply only inside the batched wave-2 rollout, after founder approval, through the owner's normal deploy path (ArgoCD sync or documented helm/kubectl apply).

Verification: kubectl -n <ns> get pod -o jsonpath='{..resources}' shows the new requests; pods Ready with no new restarts or OOMKilled over 24h; for CPU decreases the throttle ratio and request latency stay at or below the 7d baseline; node request total drops by the expected delta.

Rollback: revert the source commit and re-sync/re-apply; the before values in the table above are the rollback target. Keep before/after kubectl get -o yaml captures as the receipt.

Prepared 2026-10-22 (wave-2 worker W1b)

Status stays wait / needs_human. Local commit only: not pushed, not applied. Diff = full owner render vs live (kubectl diff, object names and changed key paths only, Secret objects skipped).

  • Live source: deploy/k8s/railiance kustomization, applied client-side.
  • Change: email-connect 64d81e3: CPU request 25m -> 5m.
  • Diff: NOT resource-only. Besides requests.cpu, the apply would also replace the email-connect.railiance.io/rollback-note annotation text (the source wording from e9b9d1c differs from live) and reorder the container volumeMounts and pod volumes. The volume set itself is unchanged. This drift goes to the founder before apply.
  • Apply (after founder OK): kubectl apply -k deploy/k8s/railiance.

Applied — 2026-10-22 (EMAIL-WP-0009-T01)

Applied under the founder's wave-2 authorization (the-custodian docs/decisions/2026-10-21-cust-wp-0071-delivery-interview.md), after a full-render diff against live that showed resources only, plus the founder-approved annotation and volume reordering. Ready; both ExternalSecrets are synced. Evidence: the-custodian docs/evidence/2026-10-22-wave2-apply.md.