What
Audit and document the support status and default behavior of every database_system backend and ecosystem integration option.
Part of kcenon/common_system#684.
Current read-only analysis observed a potential consumer-facing mismatch:
| Area |
Observed state |
| CMake defaults |
USE_POSTGRESQL=ON, USE_THREAD_SYSTEM=ON, USE_MONITORING_SYSTEM=ON, USE_CONTAINER_SYSTEM=ON |
| vcpkg defaults |
default feature is postgresql; full ecosystem integration is behind the ecosystem feature |
| Backend status |
MongoDB and Redis are documented as experimental |
| Legacy surface |
forwarding/legacy include shims still exist and need lifecycle clarity |
Why
Users can get different behavior depending on whether they build directly with CMake or consume via vcpkg. Experimental backends and optional ecosystem integrations need an explicit feature matrix so consumers know what is production-ready, what is optional, and what is still experimental.
Where
vcpkg.json
cmake/options.cmake
cmake/dependencies.cmake
README.md
docs/BACKENDS.md
docs/advanced/CURRENT_STATE.md
legacy_include/**
How
Approach
- Build a matrix covering PostgreSQL, SQLite, MongoDB, Redis, thread integration, monitoring integration, container integration, OpenSSL, and legacy include shims.
- For each row, document CMake default, vcpkg feature/default status, support level, and required verification command.
- Decide whether CMake and vcpkg defaults should be aligned or explicitly documented as intentionally different.
- Add lifecycle/removal notes for legacy include shims if missing.
- Open targeted follow-ups for any experimental backend that is accidentally presented as production-ready.
Acceptance Criteria
Verification
What
Audit and document the support status and default behavior of every
database_systembackend and ecosystem integration option.Part of kcenon/common_system#684.
Current read-only analysis observed a potential consumer-facing mismatch:
USE_POSTGRESQL=ON,USE_THREAD_SYSTEM=ON,USE_MONITORING_SYSTEM=ON,USE_CONTAINER_SYSTEM=ONpostgresql; full ecosystem integration is behind theecosystemfeatureWhy
Users can get different behavior depending on whether they build directly with CMake or consume via vcpkg. Experimental backends and optional ecosystem integrations need an explicit feature matrix so consumers know what is production-ready, what is optional, and what is still experimental.
Where
vcpkg.jsoncmake/options.cmakecmake/dependencies.cmakeREADME.mddocs/BACKENDS.mddocs/advanced/CURRENT_STATE.mdlegacy_include/**How
Approach
Acceptance Criteria
Verification
vcpkg.json