Context
The Embedder workflow currently requires callers to opt into optional
policies explicitly via the extra input, e.g.:
jobs:
embedder:
uses: rubykatzen/baseline/.github/workflows/embedder-shared.yml@v0.17.1
with:
extra: '["release-please"]'
If a repository already uses Release Please (a release-please-config.json,
.release-please-manifest.json, or the Release Please workflow present), the
caller still has to remember to add release-please to extra for Baseline
to check it.
Idea
Let the Embedder detect applicable extras automatically instead of requiring
every consumer to declare them by hand ("zero configuration"). For example,
if Release Please is already wired into the repository, Baseline could infer
and apply the release-please Embedder configuration without an explicit
extra: '["release-please"]' input.
Open questions
- What signals indicate an extra applies (file presence, workflow content,
something else), and how reliable are they across repositories?
- Should auto-detection be the default with
extra/skip still available to
override it, or purely additive to what's explicitly declared?
- Does this generalize to other optional Embedder configurations beyond
release-please, or does each extra need its own detection rule?
- How does auto-detection interact with the existing
skip mechanism when a
repository intentionally does not want a detected extra enforced?
Context
The Embedder workflow currently requires callers to opt into optional
policies explicitly via the
extrainput, e.g.:If a repository already uses Release Please (a
release-please-config.json,.release-please-manifest.json, or the Release Please workflow present), thecaller still has to remember to add
release-pleasetoextrafor Baselineto check it.
Idea
Let the Embedder detect applicable extras automatically instead of requiring
every consumer to declare them by hand ("zero configuration"). For example,
if Release Please is already wired into the repository, Baseline could infer
and apply the
release-pleaseEmbedder configuration without an explicitextra: '["release-please"]'input.Open questions
something else), and how reliable are they across repositories?
extra/skipstill available tooverride it, or purely additive to what's explicitly declared?
release-please, or does each extra need its own detection rule?skipmechanism when arepository intentionally does not want a detected extra enforced?