Large File Decomposition Plan
Status: ACTIVE
Audit Date: 2026-03-16
Cleanup Sprint: 01
Method
- Scope prioritized:
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
Cleanup Sprint: 01
services/apiservices/svc-authpackages/identity-infraservices/svc-tendersapps/web| File | Approx LOC | Responsibility Mix | Recommendation | Status |
| --- | ---: | --- | --- | --- |
| services/svc-tenders/src/repository.ts | 8865 | repository, domain transitions, SQL mapping, projections, KES, auctions, vacancies, accommodations, reference data | split by subdomain repositories first, then query helpers | deferred |
| services/svc-tenders/src/server.ts | 5055 | route registration, validation, authz, command wiring, read paths across many domains | split by route families into modules, keep bootstrap thin | deferred |
| apps/web/src/app/[locale]/(portal)/kes/page.tsx | 5722 | page shell, workspace state, designer UX, storage, orchestration surface | split UI sections and local state hooks | deferred |
| apps/web/src/app/[locale]/[country]/(portal)/kes/page.tsx | 5722 | same as above | deduplicate with locale-neutral composition | deferred |
| apps/web/src/portal/components/TransportWorkspaceClient.tsx | 3110 | logistics booking UI, equipment booking UI, operations UI, filtering, selection state | split by tab and selection/option components | deferred |
| apps/web/src/app/[locale]/(portal)/kes/orchestrator/page.tsx | 3010 | orchestration UI, controls, visualization, state | split control-plane widgets and data hooks | deferred |
| apps/web/src/portal/components/AuctionDetailClient.tsx | 2995 | detail rendering, bidding UX, eligibility, transport, winner fulfillment, session overlays | split action panel, dossier, settlement, fulfillment blocks | deferred |
| apps/web/src/portal/api.ts | 2929 | API mapping, fallbacks, mock handoff, portal DTO translation | split by domain fetchers and fallback adapters | deferred |
| services/svc-auth/src/server.ts | 1720 | auth routes, OIDC, 2FA, sessions, profile, admin | split by route families, keep app bootstrap thin | deferred |
| services/svc-auth/src/repository.ts | 1610 | repository for sessions/accounts/profile/admin/auth state | split by account/session/token/profile repositories | deferred |
| services/svc-tenders/src/validation.ts | 1215 | validation across tenders, auctions, declarations, supporting inputs | split by domain schemas and declaration submodules | deferred |
| packages/identity-infra/src/server.ts | 1177 | auth, stakeholder onboarding, reviewer actions, context, admin roles | split auth routes, stakeholder routes, reviewer routes | deferred |
| apps/web/src/lib/auth/client.ts | 971 | auth client, token handling, refresh/session behavior | split transport, token storage, refresh flow | deferred |
| apps/web/src/app/[locale]/(portal)/landowner-onboarding/LandOwnerOnboardingClient.tsx | 961 | onboarding workflow UI, form orchestration, submission | split step components and persistence hooks | deferred |
| apps/web/src/ui/auctions/AuctionsPortalClient.tsx | 794 | list UX, filtering, overlay state, portal composition | split filter model and row/card composition | deferred |
These were not the largest files overall, but they were high-value mixed-responsibility hotspots and were split now:
| File | Before | After | Status |
| --- | --- | --- | --- |
| services/api/src/routes/auctions.ts | read proxy + fallback + local engine actions in one file | thin route surface + extracted gateway/local-engine modules | patched now |
| services/api/src/routes/tenders.ts | proxy + fallback + legacy local engine + outbox helper in one file | thin route surface + extracted gateway/legacy modules | patched now |
| services/api/src/server.ts | direct route registration wall | grouped registration via dedicated module | patched now |
services/svc-tenders/src/repository.ts
services/svc-tenders/src/server.ts
packages/identity-infra/src/server.ts
packages/identity-infra remains a backend runtime or should be migrated behind a clearer service boundary.services/api remain compatibility scaffolding or get retired behind an explicit dev-only surface.