Skip to content

test: drop Astryx DOM geometry and CSS string contracts - #2587

Merged
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts
Aug 9, 2026
Merged

test: drop Astryx DOM geometry and CSS string contracts#2587
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts

Conversation

@jackwener

Copy link
Copy Markdown
Member

Summary

After #2574 / #2584, a class of tests still treated vendor Astryx DOM / CSS shape as product API. Those are brittle and not user journeys. This PR deletes them.

Removed

ItemWhy
e2e/activity-card-sticky.spec.ts + activityCardWindow fixtureSticky px offsets (8 / 32) on tool-call rows — geometry contract, not product journey
contract-css-helpers.ts / css-test-helpers.tsCSS file grepping infrastructure with no remaining consumers after below
stale-sessions CSS contract casesRegex against .astryx-side-nav-item selector chains; keep classifier + panel data-stale/pill render tests
tool-trow-stability “Astryx tool-call root” caseAsserted vendor class astryx-chat-tool-calls
streaming-handoff count of astryx-chat-tool-callsSame; keep timeline order assertions
Skills scroll-containment story playScroll geometry + List a11y selector; keep visual catalog story
Skills inspector play’s resize-handle hit-strip geometryVendor Astryx resize handle layout pin

Intentionally kept

  • Composer draft / skill-draft journeys (real product)
  • blank-UA-CH phase in keyboard-help (the one remaining real Astryx patch)
  • Product presentation tests (tool-activity-presentation, linked subagent rows, diff ± counts)
  • Storybook harness play-executed contract

Net: −301 lines.

Test plan

  • CI green (storybook + e2e no longer run sticky geometry)
  • stale-sessions unit: classifier + pill wiring still run
  • tool-trow-stability: diff counts + linked subagent cases still run

@jackwener

Copy link
Copy Markdown
MemberAuthor

Round 2 (pushed)

Also removed / slimmed:

  • Daily Review settings bounds geometry play helper
  • .astryx-skeleton class checks (keep aria-busy)
  • astryx-codeblock markup asserts in tool-activity unit tests
  • MCP editor field Y-order bounding boxes
  • session-workbar CSS width px asserts (keep aria-valuenow + persistence)

Still intentionally kept: mermaid chrome product journey, skill/token chips via astryx token attrs (user-visible chips), keyboard-help blank UA-CH patch gate.

@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from e6b3dfe to e953f57CompareAugust 9, 2026 07:57
Remove suites that pinned vendor class names, sticky px offsets, List
aria-label, and CSS-grep structure after #2574 dropped ceremonial patches.
Keep product journeys, classifier logic, and the real blank-UA-CH patch gate.
Second pass: Daily Review bounds play, Astryx Skeleton class checks,
astryx-codeblock markup matches, MCP field Y-order, and workbar CSS
pixel widths. Keep accessible values, journeys, and product signals.
Removing test greps for astryx-chat-tool-calls / astryx-codeblock made
check-dead-css treat product CSS overrides as dead. Mark them as runtime
themeProps classes like the other Astryx hooks.
@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from 8251fe0 to 24fa21eCompareAugust 9, 2026 08:12
Drop flaky/geometry/vendor-heavy specs (quote-companion, mermaid layout,
mention grammar, workbar resize, providers/MCP/onboarding surfaces, etc.).
Keep send+IME, draft survival, skill revision drafts, blank-UA-CH help,
settings theme shell, and artifact list navigation. Prune unused fixtures.
Knip typecheck failed: skill-delete e2e was the last consumer.
@jackwener
jackwener merged commit 4303721 into mainAug 9, 2026
12 checks passed
Sign up for freeto 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

@jackwener
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
test: drop Astryx DOM geometry and CSS string contracts by jackwener · Pull Request #2587 · apache/maka · GitHub
Skip to content

test: drop Astryx DOM geometry and CSS string contracts - #2587

Merged
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts
Aug 9, 2026
Merged

test: drop Astryx DOM geometry and CSS string contracts#2587
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts

Conversation

@jackwener

Copy link
Copy Markdown
Member

Summary

After #2574 / #2584, a class of tests still treated vendor Astryx DOM / CSS shape as product API. Those are brittle and not user journeys. This PR deletes them.

Removed

