agentfit 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/.github/workflows/release.yml +111 -0
  2. package/README.md +41 -38
  3. package/app/(dashboard)/daily/page.tsx +1 -1
  4. package/app/(dashboard)/data-management/page.tsx +180 -0
  5. package/app/(dashboard)/flow/page.tsx +17 -0
  6. package/app/(dashboard)/layout.tsx +2 -0
  7. package/app/(dashboard)/page.tsx +24 -5
  8. package/app/(dashboard)/reports/[id]/page.tsx +72 -0
  9. package/app/(dashboard)/reports/page.tsx +132 -0
  10. package/app/(dashboard)/sessions/[id]/page.tsx +167 -0
  11. package/app/api/backup/route.ts +215 -0
  12. package/app/api/check/route.ts +11 -1
  13. package/app/api/command-insights/route.ts +13 -0
  14. package/app/api/commands/route.ts +55 -1
  15. package/app/api/images-analysis/route.ts +3 -4
  16. package/app/api/reports/[id]/route.ts +23 -0
  17. package/app/api/reports/route.ts +50 -0
  18. package/app/api/reset/route.ts +21 -0
  19. package/app/api/session/route.ts +40 -0
  20. package/app/api/usage/route.ts +26 -1
  21. package/app/layout.tsx +1 -1
  22. package/bin/agentfit.mjs +2 -2
  23. package/components/agent-coach.tsx +256 -129
  24. package/components/app-sidebar.tsx +45 -10
  25. package/components/backup-section.tsx +236 -0
  26. package/components/daily-chart.tsx +447 -83
  27. package/components/dashboard-shell.tsx +29 -31
  28. package/components/data-provider.tsx +88 -8
  29. package/components/fitness-score.tsx +95 -54
  30. package/components/overview-cards.tsx +148 -41
  31. package/components/report-view.tsx +307 -0
  32. package/components/screenshots-analysis.tsx +51 -46
  33. package/components/session-chatlog.tsx +124 -0
  34. package/components/session-timeline.tsx +184 -0
  35. package/components/session-workflow.tsx +183 -0
  36. package/components/sessions-table.tsx +9 -1
  37. package/components/tool-flow-graph.tsx +144 -0
  38. package/components/ui/carousel.tsx +242 -0
  39. package/components/ui/sidebar.tsx +1 -1
  40. package/components/ui/sonner.tsx +51 -0
  41. package/electron/entitlements.mac.plist +16 -0
  42. package/electron/init-db.mjs +37 -0
  43. package/electron/main.mjs +203 -0
  44. package/generated/prisma/browser.ts +5 -0
  45. package/generated/prisma/client.ts +5 -0
  46. package/generated/prisma/internal/class.ts +14 -4
  47. package/generated/prisma/internal/prismaNamespace.ts +97 -2
  48. package/generated/prisma/internal/prismaNamespaceBrowser.ts +21 -1
  49. package/generated/prisma/models/Report.ts +1219 -0
  50. package/generated/prisma/models/Session.ts +221 -1
  51. package/generated/prisma/models.ts +1 -0
  52. package/lib/coach.ts +571 -211
  53. package/lib/command-insights.ts +231 -0
  54. package/lib/db.ts +2 -2
  55. package/lib/parse-codex.ts +6 -0
  56. package/lib/parse-logs.ts +80 -1
  57. package/lib/queries-codex.ts +24 -0
  58. package/lib/queries.ts +45 -0
  59. package/lib/report.ts +156 -0
  60. package/lib/session-detail.ts +382 -0
  61. package/lib/sync.ts +87 -0
  62. package/lib/tool-flow.ts +71 -0
  63. package/next.config.mjs +6 -1
  64. package/package.json +17 -2
  65. package/plugins/cost-heatmap/component.tsx +72 -50
  66. package/prisma/migrations/20260401144555_add_system_prompt_edits/migration.sql +80 -0
  67. package/prisma/schema.prisma +18 -0
  68. package/prisma/schema.sql +81 -0
  69. package/.claude/settings.local.json +0 -26
  70. package/CONTRIBUTING.md +0 -209
  71. package/prisma/migrations/20260328152517_init/migration.sql +0 -41
  72. package/prisma/migrations/20260328153801_add_image_model/migration.sql +0 -18
  73. package/prisma.config.ts +0 -14
  74. package/setup.sh +0 -73
@@ -32,3 +32,8 @@ export type Image = Prisma.ImageModel
32
32
  *
33
33
  */
34
34
  export type SyncLog = Prisma.SyncLogModel
35
+ /**
36
+ * Model Report
37
+ *
38
+ */
39
+ export type Report = Prisma.ReportModel
@@ -56,3 +56,8 @@ export type Image = Prisma.ImageModel
56
56
  *
57
57
  */
58
58
  export type SyncLog = Prisma.SyncLogModel
