For: the diff a pull and a commit show is one component, not a set of page-local classes waiting in docs/DESIGN.md §5d. It moves to its own area file, the way the design system now grows (scripts/design-lint.ts: an area file under docs/design/areas/ is vocabulary, and parallel pulls never edit the same lines).
Done:
[ ] A new docs/design/areas/diff.md names the component, what it is for, the function that draws it (src/web/diff-view.ts) and each class in a code span: .diff-body, .diff-head, .diff-note, .diff-path, .diff-stat, .diff-stub, .diff-summary, .diff-table, .dn-comment, .nonl. Follow docs/design/areas/README.md and the shape of the existing area files.
[ ] Each of those classes' own lines leaves §5d in docs/DESIGN.md. Only those lines; §5d keeps one class per line, so other pulls never meet.
[ ] No markup and no stylesheet rule changes. Every page that draws it looks the same as before.
[ ] bun scripts/design-lint.ts passes, and so does the test that checks every defined class is documented.
Files: docs/design/areas/diff.md (new), docs/DESIGN.md (deleting lines in §5d only).
Risk: none; documentation only. If design-lint asks for something else, follow what it names.
For: the diff a pull and a commit show is one component, not a set of page-local classes waiting in docs/DESIGN.md §5d. It moves to its own area file, the way the design system now grows (
scripts/design-lint.ts: an area file under docs/design/areas/ is vocabulary, and parallel pulls never edit the same lines).Done:
.diff-body,.diff-head,.diff-note,.diff-path,.diff-stat,.diff-stub,.diff-summary,.diff-table,.dn-comment,.nonl. Follow docs/design/areas/README.md and the shape of the existing area files.bun scripts/design-lint.tspasses, and so does the test that checks every defined class is documented.Files: docs/design/areas/diff.md (new), docs/DESIGN.md (deleting lines in §5d only). Risk: none; documentation only. If design-lint asks for something else, follow what it names.