Decisions - cruisinme30/spelunk GitHub Wiki

Architecture decision records live in docs/adr/. Add one for any choice a future contributor might question; never edit an accepted one, supersede it.

ADR Decision Instead of Status
0001 Search runs in a Go daemon over JSON-RPC on stdio Everything in the extension host; a TCP port Accepted
0002 One JSON Schema generates all cross-process types Hand-written types; Go as the source Accepted
0003 In-house trigram index for the working tree Zoekt; ripgrep per query Accepted, revisit when modules can be fetched
0004 History index reuses the trigram package SQLite FTS5; git log per query Accepted
0005 Code is colored by VS Code's grammar engine, in the extension host A small lexer per language; the engine in the webview Accepted
0006 Jupyter notebooks are searched by their cells, and diffed through a textconv filter Notebooks as text; a doc per cell; diffing cells in the daemon Accepted

The implementation plan still describes Zoekt and SQLite; ADRs 0003 and 0004 replaced those parts.


Next: Glossary: the words the wiki and the code use.