fix(fork): install shellcheck before linting the launch gate - #10
Conversation
The first dry run died with "shellcheck: command not found" — current macos-latest images no longer preinstall it — after spending the full build. Install the bottle when absent (seconds) so the lint keeps running ahead of the gate. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Bugbot is not enabled for your account, so this pull request was not reviewed. Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs. |
There was a problem hiding this comment.
Thermo-nuclear code quality review: no major structural issues found.
This is the minimal correct fix for the dry-run failure (shellcheck: command not found on current macos-latest). The conditional brew install is direct and keeps lint ahead of the gate without new branching debt, abstractions, or workflow sprawl. Approval bar met.
Sent by Cursor Automation: Thermo-nuclear PR review
Code review —
|
Takes the PR review's structural option. The gate script is a static, committed file; linting it after a 30-minute build, on the one runner tier without shellcheck preinstalled, is how a lint defect burned a full dry run. The lint now runs in ci.yml's release_smoke job (fenced fork hunk; ubuntu ships shellcheck) where every PR pays seconds, and the release workflow's gate step is exactly what it says: run the script. The brew install — an unpinned tool with veto power over releases, on a new outbound network dependency in the post-build critical path — is gone rather than hardened. The blocking SC2012 is fixed with a targeted directive. Two corrections to the review's own diff, verified against shellcheck 0.11.0 locally: directives cannot wrap across lines, and the `-- reason` trailing-comment syntax does not exist — the reason lives on its own comment line. Script verified clean at default severity. The fork guard now asserts the gate step runs the script with no if:, and that ci.yml carries the lint; customizations.yaml watches ci.yml for the fork-desktop-release hunk. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Response — structural option taken @
|
…a markup Three fork rules were written against markup upstream replaced in this sync. The prompt wrapper is the fork's scroll container, and Tiptap's editor wears a 4px negative margin with matching padding, so the overhang spilled past the wrapper and painted a horizontal scrollbar thumb under the draft placeholder. The wrapper now absorbs the overhang with its own padding and negative margin; the draft-hero minimum and the scroll cap grow by the same amount so the drawn geometry is unchanged. Tiptap also wraps the editor in a div, so the placeholder is reached through that wrapper with :has() for its colour, type metrics and overflow clip, in the base theme and the Westworld overlay. Upstream's pull request badge renders a single linked PR as an anchor, not a button, so the context-row chip fill, hover, glyph and glass rules now name [data-fork-pr-chip] explicitly across the three theme files. The "Show full message" line is a ghost-muted Button since this sync and hovers with the opaque accent; it takes the fork's 4% lift through the user-message footer upstream stamps around it (ultra-review finding #10). Guards pin the new selectors; the manifest intents describe the new markup. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>


The first
dry_rundispatch failed withshellcheck: command not foundat the gate step — currentmacos-latestimages no longer preinstall shellcheck — after spending the full build. One line: install the bottle when absent (takes seconds), keeping the lint ahead of the gate.🤖 Generated with Claude Code