Skip to content
This repository was archived by the owner on Oct 26, 2026. It is now read-only.
This repository was archived by the owner on Oct 26, 2026. It is now read-only.

deps: the radix focus-scope patch targets 1.1.16 with no upstream issue while npm is at 1.3.1 — test stock 1.3.1 with the regression test and delete the patch if green #13466

Closed

Description

@os-zhuang

Filing gate ③: a maintainer-directed task. Maintainer, 2026-10-24, verbatim: 「同意:建议新建:与合并无关、独立成卡的产品/契约项(可现在建)」, approving the review's list of independent product / contract cards. Batch-of: 13 (this review batch; the per-fire quota is overridden by the maintainer's direction).

维护者速读

patches/@radix-ui__react-focus-scope.patch 打在 @radix-ui/react-focus-scope@1.1.16 上(修 popover-in-modal 的焦点被永久拉回),README 写了跟踪卡 objectui#3183 和退出条件「上游取消 pending stack eviction」,但没有任何上游 radix issue/PR 链接——退出条件永远不会被外部事件触发。npm 现在是 1.3.1。按 README 自己的配方:对 1.3.1 跑 dialog-popover-focus-scope.test.tsx,绿就删补丁。

Measured (2026-10-24, HEAD 7981384)

  • Lock holds @radix-ui/react-focus-scope@1.1.16 with the patch hash applied (hash in pnpm-lock.yaml matches patches/); registry dist-tags.latest = 1.3.1 (read during the review).
  • patches/README.md names the tracking card, the regression test packages/components/src/__tests__/dialog-popover-focus-scope.test.tsx and the exit condition, but no radix-ui/primitives issue or PR.
  • .github/dependabot.yml groups radix only under patch-updates; a minor bump of a runtime dependency arrives as an individual PR, which the patch would then block.
  • Whether 1.3.x fixes the race: 未实测 — the measurement is the README's own recipe (remove the patch, install 1.3.1, run the regression test).
  • Business reason: a patched dependency is a fork nobody upstreamed; every radix bump pays a manual re-base, and the patch's exit condition cannot fire.
  • Dedup (focus-scope|radix … patch): 0 hits in the dump beyond the original objectui#3183 (older than the dump's horizon).

Task

  • Run dialog-popover-focus-scope.test.tsx against stock 1.3.1 with the patch removed.
  • Green → delete the patch, the patchedDependencies entry and patches/README.md; red → file the upstream issue, link it from the README, and keep the patch with a real exit condition.

Who acts: objectui domain:ui seat, one PR. Effort S. Risk none.

Filed by the read-only whole-repo review session https://claude.ai/code/session_01BDtwYUWhLGyWLzYQjZ95Cf on 2026-10-24, written through the maintainer's own account token (the session holds no fleet-bot credential). Evidence files: that session's scratchpad (objectui-review-report.md, findings-*.md). ⛔ Not a claim; triage grades and routes; suggested labels are suggestions only.


Generated by Claude Code

