chore(v3): merge epic/v3 into reorg, resolve #455 conflicts - #701
Merged
wesleyboar merged 15 commits intoAug 17, 2026
Conversation
Adds the ~/.github/PULL_REQUEST_TEMPLATE.md fallback path, plus guidance on raw PR-link URLs in the Related section and quoting/signing replies posted as the user.
Adds Changes-section bullet-grouping guidance and Overview-section length guidance to match the source AGENTS.md.
## Overview Migrates `@extend` usages to `@mixin`, per #340. ## Related - part of #340 - merges: [PRs based on `refactor/mixin-not-extend`](https://github.com/wesleyboar/Core-Styles/pulls?q=is%3Apr+base%3Arefactor%2Fmixin-not-extend) ## Changes - **converted** several `@extend`-based selectors to mixins (see linked PRs for details) - **rebuilt** `dist/` ## Testing 1. `npm run build:css` 2. Confirm `dist/` output is unchanged ## UI See the [UI sections of the merged PRs](https://github.com/wesleyboar/Core-Styles/pulls?q=is%3Apr+base%3Arefactor%2Fmixin-not-extend+is%3Amerged). --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: Wesley B <wesleyboar@users.noreply.github.com>
…688) ## Overview Migrates `.col-stretch-content-y` from deprecated `postcss-extend` to newer `postcss-mixins`. ## Related - part of #340 ## Changes - **converted** `.col-stretch-content-y` to a mixin - **updated** `bootstrap.row.css`'s `.row-col-stretch-content-y .col` to use it - **rebuilt** `dist/` ## Testing 1. `npm run build:css` 2. Confirm `dist/` output is equivalent (only diff is the expected extend-vs-mixin selector-grouping change) ## UI No visual change.
## Overview
1. Replace historical misuse of `<h2>` with TACC `.s-lead` and Bootstrap
`.lead` (both using new TACC `lead` mixin).
2. Add two opt-in bridge stylesheets to:
- preview v3 headings on v2
- restore v2 headings on v3
## Related
- #685
## Changes
- **added** `x-lead` mixin (extracted from `heading-2`), `.s-lead`,
Bootstrap's restyled `.lead`, and matching style-guide demos
- **changed** `heading-2` to alias `x-lead` (no visual change to `<h2>`)
- **added** v3-preview heading bridge
(`core-styles.cms.v3-bridge-for-v2-users.css`) + "CMS (v3)" demo
- **added** v2-recovery heading bridge
(`core-styles.cms.v2-bridge-for-v3-users.css`), frozen for future v3
sites with unmigrated content
- **fixed** v3 bridge's `h4` — medium-weight instead of unstyled
## Testing
1. `npm run build:css`
2. Confirm `dist/core-styles.cms.css`'s `<h2>` rule is unchanged
<sup>(byte-identical to before — only `.s-lead` and Bootstrap's `.lead`
are new)</sup>
3. `npm start`
4. Open `/components/detail/headings--cms-v3`
<sup>(vs. `headings--cms`: h1–h3 shift down a level, h4 is
medium-weight, not unstyled)</sup>
5. See screenshots below
## UI
<details>
<summary>Regression Check</summary>
### Headings: CMS
Unchanged
| Before | After |
| - | - |
| <img width="350" alt="before"
src="https://github.com/user-attachments/assets/05d22c3a-9329-4f95-a85f-5280df143e8e"
/> | <img width="350" alt="after"
src="https://github.com/user-attachments/assets/3ca93094-90f3-4952-bc01-2378b3d6f9ef"
/> |
### Headings: CMS vs. Bootstrap
Unchanged
| Before | After |
| - | - |
| <img width="350" alt="before"
src="https://github.com/user-attachments/assets/0a3def37-f8be-4bbe-8ae6-ad3a43846ca1"
/> | <img width="350" alt="after"
src="https://github.com/user-attachments/assets/8a30854d-366f-4045-b804-b094f1fd69a5"
/> |
</details>
<details open>
<summary>New Change</summary>
### Headings: CMS vs. CMS (v3)
The actual change this PR previews.
| CMS | CMS (v3) |
| - | - |
| <img width="1000" height="1400" alt="headings-cms-today-main"
src="https://github.com/user-attachments/assets/942add96-d35b-4cf2-9fa2-eb438a2ae081"
/> | <img width="1000" height="1400" alt="headings-cms-v3-full"
src="https://github.com/user-attachments/assets/2490c07a-3044-49e9-bffa-cb16f76b9583"
/> |
</details>
<details open>
<summary>New Features</summary>
### `s-lead` & `x-lead`
| `trumps/s-lead` | `tools/x-lead` |
| - | - |
| <img width="330" alt="s-lead"
src="https://github.com/user-attachments/assets/1da7cd14-ee4d-4d89-8ce3-5b324f70b9cd"
/> | <img width="330" alt="x-lead"
src="https://github.com/user-attachments/assets/eeec7b10-07ab-41b7-82a0-21a1a84a7ba3"
/> |
### Bootstrap `lead`
| `bootstrap4/content/lead` |
| - |
| <img width="330" alt="lead"
src="https://github.com/user-attachments/assets/3225b485-582f-4003-9efd-de821ce0bb61"
/> |
</details>
Fix bad footnote sytnax in `HOWTO.md` doc.
## Overview Clarify AGENTS.md's existing "zero explanation per bullet" rule for PR "Changes" sections, since it wasn't preventing verbose bullets in practice. ## Changes - **changed** AGENTS.md's "Changes" section rule to explicitly say detail belongs in the diff, not the bullet
## Overview Add a Vocab section to AGENTS.md standardizing on "deleted" over "removed". ## Changes - **added** Vocab section to AGENTS.md
Pulls in #683's x-lead/s-lead extraction and the two opt-in heading bridges. New .css files from main renamed to .postcss to match this branch's convention; internal @imports updated to match. Dropped the orphaned bootstrap4/content/lead.css dist output (bootstrap4's own .postcss reorg hasn't landed on this branch yet), and untracked the 8 other dist/ files the merge re-added — this branch doesn't commit dist/ (#407).
## Overview Fix bug that `c-button--can-truncate` didn't actually truncate. <details> <summary>Why truncate fail?</summary> `display: inline-flex` on `:--c-button` prevented `text-overflow: ellipsis` from having any effect, so long labels (e.g. `--width-short`/`--width-medium`/`--width-long`) overflowed instead of truncating. </details> ## Changes - **added** `display: inline-block` - **notes** wrong alignment of `.icon` inside truncating button ## Testing 1. `npm run build:css` 2. `npm start` 3. Open http://localhost:3000/components/preview/c-button--can-truncate ## UI | before | after | | - | - | | <img width="780" height="460" alt="before" src="https://github.com/user-attachments/assets/66104a5f-ce15-40a3-882c-2a7fc61f224c" /> | <img width="780" height="460" alt="after" src="https://github.com/user-attachments/assets/5a8dec4c-3d76-4ff0-8d86-842c26d51593" /> |
# Conflicts: # dist/bootstrap4/components/btn.css # dist/components/c-button.css # dist/components/c-form--login.css # dist/components/c-form.css # dist/core-styles.base.css # dist/core-styles.bootstrap4.css # dist/trumps/s-form--login.css # dist/trumps/s-form.css
…ts (#700) ## Overview Automates the mechanical part of syncing a `dist/`-untracked branch (e.g. `epic/v3`) with `main`. <details> `main` commits `dist/`, `epic/v3` doesn't, so every `main` commit touching `dist/` produces a modify/delete conflict with a single correct resolution (keep it deleted). This script does that resolution, then rebuilds and untracks anything the merge re-added, and stops for a human on any other conflict. </details> ## Related - #454 ## Changes - **added** `bin/sync-main.sh` - **added** AGENTS.md note pointing to it ## Testing 1. On a branch that doesn't commit `dist/` (e.g. `epic/v3`), run `bin/sync-main.sh` <sub>(verified live against a disposable branch off `epic/v3`: correctly auto-resolved 10 `dist/` modify/delete conflicts, rebuilt, and committed cleanly)</sub> 2. Confirm it exits with an error and does nothing if run on a branch where `dist/` isn't gitignored 3. Confirm it exits with an error and leaves the merge unresolved if a non-`dist/` conflict is present
Resolves PR #455 conflicts caused by main's PR #683 (x-lead/s-lead extraction, headings-as-v2/v3 bridges) landing at pre-reorg paths. - placed new tools/trumps/elements files under their tacc/ subdir, per this branch's client-library reorg - updated their @import/link paths for the new directory depth - kept the reorg's `shouldLoadBootstrap4` context key, added the new `cms-v3` headings variant using it
Qodo reviews are paused for this user.Troubleshooting steps vary by plan Learn more → On a Teams plan? Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
Merges
epic/v3intoepic/v3--reorgto resolve #455's merge conflicts, caused by main'sx-lead/s-leadextraction and heading bridges (#683) landing at pre-reorg paths.Important
Merge this with a merge commit, not squash. Squashing severs the ancestry link to
epic/v3, which breaks futuregit merge epic/v3conflict resolution here (same issue previously hit onepic/v3itself via #680/#681).Related
Changes
epic/v3intoepic/v3--reorgx-lead/s-lead/heading-bridge files under theirtacc/subdir, per this branch's client-library reorg@import/link paths for the new directory depthshouldLoadBootstrap4context key; added the newcms-v3headings variant using itTesting
npm run build— no errorsnpm run lint—No dist files found in source. Ready to publish.