zemion 1ac44af8d0
Module Package Release / publish-packages (push) Successful in 11s
Release v0.1.15
2026-08-04 15:10:12 +02:00
2026-08-03 12:55:27 +02:00
2026-08-04 15:10:12 +02:00
2026-08-04 15:10:12 +02:00
2026-07-10 21:57:21 +02:00
2026-07-10 18:39:11 +02:00
2026-08-04 15:10:12 +02:00
2026-08-04 15:10:12 +02:00

GovOPlaN Approvals

Repository type: module (domain).

govoplan-approvals owns generic approval and sign-off chains with trusted delegation, separation of duties, escalation, and signature references. It persists immutable request revisions, append-only decisions and lifecycle evidence, exposes a tenant-scoped API and WebUI, and provides the approvals.requests capability for exact-subject approval checks.

Initial Ownership

  • approval requests
  • sign-off chains
  • delegation and substitution facts
  • four-eyes constraints
  • escalation state
  • signature references

Boundaries

This module does not own:

  • module-specific business decisions
  • workflow orchestration engine
  • identity and RBAC primitives

Detailed boundary notes are in docs/APPROVALS_DOMAIN_BOUNDARY.md.

Tenant approval administrators manage reusable chains under Admin > Tenant > Approval templates. Template edits and publication create immutable revisions with content hashes and actor provenance. The history API and UI compare any two revisions as structured JSON-pointer changes. The request workspace also exposes due-step escalation to approval administrators; the server rechecks the due timestamp and request revision before recording the transition.

Template API additions:

  • GET /api/v1/approvals/templates/{template_id}/history
  • GET /api/v1/approvals/templates/{template_id}/compare

Integrations

Optional integrations:

  • workflow engine
  • audit
  • files
  • notifications

Development Install

From the core checkout:

cd /mnt/DATA/git/govoplan-core
./.venv/bin/python -m pip install -e ../govoplan-approvals

Focused runtime verification:

cd /mnt/DATA/git/govoplan-approvals
PYTHONPATH=src:/mnt/DATA/git/govoplan-core/src /mnt/DATA/git/govoplan-core/.venv/bin/python -m unittest discover -s tests

Gitea Workflow

Issue templates are installed under .gitea/, and the shared label taxonomy is copied to docs/gitea-labels.json with the module label module/approvals.

From the core checkout, labels can be synced once a local GITEA_TOKEN is available:

cd /mnt/DATA/git/govoplan-core
/mnt/DATA/git/govoplan/tools/gitea/gitea-sync-labels.py --root /mnt/DATA/git/govoplan-approvals --apply
S
Description
GovOPlaN approvals module for sign-off chains, delegation, substitution, four-eyes checks, escalation, approval evidence, and decision routing.
Readme AGPL-3.0
336 KiB
Languages
Python 73.9%
TypeScript 23.5%
CSS 1.7%
JavaScript 0.9%