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.