Skip to content

feat: add AGENTS.colormath.md as a third vendored file - #18

Merged
craigmbooth merged 1 commit into
mainfrom
feat/agents-colormath-md
Aug 4, 2026
Merged

feat: add AGENTS.colormath.md as a third vendored file#18
craigmbooth merged 1 commit into
mainfrom
feat/agents-colormath-md

Conversation

@craigmbooth

Copy link
Copy Markdown
Collaborator

What

Adds AGENTS.colormath.md, a third vendored file alongside Makefile.colormath and eslint.config.colormath.mjs, refreshed by the same make colormath-update. Stamps both refs to v3.1.0.

Why

Consumers each wrote their own agent docs, and the shared half had already drifted. Surveying four apps, the gate suite was documented four ways — sixteen gates, nine, nine, seven — and one repo's doc named two disabled gates that were not the two its gates.yml actually disables. Each copy was right when it was written, and nothing marks the ones that stopped being right.

What's in the shared file

What being a colormath app means · the sixteen gates with their local make mirrors and how to pass each · the preflight rhythm · the /colormath:ship pipeline · layering, design-token and docstring conventions · the ADR practice · the guardrails (never hand-edit the vendored files, never push to the default branch, never touch .env, justify every CVE ignore).

What deliberately stays with the consumer

  • Which gates it disables. That lives in gates.yml (enable-<gate>: false) and COLORMATH_PREFLIGHT_SKIP — prose about them is exactly what went stale, so the shared file points at those two as the authority.
  • Where its design tokens live. The rule is shared; the location is local.

Risk

Additive. Nothing reads the file in CI; no gate, workflow input or Makefile target changes. A consumer that never vendors it is unaffected; one that does gets it on its next colormath-update and wires up the @AGENTS.colormath.md import in that same PR. MINOR per LIFECYCLE.md.

example/ carries the wiring as the reference consumer.

Verification

  • refs-lockstep checked locally: gates.yml default and COLORMATH_REF both v3.1.0.
  • The import chain was exercised in all four consumer repos (CLAUDE.mdAGENTS.mdAGENTS.colormath.md), each answering questions only the shared file covers.

🤖 Generated with Claude Code

https://claude.ai/code/session_016fYp58qmSaG5iYpDZouXTv

Consumers each carried their own agent docs, and the shared half had
already drifted apart. Surveying four apps, the gate suite was documented
four ways — sixteen gates, nine, nine, seven — and one repo named two
disabled gates that were not the two its gates.yml actually disables. Each
copy was right when written; nothing marks the ones that stopped being.

AGENTS.colormath.md carries the half that is identical everywhere: what
being a colormath app means, the sixteen gates with their local make
mirrors and how to pass each, the preflight rhythm, the /colormath:ship
pipeline, the layering and design-token and docstring conventions, the ADR
practice, and the guardrails. It vendors and refreshes exactly like
Makefile.colormath and eslint.config.colormath.mjs.

Two things deliberately stay with the consumer: which gates it disables —
that lives in gates.yml and COLORMATH_PREFLIGHT_SKIP, and prose about them
is precisely what went stale — and where its design tokens live. The shared
file states the rule and points at the local file for the value.

Additive: nothing reads it in CI, and no gate, input or target changes.
example/ carries the wiring as the reference consumer.

Stamps both refs to v3.1.0 per LIFECYCLE.md.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016fYp58qmSaG5iYpDZouXTv
@craigmbooth
craigmbooth merged commit 4a172d6 into main Aug 4, 2026
17 checks passed
@craigmbooth
craigmbooth deleted the feat/agents-colormath-md branch August 4, 2026 11:36
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