wulf-pulse/lib/services/llm/models.ts
lorentz 8f8b5ab7be 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>
2026-04-29 10:59:40 -04:00

14 lines
508 B
TypeScript

/**
* Canonical model IDs for the AI Ticket Analyzer pipeline.
*
* Use these constants — never hardcode the strings elsewhere.
*
* Verify quarterly against https://docs.claude.com/en/docs/about-claude/models
* Model IDs change rarely but pricing and capability tiers can shift.
*/
export const HAIKU = 'claude-haiku-4-5' as const;
export const SONNET = 'claude-sonnet-4-6' as const;
export const OPUS = 'claude-opus-4-7' as const;
export type ModelId = typeof HAIKU | typeof SONNET | typeof OPUS;