Structure: a public API and its implementation; no executable of its own.
Acceptance tests: a library has no running process; where the profile has acceptance
scenarios, they drive the public API, in C++ through a test-only CLI wrapper.
Pipeline: build, test, and, where the language has packages, package; no container image.
Rationale: a consumer depends on the published API, so the guidelines stress semantic
versioning and a small public surface.