[Feature] Add policy-aware datasource and field visibility #5

Closed
opened 2026-07-28 12:48:19 +02:00 by zemion · 2 comments
Owner

Parent: #1

Extend current tenant and scope isolation with governed source,
materialization, row, and field visibility.

Acceptance criteria:

  • source/materialization ACL and policy references without connector credential exposure
  • field classification and redaction/projection before rows leave the provider
  • optional row-filter policy with deterministic diagnostics
  • consuming module receives only an opaque permitted view and its fingerprint
  • audit records denied and redacted reads without logging protected values
  • reduced local behavior remains available when Access/Policy is absent
  • tests cover tenant, role, field, row, frozen-state, and service-principal access
Parent: https://git.add-ideas.de/GovOPlaN/govoplan-datasources/issues/1 Extend current tenant and scope isolation with governed source, materialization, row, and field visibility. Acceptance criteria: - source/materialization ACL and policy references without connector credential exposure - field classification and redaction/projection before rows leave the provider - optional row-filter policy with deterministic diagnostics - consuming module receives only an opaque permitted view and its fingerprint - audit records denied and redacted reads without logging protected values - reduced local behavior remains available when Access/Policy is absent - tests cover tenant, role, field, row, frozen-state, and service-principal access
Author
Owner

Codex State: started

Implementing the autonomous policy-aware visibility slice: typed local/provider policy resolution, source/materialization ACLs, field projection/redaction, deterministic principal-bound row filters, opaque permitted-view fingerprints, audit-safe diagnostics, and role/service-principal/frozen-state coverage.

No product decision is required for this bounded slice; absent policies preserve the current scope-gated behavior, while configured restrictions fail closed.

## Codex State: started Implementing the autonomous policy-aware visibility slice: typed local/provider policy resolution, source/materialization ACLs, field projection/redaction, deterministic principal-bound row filters, opaque permitted-view fingerprints, audit-safe diagnostics, and role/service-principal/frozen-state coverage. No product decision is required for this bounded slice; absent policies preserve the current scope-gated behavior, while configured restrictions fail closed.
Author
Owner

Implemented and released policy-aware datasource and field visibility.

Releases:

  • govoplan-core 10e7597, tag v0.1.20: typed datasource visibility request/decision/provider contract and capability.
  • govoplan-policy 72779d0, tag v0.1.19: deterministic system/tenant/group/user visibility overlays.
  • govoplan-datasources b54d191, tag v0.1.20: source/materialization ACLs; field classification with redaction/omission; row filtering; principal-bound opaque fingerprints; frozen-snapshot enforcement; safe denied/redacted-read auditing; migration, API, administrator UI, documentation, and tests.
  • workspace a60b8b0: synchronized developer composition and release pins.

Behavior notes:

  • Local visibility rules work without optional Access/Policy modules.
  • A configured external policy reference fails closed when no Policy provider is available.
  • Frozen materializations enforce both the snapshot policy and the current local policy when they differ.
  • Live policy filtering is bounded at 10,000 rows and returns a structured scan-limit diagnostic.

Verification:

  • Core targeted tests: 2 passed.
  • Policy suite: 66 passed.
  • Datasources suite: 47 passed, 2 skipped, plus 5 subtests.
  • Datasources WebUI TypeScript check passed.
  • Manifest shapes/architecture: 68/68; strict inventory: 68 modules, 154 providers, 96 requirements.
  • Full tools/checks/check-focused.sh passed, including all backend suites, 59 WebUI module permutations, full-product bundle budget, and 8 Playwright conformance tests.

No product decision or manual migration step is required; the normal Alembic upgrade applies migration c9e3a6f1d4b8.

Implemented and released policy-aware datasource and field visibility. Releases: - govoplan-core 10e7597, tag v0.1.20: typed datasource visibility request/decision/provider contract and capability. - govoplan-policy 72779d0, tag v0.1.19: deterministic system/tenant/group/user visibility overlays. - govoplan-datasources b54d191, tag v0.1.20: source/materialization ACLs; field classification with redaction/omission; row filtering; principal-bound opaque fingerprints; frozen-snapshot enforcement; safe denied/redacted-read auditing; migration, API, administrator UI, documentation, and tests. - workspace a60b8b0: synchronized developer composition and release pins. Behavior notes: - Local visibility rules work without optional Access/Policy modules. - A configured external policy reference fails closed when no Policy provider is available. - Frozen materializations enforce both the snapshot policy and the current local policy when they differ. - Live policy filtering is bounded at 10,000 rows and returns a structured scan-limit diagnostic. Verification: - Core targeted tests: 2 passed. - Policy suite: 66 passed. - Datasources suite: 47 passed, 2 skipped, plus 5 subtests. - Datasources WebUI TypeScript check passed. - Manifest shapes/architecture: 68/68; strict inventory: 68 modules, 154 providers, 96 requirements. - Full tools/checks/check-focused.sh passed, including all backend suites, 59 WebUI module permutations, full-product bundle budget, and 8 Playwright conformance tests. No product decision or manual migration step is required; the normal Alembic upgrade applies migration c9e3a6f1d4b8.
zemion removed the
status
ready
label 2026-08-21 21:03:11 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-datasources#5