- Make productId optional in repository list() — omitting it queries all products - Add resolveProductFilter() helper: productId=_all skips filter, specific value overrides default - Add ProductBreakdown interface for per-product aggregation - Summary endpoint now returns productBreakdown[] alongside model/source breakdowns - Enables admin to compare John's LysnrAI usage vs MindLyst usage |
||
|---|---|---|
| .. | ||
| src | ||
| .gitignore | ||
| Dockerfile | ||
| package.json | ||
| tsconfig.json | ||
| vitest.config.ts | ||