Files
govoplan-forms/README.md
T

1.4 KiB

GovOPlaN Forms

Repository type: module (domain).

govoplan-forms owns reusable, immutable form definitions, validation rules, and form package fragments. Submission runtime behavior remains in govoplan-forms-runtime.

The module persists exact tenant-bound revisions, exposes bounded catalogue, history, and write APIs, and provides forms.definitions for consumers. A published revision can be used by Forms Runtime without importing Forms tables; existing submissions keep their exact revision when a new schema is published.

The /forms designer uses shared application controls to create, revise, publish, retire, search, and inspect definitions. It edits field order, types, choices, validation constraints, draft behavior, attachment and signature requirements, policy references, and permitted handoff kinds. Saving always creates an exact immutable revision; it never mutates a published schema in place.

Definition writes use optimistic concurrency. Replaying the same object and revision is safe only when the payload is identical. Published definitions may be retired but not silently returned to draft.

Focused verification:

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

See docs/FORMS_BOUNDARY.md for the boundary decision.