ItemWhy
e2e/activity-card-sticky.spec.ts + activityCardWindow fixtureSticky px offsets (8 / 32) on tool-call rows — geometry contract, not product journey
contract-css-helpers.ts / css-test-helpers.tsCSS file grepping infrastructure with no remaining consumers after below
stale-sessions CSS contract casesRegex against .astryx-side-nav-item selector chains; keep classifier + panel data-stale/pill render tests
tool-trow-stability “Astryx tool-call root” caseAsserted vendor class astryx-chat-tool-calls
streaming-handoff count of astryx-chat-tool-callsSame; keep timeline order assertions
Skills scroll-containment story playScroll geometry + List a11y selector; keep visual catalog story
Skills inspector play’s resize-handle hit-strip geometryVendor Astryx resize handle layout pin

Intentionally kept

  • Composer draft / skill-draft journeys (real product)
  • blank-UA-CH phase in keyboard-help (the one remaining real Astryx patch)
  • Product presentation tests (tool-activity-presentation, linked subagent rows, diff ± counts)
  • Storybook harness play-executed contract

Net: −301 lines.

Test plan

  • CI green (storybook + e2e no longer run sticky geometry)
  • stale-sessions unit: classifier + pill wiring still run
  • tool-trow-stability: diff counts + linked subagent cases still run

@jackwener

Copy link
Copy Markdown
MemberAuthor

Round 2 (pushed)

Also removed / slimmed:

  • Daily Review settings bounds geometry play helper
  • .astryx-skeleton class checks (keep aria-busy)
  • astryx-codeblock markup asserts in tool-activity unit tests
  • MCP editor field Y-order bounding boxes
  • session-workbar CSS width px asserts (keep aria-valuenow + persistence)

Still intentionally kept: mermaid chrome product journey, skill/token chips via astryx token attrs (user-visible chips), keyboard-help blank UA-CH patch gate.

@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from e6b3dfe to e953f57CompareAugust 9, 2026 07:57
Remove suites that pinned vendor class names, sticky px offsets, List
aria-label, and CSS-grep structure after #2574 dropped ceremonial patches.
Keep product journeys, classifier logic, and the real blank-UA-CH patch gate.
Second pass: Daily Review bounds play, Astryx Skeleton class checks,
astryx-codeblock markup matches, MCP field Y-order, and workbar CSS
pixel widths. Keep accessible values, journeys, and product signals.
Removing test greps for astryx-chat-tool-calls / astryx-codeblock made
check-dead-css treat product CSS overrides as dead. Mark them as runtime
themeProps classes like the other Astryx hooks.
@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from 8251fe0 to 24fa21eCompareAugust 9, 2026 08:12
Drop flaky/geometry/vendor-heavy specs (quote-companion, mermaid layout,
mention grammar, workbar resize, providers/MCP/onboarding surfaces, etc.).
Keep send+IME, draft survival, skill revision drafts, blank-UA-CH help,
settings theme shell, and artifact list navigation. Prune unused fixtures.
Knip typecheck failed: skill-delete e2e was the last consumer.
@jackwener
jackwener merged commit 4303721 into mainAug 9, 2026
12 checks passed
Sign up for freeto 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

@jackwener
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' test: drop Astryx DOM geometry and CSS string contracts by jackwener · Pull Request #2587 · apache/maka · GitHub
Skip to content

test: drop Astryx DOM geometry and CSS string contracts - #2587

Merged
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts
Aug 9, 2026
Merged

test: drop Astryx DOM geometry and CSS string contracts#2587
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts

Conversation

@jackwener

Copy link
Copy Markdown
Member

Summary

After #2574 / #2584, a class of tests still treated vendor Astryx DOM / CSS shape as product API. Those are brittle and not user journeys. This PR deletes them.

Removed

ItemWhy
e2e/activity-card-sticky.spec.ts + activityCardWindow fixtureSticky px offsets (8 / 32) on tool-call rows — geometry contract, not product journey
contract-css-helpers.ts / css-test-helpers.tsCSS file grepping infrastructure with no remaining consumers after below
stale-sessions CSS contract casesRegex against .astryx-side-nav-item selector chains; keep classifier + panel data-stale/pill render tests
tool-trow-stability “Astryx tool-call root” caseAsserted vendor class astryx-chat-tool-calls
streaming-handoff count of astryx-chat-tool-callsSame; keep timeline order assertions
Skills scroll-containment story playScroll geometry + List a11y selector; keep visual catalog story
Skills inspector play’s resize-handle hit-strip geometryVendor Astryx resize handle layout pin