59
+ /**
60
+ * Model Report
61
+ *
62
+ */
63
+ export type Report = Prisma.ReportModel
@@ -20,7 +20,7 @@ const config: runtime.GetPrismaClientConfig = {
20
20
  "clientVersion": "7.6.0",
21
21
  "engineVersion": "75cbdc1eb7150937890ad5465d861175c6624711",
22
22
  "activeProvider": "sqlite",
23
- "inlineSchema": "generator client {\n provider = \"prisma-client\"\n output = \"../generated/prisma\"\n}\n\ndatasource db {\n provider = \"sqlite\"\n}\n\nmodel Session {\n id String @id @default(cuid())\n sessionId String @unique\n project String\n projectPath String\n startTime DateTime\n endTime DateTime\n durationMinutes Float\n userMessages Int\n assistantMessages Int\n totalMessages Int\n inputTokens Int\n outputTokens Int\n cacheCreationTokens Int\n cacheReadTokens Int\n totalTokens Int\n costUSD Float\n model String\n toolCallsTotal Int\n toolCallsJson String // JSON string of Record<string, number>\n createdAt DateTime @default(now())\n\n @@index([project])\n @@index([startTime])\n}\n\nmodel Image {\n id String @id @default(cuid())\n sessionId String\n messageId String // uuid of the message containing the image\n filename String // relative path under data/images/\n mediaType String // e.g. image/png\n sizeBytes Int\n timestamp DateTime\n role String // user or assistant\n createdAt DateTime @default(now())\n\n @@unique([sessionId, messageId, filename])\n @@index([sessionId])\n}\n\nmodel SyncLog {\n id String @id @default(cuid())\n syncedAt DateTime @default(now())\n filesProcessed Int\n sessionsAdded Int\n sessionsSkipped Int\n}\n",
23
+ "inlineSchema": "generator client {\n provider = \"prisma-client\"\n output = \"../generated/prisma\"\n}\n\ndatasource db {\n provider = \"sqlite\"\n}\n\nmodel Session {\n id String @id @default(cuid())\n sessionId String @unique\n project String\n projectPath String\n startTime DateTime\n endTime DateTime\n durationMinutes Float\n userMessages Int\n assistantMessages Int\n totalMessages Int\n inputTokens Int\n outputTokens Int\n cacheCreationTokens Int\n cacheReadTokens Int\n totalTokens Int\n costUSD Float\n model String\n toolCallsTotal Int\n toolCallsJson String // JSON string of Record<string, number>\n skillCallsJson String @default(\"{}\") // JSON string of Record<string, number>\n messageTimestamps String @default(\"[]\") // JSON array of ISO timestamp strings\n apiErrors Int @default(0)\n rateLimitErrors Int @default(0)\n userInterruptions Int @default(0)\n permissionModesJson String @default(\"{}\") // JSON: {default:N, acceptEdits:N, bypassPermissions:N, plan:N}\n systemPromptEdits Int @default(0) // Edits/writes to CLAUDE.md, AGENTS.md, agent.md\n createdAt DateTime @default(now())\n\n @@index([project])\n @@index([startTime])\n}\n\nmodel Image {\n id String @id @default(cuid())\n sessionId String\n messageId String // uuid of the message containing the image\n filename String // relative path under data/images/\n mediaType String // e.g. image/png\n sizeBytes Int\n timestamp DateTime\n role String // user or assistant\n createdAt DateTime @default(now())\n\n @@unique([sessionId, messageId, filename])\n @@index([sessionId])\n}\n\nmodel SyncLog {\n id String @id @default(cuid())\n syncedAt DateTime @default(now())\n filesProcessed Int\n sessionsAdded Int\n sessionsSkipped Int\n}\n\nmodel Report {\n id String @id @default(cuid())\n title String\n generatedAt DateTime @default(now())\n contentJson String\n sessionCount Int\n createdAt DateTime @default(now())\n\n @@index([generatedAt])\n}\n",
24
24
  "runtimeDataModel": {
25
25
  "models": {},
26
26
  "enums": {},
@@ -32,10 +32,10 @@ const config: runtime.GetPrismaClientConfig = {
32
32
  }
33
33
  }
34
34
 
35
- config.runtimeDataModel = JSON.parse("{\"models\":{\"Session\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sessionId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"project\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"projectPath\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"startTime\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"endTime\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"durationMinutes\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"userMessages\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"assistantMessages\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"totalMessages\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"inputTokens\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"outputTokens\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"cacheCreationTokens\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"cacheReadTokens\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"totalTokens\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"costUSD\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"model\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"toolCallsTotal\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"toolCallsJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Image\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sessionId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"messageId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"filename\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"mediaType\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sizeBytes\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"timestamp\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"role\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"SyncLog\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"syncedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"filesProcessed\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"sessionsAdded\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"sessionsSkipped\",\"kind\":\"scalar\",\"type\":\"Int\"}],\"dbName\":null}},\"enums\":{},\"types\":{}}")
35
+ config.runtimeDataModel = JSON.parse("{\"models\":{\"Session\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sessionId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"project\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"projectPath\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"startTime\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"endTime\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"durationMinutes\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"userMessages\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"assistantMessages\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"totalMessages\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"inputTokens\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"outputTokens\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"cacheCreationTokens\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"cacheReadTokens\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"totalTokens\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"costUSD\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"model\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"toolCallsTotal\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"toolCallsJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"skillCallsJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"messageTimestamps\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"apiErrors\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"rateLimitErrors\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"userInterruptions\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"permissionModesJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"systemPromptEdits\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Image\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sessionId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"messageId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"filename\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"mediaType\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sizeBytes\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"timestamp\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"role\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"SyncLog\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"syncedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"filesProcessed\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"sessionsAdded\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"sessionsSkipped\",\"kind\":\"scalar\",\"type\":\"Int\"}],\"dbName\":null},\"Report\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"title\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"generatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"contentJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sessionCount\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null}},\"enums\":{},\"types\":{}}")
36
36
  config.parameterizationSchema = {
37
- strings: JSON.parse("[\"where\",\"Session.findUnique\",\"Session.findUniqueOrThrow\",\"orderBy\",\"cursor\",\"Session.findFirst\",\"Session.findFirstOrThrow\",\"Session.findMany\",\"data\",\"Session.createOne\",\"Session.createMany\",\"Session.createManyAndReturn\",\"Session.updateOne\",\"Session.updateMany\",\"Session.updateManyAndReturn\",\"create\",\"update\",\"Session.upsertOne\",\"Session.deleteOne\",\"Session.deleteMany\",\"having\",\"_count\",\"_avg\",\"_sum\",\"_min\",\"_max\",\"Session.groupBy\",\"Session.aggregate\",\"Image.findUnique\",\"Image.findUniqueOrThrow\",\"Image.findFirst\",\"Image.findFirstOrThrow\",\"Image.findMany\",\"Image.createOne\",\"Image.createMany\",\"Image.createManyAndReturn\",\"Image.updateOne\",\"Image.updateMany\",\"Image.updateManyAndReturn\",\"Image.upsertOne\",\"Image.deleteOne\",\"Image.deleteMany\",\"Image.groupBy\",\"Image.aggregate\",\"SyncLog.findUnique\",\"SyncLog.findUniqueOrThrow\",\"SyncLog.findFirst\",\"SyncLog.findFirstOrThrow\",\"SyncLog.findMany\",\"SyncLog.createOne\",\"SyncLog.createMany\",\"SyncLog.createManyAndReturn\",\"SyncLog.updateOne\",\"SyncLog.updateMany\",\"SyncLog.updateManyAndReturn\",\"SyncLog.upsertOne\",\"SyncLog.deleteOne\",\"SyncLog.deleteMany\",\"SyncLog.groupBy\",\"SyncLog.aggregate\",\"AND\",\"OR\",\"NOT\",\"id\",\"syncedAt\",\"filesProcessed\",\"sessionsAdded\",\"sessionsSkipped\",\"equals\",\"in\",\"notIn\",\"lt\",\"lte\",\"gt\",\"gte\",\"not\",\"contains\",\"startsWith\",\"endsWith\",\"sessionId\",\"messageId\",\"filename\",\"mediaType\",\"sizeBytes\",\"timestamp\",\"role\",\"createdAt\",\"sessionId_messageId_filename\",\"project\",\"projectPath\",\"startTime\",\"endTime\",\"durationMinutes\",\"userMessages\",\"assistantMessages\",\"totalMessages\",\"inputTokens\",\"outputTokens\",\"cacheCreationTokens\",\"cacheReadTokens\",\"totalTokens\",\"costUSD\",\"model\",\"toolCallsTotal\",\"toolCallsJson\",\"set\",\"increment\",\"decrement\",\"multiply\",\"divide\"]"),
38
- graph: "dR8wFzwAAGEAMD0AAAQAED4AAGEAMD8BAAAAAU8BAAAAAVZAAFkAIVgBAFgAIVkBAFgAIVpAAFkAIVtAAFkAIVwIAGIAIV0CAFoAIV4CAFoAIV8CAFoAIWACAFoAIWECAFoAIWICAFoAIWMCAFoAIWQCAFoAIWUIAGIAIWYBAFgAIWcCAFoAIWgBAFgAIQEAAAABACABAAAAAQAgFzwAAGEAMD0AAAQAED4AAGEAMD8BAFgAIU8BAFgAIVZAAFkAIVgBAFgAIVkBAFgAIVpAAFkAIVtAAFkAIVwIAGIAIV0CAFoAIV4CAFoAIV8CAFoAIWACAFoAIWECAFoAIWICAFoAIWMCAFoAIWQCAFoAIWUIAGIAIWYBAFgAIWcCAFoAIWgBAFgAIQADAAAABAAgAwAABQAwBAAAAQAgAwAAAAQAIAMAAAUAMAQAAAEAIAMAAAAEACADAAAFADAEAAABACAUPwEAAAABTwEAAAABVkAAAAABWAEAAAABWQEAAAABWkAAAAABW0AAAAABXAgAAAABXQIAAAABXgIAAAABXwIAAAABYAIAAAABYQIAAAABYgIAAAABYwIAAAABZAIAAAABZQgAAAABZgEAAAABZwIAAAABaAEAAAABAQgAAAkAIBQ_AQAAAAFPAQAAAAFWQAAAAAFYAQAAAAFZAQAAAAFaQAAAAAFbQAAAAAFcCAAAAAFdAgAAAAFeAgAAAAFfAgAAAAFgAgAAAAFhAgAAAAFiAgAAAAFjAgAAAAFkAgAAAAFlCAAAAAFmAQAAAAFnAgAAAAFoAQAAAAEBCAAACwAwAQgAAAsAMBQ_AQBoACFPAQBoACFWQABpACFYAQBoACFZAQBoACFaQABpACFbQABpACFcCAB1ACFdAgBqACFeAgBqACFfAgBqACFgAgBqACFhAgBqACFiAgBqACFjAgBqACFkAgBqACFlCAB1ACFmAQBoACFnAgBqACFoAQBoACECAAAAAQAgCAAADgAgFD8BAGgAIU8BAGgAIVZAAGkAIVgBAGgAIVkBAGgAIVpAAGkAIVtAAGkAIVwIAHUAIV0CAGoAIV4CAGoAIV8CAGoAIWACAGoAIWECAGoAIWICAGoAIWMCAGoAIWQCAGoAIWUIAHUAIWYBAGgAIWcCAGoAIWgBAGgAIQIAAAAEACAIAAAQACACAAAABAAgCAAAEAAgAwAAAAEAIA8AAAkAIBAAAA4AIAEAAAABACABAAAABAAgBRUAAHAAIBYAAHEAIBcAAHQAIBgAAHMAIBkAAHIAIBc8AABeADA9AAAXABA-AABeADA_AQBNACFPAQBNACFWQABOACFYAQBNACFZAQBNACFaQABOACFbQABOACFcCABfACFdAgBPACFeAgBPACFfAgBPACFgAgBPACFhAgBPACFiAgBPACFjAgBPACFkAgBPACFlCABfACFmAQBNACFnAgBPACFoAQBNACEDAAAABAAgAwAAFgAwFAAAFwAgAwAAAAQAIAMAAAUAMAQAAAEAIA08AABcADA9AAAdABA-AABcADA_AQAAAAFPAQBYACFQAQBYACFRAQBYACFSAQBYACFTAgBaACFUQABZACFVAQBYACFWQABZACFXAABdACABAAAAGgAgAQAAABoAIAw8AABcADA9AAAdABA-AABcADA_AQBYACFPAQBYACFQAQBYACFRAQBYACFSAQBYACFTAgBaACFUQABZACFVAQBYACFWQABZACEAAwAAAB0AIAMAAB4AMAQAABoAIAMAAAAdACADAAAeADAEAAAaACADAAAAHQAgAwAAHgAwBAAAGgAgCT8BAAAAAU8BAAAAAVABAAAAAVEBAAAAAVIBAAAAAVMCAAAAAVRAAAAAAVUBAAAAAVZAAAAAAQEIAAAiACAJPwEAAAABTwEAAAABUAEAAAABUQEAAAABUgEAAAABUwIAAAABVEAAAAABVQEAAAABVkAAAAABAQgAACQAMAEIAAAkADAJPwEAaAAhTwEAaAAhUAEAaAAhUQEAaAAhUgEAaAAhUwIAagAhVEAAaQAhVQEAaAAhVkAAaQAhAgAAABoAIAgAACcAIAk_AQBoACFPAQBoACFQAQBoACFRAQBoACFSAQBoACFTAgBqACFUQABpACFVAQBoACFWQABpACECAAAAHQAgCAAAKQAgAgAAAB0AIAgAACkAIAMAAAAaACAPAAAiACAQAAAnACABAAAAGgAgAQAAAB0AIAUVAABrACAWAABsACAXAABvACAYAABuACAZAABtACAMPAAAWwAwPQAAMAAQPgAAWwAwPwEATQAhTwEATQAhUAEATQAhUQEATQAhUgEATQAhUwIATwAhVEAATgAhVQEATQAhVkAATgAhAwAAAB0AIAMAAC8AMBQAADAAIAMAAAAdACADAAAeADAEAAAaACAIPAAAVwAwPQAANgAQPgAAVwAwPwEAAAABQEAAWQAhQQIAWgAhQgIAWgAhQwIAWgAhAQAAADMAIAEAAAAzACAIPAAAVwAwPQAANgAQPgAAVwAwPwEAWAAhQEAAWQAhQQIAWgAhQgIAWgAhQwIAWgAhAAMAAAA2ACADAAA3ADAEAAAzACADAAAANgAgAwAANwAwBAAAMwAgAwAAADYAIAMAADcAMAQAADMAIAU_AQAAAAFAQAAAAAFBAgAAAAFCAgAAAAFDAgAAAAEBCAAAOwAgBT8BAAAAAUBAAAAAAUECAAAAAUICAAAAAUMCAAAAAQEIAAA9ADABCAAAPQAwBT8BAGgAIUBAAGkAIUECAGoAIUICAGoAIUMCAGoAIQIAAAAzACAIAABAACAFPwEAaAAhQEAAaQAhQQIAagAhQgIAagAhQwIAagAhAgAAADYAIAgAAEIAIAIAAAA2ACAIAABCACADAAAAMwAgDwAAOwAgEAAAQAAgAQAAADMAIAEAAAA2ACAFFQAAYwAgFgAAZAAgFwAAZwAgGAAAZgAgGQAAZQAgCDwAAEwAMD0AAEkAED4AAEwAMD8BAE0AIUBAAE4AIUECAE8AIUICAE8AIUMCAE8AIQMAAAA2ACADAABIADAUAABJACADAAAANgAgAwAANwAwBAAAMwAgCDwAAEwAMD0AAEkAED4AAEwAMD8BAE0AIUBAAE4AIUECAE8AIUICAE8AIUMCAE8AIQ4VAABRACAYAABWACAZAABWACBEAQAAAAFFAQAAAARGAQAAAARHAQAAAAFIAQAAAAFJAQAAAAFKAQAAAAFLAQBVACFMAQAAAAFNAQAAAAFOAQAAAAELFQAAUQAgGAAAVAAgGQAAVAAgREAAAAABRUAAAAAERkAAAAAER0AAAAABSEAAAAABSUAAAAABSkAAAAABS0AAUwAhDRUAAFEAIBYAAFIAIBcAAFEAIBgAAFEAIBkAAFEAIEQCAAAAAUUCAAAABEYCAAAABEcCAAAAAUgCAAAAAUkCAAAAAUoCAAAAAUsCAFAAIQ0VAABRACAWAABSACAXAABRACAYAABRACAZAABRACBEAgAAAAFFAgAAAARGAgAAAARHAgAAAAFIAgAAAAFJAgAAAAFKAgAAAAFLAgBQACEIRAIAAAABRQIAAAAERgIAAAAERwIAAAABSAIAAAABSQIAAAABSgIAAAABSwIAUQAhCEQIAAAAAUUIAAAABEYIAAAABEcIAAAAAUgIAAAAAUkIAAAAAUoIAAAAAUsIAFIAIQsVAABRACAYAABUACAZAABUACBEQAAAAAFFQAAAAARGQAAAAARHQAAAAAFIQAAAAAFJQAAAAAFKQAAAAAFLQABTACEIREAAAAABRUAAAAAERkAAAAAER0AAAAABSEAAAAABSUAAAAABSkAAAAABS0AAVAAhDhUAAFEAIBgAAFYAIBkAAFYAIEQBAAAAAUUBAAAABEYBAAAABEcBAAAAAUgBAAAAAUkBAAAAAUoBAAAAAUsBAFUAIUwBAAAAAU0BAAAAAU4BAAAAAQtEAQAAAAFFAQAAAARGAQAAAARHAQAAAAFIAQAAAAFJAQAAAAFKAQAAAAFLAQBWACFMAQAAAAFNAQAAAAFOAQAAAAEIPAAAVwAwPQAANgAQPgAAVwAwPwEAWAAhQEAAWQAhQQIAWgAhQgIAWgAhQwIAWgAhC0QBAAAAAUUBAAAABEYBAAAABEcBAAAAAUgBAAAAAUkBAAAAAUoBAAAAAUsBAFYAIUwBAAAAAU0BAAAAAU4BAAAAAQhEQAAAAAFFQAAAAARGQAAAAARHQAAAAAFIQAAAAAFJQAAAAAFKQAAAAAFLQABUACEIRAIAAAABRQIAAAAERgIAAAAERwIAAAABSAIAAAABSQIAAAABSgIAAAABSwIAUQAhDDwAAFsAMD0AADAAED4AAFsAMD8BAE0AIU8BAE0AIVABAE0AIVEBAE0AIVIBAE0AIVMCAE8AIVRAAE4AIVUBAE0AIVZAAE4AIQw8AABcADA9AAAdABA-AABcADA_AQBYACFPAQBYACFQAQBYACFRAQBYACFSAQBYACFTAgBaACFUQABZACFVAQBYACFWQABZACEDTwEAAAABUAEAAAABUQEAAAABFzwAAF4AMD0AABcAED4AAF4AMD8BAE0AIU8BAE0AIVZAAE4AIVgBAE0AIVkBAE0AIVpAAE4AIVtAAE4AIVwIAF8AIV0CAE8AIV4CAE8AIV8CAE8AIWACAE8AIWECAE8AIWICAE8AIWMCAE8AIWQCAE8AIWUIAF8AIWYBAE0AIWcCAE8AIWgBAE0AIQ0VAABRACAWAABSACAXAABSACAYAABSACAZAABSACBECAAAAAFFCAAAAARGCAAAAARHCAAAAAFICAAAAAFJCAAAAAFKCAAAAAFLCABgACENFQAAUQAgFgAAUgAgFwAAUgAgGAAAUgAgGQAAUgAgRAgAAAABRQgAAAAERggAAAAERwgAAAABSAgAAAABSQgAAAABSggAAAABSwgAYAAhFzwAAGEAMD0AAAQAED4AAGEAMD8BAFgAIU8BAFgAIVZAAFkAIVgBAFgAIVkBAFgAIVpAAFkAIVtAAFkAIVwIAGIAIV0CAFoAIV4CAFoAIV8CAFoAIWACAFoAIWECAFoAIWICAFoAIWMCAFoAIWQCAFoAIWUIAGIAIWYBAFgAIWcCAFoAIWgBAFgAIQhECAAAAAFFCAAAAARGCAAAAARHCAAAAAFICAAAAAFJCAAAAAFKCAAAAAFLCABSACEAAAAAAAFpAQAAAAEBaUAAAAABBWkCAAAAAWoCAAAAAWsCAAAAAWwCAAAAAW0CAAAAAQAAAAAAAAAAAAAFaQgAAAABaggAAAABawgAAAABbAgAAAABbQgAAAABAAAAAAUVAAYWAAcXAAgYAAkZAAoAAAAAAAUVAAYWAAcXAAgYAAkZAAoAAAAFFQAQFgARFwASGAATGQAUAAAAAAAFFQAQFgARFwASGAATGQAUAAAABRUAGhYAGxcAHBgAHRkAHgAAAAAABRUAGhYAGxcAHBgAHRkAHgECAQIDAQUGAQYHAQcIAQkKAQoMAgsNAwwPAQ0RAg4SBBETARIUARMVAhoYBRsZCxwbDB0cDB4fDB8gDCAhDCEjDCIlAiMmDSQoDCUqAiYrDicsDCgtDCkuAioxDysyFSw0Fi01Fi44Fi85FjA6FjE8FjI-AjM_FzRBFjVDAjZEGDdFFjhGFjlHAjpKGTtLHw"
37
+ strings: JSON.parse("[\"where\",\"Session.findUnique\",\"Session.findUniqueOrThrow\",\"orderBy\",\"cursor\",\"Session.findFirst\",\"Session.findFirstOrThrow\",\"Session.findMany\",\"data\",\"Session.createOne\",\"Session.createMany\",\"Session.createManyAndReturn\",\"Session.updateOne\",\"Session.updateMany\",\"Session.updateManyAndReturn\",\"create\",\"update\",\"Session.upsertOne\",\"Session.deleteOne\",\"Session.deleteMany\",\"having\",\"_count\",\"_avg\",\"_sum\",\"_min\",\"_max\",\"Session.groupBy\",\"Session.aggregate\",\"Image.findUnique\",\"Image.findUniqueOrThrow\",\"Image.findFirst\",\"Image.findFirstOrThrow\",\"Image.findMany\",\"Image.createOne\",\"Image.createMany\",\"Image.createManyAndReturn\",\"Image.updateOne\",\"Image.updateMany\",\"Image.updateManyAndReturn\",\"Image.upsertOne\",\"Image.deleteOne\",\"Image.deleteMany\",\"Image.groupBy\",\"Image.aggregate\",\"SyncLog.findUnique\",\"SyncLog.findUniqueOrThrow\",\"SyncLog.findFirst\",\"SyncLog.findFirstOrThrow\",\"SyncLog.findMany\",\"SyncLog.createOne\",\"SyncLog.createMany\",\"SyncLog.createManyAndReturn\",\"SyncLog.updateOne\",\"SyncLog.updateMany\",\"SyncLog.updateManyAndReturn\",\"SyncLog.upsertOne\",\"SyncLog.deleteOne\",\"SyncLog.deleteMany\",\"SyncLog.groupBy\",\"SyncLog.aggregate\",\"Report.findUnique\",\"Report.findUniqueOrThrow\",\"Report.findFirst\",\"Report.findFirstOrThrow\",\"Report.findMany\",\"Report.createOne\",\"Report.createMany\",\"Report.createManyAndReturn\",\"Report.updateOne\",\"Report.updateMany\",\"Report.updateManyAndReturn\",\"Report.upsertOne\",\"Report.deleteOne\",\"Report.deleteMany\",\"Report.groupBy\",\"Report.aggregate\",\"AND\",\"OR\",\"NOT\",\"id\",\"title\",\"generatedAt\",\"contentJson\",\"sessionCount\",\"createdAt\",\"equals\",\"in\",\"notIn\",\"lt\",\"lte\",\"gt\",\"gte\",\"not\",\"contains\",\"startsWith\",\"endsWith\",\"syncedAt\",\"filesProcessed\",\"sessionsAdded\",\"sessionsSkipped\",\"sessionId\",\"messageId\",\"filename\",\"mediaType\",\"sizeBytes\",\"timestamp\",\"role\",\"sessionId_messageId_filename\",\"project\",\"projectPath\",\"startTime\",\"endTime\",\"durationMinutes\",\"userMessages\",\"assistantMessages\",\"totalMessages\",\"inputTokens\",\"outputTokens\",\"cacheCreationTokens\",\"cacheReadTokens\",\"totalTokens\",\"costUSD\",\"model\",\"toolCallsTotal\",\"toolCallsJson\",\"skillCallsJson\",\"messageTimestamps\",\"apiErrors\",\"rateLimitErrors\",\"userInterruptions\",\"permissionModesJson\",\"systemPromptEdits\",\"set\",\"increment\",\"decrement\",\"multiply\",\"divide\"]"),
38
+ graph: "lQEpQB5MAAB8ADBNAAAEABBOAAB8ADBPAQAAAAFUQAByACFkAQAAAAFsAQBxACFtAQBxACFuQAByACFvQAByACFwCAB9ACFxAgBzACFyAgBzACFzAgBzACF0AgBzACF1AgBzACF2AgBzACF3AgBzACF4AgBzACF5CAB9ACF6AQBxACF7AgBzACF8AQBxACF9AQBxACF-AQBxACF_AgBzACGAAQIAcwAhgQECAHMAIYIBAQBxACGDAQIAcwAhAQAAAAEAIAEAAAABACAeTAAAfAAwTQAABAAQTgAAfAAwTwEAcQAhVEAAcgAhZAEAcQAhbAEAcQAhbQEAcQAhbkAAcgAhb0AAcgAhcAgAfQAhcQIAcwAhcgIAcwAhcwIAcwAhdAIAcwAhdQIAcwAhdgIAcwAhdwIAcwAheAIAcwAheQgAfQAhegEAcQAhewIAcwAhfAEAcQAhfQEAcQAhfgEAcQAhfwIAcwAhgAECAHMAIYEBAgBzACGCAQEAcQAhgwECAHMAIQADAAAABAAgAwAABQAwBAAAAQAgAwAAAAQAIAMAAAUAMAQAAAEAIAMAAAAEACADAAAFADAEAAABACAbTwEAAAABVEAAAAABZAEAAAABbAEAAAABbQEAAAABbkAAAAABb0AAAAABcAgAAAABcQIAAAABcgIAAAABcwIAAAABdAIAAAABdQIAAAABdgIAAAABdwIAAAABeAIAAAABeQgAAAABegEAAAABewIAAAABfAEAAAABfQEAAAABfgEAAAABfwIAAAABgAECAAAAAYEBAgAAAAGCAQEAAAABgwECAAAAAQEIAAAJACAbTwEAAAABVEAAAAABZAEAAAABbAEAAAABbQEAAAABbkAAAAABb0AAAAABcAgAAAABcQIAAAABcgIAAAABcwIAAAABdAIAAAABdQIAAAABdgIAAAABdwIAAAABeAIAAAABeQgAAAABegEAAAABewIAAAABfAEAAAABfQEAAAABfgEAAAABfwIAAAABgAECAAAAAYEBAgAAAAGCAQEAAAABgwECAAAAAQEIAAALADABCAAACwAwG08BAIMBACFUQACEAQAhZAEAgwEAIWwBAIMBACFtAQCDAQAhbkAAhAEAIW9AAIQBACFwCACVAQAhcQIAhQEAIXICAIUBACFzAgCFAQAhdAIAhQEAIXUCAIUBACF2AgCFAQAhdwIAhQEAIXgCAIUBACF5CACVAQAhegEAgwEAIXsCAIUBACF8AQCDAQAhfQEAgwEAIX4BAIMBACF_AgCFAQAhgAECAIUBACGBAQIAhQEAIYIBAQCDAQAhgwECAIUBACECAAAAAQAgCAAADgAgG08BAIMBACFUQACEAQAhZAEAgwEAIWwBAIMBACFtAQCDAQAhbkAAhAEAIW9AAIQBACFwCACVAQAhcQIAhQEAIXICAIUBACFzAgCFAQAhdAIAhQEAIXUCAIUBACF2AgCFAQAhdwIAhQEAIXgCAIUBACF5CACVAQAhegEAgwEAIXsCAIUBACF8AQCDAQAhfQEAgwEAIX4BAIMBACF_AgCFAQAhgAECAIUBACGBAQIAhQEAIYIBAQCDAQAhgwECAIUBACECAAAABAAgCAAAEAAgAgAAAAQAIAgAABAAIAMAAAABACAPAAAJACAQAAAOACABAAAAAQAgAQAAAAQAIAUVAACQAQAgFgAAkQEAIBcAAJQBACAYAACTAQAgGQAAkgEAIB5MAAB5ADBNAAAXABBOAAB5ADBPAQBmACFUQABnACFkAQBmACFsAQBmACFtAQBmACFuQABnACFvQABnACFwCAB6ACFxAgBoACFyAgBoACFzAgBoACF0AgBoACF1AgBoACF2AgBoACF3AgBoACF4AgBoACF5CAB6ACF6AQBmACF7AgBoACF8AQBmACF9AQBmACF-AQBmACF_AgBoACGAAQIAaAAhgQECAGgAIYIBAQBmACGDAQIAaAAhAwAAAAQAIAMAABYAMBQAABcAIAMAAAAEACADAAAFADAEAAABACANTAAAdwAwTQAAHQAQTgAAdwAwTwEAAAABVEAAcgAhZAEAcQAhZQEAcQAhZgEAcQAhZwEAcQAhaAIAcwAhaUAAcgAhagEAcQAhawAAeAAgAQAAABoAIAEAAAAaACAMTAAAdwAwTQAAHQAQTgAAdwAwTwEAcQAhVEAAcgAhZAEAcQAhZQEAcQAhZgEAcQAhZwEAcQAhaAIAcwAhaUAAcgAhagEAcQAhAAMAAAAdACADAAAeADAEAAAaACADAAAAHQAgAwAAHgAwBAAAGgAgAwAAAB0AIAMAAB4AMAQAABoAIAlPAQAAAAFUQAAAAAFkAQAAAAFlAQAAAAFmAQAAAAFnAQAAAAFoAgAAAAFpQAAAAAFqAQAAAAEBCAAAIgAgCU8BAAAAAVRAAAAAAWQBAAAAAWUBAAAAAWYBAAAAAWcBAAAAAWgCAAAAAWlAAAAAAWoBAAAAAQEIAAAkADABCAAAJAAwCU8BAIMBACFUQACEAQAhZAEAgwEAIWUBAIMBACFmAQCDAQAhZwEAgwEAIWgCAIUBACFpQACEAQAhagEAgwEAIQIAAAAaACAIAAAnACAJTwEAgwEAIVRAAIQBACFkAQCDAQAhZQEAgwEAIWYBAIMBACFnAQCDAQAhaAIAhQEAIWlAAIQBACFqAQCDAQAhAgAAAB0AIAgAACkAIAIAAAAdACAIAAApACADAAAAGgAgDwAAIgAgEAAAJwAgAQAAABoAIAEAAAAdACAFFQAAiwEAIBYAAIwBACAXAACPAQAgGAAAjgEAIBkAAI0BACAMTAAAdgAwTQAAMAAQTgAAdgAwTwEAZgAhVEAAZwAhZAEAZgAhZQEAZgAhZgEAZgAhZwEAZgAhaAIAaAAhaUAAZwAhagEAZgAhAwAAAB0AIAMAAC8AMBQAADAAIAMAAAAdACADAAAeADAEAAAaACAITAAAdQAwTQAANgAQTgAAdQAwTwEAAAABYEAAcgAhYQIAcwAhYgIAcwAhYwIAcwAhAQAAADMAIAEAAAAzACAITAAAdQAwTQAANgAQTgAAdQAwTwEAcQAhYEAAcgAhYQIAcwAhYgIAcwAhYwIAcwAhAAMAAAA2ACADAAA3ADAEAAAzACADAAAANgAgAwAANwAwBAAAMwAgAwAAADYAIAMAADcAMAQAADMAIAVPAQAAAAFgQAAAAAFhAgAAAAFiAgAAAAFjAgAAAAEBCAAAOwAgBU8BAAAAAWBAAAAAAWECAAAAAWICAAAAAWMCAAAAAQEIAAA9ADABCAAAPQAwBU8BAIMBACFgQACEAQAhYQIAhQEAIWICAIUBACFjAgCFAQAhAgAAADMAIAgAAEAAIAVPAQCDAQAhYEAAhAEAIWECAIUBACFiAgCFAQAhYwIAhQEAIQIAAAA2ACAIAABCACACAAAANgAgCAAAQgAgAwAAADMAIA8AADsAIBAAAEAAIAEAAAAzACABAAAANgAgBRUAAIYBACAWAACHAQAgFwAAigEAIBgAAIkBACAZAACIAQAgCEwAAHQAME0AAEkAEE4AAHQAME8BAGYAIWBAAGcAIWECAGgAIWICAGgAIWMCAGgAIQMAAAA2ACADAABIADAUAABJACADAAAANgAgAwAANwAwBAAAMwAgCUwAAHAAME0AAE8AEE4AAHAAME8BAAAAAVABAHEAIVFAAHIAIVIBAHEAIVMCAHMAIVRAAHIAIQEAAABMACABAAAATAAgCUwAAHAAME0AAE8AEE4AAHAAME8BAHEAIVABAHEAIVFAAHIAIVIBAHEAIVMCAHMAIVRAAHIAIQADAAAATwAgAwAAUAAwBAAATAAgAwAAAE8AIAMAAFAAMAQAAEwAIAMAAABPACADAABQADAEAABMACAGTwEAAAABUAEAAAABUUAAAAABUgEAAAABUwIAAAABVEAAAAABAQgAAFQAIAZPAQAAAAFQAQAAAAFRQAAAAAFSAQAAAAFTAgAAAAFUQAAAAAEBCAAAVgAwAQgAAFYAMAZPAQCDAQAhUAEAgwEAIVFAAIQBACFSAQCDAQAhUwIAhQEAIVRAAIQBACECAAAATAAgCAAAWQAgBk8BAIMBACFQAQCDAQAhUUAAhAEAIVIBAIMBACFTAgCFAQAhVEAAhAEAIQIAAABPACAIAABbACACAAAATwAgCAAAWwAgAwAAAEwAIA8AAFQAIBAAAFkAIAEAAABMACABAAAATwAgBRUAAH4AIBYAAH8AIBcAAIIBACAYAACBAQAgGQAAgAEAIAlMAABlADBNAABiABBOAABlADBPAQBmACFQAQBmACFRQABnACFSAQBmACFTAgBoACFUQABnACEDAAAATwAgAwAAYQAwFAAAYgAgAwAAAE8AIAMAAFAAMAQAAEwAIAlMAABlADBNAABiABBOAABlADBPAQBmACFQAQBmACFRQABnACFSAQBmACFTAgBoACFUQABnACEOFQAAagAgGAAAbwAgGQAAbwAgVQEAAAABVgEAAAAEVwEAAAAEWAEAAAABWQEAAAABWgEAAAABWwEAAAABXAEAbgAhXQEAAAABXgEAAAABXwEAAAABCxUAAGoAIBgAAG0AIBkAAG0AIFVAAAAAAVZAAAAABFdAAAAABFhAAAAAAVlAAAAAAVpAAAAAAVtAAAAAAVxAAGwAIQ0VAABqACAWAABrACAXAABqACAYAABqACAZAABqACBVAgAAAAFWAgAAAARXAgAAAARYAgAAAAFZAgAAAAFaAgAAAAFbAgAAAAFcAgBpACENFQAAagAgFgAAawAgFwAAagAgGAAAagAgGQAAagAgVQIAAAABVgIAAAAEVwIAAAAEWAIAAAABWQIAAAABWgIAAAABWwIAAAABXAIAaQAhCFUCAAAAAVYCAAAABFcCAAAABFgCAAAAAVkCAAAAAVoCAAAAAVsCAAAAAVwCAGoAIQhVCAAAAAFWCAAAAARXCAAAAARYCAAAAAFZCAAAAAFaCAAAAAFbCAAAAAFcCABrACELFQAAagAgGAAAbQAgGQAAbQAgVUAAAAABVkAAAAAEV0AAAAAEWEAAAAABWUAAAAABWkAAAAABW0AAAAABXEAAbAAhCFVAAAAAAVZAAAAABFdAAAAABFhAAAAAAVlAAAAAAVpAAAAAAVtAAAAAAVxAAG0AIQ4VAABqACAYAABvACAZAABvACBVAQAAAAFWAQAAAARXAQAAAARYAQAAAAFZAQAAAAFaAQAAAAFbAQAAAAFcAQBuACFdAQAAAAFeAQAAAAFfAQAAAAELVQEAAAABVgEAAAAEVwEAAAAEWAEAAAABWQEAAAABWgEAAAABWwEAAAABXAEAbwAhXQEAAAABXgEAAAABXwEAAAABCUwAAHAAME0AAE8AEE4AAHAAME8BAHEAIVABAHEAIVFAAHIAIVIBAHEAIVMCAHMAIVRAAHIAIQtVAQAAAAFWAQAAAARXAQAAAARYAQAAAAFZAQAAAAFaAQAAAAFbAQAAAAFcAQBvACFdAQAAAAFeAQAAAAFfAQAAAAEIVUAAAAABVkAAAAAEV0AAAAAEWEAAAAABWUAAAAABWkAAAAABW0AAAAABXEAAbQAhCFUCAAAAAVYCAAAABFcCAAAABFgCAAAAAVkCAAAAAVoCAAAAAVsCAAAAAVwCAGoAIQhMAAB0ADBNAABJABBOAAB0ADBPAQBmACFgQABnACFhAgBoACFiAgBoACFjAgBoACEITAAAdQAwTQAANgAQTgAAdQAwTwEAcQAhYEAAcgAhYQIAcwAhYgIAcwAhYwIAcwAhDEwAAHYAME0AADAAEE4AAHYAME8BAGYAIVRAAGcAIWQBAGYAIWUBAGYAIWYBAGYAIWcBAGYAIWgCAGgAIWlAAGcAIWoBAGYAIQxMAAB3ADBNAAAdABBOAAB3ADBPAQBxACFUQAByACFkAQBxACFlAQBxACFmAQBxACFnAQBxACFoAgBzACFpQAByACFqAQBxACEDZAEAAAABZQEAAAABZgEAAAABHkwAAHkAME0AABcAEE4AAHkAME8BAGYAIVRAAGcAIWQBAGYAIWwBAGYAIW0BAGYAIW5AAGcAIW9AAGcAIXAIAHoAIXECAGgAIXICAGgAIXMCAGgAIXQCAGgAIXUCAGgAIXYCAGgAIXcCAGgAIXgCAGgAIXkIAHoAIXoBAGYAIXsCAGgAIXwBAGYAIX0BAGYAIX4BAGYAIX8CAGgAIYABAgBoACGBAQIAaAAhggEBAGYAIYMBAgBoACENFQAAagAgFgAAawAgFwAAawAgGAAAawAgGQAAawAgVQgAAAABVggAAAAEVwgAAAAEWAgAAAABWQgAAAABWggAAAABWwgAAAABXAgAewAhDRUAAGoAIBYAAGsAIBcAAGsAIBgAAGsAIBkAAGsAIFUIAAAAAVYIAAAABFcIAAAABFgIAAAAAVkIAAAAAVoIAAAAAVsIAAAAAVwIAHsAIR5MAAB8ADBNAAAEABBOAAB8ADBPAQBxACFUQAByACFkAQBxACFsAQBxACFtAQBxACFuQAByACFvQAByACFwCAB9ACFxAgBzACFyAgBzACFzAgBzACF0AgBzACF1AgBzACF2AgBzACF3AgBzACF4AgBzACF5CAB9ACF6AQBxACF7AgBzACF8AQBxACF9AQBxACF-AQBxACF_AgBzACGAAQIAcwAhgQECAHMAIYIBAQBxACGDAQIAcwAhCFUIAAAAAVYIAAAABFcIAAAABFgIAAAAAVkIAAAAAVoIAAAAAVsIAAAAAVwIAGsAIQAAAAAAAYQBAQAAAAEBhAFAAAAAAQWEAQIAAAABhQECAAAAAYYBAgAAAAGHAQIAAAABiAECAAAAAQAAAAAAAAAAAAAAAAAAAAWEAQgAAAABhQEIAAAAAYYBCAAAAAGHAQgAAAABiAEIAAAAAQAAAAAFFQAGFgAHFwAIGAAJGQAKAAAAAAAFFQAGFgAHFwAIGAAJGQAKAAAABRUAEBYAERcAEhgAExkAFAAAAAAABRUAEBYAERcAEhgAExkAFAAAAAUVABoWABsXABwYAB0ZAB4AAAAAAAUVABoWABsXABwYAB0ZAB4AAAAFFQAkFgAlFwAmGAAnGQAoAAAAAAAFFQAkFgAlFwAmGAAnGQAoAQIBAgMBBQYBBgcBBwgBCQoBCgwCCw0DDA8BDRECDhIEERMBEhQBExUCGhgFGxkLHBsMHRwMHh8MHyAMICEMISMMIiUCIyYNJCgMJSoCJisOJywMKC0MKS4CKjEPKzIVLDQWLTUWLjgWLzkWMDoWMTwWMj4CMz8XNEEWNUMCNkQYN0UWOEYWOUcCOkoZO0sfPE0gPU4gPlEgP1IgQFMgQVUgQlcCQ1ghRFogRVwCRl0iR14gSF8gSWACSmMjS2Qp"
39
39
  }
