Files
2026-09-01 13:05:57 +02:00

8 lines
1.0 KiB
Markdown

# Architecture
Git Tools is a static React/Vite application wrapped in the shared Toolbox shell. `git/tools.ts` contains bounded, side-effect-free parsers and generators for each workspace. Imported content is projected into typed records and rendered through text nodes, code blocks and native controls.
Patch authoring computes common prefix/suffix, then uses an LCS matrix only while its one-million-cell limit holds; larger changed middles become a bounded replace block. Hunk construction keeps selected context and records missing final newlines. Patch inspection validates observed old/new counts against every hunk header but never applies a patch.
The ignore matcher models one root `.gitignore` and explains each matching rule plus ignored-parent behavior. It does not pretend to model repository index state. SemVer ranges intentionally cover common operators rather than npm's entire historical range grammar. Version 0.1 is synchronous, has no persistence or server API, and uses relative assets for nested portal paths.