aa80f307fe
refactor: rename ingest → glean throughout codebase
...
Renames the app/ingest/ package to app/glean/ and updates all
references across Python modules, shell scripts, Vue components,
tests, and documentation.
Intentionally preserved:
- SQLite column name ingest_time (avoids schema migration)
- RetrievedEntry.ingest_time field (maps to the column above)
- Any public-facing JSON keys that reference ingest_time
Changes by category:
- app/ingest/ → app/glean/ (full package move, all parsers)
- app/tasks/ingest_scheduler.py → app/tasks/glean_scheduler.py
- scripts/ingest_corpus.py → scripts/glean_corpus.py
- tests/test_ingest_*.py → tests/test_glean_*.py
- Docstrings, log messages, comments: ingest → glean
- Env var: TURNSTONE_INGEST_INTERVAL → TURNSTONE_GLEAN_INTERVAL
- Shell scripts: glean.log, glean_corpus.py references
- README.md: multi-source ingest → multi-source glean
- .env.example: updated env var name
- patterns/: new diagnostic patterns from 2026-05-20 SSH incident
(service_crash_loop, pkg_daemon_restart, ssh_forward_conflict)
- SourcesView.vue: pipeline label updated
- All test import paths updated to app.glean.*
285 tests passing.
2026-05-20 23:02:55 -07:00
f361c86019
feat: optional sqlite-vec embedding pipeline for Paid-tier RAG
2026-05-13 16:32:57 -07:00
2c408907ac
feat: inject environment context into diagnose pipeline and LLM prompt
...
- Add context_block param to summarize() and thread it into _PROMPT_TEMPLATE
- Wire retrieve_context/format_context_block into diagnose_stream() before
log search; emit context SSE event (facts + chunks) to the client
- 3 new tests covering prompt injection and SSE event emission (155 total, all pass)
2026-05-13 16:29:26 -07:00
9c8c60e461
feat: wizard state machine — structured Q&A writes context facts and source config
2026-05-13 16:25:52 -07:00
9a4931b0ba
feat: context retriever — keyword fact lookup and chunk search
2026-05-13 16:23:54 -07:00
70c8a7deea
feat: doc upload adapter — writes facts, document, and chunks to context store
2026-05-13 16:21:55 -07:00
c62b0bb12a
feat: context chunker — type detection, YAML extraction, text chunking
...
- Implement document type detection for yaml/json/markdown/text
- Extract service facts from docker-compose YAML (names, images, ports)
- Split text into overlapping word chunks (300-word default with 50-word overlap)
- Enforce 5 MB file size limit
- Comprehensive TDD test suite: 15 tests passing
2026-05-13 15:54:51 -07:00
dd977f0bf1
feat: context store — fact and document CRUD
2026-05-13 15:53:03 -07:00
bae889ddf2
feat: add context_facts, context_documents, context_chunks tables to schema
2026-05-13 15:51:19 -07:00