Loading module
Resolving locale, route permissions, and workspace projection.
Resolving locale, route permissions, and workspace projection.
Current scope: Guest
Category: 10_normative | Version: v1.0.0
Owner: DOCUMENT_CUSTODIAN | Review cycle: 90 days
Approval authority: GOVERNANCE_ADMIN
Documentation portal is read-only. Editing and mutation endpoints are disabled.
Kvary platform is originally created in Georgian. Where a Georgian version exists, Georgian is authoritative for platform UI, documentation, and legal interpretation.
Translations into other languages are provided for convenience. Some records may originate in other languages and carry their own source or legal locale for a specific flow, but where a Georgian version is available, the Georgian version prevails for platform-level wording and interpretation.
Metadata incomplete: Document ID, Version, Status, Owner Role, Last Review Date, Next Review Date, Change Log
This specification defines deterministic, auditable stakeholder onboarding using a DB-backed state machine. It separates onboarding application lifecycle from RBAC/system roles and introduces an outbox table for Kafka-ready publishing in later phases.
DRAFTSUBMITTEDUNDER_REVIEWREQUIRES_INFOAPPROVEDVERIFIEDREJECTEDEXPIREDSUSPENDEDDRAFT -> SUBMITTEDREQUIRES_INFO -> SUBMITTEDSUBMITTED -> UNDER_REVIEWUNDER_REVIEW -> REQUIRES_INFOUNDER_REVIEW -> APPROVEDUNDER_REVIEW -> REJECTEDAPPROVED -> VERIFIEDAPPROVED -> EXPIRED (time/policy-driven)VERIFIED -> EXPIRED (time/policy-driven)ANY -> SUSPENDED (administrative)Unknown transitions are rejected.
All state mutations append immutable records into:
stakeholder_application_eventsEach event stores:
Each successful mutation also appends:
stakeholder_outbox_eventsCurrent phase does not publish. Future publisher will read published_at IS NULL rows and mark published atomically.
stakeholder_applications: current aggregate statestakeholder_application_events: immutable event logstakeholder_outbox_events: integration outboxdraft, submit, list, events)