@ak--47/dungeon-master 1.0.0 → 1.1.0

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 (103) hide show
  1. package/README.md +7 -7
  2. package/dungeons/technical/ad-spend-schema.json +128 -0
  3. package/dungeons/technical/ad-spend.js +116 -0
  4. package/dungeons/technical/anonymous-users-schema.json +91 -0
  5. package/dungeons/technical/anonymous-users.js +102 -0
  6. package/dungeons/technical/array-of-object-lookup-schema.json +191 -0
  7. package/dungeons/{array-of-object-lookup.js → technical/array-of-object-lookup.js} +11 -4
  8. package/dungeons/technical/experiments-schema.json +197 -0
  9. package/dungeons/technical/experiments.js +168 -0
  10. package/dungeons/technical/foobar-schema.json +362 -0
  11. package/dungeons/{foobar.js → technical/foobar.js} +2 -2
  12. package/dungeons/technical/group-analytics-schema.json +149 -0
  13. package/dungeons/technical/group-analytics.js +151 -0
  14. package/dungeons/technical/mirror-strategies-schema.json +84 -0
  15. package/dungeons/technical/mirror-strategies.js +126 -0
  16. package/dungeons/technical/nested-objects-schema.json +145 -0
  17. package/dungeons/technical/nested-objects.js +207 -0
  18. package/dungeons/technical/retention-cadence-schema.json +37 -0
  19. package/dungeons/{retention-cadence.js → technical/retention-cadence.js} +1 -1
  20. package/dungeons/technical/sanity-schema.json +185 -0
  21. package/dungeons/{sanity.js → technical/sanity.js} +3 -2
  22. package/dungeons/technical/scale-test-schema.json +70 -0
  23. package/dungeons/technical/scale-test.js +90 -0
  24. package/dungeons/technical/scd-schema.json +270 -0
  25. package/dungeons/{scd.js → technical/scd.js} +19 -10
  26. package/dungeons/technical/simple-schema.json +278 -0
  27. package/dungeons/{simple.js → technical/simple.js} +6 -6
  28. package/dungeons/technical/simplest-schema.json +635 -0
  29. package/dungeons/{simplest.js → technical/simplest.js} +6 -6
  30. package/dungeons/technical/text-generation-schema.json +1059 -0
  31. package/dungeons/{text-generation.js → technical/text-generation.js} +23 -9
  32. package/dungeons/vertical/community-schema.json +557 -0
  33. package/dungeons/vertical/community.js +788 -0
  34. package/dungeons/vertical/devtools-schema.json +580 -0
  35. package/dungeons/vertical/devtools.js +837 -0
  36. package/dungeons/vertical/ecommerce-schema.json +586 -0
  37. package/dungeons/{ecommerce.js → vertical/ecommerce.js} +34 -3
  38. package/dungeons/vertical/education-schema.json +697 -0
  39. package/dungeons/{education.js → vertical/education.js} +54 -36
  40. package/dungeons/vertical/fintech-schema.json +563 -0
  41. package/dungeons/{fintech.js → vertical/fintech.js} +91 -53
  42. package/dungeons/vertical/fitness-schema.json +508 -0
  43. package/dungeons/vertical/fitness.js +802 -0
  44. package/dungeons/vertical/food-delivery-schema.json +678 -0
  45. package/dungeons/{food.js → vertical/food-delivery.js} +51 -23
  46. package/dungeons/vertical/gaming-schema.json +394 -0
  47. package/dungeons/{gaming.js → vertical/gaming.js} +9 -7
  48. package/dungeons/vertical/healthcare-schema.json +527 -0
  49. package/dungeons/vertical/healthcare.js +769 -0
  50. package/dungeons/vertical/insurance-application-schema.json +466 -0
  51. package/dungeons/{insurance-application.js → vertical/insurance-application.js} +33 -29
  52. package/dungeons/vertical/logistics-schema.json +552 -0
  53. package/dungeons/vertical/logistics.js +793 -0
  54. package/dungeons/vertical/marketplace-schema.json +511 -0
  55. package/dungeons/vertical/marketplace.js +844 -0
  56. package/dungeons/vertical/media-schema.json +787 -0
  57. package/dungeons/{media.js → vertical/media.js} +94 -16
  58. package/dungeons/vertical/rpg-schema.json +654 -0
  59. package/dungeons/{rpg.js → vertical/rpg.js} +78 -57
  60. package/dungeons/vertical/sass-schema.json +653 -0
  61. package/dungeons/{sass.js → vertical/sass.js} +49 -23
  62. package/dungeons/vertical/social-schema.json +552 -0
  63. package/dungeons/{social.js → vertical/social.js} +60 -14
  64. package/dungeons/vertical/travel-schema.json +558 -0
  65. package/dungeons/vertical/travel.js +736 -0
  66. package/index.js +19 -15
  67. package/lib/core/config-validator.js +286 -1
  68. package/lib/core/context.js +7 -5
  69. package/lib/generators/adspend.js +3 -3
  70. package/lib/generators/events.js +141 -14
  71. package/lib/generators/funnels.js +67 -7
  72. package/lib/generators/text.js +2 -2
  73. package/lib/orchestrators/user-loop.js +441 -22
  74. package/lib/templates/soup-presets.js +2 -2
  75. package/lib/utils/utils.js +4 -5
  76. package/package.json +4 -3
  77. package/scripts/dungeon-to-json.mjs +163 -0
  78. package/scripts/extract-dungeon-schema.mjs +297 -0
  79. package/scripts/json-to-dungeon.mjs +200 -0
  80. package/scripts/run-dungeon.mjs +76 -0
  81. package/scripts/run-many.mjs +118 -0
  82. package/scripts/verify-runner.mjs +42 -0
  83. package/types.d.ts +313 -1
  84. package/dungeons/array-of-object-lookup-schema.json +0 -327
  85. package/dungeons/ecommerce-schema.json +0 -462
  86. package/dungeons/education-schema.json +0 -2409
  87. package/dungeons/fintech-schema.json +0 -14034
  88. package/dungeons/foobar-schema.json +0 -403
  89. package/dungeons/food-delivery-schema.json +0 -192
  90. package/dungeons/food-delivery.js +0 -602
  91. package/dungeons/food-schema.json +0 -1152
  92. package/dungeons/gaming-schema.json +0 -1270
  93. package/dungeons/insurance-application-schema.json +0 -204
  94. package/dungeons/media-schema.json +0 -906
  95. package/dungeons/retention-cadence-schema.json +0 -78
  96. package/dungeons/rpg-schema.json +0 -4526
  97. package/dungeons/sanity-schema.json +0 -255
  98. package/dungeons/sass-schema.json +0 -1291
  99. package/dungeons/scd-schema.json +0 -919
  100. package/dungeons/simple-schema.json +0 -608
  101. package/dungeons/simplest-schema.json +0 -1418
  102. package/dungeons/social-schema.json +0 -1118
  103. package/dungeons/text-generation-schema.json +0 -3096
