Skip to content

Adds adoption caveats to family reference - #220

Merged
johnnyt merged 1 commit into
mainfrom
st-6h8d-family-reference-ci-caveats
Aug 22, 2026
Merged

Adds adoption caveats to family reference#220
johnnyt merged 1 commit into
mainfrom
st-6h8d-family-reference-ci-caveats

Conversation

@johnnyt

@johnnyt johnnyt commented Aug 22, 2026

Copy link
Copy Markdown
Member

Why

docs/family-reference.md tells the sibling repos what to copy from here.
Two of its instructions were wrong or incomplete in ways only discovered by
running them during the 2026-08 fleet campaigns, so the next adopting repo
would have rediscovered both the hard way.

What

CI guidance. A new subsection under "What is not reference and never was"
states two rules the workflow file cannot tell you on its own. First, the gate
must run in the same env its tooling is defined for: predicator-ex's workflow
set a global MIX_ENV=test while ex_quality is only: :dev, so the gate task
did not exist in CI at all and the gap surfaced only on the first live run.
Second, CI trigger behavior for requests based on non-default branches must be
verified on a live request - a campaign report asserted stacked requests get no
CI run, and the very next stacked request ran CI anyway.

The gate.verify caveat. The section marking gate.verify copy-verbatim
now carries st-hcgl's resolution, and the table row is narrowed to match. A
git-dep consumer already inherits this repo's mix tasks through the compiled
lib/, so a verbatim local copy redefines a module and warnings_as_errors
turns that into a red gate. The 2026-08-22 ruling was option (a): wire
gate.attest to the dep-provided task and take no copy. The verbatim path
remains live only for a repo that is not on statifier as a git dep. The Hex
package excludes lib/mix, so the collision is git-dep-specific and
disappears at publication, and st-wgr0's extraction is kept framed as the
eventual fix that was deliberately deferred rather than the one adopted.

Notes

Docs-only diff, so gate.rb reported its carve-out and no quality gate ran -
that is a skipped gate, not a green one. mix quality --profile merge ran
anyway per this repo's /wurk:mr extension and was fully green; its ADR judge
stage skipped cleanly because docs/ is not a judged ADR scope. No changelog
fragment: this is an agent-facing internal document with no public surface.

Closes st-6h8d

Two adoption rules learned live during the 2026-08 fleet campaigns,
so the next adopting repo reads them instead of rediscovering them.

CI: the gate must run in the same env the gate tooling is defined
for - a global MIX_ENV drops a dev-only gate task out of the build
it protects - and stacked-request CI triggering must be verified on
a live request rather than read off the workflow file.

gate.verify: st-hcgl's resolution folds into the exception section
and its table row. A git-dep consumer already inherits this repo's
mix tasks, so a verbatim copy redefines a module and reddens the
gate; the ruling is to wire gate.attest to the dep-provided task
and take no copy. The verbatim path stays live only for a repo that
is not on statifier as a git dep.

Refs: st-6h8d
@johnnyt
johnnyt merged commit 3e5c696 into main Aug 22, 2026
1 check passed
@johnnyt
johnnyt deleted the st-6h8d-family-reference-ci-caveats branch August 22, 2026 21:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant