Loading...
Loading...
Guard against breaking the @pierre/diffs integration in Plannotator's code review UI. Use this skill whenever modifying DiffViewer.tsx, upgrading the @pierre/diffs package, changing unsafeCSS injection, adding new props to FileDiff, or touching shadow DOM selectors or CSS variables that cross into Pierre's shadow boundary. Also trigger when someone asks "will this break the diff viewer", "is this safe to change", or when reviewing PRs that touch the review-editor package.
npx skill4agent add backnotprop/plannotator pierre-guard@pierre/diffsnode_modules/@pierre/diffs/dist/.d.tspackages/review-editor/components/DiffViewer.tsxpackages/review-editor/package.json.d.tsimport { FileDiff } from '@pierre/diffs/react';
import { getSingularPatch, processFile } from '@pierre/diffs';DiffViewer.tsxFileDiffnode_modules/@pierre/diffs/dist/react/index.d.ts| Prop | Type | Notes |
|---|---|---|
| | From |
| | See options table below |
| | |
| | |
| | Custom inline annotation renderer |
| | The |
| Option | Value We Pass | Risk |
|---|---|---|
| | Low — standard enum |
| CSS string | High — targets internal selectors |
| | Low — standard enum |
| | Low |
| | Low |
| | Low |
| | Medium — deprecated prop |
| callback | Medium — signature could change |
unsafeCSSdata-*:host[data-diff][data-file][data-diffs-header][data-error-wrapper][data-virtualizer-buffer][data-file-info][data-column-number][data-diffs-header] [data-title][data-diff-type='split'][data-overflow='scroll'][data-overflow='wrap']--diffs-*--diffs-bg--diffs-fg--diffs-dark-bg--diffs-light-bg--diffs-dark--diffs-light--split-left--split-rightunsafeCSSgrid-template-columns: var(--split-left, 1fr) var(--split-right, 1fr)1frgrid-template-columns: 1fr 1frgrid-template-columns.d.tsrenderHoverUtilityDiffLineAnnotationside: 'deletions' | 'additions''old' | 'new'SelectedLineRange{ start, end, side? }data-*unsafeCSSsplitunified--diffs-bg--diffs-fg!importantbg-borderbg-primarybg-blue-500ResizeHandlepackages/ui/components/ResizeHandle.tsxbun run dev:reviewparseLineType: Invalid firstCharbun run --cwd apps/review build && bun run build:hook.d.ts# Before upgrading, snapshot current types
cp -r node_modules/@pierre/diffs/dist /tmp/pierre-old
# After upgrading
diff -r /tmp/pierre-old node_modules/@pierre/diffs/dist