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 platformu aslen Gürcüce oluşturulmuştur. Gürcüce bir sürüm mevcut olduğunda platform arayüzü, dokümantasyon ve hukuki yorum bakımından yetkili dil Gürcücedir.
Diğer dillere yapılan çeviriler kolaylık sağlamak amacıyla sunulur. Bazı kayıtlar belirli bir akış için farklı bir kaynak veya hukuki yerel ayar taşıyabilir; ancak Gürcüce bir sürüm mevcut olduğunda platform düzeyindeki ifadeler ve yorum bakımından öncelik Gürcüce sürümdedir.
Metadata incomplete: Document ID, Version, Status, Owner Role, Last Review Date, Next Review Date, Change Log
This dependency map records the pre-extraction and first-cut hardening state.
Current truth:
svc-tenders KES HTTP host is retiredservices/svc-tenders/src/kes/* compatibility layer is removedReferences below to deleted svc-tenders route/support or compatibility files are historical unless a line explicitly describes shared backbone code in services/svc-tenders/src/kafka.
| Dependency edge | Current source | Current target | Dependency type | Verdict | Notes |
| --- | --- | --- | --- | --- | --- |
| KES route module -> mixed repository slice | registerKesRoutes.ts | repository.ts | persistence / domain port | should move into KES later | Biggest code-boundary blocker; KES route is isolated but repository ownership is not |
| KES route support -> shell auth/parsers | kesRouteSupport.ts | server.ts | shared support / parser / auth | must remain shared after extraction | requireServiceAuth, parse helpers, and query normalization are shell-level today |
| Payment request -> KYC boundary helper | registerKesRoutes.ts | server.ts | ingress / KYC boundary | can be wrapped later | KES needs it, but it is still shell-owned ingress policy |
| Payment request/approve/settle -> signature gate | registerKesRoutes.ts | server.ts | ingress / signature verification | can be wrapped later | Extraction will need a stable shared contract for this |
| KES route module -> root validation file | registerKesRoutes.ts | validation.ts | validation / schema | should move into KES later | Cleanest near-term hardening target |
| Live gateway -> KES runtime seam | kes-orchestrator.ts | KES_ORCHESTRATOR_SERVICE_URL ?? TENDERS_SERVICE_URL | API / service-target seam | should become API/service contract | Gateway shape is already appropriate for a future extracted runtime |
| Gateway mutation proxy -> Kafka envelope producer | kes-orchestrator.ts | kesEventProducer.ts | kafka / operational eventing | should stay temporary for now | Useful operational stream, but not the canonical durable event boundary |
| KES events consumer -> idempotency store | kesEventConsumer.ts | idempotencyStore.ts | kafka consumer infra | must remain shared after extraction | This behaves like event-backbone infrastructure, not KES-only product logic |
| KES domain-event consumer -> projection tables | kesDomainEventConsumer.ts | KES projection tables from migration 0029 | projection / read-model | unresolved | Feels KES-centric, but still tied to shared outbox/event discipline |
| KES outbox relay -> kes_outbox_events | kesOutboxRelay.ts | outbox tables from migration 0027 | shared event backbone | unresolved | Could stay shared longer even if KES route/runtime moves |
| Web portal API -> gateway KES routes | apps/web/src/portal/api.ts | /api/v1/kes/orchestrator/* | web client / backend contract | should become API/service contract | Real backend consumer |
| KES control-plane view -> portal API | KesControlPlaneView.tsx | apps/web/src/portal/api.ts | web client | can remain shared after extraction | No special blocker here if gateway contract stays stable |
| KES workspace/editor page -> localStorage | page.tsx | browser storage | UI-local state | should stay temporary for now | This is not part of the backend extraction core |
Must remain shared at first:
/auth/me principal resolutionShould become KES-owned later:
Unresolved: