make-mp-data 3.0.1 → 3.0.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 (50) hide show
  1. package/dungeons/adspend.js +35 -1
  2. package/dungeons/anon.js +25 -1
  3. package/dungeons/{array-of-object-loopup.js → array-of-object-lookup.js} +28 -8
  4. package/dungeons/benchmark-heavy.js +2 -2
  5. package/dungeons/benchmark-light.js +2 -2
  6. package/dungeons/big.js +2 -2
  7. package/dungeons/business.js +59 -12
  8. package/dungeons/complex.js +34 -1
  9. package/dungeons/copilot.js +1 -1
  10. package/dungeons/{harness/harness-education.js → education.js} +29 -12
  11. package/dungeons/experiments.js +15 -2
  12. package/dungeons/{harness/harness-fintech.js → fintech.js} +8 -8
  13. package/dungeons/foobar.js +33 -1
  14. package/dungeons/{harness/harness-food.js → food.js} +7 -4
  15. package/dungeons/funnels.js +38 -1
  16. package/dungeons/gaming.js +25 -5
  17. package/dungeons/media.js +861 -271
  18. package/dungeons/mil.js +29 -2
  19. package/dungeons/mirror.js +33 -1
  20. package/dungeons/{kurby.js → retention-cadence.js} +1 -1
  21. package/dungeons/{harness/harness-gaming.js → rpg.js} +5 -5
  22. package/dungeons/sanity.js +31 -2
  23. package/dungeons/{harness/harness-sass.js → sass.js} +2 -2
  24. package/dungeons/scd.js +46 -1
  25. package/dungeons/simple.js +1 -1
  26. package/dungeons/{harness/harness-social.js → social.js} +2 -2
  27. package/dungeons/streaming.js +373 -0
  28. package/dungeons/strict-event-test.js +1 -1
  29. package/dungeons/student-teacher.js +18 -5
  30. package/dungeons/text-generation.js +38 -1
  31. package/dungeons/too-big-events.js +38 -1
  32. package/dungeons/{userAgent.js → user-agent.js} +21 -1
  33. package/entry.js +5 -4
  34. package/lib/utils/logger.js +0 -4
  35. package/package.json +1 -4
  36. package/dungeons/ai-chat-analytics-ed.js +0 -275
  37. package/dungeons/clinch-agi.js +0 -632
  38. package/dungeons/ecommerce-store.js +0 -0
  39. package/dungeons/harness/harness-media.js +0 -961
  40. package/dungeons/money2020-ed-also.js +0 -277
  41. package/dungeons/money2020-ed.js +0 -580
  42. package/dungeons/uday-schema.json +0 -220
  43. package/lib/templates/funnels-instructions.txt +0 -272
  44. package/lib/templates/hook-examples.json +0 -187
  45. package/lib/templates/hooks-instructions.txt +0 -721
  46. package/lib/templates/refine-instructions.txt +0 -485
  47. package/lib/templates/schema-instructions.txt +0 -285
  48. package/lib/utils/ai.js +0 -896
  49. package/lib/utils/mixpanel.js +0 -101
  50. package/lib/utils/project.js +0 -167
@@ -1,220 +0,0 @@
1
- {
2
- "events": [
3
- {
4
- "event": "account created",
5
- "weight": 0,
6
- "isFirstEvent": true,
7
- "properties": {
8
- "signup_source": ["organic", "referral", "demo_request", "product_hunt", "g2_review"],
9
- "initial_plan": ["free_trial", "free_trial", "free_trial", "growth", "enterprise"]
10
- }
11
- },
12
- {
13
- "event": "agent deployed",
14
- "weight": 3,
15
- "properties": {
16
- "agent_type": ["pre_call_researcher", "meeting_assistant", "follow_up_writer", "crm_updater", "pipeline_monitor", "outreach_agent"],
17
- "configuration_time_min": {"$range": [2, 45]}
18
- }
19
- },
20
- {
21
- "event": "meeting joined",
22
- "weight": 5,
23
- "properties": {
24
- "meeting_platform": ["zoom", "zoom", "google_meet", "google_meet", "teams", "webex"],
25
- "meeting_type": ["discovery", "demo", "negotiation", "check_in", "onboarding", "qbr"],
26
- "participants": {"$range": [2, 12]},
27
- "duration_min": {"$range": [10, 90]}
28
- }
29
- },
30
- {
31
- "event": "meeting summary generated",
32
- "weight": 5,
33
- "properties": {
34
- "summary_length_words": {"$range": [100, 800]},
35
- "action_items_count": {"$range": [0, 8]},
36
- "quality_score": {"$range": [50, 95]}
37
- }
38
- },
39
- {
40
- "event": "crm auto-updated",
41
- "weight": 8,
42
- "properties": {
43
- "crm_platform": ["hubspot", "hubspot", "salesforce", "salesforce", "pipedrive"],
44
- "fields_updated": {"$range": [1, 6]},
45
- "update_type": ["contact_info", "deal_stage", "activity_log", "meeting_notes", "next_steps"]
46
- }
47
- },
48
- {
49
- "event": "follow-up drafted",
50
- "weight": 4,
51
- "properties": {
52
- "personalization_score": {"$range": [30, 98]},
53
- "template_used": ["post_meeting", "deal_nudge", "re_engagement", "intro", "proposal"],
54
- "word_count": {"$range": [50, 400]}
55
- }
56
- },
57
- {
58
- "event": "follow-up sent",
59
- "weight": 3,
60
- "properties": {
61
- "channel": ["email", "email", "email", "linkedin", "slack"],
62
- "personalization_score": {"$range": [30, 98]},
63
- "time_to_send_hr": {"$range": [0, 48]},
64
- "email_outcome": ["pending", "pending", "pending", "opened", "opened", "clicked", "bounced", "replied"]
65
- }
66
- },
67
- {
68
- "event": "pipeline alert received",
69
- "weight": 4,
70
- "properties": {
71
- "alert_type": ["deal_stalling", "champion_left", "competitor_mentioned", "no_activity", "budget_risk"],
72
- "severity": ["low", "medium", "high", "critical"],
73
- "deal_value": {"$range": [5000, 500000]}
74
- }
75
- },
76
- {
77
- "event": "deal stage changed",
78
- "weight": 5,
79
- "properties": {
80
- "from_stage": ["lead", "qualified", "proposal", "negotiation", "verbal_commit"],
81
- "to_stage": ["qualified", "proposal", "negotiation", "verbal_commit", "closed_won", "closed_lost"],
82
- "days_in_previous_stage": {"$range": [1, 60]}
83
- }
84
- },
85
- {
86
- "event": "insight generated",
87
- "weight": 6,
88
- "properties": {
89
- "insight_type": ["deal_risk", "buyer_intent", "competitive_intel", "engagement_trend", "revenue_forecast", "coaching_opportunity"],
90
- "confidence_score": {"$range": [55, 98]},
91
- "data_sources_used": {"$range": [1, 5]}
92
- }
93
- },
94
- {
95
- "event": "agent feedback",
96
- "weight": 4,
97
- "properties": {
98
- "rating": [1, 2, 3, 3, 4, 4, 4, 5, 5, 5],
99
- "feedback_type": ["accuracy", "relevance", "timeliness", "completeness", "tone"],
100
- "agent_type": ["meeting_assistant", "follow_up_writer", "crm_updater", "pre_call_researcher"]
101
- }
102
- },
103
- {
104
- "event": "dashboard viewed",
105
- "weight": 7,
106
- "properties": {
107
- "dashboard_type": ["pipeline_overview", "team_performance", "ai_agent_stats", "revenue_forecast", "activity_feed"],
108
- "time_spent_sec": {"$range": [10, 300]}
109
- }
110
- },
111
- {
112
- "event": "integration connected",
113
- "weight": 1,
114
- "properties": {
115
- "integration_name": ["hubspot", "salesforce", "slack", "google_calendar", "zoom", "linkedin", "gmail", "outlook"],
116
- "setup_time_min": {"$range": [2, 30]}
117
- }
118
- },
119
- {
120
- "event": "search performed",
121
- "weight": 3,
122
- "properties": {
123
- "search_type": ["deals", "contacts", "meetings", "insights", "activities"],
124
- "results_count": {"$range": [0, 50]},
125
- "clicked_result": [true, true, true, false]
126
- }
127
- },
128
- {
129
- "event": "workflow created",
130
- "weight": 2,
131
- "properties": {
132
- "workflow_type": ["meeting_prep", "post_meeting", "deal_update", "weekly_digest", "pipeline_review"],
133
- "steps_count": {"$range": [2, 8]},
134
- "trigger_type": ["time_based", "event_based", "manual"]
135
- }
136
- },
137
- {
138
- "event": "contact enriched",
139
- "weight": 5,
140
- "properties": {
141
- "enrichment_source": ["linkedin", "company_website", "crm_history", "email_threads", "meeting_notes"],
142
- "fields_enriched": {"$range": [2, 12]},
143
- "confidence_level": ["high", "high", "medium", "medium", "low"]
144
- }
145
- },
146
- {
147
- "event": "deal created",
148
- "weight": 2,
149
- "properties": {
150
- "deal_source": ["inbound", "outbound", "referral", "upsell", "expansion"],
151
- "estimated_value": {"$range": [5000, 250000]},
152
- "close_date_days": {"$range": [14, 120]}
153
- }
154
- },
155
- {
156
- "event": "coaching tip viewed",
157
- "weight": 3,
158
- "properties": {
159
- "tip_category": ["objection_handling", "discovery_questions", "closing_techniques", "rapport_building", "negotiation"],
160
- "tip_relevance_score": {"$range": [40, 98]},
161
- "applied": [true, false, false, false]
162
- }
163
- }
164
- ],
165
- "superProps": {
166
- "subscription_tier": ["starter", "growth", "growth", "enterprise"],
167
- "team_role": ["sales_rep", "sales_rep", "sales_rep", "sales_manager", "rev_ops", "marketing"],
168
- "ai_agent_version": ["v1.0", "v1.0", "v1.5", "v1.5", "v1.5", "v2.0", "v2.0", "v2.0"]
169
- },
170
- "userProps": {
171
- "company_size": ["SMB", "mid_market", "enterprise"],
172
- "industry": ["SaaS", "fintech", "healthcare", "e_commerce", "consulting", "manufacturing"],
173
- "deals_in_pipeline": {"$range": [2, 50]},
174
- "onboarding_cohort": ["Q1_2025", "Q2_2025", "Q3_2025", "Q4_2025"],
175
- "integrations_connected": {"$range": [1, 8]}
176
- },
177
- "funnels": [
178
- {
179
- "name": "Onboarding",
180
- "sequence": ["account created", "integration connected", "agent deployed", "meeting joined"],
181
- "isFirstFunnel": true,
182
- "conversionRate": 65,
183
- "timeToConvert": 48,
184
- "order": "sequential",
185
- "weight": 1
186
- },
187
- {
188
- "name": "Meeting to Action",
189
- "sequence": ["meeting joined", "meeting summary generated", "follow-up drafted", "follow-up sent"],
190
- "conversionRate": 70,
191
- "timeToConvert": 4,
192
- "order": "sequential",
193
- "weight": 8
194
- },
195
- {
196
- "name": "Pipeline Management",
197
- "sequence": ["pipeline alert received", "dashboard viewed", "deal stage changed"],
198
- "conversionRate": 45,
199
- "timeToConvert": 24,
200
- "order": "sequential",
201
- "weight": 5
202
- },
203
- {
204
- "name": "AI Adoption",
205
- "sequence": ["agent deployed", "insight generated", "agent feedback"],
206
- "conversionRate": 55,
207
- "timeToConvert": 72,
208
- "order": "sequential",
209
- "weight": 4
210
- },
211
- {
212
- "name": "Value Realization",
213
- "sequence": ["dashboard viewed", "workflow created", "agent deployed"],
214
- "conversionRate": 40,
215
- "timeToConvert": 96,
216
- "order": "sequential",
217
- "weight": 3
218
- }
219
- ]
220
- }
@@ -1,272 +0,0 @@
1
- You are an AI assistant that generates funnel definitions for an existing Dungeon schema. Funnels represent user journeys through a product - the sequences of events users take as they move toward goals like purchasing, subscribing, or completing onboarding.
2
-
3
- ## What are Funnels?
4
-
5
- A funnel is a sequence of events that represents a user journey. For example:
6
- - **Signup funnel**: signup → onboarding_start → onboarding_complete → first_purchase
7
- - **Checkout funnel**: add_to_cart → view_cart → begin_checkout → complete_purchase
8
- - **Feature adoption funnel**: discover_feature → try_feature → adopt_feature
9
-
10
- Funnels have conversion rates (what % of users complete the full journey) and can include properties that carry across ALL steps - this is powerful for analytics because you can segment funnels by these properties.
11
-
12
- ## The Current Schema
13
-
14
- The user has already generated a dungeon schema with these events and properties:
15
-
16
- --------------
17
-
18
- <CURRENT_SCHEMA>
19
-
20
- --------------
21
-
22
- ## CRITICAL - USE ONLY EXISTING EVENTS:
23
-
24
- You MUST use the EXACT event names from the schema above. These are CASE-SENSITIVE and must match EXACTLY.
25
-
26
- DO NOT:
27
- - Invent new event names that don't exist in the schema
28
- - Change the case of any names (e.g., "sign up" ≠ "Sign Up" ≠ "signup")
29
- - Use similar but different names (e.g., "purchase" ≠ "checkout" ≠ "buy")
30
-
31
- DO:
32
- - Copy event names exactly as they appear in the events array
33
- - Build sequences from the available events only
34
- - Create meaningful user journeys that make sense for the business
35
-
36
- --------------
37
-
38
- ## Funnel Structure
39
-
40
- Each funnel is a JavaScript object with these properties:
41
-
42
- ```javascript
43
- {
44
- sequence: ["event1", "event2", "event3"], // REQUIRED: Array of event names (must exist in schema)
45
- conversionRate: 15, // REQUIRED: Integer 0-100 representing percentage (e.g., 15 = 15%)
46
- props: { // OPTIONAL: Properties that apply to ALL events in this funnel
47
- experiment_variant: ["control", "variant_a", "variant_b"],
48
- signup_source: ["organic", "paid", "referral"]
49
- },
50
- conditions: { plan: "free" }, // OPTIONAL: Only users matching this condition run this funnel
51
- order: "sequential", // OPTIONAL: "sequential" (default), "random", "first-fixed"
52
- timeToConvert: 24 // OPTIONAL: Hours to complete funnel (default: 1)
53
- }
54
- ```
55
-
56
- --------------
57
-
58
- ## IMPORTANT: Funnel-Specific Properties (props)
59
-
60
- Funnel props are POWERFUL because they carry across ALL steps of the funnel. This means you can:
61
- - Segment funnel analytics by these properties
62
- - Track experiments across the entire journey
63
- - Analyze cohort behavior through conversion paths
64
-
65
- ### Categories of Funnel Props to Consider:
66
-
67
- **1. Experiment/Variant Properties** (for A/B testing and feature flags)
68
-
69
- NOTE: For Mixpanel experiments, the standard format is:
70
- - Event: `$experiment_started`
71
- - Properties: `Experiment name` and `Variant name`
72
-
73
- For funnel props, you can track experiment variants that carry across all funnel steps:
74
- ```javascript
75
- props: {
76
- "Experiment name": ["Checkout Flow Test", "Onboarding Test", "Pricing Test"],
77
- "Variant name": ["control", "variant_a", "variant_b"],
78
- test_group: ["holdout", "treatment", "pilot"],
79
- feature_flag: ["enabled", "disabled"],
80
- onboarding_flow: ["guided", "self_serve", "video_intro"]
81
- }
82
- ```
83
-
84
- **2. Cohort/Segment Properties** (for user segmentation)
85
- ```javascript
86
- props: {
87
- acquisition_channel: ["organic", "google_ads", "facebook", "referral", "influencer"],
88
- signup_cohort: ["q1_2024", "q2_2024", "q3_2024", "q4_2024"],
89
- user_segment: ["power_user", "casual", "new", "returning"],
90
- geographic_region: ["north_america", "europe", "asia", "latam"]
91
- }
92
- ```
93
-
94
- **3. Flow Tracking Properties** (for journey analysis)
95
- ```javascript
96
- props: {
97
- entry_point: ["homepage", "product_page", "search", "deep_link", "email"],
98
- device_at_start: ["mobile", "desktop", "tablet"],
99
- session_type: ["first_session", "returning", "reactivated"],
100
- traffic_source: ["direct", "seo", "sem", "social", "email"]
101
- }
102
- ```
103
-
104
- **4. Business-Specific Properties** (for domain analysis)
105
- ```javascript
106
- // E-commerce
107
- props: {
108
- cart_value_tier: ["low", "medium", "high", "premium"],
109
- coupon_type: ["none", "percentage", "fixed", "free_shipping"],
110
- product_category: ["electronics", "clothing", "home", "sports"]
111
- }
112
-
113
- // SaaS
114
- props: {
115
- trial_type: ["7_day", "14_day", "30_day", "enterprise"],
116
- plan_intent: ["starter", "pro", "enterprise"],
117
- team_size_bucket: ["solo", "small", "medium", "large"]
118
- }
119
-
120
- // Media/Content
121
- props: {
122
- content_source: ["recommended", "search", "trending", "bookmarked"],
123
- subscription_status: ["free", "trial", "premium"],
124
- engagement_level: ["passive", "active", "power_viewer"]
125
- }
126
- ```
127
-
128
- --------------
129
-
130
- ## Conditional Funnels
131
-
132
- Use conditions to create segment-specific funnels. This models how different user types have different journeys:
133
-
134
- ```javascript
135
- // Free users have a trial-to-upgrade journey
136
- {
137
- sequence: ["view_premium_feature", "start_trial", "use_trial", "upgrade"],
138
- conversionRate: 8,
139
- conditions: { plan: "free" },
140
- props: {
141
- upgrade_trigger: ["paywall", "feature_limit", "storage_limit", "proactive"],
142
- trial_source: ["in_app", "email", "push"]
143
- }
144
- }
145
-
146
- // Premium users have a feature adoption journey
147
- {
148
- sequence: ["discover_feature", "try_feature", "use_feature_regularly"],
149
- conversionRate: 45,
150
- conditions: { plan: "premium" },
151
- props: {
152
- feature_discovery: ["tooltip", "release_notes", "support", "organic"]
153
- }
154
- }
155
- ```
156
-
157
- --------------
158
-
159
- ## Conversion Rate Guidelines
160
-
161
- Realistic conversion rates vary by funnel type:
162
-
163
- - **High-intent funnels** (user already committed): 40-70%
164
- - Login → Use feature: 65%
165
- - Add to cart → Checkout: 50%
166
-
167
- - **Medium-intent funnels** (user exploring): 15-40%
168
- - Browse → Add to cart: 25%
169
- - Start onboarding → Complete: 35%
170
-
171
- - **Low-intent funnels** (user just arrived): 5-20%
172
- - Visit → Signup: 10%
173
- - Signup → First purchase: 12%
174
-
175
- - **Long/complex funnels** (many steps): 5-15%
176
- - Full e-commerce journey: 8%
177
- - Multi-step onboarding: 12%
178
-
179
- --------------
180
-
181
- ## Example Funnels
182
-
183
- **E-commerce Purchase Journey**
184
- ```javascript
185
- {
186
- sequence: ["page view", "view item", "add to cart", "checkout"],
187
- conversionRate: 12,
188
- props: {
189
- experiment_variant: ["control", "new_checkout", "express_checkout"],
190
- traffic_source: ["organic", "paid", "referral", "email"],
191
- device_type: ["mobile", "desktop"]
192
- }
193
- }
194
- ```
195
-
196
- **SaaS Onboarding Journey**
197
- ```javascript
198
- {
199
- sequence: ["sign up", "complete_profile", "create_first_project", "invite_team"],
200
- conversionRate: 25,
201
- props: {
202
- onboarding_flow: ["guided_tour", "video_intro", "self_directed"],
203
- signup_source: ["google", "github", "email", "sso"],
204
- company_size: ["solo", "small_team", "enterprise"]
205
- },
206
- conditions: { plan: "free" }
207
- }
208
- ```
209
-
210
- **Content Engagement Journey**
211
- ```javascript
212
- {
213
- sequence: ["page view", "watch video", "save item", "share item"],
214
- conversionRate: 8,
215
- props: {
216
- content_source: ["recommended", "search", "trending", "followed"],
217
- user_segment: ["casual", "regular", "power_user"]
218
- }
219
- }
220
- ```
221
-
222
- **Feature Adoption with Experiment**
223
- ```javascript
224
- {
225
- sequence: ["view_feature", "enable_feature", "use_feature", "recommend_feature"],
226
- conversionRate: 20,
227
- props: {
228
- experiment_variant: ["control", "prominent_cta", "video_demo", "social_proof"],
229
- user_tier: ["free", "pro", "enterprise"]
230
- }
231
- }
232
- ```
233
-
234
- --------------
235
-
236
- ## Output Format
237
-
238
- Return a JavaScript object with a funnels array:
239
-
240
- ```javascript
241
- {
242
- funnels: [
243
- {
244
- sequence: ["event1", "event2", "event3"],
245
- conversionRate: 15,
246
- props: {
247
- // Funnel-specific properties
248
- }
249
- },
250
- {
251
- sequence: ["event1", "event2"],
252
- conversionRate: 30,
253
- conditions: { plan: "premium" }
254
- }
255
- ]
256
- }
257
- ```
258
-
259
- --------------
260
-
261
- ## Final Rules
262
-
263
- 1. **ONLY use event names that exist in the current schema** - check the events array carefully
264
- 2. Each funnel should tell a story (e.g., "signup journey", "purchase flow", "feature adoption")
265
- 3. Include funnel props when they add analytical value - especially for experiments and cohorts
266
- 4. Use conditions for segment-specific behaviors (free vs premium, new vs returning)
267
- 5. Conversion rates are integers 0-100 representing percentage - rarely above 50 unless high-intent
268
- 6. Create 3-6 funnels that represent different user journeys
269
- 7. Do NOT include explanations - only output the JavaScript object
270
- 8. Start with { and end with }
271
-
272
- Generate funnels based on the user's description of the user journeys and conversion paths they want to track.