Intentionally kept

  • Composer draft / skill-draft journeys (real product)
  • blank-UA-CH phase in keyboard-help (the one remaining real Astryx patch)
  • Product presentation tests (tool-activity-presentation, linked subagent rows, diff ± counts)
  • Storybook harness play-executed contract

Net: −301 lines.

Test plan

  • CI green (storybook + e2e no longer run sticky geometry)
  • stale-sessions unit: classifier + pill wiring still run
  • tool-trow-stability: diff counts + linked subagent cases still run

@jackwener

Copy link
Copy Markdown
MemberAuthor

Round 2 (pushed)

Also removed / slimmed:

  • Daily Review settings bounds geometry play helper
  • .astryx-skeleton class checks (keep aria-busy)
  • astryx-codeblock markup asserts in tool-activity unit tests
  • MCP editor field Y-order bounding boxes
  • session-workbar CSS width px asserts (keep aria-valuenow + persistence)

Still intentionally kept: mermaid chrome product journey, skill/token chips via astryx token attrs (user-visible chips), keyboard-help blank UA-CH patch gate.

@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from e6b3dfe to e953f57CompareAugust 9, 2026 07:57
Remove suites that pinned vendor class names, sticky px offsets, List
aria-label, and CSS-grep structure after #2574 dropped ceremonial patches.
Keep product journeys, classifier logic, and the real blank-UA-CH patch gate.
Second pass: Daily Review bounds play, Astryx Skeleton class checks,
astryx-codeblock markup matches, MCP field Y-order, and workbar CSS
pixel widths. Keep accessible values, journeys, and product signals.
Removing test greps for astryx-chat-tool-calls / astryx-codeblock made
check-dead-css treat product CSS overrides as dead. Mark them as runtime
themeProps classes like the other Astryx hooks.
@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from 8251fe0 to 24fa21eCompareAugust 9, 2026 08:12
Drop flaky/geometry/vendor-heavy specs (quote-companion, mermaid layout,
mention grammar, workbar resize, providers/MCP/onboarding surfaces, etc.).
Keep send+IME, draft survival, skill revision drafts, blank-UA-CH help,
settings theme shell, and artifact list navigation. Prune unused fixtures.
Knip typecheck failed: skill-delete e2e was the last consumer.
@jackwener
jackwener merged commit 4303721 into mainAug 9, 2026
12 checks passed
Sign up for freeto 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

@jackwener
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' test: drop Astryx DOM geometry and CSS string contracts by jackwener · Pull Request #2587 · apache/maka · GitHub
Skip to content

test: drop Astryx DOM geometry and CSS string contracts - #2587

Merged
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts
Aug 9, 2026
Merged

test: drop Astryx DOM geometry and CSS string contracts#2587
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts

Conversation

@jackwener

Copy link
Copy Markdown
Member

Summary

After #2574 / #2584, a class of tests still treated vendor Astryx DOM / CSS shape as product API. Those are brittle and not user journeys. This PR deletes them.

Removed

ItemWhy
e2e/activity-card-sticky.spec.ts + activityCardWindow fixtureSticky px offsets (8 / 32) on tool-call rows — geometry contract, not product journey
contract-css-helpers.ts / css-test-helpers.tsCSS file grepping infrastructure with no remaining consumers after below
stale-sessions CSS contract casesRegex against .astryx-side-nav-item selector chains; keep classifier + panel data-stale/pill render tests
tool-trow-stability “Astryx tool-call root” caseAsserted vendor class astryx-chat-tool-calls
streaming-handoff count of astryx-chat-tool-callsSame; keep timeline order assertions
Skills scroll-containment story playScroll geometry + List a11y selector; keep visual catalog story
Skills inspector play’s resize-handle hit-strip geometryVendor Astryx resize handle layout pin

Intentionally kept

  • Composer draft / skill-draft journeys (real product)
  • blank-UA-CH phase in keyboard-help (the one remaining real Astryx patch)
  • Product presentation tests (tool-activity-presentation, linked subagent rows, diff ± counts)
  • Storybook harness play-executed contract

Net: −301 lines.

Test plan

  • CI green (storybook + e2e no longer run sticky geometry)
  • stale-sessions unit: classifier + pill wiring still run
  • tool-trow-stability: diff counts + linked subagent cases still run

@jackwener

Copy link
Copy Markdown
MemberAuthor

Round 2 (pushed)

