chore(design-sync): sync HeartbeatToolCall into the design system#3636
Conversation
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 56d6909e68
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Enroll the HeartbeatToolCall tool card and push it to the Mux Design System claude.ai/design project (now 34 components): - ds-barrel.ts: export HeartbeatToolCall (gen-barrel-confirmed). - config.json: titleMap "Heartbeat" -> "HeartbeatToolCall"; overrides cardMode "column" (the CustomMessageWrapping story renders at a pinned 375px, wider than a grid cell); "Timeouts": null to drop the WorkflowRun timeout sub-story. - gen-barrel.mjs: add "Timeouts" to EXCLUDE_HEAVY (a segment exclusion) so the heavy WorkflowRun component (shiki/mermaid/recharts, over the 5 MB cap) stays out of the bundle — its ".../Timeouts" title segment slipped the "WorkflowRun" seg exclusion. Segment (not path) exclusion so the generated titleMap also nulls "Timeouts" and stays consistent with cfg.titleMap (a path exclusion would drift from config). - previews/HeartbeatToolCall.tsx: hand-authored isolated preview, one cell per story (all 10 graded match against the reference Storybook). - NOTES.md: re-sync risks for the above, plus the accepted Ubuntu Mono fallback font. Change-Id: Iaa6a1c73ddcef47c2cff85c7a0d3d95bac633a94 Signed-off-by: Thomas Kosiewski <tk@coder.com>
56d6909 to
fbbe29e
Compare
|
@codex review Good catch — fixed the config/generator drift. Changed the WorkflowRun-timeout exclusion from a path exclusion ( |
|
Codex Review: Didn't find any major issues. 🎉 Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Summary
Enroll the
HeartbeatToolCalltool card into the design-system sync config so it ships to the Mux Design System (claude.ai/design) alongside the other tool cards (GetGoal, HookOutput, Todo). The card itself already merged in #3631; this is the.design-syncfollow-up. The component has already been uploaded to the project — this commits the repo-side state so future re-syncs keep including it.Implementation
ds-barrel.ts— exportHeartbeatToolCall(matchesgen-barrel.mjs's convention; confirmed by re-running the generator).config.json—titleMap"Heartbeat" → "HeartbeatToolCall";overrides.HeartbeatToolCall.cardMode: "column"(theCustomMessageWrappingstory renders at a pinned 375px, wider than a grid cell, so column mode keeps all stories full-width and uncropped).gen-barrel.mjs— addWorkflowRunToolCall.timeouttoEXCLUDE_IMPORT. The heavyWorkflowRunToolCallis excluded via its"WorkflowRun"title segment, but its timeout stories title to.../WorkflowRun/Timeouts(segmentTimeouts), which slipped the segment exclusion and would have pulled shiki/mermaid/recharts into the bundle, over the 5 MB cap. AlsotitleMap "Timeouts": nullto drop the sub-story from the converter.previews/HeartbeatToolCall.tsx— hand-authored isolated preview (one cell per story; the stories import the app viameta.tsx, so previews are hand-authored here, consistent with every other card).NOTES.md— re-sync risks for the above, plus the accepted Ubuntu Mono fallback-font note.Validation
/design-syncre-sync ran clean:package-validatereports 34 components, 0 bad / 0 thin; bundle 4.69 MB and the new preview 3.21 MB are both under the 5 MB cap.HeartbeatToolCallstories gradedmatchagainst the reference Storybook; the card is live in the project.Risks
Low —
.design-sync/config/tooling only, nosrc/or runtime change. Thegen-barrel.mjsedit narrows exclusion (keeps a heavy component out of the bundle); worst case is a design-system preview difference, caught by the sync's own validation.