language server: a rename checks the files of its name once #172
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
LANGUAGE-SERVER.md section 15, fourth bullet: a rename of a name many files have checks all of them twice - before the edits and after - which takes seconds. Split from #10.
Depends on #171. Both change how the server holds a
ModuleRunand its pending work inserver.trb; start this one after #171 is merged.Goal
A rename checks each file of its name once: the check after the edits. The facts of the check before the edits (
ModuleFactsofcompiler/src/language-server/rename.trb: what every name resolves to, and every problem) come from what the server already knows, instead of a secondModuleRunover the same files.Design record points (pinned)
RequestJobthat takes steps and can be cancelled.Design (inside the record, no owner question)
ModuleFactsper file, taken when the workspace check finishes a module (and when a rename or a references search checks a file), with the text it was taken from and the project's generation: the count that grows where the front is built from scratch (outline change, closed document, watched file changed on disk, the 200th run) and where a body change alters what other bodies see (bodyFactsOf, section 7).Acceptance criteria
$/cancelRequestin either phase still stops the rename.tests/lsp/*.expectedpass unchanged.skills/, it is regenerated.Seed
No. Existing syntax; no native, no flag.
Size and commits
One PR, one or two Conventional Commits:
perf(lsp): take the facts before a rename from the check the workspace made, and optionallydocs(lsp): measure a rename of a name many files have. Tier A in the forge CI.Implementer
opus / high (language server core).
Collisions
Touches
server.trb(RenameSearch,renameBefore, the workspace check's publishing),workspace.trb,rename.trb. #171 changes the same server code: this issue starts after it. No overlap with the running #6, #7, #9.[loop:torbscript] refine: split from #10 and made ready (acceptance criteria, pinned records, seed: no). Implementer: opus/high. Depends on #171: start only after it is merged (same server.trb code), next: implement
[loop:torbscript] claim implement by session:loop-torbscript-20261008 until 2026-10-08T21:10:00Z
[loop:torbscript] implement: PR #195 open, CI green (https://git.torb.dev/torbscript/language/actions/runs/275), next: review
[loop:torbscript] implement: correction - argus already reviewed and merged #195 (head
3272b13d, both commits, CI green), so review is done.