Skip to content

Add a data-preserving audit-volume capacity recovery operation #4820

Closed

Description

@devantler

🤖 Generated by the Agentic Engineer

Description

The configured audit claim request is not proof of actual capacity or free space. OpenBao's file audit backend appends indefinitely and can block service when its available audit devices cannot write. Deliver a bounded headroom operation without altering the immutable StatefulSet claim templates or deleting audit evidence.

Steps to Reproduce

  1. Compare requested and observed capacity of the three fixed audit claims using private read-only evidence.
  2. Check the audit-volume usage separately from the data volumes.
  3. The public configuration has no reviewed capacity recovery operation; its old growth estimate cannot establish current headroom.

Expected Behavior

A separately confirmed main workflow may increase only the three fixed audit claims to 20 GiB, preserving claim/PV/storage identities, other specification fields, audit configuration and database service. It does not solve archival or authorize any deletion.

Acceptance Criteria

  • Confirm source/main, the accepted deployed revision and a healthy three-replica OpenBao workload before writes.
  • Verify complete, reciprocal Bound PVC/PV identities and the existing expansion-capable storage class; absent, terminating, replaced or ambiguous resources stop the operation.
  • Use UID/resourceVersion-preconditioned writes with a fixed 20 GiB maximum. Never shrink, replace a claim, change a StatefulSet template, delete a record, change the data claims or disable an audit device.
  • Acknowledge the recurring capacity cost before production execution, capped at the approved amount; expansion cannot be rolled back by shrinking.
  • Show test-first missing-evidence, wrong-volume, conflict and ambiguous-write controls, plus a complete successful expansion/readback path. A failed attempt is not automatically replayed.
  • Prove each original UID/storage handle persists, capacity reaches the intended size and OpenBao remains available in separated readbacks. Keep raw audit content and production telemetry private.
  • Replace the speculative growth estimate with a measurement and headroom procedure.

Additional Context

This is an additive headroom slice of #4671, not completion of its durable archival, retention or rotation obligations. No production mutation or audit-content access has been performed. Do not add destructive rotation or cleanup until archival acceptance is defined and proven.

Part of #4671.

Activity

  1. added theissue type on Oct 13, 2026
  2. added a commit that references this issue on Oct 13, 2026
  3. moved this from 🫴 Ready to 🏃🏻‍♂️ In Progress in 🌊 Project Boardon Oct 13, 2026
  4. moved this from 🏃🏻‍♂️ In Progress to 👀 In Review in 🌊 Project Boardon Oct 13, 2026
  5. moved this from 👀 In Review to 🚀 Ready to Merge in 🌊 Project Boardon Oct 13, 2026
  6. moved this from 🚀 Ready to Merge to ✅ Done in 🌊 Project Boardon Oct 13, 2026
  7. moved this from ✅ Done to 🫴 Ready in 🌊 Project Boardon Oct 13, 2026
  8. moved this from 🫴 Ready to 📊 Verifying in 🌊 Project Boardon Oct 13, 2026
  9. devantler commented on Oct 13, 2026

    @devantler
    ContributorAuthor

    🤖 Generated by the Agentic Engineer

    The operation is merged as #4822 / 5e833c6, and its accepted production deployment38360163854 succeeded. Protected expansion38363326775 then stopped with HOLD before creating the consumption receipt. Independent OIDC reads confirm all three audit requests/capacities are unchanged, all seven original claim/binding identities remain intact, and the receipt is absent. No storage patch or local production exec was performed.

    Fresh source/deployment records and OIDC source-generation, binding and mount checks remain valid. Coroot still shows the two audit volumes above the existing80% threshold, not a full filesystem. The current failure output does not distinguish price, accepted-deployment, metadata and service-health checks. Add a regression-tested read-only preflight and bounded stage diagnostics before another attempt; do not guess the cause, relax the cap/health checks, or replay a write.

    Keep #4820 open/Verifying until the approved protected execution and separated live proof complete. Long-term archival/retention remains #4671.

  10. added 2 commits that reference this issue on Oct 13, 2026
  11. devantler commented on Oct 13, 2026

    @devantler
    ContributorAuthor

    🤖 Generated by the Agentic Engineer

    The approved capacity recovery is complete, including live verification.

    • Reviewed changes fix: preserve OpenBao audit evidence while adding headroom #4822, fix: inspect audit expansion failures without storage writes #4824 and fix: accept precise provider prices without rounding #4826 are merged. The current source passed deployment and the separate read-only preflight.
    • The protected expansion succeeded. Only the three audit claims were expanded to 20 GiB. Its exact live-price check enforced the approved €5/month ceiling before each write.
    • Two separated, independent OIDC readbacks confirmed all seven original claim and backing-volume identities, storage handles and reciprocal bindings remain intact. Audit requests and both claim/volume capacities are 20 GiB, Bound, with no pending resize conditions. The three data claims and snapshot claim remain 10 GiB.
    • OpenBao remains three of three replicas ready. The protected operation also verified initialized, unsealed HA health in its separated preservation checks.
    • Two separately reloaded Coroot Storage samples report disk space and I/O load as OK, with the existing warning threshold and time range unchanged.
    • No audit records were deleted; audit configuration and immutable claim templates were not changed. The measured headroom procedure replaces the speculative growth estimate.

    All acceptance criteria for this bounded capacity slice are met. Closing it does not close #4671: durable archival, readability/restore proof and retention remain separate work. This is not a claim that every platform alert or historical log error has cleared.

  12. moved this from 📊 Verifying to ✅ Done in 🌊 Project Boardon Oct 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Fields

    Priority

    None yet

    Effort

    None yet

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions