ICPI Handoff Plan
Goal
This plan defines the safest real sequence for lifting ICPI out of svc-tenders while keeping:
Resolving locale, route permissions, and workspace projection.
النطاق الحالي: ضيف
الفئة: 10_normative | الإصدار: v1.0.0
المالك: DOCUMENT_CUSTODIAN | دورة المراجعة: 90 يومًا
جهة الاعتماد: GOVERNANCE_ADMIN
بوابة الوثائق للقراءة فقط. نقاط نهاية التعديل والتغيير معطلة.
منصة Kvary أُنشئت أصلًا باللغة الجورجية. وحيثما تتوفر نسخة جورجية، تبقى الجورجية هي اللغة المعتمدة لواجهة المنصة والوثائق والتفسير القانوني.
تُوفَّر الترجمات إلى اللغات الأخرى لسهولة الاستخدام فقط. وقد تنشأ بعض السجلات بلغات أخرى وتحمل لغة مصدر أو لغة قانونية خاصة بذلك المسار، ولكن حيثما تتوفر نسخة جورجية تكون الأولوية للنسخة الجورجية في صياغة المنصة وتفسيرها.
البيانات الوصفية غير مكتملة: Document ID, Version, Status, Owner Role, Last Review Date, Next Review Date, Change Log
This plan defines the safest real sequence for lifting ICPI out of svc-tenders while keeping:
ICPI should continue to rely on a very small shared shell during and immediately after extraction:
Everything else should be treated as ICPI-owned move material unless later evidence says otherwise.
Move or copy first:
0007 and 0008Do not change route shapes at this step.
Create the smallest possible runtime shell for the extracted ICPI host:
requireServiceAuthThis is the first step that replaces temporary hosting in svc-tenders.
Do not change:
GET /api/v1/icpi/*POST /api/v1/icpi/upsertOnly change the target behind ICPI_SERVICE_URL.
Deployment cutover should prefer:
ICPI_SERVICE_URL=<new-icpi-runtime>while leaving:
TENDERS_SERVICE_URLunchanged for other domains.
The fallback shape in services/api/src/routes/icpi.ts means rollback remains easy as long as the old colocated host still exists.
During the first cutover window:
svc-tenders ICPI host availableOnly after parity is proven:
services/svc-tenders/src/server.tssvc-tendersICPI_SERVICE_URLICPI_PROXY_TIMEOUT_MSDATABASE_URLJWT_SECRETAUTH_SERVICE_URLPORTGET /api/v1/icpi/pricesGET /api/v1/icpi/suggestGET /api/v1/icpi/latest/:itemCodeGET /api/v1/icpi/estimatePOST /api/v1/icpi/upsert200 / 400 / 404 behaviorreasonCode values for current known failuresservices/api build passessvc-tenders build still passes during staged migrationThe rollback path should be operationally simple:
ICPI_SERVICE_URL back to the old colocated host, or unset it so gateway falls back to TENDERS_SERVICE_URLsvc-tenders ICPI route registration intact until cutover confidence is highThis is why old colocated ICPI hosting should not be removed in the same first step as the initial gateway cutover.
502 / 504 rates for /api/v1/icpi/*401 behavior for POST /api/v1/icpi/upsertprices, suggest, latest, and estimatesvc-tenders implementation and the new ICPI hostICPI_SERVICE_URL, JWT_SECRET, or AUTH_SERVICE_URL