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
Approvals Inbox at 1024 px: the Approve / Reject column sits past the card's right edge (unpinned), and the Record column takes 470 px because long record titles never wrap or truncate #12816
Filing gate: ① — a user-visible defect with a named location, measured in a real browser. It is an out-of-scope finding of objectui#12708's dev (session_01SPYcVSSndYVgRePzs2F7sD, report d2b81345), filed by the seat that dispatched it, domain:ui#4 (session_01SJn1GEkrbbBQkhGC26wEDw).
What happens
Setup › Approvals Inbox (apps/console/src/pages/system/ApprovalsInboxPage.tsx), HotCRM under objectstack dev, 1024 px, three pending account approvals with long record titles ("ACC-000011 - Contoso Pharmaceuticals and Life Sciences Group"):
the inbox's own table is 1071 px wide inside a 718 px box;
the Record column takes about 470 px although it is styled w-[30%], because the record titles are nowrap and never truncate;
the inline Approve / Reject column is not pinned, so it sits past the card's right edge until the user scrolls sideways. The row actions the inbox exists for are off-screen at rest.
objectui#12708 (in flight) adds the overflow cue: a right-edge shadow and a hover scrollbar. It does not pin the action column or bound the Record column, so this card is what remains.
At 1024 px the inline Approve / Reject column is visible at rest: pinned to the right edge, as the console's lists pin their Actions column.
The Record column truncates a long title (its full text in the tooltip) instead of widening the table.
Acceptance
A test at a 718 px table box with a 60-character record title: the action column is pinned right, and the Record cell truncates with its full title in title.
Screenshots of the inbox at 1024 px, light and dark, with long record titles.
Who acts
Triage grades and routes it. The reader is a domain:ui objectui developer: ApprovalsInboxPage.tsx and its tests. It should land after objectui#12708, which edits the same table's wrapper.
Dedupe (2026-10-16, MCP search_issues on objectstack-ai/objectui, open and closed)
"Approvals Inbox table actions column Approve Reject not pinned off screen at 1024 px record column too wide": 20 hits. The nearest are objectui#12708 (open; the overflow cue only), objectui#12608 (open; names and labels in the lists), and the approvals-face cards objectui#12482–#12491 and #12045 (the served request page, not the inbox table). None is this card.
Claim: PM loop round 3 (priority:p2 bug; filed by this seat from objectui#12708's report, graded by the triage seat, 6226284762)
Session: session_01SJn1GEkrbbBQkhGC26wEDw
Account: os-sales (the seat's linked user as GET /user answers it; the card's assignee)
Branch: claude/issue-12816-approvals-inbox-actions
Worktree: objectui-issue-12816 (in the cloud session's own container)
Domain: domain:ui
Seat: domain:ui#4
File surface: apps/console/src/pages/system/ApprovalsInboxPage.tsx (the inbox table: the Approve / Reject column pinned right, the Record column bounded so a long title truncates), its tests beside it under apps/console/src/pages/system/, one .changeset/12816-*.md. ⛔ packages/components/src/ui/** stays out of bounds; the shared overflow box from objectui#12708 (packages/components/src/custom/) is used as published, not changed. Stop on breach; explain in the report.
Container & model: M, mode:cloud, model: opus (cloud on the maintainer's stance 「可以的话,ui 后续开发尽量用云 session,并且要求截图给我看」; lane scope on 「你也可以接ui车道的卡」; batch 3 on 「当前任务处理完,后续并发降到3」, this session's chat, 2026-10-16)
Clause-②: no
Clause-② reason: one console page's table layout; no exported type, prop or @object-ui/i18n key moves.
Responsibility: n/a — a measured layout defect at 1024 px
Thread-read: 6226284762
Serial constraints cleared: objectui#12708 (the same table's overflow box) landed as 4839f5c. No open objectui PR touches ApprovalsInboxPage.tsx (read at dispatch).
{
"issue": 12816,
"status": "done",
"branch": "claude/issue-12816-approvals-inbox-actions",
"pr": 12850,
"session": "session_011vfKFYJe5mXFiDw6F7CHuD",
"premise_still_valid": true,
"summary": "Measured on a live HotCRM backend, then fixed in ApprovalsInboxPage.tsx. Before (main at 5d69b0e, 1024 px): the table is 1074 px wide in a 718 px box, the Record column is 473 px, and the Approve / Reject buttons are outside the card. After: the Record cells are max-w-0, so a long title truncates with its full text in title and stays the whole link. The Record header keeps a min-w-40 floor so rows can still be told apart. The Approve / Reject column is sticky right-0 in the header and in every row, inside HorizontalOverflowBox seam=\"pinned\", and carries PINNED_RIGHT_SEAM_SHADOW_CLASSES. Its fill is bg-card, and an ::after layer redraws the row's hover and focus tints over it; the focused row's ring is redrawn on the pinned cell. Live at 1024: 762 / 718 px, Record 160 px, buttons inside the card, seam shadow on. At 1280: 974 / 974 px, nothing overflows. Mechanism assumptions 1, 2 and 4 held. Assumption 3 held: the record title is nowrap and sets the column's minimum width, and max-w-0 on the cell is the fix. One premise was false: on main the 1280 px table also overflowed with these titles (1074 in 974). The card assignee was not touched.",
"tests": "HEAD 9f7f390. (1) pnpm exec vitest run on all 18 ApprovalsInboxPage.*.test.tsx files (--maxWorkers=2, under os-verify-lock): exit 0, Test Files 18 passed (18), Tests 92 passed (92). (2) New pin ApprovalsInboxPage.pinnedActions-12816.test.tsx, 4 tests: pinned header and every row cell with the seam classes; the 60-character title truncates (td max-w-0, title attribute, link text, Record header w-[30%] min-w-40); CONTROL with a short title, its href and the other columns' widths; the focused row's ring on the pinned cell. The objectui#12708 pin's edge-shadow case is rewritten to check data-overflow-right, because the ruling moves the shadow to the seam. Run with the 12708 file: 6 passed. (3) Ablations, run through objectstack scripts/ablation-replace.mjs (each mutation confirmed on disk by anchor count and blob change; the console imports this page from source, so no dist is involved). Each was restored with git checkout HEAD, git diff HEAD came back empty, and the final hash-object equals the HEAD blob 8333f03. A1 Record max-w-0 removed: 1 of 6 red. A2 sticky right-0 z-10 removed: 1 of 6 red. A3 seam=\"pinned\" changed to edge: 2 of 6 red. A4 min-w-40 removed: 1 of 6 red. A5 focus ring shadow removed: 1 of 6 red. A6 seam classes removed: 1 of 6 red. The first attempts at A3 and A6 were refused by the tool (the replacement text was already in the anchor), so nothing ran. They were re-run with distinct replacements, and those runs are the ones reported.",
"gates": "Local, on HEAD 9f7f390, each exit code captured before any pipe: vitest over the ApprovalsInboxPage.* files, exit 0 (92 passed). pnpm --filter '@object-ui/console^...' build (dependency closure, fresh worktree), exit 0. pnpm --filter @object-ui/console type-check, exit 0. eslint on the 3 touched source and test files, exit 0: 0 errors, 19 warnings, all on lines the diff does not touch. pnpm --filter @object-ui/console build, exit 0. pnpm check:i18n-keys, exit 0. pnpm check:i18n-drift, exit 0. node scripts/check-changeset-presence.mjs, exit 0 (1 changeset declared). pnpm check:new-line-citations, exit 0 (0 new). node scripts/check-changeset-no-major.mjs, exit 0. objectui has no dispatch-gates.mjs, so there is no --ran reconciliation. CI check-runs: NOT MEASURED, reason: no PR opened from this container (the PM opens it). origin/main moved to 0812a19 after the branch was cut; it does not touch the claimed files, so no merge was needed.",
"mcp_calls": "4 GitHub MCP calls, all reads: issue_read get, issue_read get_comments, pull_request_read get and pull_request_read get_files (objectui#12822). The get_files output was too large to load, so the PR was read from its body and the merged code. Also 2 claude-code-remote add_repo calls (objectstack, hotcrm, read access; both answered read_available and attached nothing). No write tools.",
"api_writes": "0 REST writes. git push only: the empty feature branch, the fix commit 2456bf7, the test commit 9f7f390, and the evidence branch claude/issue-12816-evidence at e760383. The local branch of the same name in the shared checkout had no commits of its own (it was at 5d69b0e); it was deleted and recreated as the worktree branch, as the dispatch said.",
"open_questions": [
{
"question": "Record column floor: the Record header carries min-w-40 (10rem), which the ruling does not spell out. Without it, the max-w-0 cells leave the Record column whatever space is left: 114 px at 1024, and all three rows read 'ACC-00…'. With it the column is 160 px ('ACC-000012 - …'), and the table scrolls 44 px under the pinned Approve / Reject column.",
"options": [
"A keep the 10rem floor (shipped)",
"B drop the floor: the table fits 718 px exactly, but rows can't be told apart by record"
],
"recommendation": "A. Business need: an approver has to tell which record a row is, and three rows reading 'ACC-00…' was measured live. Long-term: one bounded floor, independent of the title, and the ruled pinned column absorbs the overflow. AI mistakes: no metadata or contract involved. Startup focus: one class, no new surface. The table's width still never depends on the title, so the ruling's intent holds."
},
{
"question": "'Visible at rest': the Approve / Reject buttons are still revealed only on row hover or focus (InlineActions opacity-0, unchanged because the ruling keeps the inline flows as they are). They now sit inside the card at rest, pinned, but are not painted until hover. Should they always be visible?",
"options": [
"A keep hover reveal (shipped; CONTROL)",
"B always visible: a separate change to the inline flows"
],
"recommendation": "A for this card. The ruling keeps the inline flows unchanged, and B would change every row's look at every width. If wanted, B is a follow-up card."
},
{
"question": "Conflict between os-dev.md and the dispatch: os-dev.md says the dev opens the draft PR and posts an os-dev-report comment through the fleet-write relay. The dispatch's degraded channel says not to (the relay returns 403 from this container).",
"options": [
"A follow the dispatch: pr null, PR body as a draft (done)"
],
"recommendation": "A. The file's write route can't be used here. Recorded so the PM can see the file and the dispatch disagree."
}
],
"out_of_scope_findings": [
"carrier: none — noted in the PR's Acceptance notes only: on main, at 1280 px, the inbox table also overflowed with long titles (1074 in 974); this PR fixes it as a side effect of the truncation, so nothing remains."
],
"deviations": [
"ApprovalsInboxPage.tableOverflow-12708.test.tsx: one case rewritten. The ruled seam=\"pinned\" removes the box's edge overlay (horizontal-overflow-shadow), so the case now checks the box's data-overflow-right mark and that the edge overlay stays off. The file is within the claimed surface.",
"No file outside the claimed surface. packages/components untouched; the shared overflow box is used as published."
],
"files_changed": [
"apps/console/src/pages/system/ApprovalsInboxPage.tsx",
"apps/console/src/pages/system/ApprovalsInboxPage.pinnedActions-12816.test.tsx",
"apps/console/src/pages/system/ApprovalsInboxPage.tableOverflow-12708.test.tsx",
".changeset/12816-approvals-inbox-pinned-actions.md"
],
"screenshots": [
"https://github.com/objectstack-ai/objectui/blob/e760383c390964e30e1428bcaa8048203da419d7/docs/design/findings/12816/approvals-inbox-1024-light-main.png?raw=true",
"https://github.com/objectstack-ai/objectui/blob/e760383c390964e30e1428bcaa8048203da419d7/docs/design/findings/12816/approvals-inbox-1024-light.png?raw=true",
"https://github.com/objectstack-ai/objectui/blob/e760383c390964e30e1428bcaa8048203da419d7/docs/design/findings/12816/approvals-inbox-1024-dark.png?raw=true",
"https://github.com/objectstack-ai/objectui/blob/e760383c390964e30e1428bcaa8048203da419d7/docs/design/findings/12816/approvals-inbox-1280-light.png?raw=true",
"https://github.com/objectstack-ai/objectui/blob/e760383c390964e30e1428bcaa8048203da419d7/docs/design/findings/12816/approvals-inbox-1024-light-focused-row.png?raw=true",
"https://github.com/objectstack-ai/objectui/blob/e760383c390964e30e1428bcaa8048203da419d7/docs/design/findings/12816/dom-readings.json?raw=true"
],
"line_budget": "n/a",
"cleanup": "Stopped the HotCRM backend (port 4716) and the console Vite server (port 5716) by the PIDs I recorded; both ports are now free. The evidence worktree is removed. The feature worktree ../objectui-issue-12816 is kept until the PM opens the PR.",
"pr_title_draft": "fix(console): pin the Approvals Inbox Approve / Reject column and truncate long record titles",
"pr_body_draft": "(elided here: it is the body of objectstack-ai/objectui#12850, the dev's draft verbatim)"
}
Relayed by seat domain:ui#4 (session_01SJn1GEkrbbBQkhGC26wEDw) from the cloud session's final report (degraded channel: the session pushed and returned pr: null). The seat opened #12850 from claude/issue-12816-approvals-inbox-actions at 9f7f390 and set pr above. The open questions (the Record column's floor, the hover-revealed buttons) are ruled in the ACCEPT on the PR.
a model name in the merge commit's message; a PNG or a packages/components file in its diff
0; 0
—
State change: the card closed as completed through Fixes #12816, and pm:dispatched is removed in this act. The cloud session session_011vfKFYJe5mXFiDw6F7CHuD is archived. No contract review is owed (Clause-②: no). The ACCEPT of record is 6228957445; the landing note is 6229067786. The screenshots stay on claude/issue-12816-evidence (e760383). At 1024 px the Approve / Reject column now sits inside the card, pinned, where it sat past the card's edge.
Activity
objectstack-fleet commentedon Oct 16, 2026
Triage: first grade,
priority:p2·pm:queue· triage seat ·session_01AavokzJ5DndAwitDXvKy4U· 2026-10-16T23:00ZTriage seat (objectstack-wide, seat post objectstack-ai/objectstack#6015). ⛔ Not a claim, ⛔ not a dispatch.
domain:uiandarea:workflowstand. Pin the action column and truncate or wrap the record title.objectstack-fleet commentedon Oct 17, 2026
Claim: PM loop round 3 (
priority:p2bug; filed by this seat from objectui#12708's report, graded by the triage seat,6226284762)Session:
session_01SJn1GEkrbbBQkhGC26wEDwAccount:
os-sales(the seat's linked user asGET /useranswers it; the card's assignee)Branch:
claude/issue-12816-approvals-inbox-actionsWorktree:
objectui-issue-12816(in the cloud session's own container)Domain:
domain:uiSeat:
domain:ui#4File surface:
apps/console/src/pages/system/ApprovalsInboxPage.tsx(the inbox table: the Approve / Reject column pinned right, the Record column bounded so a long title truncates), its tests beside it underapps/console/src/pages/system/, one.changeset/12816-*.md. ⛔packages/components/src/ui/**stays out of bounds; the shared overflow box from objectui#12708 (packages/components/src/custom/) is used as published, not changed. Stop on breach; explain in the report.Container & model:
M,mode:cloud,model: opus(cloud on the maintainer's stance 「可以的话,ui 后续开发尽量用云 session,并且要求截图给我看」; lane scope on 「你也可以接ui车道的卡」; batch 3 on 「当前任务处理完,后续并发降到3」, this session's chat, 2026-10-16)Clause-②: no
Clause-② reason: one console page's table layout; no exported type, prop or
@object-ui/i18nkey moves.Responsibility: n/a — a measured layout defect at 1024 px
Thread-read: 6226284762
Serial constraints cleared: objectui#12708 (the same table's overflow box) landed as
4839f5c. No open objectui PR touchesApprovalsInboxPage.tsx(read at dispatch).objectstack-fleet commentedon Oct 17, 2026
os-dev-report
{ "issue": 12816, "status": "done", "branch": "claude/issue-12816-approvals-inbox-actions", "pr": 12850, "session": "session_011vfKFYJe5mXFiDw6F7CHuD", "premise_still_valid": true, "summary": "Measured on a live HotCRM backend, then fixed in ApprovalsInboxPage.tsx. Before (main at 5d69b0e, 1024 px): the table is 1074 px wide in a 718 px box, the Record column is 473 px, and the Approve / Reject buttons are outside the card. After: the Record cells are max-w-0, so a long title truncates with its full text in title and stays the whole link. The Record header keeps a min-w-40 floor so rows can still be told apart. The Approve / Reject column is sticky right-0 in the header and in every row, inside HorizontalOverflowBox seam=\"pinned\", and carries PINNED_RIGHT_SEAM_SHADOW_CLASSES. Its fill is bg-card, and an ::after layer redraws the row's hover and focus tints over it; the focused row's ring is redrawn on the pinned cell. Live at 1024: 762 / 718 px, Record 160 px, buttons inside the card, seam shadow on. At 1280: 974 / 974 px, nothing overflows. Mechanism assumptions 1, 2 and 4 held. Assumption 3 held: the record title is nowrap and sets the column's minimum width, and max-w-0 on the cell is the fix. One premise was false: on main the 1280 px table also overflowed with these titles (1074 in 974). The card assignee was not touched.", "tests": "HEAD 9f7f390. (1) pnpm exec vitest run on all 18 ApprovalsInboxPage.*.test.tsx files (--maxWorkers=2, under os-verify-lock): exit 0, Test Files 18 passed (18), Tests 92 passed (92). (2) New pin ApprovalsInboxPage.pinnedActions-12816.test.tsx, 4 tests: pinned header and every row cell with the seam classes; the 60-character title truncates (td max-w-0, title attribute, link text, Record header w-[30%] min-w-40); CONTROL with a short title, its href and the other columns' widths; the focused row's ring on the pinned cell. The objectui#12708 pin's edge-shadow case is rewritten to check data-overflow-right, because the ruling moves the shadow to the seam. Run with the 12708 file: 6 passed. (3) Ablations, run through objectstack scripts/ablation-replace.mjs (each mutation confirmed on disk by anchor count and blob change; the console imports this page from source, so no dist is involved). Each was restored with git checkout HEAD, git diff HEAD came back empty, and the final hash-object equals the HEAD blob 8333f03. A1 Record max-w-0 removed: 1 of 6 red. A2 sticky right-0 z-10 removed: 1 of 6 red. A3 seam=\"pinned\" changed to edge: 2 of 6 red. A4 min-w-40 removed: 1 of 6 red. A5 focus ring shadow removed: 1 of 6 red. A6 seam classes removed: 1 of 6 red. The first attempts at A3 and A6 were refused by the tool (the replacement text was already in the anchor), so nothing ran. They were re-run with distinct replacements, and those runs are the ones reported.", "gates": "Local, on HEAD 9f7f390, each exit code captured before any pipe: vitest over the ApprovalsInboxPage.* files, exit 0 (92 passed). pnpm --filter '@object-ui/console^...' build (dependency closure, fresh worktree), exit 0. pnpm --filter @object-ui/console type-check, exit 0. eslint on the 3 touched source and test files, exit 0: 0 errors, 19 warnings, all on lines the diff does not touch. pnpm --filter @object-ui/console build, exit 0. pnpm check:i18n-keys, exit 0. pnpm check:i18n-drift, exit 0. node scripts/check-changeset-presence.mjs, exit 0 (1 changeset declared). pnpm check:new-line-citations, exit 0 (0 new). node scripts/check-changeset-no-major.mjs, exit 0. objectui has no dispatch-gates.mjs, so there is no --ran reconciliation. CI check-runs: NOT MEASURED, reason: no PR opened from this container (the PM opens it). origin/main moved to 0812a19 after the branch was cut; it does not touch the claimed files, so no merge was needed.", "mcp_calls": "4 GitHub MCP calls, all reads: issue_read get, issue_read get_comments, pull_request_read get and pull_request_read get_files (objectui#12822). The get_files output was too large to load, so the PR was read from its body and the merged code. Also 2 claude-code-remote add_repo calls (objectstack, hotcrm, read access; both answered read_available and attached nothing). No write tools.", "api_writes": "0 REST writes. git push only: the empty feature branch, the fix commit 2456bf7, the test commit 9f7f390, and the evidence branch claude/issue-12816-evidence at e760383. The local branch of the same name in the shared checkout had no commits of its own (it was at 5d69b0e); it was deleted and recreated as the worktree branch, as the dispatch said.", "open_questions": [ { "question": "Record column floor: the Record header carries min-w-40 (10rem), which the ruling does not spell out. Without it, the max-w-0 cells leave the Record column whatever space is left: 114 px at 1024, and all three rows read 'ACC-00…'. With it the column is 160 px ('ACC-000012 - …'), and the table scrolls 44 px under the pinned Approve / Reject column.", "options": [ "A keep the 10rem floor (shipped)", "B drop the floor: the table fits 718 px exactly, but rows can't be told apart by record" ], "recommendation": "A. Business need: an approver has to tell which record a row is, and three rows reading 'ACC-00…' was measured live. Long-term: one bounded floor, independent of the title, and the ruled pinned column absorbs the overflow. AI mistakes: no metadata or contract involved. Startup focus: one class, no new surface. The table's width still never depends on the title, so the ruling's intent holds." }, { "question": "'Visible at rest': the Approve / Reject buttons are still revealed only on row hover or focus (InlineActions opacity-0, unchanged because the ruling keeps the inline flows as they are). They now sit inside the card at rest, pinned, but are not painted until hover. Should they always be visible?", "options": [ "A keep hover reveal (shipped; CONTROL)", "B always visible: a separate change to the inline flows" ], "recommendation": "A for this card. The ruling keeps the inline flows unchanged, and B would change every row's look at every width. If wanted, B is a follow-up card." }, { "question": "Conflict between os-dev.md and the dispatch: os-dev.md says the dev opens the draft PR and posts an os-dev-report comment through the fleet-write relay. The dispatch's degraded channel says not to (the relay returns 403 from this container).", "options": [ "A follow the dispatch: pr null, PR body as a draft (done)" ], "recommendation": "A. The file's write route can't be used here. Recorded so the PM can see the file and the dispatch disagree." } ], "out_of_scope_findings": [ "carrier: none — noted in the PR's Acceptance notes only: on main, at 1280 px, the inbox table also overflowed with long titles (1074 in 974); this PR fixes it as a side effect of the truncation, so nothing remains." ], "deviations": [ "ApprovalsInboxPage.tableOverflow-12708.test.tsx: one case rewritten. The ruled seam=\"pinned\" removes the box's edge overlay (horizontal-overflow-shadow), so the case now checks the box's data-overflow-right mark and that the edge overlay stays off. The file is within the claimed surface.", "No file outside the claimed surface. packages/components untouched; the shared overflow box is used as published." ], "files_changed": [ "apps/console/src/pages/system/ApprovalsInboxPage.tsx", "apps/console/src/pages/system/ApprovalsInboxPage.pinnedActions-12816.test.tsx", "apps/console/src/pages/system/ApprovalsInboxPage.tableOverflow-12708.test.tsx", ".changeset/12816-approvals-inbox-pinned-actions.md" ], "screenshots": [ "https://github.com/objectstack-ai/objectui/blob/e760383c390964e30e1428bcaa8048203da419d7/docs/design/findings/12816/approvals-inbox-1024-light-main.png?raw=true", "https://github.com/objectstack-ai/objectui/blob/e760383c390964e30e1428bcaa8048203da419d7/docs/design/findings/12816/approvals-inbox-1024-light.png?raw=true", "https://github.com/objectstack-ai/objectui/blob/e760383c390964e30e1428bcaa8048203da419d7/docs/design/findings/12816/approvals-inbox-1024-dark.png?raw=true", "https://github.com/objectstack-ai/objectui/blob/e760383c390964e30e1428bcaa8048203da419d7/docs/design/findings/12816/approvals-inbox-1280-light.png?raw=true", "https://github.com/objectstack-ai/objectui/blob/e760383c390964e30e1428bcaa8048203da419d7/docs/design/findings/12816/approvals-inbox-1024-light-focused-row.png?raw=true", "https://github.com/objectstack-ai/objectui/blob/e760383c390964e30e1428bcaa8048203da419d7/docs/design/findings/12816/dom-readings.json?raw=true" ], "line_budget": "n/a", "cleanup": "Stopped the HotCRM backend (port 4716) and the console Vite server (port 5716) by the PIDs I recorded; both ports are now free. The evidence worktree is removed. The feature worktree ../objectui-issue-12816 is kept until the PM opens the PR.", "pr_title_draft": "fix(console): pin the Approvals Inbox Approve / Reject column and truncate long record titles", "pr_body_draft": "(elided here: it is the body of objectstack-ai/objectui#12850, the dev's draft verbatim)" }Relayed by seat
domain:ui#4(session_01SJn1GEkrbbBQkhGC26wEDw) from the cloud session's final report (degraded channel: the session pushed and returnedpr: null). The seat opened #12850 fromclaude/issue-12816-approvals-inbox-actionsat9f7f390and setprabove. The open questions (the Record column's floor, the hover-revealed buttons) are ruled in the ACCEPT on the PR.Generated by Claude Code
objectstack-fleet commentedon Oct 17, 2026
Landed · PR #12850 merged as
4b3d6edonmain· read 2026-10-17T03:44Zorigin/main4b3d6edapps/console/src/pages/system/ApprovalsInboxPage.tsxPINNED_ACTIONS_CLASSES(:880):sticky right-0 z-10 bg-cardwith the sharedPINNED_RIGHT_SEAM_SHADOW_CLASSES(imported :76)seam="pinned"(:2078)data-overflow-rightmark still reportsw-[30%] min-w-40(:2103); cellsmax-w-0(:2131)title; the link is the whole titleApprovalsInboxPage.pinnedActions-12816.test.tsx.changeset/12816-approvals-inbox-pinned-actions.md@object-ui/consolepatchpackages/componentsfile in its diffState change: the card closed as completed through
Fixes #12816, andpm:dispatchedis removed in this act. The cloud sessionsession_011vfKFYJe5mXFiDw6F7CHuDis archived. No contract review is owed (Clause-②: no). The ACCEPT of record is6228957445; the landing note is6229067786. The screenshots stay onclaude/issue-12816-evidence(e760383). At 1024 px the Approve / Reject column now sits inside the card, pinned, where it sat past the card's edge.Generated by Claude Code