Skip to content

feat(steelbore-standard): sync §11 single-source change — v2.03 - #68

Merged
UnbreakableMJ merged 1 commit into
mainfrom
feat/palette-single-source-v2.03
Sep 14, 2026
Merged

UnbreakableMJ merged 1 commit into
mainfrom
feat/palette-single-source-v2.03

Conversation

@UnbreakableMJ

Copy link
Copy Markdown
Contributor

Stacked on #67 — this removes the temporary Standard exemption that #67 introduces, so it needs that branch as its base. GitHub retargets to main once #67 merges.

Skill-side sync of Standard#36, at the same version and date, per the two-repo rule. Both repositories now read 2.03 / 2026-09-14.

What changed

§11 no longer restates colour values. All 43 hexes and 9 RGB triples leave references/palettes.md; each table names the token and the role it plays, with the value read from steelbore.toml.

§11.4's tie-break clause is inverted — the normative heart of v2.03. The file governs every value; §11 governs the contract around it: which roles exist, which are mandatory, what the contrast guarantee covers, which palettes are adoptable.

A defect worth naming

My automated column-drop removed §11.1.1's Variant hex column outright. That destroyed the base→lift mapping the table exists to state, and left this file disagreeing with the .texi, where I'd converted the same column properly. Caught by comparing the two sides and rebuilt:

| Theme token  | Base token     | Variant token           | Contrast vs Void Navy |
| `accent`     | Plasma Orange  | **Plasma Orange Lift**  | 8.70:1                |
| `background` | Void Navy      | (unchanged)             | (canvas)              |

Dropping a column is only safe when something else still carries the meaning.

Exemption removed, exemption added

Removed: the temporary spacecraft-steelbore-standard carve-out. It existed because §11 was the normative specification and carried the values itself, so they could not be removed in this repo alone. v2.03 is the two-repo change that fixes that, so the skill is now gated like everything else.

Added: CHANGELOG.md anywhere. A changelog is a historical record — the v1.45 entry describing Tokyo Night's arrival quotes the canvas that version introduced, and editing it to name a token would falsify what the release actually said. Those values are also inert: nothing reads a changelog to resolve a colour. Without this, the gate flagged 45 historical quotations as live duplication.

That makes three carve-outs, each for a different reason: code fences (the literal is syntactically required), contrast ratios (measurements and WCAG thresholds are textually identical), and changelogs (history must not be rewritten).

Contrast ratios stay

69 of them here, 168 in the .texi. 15.09:1 is a measurement; 4.5:1 is the AA rule. No regex separates them, so removing one class removes the other.

Verification

palette single-source OK (298 markdown files carry no colour values)
frontmatter OK (45 skills checked)
0 license-file problem(s). Checked 45 skills.
skill references OK (49 skills in catalogue)
AGENTS.md inventories OK (44 root skills, 131 Standard sections)
description cap → 994 chars (only the version number moved)
drift sweep → clean

skill masthead 2.03 / 2026-09-14   ==   .texi 2.03 / 2026-09-14

🤖 Generated with Claude Code

@UnbreakableMJ
UnbreakableMJ changed the base branch from fix/palette-single-source to main September 14, 2026 15:38
Skill-side sync of Standard PR #36, at the same version and date.

§11 no longer restates colour values. All 43 hexes and 9 RGB triples
leave references/palettes.md; each table names the token and the role it
plays, with the value read from steelbore.toml. §11.4's tie-break clause
is inverted: the file governs every value, §11 governs the contract
around it — which roles exist, which are mandatory, what the contrast
guarantee covers, which palettes are adoptable.

§11.1.1's "Variant hex" column became "Variant token" rather than being
dropped. An automated column-drop removed it outright at first, which
destroyed the base-to-lift mapping the table exists to state and left
this file disagreeing with the .texi; it was rebuilt to read
Plasma Orange Lift where it read a hex, with unlifted rows saying
(unchanged) instead of repeating their base.

Contrast ratios stay — 69 of them here. A measured ratio and a WCAG
threshold are textually identical, so removing one class removes the
other.

The gate's temporary Standard exemption is removed. It existed because
§11 was the normative specification and carried the values itself, so
they could not be removed in this repository alone. v2.03 is the
two-repo change that fixes that, so the skill is now checked like
everything else.

A second exemption is added in its place, for CHANGELOG.md anywhere. A
changelog is a historical record: the v1.45 entry describing Tokyo
Night's arrival quotes the canvas that version introduced, and editing it
to name a token would falsify what the release actually said. Those
values are also inert — nothing reads a changelog to resolve a colour.
Without this the gate flagged 45 historical quotations as live
duplication.

Both repositories now read 2.03 / 2026-09-14. Bundles rebuilt; palette,
frontmatter, license, cross-reference and inventory gates pass; drift
sweep clean.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 11483e8982

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

# The Steelbore Standard — Compliance Reference

**Version:** 2.02 | **Date:** 2026-09-12 | **Author:** Mohamed Hammad
**Version:** 2.03 | **Date:** 2026-09-14 | **Author:** Mohamed Hammad

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Align the palette skill with the new authority order

After this version switch, steelbore-color-palette/SKILL.md:29-34 still says §11 was last amended in v1.45 and, critically, that the Standard wins disagreements, while assets/steelbore.toml also identifies v1.45 as its governing Standard. In the exact conflict this release is meant to resolve, an agent loading the required palette skill is therefore told the opposite precedence and may discard the authoritative TOML value. Update the palette skill and TOML authority metadata, then rebuild both palette bundles as part of the v2.03 sync.

AGENTS.md reference: AGENTS.md:L47-L52

Useful? React with 👍 / 👎.

Comment on lines +64 to +66
alone — that took a two-repo change at a matching version. v2.03 inverted §11.4:
the TOML now governs every value and §11 governs the contract around it, so the
exemption is gone and the skill is checked like everything else.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Gate the shipped CSS derivatives against the TOML

Once the TOML governs every value, this transition still leaves nine literal palette values in both steelbore-color-palette/assets/spacecraft.css and its shipped spacecraft-texinfo-document/assets/spacecraft.css derivative without a generator or comparison gate. The checker only scans .md files, so after a future TOML edit CI can report single-source OK while generated HTML continues using stale colors. Generate these stylesheets from the TOML or add a value/byte drift check covering both copies.

Useful? React with 👍 / 👎.

@UnbreakableMJ
UnbreakableMJ force-pushed the feat/palette-single-source-v2.03 branch from 11483e8 to 9d14316 Compare September 14, 2026 15:38
@UnbreakableMJ
UnbreakableMJ merged commit 0e4a8bc into main Sep 14, 2026
4 checks passed
@UnbreakableMJ
UnbreakableMJ deleted the feat/palette-single-source-v2.03 branch September 14, 2026 15:39
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