Summary
Add .github/workflows/ecosystem-cross-build.yml to common_system that fetches all 8 sibling repositories and verifies a structural change in any one does not break the others.
Part of #656. Depends on the layout standard from #658.
Why
- Touching layout/cmake in one repo can silently break sibling consumers (e.g.,
#include <kcenon/...> paths)
- Without an automated cross-build, regressions are caught late by manual integration
- A CI gate enforces the standard rather than relying on review discipline
Scope
- Workflow triggers on push/PR to common_system, and (optionally) on
repository_dispatch from sibling repos
- Matrix fetches each of the 8 systems at a known ref (default branch unless overridden)
- Builds the dependency graph in leaf-to-root order: pacs -> database -> container -> network -> monitoring -> thread -> logger -> common
- Reports per-system build status with logs
- Documented escape hatch for releases (label
skip-cross-build)
Acceptance Criteria
Out of Scope
- Cross-repo change-coordination tooling beyond CI
- Automatic ref-pinning across repos
Summary
Add
.github/workflows/ecosystem-cross-build.ymlto common_system that fetches all 8 sibling repositories and verifies a structural change in any one does not break the others.Part of #656. Depends on the layout standard from #658.
Why
#include <kcenon/...>paths)Scope
repository_dispatchfrom sibling reposskip-cross-build)Acceptance Criteria
docs/kcenon-system-layout.md(docs(layout): publish kcenon-system-layout.md v1.0 #658)Out of Scope