What
Tracking epic for aligning third-party dependency version overrides across all 8 ecosystem packages. A comprehensive vcpkg deployment readiness audit revealed inconsistencies in version pinning that could cause ABI incompatibilities or silent version drift when packages are used together.
- Current: Several systems omit overrides for shared third-party dependencies that peer systems pin
- Expected: All systems that use (directly or transitively) a shared dependency pin the same version in their
vcpkg.json overrides
- Scope:
vcpkg.json overrides sections across monitoring_system, database_system, pacs_system; compiler requirement documentation across monitoring_system, database_system, network_system
Why
- vcpkg resolves overrides per-manifest during library builds. If system A pins spdlog to 1.13.0 but system B doesn't pin it, system B may build against a different spdlog version — causing ABI mismatches when both are linked into a consumer project
- The ecosystem's DEPENDENCY_MATRIX.md defines standard versions, but not all systems enforce them via vcpkg overrides
- This is the last non-trivial blocker before ecosystem-wide vcpkg deployment readiness
Override Coverage Matrix (Current State)
| Package |
Standard |
common |
thread |
logger |
container |
monitoring |
database |
network |
pacs |
| gtest |
1.14.0 |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| benchmark |
1.8.3 |
✅ |
✅ |
✅ |
✅ |
❌ |
✅ |
✅ |
✅ |
| grpc |
1.51.1 |
— |
— |
✅ |
✅ |
✅ |
❌ |
✅ |
— |
| protobuf |
3.21.12 |
— |
— |
✅ |
✅ |
✅ |
❌ |
✅ |
— |
| asio |
1.30.2 |
— |
— |
— |
— |
— |
✅ |
✅ |
❌ |
Where
| System |
Missing Overrides |
Risk |
| monitoring_system |
benchmark 1.8.3 |
Medium — all 7 peers pin it |
| database_system |
grpc 1.51.1, protobuf 3.21.12 |
Medium — features use these without pinning |
| pacs_system |
asio 1.30.2 |
Low — transitive via network_system |
Compiler Documentation Gaps
| System |
Documented GCC |
Actual GCC (transitive) |
Issue |
| monitoring_system |
11+ |
13+ (thread_system) |
Docs mismatch |
| database_system |
11+ |
13+ (thread_system) |
Docs mismatch |
| network_system |
11+ |
13+ (thread_system) |
Docs mismatch |
How
Sub-Issues
Phase 1: Override Alignment (vcpkg.json fixes)
Phase 2: Documentation Alignment (README updates)
Phase 3: Config Template & Build Fixes
Acceptance Criteria
What
Tracking epic for aligning third-party dependency version overrides across all 8 ecosystem packages. A comprehensive vcpkg deployment readiness audit revealed inconsistencies in version pinning that could cause ABI incompatibilities or silent version drift when packages are used together.
vcpkg.jsonoverridesvcpkg.jsonoverrides sections across monitoring_system, database_system, pacs_system; compiler requirement documentation across monitoring_system, database_system, network_systemWhy
Override Coverage Matrix (Current State)
Where
Compiler Documentation Gaps
How
Sub-Issues
Phase 1: Override Alignment (vcpkg.json fixes)
Phase 2: Documentation Alignment (README updates)
Phase 3: Config Template & Build Fixes
Acceptance Criteria