Mock vs Real Matrix
Status: ACTIVE
Audit Date: 2026-03-16
Audit Basis: code-verified repository inspection
System-State Labels
REAL: durable backend truth exists and the UI primarily uses it.
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, Owner Role, Last Review Date, Next Review Date, Change Log
Status: ACTIVE
Audit Date: 2026-03-16
Audit Basis: code-verified repository inspection
REAL: durable backend truth exists and the UI primarily uses it.MIXED: real backend exists, but fallback/mock/session-local paths also materially affect UX.UI-FIRST: mostly UI/client state; backend truth is weak or absent.SHELL: structural surface exists with little real domain behavior behind it.MISSING: major expected capability not found.| Feature | UI State | Backend State | Persistence | Eventing | State | Evidence |
| --- | --- | --- | --- | --- | --- | --- |
| Auth and sessions | working portal/auth UI | real svc-auth backend | Postgres-backed | limited | REAL | services/svc-auth/src/server.ts |
| Stakeholder onboarding | visible | proxy + partial reviewer gap | real in identity-infra | no strong Kafka evidence | MIXED | services/api/src/routes/stakeholder-applications.ts, packages/identity-infra/src/server.ts |
| Landowner onboarding | present through stakeholder/KES surfaces | partial | partial | partial | MIXED | same as above + KES routes |
| Tenders | real list/detail/admin flow | real in svc-tenders | durable Postgres | outbox/domain-events | REAL | services/svc-tenders/src/server.ts |
| Auctions | strong UI | real read/admin declaration path, but action path mixed | some durable reads, local action engine elsewhere | limited | MIXED | services/svc-tenders/src/server.ts, services/api/src/routes/auctions.ts |
| Bid submission | polished UI | local engine/session-local behavior dominates | not trustworthy canonically | none meaningful | UI-FIRST | services/api/src/routes/auctions.ts, apps/web/src/ui/auctions/sessionBidState.ts |
| Winner flow | visible | mixed auction + session-local handoff state | partial | none meaningful | MIXED | sessionFulfillmentState, sessionTransportSelectionState |
| Vacancies | real UI | real svc-tenders routes, but fallback catalogs exist | durable in service | no strong Kafka evidence | MIXED | services/svc-tenders/src/server.ts, apps/web/src/portal/api.ts |
| Accommodations | real UI | real svc-tenders routes, but fallback catalogs exist | durable in service | no strong Kafka evidence | MIXED | same |
| Logistics & Equipment | rich UI/workspace | mostly session-local orchestration | sessionStorage | none | UI-FIRST | apps/web/src/ui/transport/sessionTransportRequestState.ts, apps/web/src/ui/transport/sessionEquipmentRequestState.ts |
| Map | visible | fixture/projection style route | not parcel-canonical | none | MIXED | services/api/src/routes/map.ts |
| Parcel registry | shell UI | not proven | no trustworthy canon | none | SHELL | apps/web/src/app/[locale]/(portal)/parcels/page.tsx |
| KES workspace | substantial UI | real backend exists for orchestration | durable KES tables | real Kafka/outbox | MIXED | apps/web/src/app/[locale]/(portal)/kes/page.tsx, services/svc-tenders/src/server.ts |
| KES orchestration backend | low direct UI visibility but real | real svc-tenders domain backend | durable Postgres | strongest Kafka usage | REAL | kes_orchestrator_*, outbox, projection consumer |
| ICPI | real service endpoints | real in svc-tenders | durable | none found | REAL | services/svc-tenders/src/server.ts |
| Butkhuzi | real service endpoints | real in svc-tenders | durable | none found | REAL | same |
| Carbon lifecycle | partial UI surface | real svc-carbon service | durable | UNVERIFIED | REAL | services/svc-carbon/src/server.ts |
| AI docs assistant | visible | real route + RAG bootstrap | memory persisted, embeddings mixed | none | MIXED | apps/web/src/app/api/ai/ask/route.ts, apps/web/lib/docsRagBootstrap.ts |
| Wallet / token / on-chain | implied by docs/vision | demos/packages only | not platform-canonical | demo Kafka exists | MISSING | packages/financial-layer demo/runtime mix |
| Compliance / KYC | service exists | partial integration | likely durable | UNVERIFIED | MIXED | services/svc-kyc/src |
| Declaration/output allocation | real inside tender/KES area | real in svc-tenders repository/server | durable | outbox tied for tender/KES events | REAL | services/svc-tenders/src/repository.ts |
svc-tenders.501 while a real implementation exists elsewhere