API Auction Tender Boundary Status
Scope
This document describes the current boundary for auctions and tenders.
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 document describes the current boundary for auctions and tenders.
services/apiIt separates:
It does not claim that auction/tender extraction is already done.
| Public route/path | Current classification | Current behavior | Notes |
| --- | --- | --- | --- |
| GET /api/v1/auctions | canonical upstream proxy with temporary gateway-local compatibility fallback | tries upstream via auctions/gateway.ts, falls back to local list projection from auctions/engine.ts | response headers expose whether source was upstream or gateway-local |
| GET /api/v1/auctions/:id | canonical upstream proxy with temporary gateway-local compatibility fallback | same pattern as list route | local fallback still uses gateway viewer/fixture logic |
| POST /api/v1/auctions/create | temporary gateway-local compatibility path | executes registerAuctionLocalEngineRoutes against the local engine | not canonical durable backend |
| POST /api/v1/auctions/:id/announce | temporary gateway-local compatibility path | gateway-local action | not canonical durable backend |
| POST /api/v1/auctions/:id/open | temporary gateway-local compatibility path | gateway-local action | not canonical durable backend |
| POST /api/v1/auctions/:id/bids | temporary gateway-local compatibility path | gateway-local action | not canonical durable backend |
| POST /api/v1/auctions/:id/close | temporary gateway-local compatibility path | gateway-local action | not canonical durable backend |
| POST /api/v1/auctions/:id/award | temporary gateway-local compatibility path | gateway-local action | not canonical durable backend |
| POST /api/v1/auctions/:id/settle | temporary gateway-local compatibility path | gateway-local action | not canonical durable backend |
| Public route/path | Current classification | Current behavior | Notes |
| --- | --- | --- | --- |
| GET /api/v1/tenders | canonical upstream proxy with temporary gateway-local compatibility fallback | proxies upstream first through tenders/gateway.ts; on fetch failure, falls back to gateway-local legacy list projection | fallback is read-only and compatibility-only |
| GET /api/v1/tenders/:id | canonical upstream proxy with temporary gateway-local compatibility fallback | same pattern as list route | fallback uses gateway-local legacy tender projection |
| POST /api/v1/tenders/submit | canonical upstream proxy | no local-engine fallback | canonical public tender submit path |
| GET /api/v1/tenders/me | canonical upstream proxy | no local-engine fallback | auth-guarded upstream proxy |
| GET /api/v1/tenders/admin/queue | canonical upstream proxy | no local-engine fallback | auth/policy-gated upstream proxy |
| POST /api/v1/tenders/admin/:id/approve | canonical upstream proxy | no local-engine fallback | auth/policy-gated upstream proxy |
| POST /api/v1/tenders/admin/:id/reject | canonical upstream proxy | no local-engine fallback | auth/policy-gated upstream proxy |
| POST /api/v1/tenders/legacy/propose | legacy local-engine path | executes gateway-local legacy tender action | may emit legacy tender outbox event |
| POST /api/v1/tenders/legacy/:id/bids | legacy local-engine path | executes gateway-local legacy tender action | may emit legacy tender outbox event |
| POST /api/v1/tenders/legacy/:id/close | legacy local-engine path | executes gateway-local legacy tender action | may emit legacy tender outbox event |
| POST /api/v1/tenders/legacy/:id/award/propose | legacy local-engine path | executes gateway-local legacy tender action | may emit legacy tender outbox event |
| POST /api/v1/tenders/legacy/:id/award/ratify | legacy local-engine path | executes gateway-local legacy tender action | may emit legacy tender outbox event |
The tender legacy path has an extra boundary concern beyond route handling:
TENDERS_SERVICE_URLLEGACY_TENDERS_OUTBOX_PATH, default /legacy/tenders/eventsTENDER_CREATEDBID_SUBMITTEDBIDDING_CLOSEDAWARD_PROPOSEDAWARD_RATIFIEDClassification:
gateway-side event emission pathlegacy compatibility behavior/legacy/* routes mounted from legacyRoutes.ts/legacy/* routesThe strongest follow-on cleanup target is:
That next step should: