feat: add governed assisted form intake

This commit is contained in:
2026-08-19 02:45:53 +02:00
parent eea3db3d2e
commit d83bb92ec8
18 changed files with 1895 additions and 39 deletions
+35 -4
View File
@@ -58,6 +58,14 @@ Runtime form submissions for validation, drafts, attachments, signatures, status
- an administrator-only public-intake dialog that selects exact published Form
revisions, configures expiry/rate limits, enables or disables profiles, and
exposes invitation secrets only once
- authenticated assisted-intake profiles and operator sessions that retain the
channel, affected and represented party references, authority basis, purpose,
notice, responsible function, language, accessibility needs, and field-level
source/confidence provenance on the same exact Form revision used digitally
- append-only assisted read-back outcomes bound to the exact current Form
revision, normalized values, attachments, and signatures; draft corrections
invalidate earlier confirmation evidence and submission fails closed until a
new confirmation or explicitly noted unavailable-confirmation record exists
- Files-owned one-time evidence upload grants bound to the tenant, exact Form
instance and definition revision, purpose, custodian, size, media types, and a
maximum 15-minute upload window
@@ -83,6 +91,13 @@ revision; a mismatched provider response fails closed.
Policy-referenced definitions fail closed when no compatible
`forms_runtime.policy_evaluator` is active.
Assisted intake is not part of the default authenticated role. Starting a
session or recording read-back evidence requires the dedicated
`forms_runtime:submission:assist` permission or the manager write permission.
The assistant role combines that permission with ordinary participation so the
operator can resume only their own drafts; tenant-wide takeover still requires
manager authority.
Files and signature providers retain their own content and key custody. Runtime
stores only same-tenant evidence references and bounded inspection snapshots.
Files stores only upload-token digests and never grants a public intake actor
@@ -96,6 +111,22 @@ new one-time bearer URL for each participant. The UI can copy a newly issued
secret but cannot retrieve it later. Disabling a profile prevents new starts;
already submitted revisions and their evidence remain governed records.
Administrators enable assisted profiles against the same published Form
revisions. An authenticated operator starts the session only after recording
the governed party and function references, authority and purpose, channel,
notice state, language, and required communication support. The resulting
draft remains resumable through the ordinary Forms workspace and uses the same
server validation, evidence inspection, receipt, and downstream handoff rules
as digital intake. Assisted mode is provenance, not a privileged validation or
authorization bypass.
Before submission, the operator must make the exact values and managed evidence
available through spoken read-back, a written preview, or an accessible copy.
The immutable outcome identifies the confirming party and operator. Corrections
are saved as a new Form revision and require a new read-back. When confirmation
cannot be obtained, the operator must choose that outcome and record the
exception; policy or downstream review may still stop or escalate the case.
## Approved Intake And Evidence Profiles
The product and security profile approved on 2026-08-04 sets the next
@@ -148,11 +179,11 @@ Destructive retirement is blocked while state exists and requires a verified
database snapshot plus an export or retention decision for referenced evidence.
No local generated files are required, so API and worker nodes remain stateless.
Public intake, Files-backed attachment evidence, and authenticated
Public and assisted intake, Files-backed attachment evidence, and authenticated
acknowledgements implement the approved first profiles. Conditional multi-page
definitions are resolved from Forms, and native Case/Workflow handoffs execute
automatically when the exact owner capability is installed. CAPTCHA,
pseudonymous intake, advanced or qualified electronic signatures, richer
attachment classification/retention controls, and additional target kinds
remain provider or product depth; none may weaken the implemented owner and
security boundaries.
attachment classification/retention controls, dedicated party pickers, and
additional target kinds remain provider or product depth; none may weaken the
implemented owner and security boundaries.