Repository navigation
v0.11.0
Upgrade notes
- Upgrade all five CRDs from the matching chart before the controller. Plans now include an optional diagnostic
passwordSourceDigest; the approval digest remains the execution authority. - Wildcard revocations retain concrete object/grantor attribution. Review the executor's grantor authority and replacement plans; changed effects require fresh approval. Reconciliation concurrency still defaults to one.
- Policy-level
role_patternis now effective in CLI manifests where older versions silently ignored it. In Kubernetes, reapply the field after upgrading CRDs and inspect existing schema patterns: values inserted by the previous CRD still override inheritance. Review generated role names before applying a naming change. See the operator upgrade guide. - Rust callers must supply the new optional policy-level
role_patternfield and useOption<String>forSchemaBinding.role_pattern.Noneinherits;Some(pattern)is an explicit override, even when it equals the built-in pattern.
Added
-
Policy-wide
role_pattern, inherited by schema bindings with explicit per-schema overrides. CLI bundles also supportshared.role_patternand fragment overrides; candidates preserve the same naming content (#97). -
pgroles diff --format markdownrenders redacted review tables with source attribution, conservative priorities, and a versioned report fingerprint. Existing JSON formats and drift exit codes are unchanged.
Documentation
- Clarify that
preserve_undeclared_grantspreserves object grants only; default-privilege revocations and membership reconciliation remain unchanged. - Generate a complete field reference and downloadable served schema for all five CRDs; require source descriptions and detect reference drift in CI.
Fixed
-
Retry plan-name collisions with computed, decided, or differently scoped plans instead of treating them as a successfully created replacement. Interrupted creates resume only with a matching persisted spec. (#185)
-
Identify password-source changes when superseding approval plans. Exercise Secret-first crash recovery in a feature-gated operator E2E, including reapproval, credential reuse, and database authentication.
-
Wildcard revocations retain concrete object/grantor attribution, including PUBLIC and mixed-owner scopes. Normalization preserves named-object exceptions; owner privileges remain protected. Revocations may produce more concrete plan entries and require fresh approval when effects differ. (#215)
-
Operator onboarding examples now name the target database, and documentation validation checks policy semantics in addition to JSON Schema. The CLI quick start uses additive mode; adoption and upgrade guides explain mode and version transitions.
Changed
- ACL derivation runs on a single bounded blocking worker per process without copying the raw snapshot. Inspection exposes ACL/grantor cardinality and derivation phases; operator telemetry adds processing duration and runtime scheduling lag. Removed redundant ACL query sorting and an intermediate row-pointer allocation. Reconcile concurrency still defaults to one. (#214)