Skip to content

Preserve external stylesheet styles on native list-item leaves - #766

Merged
chubes4 merged 6 commits into
trunkfrom
fix/issue-755-list-item-styles
Aug 2, 2026
Merged

Preserve external stylesheet styles on native list-item leaves#766
chubes4 merged 6 commits into
trunkfrom
fix/issue-755-list-item-styles

Conversation

@chubes4

@chubes4 chubes4 commented Aug 2, 2026

Copy link
Copy Markdown
Contributor

Closes #755

Root Cause

Normal <li> leaves were excluded from HighValueStyleBoundaryPolicy, so resolved external stylesheet declarations were not projected even though the output remained native core/list and core/list-item blocks. RichText descendants within wrapped list items also lost the source-tag marker needed for projected descendant selectors to match after serialization.

Generic Fix

Treat native list items as style boundaries, preserve wrapped nested-list topology, and materialize source-tag markers on retained list-item RichText descendants. This retains external typography, spacing, positioning, pseudo-element, and direct-descendant selector behavior without fixture-specific selectors or non-native fallbacks.

Tests

  • composer run test:unit
  • composer run test:canonical

Fixture 89 Final Combined Evidence

At exact SHA 50309edbc004370de3f3c2468f013b0eee4fa1ce: visual 0/10,325,760; 170/170 native; 340/340 editor; zero core/html/warnings/findings; viewport 1280x8067.

AI assistance: gpt-5.6-sol using OpenCode inspected ancestry, replayed the isolated #755 patches, ran tests, and drafted this PR. Chris Huber is responsible for every line.

chubes4 added 5 commits August 1, 2026 22:22
AI assistance: gpt-5.6-sol using OpenCode replayed the #755 repair onto current trunk and verified the focused transformer coverage. Chris Huber is responsible for every line.
AI assistance: gpt-5.6-sol using OpenCode replayed the #755 repair onto current trunk and verified the focused transformer coverage. Chris Huber is responsible for every line.
AI assistance: gpt-5.6-sol using OpenCode replayed the #755 repair onto current trunk and verified the focused transformer coverage. Chris Huber is responsible for every line.
AI assistance: gpt-5.6-sol using OpenCode replayed the #755 repair onto current trunk and verified the focused transformer coverage. Chris Huber is responsible for every line.
AI assistance: gpt-5.6-sol using OpenCode replayed the #755 repair onto current trunk and verified the focused transformer coverage. Chris Huber is responsible for every line.
AI assistance: gpt-5.6-sol via OpenCode was used to diagnose, implement, test, and verify this change. Chris Huber remains responsible for every line.
@chubes4

chubes4 commented Aug 2, 2026

Copy link
Copy Markdown
Contributor Author

Updated this branch with merge commit 238c6dc from origin/trunk at fde69af.

Conflict resolution: retained both stylesheet projection contracts in artifact-author-stylesheet-projection.php: #769 native-table selector/specificity, normalization, border, and runtime-validity coverage; and #755 native list-item topology, retained RichText/source-marker styles, pseudo-elements, and Gutenberg-validity coverage.

Tests:

  • composer test (from php-transformer)
  • php tests/unit/artifact-author-stylesheet-projection.php
  • git diff --check origin/trunk...HEAD

AI assistance: gpt-5.6-sol via OpenCode was used to diagnose, implement, test, and verify this change. Chris Huber remains responsible for every line.

@chubes4
chubes4 merged commit 641963b into trunk Aug 2, 2026
4 checks passed
@chubes4
chubes4 deleted the fix/issue-755-list-item-styles branch August 2, 2026 12:02
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.

Preserve external stylesheet styles on native list-item leaves

1 participant