Diagnostic intelligence layer for servers, services, and devices — log ingest, FTS search, and MCP-native diagnostics https://circuitforge.tech/software/turnstone
Find a file
pyr0ball d63dc2a714 feat: incident tagging — DB schema, CRUD service, REST API (#1)
- Add `incidents` table to SQLite schema (id, label, started_at, ended_at,
  notes, created_at, severity)
- Extract `ensure_schema()` from ingest pipeline so tables are always
  created at startup, not only during ingest
- New `app/services/incidents.py`: create/list/get/delete + time-window
  entry association (FTS keyword search + raw window fallback)
- New `entries_in_window()` in search.py: plain SQL scan for incident
  detail when keyword FTS returns nothing
- REST endpoints: POST/GET /api/incidents, GET/DELETE /api/incidents/{id}
- Incident detail returns up to 100 associated log entries sorted by
  timestamp, prioritising FTS keyword hits then ERROR/CRITICAL then all
2026-05-09 15:37:14 -07:00
.github/copilot feat: initial Turnstone POC — ingest, FTS search, MCP server 2026-05-08 12:12:34 -07:00
app feat: incident tagging — DB schema, CRUD service, REST API (#1) 2026-05-09 15:37:14 -07:00
patterns feat: plex EAE watchdog and plex_eae_failure pattern 2026-05-08 13:41:34 -07:00
scripts feat: plain-text and Plex log ingestors 2026-05-08 17:50:01 -07:00
tests feat: initial Turnstone POC — ingest, FTS search, MCP server 2026-05-08 12:12:34 -07:00
web feat: Vue 3 frontend and FastAPI REST layer 2026-05-08 16:27:59 -07:00
.gitignore feat: Vue 3 frontend and FastAPI REST layer 2026-05-08 16:27:59 -07:00
.mcp.json feat: initial Turnstone POC — ingest, FTS search, MCP server 2026-05-08 12:12:34 -07:00
manage.sh fix: suppress ANSI colors when stdout is not a terminal 2026-05-09 10:16:03 -07:00