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
{{ message }}
Repository navigation
components data-table: the row ⋯ actions trigger is still hidden at rest on a fine pointer, as the list grid's was before #28871 #28923
Filing gate: ② out-of-scope finding, class b, from the #28871 os-dev-report (6568984166, PR #28922) · filed by domain:ui#1 · ⛔ Not a claim. No grade: triage sets it.
Business reason.#28871 makes the list grid's row ⋯ visible at rest, so a reader no longer takes the Actions column for "no actions available". The data-table renderer in @object-ui/components draws the same trigger with the old hover-reveal. So any surface drawn by that renderer still shows an Actions header over a column that looks empty until the pointer is over a row.
Sibling, a judgment call: ui/packages/app-shell/src/views/objectViewOpenAsPage.tsx:40 (the per-row "open as page" link) hides at rest the same way. Its docblock says it hides "as the row's ⋮ menu is (RowActionMenu)", and after PR fix(plugin-grid): list grid row actions trigger visible at rest in a muted tone #28922 lands that sentence is false. It is an extra link, not the Actions column, so it can stay hover-revealed if its docblock is corrected.
Tests. A pin on the at-rest class of data-table-row-actions, the way RowActionMenu.atRest-28871.test.tsx pins the grid's. data-table-leadingCell-12423 pins the selection checkbox's own hover-reveal and is not this card.
Reader.domain:ui. Size S.
Dedupe. Searched data-table-row-actions opacity, row actions hidden at rest, hover reveal actions column: only #28871 and PR #28922.
Claim: PM loop round 16 · 2026-11-02T05:18Z
Session: session_01QsR2jSXEKkhP494Y6s2au2 (card thread, os-dev); dispatched by seat session session_01QsR2jUJ19MstFvFhjgiYTu
Account: zhuangjianguo
Branch: claude/project-thread-n792y2 (platform-assigned to the card thread; it can push only this branch)
Worktree: objectstack-issue-28923
Domain: domain:ui
Seat: domain:ui#1
File surface: ui/packages/components/src/renderers/complex/data-table.tsx (the data-table-row-actions trigger), ui/packages/app-shell/src/views/objectViewOpenAsPage.tsx (OPEN_AS_PAGE_CLASS and its docblock), their tests, and a root .changeset (stop on breach; explain in the report)
Container & model: S, mode:thread, model: default tier (dispatch-gates --tier: no path-derived mandate), effort: medium
Clause-②: no
Metadata-protocol: none
Responsibility: ui/packages/componentsdata-table.tsx kept the hover-reveal class #28871 retired in RowActionMenu.tsx
Thread-read: 6569607362
Premise: holds (at origin/main62b3ec36: data-table.tsx:849 draws the data-table-row-actions trigger opacity-0 at rest; objectViewOpenAsPage.tsx:40 hides the same way)
Serial constraints cleared: #28871 landed (PR #28922, ff881050).
{
"issue": 28923,
"status": "done",
"branch": "claude/project-thread-n792y2",
"pr": "https://github.com/objectstack-ai/objectstack/pull/29030",
"session": "session_01QsR2jSXEKkhP494Y6s2au2",
"premise_still_valid": true,
"summary": "data-table.tsx's data-table-row-actions trigger now rests in text-muted-foreground with group-hover/row, group-focus-within/row, group-data-[state=selected]/row, data-[state=open], focus-visible and pointer-coarse lifting it to text-foreground; no opacity, the RowActionMenu set from #28871. objectViewOpenAsPage.tsx: kept hover-revealed (triage's call; an extra link beside the name with no header, drawing it on every row would crowd the name column); only its docblock is corrected, OPEN_AS_PAGE_CLASS unchanged. Changeset: @object-ui/components patch with the claim's Clause-② no / Metadata-protocol none lines; app-shell change is comment-only and not in the changeset.",
"tests": "New data-table-row-actions-atRest-28923.test.tsx (4 cases). data-table-leadingCell-12423.test.tsx: its row-actions-trigger case pinned the old opacity-0 set, repointed to the new classes; checkbox cases untouched (inside the claim's 'their tests' surface). At head 920a4d85 under the lock: packages/components/ full suite 470 passed 1 skipped files, 4481 passed 24 skipped tests (VERDICT command-exit 0, 18m49s); the 3 data-table row-menu files + app-shell ObjectView.recordOpenDisplay-26681: 22/22. Ablation via ablation-replace.mjs, source-resolved: opacity-0 back at rest -> 1 failed 3 passed; pointer-coarse:opacity-100 -> 1 failed 3 passed; both restored blob 1d306e61 == HEAD, git diff HEAD empty.",
"gates": "dispatch-gates --commands: 34 derived, 34 run, each exit 0 (type-check-debt and ui vitest scripts/ under the lock), PR-body gates with the final body as GITHUB_EVENT_PATH; --ran: 34 run, 0 NOT-MEASURED. check-partof-closing-keyword with PR_BODY: exit 0. @object-ui/components type-check exit 0. ESLint on 4 tsx files: 0 errors, 53 warnings (51 pre-existing in data-table.tsx, 2 'as any' registry casts in the tests). Not run locally: app-shell type-check and suite (docblock-only change), left to CI. CI check-runs: in_progress at report time.",
"dogfood_battery": "n/a — no ! in the PR title and no (narrowing) arm",
"mcp_calls": "0",
"api_writes": "2 — fleet-write relay pr_create (objectstack#29030); this os-dev-report comment via post-stamped",
"open_questions": [],
"out_of_scope_findings": []
}
Landed · 2026-11-02T07:25Z · PR #29030 merged through the merge queue as 636432c1 at 2026-11-02T07:19Z (GitHub's clock). ACCEPT 6570776201 at head 920a4d85.
probe
before (636432c1~1)
now (origin/main)
group-hover/row:opacity-100 in components/src/renderers/complex/data-table.tsx
Activity
objectstack-fleet commentedon Nov 2, 2026
triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U
Path: none
Triage: priority:p2 · 2026-11-02T05:12Z
⛔ Not a claim.
pm:queueanddomain:uistay, and only the missing priority is added. Thedata-table-row-actionstrigger at ui/packages/components/src/renderers/complex/data-table.tsx:849 keeps the hover-reveal that List grid Actions column: a visible low-emphasis ⋯ on every row at rest, instead of a header over a column that looks empty until the pointer hovers a row #28871 retired on the list grid. It is graded p2, the same as List grid Actions column: a visible low-emphasis ⋯ on every row at rest, instead of a header over a column that looks empty until the pointer hovers a row #28871, because it is the same user-visible defect on another renderer. TheobjectViewOpenAsPage.tsxdocblock correction is a sound triage call: keep the link's hover-reveal and fix the sentence.Generated by Claude Code
objectstack-fleet commentedon Nov 2, 2026
domain:ui#1 · zhuangjianguo · session_01QsR2jUJ19MstFvFhjgiYTu
Claim: PM loop round 16 · 2026-11-02T05:18Z
Session:
session_01QsR2jSXEKkhP494Y6s2au2(card thread, os-dev); dispatched by seat sessionsession_01QsR2jUJ19MstFvFhjgiYTuAccount:
zhuangjianguoBranch:
claude/project-thread-n792y2(platform-assigned to the card thread; it can push only this branch)Worktree:
objectstack-issue-28923Domain:
domain:uiSeat:
domain:ui#1File surface:
ui/packages/components/src/renderers/complex/data-table.tsx(thedata-table-row-actionstrigger),ui/packages/app-shell/src/views/objectViewOpenAsPage.tsx(OPEN_AS_PAGE_CLASSand its docblock), their tests, and a root.changeset(stop on breach; explain in the report)Container & model: S,
mode:thread,model: default tier (dispatch-gates --tier: no path-derived mandate),effort: mediumClause-②: no
Metadata-protocol: none
Responsibility:
ui/packages/componentsdata-table.tsxkept the hover-reveal class #28871 retired inRowActionMenu.tsxThread-read: 6569607362
Premise: holds (at
origin/main62b3ec36:data-table.tsx:849draws thedata-table-row-actionstriggeropacity-0at rest;objectViewOpenAsPage.tsx:40hides the same way)Serial constraints cleared: #28871 landed (PR #28922,
ff881050).objectstack-fleet commentedon Nov 2, 2026
domain:ui#1 · zhuangjianguo · session_01QsR2jSXEKkhP494Y6s2au2
os-dev-report
{ "issue": 28923, "status": "done", "branch": "claude/project-thread-n792y2", "pr": "https://github.com/objectstack-ai/objectstack/pull/29030", "session": "session_01QsR2jSXEKkhP494Y6s2au2", "premise_still_valid": true, "summary": "data-table.tsx's data-table-row-actions trigger now rests in text-muted-foreground with group-hover/row, group-focus-within/row, group-data-[state=selected]/row, data-[state=open], focus-visible and pointer-coarse lifting it to text-foreground; no opacity, the RowActionMenu set from #28871. objectViewOpenAsPage.tsx: kept hover-revealed (triage's call; an extra link beside the name with no header, drawing it on every row would crowd the name column); only its docblock is corrected, OPEN_AS_PAGE_CLASS unchanged. Changeset: @object-ui/components patch with the claim's Clause-② no / Metadata-protocol none lines; app-shell change is comment-only and not in the changeset.", "tests": "New data-table-row-actions-atRest-28923.test.tsx (4 cases). data-table-leadingCell-12423.test.tsx: its row-actions-trigger case pinned the old opacity-0 set, repointed to the new classes; checkbox cases untouched (inside the claim's 'their tests' surface). At head 920a4d85 under the lock: packages/components/ full suite 470 passed 1 skipped files, 4481 passed 24 skipped tests (VERDICT command-exit 0, 18m49s); the 3 data-table row-menu files + app-shell ObjectView.recordOpenDisplay-26681: 22/22. Ablation via ablation-replace.mjs, source-resolved: opacity-0 back at rest -> 1 failed 3 passed; pointer-coarse:opacity-100 -> 1 failed 3 passed; both restored blob 1d306e61 == HEAD, git diff HEAD empty.", "gates": "dispatch-gates --commands: 34 derived, 34 run, each exit 0 (type-check-debt and ui vitest scripts/ under the lock), PR-body gates with the final body as GITHUB_EVENT_PATH; --ran: 34 run, 0 NOT-MEASURED. check-partof-closing-keyword with PR_BODY: exit 0. @object-ui/components type-check exit 0. ESLint on 4 tsx files: 0 errors, 53 warnings (51 pre-existing in data-table.tsx, 2 'as any' registry casts in the tests). Not run locally: app-shell type-check and suite (docblock-only change), left to CI. CI check-runs: in_progress at report time.", "dogfood_battery": "n/a — no ! in the PR title and no (narrowing) arm", "mcp_calls": "0", "api_writes": "2 — fleet-write relay pr_create (objectstack#29030); this os-dev-report comment via post-stamped", "open_questions": [], "out_of_scope_findings": [] }Generated by Claude Code
objectstack-fleet commentedon Nov 2, 2026
domain:ui#1 · zhuangjianguo · session_01QsR2jUJ19MstFvFhjgiYTu
Landed · 2026-11-02T07:25Z · PR #29030 merged through the merge queue as
636432c1at 2026-11-02T07:19Z (GitHub's clock). ACCEPT 6570776201 at head920a4d85.636432c1~1)origin/main)group-hover/row:opacity-100incomponents/src/renderers/complex/data-table.tsxdata-table-row-actions-atRest-28923.test.tsxexistsFixes #28923closed this card.pm:dispatchedcomes off in the same stroke as this note.