40
40
 
41
41
  async function decodeBase64AsWasm(wasmBase64: string): Promise<WebAssembly.Module> {
@@ -217,6 +217,16 @@ export interface PrismaClient<
217
217
  * ```
218
218
  */
219
219
  get syncLog(): Prisma.SyncLogDelegate<ExtArgs, { omit: OmitOpts }>;
220
+
221
+ /**
222
+ * `prisma.report`: Exposes CRUD operations for the **Report** model.
223
+ * Example usage:
224
+ * ```ts
225
+ * // Fetch zero or more Reports
226
+ * const reports = await prisma.report.findMany()
227
+ * ```
228
+ */
229
+ get report(): Prisma.ReportDelegate<ExtArgs, { omit: OmitOpts }>;
220
230
  }
221
231
 
222
232
  export function getPrismaClientClass(): PrismaClientConstructor {
@@ -386,7 +386,8 @@ type FieldRefInputType<Model, FieldType> = Model extends never ? never : FieldRe
386
386
  export const ModelName = {
387
387
  Session: 'Session',
388
388
  Image: 'Image',
389
- SyncLog: 'SyncLog'
389
+ SyncLog: 'SyncLog',
390
+ Report: 'Report'
390
391
  } as const
391
392
 
392
393
  export type ModelName = (typeof ModelName)[keyof typeof ModelName]
@@ -402,7 +403,7 @@ export type TypeMap<ExtArgs extends runtime.Types.Extensions.InternalArgs = runt
402
403
  omit: GlobalOmitOptions
403
404
  }
404
405
  meta: {
405
- modelProps: "session" | "image" | "syncLog"
406
+ modelProps: "session" | "image" | "syncLog" | "report"
406
407
  txIsolationLevel: TransactionIsolationLevel
407
408
  }
408
409
  model: {
@@ -628,6 +629,80 @@ export type TypeMap<ExtArgs extends runtime.Types.Extensions.InternalArgs = runt
628
629
  }
629
630
  }
630
631
  }
632
+ Report: {
633
+ payload: Prisma.$ReportPayload<ExtArgs>
634
+ fields: Prisma.ReportFieldRefs
635
+ operations: {
636
+ findUnique: {
637
+ args: Prisma.ReportFindUniqueArgs<ExtArgs>
638
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$ReportPayload> | null
639
+ }
640
+ findUniqueOrThrow: {
641
+ args: Prisma.ReportFindUniqueOrThrowArgs<ExtArgs>
642
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$ReportPayload>
643
+ }
644
+ findFirst: {
645
+ args: Prisma.ReportFindFirstArgs<ExtArgs>
646
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$ReportPayload> | null
647
+ }
648
+ findFirstOrThrow: {
649
+ args: Prisma.ReportFindFirstOrThrowArgs<ExtArgs>
650
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$ReportPayload>
651
+ }
652
+ findMany: {
653
+ args: Prisma.ReportFindManyArgs<ExtArgs>
654
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$ReportPayload>[]
655
+ }
656
+ create: {
657
+ args: Prisma.ReportCreateArgs<ExtArgs>
658
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$ReportPayload>
659
+ }
660
+ createMany: {
661
+ args: Prisma.ReportCreateManyArgs<ExtArgs>
662
+ result: BatchPayload
663
+ }
664
+ createManyAndReturn: {
665
+ args: Prisma.ReportCreateManyAndReturnArgs<ExtArgs>
666
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$ReportPayload>[]
667
+ }
668
+ delete: {
669
+ args: Prisma.ReportDeleteArgs<ExtArgs>
670
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$ReportPayload>
671
+ }
672
+ update: {
673
+ args: Prisma.ReportUpdateArgs<ExtArgs>
674
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$ReportPayload>
675
+ }
676
+ deleteMany: {
677
+ args: Prisma.ReportDeleteManyArgs<ExtArgs>
678
+ result: BatchPayload
679
+ }
680
+ updateMany: {
681
+ args: Prisma.ReportUpdateManyArgs<ExtArgs>
682
+ result: BatchPayload
683
+ }
684
+ updateManyAndReturn: {
685
+ args: Prisma.ReportUpdateManyAndReturnArgs<ExtArgs>
686
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$ReportPayload>[]
687
+ }
688
+ upsert: {
689
+ args: Prisma.ReportUpsertArgs<ExtArgs>
690
+ result: runtime.Types.Utils.PayloadToResult<Prisma.$ReportPayload>
691
+ }
692
+ aggregate: {
693
+ args: Prisma.ReportAggregateArgs<ExtArgs>
694
+ result: runtime.Types.Utils.Optional<Prisma.AggregateReport>
695
+ }
696
+ groupBy: {
697
+ args: Prisma.ReportGroupByArgs<ExtArgs>
698
+ result: runtime.Types.Utils.Optional<Prisma.ReportGroupByOutputType>[]
699
+ }
700
+ count: {
701
+ args: Prisma.ReportCountArgs<ExtArgs>
702
+ result: runtime.Types.Utils.Optional<Prisma.ReportCountAggregateOutputType> | number
703
+ }
704
+ }
705
+ }
631
706
  }
632
707
  } & {
633
708
  other: {
@@ -684,6 +759,13 @@ export const SessionScalarFieldEnum = {
684
759
  model: 'model',
685
760
  toolCallsTotal: 'toolCallsTotal',
686
761
  toolCallsJson: 'toolCallsJson',
762
+ skillCallsJson: 'skillCallsJson',
763
+ messageTimestamps: 'messageTimestamps',
764
+ apiErrors: 'apiErrors',
765
+ rateLimitErrors: 'rateLimitErrors',
766
+ userInterruptions: 'userInterruptions',
767
+ permissionModesJson: 'permissionModesJson',
768
+ systemPromptEdits: 'systemPromptEdits',
687
769
  createdAt: 'createdAt'
688
770
  } as const
689
771
 
@@ -716,6 +798,18 @@ export const SyncLogScalarFieldEnum = {
716
798
  export type SyncLogScalarFieldEnum = (typeof SyncLogScalarFieldEnum)[keyof typeof SyncLogScalarFieldEnum]
717
799
 
718
800
 
801
+ export const ReportScalarFieldEnum = {
802
+ id: 'id',
803
+ title: 'title',
804
+ generatedAt: 'generatedAt',
805
+ contentJson: 'contentJson',
806
+ sessionCount: 'sessionCount',
807
+ createdAt: 'createdAt'
808
+ } as const
809
+
810
+ export type ReportScalarFieldEnum = (typeof ReportScalarFieldEnum)[keyof typeof ReportScalarFieldEnum]
811
+
812
+
719
813
  export const SortOrder = {
720
814
  asc: 'asc',
721
815
  desc: 'desc'
@@ -855,6 +949,7 @@ export type GlobalOmitConfig = {
855
949
  session?: Prisma.SessionOmit
856
950
  image?: Prisma.ImageOmit
857
951
  syncLog?: Prisma.SyncLogOmit
952
+ report?: Prisma.ReportOmit
858
953
  }
859
954
 
860
955
  /* Types for Logging */
@@ -53,7 +53,8 @@ export const AnyNull = runtime.AnyNull
53
53
  export const ModelName = {
54
54
  Session: 'Session',
55
55
  Image: 'Image',
56
- SyncLog: 'SyncLog'
56
+ SyncLog: 'SyncLog',
57
+ Report: 'Report'
57
58
  } as const
58
59
 
59
60
  export type ModelName = (typeof ModelName)[keyof typeof ModelName]
@@ -89,6 +90,13 @@ export const SessionScalarFieldEnum = {
89
90
  model: 'model',
90
91
  toolCallsTotal: 'toolCallsTotal',
91
92
  toolCallsJson: 'toolCallsJson',
93
+ skillCallsJson: 'skillCallsJson',
94
+ messageTimestamps: 'messageTimestamps',
95
+ apiErrors: 'apiErrors',
96
+ rateLimitErrors: 'rateLimitErrors',
97
+ userInterruptions: 'userInterruptions',
98
+ permissionModesJson: 'permissionModesJson',
99
+ systemPromptEdits: 'systemPromptEdits',
92
100
  createdAt: 'createdAt'
93
101
  } as const
94
102
 
@@ -121,6 +129,18 @@ export const SyncLogScalarFieldEnum = {
121
129
  export type SyncLogScalarFieldEnum = (typeof SyncLogScalarFieldEnum)[keyof typeof SyncLogScalarFieldEnum]
122
130
 
123
131
 
132
+ export const ReportScalarFieldEnum = {
133
+ id: 'id',
134
+ title: 'title',
135
+ generatedAt: 'generatedAt',
136
+ contentJson: 'contentJson',
137
+ sessionCount: 'sessionCount',
138
+ createdAt: 'createdAt'
139
+ } as const
140
+
141
+ export type ReportScalarFieldEnum = (typeof ReportScalarFieldEnum)[keyof typeof ReportScalarFieldEnum]
142
+
143
+
124
144
  export const SortOrder = {
125
145
  asc: 'asc',
126
146
  desc: 'desc'