2026-02-23 20:12:10 -06:00

963 B

Vault Fixture Contract

This directory holds vault compatibility fixtures shared between Python and C# tests.

Required cases

  1. YYYY-MM.vault files generated by Python encryption flow from fixtures/entries/.
  2. At least one wrong-password case where decrypt fails and source vault bytes remain unchanged.
  3. Optional legacy case: _init_vault.vault for compatibility cleanup behavior.

Current status

  • Vault fixtures are generated from fixtures/entries/*.md using Python crypto flow:
    • python fixtures/vaults/generate_vault_fixtures.py
  • Committed artifacts:
    • 2026-01.vault
    • 2026-02.vault
    • manifest.json with generation metadata, fixture password, wrong-password case, and SHA-256 hashes.

Validation contract

  1. Load with manifest.password must extract all expected_entries.
  2. Each extracted entry SHA-256 must match manifest values.
  3. Load with manifest.wrong_password must fail and keep vault bytes unchanged.