@@ -19,25 +19,35 @@ change unilaterally.
1919Measured with ` node scripts/measure-upstream-derivation.mjs ` :
2020
2121```
22- Upstream-derived code: 32,920 of 98,175 lines (33.5 %) baseline 2026-09-01
23-
24- 9067 lines 59 files server modules
25- 6527 lines 40 files chat UI
26- 3077 lines 23 files other client
27- 2751 lines 21 files file tree
28- 2629 lines 22 files git panel
29- 1812 lines 20 files UI primitives
30- 1801 lines 25 files other components
31- 1230 lines 6 files other server
32- 1203 lines 16 files settings
33- 1141 lines 11 files code editor
34- 913 lines 4 files sidebar
35- 769 lines 7 files other
22+ Upstream-derived code: 31,480 of 98,582 lines (31.9 %) baseline 2026-09-01
23+
24+ 7944 lines 49 files server modules
25+ 6226 lines 42 files chat UI
26+ 2873 lines 23 files other client
27+ 2736 lines 21 files file tree
28+ 2731 lines 24 files git panel
29+ 1840 lines 26 files other components
30+ 1777 lines 20 files UI primitives
31+ 1517 lines 7 files other server
32+ 1208 lines 16 files settings
33+ 1138 lines 11 files code editor
34+ 962 lines 4 files sidebar
35+ 528 lines 7 files other
3636```
3737
3838Re-run it to see the number move. Zero is the point at which this project can be
3939licensed as it chooses.
4040
41+ Two accounting notes on the 2026-09-01 baseline. First, it is not comparable to
42+ the 33.5% figure previously recorded here: the measurement now diffs only
43+ substantive lines (blank and punctuation-only lines no longer count as shared)
44+ and uses a symmetric denominator, on the grounds that neither blank lines nor
45+ file-length asymmetry are protected expression. Under the previous ruler the
46+ same tree measures 32.7%. Second, the first replacements are done: the nine
47+ database files under ` server/modules/database/ ` (repositories plus
48+ initialization) were rewritten from their behavioral contracts on 2026-09-01,
49+ each in its own commit carrying the contract it was written from.
50+
4151## What "removing" it actually requires
4252
4353Copyright infringement needs two things: ** access** to the original, and
0 commit comments