Also removed / slimmed:

  • Daily Review settings bounds geometry play helper
  • .astryx-skeleton class checks (keep aria-busy)
  • astryx-codeblock markup asserts in tool-activity unit tests
  • MCP editor field Y-order bounding boxes
  • session-workbar CSS width px asserts (keep aria-valuenow + persistence)

Still intentionally kept: mermaid chrome product journey, skill/token chips via astryx token attrs (user-visible chips), keyboard-help blank UA-CH patch gate.

@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from e6b3dfe to e953f57CompareAugust 9, 2026 07:57
Remove suites that pinned vendor class names, sticky px offsets, List
aria-label, and CSS-grep structure after #2574 dropped ceremonial patches.
Keep product journeys, classifier logic, and the real blank-UA-CH patch gate.
Second pass: Daily Review bounds play, Astryx Skeleton class checks,
astryx-codeblock markup matches, MCP field Y-order, and workbar CSS
pixel widths. Keep accessible values, journeys, and product signals.
Removing test greps for astryx-chat-tool-calls / astryx-codeblock made
check-dead-css treat product CSS overrides as dead. Mark them as runtime
themeProps classes like the other Astryx hooks.
@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from 8251fe0 to 24fa21eCompareAugust 9, 2026 08:12
Drop flaky/geometry/vendor-heavy specs (quote-companion, mermaid layout,
mention grammar, workbar resize, providers/MCP/onboarding surfaces, etc.).
Keep send+IME, draft survival, skill revision drafts, blank-UA-CH help,
settings theme shell, and artifact list navigation. Prune unused fixtures.
Knip typecheck failed: skill-delete e2e was the last consumer.
@jackwener
jackwener merged commit 4303721 into mainAug 9, 2026
12 checks passed
Sign up for freeto 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

@jackwener
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' test: drop Astryx DOM geometry and CSS string contracts by jackwener · Pull Request #2587 · apache/maka · GitHub
Skip to content

test: drop Astryx DOM geometry and CSS string contracts - #2587

Merged
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts
Aug 9, 2026
Merged

test: drop Astryx DOM geometry and CSS string contracts#2587
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts

Conversation

@jackwener

Copy link
Copy Markdown
Member

Summary

After #2574 / #2584, a class of tests still treated vendor Astryx DOM / CSS shape as product API. Those are brittle and not user journeys. This PR deletes them.

Removed

ItemWhy
e2e/activity-card-sticky.spec.ts + activityCardWindow fixtureSticky px offsets (8 / 32) on tool-call rows — geometry contract, not product journey
contract-css-helpers.ts / css-test-helpers.tsCSS file grepping infrastructure with no remaining consumers after below
stale-sessions CSS contract casesRegex against .astryx-side-nav-item selector chains; keep classifier + panel data-stale/pill render tests
tool-trow-stability “Astryx tool-call root” caseAsserted vendor class astryx-chat-tool-calls
streaming-handoff count of astryx-chat-tool-callsSame; keep timeline order assertions
Skills scroll-containment story playScroll geometry + List a11y selector; keep visual catalog story
Skills inspector play’s resize-handle hit-strip geometryVendor Astryx resize handle layout pin

Intentionally kept

  • Composer draft / skill-draft journeys (real product)
  • blank-UA-CH phase in keyboard-help (the one remaining real Astryx patch)
  • Product presentation tests (tool-activity-presentation, linked subagent rows, diff ± counts)
  • Storybook harness play-executed contract

Net: −301 lines.

Test plan

  • CI green (storybook + e2e no longer run sticky geometry)
  • stale-sessions unit: classifier + pill wiring still run
  • tool-trow-stability: diff counts + linked subagent cases still run

@jackwener

Copy link
Copy Markdown
MemberAuthor

Round 2 (pushed)

Also removed / slimmed:

  • Daily Review settings bounds geometry play helper
  • .astryx-skeleton class checks (keep aria-busy)
  • astryx-codeblock markup asserts in tool-activity unit tests
  • MCP editor field Y-order bounding boxes
  • session-workbar CSS width px asserts (keep aria-valuenow + persistence)

Still intentionally kept: mermaid chrome product journey, skill/token chips via astryx token attrs (user-visible chips), keyboard-help blank UA-CH patch gate.

