Skip to content

ci(infra): add ecosystem cross-build workflow #660

Description

@kcenon

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

  1. Workflow triggers on push/PR to common_system, and (optionally) on repository_dispatch from sibling repos
  2. Matrix fetches each of the 8 systems at a known ref (default branch unless overridden)
  3. Builds the dependency graph in leaf-to-root order: pacs -> database -> container -> network -> monitoring -> thread -> logger -> common
  4. Reports per-system build status with logs
  5. Documented escape hatch for releases (label skip-cross-build)

Acceptance Criteria

  • Workflow file exists and is referenced from docs/kcenon-system-layout.md (docs(layout): publish kcenon-system-layout.md v1.0 #658)
  • Successful run on a no-op PR within 20 minutes total
  • Failure reproducible and human-debuggable from job logs
  • README has a one-line note about the gate
  • Documented in the layout standard

Out of Scope

  • Cross-repo change-coordination tooling beyond CI
  • Automatic ref-pinning across repos

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions