Skip to content

Latest commit

 

History

History
43 lines (36 loc) · 2.39 KB

File metadata and controls

43 lines (36 loc) · 2.39 KB

Changelog

All notable changes to dpdpstack-python-sdk. The core stays dependency-free; optional features live behind extras ([django], [sqlalchemy], [crypto]).

0.6.0

  • Sealing key rotation: seal/unseal (and AuditLog.record(seal_key=…) / open_sealed) accept a list of keys (newest first) via MultiFernet — new payloads seal with the first key, unsealing tries all, so older-key payloads still open.

0.5.0

  • Evidence client (EvidenceClient): push the tamper-evident chain to a hosted vault. Zero-dependency (stdlib), evidence-only (never PII), idempotent, with a fire-and-forget push_background that never blocks or raises.

0.4.0

  • Retention-safe checkpoints: AuditLog.checkpoint() / prune_through() and verify_report() (pinpoints where a chain breaks) let a hash-chained log be pruned and still verify by anchoring to an immutable, self-chaining Checkpoint.
  • Offline verification: dpdpstack verify-chain audit.jsonl [--checkpoints cp.jsonl].
  • Crypto-shred ([crypto]): dpdpstack.sealing — encrypt PII into a token the entry hash covers, so destroying the key satisfies right-to-erasure while the chain verifies.
  • SQLAlchemy adapter ([sqlalchemy]): contrib.sqlalchemy mirrors the Django adapter for FastAPI/Flask/any SQLAlchemy app; the @pii declaration is shared.

0.3.0

  • DPDP linter + readiness score: dpdpstack.ruleslint_policy flags retention compliance smells (each tied to a DPDP citation); score_policies grades a policy set (0–100, letter grade, tier). CLI: dpdpstack lint [--score].
  • Value-level PII detection: detect_values (Aadhaar via Verhoeff, cards via Luhn, PAN/GST/IFSC/UPI/email/phone/IP) and classify_breach_nature for a breach report.
  • New presets: companies_act(), third_schedule().

0.2.0

  • PII auto-discovery (scan): suggest @pii(...) declarations from Django model schema (dpdp_scan) or any field names — dpdpstack scan, suggest_strategies, scan_mapping. Schema-only, India-first catalog, advisory.

0.1.x

  • Core: legal-hold-aware ErasureEngine, RetentionPolicy + RBI/PMLA/CERT-In presets, anonymization strategies (null/hashed/redact/constant), hash-chained AuditLog (in-memory / JSONL / Django stores), issue_certificate (Certificate of Erasure), optional RS256 signing ([crypto]), Django adapter, and the dpdpstack CLI.