@@ -0,0 +1,580 @@
1
+ {
2
+ "events": [
3
+ {
4
+ "event": "account created",
5
+ "isFirstEvent": true,
6
+ "properties": {
7
+ "referral_source": [
8
+ "organic",
9
+ "github",
10
+ "conference",
11
+ "blog_post",
12
+ "colleague",
13
+ "search"
14
+ ]
15
+ }
16
+ },
17
+ {
18
+ "event": "build completed",
19
+ "weight": 8,
20
+ "properties": {
21
+ "pipeline_id": {
22
+ "$type": "string"
23
+ },
24
+ "repo_id": {
25
+ "$type": "string"
26
+ },
27
+ "build_status": [
28
+ "success",
29
+ "failed",
30
+ "cancelled"
31
+ ],
32
+ "build_duration_sec": {
33
+ "$range": [
34
+ 57,
35
+ 515
36
+ ]
37
+ },
38
+ "branch": [
39
+ "main",
40
+ "develop",
41
+ "feature",
42
+ "hotfix"
43
+ ],
44
+ "test_count": {
45
+ "$range": [
46
+ 85,
47
+ 429
48
+ ]
49
+ },
50
+ "test_pass_rate": {
51
+ "$range": [
52
+ 71,
53
+ 99
54
+ ]
55
+ }
56
+ }
57
+ },
58
+ {
59
+ "event": "deployment completed",
60
+ "weight": 5,
61
+ "properties": {
62
+ "pipeline_id": {
63
+ "$type": "string"
64
+ },
65
+ "repo_id": {
66
+ "$type": "string"
67
+ },
68
+ "deploy_status": [
69
+ "success",
70
+ "failed",
71
+ "rolled_back"
72
+ ],
73
+ "environment": [
74
+ "production",
75
+ "staging",
76
+ "dev",
77
+ "preview"
78
+ ],
79
+ "deploy_duration_sec": {
80
+ "$range": [
81
+ 53,
82
+ 246
83
+ ]
84
+ },
85
+ "is_night_deploy": [
86
+ false
87
+ ],
88
+ "preview_enabled": [
89
+ false
90
+ ]
91
+ }
92
+ },
93
+ {
94
+ "event": "pull request created",
95
+ "weight": 6,
96
+ "properties": {
97
+ "repo_id": {
98
+ "$type": "string"
99
+ },
100
+ "pr_size": [
101
+ "small",
102
+ "medium",
103
+ "large",
104
+ "xlarge"
105
+ ],
106
+ "files_changed": [
107
+ 16,
108
+ 34,
109
+ 14,
110
+ 36,
111
+ 37,
112
+ 15,
113
+ 13
114
+ ],
115
+ "lines_added": {
116
+ "$range": [
117
+ 301,
118
+ 1600
119
+ ]
120
+ },
121
+ "lines_removed": {
122
+ "$range": [
123
+ 99,
124
+ 386
125
+ ]
126
+ },
127
+ "ai_assist": [
128
+ "manual"
129
+ ]
130
+ }
131
+ },
132
+ {
133
+ "event": "code review completed",
134
+ "weight": 5,
135
+ "properties": {
136
+ "repo_id": {
137
+ "$type": "string"
138
+ },
139
+ "review_result": [
140
+ "approved",
141
+ "changes_requested",
142
+ "commented"
143
+ ],
144
+ "review_duration_hours": [
145
+ 48,
146
+ 55,
147
+ 51,
148
+ 54,
149
+ 16,
150
+ 18,
151
+ 25
152
+ ],
153
+ "comments_count": [
154
+ 15,
155
+ 7,
156
+ 6
157
+ ],
158
+ "ai_assist": [
159
+ "manual"
160
+ ]
161
+ }
162
+ },
163
+ {
164
+ "event": "alert triggered",
165
+ "weight": 4,
166
+ "properties": {
167
+ "alert_type": [
168
+ "error_rate",
169
+ "latency",
170
+ "cpu",
171
+ "memory",
172
+ "disk",
173
+ "custom_metric"
174
+ ],
175
+ "severity": [
176
+ "info",
177
+ "warning",
178
+ "critical"
179
+ ],
180
+ "service": [
181
+ "api",
182
+ "web",
183
+ "worker",
184
+ "database",
185
+ "cdn",
186
+ "auth"
187
+ ],
188
+ "acknowledged": [
189
+ true,
190
+ false
191
+ ]
192
+ }
193
+ },
194
+ {
195
+ "event": "incident created",
196
+ "weight": 2,
197
+ "properties": {
198
+ "severity": [
199
+ "sev1",
200
+ "sev2",
201
+ "sev3"
202
+ ],
203
+ "service": [
204
+ "api",
205
+ "web",
206
+ "worker",
207
+ "database",
208
+ "cdn",
209
+ "auth"
210
+ ],
211
+ "response_time_minutes": {
212
+ "$range": [
213
+ 21,
214
+ 93
215
+ ]
216
+ },
217
+ "root_cause": [
218
+ "deploy",
219
+ "config_change",
220
+ "dependency",
221
+ "traffic_spike",
222
+ "hardware",
223
+ "unknown"
224
+ ]
225
+ }
226
+ },
227
+ {
228
+ "event": "incident resolved",
229
+ "weight": 2,
230
+ "properties": {
231
+ "severity": [
232
+ "sev1",
233
+ "sev2",
234
+ "sev3"
235
+ ],
236
+ "resolution_time_minutes": {
237
+ "$range": [
238
+ 100,
239
+ 377
240
+ ]
241
+ },
242
+ "response_time_minutes": {
243
+ "$range": [
244
+ 23,
245
+ 93
246
+ ]
247
+ },
248
+ "resolution_type": [
249
+ "hotfix",
250
+ "rollback",
251
+ "config_change",
252
+ "scaling",
253
+ "restart",
254
+ "manual"
255
+ ]
256
+ }
257
+ },
258
+ {
259
+ "event": "repository connected",
260
+ "weight": 2,
261
+ "properties": {
262
+ "provider": [
263
+ "github",
264
+ "gitlab",
265
+ "bitbucket"
266
+ ],
267
+ "repo_visibility": [
268
+ "private",
269
+ "public"
270
+ ],
271
+ "language": [
272
+ "javascript",
273
+ "python",
274
+ "go",
275
+ "rust",
276
+ "java",
277
+ "typescript"
278
+ ]
279
+ }
280
+ },
281
+ {
282
+ "event": "pipeline configured",
283
+ "weight": 2,
284
+ "properties": {
285
+ "pipeline_id": {
286
+ "$type": "string"
287
+ },
288
+ "pipeline_type": [
289
+ "build_test",
290
+ "build_test_deploy",
291
+ "deploy_only",
292
+ "lint_test"
293
+ ],
294
+ "trigger": [
295
+ "push",
296
+ "pull_request",
297
+ "schedule",
298
+ "manual"
299
+ ],
300
+ "runtime": [
301
+ "docker",
302
+ "node",
303
+ "python",
304
+ "go"
305
+ ]
306
+ }
307
+ },
308
+ {
309
+ "event": "collaboration invited",
310
+ "weight": 2,
311
+ "properties": {
312
+ "invite_role": [
313
+ "developer",
314
+ "admin",
315
+ "viewer"
316
+ ],
317
+ "invite_method": [
318
+ "email",
319
+ "link",
320
+ "github_team"
321
+ ]
322
+ }
323
+ },
324
+ {
325
+ "event": "monitoring dashboard viewed",
326
+ "weight": 5,
327
+ "properties": {
328
+ "dashboard_type": [
329
+ "overview",
330
+ "performance",
331
+ "errors",
332
+ "deploys",
333
+ "custom"
334
+ ],
335
+ "time_range": [
336
+ "1h",
337
+ "6h",
338
+ "24h",
339
+ "7d",
340
+ "30d"
341
+ ],
342
+ "widgets_count": [
343
+ 4,
344
+ 6,
345
+ 10
346
+ ]
347
+ }
348
+ },
349
+ {
350
+ "event": "log searched",
351
+ "weight": 4,
352
+ "properties": {
353
+ "query_type": [
354
+ "full_text",
355
+ "structured",
356
+ "regex"
357
+ ],
358
+ "time_range": [
359
+ "15m",
360
+ "1h",
361
+ "6h",
362
+ "24h",
363
+ "7d"
364
+ ],
365
+ "results_count": {
366
+ "$range": [
367
+ 94,
368
+ 404
369
+ ]
370
+ },
371
+ "service": [
372
+ "api",
373
+ "web",
374
+ "worker",
375
+ "database",
376
+ "auth"
377
+ ]
378
+ }
379
+ },
380
+ {
381
+ "event": "notification received",
382
+ "weight": 6,
383
+ "properties": {
384
+ "notification_type": [
385
+ "build_failed",
386
+ "deploy_completed",
387
+ "pr_review_requested",
388
+ "alert_fired",
389
+ "mention",
390
+ "billing"
391
+ ],
392
+ "channel": [
393
+ "in_app",
394
+ "email",
395
+ "slack",
396
+ "webhook"
397
+ ],
398
+ "opened": [
399
+ true,
400
+ false
401
+ ]
402
+ }
403
+ },
404
+ {
405
+ "event": "billing updated",
406
+ "properties": {
407
+ "change_type": [
408
+ "plan_upgrade",
409
+ "plan_downgrade",
410
+ "payment_method",
411
+ "add_seats",
412
+ "remove_seats"
413
+ ],
414
+ "payment_method": [
415
+ "credit_card",
416
+ "invoice",
417
+ "paypal"
418
+ ]
419
+ }
420
+ },
421
+ {
422
+ "event": "app session",
423
+ "weight": 8,
424
+ "properties": {
425
+ "session_duration_sec": {
426
+ "$range": [
427
+ 586,
428
+ 2989
429
+ ]
430
+ },
431
+ "pages_viewed": [
432
+ 6,
433
+ 14,
434
+ 8,
435
+ 16
436
+ ]
437
+ }
438
+ },
439
+ {
440
+ "event": "environment created",
441
+ "weight": 2,
442
+ "properties": {
443
+ "env_type": [
444
+ "production",
445
+ "staging",
446
+ "dev",
447
+ "preview",
448
+ "test"
449
+ ],
450
+ "cloud_provider": [
451
+ "aws",
452
+ "gcp",
453
+ "azure",
454
+ "self_hosted"
455
+ ],
456
+ "region": [
457
+ "us-east-1",
458
+ "us-west-2",
459
+ "eu-west-1",
460
+ "ap-south-1"
461
+ ]
462
+ }
463
+ },
464
+ {
465
+ "event": "account deactivated",
466
+ "properties": {
467
+ "reason": [
468
+ "switched_provider",
469
+ "cost",
470
+ "no_longer_needed",
471
+ "poor_experience",
472
+ "team_dissolved",
473
+ "acquired"
474
+ ]
475
+ }
476
+ }
477
+ ],
478
+ "superProps": {
479
+ "subscription_tier": [
480
+ "free",
481
+ "team",
482
+ "business",
483
+ "enterprise"
484
+ ],
485
+ "platform": [
486
+ "web",
487
+ "desktop_app",
488
+ "cli"
489
+ ],
490
+ "language": [
491
+ "javascript",
492
+ "python",
493
+ "go",
494
+ "rust",
495
+ "java",
496
+ "typescript"
497
+ ]
498
+ },
499
+ "userProps": {
500
+ "dev_role": [
501
+ "full_stack"
502
+ ],
503
+ "segment": [
504
+ "full_stack"
505
+ ],
506
+ "team_size": [
507
+ 41,
508
+ 35,
509
+ 9,
510
+ 13,
511
+ 21
512
+ ],
513
+ "repos_connected": [
514
+ 0
515
+ ],
516
+ "org_name": [
517
+ "personal"
518
+ ],
519
+ "experience_level": [
520
+ "junior",
521
+ "mid",
522
+ "senior"
523
+ ]
524
+ },
525
+ "funnels": [
526
+ {
527
+ "sequence": [
528
+ "account created",
529
+ "repository connected",
530
+ "pipeline configured",
531
+ "build completed"
532
+ ],
533
+ "isFirstFunnel": true,
534
+ "conversionRate": 45,
535
+ "timeToConvert": 72,
536
+ "weight": 3
537
+ },
538
+ {
539
+ "sequence": [
540
+ "build completed",
541
+ "deployment completed",
542
+ "monitoring dashboard viewed"
543
+ ],
544
+ "conversionRate": 40,
545
+ "timeToConvert": 48,
546
+ "weight": 5
547
+ },
548
+ {
549
+ "sequence": [
550
+ "pull request created",
551
+ "code review completed",
552
+ "build completed",
553
+ "deployment completed"
554
+ ],
555
+ "conversionRate": 35,
556
+ "timeToConvert": 72,
557
+ "weight": 4
558
+ },
559
+ {
560
+ "sequence": [
561
+ "alert triggered",
562
+ "incident created",
563
+ "incident resolved"
564
+ ],
565
+ "conversionRate": 50,
566
+ "timeToConvert": 24,
567
+ "weight": 3
568
+ },
569
+ {
570
+ "sequence": [
571
+ "app session",
572
+ "billing updated",
573
+ "collaboration invited"
574
+ ],
575
+ "conversionRate": 20,
576
+ "timeToConvert": 168,
577
+ "weight": 2
578
+ }
579
+ ]
580
+ }