feat: AI ticket analyzer (phases 1-6)
Multi-stage LLM pipeline that produces structured analyses of Autotask tickets from local Postgres. Migration 069 + Zod schemas, Stage 0 preprocessor, IT Glue redaction + search, Anthropic SDK wrapper, Stages 1/3/4 (Haiku/Sonnet/Opus), pipeline + cost circuit breaker, job worker (opt-in autostart), 6 API routes, 3 frontend pages, share-row persistence (email send deferred to phase 7). 128 vitest tests, tsc clean. Build journal in docs/wulf-pulse-ticket-analyzer-build-notes.md. Sync: adds syncTicketNotes() + ticket_notes to ordered/date-filtered entities so the analyzer's local mirror stays current via scheduler. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
ea3471d38d
commit
8f8b5ab7be
53 changed files with 9377 additions and 33 deletions
|
|
@ -96,8 +96,10 @@ Examples: `getAutotaskClient()`, `getMsgraphClient()`, `getDattoRmmClient()`,
|
|||
## Build / run / verify
|
||||
- Dev: `npm run dev` → http://localhost:3100
|
||||
- Build: `npm run build` (turbopack via Next 16)
|
||||
- Type check: `npx tsc --noEmit --pretty` — **this is the only automated check**;
|
||||
there are no unit/integration tests and no CI.
|
||||
- Type check: `npx tsc --noEmit --pretty`
|
||||
- Tests: `npm test` (vitest) — currently scoped to `lib/services/analyzer/**` only.
|
||||
No CI yet; tests are local-only. Other parts of the codebase have no tests —
|
||||
if you touch them, type-check is the only safety net.
|
||||
- Docker: `docker compose up` from repo root. Postgres applies `migrations/*.sql`
|
||||
on init only (existing volumes won't re-run them).
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue