You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The expanded 深度思考 body gained a 2px link-tinted left rail in #2645. Two problems:
It is not the upstream Astryx design. The ejected ChatReasoning atoms own the body's reading geometry already — secondary text color (xv1l7n4), 8px top padding (x1xye8es), 22px inline-start indent (x1f43n9v, calc(16px + spacing-1-5)) — and none of the ejected atoms draws a border. Upstream differentiates reasoning by color + indent alone.
Half of the added rule was dead code. The atoms' stacked :not(#\#) specificity beats the product class, so padding-top: 2px and padding-inline-start: 12px in padding: 2px 0 4px 12px never applied; the visible line-to-text gap was the atom's 22px, not the authored 12px.
The saturated 32%-link rail also visually outweighed the muted text it framed — the loudest element in the block was the decoration.
What
Restore the pre-#2645 rule on .maka-chat-reasoning-content (white-space: pre-wrap; word-break: break-word; only) and let the upstream atoms own layout. Net diff vs. before #2645 is zero; the comment now records why no rail.
Validation
node --test dist/__tests__/chat-turn-answer-identity.test.js — 8/8 pass, including the test that pins white-space: pre-wrap on this rule.
No test, story, or e2e fixture references the inset declarations (grep: border-inline-start, margin-inline-start: 22px only matched this rule).
AI-assisted (Maka): investigation, diff, and this description; geometry claims verified against the compiled atoms in @astryxdesign/core dist.
#2645 gave the expanded 深度思考 body a 2px link-tinted inset border plus
its own margin and padding. The saturated rail visually outweighed the
muted secondary text it framed, and a rail is not the upstream Astryx
design: the ejected ChatReasoning atoms already own the body's reading
geometry (secondary color, 8px top padding, 22px inline-start indent) at
ID-level specificity, so the product rule's padding-top and
padding-inline-start never even applied.
Restore the pre-#2645 rule — pre-wrap and word-break only — and let the
upstream atoms own the layout. No test or fixture pinned the inset; the
chat-turn-answer-identity suite (which pins white-space: pre-wrap) passes.
Generated-by: Maka
The reason will be displayed to describe this comment to others. Learn more.
Reviewed exact head 11c0b0b18d478f4fbae2c6c307c9d5dd32ecfb9c: no P0-P3 findings.
This change returns .maka-chat-reasoning-content to the pre-#2645 ownership boundary: Maka keeps only whitespace preservation and long-token wrapping, while the ejected Astryx atoms remain the sole owner of the body's 8px top padding and 22px inline-start padding. The removed product rule's top and inline-start padding were already overridden by those higher-specificity atoms; deleting its effective margin, border, and bottom padding therefore removes the duplicate layout authority without changing the reasoning DOM or interaction contract.
The exact-head hosted checks are green. I also validated the current-main merge result: it changes only this CSS rule, preserves the reviewed blob, builds Core and UI, and passes all 247 UI tests. Biome and git diff --check are clean; there are no existing reviews or review threads.
Posted by an automated review agent operated by @M4n5ter. This is not an
independent human review and does not satisfy the committer review required by
CONTRIBUTING.md. A human is accountable for this comment — please push back if
anything here is wrong.
…ry (apache#4089)
apache#2645 gave the expanded 深度思考 body a 2px link-tinted inset border plus
its own margin and padding. The saturated rail visually outweighed the
muted secondary text it framed, and a rail is not the upstream Astryx
design: the ejected ChatReasoning atoms already own the body's reading
geometry (secondary color, 8px top padding, 22px inline-start indent) at
ID-level specificity, so the product rule's padding-top and
padding-inline-start never even applied.
Restore the pre-apache#2645 rule — pre-wrap and word-break only — and let the
upstream atoms own the layout. No test or fixture pinned the inset; the
chat-turn-answer-identity suite (which pins white-space: pre-wrap) passes.
Generated-by: Maka
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
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.
Why
The expanded 深度思考 body gained a 2px link-tinted left rail in #2645. Two problems:
ChatReasoningatoms own the body's reading geometry already — secondary text color (xv1l7n4), 8px top padding (x1xye8es), 22px inline-start indent (x1f43n9v,calc(16px + spacing-1-5)) — and none of the ejected atoms draws a border. Upstream differentiates reasoning by color + indent alone.:not(#\#)specificity beats the product class, sopadding-top: 2pxandpadding-inline-start: 12pxinpadding: 2px 0 4px 12pxnever applied; the visible line-to-text gap was the atom's 22px, not the authored 12px.The saturated 32%-link rail also visually outweighed the muted text it framed — the loudest element in the block was the decoration.
What
Restore the pre-#2645 rule on
.maka-chat-reasoning-content(white-space: pre-wrap; word-break: break-word;only) and let the upstream atoms own layout. Net diff vs. before #2645 is zero; the comment now records why no rail.Validation
node --test dist/__tests__/chat-turn-answer-identity.test.js— 8/8 pass, including the test that pinswhite-space: pre-wrapon this rule.border-inline-start,margin-inline-start: 22pxonly matched this rule).AI-assisted (Maka): investigation, diff, and this description; geometry claims verified against the compiled atoms in
@astryxdesign/coredist.