Files
stack/package.json
Jason Woltje 51e6ad0792 feat(#131): add OpenTelemetry tracing infrastructure
Implement comprehensive distributed tracing for HTTP requests and LLM
operations using OpenTelemetry with GenAI semantic conventions.

Features:
- TelemetryService: SDK initialization with OTLP HTTP exporter
- TelemetryInterceptor: Automatic HTTP request spans
- @TraceLlmCall decorator: LLM operation tracing
- GenAI semantic conventions for model/token tracking
- Graceful degradation when tracing disabled

Instrumented:
- All HTTP requests (automatic spans)
- OllamaProvider chat/chatStream/embed operations
- Token counts, model names, durations

Environment:
- OTEL_ENABLED (default: true)
- OTEL_SERVICE_NAME (default: mosaic-api)
- OTEL_EXPORTER_OTLP_ENDPOINT (default: localhost:4318)

Tests: 23 passing with full coverage

Fixes #131

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 12:55:11 -06:00

51 lines
1.6 KiB
JSON

{
"name": "mosaic-stack",
"version": "0.0.1",
"private": true,
"type": "module",
"packageManager": "pnpm@10.19.0",
"engines": {
"node": ">=20.0.0"
},
"scripts": {
"build": "turbo run build",
"dev": "turbo run dev",
"lint": "turbo run lint",
"lint:fix": "turbo run lint:fix",
"format": "prettier --write \"**/*.{ts,tsx,js,jsx,json,md}\"",
"format:check": "prettier --check \"**/*.{ts,tsx,js,jsx,json,md}\"",
"test": "turbo run test",
"test:watch": "turbo run test:watch",
"test:coverage": "turbo run test:coverage",
"test:docker": "vitest run --config tests/integration/vitest.config.ts",
"test:docker:watch": "vitest --config tests/integration/vitest.config.ts",
"clean": "turbo run clean && rm -rf node_modules",
"typecheck": "turbo run typecheck",
"docker:up": "docker compose up -d",
"docker:down": "docker compose down",
"docker:logs": "docker compose logs -f",
"docker:ps": "docker compose ps",
"docker:build": "docker compose build",
"docker:restart": "docker compose restart",
"prepare": "husky install"
},
"devDependencies": {
"@typescript-eslint/eslint-plugin": "^8.26.0",
"@typescript-eslint/parser": "^8.26.0",
"@vitest/coverage-v8": "^4.0.18",
"eslint": "^9.21.0",
"eslint-config-prettier": "^10.1.0",
"eslint-plugin-prettier": "^5.2.3",
"eslint-plugin-security": "^3.0.1",
"husky": "^9.1.7",
"lint-staged": "^16.2.7",
"prettier": "^3.5.3",
"turbo": "^2.8.0",
"typescript": "^5.8.2",
"vitest": "^3.0.8"
},
"dependencies": {
"@opentelemetry/resources": "^1.30.1"
}
}