Activity

  1. added
    domain:uiobjectui ui stream: fix lands on the published library or apps — objectui execution seat
    on Oct 24, 2026
  2. added
    area:devpathThe road — create, dev, verify, publish/install, connect an agent, iterate
    and removed on Oct 24, 2026
  3. objectstack-fleet commented on Oct 24, 2026

    @objectstack-fleet
    Contributor

    Triage: first grade — dependencies · priority:p3 · domain:ui · area:devpath · pm:queue · triage seat · session_01AavokzJ5DndAwitDXvKy4U · 2026-10-24T17:06Z

    ⛔ Not a claim, ⛔ not a dispatch.
    finding comes off.

    • Follow the patch README's own recipe: run dialog-popover-focus-scope.test.tsx on stock 1.3.1. If it is green, delete the patch. If it is red, keep the patch and add the upstream issue link the README lacks.

    Generated by Claude Code

  4. objectstack-fleet commented on Oct 25, 2026

    @objectstack-fleet
    Contributor

    Claim: PM loop round 1 · 2026-10-25T02:31Z
    Session: session_0196W5VLn6ZrtibyAZrR8oiK (the card session that works this card; claim written by the domain:ui seat 4 session session_01XWGTsmqrtrt1Zqh1ioWqsT)
    Account: os-elon-musk
    Branch: claude/project-thread-ugocmh (platform-assigned at spawn; the card session can push only this branch)
    Worktree: objectui-issue-13466
    Domain: domain:ui
    Seat: domain:ui#4
    File surface: patches/@radix-ui__react-focus-scope.patch, patches/README.md, the pnpm.patchedDependencies entry in the root package.json (that entry only), pnpm-lock.yaml as pnpm install regenerates it, the @radix-ui/react-focus-scope range wherever a manifest pins it; packages/components/src/__tests__/dialog-popover-focus-scope.test.tsx only if the bump needs it; .changeset/13466-*.md if a published package's dependencies change (stop on breach; explain in the report)
    Container & model: S, mode:thread, model: default tier (dispatch-gates --tier --repo objectstack-ai/objectui: no path-derived mandate), effort: medium
    Clause-②: no
    Metadata-protocol: none
    Responsibility: n/a — not a defect card
    Thread-read: 6387085430
    Premise: holds — on objectui main 23e912e patches/@radix-ui__react-focus-scope.patch exists, root package.json:214 carries patchedDependencies, and the regression test sits at packages/components/src/__tests__/dialog-popover-focus-scope.test.tsx
    Serial constraints cleared: seat 4's PR #13481 (in the merge queue) edits manifests' React peers and the lockfile — merge main before opening and again before landing; no other in-flight card names the patch
    Writes: all PR, comment and label writes go only through objectstack's relay (scripts/pm/fleet-write); never write with GitHub MCP.

    • Ruling section: filed under the maintainer's 「同意:建议新建:与合并无关、独立成卡的产品/契约项(可现在建)」; triage 6387085430: the patch README's own recipe — stock 1.3.1, patch removed, run the regression test.
    • Green: delete the patch, its patchedDependencies entry and patches/README.md's section (the whole file if nothing else is listed); move the dependency to the version tested. Also run the components package's full suite on the bump.
    • Red: keep the patch and change nothing in patches/; report the failing assertion. ⛔ Filing an upstream radix issue is an outside-the-project write: the dev does not do it; the seat brings it to the maintainer. In that case no PR is owed — hand back the reading.
    • Measured before this claim (card session, worktree off main 6f629a7): patched 1.1.16 → regression test 3/3; stock 1.3.1 → 1 failed / 2 passed (the race leg, line 95). RED, so the patch stays. The upstream filing waits on the maintainer; once a link exists, the PR adds it, a measured-on line and a real exit condition to patches/README.md.
  5. hotlong commented on Oct 25, 2026

    @hotlong
    Contributor

    The upstream issue already exists, so no new filing is needed · cloud ops seat, for the maintainer, 2026-10-25.

    The card session read RED: stock 1.3.1 fails the race leg, 1 failed / 2 passed. The open item was the maintainer's upstream filing. I searched radix-ui/primitives before filing anything, and the same root cause is already open:

    For the card session: use radix-ui/primitives#4226 as the upstream link in patches/README.md. Add the measured-on line (stock 1.3.1 → race leg red, 2026-10-25) and the exit condition "#4226 fixed in a released @radix-ui/react-focus-scope and the regression test green on it with the patch removed". That is the PR the claim already describes for the red branch.

    Commenting our trigger on #4226 (a second reproduction) would be a write to the radix repo, so it waits on the maintainer's say-so and isn't done here.

  6. objectstack-fleet commented on Oct 25, 2026

    @objectstack-fleet
    Contributor

    Landed · domain:ui#4 · 2026-10-25T14:00Z

    PR #13529 merged at 2026-10-25T13:55Z, merge commit e6a06d2d2eed7dc7ceff82dfcfd8da50258fdfec. A read of origin/main patches/README.md shows the radix-ui/primitives#4226 upstream link and the new Remove when line. The card took the red branch: stock 1.3.1 fails the race case, so the patch stays, and its exit condition now names an upstream item that can trigger it. The card closes completed and pm:dispatched comes off in this stroke. objectui merges publish nothing.

    • Left open, the maintainer's call: adding this repo's trigger (a container ref flicker) to fix(metadata-admin): DatasourcePreview reads only keys DatasourceSchema accepts (#4131) #4226 as a second reproduction would be a write to the radix repo, so it is not done.
    • CI aside: the post-merge workflow "Close issues referenced in other repositories" went red on the PR head (run 40199822807). It runs after the merge and doesn't gate it. It most likely tripped on the cross-repo radix links in the PR body; this seat did not read its log.

    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:devpathThe road — create, dev, verify, publish/install, connect an agent, iteratedependenciesdomain:uiobjectui ui stream: fix lands on the published library or apps — objectui execution seatpriority:p3

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions