ICPI Code Boundary Hardening
Status: ACTIVE
Sprint: Extraction Prep Sprint 45
Purpose
This document records the first real ICPI code-boundary hardening pass.
The goal of this sprint was not to extract ICPI out of svc-tenders.
The goal was to reduce ICPI dependence on mixed root files by moving clearly ICPI-owned contracts and validation into ICPI-owned modules first.
What Moved Into ICPI-Owned Files
Contracts
New file:
services/svc-tenders/src/icpi/contracts.ts
Moved here:
- ICPI domain-facing value shapes
- ICPI request/input shapes
- ICPI response shapes
- ICPI repository-port contract
- ICPI route-support contract
Most important effect:
- ICPI types are no longer primarily defined inside the mixed root