feat: implement immutable form definitions
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
# GovOPlaN Forms Codex Guide
|
||||
|
||||
## Scope
|
||||
|
||||
This repository owns immutable reusable form definitions and their designer.
|
||||
Runtime values, drafts, receipts, attachments, signatures, and handoffs belong
|
||||
to `govoplan-forms-runtime` or the corresponding domain owner.
|
||||
|
||||
## Working Rules
|
||||
|
||||
- Resolve cross-module behavior through Core contracts and capabilities; do not
|
||||
import another optional module's tables or WebUI pages.
|
||||
- Keep definition revisions immutable and tenant-bound. Schema changes create a
|
||||
new revision and use optimistic concurrency.
|
||||
- Keep submitted values out of Forms events, logs, and definition storage.
|
||||
- Every behavior or UI change must update the relevant user/admin documentation
|
||||
and architecture declaration in the same change.
|
||||
|
||||
## Verification
|
||||
|
||||
```bash
|
||||
PYTHONPATH=src:/mnt/DATA/git/govoplan-core/src \
|
||||
/mnt/DATA/git/govoplan/.venv/bin/python -m unittest discover -s tests
|
||||
```
|
||||
Reference in New Issue
Block a user