Skip to content

refactor(desktop): retire obsolete Astryx workarounds - #4628

Merged
M4n5ter merged 1 commit into
mainfrom
fix/sidebar-resize-root-cause
Sep 3, 2026
Merged

refactor(desktop): retire obsolete Astryx workarounds#4628
M4n5ter merged 1 commit into
mainfrom
fix/sidebar-resize-root-cause

Conversation

@M4n5ter

@M4n5ter M4n5ter commented Sep 3, 2026

Copy link
Copy Markdown
Member
English

Summary

Retire three compatibility rules whose contracts are now owned by the pinned Astryx 0.5.2 dependency:

  • remove the sidebar and ModulePage resize-hit-area overrides fixed upstream in Astryx 0.5.0;
  • remove the ChatLayout flex shim fixed upstream in Astryx 0.3.0;
  • delete the compositor-sensitive two-direction resize E2E and its test-only exports, while retaining the product-owned sidebar footer geometry test.

Fixes #4622

Root cause

Dependency upgrades did not discharge Maka's temporary compatibility rules. The resize E2E was added after the pinned Astryx package already contained and tested the hit-area fix, so it duplicated vendor behavior through two synthetic Electron drags. The reverse-drag flake exposed that stale ownership boundary; adding more timing or diagnostics would preserve it.

Audit boundary

The broader Desktop E2E audit found no other confirmed obsolete test. The streaming quote fixme still reproduced once in an 8-run, 4-worker probe, and the [hidden] override remains necessary because Astryx still uses a zero-specificity :where([hidden]) reset.

Verification

  • npm --workspace @maka/desktop run e2e -- e2e/sidebar-geometry.spec.ts --workers=1 — full Desktop build passed; retained footer test passed.
  • Targeted real-window checks for Module Hub, prompt-rail scrollport geometry, and streaming tail following — 3 passed.
  • npm --workspace @maka/desktop run typecheck — passed.
  • npx knip --workspace apps/desktop — passed.
  • Biome on all six changed files — passed.
  • git diff --check — passed.

AI use

  • No generative tool made a substantive contribution
  • Generative tooling made a substantive contribution

Tool(s) and scope: OpenAI Codex traced dependency and test history, audited adjacent E2E and compatibility rules, removed confirmed obsolete paths, ran verification, and prepared this pull request.

Checklist

  • Tests cover the change and fail without it — intentionally not applicable: this change removes tests and shims whose behavior is owned upstream.
  • Lint, format, typecheck and the affected suites pass locally.

Does this PR entail a change in behavior?

  • Yes — resize and chat layout now use Astryx's fixed implementations without Maka overrides.
  • No
中文

摘要

删除三处已由当前 Astryx 0.5.2 依赖承担的兼容规则:

  • 删除 Astryx 0.5.0 已修复的 sidebar 和 ModulePage resize hit-area override;
  • 删除 Astryx 0.3.0 已修复的 ChatLayout flex shim;
  • 删除依赖 compositor 时序的双向 resize E2E 及其测试专用导出,保留 Maka 自己负责的 sidebar footer 几何测试。

Fixes #4622

根因

依赖升级后没有及时卸载 Maka 的临时兼容规则。resize E2E 新增时,锁定的 Astryx 已包含并测试该 hit-area 修复,因此这条测试只是通过两次 Electron 合成拖动重复验证上游行为。反向拖动 flake 暴露的是过期的责任边界;继续增加时序处理或诊断只会将它固化。

审计边界

更广的 Desktop E2E 审计没有发现其他已确认过时的测试。streaming quote fixme 在 4 worker、8 次 probe 中仍复现 1 次;[hidden] override 也仍有必要,因为 Astryx 当前仍使用零优先级的 :where([hidden]) reset。

验证

  • npm --workspace @maka/desktop run e2e -- e2e/sidebar-geometry.spec.ts --workers=1 — Desktop 完整构建通过,保留的 footer 测试通过。
  • Module Hub、prompt rail scrollport 几何和 streaming tail following 三条定向真实窗口测试 — 3 条通过。
  • npm --workspace @maka/desktop run typecheck — 通过。
  • npx knip --workspace apps/desktop — 通过。
  • 六个改动文件的 Biome 检查 — 通过。
  • git diff --check — 通过。

AI 使用

  • 无生成式工具做出实质贡献
  • 生成式工具做出了实质贡献

工具及范围:OpenAI Codex 追溯了依赖和测试历史,审计了相邻 E2E 和兼容规则,删除已确认过时的路径,完成验证并准备本 PR。

检查清单

  • 测试覆盖改动且在改动前失败 — 特意不适用:本改动删除由上游承担行为的测试和 shim。
  • 本地 lint、format、typecheck 和受影响测试均通过。

本 PR 是否改变行为?

  • 是 — resize 和 chat layout 现在直接使用 Astryx 的已修复实现,不再受 Maka override 影响。

@M4n5ter M4n5ter self-assigned this Sep 3, 2026
@github-actions github-actions Bot added the effort/M Under 500 readable lines label Sep 3, 2026
@M4n5ter
M4n5ter force-pushed the fix/sidebar-resize-root-cause branch from 07ba0f3 to 291ab4e Compare September 3, 2026 07:17
Astryx now owns the resize-handle hit area and ChatLayout flex contract that Maka still overrode. Remove those stale compatibility rules, delete the compositor-sensitive E2E that duplicated vendor behavior, and retain only the product-owned sidebar geometry check.\n\nGenerated-by: OpenAI Codex
@M4n5ter
M4n5ter force-pushed the fix/sidebar-resize-root-cause branch from 291ab4e to 97366d2 Compare September 3, 2026 07:23
@M4n5ter M4n5ter changed the title test(desktop): retire obsolete sidebar drag probe refactor(desktop): retire obsolete Astryx workarounds Sep 3, 2026
@Astro-Han

Copy link
Copy Markdown
Contributor

LGTM

@M4n5ter
M4n5ter merged commit 15e4b6b into main Sep 3, 2026
1 check passed
@M4n5ter
M4n5ter deleted the fix/sidebar-resize-root-cause branch September 3, 2026 07:57
ggbdpq pushed a commit to ggbdpq/maka that referenced this pull request Sep 4, 2026
Astryx now owns the resize-handle hit area and ChatLayout flex contract that Maka still overrode. Remove those stale compatibility rules, delete the compositor-sensitive E2E that duplicated vendor behavior, and retain only the product-owned sidebar geometry check.

Generated-by: OpenAI Codex

Generated-by: GLM-5.3-Flash (ZCode)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

effort/M Under 500 readable lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Desktop E2E] reverse sidebar resize drag still flakes after #4546

2 participants