@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from e6b3dfe to e953f57CompareAugust 9, 2026 07:57
Remove suites that pinned vendor class names, sticky px offsets, List
aria-label, and CSS-grep structure after #2574 dropped ceremonial patches.
Keep product journeys, classifier logic, and the real blank-UA-CH patch gate.
Second pass: Daily Review bounds play, Astryx Skeleton class checks,
astryx-codeblock markup matches, MCP field Y-order, and workbar CSS
pixel widths. Keep accessible values, journeys, and product signals.
Removing test greps for astryx-chat-tool-calls / astryx-codeblock made
check-dead-css treat product CSS overrides as dead. Mark them as runtime
themeProps classes like the other Astryx hooks.
@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from 8251fe0 to 24fa21eCompareAugust 9, 2026 08:12
Drop flaky/geometry/vendor-heavy specs (quote-companion, mermaid layout,
mention grammar, workbar resize, providers/MCP/onboarding surfaces, etc.).
Keep send+IME, draft survival, skill revision drafts, blank-UA-CH help,
settings theme shell, and artifact list navigation. Prune unused fixtures.
Knip typecheck failed: skill-delete e2e was the last consumer.
@jackwener
jackwener merged commit 4303721 into mainAug 9, 2026
12 checks passed
Sign up for freeto 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

@jackwener
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' test: drop Astryx DOM geometry and CSS string contracts by jackwener · Pull Request #2587 · apache/maka · GitHub
Skip to content

test: drop Astryx DOM geometry and CSS string contracts - #2587

Merged
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts
Aug 9, 2026
Merged

test: drop Astryx DOM geometry and CSS string contracts#2587
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts

Conversation

@jackwener

Copy link
Copy Markdown
Member

Summary

After #2574 / #2584, a class of tests still treated vendor Astryx DOM / CSS shape as product API. Those are brittle and not user journeys. This PR deletes them.

Removed

ItemWhy
e2e/activity-card-sticky.spec.ts + activityCardWindow fixtureSticky px offsets (8 / 32) on tool-call rows — geometry contract, not product journey
contract-css-helpers.ts / css-test-helpers.tsCSS file grepping infrastructure with no remaining consumers after below
stale-sessions CSS contract casesRegex against .astryx-side-nav-item selector chains; keep classifier + panel data-stale/pill render tests
tool-trow-stability “Astryx tool-call root” caseAsserted vendor class astryx-chat-tool-calls
streaming-handoff count of astryx-chat-tool-callsSame; keep timeline order assertions
Skills scroll-containment story playScroll geometry + List a11y selector; keep visual catalog story
Skills inspector play’s resize-handle hit-strip geometryVendor Astryx resize handle layout pin

Intentionally kept

  • Composer draft / skill-draft journeys (real product)
  • blank-UA-CH phase in keyboard-help (the one remaining real Astryx patch)
  • Product presentation tests (tool-activity-presentation, linked subagent rows, diff ± counts)
  • Storybook harness play-executed contract

Net: −301 lines.

Test plan

  • CI green (storybook + e2e no longer run sticky geometry)
  • stale-sessions unit: classifier + pill wiring still run
  • tool-trow-stability: diff counts + linked subagent cases still run

@jackwener

Copy link
Copy Markdown
MemberAuthor

Round 2 (pushed)

Also removed / slimmed:

  • Daily Review settings bounds geometry play helper
  • .astryx-skeleton class checks (keep aria-busy)
  • astryx-codeblock markup asserts in tool-activity unit tests
  • MCP editor field Y-order bounding boxes
  • session-workbar CSS width px asserts (keep aria-valuenow + persistence)

Still intentionally kept: mermaid chrome product journey, skill/token chips via astryx token attrs (user-visible chips), keyboard-help blank UA-CH patch gate.

@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from e6b3dfe to e953f57CompareAugust 9, 2026 07:57
Remove suites that pinned vendor class names, sticky px offsets, List
aria-label, and CSS-grep structure after #2574 dropped ceremonial patches.
Keep product journeys, classifier logic, and the real blank-UA-CH patch gate.
Second pass: Daily Review bounds play, Astryx Skeleton class checks,
astryx-codeblock markup matches, MCP field Y-order, and workbar CSS
pixel widths. Keep accessible values, journeys, and product signals.
Removing test greps for astryx-chat-tool-calls / astryx-codeblock made
check-dead-css treat product CSS overrides as dead. Mark them as runtime
themeProps classes like the other Astryx hooks.
@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from 8251fe0 to 24fa21eCompareAugust 9, 2026 08:12
Drop flaky/geometry/vendor-heavy specs (quote-companion, mermaid layout,
mention grammar, workbar resize, providers/MCP/onboarding surfaces, etc.).
Keep send+IME, draft survival, skill revision drafts, blank-UA-CH help,
settings theme shell, and artifact list navigation. Prune unused fixtures.
Knip typecheck failed: skill-delete e2e was the last consumer.
@jackwener
jackwener merged commit 4303721 into mainAug 9, 2026
12 checks passed
Sign up for freeto 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

