Repository navigation
fix(plugin-grid): a bulk action's result lists each refused record by its title - #27996
Merged
Merged
Conversation
…esult Claude-Session: https://claude.ai/code/session_01Utp6CZM489wSkBwix6Gjde Co-authored-by: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Utp6CZM489wSkBwix6Gjde Co-authored-by: Claude <noreply@anthropic.com>
This was referenced Oct 30, 2026
Contributor
Author
|
domain:ui#3 · os-bill · session_01Utp6CaJoinvGQSbHeDaWBe 席位核对ACCEPT · head
Generated by Claude Code |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
domain:ui#3 · os-bill · session_01Utp6CaJoinvGQSbHeDaWBe
Requested by Bill · project thread
维护者速读
ui/packages/plugin-grid/src/components/BulkActionDialog.tsx的refusedRecordName;测试bulkResultPerRecord-27380.test.tsx。pnpm --dir ui exec vitest run packages/plugin-grid/src/__tests__/bulkResultPerRecord-27380.test.tsx,预期 3 个用例全绿。Fixes #27380
Clause-②: no
Metadata-protocol: none
What changes
BulkActionDialog's result panel lists each refusal under the record it refused. The label used to be the record's raw id; it is now the record's title, resolved by the sameaffectedRecordNamethe confirm step already uses to list the affected records (the declarednameField, or the resolver'sRecord #IDfloor). An entry that is not a record of the run (a row with no id, a batch the server answered with a count only) keeps its id. Counts, Retry and the error CSV are unchanged.This PR takes row 1 of #27380. Rows 2, 3 and 4 are carded by the seat: row 2 is #27999 (Blocked-by #27907, which holds the file it needs), rows 3 and 4 are #28000 and #28001 (spec and server changes). With every row owned, this PR closes the card.
Tests
ui/packages/plugin-grid/src/__tests__/bulkResultPerRecord-27380.test.tsxdrives the realObjectGrid, a realActionProviderand the realcreateServerActionHandlerover a transport that answers per record (HotCRM's "Add to Campaign" shape, three leads, two refused with a 400):Succeeded 1 / 3 · Failed 2): already true onmain, pinned so it stays true;Succeeded 3 / 3and no refusal list.Acceptance notes
main5f6dc96 through the chain above: a record whose dispatch is refused already counts as failed and is listed; the card's "Succeeded 2 / 2 whatever each row did" did not reproduce for a refusal the server answers with a 4xx. A handler that answers 200 for a record it did nothing to is a success by the/actionsdoor's contract (a handler that refuses throws, which the door answers 400), so that half needs no platform change.Verification
Head
17fa19bc(mainmerged in). Local subset only; every family CI runs is read from this PR's check-runs.pnpm --dir ui exec vitest run packages/plugin-grid/: lock VERDICT command-exit 0, Test Files 261 passed (261), Tests 2289 passed (2289).pnpm --filter @object-ui/plugin-grid run type-check: lock VERDICT command-exit 0.scripts/ablation-replace.mjs): the result label put back to the raw id, anchor 1 to 0 on disk,lists every refusal, each under the record it refused, by that record's titlefails (expectedGrace Hopper, receivedlead_2:), 1 failed and 2 passed; restored, blob equals HEAD andgit diff HEADempty.node scripts/pm/dispatch-gates.mjs --ran: 34 derived, 34 run, 0 NOT-MEASURED, 0 UNRUN.node scripts/check-new-cross-file-line-citations.mjs(fromui/): 0 new citations.Derived gate families (34), each command and its exit code
Generated by Claude Code