Skip to content

chore: refactor meta store management#598

Draft
jot2re wants to merge 5 commits into
mainfrom
tore/chore/3022/improved-locking
Draft

chore: refactor meta store management#598
jot2re wants to merge 5 commits into
mainfrom
tore/chore/3022/improved-locking

Conversation

@jot2re
Copy link
Copy Markdown
Collaborator

@jot2re jot2re commented May 18, 2026

Description of changes

This PR refactors the meta store such that it can be used as a simple lock, while still allowing read and not blocking storage, and to avoid having code lock storage as well in a specific order to avoid risk of ending up in inconsistent state.
It also adds tombstones to gracefully handle deletion and prevent reexecution of deleted items.

Issue ticket number and link

This closes https://github.com/zama-ai/kms-internal/issues/3022

PR Checklist

I attest that all checked items are satisfied. Any deviation is clearly justified above.

  • Title follows conventional commits (e.g. chore: ...).
  • Tests added for every new pub item and test coverage has not decreased.
  • Public APIs and non-obvious logic documented; unfinished work marked as TODO(#issue).
  • unwrap/expect/panic only in tests or for invariant bugs (documented if present).
  • No dependency version changes OR (if changed) only minimal required fixes.
  • No architectural protocol changes OR linked spec PR/issue provided.
  • No breaking deployment config changes OR devops label + infra notified + infra-team reviewer assigned.
  • No breaking gRPC / serialized data changes OR commit marked with ! and affected teams notified.
  • No modifications to existing versionized structs OR backward compatibility tests updated.
  • No critical business logic / crypto changes OR ≥2 reviewers assigned.
  • No new sensitive data fields added OR Zeroize + ZeroizeOnDrop implemented.
  • No new public storage data OR data is verifiable (signature / digest).
  • No unsafe; if unavoidable: minimal, justified, documented, and test/fuzz covered.
  • Strongly typed boundaries: typed inputs validated at the edge; no untyped values or errors cross modules.
  • Self-review completed.

Dependency Update Questionnaire (only if deps changed or added)

Answer in the Cargo.toml next to the dependency (or here if updating):

  1. Ownership changes or suspicious concentration?
  2. Low popularity?
  3. Unusual version jump?
  4. Lacking documentation?
  5. Missing CI?
  6. No security / disclosure policy?
  7. Significant size increase?

More details and explanations for the checklist and dependency updates can be found in CONTRIBUTING.md

@cla-bot cla-bot Bot added the cla-signed The CLA has been signed. label May 18, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 18, 2026

Consolidated Tests Results 2026-05-19 - 16:53:06

Test Results

passed 2 passed

Details

tests 2 tests
clock not captured
tool junit-to-ctrf
build build-and-test arrow-right test-reporter link #2245
pull-request chore: refactor meta store management link #598

test-reporter: Run #2245

Tests 📝 Passed ✅ Failed ❌ Skipped ⏭️ Pending ⏳ Other ❓ Flaky 🍂 Duration ⏱️
2 2 0 0 0 0 0 not captured

🎉 All tests passed!

Tests

View All Tests
Test Name Status Flaky Duration
k8s_test_centralized_insecure 53.3s
nightly_full_gen_tests_default_k8s_centralized_sequential_crs 1.7s

🍂 No flaky tests in this run.

Github Test Reporter by CTRF 💚

🔄 This comment has been updated

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-signed The CLA has been signed.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant