github BfArM-MVH/grz-tools grz-pydantic-models-v4.0.0
grz-pydantic-models: v4.0.0

4 hours ago

4.0.0 (2026-09-26)

⚠ BREAKING CHANGES

  • grzctl: db submission modify and --ignore-field take local_case_id where they took pseudonym. In JSON output pseudonym is now the case's psn (null until assigned); the former value is under local_case_id.

Features

  • grz-db,grzctl: add case tracking for submissions (#633) (68c75dc)
  • grz-db,grzctl: add db case list-unlinked and list-ambiguous-keys (68c75dc)
  • grz-db: let a psn-keyed deployment resolve cases through diff and (68c75dc)
  • grz-pydantic-models,grz-common: keep a parsed submission lossless and redact it by one rule (#654) (ec46603)
  • grz-pydantic-models: add get_raw_dict for the document as (ec46603)
  • grz-pydantic-models: publish PCT_DEV_CUTOFF (a0e1bfe)
  • grzctl: add db case commands and link submissions to cases on (68c75dc)
  • grzctl: explain why a case is listed in the Detailprüfung report (a0e1bfe)
  • grzctl: fail a rival initial submission's basic QC during validate (68c75dc)
  • grzctl: report QC deviations without failing and add recompute-qc backfill (#656) (a0e1bfe)

Bug Fixes

  • grz-common: require grz-pydantic-models >=3.1 for (ec46603)
  • grz-db: apply a change set as one transaction (ec46603)
  • grz-db: consult the resolver assert_no_duplicate_initial is (68c75dc)
  • grz-db: export db_backend from grz_db.testing (ec46603)
  • grz-db: leave a local case ID reused across patients unlinked (68c75dc)
  • grz-db: raise the grz-pydantic-models floor to 3.1 (a0e1bfe)
  • grz-db: require grz-pydantic-models >=3.1 for (68c75dc), closes #632
  • grzctl: abort cleanly on a duplicate case key and a malformed (68c75dc)
  • grzctl: name the submission fields the database actually has (ec46603)
  • grzctl: stop backfill counting an updated submission as not updated (68c75dc)

Don't miss a new grz-tools release

NewReleases is sending notifications on new releases.