@wenathlan/cobaia 2.0.164 → 2.0.166

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.
package/package.json CHANGED
@@ -1,47 +1,8 @@
1
1
  {
2
2
  "name": "@wenathlan/cobaia",
3
- "version": "2.0.164",
3
+ "version": "2.0.166",
4
+ "private": false,
4
5
  "description": "cobaia is the monetization surface of the wenathlan family: the content site that carries the plans, the support rails and the honest advertisement slots while the family apps stay clean; the name is provisional until the owner picks the official one",
5
- "repository": {
6
- "type": "git",
7
- "url": "https://github.com/wenathlan/devthink"
8
- },
9
- "author": "Wenathlan",
10
- "type": "module",
11
- "sideEffects": false,
12
- "bin": {
13
- "cobaia": "./cli.ts"
14
- },
15
- "engines": {
16
- "babel": "^7.28.0",
17
- "bare": "^1.18.0",
18
- "bun": "^1.4.4",
19
- "cargo": ">=1.85.0",
20
- "chrome": "^16.0.912",
21
- "cnpm": "^9.4.0",
22
- "corepack": "^0.35.0",
23
- "deno": "^2.9.5",
24
- "dotnet": ">=8.0.0",
25
- "ecmascript": "^5.0.0",
26
- "firefox": ">=0.8.0",
27
- "go": ">=1.24.0",
28
- "iojs": "^1.0.0",
29
- "java": ">=17",
30
- "node": ">=26.13.0 <27",
31
- "npm": "^12.2.1",
32
- "pnpm": "^12.6.0",
33
- "python": ">=3.11.0",
34
- "rust": ">=1.85.0",
35
- "teleport": ">=0.2.0",
36
- "typescript": "^5.8.0",
37
- "v": "^0.5.2",
38
- "vscode": "^1.118.0",
39
- "yaml": "^2.9.1",
40
- "yarn": "^4.17.1"
41
- },
42
- "peerDependencies": {
43
- "playwright": "^1.63.0"
44
- },
45
6
  "scripts": {
46
7
  "dev": "vite --host",
47
8
  "build": "vite build",
@@ -52,45 +13,208 @@
52
13
  "test": "vitest run"
53
14
  },
54
15
  "dependencies": {
16
+ "@ai-sdk/openai": "^4.0.109",
17
+ "@ai-sdk/openai-compatible": "^3.0.85",
18
+ "@ai-sdk/provider-utils": "^5.0.75",
19
+ "@anthropic-ai/sdk": "^1.6.0",
20
+ "@biomejs/biome": "^2.6.5",
21
+ "@capacitor/android": "^8.6.0",
22
+ "@capacitor/cli": "^8.6.0",
23
+ "@capacitor/core": "^8.6.0",
24
+ "@capacitor/ios": "^8.6.0",
25
+ "@dnd-kit/core": "^6.3.1",
26
+ "@dnd-kit/sortable": "^10.0.0",
27
+ "@dnd-kit/utilities": "^3.2.2",
55
28
  "@fluentui/react-icons": "^2.0.345",
56
29
  "@fontsource-variable/bricolage-grotesque": "^5.3.0",
57
30
  "@fontsource-variable/geist-mono": "^5.3.0",
58
31
  "@fontsource-variable/inter": "^5.3.0",
59
32
  "@fontsource-variable/jetbrains-mono": "^5.3.0",
60
33
  "@fontsource-variable/outfit": "^5.3.0",
34
+ "@fontsource-variable/urbanist": "^5.3.0",
35
+ "@grpc/grpc-js": "^1.14.7",
61
36
  "@hono/node-server": "^2.1.6",
37
+ "@hookform/resolvers": "^7.0.3",
38
+ "@humanfs/node": "^0.17.0",
62
39
  "@libsql/client": "^0.18.0",
40
+ "@mdxeditor/editor": "^4.5.0",
41
+ "@opencode-ai/sdk": "^1.19.5",
63
42
  "@prisma/adapter-libsql": "^7.10.1",
64
43
  "@prisma/client": "^7.10.1",
65
- "@wenathlan/argan": "~2.0.155",
66
- "@wenathlan/cadria": "~2.0.155",
67
- "@wenathlan/debonair": "~2.0.155",
68
- "@wenathlan/devthink": "~2.0.154",
69
- "@wenathlan/getry": "~2.0.155",
70
- "@wenathlan/saddle": "~2.0.155",
71
- "@wenathlan/vault": "~2.0.155",
44
+ "@radix-ui/react-accordion": "^1.3.1",
45
+ "@radix-ui/react-alert-dialog": "^1.2.1",
46
+ "@radix-ui/react-aspect-ratio": "^1.2.0",
47
+ "@radix-ui/react-avatar": "^1.3.1",
48
+ "@radix-ui/react-checkbox": "^1.4.1",
49
+ "@radix-ui/react-collapsible": "^1.2.1",
50
+ "@radix-ui/react-context-menu": "^2.4.1",
51
+ "@radix-ui/react-dialog": "^1.3.1",
52
+ "@radix-ui/react-dropdown-menu": "^2.2.1",
53
+ "@radix-ui/react-hover-card": "^1.2.1",
54
+ "@radix-ui/react-label": "^2.1.17",
55
+ "@radix-ui/react-menubar": "^1.2.1",
56
+ "@radix-ui/react-navigation-menu": "^1.4.1",
57
+ "@radix-ui/react-popover": "^1.3.1",
58
+ "@radix-ui/react-progress": "^1.2.1",
59
+ "@radix-ui/react-radio-group": "^1.5.1",
60
+ "@radix-ui/react-scroll-area": "^1.4.0",
61
+ "@radix-ui/react-select": "^2.4.1",
62
+ "@radix-ui/react-separator": "^1.2.0",
63
+ "@radix-ui/react-slider": "^1.6.1",
64
+ "@radix-ui/react-slot": "^1.5.0",
65
+ "@radix-ui/react-switch": "^1.4.1",
66
+ "@radix-ui/react-tabs": "^1.2.1",
67
+ "@radix-ui/react-toast": "^1.3.1",
68
+ "@radix-ui/react-toggle": "^1.2.1",
69
+ "@radix-ui/react-toggle-group": "^1.2.1",
70
+ "@radix-ui/react-tooltip": "^1.4.1",
71
+ "@reactuses/core": "^6.6.1",
72
+ "@tailwindcss/postcss": "^4.3.4",
73
+ "@tailwindcss/typography": "^0.5.20",
74
+ "@tailwindcss/vite": "^4.3.4",
75
+ "@tanstack/react-query": "^5.106.1",
76
+ "@tanstack/react-table": "^9.3.1",
77
+ "@tsconfig/node26": "^26.0.1",
78
+ "@types/babel__core": "^7.20.5",
79
+ "@types/better-sqlite3": "^9.6.0",
80
+ "@types/chrome": "^0.3.7",
81
+ "@types/express": "^5.0.6",
82
+ "@types/google.maps": "^3.66.9",
83
+ "@types/node": "^26.6.6",
84
+ "@types/react": "^19.3.0",
85
+ "@types/react-dom": "^19.3.0",
86
+ "@types/three": "^0.187.0",
87
+ "@vitejs/plugin-react": "^6.2.1",
88
+ "@wenathlan/argan": "~2.0.165",
89
+ "@wenathlan/cadria": "~2.0.165",
90
+ "@wenathlan/debonair": "~2.0.165",
91
+ "@wenathlan/devthink": "~2.0.165",
92
+ "@wenathlan/getry": "~2.0.165",
93
+ "@wenathlan/saddle": "~2.0.165",
94
+ "@wenathlan/vault": "~2.0.165",
95
+ "add": "^2.0.9",
96
+ "ai": "^7.0.163",
97
+ "autoprefixer": "^10.6.2",
98
+ "axios": "^1.21.0",
99
+ "baseline-browser-mapping": "^2.11.35",
72
100
  "better-sqlite3": "^13.0.3",
101
+ "body-parser": "^2.4.0",
102
+ "bun-types": "^1.4.4",
103
+ "cheerio": "^1.2.0",
104
+ "class-variance-authority": "^0.7.1",
105
+ "clsx": "^2.1.1",
106
+ "cmdk": "^1.1.1",
107
+ "commander": "^15.0.0",
108
+ "date-fns": "^4.4.0",
109
+ "deepmerge-ts": "^8.0.2",
110
+ "dockerode": "^5.0.1",
111
+ "drizzle-kit": "^0.31.11",
73
112
  "drizzle-orm": "^0.45.4",
113
+ "embla-carousel-react": "^8.6.0",
114
+ "emittery": "^2.2.0",
115
+ "esbuild": "^0.28.2",
116
+ "eslint": "^10.14.0",
117
+ "eslint-config-next": "^16.4.5",
118
+ "express": "^5.3.0",
119
+ "fast-check": "^4.10.2",
120
+ "fast-uri": "^4.2.3",
121
+ "follow-redirects": "^1.16.2",
122
+ "framer-motion": "^14.9.1",
123
+ "glob": "^14.0.4",
74
124
  "gsap": "^3.15.1",
75
125
  "hono": "^4.13.16",
76
- "ink": "^7.1.1",
77
- "lucide-react": "^1.68.0",
78
- "motion": "^12.43.0",
126
+ "ink": "^8.0.0",
127
+ "input-otp": "^1.5.0",
128
+ "js-yaml": "^5.5.0",
129
+ "jsdom": "^31.0.0",
130
+ "katex": "^0.19.1",
131
+ "lucide-react": "^1.69.0",
132
+ "minimatch": "^11.0.5",
133
+ "motion": "^14.9.1",
134
+ "mysql2": "^3.24.6",
135
+ "nanoid": "^6.0.2",
136
+ "next": "^16.4.5",
137
+ "next-auth": "^4.24.15",
138
+ "next-intl": "^4.14.9",
139
+ "next-themes": "^0.4.6",
140
+ "openai": "^7.52.0",
141
+ "p-limit": "^7.3.3",
142
+ "p-retry": "^9.0.0",
143
+ "playwright": "^1.65.0",
144
+ "pnpm": "^12.18.0",
145
+ "postcss": "^8.5.32",
146
+ "postcss-selector-parser": "^7.1.7",
147
+ "prettier": "^3.9.10",
148
+ "prisma": "^7.10.1",
149
+ "proxy-addr": "^2.0.8",
79
150
  "react": "^19.3.1",
151
+ "react-day-picker": "^10.0.2",
80
152
  "react-devtools-core": "^8.0.0",
81
153
  "react-dom": "^19.3.1",
154
+ "react-hook-form": "^7.91.0",
155
+ "react-markdown": "^10.1.0",
156
+ "react-resizable-panels": "^4.18.1",
157
+ "react-syntax-highlighter": "^16.1.2",
158
+ "recharts": "^3.10.1",
159
+ "request-ip": "^3.3.0",
160
+ "sharp": "^0.35.5",
161
+ "shell-quote": "^1.12.0",
162
+ "smol-toml": "^1.9.1",
163
+ "sonner": "^2.0.8",
164
+ "source-map-js": "^1.2.2",
165
+ "streamdown": "^2.7.1",
166
+ "tailwind-merge": "^3.7.0",
167
+ "tailwindcss": "^4.3.4",
168
+ "tailwindcss-animate": "^1.0.7",
82
169
  "three": "^0.187.0",
170
+ "ts-node": "^10.9.2",
171
+ "tsup": "^9.0.0",
172
+ "tsx": "^4.23.15",
173
+ "tw-animate-css": "^1.4.0",
174
+ "typescript": "^7.0.2",
175
+ "undici": "^8.12.4",
176
+ "uuid": "^14.0.3",
177
+ "vaul": "^1.1.2",
178
+ "vite": "^8.3.6",
179
+ "vite-plugin-manus-runtime": "^0.0.59",
180
+ "vitest": "^5.1.0",
181
+ "webpack": "^5.112.2",
182
+ "webpack-cli": "^7.3.1",
83
183
  "wouter": "^3.13.0",
84
- "z-ai-web-dev-sdk": "^0.0.18"
184
+ "yaml": "^2.9.1",
185
+ "z-ai-web-dev-sdk": "^0.0.18",
186
+ "zod": "^4.6.7",
187
+ "zustand": "^5.0.15"
85
188
  },
86
189
  "devDependencies": {
190
+ "@ai-sdk/openai": "^4.0.109",
191
+ "@ai-sdk/openai-compatible": "^3.0.85",
192
+ "@ai-sdk/provider-utils": "^5.0.75",
193
+ "@anthropic-ai/sdk": "^1.6.0",
87
194
  "@biomejs/biome": "^2.6.5",
88
195
  "@capacitor/android": "^8.6.0",
89
196
  "@capacitor/cli": "^8.6.0",
90
197
  "@capacitor/core": "^8.6.0",
91
198
  "@capacitor/ios": "^8.6.0",
92
- "@hookform/resolvers": "^5.9.2",
199
+ "@dnd-kit/core": "^6.3.1",
200
+ "@dnd-kit/sortable": "^10.0.0",
201
+ "@dnd-kit/utilities": "^3.2.2",
202
+ "@fluentui/react-icons": "^2.0.345",
203
+ "@fontsource-variable/bricolage-grotesque": "^5.3.0",
204
+ "@fontsource-variable/geist-mono": "^5.3.0",
205
+ "@fontsource-variable/inter": "^5.3.0",
206
+ "@fontsource-variable/jetbrains-mono": "^5.3.0",
207
+ "@fontsource-variable/outfit": "^5.3.0",
208
+ "@fontsource-variable/urbanist": "^5.3.0",
209
+ "@grpc/grpc-js": "^1.14.7",
210
+ "@hono/node-server": "^2.1.6",
211
+ "@hookform/resolvers": "^7.0.3",
212
+ "@humanfs/node": "^0.17.0",
213
+ "@libsql/client": "^0.18.0",
214
+ "@mdxeditor/editor": "^4.5.0",
93
215
  "@opencode-ai/sdk": "^1.19.5",
216
+ "@prisma/adapter-libsql": "^7.10.1",
217
+ "@prisma/client": "^7.10.1",
94
218
  "@radix-ui/react-accordion": "^1.3.1",
95
219
  "@radix-ui/react-alert-dialog": "^1.2.1",
96
220
  "@radix-ui/react-aspect-ratio": "^1.2.0",
@@ -114,13 +238,18 @@
114
238
  "@radix-ui/react-slot": "^1.5.0",
115
239
  "@radix-ui/react-switch": "^1.4.1",
116
240
  "@radix-ui/react-tabs": "^1.2.1",
241
+ "@radix-ui/react-toast": "^1.3.1",
117
242
  "@radix-ui/react-toggle": "^1.2.1",
118
243
  "@radix-ui/react-toggle-group": "^1.2.1",
119
244
  "@radix-ui/react-tooltip": "^1.4.1",
245
+ "@reactuses/core": "^6.6.1",
120
246
  "@tailwindcss/postcss": "^4.3.4",
121
247
  "@tailwindcss/typography": "^0.5.20",
122
248
  "@tailwindcss/vite": "^4.3.4",
249
+ "@tanstack/react-query": "^5.106.1",
250
+ "@tanstack/react-table": "^9.3.1",
123
251
  "@tsconfig/node26": "^26.0.1",
252
+ "@types/babel__core": "^7.20.5",
124
253
  "@types/better-sqlite3": "^9.6.0",
125
254
  "@types/chrome": "^0.3.7",
126
255
  "@types/express": "^5.0.6",
@@ -130,76 +259,293 @@
130
259
  "@types/react-dom": "^19.3.0",
131
260
  "@types/three": "^0.187.0",
132
261
  "@vitejs/plugin-react": "^6.2.1",
262
+ "@wenathlan/argan": "~2.0.165",
263
+ "@wenathlan/cadria": "~2.0.165",
264
+ "@wenathlan/debonair": "~2.0.165",
265
+ "@wenathlan/devthink": "~2.0.165",
266
+ "@wenathlan/getry": "~2.0.165",
267
+ "@wenathlan/saddle": "~2.0.165",
268
+ "@wenathlan/vault": "~2.0.165",
133
269
  "add": "^2.0.9",
270
+ "ai": "^7.0.163",
134
271
  "autoprefixer": "^10.6.2",
135
272
  "axios": "^1.21.0",
273
+ "baseline-browser-mapping": "^2.11.35",
274
+ "better-sqlite3": "^13.0.3",
275
+ "body-parser": "^2.4.0",
136
276
  "bun-types": "^1.4.4",
137
277
  "cheerio": "^1.2.0",
138
278
  "class-variance-authority": "^0.7.1",
139
279
  "clsx": "^2.1.1",
140
280
  "cmdk": "^1.1.1",
281
+ "commander": "^15.0.0",
282
+ "date-fns": "^4.4.0",
283
+ "deepmerge-ts": "^8.0.2",
284
+ "dockerode": "^5.0.1",
141
285
  "drizzle-kit": "^0.31.11",
286
+ "drizzle-orm": "^0.45.4",
142
287
  "embla-carousel-react": "^8.6.0",
143
288
  "emittery": "^2.2.0",
144
289
  "esbuild": "^0.28.2",
290
+ "eslint": "^10.14.0",
291
+ "eslint-config-next": "^16.4.5",
145
292
  "express": "^5.3.0",
146
293
  "fast-check": "^4.10.2",
147
- "framer-motion": "^13.5.1",
294
+ "fast-uri": "^4.2.3",
295
+ "follow-redirects": "^1.16.2",
296
+ "framer-motion": "^14.9.1",
297
+ "glob": "^14.0.4",
298
+ "gsap": "^3.15.1",
299
+ "hono": "^4.13.16",
300
+ "ink": "^8.0.0",
148
301
  "input-otp": "^1.5.0",
149
- "jsdom": "26.1.0",
302
+ "js-yaml": "^5.5.0",
303
+ "jsdom": "^31.0.0",
304
+ "katex": "^0.19.1",
305
+ "lucide-react": "^1.69.0",
306
+ "minimatch": "^11.0.5",
307
+ "motion": "^14.9.1",
150
308
  "mysql2": "^3.24.6",
151
309
  "nanoid": "^6.0.2",
310
+ "next": "^16.4.5",
311
+ "next-auth": "^4.24.15",
312
+ "next-intl": "^4.14.9",
152
313
  "next-themes": "^0.4.6",
314
+ "openai": "^7.52.0",
153
315
  "p-limit": "^7.3.3",
154
- "p-retry": "^8.0.1",
155
- "playwright": "^1.64.1",
156
- "pnpm": "^12.16.1",
316
+ "p-retry": "^9.0.0",
317
+ "playwright": "^1.65.0",
318
+ "pnpm": "^12.18.0",
157
319
  "postcss": "^8.5.32",
320
+ "postcss-selector-parser": "^7.1.7",
158
321
  "prettier": "^3.9.10",
159
322
  "prisma": "^7.10.1",
323
+ "proxy-addr": "^2.0.8",
324
+ "react": "^19.3.1",
160
325
  "react-day-picker": "^10.0.2",
326
+ "react-devtools-core": "^8.0.0",
327
+ "react-dom": "^19.3.1",
161
328
  "react-hook-form": "^7.91.0",
329
+ "react-markdown": "^10.1.0",
162
330
  "react-resizable-panels": "^4.18.1",
331
+ "react-syntax-highlighter": "^16.1.2",
163
332
  "recharts": "^3.10.1",
333
+ "request-ip": "^3.3.0",
334
+ "sharp": "^0.35.5",
335
+ "shell-quote": "^1.12.0",
336
+ "smol-toml": "^1.9.1",
164
337
  "sonner": "^2.0.8",
338
+ "source-map-js": "^1.2.2",
165
339
  "streamdown": "^2.7.1",
166
340
  "tailwind-merge": "^3.7.0",
167
341
  "tailwindcss": "^4.3.4",
168
342
  "tailwindcss-animate": "^1.0.7",
169
- "tsup": "^8.5.1",
343
+ "three": "^0.187.0",
344
+ "ts-node": "^10.9.2",
345
+ "tsup": "^9.0.0",
170
346
  "tsx": "^4.23.15",
171
347
  "tw-animate-css": "^1.4.0",
172
348
  "typescript": "^7.0.2",
349
+ "undici": "^8.12.4",
350
+ "uuid": "^14.0.3",
173
351
  "vaul": "^1.1.2",
174
- "vite": "^8.3.5",
352
+ "vite": "^8.3.6",
175
353
  "vite-plugin-manus-runtime": "^0.0.59",
176
354
  "vitest": "^5.1.0",
177
355
  "webpack": "^5.112.2",
178
- "webpack-cli": "^6.0.1",
356
+ "webpack-cli": "^7.3.1",
357
+ "wouter": "^3.13.0",
179
358
  "yaml": "^2.9.1",
180
- "zod": "^4.6.7"
359
+ "z-ai-web-dev-sdk": "^0.0.18",
360
+ "zod": "^4.6.7",
361
+ "zustand": "^5.0.15"
181
362
  },
182
363
  "overrides": {
183
- "uuid": "^11.1.1",
184
- "deepmerge-ts": "^8.0.0",
364
+ "@ai-sdk/openai": "^4.0.109",
365
+ "@ai-sdk/openai-compatible": "^3.0.85",
366
+ "@ai-sdk/provider-utils": "^5.0.75",
367
+ "@anthropic-ai/sdk": "^1.6.0",
368
+ "@biomejs/biome": "^2.6.5",
369
+ "@capacitor/android": "^8.6.0",
370
+ "@capacitor/cli": "^8.6.0",
371
+ "@capacitor/core": "^8.6.0",
372
+ "@capacitor/ios": "^8.6.0",
373
+ "@dnd-kit/core": "^6.3.1",
374
+ "@dnd-kit/sortable": "^10.0.0",
375
+ "@dnd-kit/utilities": "^3.2.2",
376
+ "@fluentui/react-icons": "^2.0.345",
377
+ "@fontsource-variable/bricolage-grotesque": "^5.3.0",
378
+ "@fontsource-variable/geist-mono": "^5.3.0",
379
+ "@fontsource-variable/inter": "^5.3.0",
380
+ "@fontsource-variable/jetbrains-mono": "^5.3.0",
381
+ "@fontsource-variable/outfit": "^5.3.0",
382
+ "@fontsource-variable/urbanist": "^5.3.0",
383
+ "@grpc/grpc-js": "^1.14.7",
384
+ "@hono/node-server": "^2.1.6",
385
+ "@hookform/resolvers": "^7.0.3",
386
+ "@humanfs/node": "^0.17.0",
387
+ "@libsql/client": "^0.18.0",
388
+ "@mdxeditor/editor": "^4.5.0",
389
+ "@opencode-ai/sdk": "^1.19.5",
390
+ "@prisma/adapter-libsql": "^7.10.1",
391
+ "@prisma/client": "^7.10.1",
392
+ "@radix-ui/react-accordion": "^1.3.1",
393
+ "@radix-ui/react-alert-dialog": "^1.2.1",
394
+ "@radix-ui/react-aspect-ratio": "^1.2.0",
395
+ "@radix-ui/react-avatar": "^1.3.1",
396
+ "@radix-ui/react-checkbox": "^1.4.1",
397
+ "@radix-ui/react-collapsible": "^1.2.1",
398
+ "@radix-ui/react-context-menu": "^2.4.1",
399
+ "@radix-ui/react-dialog": "^1.3.1",
400
+ "@radix-ui/react-dropdown-menu": "^2.2.1",
401
+ "@radix-ui/react-hover-card": "^1.2.1",
402
+ "@radix-ui/react-label": "^2.1.17",
403
+ "@radix-ui/react-menubar": "^1.2.1",
404
+ "@radix-ui/react-navigation-menu": "^1.4.1",
405
+ "@radix-ui/react-popover": "^1.3.1",
406
+ "@radix-ui/react-progress": "^1.2.1",
407
+ "@radix-ui/react-radio-group": "^1.5.1",
408
+ "@radix-ui/react-scroll-area": "^1.4.0",
409
+ "@radix-ui/react-select": "^2.4.1",
410
+ "@radix-ui/react-separator": "^1.2.0",
411
+ "@radix-ui/react-slider": "^1.6.1",
412
+ "@radix-ui/react-slot": "^1.5.0",
413
+ "@radix-ui/react-switch": "^1.4.1",
414
+ "@radix-ui/react-tabs": "^1.2.1",
415
+ "@radix-ui/react-toast": "^1.3.1",
416
+ "@radix-ui/react-toggle": "^1.2.1",
417
+ "@radix-ui/react-toggle-group": "^1.2.1",
418
+ "@radix-ui/react-tooltip": "^1.4.1",
419
+ "@reactuses/core": "^6.6.1",
420
+ "@tailwindcss/postcss": "^4.3.4",
421
+ "@tailwindcss/typography": "^0.5.20",
422
+ "@tailwindcss/vite": "^4.3.4",
423
+ "@tanstack/react-query": "^5.106.1",
424
+ "@tanstack/react-table": "^9.3.1",
425
+ "@tsconfig/node26": "^26.0.1",
426
+ "@types/babel__core": "^7.20.5",
427
+ "@types/better-sqlite3": "^9.6.0",
428
+ "@types/chrome": "^0.3.7",
429
+ "@types/express": "^5.0.6",
430
+ "@types/google.maps": "^3.66.9",
431
+ "@types/node": "^26.6.6",
432
+ "@types/react": "^19.3.0",
433
+ "@types/react-dom": "^19.3.0",
434
+ "@types/three": "^0.187.0",
435
+ "@vitejs/plugin-react": "^6.2.1",
436
+ "@wenathlan/argan": "~2.0.165",
437
+ "@wenathlan/cadria": "~2.0.165",
438
+ "@wenathlan/debonair": "~2.0.165",
439
+ "@wenathlan/devthink": "~2.0.165",
440
+ "@wenathlan/getry": "~2.0.165",
441
+ "@wenathlan/saddle": "~2.0.165",
442
+ "@wenathlan/vault": "~2.0.165",
443
+ "add": "^2.0.9",
444
+ "ai": "^7.0.163",
445
+ "autoprefixer": "^10.6.2",
446
+ "axios": "^1.21.0",
447
+ "baseline-browser-mapping": "^2.11.35",
448
+ "better-sqlite3": "^13.0.3",
449
+ "body-parser": "^2.4.0",
450
+ "bun-types": "^1.4.4",
451
+ "cheerio": "^1.2.0",
452
+ "class-variance-authority": "^0.7.1",
453
+ "clsx": "^2.1.1",
454
+ "cmdk": "^1.1.1",
455
+ "commander": "^15.0.0",
456
+ "date-fns": "^4.4.0",
457
+ "deepmerge-ts": "^8.0.2",
458
+ "dockerode": "^5.0.1",
459
+ "drizzle-kit": "^0.31.11",
460
+ "drizzle-orm": "^0.45.4",
461
+ "embla-carousel-react": "^8.6.0",
462
+ "emittery": "^2.2.0",
185
463
  "esbuild": "^0.28.2",
464
+ "eslint": "^10.14.0",
465
+ "eslint-config-next": "^16.4.5",
466
+ "express": "^5.3.0",
467
+ "fast-check": "^4.10.2",
468
+ "fast-uri": "^4.2.3",
186
469
  "follow-redirects": "^1.16.2",
187
- "minimatch": "^11.0.3",
188
- "glob": "^14.0.3",
470
+ "framer-motion": "^14.9.1",
471
+ "glob": "^14.0.4",
472
+ "gsap": "^3.15.1",
473
+ "hono": "^4.13.16",
474
+ "ink": "^8.0.0",
475
+ "input-otp": "^1.5.0",
476
+ "js-yaml": "^5.5.0",
477
+ "jsdom": "^31.0.0",
478
+ "katex": "^0.19.1",
479
+ "lucide-react": "^1.69.0",
480
+ "minimatch": "^11.0.5",
481
+ "motion": "^14.9.1",
189
482
  "mysql2": "^3.24.6",
190
- "postcss-selector-parser": "^7.1.6",
191
- "source-map-js": "1.2.2",
192
- "proxy-addr": "2.0.8",
193
- "body-parser": "^2.4.0",
194
- "fast-uri": "^3.1.9",
483
+ "nanoid": "^6.0.2",
484
+ "next": "^16.4.5",
485
+ "next-auth": "^4.24.15",
486
+ "next-intl": "^4.14.9",
487
+ "next-themes": "^0.4.6",
488
+ "openai": "^7.52.0",
489
+ "p-limit": "^7.3.3",
490
+ "p-retry": "^9.0.0",
491
+ "playwright": "^1.65.0",
492
+ "pnpm": "^12.18.0",
493
+ "postcss": "^8.5.32",
494
+ "postcss-selector-parser": "^7.1.7",
495
+ "prettier": "^3.9.10",
496
+ "prisma": "^7.10.1",
497
+ "proxy-addr": "^2.0.8",
498
+ "react": "^19.3.1",
499
+ "react-day-picker": "^10.0.2",
500
+ "react-devtools-core": "^8.0.0",
501
+ "react-dom": "^19.3.1",
502
+ "react-hook-form": "^7.91.0",
503
+ "react-markdown": "^10.1.0",
504
+ "react-resizable-panels": "^4.18.1",
505
+ "react-syntax-highlighter": "^16.1.2",
506
+ "recharts": "^3.10.1",
507
+ "request-ip": "^3.3.0",
508
+ "sharp": "^0.35.5",
509
+ "shell-quote": "^1.12.0",
510
+ "smol-toml": "^1.9.1",
511
+ "sonner": "^2.0.8",
512
+ "source-map-js": "^1.2.2",
513
+ "streamdown": "^2.7.1",
514
+ "tailwind-merge": "^3.7.0",
515
+ "tailwindcss": "^4.3.4",
516
+ "tailwindcss-animate": "^1.0.7",
517
+ "three": "^0.187.0",
518
+ "ts-node": "^10.9.2",
519
+ "tsup": "^9.0.0",
520
+ "tsx": "^4.23.15",
521
+ "tw-animate-css": "^1.4.0",
522
+ "typescript": "^7.0.2",
523
+ "undici": "^8.12.4",
524
+ "uuid": "^14.0.3",
525
+ "vaul": "^1.1.2",
526
+ "vite": "^8.3.6",
527
+ "vite-plugin-manus-runtime": "^0.0.59",
528
+ "vitest": "^5.1.0",
529
+ "webpack": "^5.112.2",
530
+ "webpack-cli": "^7.3.1",
531
+ "wouter": "^3.13.0",
532
+ "yaml": "^2.9.1",
533
+ "z-ai-web-dev-sdk": "^0.0.18",
195
534
  "zod": "^4.6.7",
196
- "undici": "^7.30.1",
197
- "katex": "^0.18.2",
198
- "shell-quote": "^1.11.0",
535
+ "zustand": "^5.0.15",
199
536
  "xcode": {
200
537
  "uuid": "11.1.1"
201
- },
202
- "@grpc/grpc-js": "1.14.5"
538
+ }
539
+ },
540
+ "type": "module",
541
+ "sideEffects": false,
542
+ "bin": {
543
+ "cobaia": "./cli.ts"
203
544
  },
204
- "packageManager": "pnpm@12.3.4"
545
+ "trustedDependencies": [
546
+ "@parcel/watcher",
547
+ "@swc/core",
548
+ "pnpm",
549
+ "protobufjs"
550
+ ]
205
551
  }
package/pom.xml CHANGED
@@ -1,18 +1,18 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
3
3
  <modelVersion>4.0.0</modelVersion>
4
- <groupId>io.github.wenathlan</groupId>
4
+ <groupId>com.wenathlan</groupId>
5
5
  <artifactId>cobaia</artifactId>
6
6
  <version>${revision}</version>
7
7
  <packaging>jar</packaging>
8
8
  <name>cobaia single distribution</name>
9
- <description>The single cobaia maven distribution: the documentation set and the tests directory embedded as jar resources in the one io.github.wenathlan.cobaia artifact. cobaia is the monetization surface — the plans, the support rails and the honest advertisement slots.</description>
9
+ <description>The single cobaia maven distribution: the documentation set and the tests directory embedded as jar resources in the one com.wenathlan.cobaia artifact. cobaia is the monetization surface — the plans, the support rails and the honest advertisement slots.</description>
10
10
  <url>https://github.com/wenathlan/devthink</url>
11
11
  <licenses><license><name>GPL-3.0-only</name><url>https://www.gnu.org/licenses/gpl-3.0.html</url></license></licenses>
12
12
  <scm><url>https://github.com/wenathlan/devthink</url><connection>scm:git:https://github.com/wenathlan/devthink.git</connection></scm>
13
13
  <distributionManagement><repository><id>github</id><name>GitHub Packages</name><url>https://maven.pkg.github.com/wenathlan/devthink</url></repository></distributionManagement>
14
14
  <properties>
15
- <revision>2.0.164</revision>
15
+ <revision>2.0.166</revision>
16
16
  </properties>
17
17
  <build>
18
18
  <resources>
package/schema.prisma CHANGED
@@ -29,3 +29,26 @@ model OnboardingState {
29
29
  onboardingseen Boolean @default(false)
30
30
  updatedAt DateTime @updatedAt
31
31
  }
32
+
33
+ /// one interface copy row: the id is the page.widget.key path, the text
34
+ /// rides the english source of truth (labels.ts), and the translated flag
35
+ /// protects a runtime translation from the seed overwrite
36
+ model Label {
37
+ id String @id
38
+ text String
39
+ revision Int @default(0)
40
+ updatedAt DateTime @updatedAt
41
+ translated Boolean @default(false)
42
+ }
43
+
44
+ /// one content row of the site: the kind names the manifest table, the
45
+ /// ordinal pins the row order inside the kind, and the payload carries the
46
+ /// json encoding of the row (the platform gateway serves the rows over
47
+ /// GET /api/v1/ui/content — the content law: the pages render db rows,
48
+ /// the manifest is only the build seed)
49
+ model ContentRow {
50
+ @@id([kind, ordinal])
51
+ kind String
52
+ ordinal Int
53
+ payload String
54
+ }