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.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 Matrix
| 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 | no strong Kafka evidence | MIXED | , |
| Landowner onboarding | present through stakeholder/KES surfaces | partial | partial | partial | MIXED | same as above + KES routes |
| Tenders | real list/detail/admin flow | real in | durable Postgres | outbox/domain-events | REAL | |
| Auctions | strong UI | real read/admin declaration path, but action path mixed | some durable reads, local action engine elsewhere | limited | MIXED | , |
| Bid submission | polished UI | local engine/session-local behavior dominates | not trustworthy canonically | none meaningful | UI-FIRST | , |
| Winner flow | visible | mixed auction + session-local handoff state | partial | none meaningful | MIXED | , |
| Vacancies | real UI | real routes, but fallback catalogs exist | durable in service | no strong Kafka evidence | MIXED | , |
| Accommodations | real UI | real 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 | , |
| Map | visible | fixture/projection style route | not parcel-canonical | none | MIXED | |
| Parcel registry | shell UI | not proven | no trustworthy canon | none | SHELL | |
| KES workspace | substantial UI | real backend exists for orchestration | durable KES tables | real Kafka/outbox | MIXED | , |
| KES orchestration backend | low direct UI visibility but real | real domain backend | durable Postgres | strongest Kafka usage | REAL | , outbox, projection consumer |
| ICPI | real service endpoints | real in | durable | none found | REAL | |
| Butkhuzi | real service endpoints | real in | durable | none found | REAL | same |
| Carbon lifecycle | partial UI surface | real service | durable | UNVERIFIED | REAL | |
| AI docs assistant | visible | real route + RAG bootstrap | memory persisted, embeddings mixed | none | MIXED | , |
| Wallet / token / on-chain | implied by docs/vision | demos/packages only | not platform-canonical | demo Kafka exists | MISSING | demo/runtime mix |
| Compliance / KYC | service exists | partial integration | likely durable | UNVERIFIED | MIXED | |
| Declaration/output allocation | real inside tender/KES area | real in repository/server | durable | outbox tied for tender/KES events | REAL | |