@jackwener
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); })(); test: drop Astryx DOM geometry and CSS string contracts by jackwener · Pull Request #2587 · apache/maka · GitHub
Skip to content

test: drop Astryx DOM geometry and CSS string contracts - #2587

Merged
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts
Aug 9, 2026
Merged

test: drop Astryx DOM geometry and CSS string contracts#2587
jackwener merged 5 commits into
mainfrom
chore/drop-astryx-dom-contracts

Conversation

@jackwener

Copy link
Copy Markdown
Member

Summary

After #2574 / #2584, a class of tests still treated vendor Astryx DOM / CSS shape as product API. Those are brittle and not user journeys. This PR deletes them.

Removed

ItemWhy
e2e/activity-card-sticky.spec.ts + activityCardWindow fixtureSticky px offsets (8 / 32) on tool-call rows — geometry contract, not product journey
contract-css-helpers.ts / css-test-helpers.tsCSS file grepping infrastructure with no remaining consumers after below
stale-sessions CSS contract casesRegex against .astryx-side-nav-item selector chains; keep classifier + panel data-stale/pill render tests
tool-trow-stability “Astryx tool-call root” caseAsserted vendor class astryx-chat-tool-calls
streaming-handoff count of astryx-chat-tool-callsSame; keep timeline order assertions
Skills scroll-containment story playScroll geometry + List a11y selector; keep visual catalog story
Skills inspector play’s resize-handle hit-strip geometryVendor Astryx resize handle layout pin

Intentionally kept

  • Composer draft / skill-draft journeys (real product)
  • blank-UA-CH phase in keyboard-help (the one remaining real Astryx patch)
  • Product presentation tests (tool-activity-presentation, linked subagent rows, diff ± counts)
  • Storybook harness play-executed contract

Net: −301 lines.

Test plan

  • CI green (storybook + e2e no longer run sticky geometry)
  • stale-sessions unit: classifier + pill wiring still run
  • tool-trow-stability: diff counts + linked subagent cases still run

@jackwener

Copy link
Copy Markdown
MemberAuthor

Round 2 (pushed)

Also removed / slimmed:

  • Daily Review settings bounds geometry play helper
  • .astryx-skeleton class checks (keep aria-busy)
  • astryx-codeblock markup asserts in tool-activity unit tests
  • MCP editor field Y-order bounding boxes
  • session-workbar CSS width px asserts (keep aria-valuenow + persistence)

Still intentionally kept: mermaid chrome product journey, skill/token chips via astryx token attrs (user-visible chips), keyboard-help blank UA-CH patch gate.

@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from e6b3dfe to e953f57CompareAugust 9, 2026 07:57
Remove suites that pinned vendor class names, sticky px offsets, List
aria-label, and CSS-grep structure after #2574 dropped ceremonial patches.
Keep product journeys, classifier logic, and the real blank-UA-CH patch gate.
Second pass: Daily Review bounds play, Astryx Skeleton class checks,
astryx-codeblock markup matches, MCP field Y-order, and workbar CSS
pixel widths. Keep accessible values, journeys, and product signals.
Removing test greps for astryx-chat-tool-calls / astryx-codeblock made
check-dead-css treat product CSS overrides as dead. Mark them as runtime
themeProps classes like the other Astryx hooks.
@jackwener
jackwenerforce-pushed the chore/drop-astryx-dom-contracts branch from 8251fe0 to 24fa21eCompareAugust 9, 2026 08:12
Drop flaky/geometry/vendor-heavy specs (quote-companion, mermaid layout,
mention grammar, workbar resize, providers/MCP/onboarding surfaces, etc.).
Keep send+IME, draft survival, skill revision drafts, blank-UA-CH help,
settings theme shell, and artifact list navigation. Prune unused fixtures.
Knip typecheck failed: skill-delete e2e was the last consumer.
@jackwener
jackwener merged commit 4303721 into mainAug 9, 2026
12 checks passed
Sign up for freeto 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

@jackwener