[Feature] Add governed manual, scheduled, event, API, and chained Dataflow triggers #11

Open
opened 2026-07-28 14:02:56 +02:00 by zemion · 1 comment
Owner

Parent: #10

Persist and dispatch governed Dataflow trigger definitions. Invocation provenance must distinguish interactive user, API, scheduled, event, Workflow, dependency/upstream, retry/replay, and backfill runs.

Acceptance criteria:

  • manual/API run origin is persisted on every run
  • one-time and interval schedules support timezone, next-fire calculation, catch-up policy, enable/disable, and pinned immutable pipeline revision
  • event triggers accept exact allowlisted event types and constrained equality filters with idempotent event IDs
  • Workflow/dependency invocation uses the versioned run capability and records correlation/causation references
  • triggers cannot target templates and automated execution requires an active complete flow
  • execution resolves current authorization through Access, applies Policy, and fails closed if either required provider is unavailable
  • overlap, concurrency, quota, retry/quarantine, cancellation, notifications, and audit evidence are explicit
  • schedule dispatch runs in a worker; arbitrary SQL and large execution never run in the API process
Parent: https://git.add-ideas.de/GovOPlaN/govoplan-dataflow/issues/10 Persist and dispatch governed Dataflow trigger definitions. Invocation provenance must distinguish interactive user, API, scheduled, event, Workflow, dependency/upstream, retry/replay, and backfill runs. Acceptance criteria: - manual/API run origin is persisted on every run - one-time and interval schedules support timezone, next-fire calculation, catch-up policy, enable/disable, and pinned immutable pipeline revision - event triggers accept exact allowlisted event types and constrained equality filters with idempotent event IDs - Workflow/dependency invocation uses the versioned run capability and records correlation/causation references - triggers cannot target templates and automated execution requires an active complete flow - execution resolves current authorization through Access, applies Policy, and fails closed if either required provider is unavailable - overlap, concurrency, quota, retry/quarantine, cancellation, notifications, and audit evidence are explicit - schedule dispatch runs in a worker; arbitrary SQL and large execution never run in the API process
Author
Owner

Large first slice implemented in govoplan-core@26ae034, govoplan-access@fdfcfbb, govoplan-policy@d6e09fb, govoplan-datasources@6294362, and govoplan-dataflow@08ddc8d.

Completed:

  • persisted manual, API, and administrative backfill run provenance
  • durable one-time, interval, and event triggers pinned to immutable revisions
  • timezone-aware next-fire calculation without unbounded anchor loops
  • coalesce/skip catch-up behavior with durable skipped-delivery evidence
  • enable/disable, optimistic trigger revisions, explicit concurrency ceiling, idempotent event IDs, and exact scalar filters
  • Celery beat/worker dispatch capability and dedicated dataflow queue
  • current Access authorization plus Policy recheck for every delivery
  • least-privilege source/publication grants and template/inactive-flow denial
  • correlation/causation, audit events, delivery status/error, and trigger UI

Remaining before closure:

  • durable transactional event ingress via govoplan-core#270
  • actual Workflow/dependency invocation path
  • asynchronous large-run queue, retries/quarantine, quotas, cancellation, progress, and notifications under govoplan-dataflow#10
  • manual replay/recovery controls

Verification: 35 Dataflow tests, WebUI typecheck/structure checks, migrations, and consolidated focused suite pass.

Large first slice implemented in govoplan-core@26ae034, govoplan-access@fdfcfbb, govoplan-policy@d6e09fb, govoplan-datasources@6294362, and govoplan-dataflow@08ddc8d. Completed: - persisted manual, API, and administrative backfill run provenance - durable one-time, interval, and event triggers pinned to immutable revisions - timezone-aware next-fire calculation without unbounded anchor loops - coalesce/skip catch-up behavior with durable skipped-delivery evidence - enable/disable, optimistic trigger revisions, explicit concurrency ceiling, idempotent event IDs, and exact scalar filters - Celery beat/worker dispatch capability and dedicated dataflow queue - current Access authorization plus Policy recheck for every delivery - least-privilege source/publication grants and template/inactive-flow denial - correlation/causation, audit events, delivery status/error, and trigger UI Remaining before closure: - durable transactional event ingress via govoplan-core#270 - actual Workflow/dependency invocation path - asynchronous large-run queue, retries/quarantine, quotas, cancellation, progress, and notifications under govoplan-dataflow#10 - manual replay/recovery controls Verification: 35 Dataflow tests, WebUI typecheck/structure checks, migrations, and consolidated focused suite pass.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-dataflow#11
No description provided.