make-mp-data 2.1.11 → 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 (71) hide show
  1. package/README.md +31 -0
  2. package/dungeons/adspend.js +35 -1
  3. package/dungeons/anon.js +25 -1
  4. package/dungeons/array-of-object-lookup.js +201 -0
  5. package/dungeons/benchmark-heavy.js +241 -0
  6. package/dungeons/benchmark-light.js +141 -0
  7. package/dungeons/big.js +10 -9
  8. package/dungeons/business.js +60 -12
  9. package/dungeons/complex.js +35 -1
  10. package/dungeons/copilot.js +383 -0
  11. package/dungeons/education.js +1005 -0
  12. package/dungeons/experiments.js +18 -4
  13. package/dungeons/fintech.js +976 -0
  14. package/dungeons/foobar.js +32 -0
  15. package/dungeons/food.js +988 -0
  16. package/dungeons/funnels.js +38 -1
  17. package/dungeons/gaming.js +26 -5
  18. package/dungeons/media.js +861 -270
  19. package/dungeons/mil.js +31 -3
  20. package/dungeons/mirror.js +33 -1
  21. package/dungeons/retention-cadence.js +211 -0
  22. package/dungeons/rpg.js +1178 -0
  23. package/dungeons/sanity.js +32 -2
  24. package/dungeons/sass.js +923 -0
  25. package/dungeons/scd.js +47 -1
  26. package/dungeons/simple.js +29 -14
  27. package/dungeons/social.js +928 -0
  28. package/dungeons/streaming.js +373 -0
  29. package/dungeons/strict-event-test.js +30 -0
  30. package/dungeons/student-teacher.js +19 -5
  31. package/dungeons/text-generation.js +120 -84
  32. package/dungeons/too-big-events.js +203 -0
  33. package/dungeons/{userAgent.js → user-agent.js} +23 -2
  34. package/entry.js +5 -4
  35. package/index.js +41 -54
  36. package/lib/core/config-validator.js +122 -7
  37. package/lib/core/context.js +7 -14
  38. package/lib/core/storage.js +57 -25
  39. package/lib/generators/adspend.js +12 -12
  40. package/lib/generators/events.js +6 -5
  41. package/lib/generators/funnels.js +32 -10
  42. package/lib/generators/product-lookup.js +262 -0
  43. package/lib/generators/product-names.js +195 -0
  44. package/lib/generators/profiles.js +3 -3
  45. package/lib/generators/scd.js +13 -3
  46. package/lib/generators/text.js +17 -4
  47. package/lib/orchestrators/mixpanel-sender.js +244 -204
  48. package/lib/orchestrators/user-loop.js +54 -16
  49. package/lib/templates/phrases.js +473 -16
  50. package/lib/templates/schema.d.ts +173 -0
  51. package/lib/templates/verbose-schema.js +140 -206
  52. package/lib/utils/chart.js +210 -0
  53. package/lib/utils/function-registry.js +285 -0
  54. package/lib/utils/json-evaluator.js +172 -0
  55. package/lib/utils/logger.js +34 -0
  56. package/lib/utils/utils.js +41 -4
  57. package/package.json +12 -21
  58. package/types.d.ts +15 -5
  59. package/dungeons/ai-chat-analytics-ed.js +0 -274
  60. package/dungeons/money2020-ed-also.js +0 -277
  61. package/dungeons/money2020-ed.js +0 -579
  62. package/lib/generators/text-bak-old.js +0 -1121
  63. package/lib/orchestrators/worker-manager.js +0 -203
  64. package/lib/templates/hooks-instructions.txt +0 -434
  65. package/lib/templates/phrases-bak.js +0 -925
  66. package/lib/templates/prompt (old).txt +0 -98
  67. package/lib/templates/schema-instructions.txt +0 -155
  68. package/lib/templates/scratch-dungeon-template.js +0 -116
  69. package/lib/templates/textQuickTest.js +0 -172
  70. package/lib/utils/ai.js +0 -120
  71. package/lib/utils/project.js +0 -166
@@ -2,29 +2,29 @@ import dayjs from "dayjs";
2
2
  import utc from "dayjs/plugin/utc.js";
3
3
  import "dotenv/config";
4
4
  import { weighNumRange, range, date, initChance, exhaust, choose, integer } from "../lib/utils/utils.js";
5
- import { createGenerator, generateBatch } from "../lib/generators/text.js";
5
+ import { createTextGenerator, generateBatch } from "../lib/generators/text.js";
6
6
 
7
- const SEED = "make sdfsme textsdfsdf sdsdfljkhasdflsadf yo";
7
+ const SEED = "SUPER DUPER DANGEROUS BROOO";
8
8
  dayjs.extend(utc);
9
9
  const chance = initChance(SEED);
10
- const num_users = 1_000;
11
- const days = 90;
10
+ const num_users = 8_000;
11
+ const days = 92;
12
12
 
13
13
  /** @typedef {import("../types.js").Dungeon} Dungeon */
14
14
 
15
15
 
16
16
  // Enterprise support ticket generator with keywords and high authenticity
17
- const enterpriseSupportGen = createGenerator({
17
+ const enterpriseSupportGen = createTextGenerator({
18
18
  style: "support",
19
19
  tone: "neg",
20
20
  intensity: "high",
21
21
  formality: "technical",
22
22
  keywords: {
23
- features: ['Dashboard Analytics', 'Export API', 'SSO Login', 'Admin Console', 'User Management'],
24
- products: ['DataViz Pro', 'Enterprise Suite', 'v3.2.1', 'v2.8.4'],
25
- technical: ['CORS error', 'timeout', 'memory leak', 'authentication', 'database'],
26
- errors: ['ERR_CONNECTION_REFUSED', '500 Internal Server', 'TIMEOUT_ERROR', 'AUTH_FAILED'],
27
- competitors: ['Tableau', 'PowerBI', 'Looker', 'Qlik']
23
+ features: ['Dashboard Analytics', 'Export API', 'SSO Login', 'Admin Console', 'User Management', 'SAML Authentication', 'OAuth Integration', 'Multi-Factor Auth', 'Role-Based Access Control', 'Audit Logs', 'Webhook Configuration', 'Data Pipeline', 'Custom Reports', 'Scheduled Exports', 'Real-Time Sync', 'Bulk Import', 'API Rate Limits', 'Usage Metrics', 'Team Permissions', 'Single Sign-On', 'LDAP Integration', 'Data Retention Policies', 'Custom Domains', 'White-Label Branding', 'Advanced Filtering', 'Query Builder', 'Notification Rules', 'Email Templates', 'Workflow Automation', 'Integration Hub', 'Data Validation', 'Field Mapping', 'Schema Management', 'Version Control', 'Rollback Capability', 'Disaster Recovery', 'High Availability', 'Load Balancing', 'Auto-Scaling', 'Performance Monitoring'],
24
+ products: ['DataViz Pro', 'Enterprise Suite', 'v3.2.1', 'v2.8.4', 'Analytics Platform', 'Cloud Dashboard', 'v4.1.0', 'v3.9.2', 'Enterprise Edition', 'Professional Tier', 'Business Intelligence Module', 'Data Warehouse Connector', 'Mobile SDK', 'REST API v2', 'GraphQL Endpoint', 'Legacy Platform', 'Next-Gen Analytics', 'Premium Package', 'Ultimate Plan', 'Advanced Analytics Suite', 'Reporting Engine', 'Data Integration Platform', 'ETL Pipeline', 'Real-Time Analytics', 'Batch Processing Module', 'Stream Processing', 'Visualization Library', 'Dashboard Builder', 'Report Designer'],
25
+ technical: ['CORS error', 'timeout', 'memory leak', 'authentication', 'database', 'connection pooling', 'rate limiting', 'SSL handshake', 'DNS resolution', 'load balancer', 'cache invalidation', 'session timeout', 'deadlock detection', 'query optimization', 'index fragmentation', 'replication lag', 'connection refused', 'network latency', 'packet loss', 'firewall rules', 'proxy configuration', 'certificate expiration', 'API throttling', 'websocket disconnection', 'redis cluster', 'kafka consumer lag', 'database migration', 'schema validation', 'token refresh', 'OAuth flow', 'SAML assertion', 'JWT validation', 'API Gateway', 'reverse proxy', 'CDN distribution', 'geo-replication', 'data consistency', 'eventual consistency', 'distributed transactions', 'circuit breaker', 'retry logic', 'exponential backoff', 'service mesh', 'container orchestration', 'pod scheduling', 'horizontal scaling', 'vertical scaling', 'auto-discovery', 'health checks', 'graceful shutdown'],
26
+ errors: ['ERR_CONNECTION_REFUSED', '500 Internal Server', 'TIMEOUT_ERROR', 'AUTH_FAILED', '502 Bad Gateway', '503 Service Unavailable', '504 Gateway Timeout', '401 Unauthorized', '403 Forbidden', '429 Too Many Requests', 'ECONNRESET', 'ETIMEDOUT', 'ERR_SSL_PROTOCOL', 'DATABASE_CONNECTION_FAILED', 'INVALID_TOKEN', 'SESSION_EXPIRED', 'QUOTA_EXCEEDED', 'CORS_POLICY_VIOLATION', 'VALIDATION_ERROR', 'PERMISSION_DENIED', 'RESOURCE_NOT_FOUND', 'DUPLICATE_ENTRY', 'CONSTRAINT_VIOLATION', 'OUT_OF_MEMORY', 'DISK_FULL', 'MAX_CONNECTIONS_REACHED', 'DEADLOCK_DETECTED', 'TRANSACTION_ROLLBACK', 'REPLICATION_ERROR', 'CLUSTER_SPLIT_BRAIN', 'FAILOVER_TRIGGERED', 'BACKUP_FAILED', 'RESTORE_ERROR', 'MIGRATION_FAILED', 'SCHEMA_MISMATCH', 'VERSION_CONFLICT'],
27
+ competitors: ['Tableau', 'PowerBI', 'Looker', 'Qlik', 'Domo', 'Sisense', 'ThoughtSpot', 'Mode Analytics', 'Metabase', 'Redash', 'Chartio', 'Periscope Data', 'Google Data Studio', 'Amazon QuickSight', 'IBM Cognos', 'SAP Analytics', 'Oracle BI', 'MicroStrategy', 'Yellowfin', 'Birst', 'Alteryx', 'Dataiku', 'Databricks', 'Snowflake', 'BigQuery', 'Redshift', 'Azure Synapse', 'Splunk', 'New Relic', 'Datadog']
28
28
  },
29
29
  mixedSentiment: true,
30
30
  authenticityLevel: 0.7,
@@ -32,21 +32,20 @@ const enterpriseSupportGen = createGenerator({
32
32
  typoRate: 0.02,
33
33
  specificityLevel: 0.8,
34
34
  min: 80,
35
- max: 300,
35
+ max: 254,
36
36
  includeMetadata: false,
37
- // System is now always optimized for speed + uniqueness
38
37
  });
39
38
 
40
39
  // Casual review generator with typos and mixed sentiment
41
- const casualReviewGen = createGenerator({
40
+ const casualReviewGen = createTextGenerator({
42
41
  style: "review",
43
42
  tone: "pos",
44
43
  intensity: "medium",
45
44
  formality: "casual",
46
45
  keywords: {
47
- features: ['user interface', 'mobile app', 'notifications', 'search function'],
48
- products: ['the app', 'this tool', 'the platform'],
49
- metrics: ['response time', 'uptime', 'user experience']
46
+ features: ['user interface', 'mobile app', 'notifications', 'search function', 'dark mode', 'offline mode', 'sync feature', 'sharing options', 'customization', 'templates', 'shortcuts', 'filters', 'drag and drop', 'auto-save', 'undo feature', 'export options', 'integrations', 'widgets', 'dashboard', 'settings panel', 'navigation menu', 'quick actions', 'gesture controls', 'voice commands', 'keyboard shortcuts', 'batch operations', 'smart suggestions', 'auto-complete', 'real-time updates', 'collaboration tools', 'comment threads', 'version history', 'file upload', 'cloud storage', 'cross-platform sync', 'responsive design', 'accessibility features', 'performance', 'loading speed', 'battery usage', 'data usage', 'privacy controls', 'security settings', 'backup and restore', 'multi-language support', 'localization', 'themes', 'layouts', 'custom views', 'saved filters'],
47
+ products: ['the app', 'this tool', 'the platform', 'this software', 'the service', 'the product', 'this solution', 'the system', 'the dashboard', 'the interface', 'the application', 'the website', 'the mobile version', 'the desktop app', 'the web app', 'this program', 'the extension', 'the plugin', 'the widget', 'the suite', 'the ecosystem', 'the workspace', 'the portal', 'the client', 'the UI', 'the experience', 'the offering', 'the tool set'],
48
+ metrics: ['response time', 'uptime', 'user experience', 'ease of use', 'learning curve', 'reliability', 'stability', 'speed', 'performance', 'load times', 'smoothness', 'intuitiveness', 'simplicity', 'flexibility', 'customizability', 'value for money', 'customer support', 'documentation quality', 'feature completeness', 'design quality', 'mobile experience', 'desktop experience', 'integration quality', 'data accuracy', 'reporting quality', 'usability', 'accessibility', 'efficiency', 'productivity gains', 'time savings', 'error rates', 'crash frequency', 'bug density', 'update frequency', 'feature velocity', 'support responsiveness', 'community engagement', 'ecosystem maturity']
50
49
  },
51
50
  mixedSentiment: true,
52
51
  authenticityLevel: 0.4,
@@ -59,32 +58,32 @@ const casualReviewGen = createGenerator({
59
58
  });
60
59
 
61
60
  // Technical forum posts with advanced features
62
- const technicalForumGen = createGenerator({
61
+ const technicalForumGen = createTextGenerator({
63
62
  style: "forum",
64
63
  tone: "neu",
65
64
  formality: "technical",
66
65
  keywords: {
67
- technical: ['REST API', 'GraphQL', 'webhooks', 'microservices', 'cloud infrastructure'],
68
- versions: ['v1.2.3', 'latest', 'beta', 'stable release'],
69
- errors: ['404 Not Found', 'Rate Limiting', 'SSL Certificate']
66
+ technical: ['REST API', 'GraphQL', 'webhooks', 'microservices', 'cloud infrastructure', 'Kubernetes', 'Docker containers', 'CI/CD pipeline', 'serverless functions', 'Lambda', 'API Gateway', 'load balancing', 'horizontal scaling', 'database sharding', 'caching layer', 'message queue', 'event streaming', 'pub/sub', 'service mesh', 'OAuth2', 'JWT tokens', 'CORS policy', 'WebSocket', 'gRPC', 'Protocol Buffers', 'MongoDB', 'PostgreSQL', 'Redis', 'Elasticsearch', 'S3 bucket', 'CloudFront', 'CDN', 'DNS records', 'SSL/TLS', 'reverse proxy', 'nginx', 'Apache', 'auto-scaling', 'VPC', 'subnet', 'security groups', 'IAM roles', 'environment variables', 'config management', 'secrets manager', 'monitoring', 'logging', 'distributed tracing', 'metrics', 'alerting', 'APM', 'observability', 'infrastructure as code', 'Terraform', 'CloudFormation', 'Ansible', 'Chef', 'Puppet', 'Jenkins', 'GitHub Actions', 'GitLab CI', 'CircleCI', 'Travis CI', 'code review', 'pull requests', 'merge strategies', 'branching model', 'git workflow', 'semantic versioning', 'changelog', 'release notes', 'feature flags', 'canary deployment', 'blue-green deployment', 'rolling updates'],
67
+ versions: ['v1.2.3', 'latest', 'beta', 'stable release', 'v2.0.0', 'v3.1.4', 'v4.0.0-rc1', 'LTS', 'nightly build', 'canary', 'alpha', 'RC2', 'stable', 'edge', 'preview', '1.x', '2.x', '3.x', 'legacy', 'deprecated', 'EOL', 'current', 'next', 'experimental', 'mainline', 'development', 'production', 'staging', 'QA', 'hotfix', 'patch', 'minor', 'major', 'breaking'],
68
+ errors: ['404 Not Found', 'Rate Limiting', 'SSL Certificate', '502 Bad Gateway', '503 Service Unavailable', '401 Unauthorized', '403 Forbidden', '408 Request Timeout', '413 Payload Too Large', '500 Internal Server Error', 'CORS error', 'DNS resolution failed', 'connection timeout', 'read timeout', 'write timeout', 'circuit breaker', 'health check failed', 'deployment failed', 'build error', 'test failure', 'merge conflict', 'dependency error', 'version mismatch', 'breaking change', 'backward incompatible', 'compilation error', 'runtime exception', 'null pointer', 'race condition', 'deadlock', 'memory exhaustion', 'CPU throttling', 'disk I/O', 'network partition', 'split brain', 'consensus failure', 'quorum lost']
70
69
  },
71
70
  userPersona: true,
72
71
  timestamps: true,
73
72
  authenticityLevel: 0.6,
74
73
  specificityLevel: 0.9,
75
74
  min: 50,
76
- max: 250,
75
+ max: 254,
77
76
  includeMetadata: false
78
77
  });
79
78
 
80
79
  // Search queries with realistic typos
81
- const searchQueryGen = createGenerator({
80
+ const searchQueryGen = createTextGenerator({
82
81
  style: "search",
83
82
  tone: "neu",
84
83
  formality: "casual",
85
84
  keywords: {
86
- features: ['export data', 'user settings', 'help docs', 'pricing'],
87
- technical: ['API documentation', 'integration guide', 'troubleshooting']
85
+ features: ['export data', 'user settings', 'help docs', 'pricing', 'billing', 'account settings', 'password reset', 'two factor authentication', 'team management', 'permissions', 'API keys', 'webhooks', 'integrations', 'custom fields', 'bulk upload', 'import CSV', 'export PDF', 'download report', 'sharing options', 'collaboration', 'notifications', 'email preferences', 'mobile app', 'desktop app', 'browser extension', 'keyboard shortcuts', 'templates', 'automation', 'workflows', 'filters', 'search', 'sorting', 'grouping', 'charts', 'dashboards', 'analytics', 'reports', 'insights', 'trends', 'forecasting', 'benchmarks', 'goals', 'KPIs', 'metrics', 'data visualization', 'custom reports', 'scheduled reports', 'alerts', 'reminders', 'tasks', 'projects', 'files', 'attachments', 'comments', 'mentions', 'tags', 'labels', 'categories', 'folders', 'archive', 'trash', 'restore', 'backup', 'export', 'import', 'migrate', 'sync', 'offline access', 'dark theme', 'language settings', 'time zone', 'date format', 'currency', 'units', 'accessibility', 'privacy', 'security', 'compliance', 'audit trail', 'version history', 'changelog'],
86
+ technical: ['API documentation', 'integration guide', 'troubleshooting', 'SDK reference', 'REST API', 'GraphQL', 'authentication', 'OAuth', 'SSO setup', 'SAML', 'rate limits', 'error codes', 'status page', 'changelog', 'release notes', 'migration guide', 'upgrade path', 'deprecation notice', 'API versioning', 'webhooks setup', 'callback URL', 'payload format', 'request headers', 'response codes', 'pagination', 'filtering', 'sorting API', 'batch endpoints', 'async operations', 'retry logic', 'timeout settings', 'CORS configuration', 'IP whitelist', 'security best practices', 'code examples', 'sample requests', 'postman collection', 'curl commands', 'client libraries', 'npm packages', 'pip packages', 'gem install', 'maven dependency', 'nuget package', 'composer require', 'quickstart tutorial', 'getting started', 'hello world', 'first API call', 'authentication flow', 'token management', 'refresh tokens', 'scopes', 'permissions', 'roles', 'rate limit handling', 'error handling', 'best practices', 'common pitfalls', 'FAQ', 'support forum']
88
87
  },
89
88
  typos: true,
90
89
  typoRate: 0.05,
@@ -94,13 +93,13 @@ const searchQueryGen = createGenerator({
94
93
  });
95
94
 
96
95
  // Business feedback with professional tone
97
- const businessFeedbackGen = createGenerator({
96
+ const businessFeedbackGen = createTextGenerator({
98
97
  style: "feedback",
99
98
  tone: "neu",
100
99
  formality: "business",
101
100
  keywords: {
102
- metrics: ['ROI', 'efficiency', 'cost savings', 'productivity'],
103
- features: ['reporting', 'analytics', 'integration capabilities']
101
+ metrics: ['ROI', 'efficiency', 'cost savings', 'productivity', 'revenue growth', 'profit margin', 'conversion rate', 'customer acquisition cost', 'lifetime value', 'churn rate', 'retention rate', 'engagement rate', 'adoption rate', 'time to value', 'operational efficiency', 'resource utilization', 'cost per transaction', 'revenue per user', 'gross margin', 'net promoter score', 'customer satisfaction', 'employee satisfaction', 'market share', 'growth rate', 'scalability', 'performance metrics', 'KPI achievement', 'goal attainment', 'benchmark comparison', 'industry standards', 'competitive advantage', 'process improvement', 'quality metrics', 'error rate', 'uptime SLA', 'response time SLA', 'mean time to resolution', 'first contact resolution', 'customer effort score', 'employee Net Promoter Score', 'revenue per employee', 'operating margin', 'EBITDA', 'cash flow', 'burn rate', 'runway', 'payback period', 'IRR', 'NPV', 'break-even analysis', 'variance analysis', 'trend analysis', 'cohort analysis', 'funnel conversion', 'pipeline velocity', 'win rate', 'average deal size', 'sales cycle length', 'quota attainment', 'forecast accuracy'],
102
+ features: ['reporting', 'analytics', 'integration capabilities', 'dashboard customization', 'automated workflows', 'data visualization', 'forecasting tools', 'predictive analytics', 'real-time monitoring', 'alert system', 'custom reports', 'scheduled reports', 'export functionality', 'API access', 'bulk operations', 'team collaboration', 'role-based access', 'audit trails', 'compliance features', 'data security', 'backup and recovery', 'scalability', 'mobile access', 'offline capabilities', 'third-party integrations', 'CRM integration', 'ERP integration', 'accounting software', 'payment gateways', 'marketing tools', 'customer support', 'training resources', 'documentation', 'professional services', 'dedicated support', 'white-glove onboarding', 'custom development', 'consulting services', 'implementation support', 'change management', 'data migration', 'system integration', 'workflow automation', 'process optimization', 'business intelligence', 'advanced analytics', 'machine learning', 'AI capabilities', 'natural language processing', 'sentiment analysis', 'anomaly detection', 'pattern recognition']
104
103
  },
105
104
  authenticityLevel: 0.3,
106
105
  specificityLevel: 0.7,
@@ -110,13 +109,13 @@ const businessFeedbackGen = createGenerator({
110
109
  });
111
110
 
112
111
  // Chat messages with high authenticity and typos
113
- const chatMessageGen = createGenerator({
112
+ const chatMessageGen = createTextGenerator({
114
113
  style: "chat",
115
114
  tone: "neu",
116
115
  formality: "casual",
117
116
  keywords: {
118
- products: ['the app', 'dashboard', 'mobile version'],
119
- features: ['notifications', 'sync', 'offline mode']
117
+ products: ['the app', 'dashboard', 'mobile version', 'desktop app', 'web interface', 'admin panel', 'user portal', 'control center', 'main screen', 'home page', 'settings menu', 'profile page', 'analytics view', 'reports section', 'tools menu', 'workspace', 'project view', 'task board', 'calendar', 'inbox', 'activity feed', 'timeline', 'kanban board', 'list view', 'grid view', 'table view', 'card view', 'sidebar', 'toolbar', 'command palette', 'search bar'],
118
+ features: ['notifications', 'sync', 'offline mode', 'dark theme', 'search bar', 'filters', 'sorting', 'export', 'import', 'sharing', 'comments', 'mentions', 'attachments', 'tags', 'labels', 'priorities', 'due dates', 'reminders', 'templates', 'shortcuts', 'quick actions', 'bulk edit', 'drag and drop', 'auto-save', 'undo', 'redo', 'copy', 'paste', 'duplicate', 'archive', 'delete', 'restore', 'permissions', 'privacy settings', 'integrations', 'plugins', 'extensions', 'widgets', 'customization', 'themes', 'layouts', 'columns', 'rows', 'groups', 'sections', 'tabs', 'panels', 'modals', 'drawers', 'tooltips', 'popups', 'dropdowns', 'menus', 'buttons', 'icons', 'avatars', 'badges', 'chips', 'cards', 'lists', 'tables', 'forms', 'inputs', 'selects', 'checkboxes', 'radios', 'switches', 'sliders', 'pickers', 'calendars']
120
119
  },
121
120
  mixedSentiment: true,
122
121
  authenticityLevel: 0.8,
@@ -129,14 +128,14 @@ const chatMessageGen = createGenerator({
129
128
  });
130
129
 
131
130
  // Comment generator for charity/fundraiser/wedding sites
132
- const charityCommentGen = createGenerator({
131
+ const charityCommentGen = createTextGenerator({
133
132
  style: "comments",
134
133
  tone: "pos",
135
134
  formality: "casual",
136
135
  keywords: {
137
- causes: ['medical expenses', 'education fund', 'disaster relief', 'animal rescue'],
138
- events: ['wedding', 'graduation', 'celebration', 'memorial'],
139
- emotions: ['inspiring', 'heartwarming', 'touching', 'amazing']
136
+ causes: ['medical expenses', 'education fund', 'disaster relief', 'animal rescue', 'cancer treatment', 'surgery costs', 'hospital bills', 'therapy sessions', 'medication costs', 'emergency fund', 'family support', 'rebuilding homes', 'fire victims', 'flood relief', 'hurricane recovery', 'earthquake aid', 'homeless shelter', 'food bank', 'clean water', 'orphanage', 'scholarship fund', 'school supplies', 'music program', 'sports team', 'library books', 'art classes', 'STEM education', 'vocational training', 'wildlife conservation', 'pet adoption', 'veterinary care', 'sanctuary support', 'endangered species', 'habitat restoration', 'community garden', 'youth programs', 'senior care', 'veteran support', 'mental health', 'addiction recovery', 'domestic violence shelter', 'refugee assistance', 'clean energy', 'environmental protection', 'climate action', 'ocean cleanup', 'reforestation', 'bee preservation', 'sustainable farming', 'fair trade', 'microfinance', 'poverty alleviation', 'hunger relief', 'literacy programs', 'healthcare access', 'vaccine distribution', 'maternal health', 'child welfare', 'disability support', 'autism awareness', 'Alzheimer research', 'diabetes foundation', 'heart disease', 'rare diseases', 'transplant fund', 'burn victims', 'spinal injury', 'ALS research', 'MS foundation', 'Parkinson support'],
137
+ events: ['wedding', 'graduation', 'celebration', 'memorial', 'anniversary', 'birthday', 'retirement', 'baby shower', 'baptism', 'bar mitzvah', 'quinceañera', 'engagement', 'homecoming', 'reunion', 'fundraiser', 'gala', 'benefit concert', 'charity run', 'walkathon', 'bake sale', 'auction', 'raffle', 'tribute', 'remembrance', 'celebration of life', 'milestone', 'achievement', 'honor', 'recognition', 'award ceremony', 'dedication', 'inauguration', 'opening ceremony', 'grand opening', 'ribbon cutting', 'groundbreaking', 'cornerstone laying', 'time capsule', 'vigil', 'candlelight service', 'prayer service', 'blessing ceremony', 'consecration', 'ordination', 'confirmation', 'first communion', 'christening', 'naming ceremony', 'baby blessing'],
138
+ emotions: ['inspiring', 'heartwarming', 'touching', 'amazing', 'beautiful', 'wonderful', 'incredible', 'uplifting', 'moving', 'powerful', 'meaningful', 'blessed', 'grateful', 'thankful', 'appreciative', 'hopeful', 'encouraging', 'supportive', 'loving', 'caring', 'compassionate', 'generous', 'kind', 'thoughtful', 'selfless', 'brave', 'courageous', 'strong', 'resilient', 'determined', 'faithful', 'spiritual', 'prayerful', 'miraculous', 'life-changing', 'transformative', 'impactful', 'significant', 'important', 'special', 'memorable', 'unforgettable', 'precious', 'cherished', 'treasured', 'beloved', 'dear', 'valued', 'respected', 'honored', 'admired', 'celebrated', 'praised', 'acclaimed', 'commended', 'recognized', 'acknowledged', 'appreciated', 'esteemed', 'revered', 'venerated', 'hallowed', 'sacred', 'holy', 'divine', 'heavenly', 'angelic', 'saintly', 'virtuous', 'noble', 'dignified', 'graceful', 'elegant', 'refined', 'cultured', 'sophisticated', 'distinguished', 'eminent', 'illustrious', 'renowned', 'celebrated', 'famous', 'notable', 'prominent', 'leading', 'foremost', 'preeminent', 'outstanding', 'exceptional', 'extraordinary', 'remarkable', 'phenomenal', 'spectacular', 'stupendous', 'magnificent', 'majestic', 'grand', 'glorious', 'sublime', 'exquisite', 'superb', 'splendid', 'marvelous', 'fabulous', 'terrific', 'fantastic']
140
139
  },
141
140
  mixedSentiment: false,
142
141
  authenticityLevel: 0.9,
@@ -148,14 +147,14 @@ const charityCommentGen = createGenerator({
148
147
  });
149
148
 
150
149
  // Tweet generator for social media announcements
151
- const socialTweetGen = createGenerator({
150
+ const socialTweetGen = createTextGenerator({
152
151
  style: "tweet",
153
152
  tone: "neu",
154
153
  formality: "casual",
155
154
  keywords: {
156
- announcements: ['new feature', 'product launch', 'company news', 'milestone'],
157
- hashtags: ['#startup', '#tech', '#innovation', '#community'],
158
- mentions: ['@followers', '@team', '@customers']
155
+ announcements: ['new feature', 'product launch', 'company news', 'milestone', 'breaking news', 'just launched', 'now available', 'coming soon', 'sneak peek', 'behind the scenes', 'exclusive', 'limited time', 'special offer', 'big update', 'major release', 'version 2.0', 'redesign', 'rebrand', 'partnership', 'collaboration', 'acquisition', 'funding round', 'growth milestone', '10k users', '100k signups', 'went viral', 'trending', 'featured in', 'award winning', 'recognition', 'celebrating', 'thank you', 'shoutout', 'appreciation post', 'team highlight', 'customer story', 'success story', 'case study', 'testimonial', 'review', 'feedback', 'poll', 'question', 'discussion', 'hot take', 'unpopular opinion', 'PSA', 'reminder', 'tip', 'hack', 'tutorial', 'how-to', 'guide', 'resource', 'announcement', 'press release', 'media coverage', 'interview', 'podcast', 'webinar', 'event', 'conference', 'meetup', 'workshop', 'hackathon', 'demo day', 'pitch competition', 'startup weekend', 'accelerator', 'incubator', 'seed funding', 'Series A', 'venture capital', 'angel investment', 'bootstrapped', 'profitable', 'revenue', 'ARR', 'MRR', 'growth rate', 'user acquisition', 'retention rate', 'churn rate', 'conversion rate', 'engagement metrics', 'product-market fit', 'traction', 'momentum', 'scaling', 'expansion', 'international launch', 'new market', 'vertical', 'pivot', 'iteration', 'MVP', 'beta testing', 'alpha release', 'public launch', 'general availability', 'early access', 'waitlist', 'invite only', 'closed beta', 'open beta'],
156
+ hashtags: ['#startup', '#tech', '#innovation', '#community', '#SaaS', '#B2B', '#B2C', '#ProductHunt', '#IndieHacker', '#Entrepreneur', '#Founder', '#CEO', '#CTO', '#Developer', '#Design', '#UX', '#UI', '#Growth', '#Marketing', '#Sales', '#CustomerSuccess', '#Support', '#Analytics', '#Data', '#AI', '#ML', '#Cloud', '#API', '#Mobile', '#Web', '#Remote', '#WFH', '#Productivity', '#Tools', '#Software', '#Platform', '#App', '#Launch', '#BuildInPublic', '#Makers', '#Creators', '#SmallBusiness', '#Enterprise', '#Digital', '#Transformation', '#Future', '#Trends', '#News', '#Update', '#Technology', '#Engineering', '#Product', '#Business', '#Startup Life', '#Founder Journey', '#Entrepreneurship', '#Innovation', '#Disruption', '#Game Changer', '#Industry', '#Market', '#Competition', '#Strategy', '#Vision', '#Mission', '#Values', '#Culture', '#Team', '#Hiring', '#Jobs', '#Careers', '#Talent', '#Recruitment', '#HR', '#People', '#Leadership', '#Management', '#Coaching', '#Mentoring', '#Advising', '#Investing', '#VC', '#Angel', '#Funding', '#Capital', '#Money', '#Finance', '#Revenue', '#Profit', '#Growth', '#Scale', '#Metrics', '#KPIs', '#OKRs', '#Goals', '#Success', '#Win', '#Achievement', '#Milestone', '#Celebration', '#Announcement', '#Release', '#Feature', '#Update', '#Beta', '#Alpha', '#Preview', '#Sneak Peek', '#Coming Soon', '#Launch Day', '#Go Live', '#Ship It', '#Deploy', '#CI CD', '#DevOps', '#Agile', '#Scrum', '#Kanban', '#Sprint', '#Iteration', '#MVP', '#PMF', '#Traction', '#Momentum', '#Pivot', '#Iterate', '#Learn', '#Build', '#Test', '#Measure', '#Optimize', '#Improve', '#Enhance', '#Upgrade', '#Refactor', '#Rewrite', '#Redesign', '#Rebrand', '#Refresh', '#Modernize', '#Transform', '#Evolve', '#Adapt', '#Change', '#Progress', '#Forward', '#Next', '#Future', '#Tomorrow', '#Today', '#Now', '#Live', '#Active', '#Online', '#Available', '#Ready', '#Set', '#Go'],
157
+ mentions: ['@followers', '@team', '@customers', '@users', '@community', '@fans', '@supporters', '@partners', '@investors', '@advisors', '@mentors', '@influencers', '@press', '@media', '@industry', '@competitors', '@friends', '@colleagues', '@experts', '@leaders', '@pioneers', '@innovators', '@builders', '@creators', '@makers', '@founders', '@entrepreneurs', '@developers', '@designers', '@engineers', '@marketers', '@sales', '@support', '@success', '@product', '@growth', '@data', '@analytics', '@AI', '@ML', '@cloud', '@API', '@mobile', '@web', '@platform', '@ecosystem', '@network', '@alliance', '@consortium', '@association', '@organization', '@foundation', '@institute', '@university', '@research', '@lab', '@studio', '@agency', '@firm', '@company', '@corporation', '@enterprise', '@business', '@startup', '@scaleup', '@unicorn', '@decacorn', '#hectocorn', '@IPO', '@acquisition', '@merger', '@exit', '@success']
159
158
  },
160
159
  mixedSentiment: true,
161
160
  authenticityLevel: 0.7,
@@ -168,30 +167,30 @@ const socialTweetGen = createGenerator({
168
167
  });
169
168
 
170
169
  // Email communication generator
171
- const emailGen = createGenerator({
170
+ const emailGen = createTextGenerator({
172
171
  style: "email",
173
172
  tone: "neu",
174
173
  formality: "business",
175
174
  keywords: {
176
- features: ['account management', 'billing', 'subscription'],
177
- products: ['Enterprise Plan', 'Pro Account']
175
+ features: ['account management', 'billing', 'subscription', 'payment method', 'invoice', 'receipt', 'credit card', 'auto-renewal', 'cancellation', 'refund', 'upgrade', 'downgrade', 'plan change', 'usage limits', 'overage charges', 'discount code', 'promo code', 'trial extension', 'grace period', 'payment failed', 'card expired', 'update payment', 'billing cycle', 'annual plan', 'monthly plan', 'enterprise pricing', 'volume discount', 'custom quote', 'purchase order', 'tax exempt', 'VAT', 'sales tax', 'billing address', 'company details', 'account settings', 'security settings', 'privacy settings', 'notification preferences', 'email preferences', 'team members', 'user roles', 'permissions', 'access control', 'API keys', 'webhooks', 'integrations', 'data export', 'account closure', 'data deletion', 'GDPR compliance', 'data portability', 'right to be forgotten', 'consent management', 'opt-in', 'opt-out', 'unsubscribe', 'email frequency', 'digest settings', 'real-time alerts', 'summary emails', 'weekly reports', 'monthly statements', 'quarterly reviews', 'annual summaries'],
176
+ products: ['Enterprise Plan', 'Pro Account', 'Business Plan', 'Premium Subscription', 'Starter Package', 'Professional Tier', 'Ultimate Edition', 'Team Plan', 'Individual Plan', 'Free Trial', 'Paid Plan', 'Custom Package', 'Add-on Services', 'Premium Features', 'Advanced Analytics', 'Priority Support', 'Dedicated Account Manager', 'SLA Agreement', 'Service Level', 'Support Package', 'Training Program', 'Onboarding Service', 'Consulting Hours', 'Implementation Support', 'Migration Assistance', 'Data Integration', 'Custom Development', 'White-Label Solution', 'Reseller Program', 'Partner Plan', 'Affiliate Program', 'Referral Rewards', 'Loyalty Benefits', 'Early Adopter', 'Beta Access', 'Preview Program']
178
177
  },
179
178
  authenticityLevel: 0.5,
180
179
  userPersona: true,
181
180
  min: 60,
182
- max: 300,
181
+ max: 254,
183
182
  includeMetadata: false
184
183
  });
185
184
 
186
185
  // Social Media Generators
187
- const twitterGen = createGenerator({
186
+ const twitterGen = createTextGenerator({
188
187
  style: "chat",
189
188
  tone: "neu",
190
189
  formality: "casual",
191
190
  keywords: {
192
- products: ['@company', 'the app', 'your platform'],
193
- features: ['new update', 'dark mode', 'mobile app', 'API'],
194
- hashtags: ['#ProductHunt', '#SaaS', '#TechReview', '#UserExperience']
191
+ products: ['@company', 'the app', 'your platform', '@brand', 'the service', '@product', 'the tool', '@startup', 'the software', '@team', 'the dashboard', '@support', 'the website', '@api', 'the mobile app', '@enterprise', 'the solution', '@cloud', 'the system', '@tech', 'the interface', '@dev', 'the platform', '@community', 'the product', '@official', 'the app', '@business', 'the suite', '@premium'],
192
+ features: ['new update', 'dark mode', 'mobile app', 'API', 'latest release', 'version 2.0', 'beta feature', 'early access', 'preview', 'redesign', 'UI refresh', 'performance improvements', 'bug fixes', 'security patch', 'new integration', 'webhook support', 'OAuth login', 'SSO', '2FA', 'export feature', 'bulk operations', 'advanced search', 'custom filters', 'real-time sync', 'offline mode', 'collaboration tools', 'team features', 'admin panel', 'analytics dashboard', 'reporting', 'automation', 'workflows', 'templates', 'shortcuts', 'notifications', 'email alerts', 'push notifications', 'desktop app', 'browser extension', 'CLI tool', 'SDK', 'REST API', 'GraphQL', 'documentation', 'changelog', 'release notes', 'roadmap', 'feature request', 'community feedback', 'user voice', 'product board', 'beta program', 'alpha testing', 'dogfooding', 'user testing', 'A/B testing', 'feature flag', 'gradual rollout', 'soft launch', 'public beta', 'general availability'],
193
+ hashtags: ['#ProductHunt', '#SaaS', '#TechReview', '#UserExperience', '#UX', '#UI', '#Design', '#Tech', '#Startup', '#IndieHacker', '#BuildInPublic', '#Founder', '#Entrepreneur', '#Developer', '#Programming', '#Code', '#WebDev', '#MobileDev', '#API', '#Cloud', '#DevTools', '#Productivity', '#Tools', '#Software', '#App', '#Platform', '#Innovation', '#Digital', '#Technology', '#Engineering', '#Product', '#Launch', '#Release', '#Update', '#Feature', '#Beta', '#Preview', '#Review', '#Feedback', '#CustomerSuccess', '#Support', '#Community', '#OpenSource', '#GitHub', '#JavaScript', '#TypeScript', '#React', '#Vue', '#Angular', '#Node', '#Python', '#Go', '#Rust', '#Swift', '#Kotlin', '#Flutter', '#ReactNative', '#iOS', '#Android', '#macOS', '#Windows', '#Linux', '#DevOps', '#CI/CD', '#Kubernetes', '#Docker', '#AWS', '#Azure', '#GCP', '#Firebase', '#Supabase', '#Vercel', '#Netlify', '#Cloudflare', '#MongoDB', '#PostgreSQL', '#MySQL', '#Redis', '#GraphQL', '#REST', '#gRPC', '#WebSocket', '#Serverless', '#Edge', '#JAMstack', '#Headless', '#NoCode', '#LowCode']
195
194
  },
196
195
  mixedSentiment: true,
197
196
  authenticityLevel: 0.9,
@@ -199,35 +198,35 @@ const twitterGen = createGenerator({
199
198
  typoRate: 0.06,
200
199
  sentimentDrift: 0.5,
201
200
  min: 10,
202
- max: 280, // Twitter character limit
201
+ max: 254, // Twitter character limit
203
202
  includeMetadata: false
204
203
  });
205
204
 
206
- const linkedinGen = createGenerator({
205
+ const linkedinGen = createTextGenerator({
207
206
  style: "feedback",
208
207
  tone: "neu",
209
208
  formality: "business",
210
209
  keywords: {
211
- business: ['ROI', 'team productivity', 'workflow efficiency', 'digital transformation'],
212
- products: ['this solution', 'the platform', 'our implementation'],
213
- metrics: ['25% time savings', '40% faster', 'reduced costs', 'improved outcomes']
210
+ business: ['ROI', 'team productivity', 'workflow efficiency', 'digital transformation', 'operational excellence', 'strategic initiative', 'business intelligence', 'data-driven decisions', 'competitive advantage', 'market leadership', 'customer experience', 'employee engagement', 'talent acquisition', 'organizational growth', 'process optimization', 'cost reduction', 'revenue growth', 'profit margins', 'market share', 'brand value', 'stakeholder value', 'sustainable growth', 'innovation culture', 'agile methodology', 'lean operations', 'six sigma', 'continuous improvement', 'change management', 'risk management', 'compliance', 'governance', 'cybersecurity', 'data privacy', 'cloud migration', 'automation', 'AI adoption', 'machine learning', 'predictive analytics', 'business model', 'value proposition', 'go-to-market strategy', 'sales enablement', 'marketing automation', 'customer retention', 'lifetime value', 'acquisition cost', 'conversion optimization', 'funnel metrics', 'pipeline management', 'revenue operations', 'customer success', 'account expansion', 'upsell', 'cross-sell', 'customer health score', 'product-led growth', 'community-led growth', 'network effects', 'viral coefficient', 'referral programs', 'partnership ecosystem', 'channel strategy', 'direct sales', 'inside sales', 'field sales', 'enterprise sales', 'mid-market', 'SMB', 'self-serve', 'product qualified leads', 'sales qualified leads', 'marketing qualified leads'],
211
+ products: ['this solution', 'the platform', 'our implementation', 'enterprise software', 'SaaS platform', 'cloud solution', 'business tool', 'productivity suite', 'analytics platform', 'CRM system', 'ERP solution', 'collaboration tool', 'project management', 'workflow automation', 'data warehouse', 'BI dashboard', 'reporting tool', 'integration platform', 'API solution', 'mobile app', 'web application', 'infrastructure', 'technology stack', 'digital ecosystem', 'unified platform', 'all-in-one solution', 'best-of-breed', 'enterprise grade', 'mission critical', 'business critical', 'strategic system', 'core platform', 'foundational technology', 'enabling platform', 'transformation engine'],
212
+ metrics: ['25% time savings', '40% faster', 'reduced costs', 'improved outcomes', '3x ROI', '50% efficiency gain', '60% cost reduction', '2x revenue growth', '35% productivity boost', '45% faster time-to-market', '70% error reduction', '80% automation rate', '90% customer satisfaction', '95% uptime', '99.9% reliability', '10x scale', '5-star rating', 'industry-leading', 'best-in-class', 'award-winning', 'certified', 'proven results', 'measurable impact', 'significant improvement', 'dramatic increase', 'substantial savings', 'notable enhancement', 'remarkable transformation', 'exceptional performance', 'outstanding results', 'impressive growth', 'record-breaking', 'unprecedented success', 'game-changing', 'paradigm shift', 'breakthrough innovation', 'disruptive technology', 'cutting-edge solution', 'next-generation platform', 'future-proof architecture', 'scalable infrastructure', 'flexible framework', 'modular design', 'extensible platform', 'API-first approach', 'microservices architecture', 'event-driven design', 'real-time processing', 'batch processing', 'hybrid approach', 'multi-tenant', 'single-tenant', 'dedicated instance', 'shared infrastructure', 'private cloud', 'public cloud', 'hybrid cloud', 'multi-cloud', 'cloud-native', 'cloud-agnostic', 'on-premise', 'hybrid deployment', 'distributed system']
214
213
  },
215
214
  authenticityLevel: 0.4,
216
215
  specificityLevel: 0.8,
217
216
  userPersona: true,
218
217
  min: 50,
219
- max: 400,
218
+ max: 254,
220
219
  includeMetadata: false
221
220
  });
222
221
 
223
- const redditGen = createGenerator({
222
+ const redditGen = createTextGenerator({
224
223
  style: "forum",
225
224
  tone: "neu",
226
225
  formality: "casual",
227
226
  keywords: {
228
- reddit: ['UPDATE:', 'TL;DR', 'Edit:', 'Anyone else?', 'PSA'],
229
- products: ['this tool', 'the service', 'their platform'],
230
- community: ['r/SaaS', 'fellow devs', 'community']
227
+ reddit: ['UPDATE:', 'TL;DR', 'Edit:', 'Anyone else?', 'PSA', 'HELP', 'URGENT', 'Story time', 'Long post ahead', 'Sorry for formatting', 'On mobile', 'Throwaway account', 'First time posting', 'Not sure if this belongs here', 'Mods delete if not allowed', 'Cross-posted from', 'Shout out to', 'Thanks in advance', 'Will update later', 'UPDATE 2:', 'FINAL UPDATE', 'SOLVED', 'Still broken', 'Obligatory', 'RIP inbox', 'Thanks kind stranger', 'This blew up', 'Wow front page', 'Thanks for the gold', 'Award speech edit', 'Hijacking top comment', 'Came here to say this', 'This', 'Underrated comment', 'Found the', 'Username checks out', 'Take my upvote', 'Have my poor mans gold', 'So much this', 'Literally this', 'Came to the comments for this', 'Not disappointed', 'Doing gods work', 'Real MVP', 'The hero we need', 'You sir are a gentleman and a scholar', 'Take my energy', 'Instructions unclear', 'Task failed successfully', 'Perfectly balanced', 'As all things should be', 'I see this as an absolute win', 'They had us in the first half', 'Not gonna lie', 'Ngl', 'Fr fr', 'No cap', 'Lowkey', 'Highkey', 'Deadass', 'Bet', 'Facts', 'Big if true', 'Source?', 'Citation needed', 'Sauce?', 'This guy', 'Username relevant', 'Flair checks out', 'Comment checks out', 'Math checks out', 'Story checks out', 'Seems legit', 'Can confirm', 'Can verify', 'As a', 'I too'],
228
+ products: ['this tool', 'the service', 'their platform', 'the app', 'the software', 'the program', 'the site', 'the website', 'the API', 'the plugin', 'the extension', 'the integration', 'the framework', 'the library', 'the package', 'the solution', 'the product', 'the system', 'open source alternative', 'paid version', 'free tier', 'premium plan', 'enterprise edition', 'self-hosted', 'cloud-based', 'web-based', 'desktop app', 'mobile app', 'command line', 'GUI version', 'CLI version', 'the dashboard', 'the interface', 'the UI', 'the UX', 'the design', 'the implementation', 'the deployment', 'the setup', 'the config', 'the docs', 'the documentation', 'the tutorial', 'the guide', 'the wiki', 'the FAQ', 'the help center', 'the support', 'the community', 'the forum', 'the Discord', 'the Slack', 'the subreddit', 'the GitHub', 'the repo', 'the codebase', 'the source code'],
229
+ community: ['r/SaaS', 'fellow devs', 'community', 'r/webdev', 'r/programming', 'r/startups', 'r/entrepreneur', 'r/technology', 'r/datascience', 'r/analytics', 'r/marketing', 'r/productivity', 'r/selfhosted', 'r/opensource', 'this subreddit', 'you guys', 'y\'all', 'folks', 'people here', 'hivemind', 'fellow redditors', 'OP', 'the community', 'everyone', 'somebody', 'anyone know', 'does anyone', 'has anyone tried', 'looking for recommendations', 'seeking advice', 'need help', 'can someone explain', 'ELI5', 'explain like I\'m five', 'out of the loop', 'OOTL', 'what did I miss', 'context?', 'background?', 'what\'s the story', 'what happened', 'why is this', 'how does this', 'when did this', 'where can I', 'who knows', 'asking for a friend', 'no stupid questions', 'dumb question', 'probably obvious but', 'might be a silly question', 'hope this is allowed', 'delete if not appropriate']
231
230
  },
232
231
  mixedSentiment: true,
233
232
  authenticityLevel: 0.8,
@@ -235,72 +234,72 @@ const redditGen = createGenerator({
235
234
  typoRate: 0.03,
236
235
  sentimentDrift: 0.4,
237
236
  min: 30,
238
- max: 500,
237
+ max: 254,
239
238
  includeMetadata: false
240
239
  });
241
240
 
242
241
  // Product Usage Generators
243
- const bugReportGen = createGenerator({
242
+ const bugReportGen = createTextGenerator({
244
243
  style: "support",
245
244
  tone: "neg",
246
245
  formality: "technical",
247
246
  keywords: {
248
- technical: ['console errors', 'reproduction steps', 'browser version', 'stack trace'],
249
- errors: ['TypeError', 'ReferenceError', '404', '500', 'timeout'],
250
- environment: ['Chrome 118', 'macOS Ventura', 'Windows 11', 'mobile Safari']
247
+ technical: ['console errors', 'reproduction steps', 'browser version', 'stack trace', 'error logs', 'debug mode', 'developer tools', 'network tab', 'console output', 'browser cache', 'cookies', 'local storage', 'session storage', 'IndexedDB', 'service worker', 'WebSocket', 'AJAX request', 'fetch API', 'XMLHttpRequest', 'promise rejection', 'async/await', 'callback hell', 'memory leak', 'CPU spike', 'performance profiler', 'flame graph', 'heap snapshot', 'garbage collection', 'event listener', 'DOM manipulation', 'render blocking', 'layout thrashing', 'paint flashing', 'compositing layers', 'GPU acceleration', 'requestAnimationFrame', 'intersection observer', 'mutation observer', 'resize observer', 'scroll event', 'click handler', 'form validation', 'input sanitization', 'XSS vulnerability', 'CSRF token', 'API endpoint', 'request payload', 'response headers', 'status code', 'CORS preflight', 'OPTIONS request', 'authentication token', 'session expired', 'rate limit exceeded', 'browser fingerprinting', 'user agent', 'viewport size', 'screen resolution', 'color depth', 'pixel ratio', 'touch support', 'WebGL', 'Canvas', 'SVG', 'media queries', 'responsive breakpoints', 'mobile first', 'progressive enhancement', 'graceful degradation', 'polyfills', 'transpilation', 'bundling', 'code splitting', 'tree shaking', 'minification', 'compression', 'source maps', 'HMR', 'live reload', 'webpack', 'vite', 'rollup', 'parcel', 'esbuild'],
248
+ errors: ['TypeError', 'ReferenceError', '404', '500', 'timeout', 'SyntaxError', 'RangeError', 'URIError', 'EvalError', 'InternalError', 'null is not an object', 'undefined is not a function', 'cannot read property', 'cannot set property', 'division by zero', 'stack overflow', 'out of memory', 'maximum call stack size exceeded', 'too much recursion', 'illegal invocation', 'failed to fetch', 'network request failed', 'CORS policy', 'mixed content', 'invalid JSON', 'unexpected token', 'unexpected end of input', '401 Unauthorized', '403 Forbidden', '408 Request Timeout', '429 Too Many Requests', '500 Internal Server Error', '502 Bad Gateway', '503 Service Unavailable', '504 Gateway Timeout', 'ERR_CONNECTION_REFUSED', 'ERR_CONNECTION_RESET', 'ERR_NETWORK_CHANGED', 'ERR_SSL_PROTOCOL_ERROR', 'ERR_CERT_AUTHORITY_INVALID', 'DNS_PROBE_FINISHED_NXDOMAIN', 'ERR_NAME_NOT_RESOLVED', 'ERR_INTERNET_DISCONNECTED', 'ERR_ADDRESS_UNREACHABLE', 'ERR_CONNECTION_TIMED_OUT', 'ERR_EMPTY_RESPONSE', 'ERR_CONTENT_DECODING_FAILED', 'ERR_TOO_MANY_REDIRECTS', 'ERR_UNSAFE_REDIRECT', 'ERR_BLOCKED_BY_CLIENT', 'ERR_BLOCKED_BY_RESPONSE', 'NetworkError when attempting to fetch resource', 'Failed to load resource', 'Script error', 'Uncaught exception', 'Unhandled promise rejection'],
249
+ environment: ['Chrome 118', 'macOS Ventura', 'Windows 11', 'mobile Safari', 'Firefox 119', 'Safari 17', 'Edge 118', 'Opera 104', 'Brave', 'Chrome 120', 'Firefox ESR', 'Safari Technology Preview', 'Chrome Canary', 'Firefox Nightly', 'Edge Dev', 'macOS Sonoma', 'macOS Monterey', 'macOS Big Sur', 'Windows 10', 'Windows Server 2022', 'Ubuntu 22.04', 'Ubuntu 20.04', 'Debian 12', 'Fedora 39', 'RHEL 9', 'iOS 17', 'iOS 16', 'iPadOS 17', 'Android 14', 'Android 13', 'Android 12', 'ChromeOS', 'Node.js 20', 'Node.js 18', 'Deno', 'Bun', 'npm 10', 'pnpm 8', 'yarn 4', 'webpack 5', 'vite 5', 'rollup 4', 'esbuild', 'turbopack', 'React 18', 'Vue 3', 'Angular 17', 'Svelte 4', 'Next.js 14', 'Nuxt 3', 'Remix', 'Astro', 'SvelteKit', 'Solid.js', 'Qwik', 'Alpine.js', 'htmx', 'Lit', 'Stencil', 'Preact', 'Inferno', 'Mithril']
251
250
  },
252
251
  authenticityLevel: 0.6,
253
252
  specificityLevel: 0.9,
254
253
  typos: true,
255
254
  typoRate: 0.02,
256
255
  min: 80,
257
- max: 400,
256
+ max: 254,
258
257
  includeMetadata: false
259
258
  });
260
259
 
261
- const featureRequestGen = createGenerator({
260
+ const featureRequestGen = createTextGenerator({
262
261
  style: "feedback",
263
262
  tone: "pos",
264
263
  formality: "business",
265
264
  keywords: {
266
- requests: ['would love to see', 'feature request', 'enhancement idea', 'suggestion'],
267
- features: ['bulk export', 'dark mode', 'keyboard shortcuts', 'advanced filters'],
268
- justification: ['save time', 'improve workflow', 'user experience', 'competitive feature']
265
+ requests: ['would love to see', 'feature request', 'enhancement idea', 'suggestion', 'please add', 'it would be great if', 'can we get', 'missing feature', 'critical need', 'nice to have', 'must have', 'deal breaker', 'considering switching because', 'compared to competitors', 'industry standard', 'best practice', 'common feature', 'expected functionality', 'surprised this isn\'t available', 'shocked there\'s no', 'desperately need', 'would pay extra for', 'enterprise requirement', 'compliance need', 'accessibility requirement', 'security concern', 'privacy feature', 'GDPR compliance', 'SOC2 requirement', 'HIPAA compliance', 'audit trail', 'data governance', 'role-based access', 'granular permissions', 'API endpoint', 'webhook event', 'integration with', 'support for', 'compatibility with', 'import from', 'export to', 'migration tool', 'parity with', 'feature gap', 'missing capability', 'lacking functionality', 'incomplete implementation', 'partial support', 'beta feature', 'experimental', 'early access', 'preview', 'roadmap item', 'planned feature', 'upcoming release', 'next version', 'future update', 'long-term goal', 'strategic initiative', 'product vision', 'user research', 'customer feedback', 'common request', 'frequently asked', 'top voted', 'highly requested', 'most wanted', 'popular demand'],
266
+ features: ['bulk export', 'dark mode', 'keyboard shortcuts', 'advanced filters', 'custom fields', 'templates', 'automation rules', 'scheduled tasks', 'recurring events', 'reminders', 'notifications', 'email alerts', 'SMS alerts', 'push notifications', 'in-app messaging', 'real-time sync', 'offline mode', 'mobile app', 'desktop app', 'browser extension', 'API access', 'webhooks', 'OAuth integration', 'SSO support', 'SAML', 'LDAP', '2FA', 'MFA', 'biometric auth', 'passwordless login', 'magic links', 'audit logs', 'version history', 'rollback', 'undo/redo', 'bulk operations', 'batch processing', 'CSV import', 'Excel import', 'PDF export', 'JSON export', 'API export', 'data warehouse', 'analytics', 'reporting', 'dashboards', 'custom reports', 'scheduled reports', 'report builder', 'chart types', 'data visualization', 'pivot tables', 'SQL queries', 'advanced search', 'full-text search', 'fuzzy matching', 'regex support', 'saved searches', 'smart folders', 'tags', 'labels', 'categories', 'custom taxonomy', 'hierarchical data', 'nested items', 'relationships', 'dependencies', 'linked records', 'cross-references', 'comments', 'mentions', 'activity feed', 'audit trail', 'change log', 'revision history', 'time tracking', 'billing', 'invoicing', 'payments', 'subscriptions', 'usage metering', 'quota management', 'resource limits', 'rate limiting', 'throttling', 'caching', 'CDN', 'edge computing', 'geo-distribution', 'multi-region', 'high availability', 'disaster recovery', 'backup', 'restore', 'archival', 'data retention', 'GDPR tools', 'privacy controls', 'consent management', 'cookie banner', 'terms acceptance', 'e-signature', 'digital contracts', 'workflow approvals', 'multi-step forms'],
267
+ justification: ['save time', 'improve workflow', 'user experience', 'competitive feature', 'increase productivity', 'reduce errors', 'automate manual work', 'scale operations', 'support growth', 'meet demand', 'customer request', 'team feedback', 'user survey', 'pain point', 'bottleneck', 'inefficiency', 'workaround needed', 'manual process', 'time consuming', 'error prone', 'frustrating', 'confusing', 'difficult to use', 'accessibility issue', 'mobile limitation', 'performance problem', 'security risk', 'compliance gap', 'integration need', 'migration blocker', 'adoption barrier', 'onboarding friction', 'training overhead', 'support burden', 'maintenance cost', 'technical debt', 'legacy system', 'modern standard', 'industry norm', 'best practice', 'user expectation', 'market requirement', 'competitive pressure', 'differentiation', 'value proposition', 'ROI improvement', 'cost savings', 'revenue opportunity', 'market expansion', 'customer retention', 'churn reduction', 'user engagement', 'feature adoption', 'platform stickiness', 'network effects', 'viral growth', 'word of mouth', 'brand reputation', 'market positioning', 'strategic advantage', 'future proofing', 'technology leadership', 'innovation', 'disruption', 'transformation', 'modernization', 'digital evolution']
269
268
  },
270
269
  authenticityLevel: 0.5,
271
270
  specificityLevel: 0.7,
272
271
  min: 40,
273
- max: 300,
272
+ max: 254,
274
273
  includeMetadata: false
275
274
  });
276
275
 
277
- const onboardingGen = createGenerator({
276
+ const onboardingGen = createTextGenerator({
278
277
  style: "feedback",
279
278
  tone: "neu",
280
279
  formality: "casual",
281
280
  keywords: {
282
- onboarding: ['getting started', 'first impression', 'setup process', 'initial experience'],
283
- products: ['the dashboard', 'onboarding flow', 'tutorial', 'setup wizard'],
284
- feelings: ['confused', 'excited', 'overwhelmed', 'impressed', 'frustrated']
281
+ onboarding: ['getting started', 'first impression', 'setup process', 'initial experience', 'signup flow', 'registration', 'account creation', 'verification email', 'email confirmation', 'welcome screen', 'intro tour', 'product tour', 'guided tutorial', 'interactive walkthrough', 'onboarding checklist', 'getting started guide', 'quick start', 'first steps', 'initial setup', 'configuration', 'preferences', 'profile setup', 'team invite', 'workspace creation', 'project setup', 'data import', 'migration wizard', 'sample data', 'demo mode', 'sandbox environment', 'learning resources', 'video tutorials', 'documentation', 'help articles', 'knowledge base', 'FAQs', 'tooltip', 'hint', 'callout', 'banner', 'modal', 'popover', 'empty state', 'placeholder', 'default settings', 'recommended settings', 'best practices', 'common pitfalls', 'troubleshooting', 'support chat', 'help widget', 'customer success', 'onboarding call', 'kickoff meeting', 'training session', 'certification', 'academy', 'learning path', 'course curriculum', 'module completion', 'progress tracking', 'achievement badges', 'skill levels', 'mastery', 'competency', 'proficiency', 'beginner mode', 'advanced mode', 'expert settings', 'power user', 'keyboard ninja', 'productivity tips', 'time savers', 'hidden features', 'pro tips', 'expert advice', 'insider knowledge'],
282
+ products: ['the dashboard', 'onboarding flow', 'tutorial', 'setup wizard', 'welcome screen', 'intro video', 'help center', 'product tour', 'guided setup', 'configuration panel', 'settings page', 'user interface', 'main screen', 'home page', 'getting started page', 'documentation site', 'knowledge base', 'help docs', 'video library', 'training portal', 'academy', 'learning center', 'resource hub', 'community forum', 'support portal', 'chat widget', 'help bot', 'virtual assistant', 'interactive demo', 'sandbox mode', 'playground', 'demo environment', 'test account', 'trial period', 'evaluation', 'proof of concept', 'pilot program', 'beta testing', 'early access', 'preview mode'],
283
+ feelings: ['confused', 'excited', 'overwhelmed', 'impressed', 'frustrated', 'anxious', 'nervous', 'curious', 'interested', 'motivated', 'discouraged', 'intimidated', 'confident', 'uncertain', 'lost', 'stuck', 'struggling', 'learning', 'discovering', 'exploring', 'understanding', 'grasping', 'clicking', 'getting it', 'making progress', 'succeeding', 'accomplishing', 'achieving', 'completing', 'mastering', 'enjoying', 'appreciating', 'loving', 'hating', 'disliking', 'tolerating', 'accepting', 'adapting', 'adjusting', 'transitioning', 'switching', 'migrating', 'upgrading', 'downgrading', 'reconsidering', 'second-guessing', 'doubting', 'questioning', 'wondering', 'hoping', 'wishing', 'expecting', 'anticipating', 'pleased', 'satisfied', 'delighted', 'thrilled', 'amazed', 'surprised', 'shocked', 'disappointed', 'let down', 'underwhelmed', 'oversold', 'misled', 'deceived', 'skeptical', 'suspicious', 'cautious', 'wary', 'hesitant', 'reluctant', 'resistant', 'opposed', 'against', 'for it', 'supportive', 'enthusiastic', 'passionate', 'committed', 'dedicated', 'devoted', 'loyal', 'faithful', 'true believer', 'advocate', 'champion', 'evangelist', 'promoter', 'detractor', 'critic', 'skeptic', 'cynic', 'pessimist', 'optimist', 'realist', 'pragmatist', 'idealist']
285
284
  },
286
285
  mixedSentiment: true,
287
286
  authenticityLevel: 0.6,
288
287
  typos: true,
289
288
  typoRate: 0.04,
290
289
  min: 30,
291
- max: 250,
290
+ max: 254,
292
291
  includeMetadata: false
293
292
  });
294
293
 
295
294
  // Community Interaction Generators
296
- const tutorialCommentGen = createGenerator({
295
+ const tutorialCommentGen = createTextGenerator({
297
296
  style: "forum",
298
297
  tone: "pos",
299
298
  formality: "casual",
300
299
  keywords: {
301
- tutorial: ['thanks for this', 'helpful tutorial', 'step by step', 'great explanation'],
302
- products: ['the docs', 'this guide', 'the video', 'walkthrough'],
303
- learning: ['learned something new', 'finally understand', 'makes sense now']
300
+ tutorial: ['thanks for this', 'helpful tutorial', 'step by step', 'great explanation', 'clear instructions', 'easy to follow', 'well written', 'comprehensive guide', 'detailed walkthrough', 'excellent resource', 'bookmark worthy', 'saved for later', 'sharing with team', 'exactly what I needed', 'perfect timing', 'life saver', 'game changer', 'mind blown', 'aha moment', 'lightbulb moment', 'super helpful', 'very useful', 'extremely valuable', 'highly recommend', 'best tutorial', 'better than official docs', 'clearer than documentation', 'more practical', 'real world example', 'actual use case', 'working code', 'tested this', 'tried it myself', 'works perfectly', 'solved my problem', 'fixed my issue', 'answered my question', 'addressed my concern', 'covered everything', 'nothing missing', 'thorough', 'complete', 'exhaustive', 'definitive guide', 'ultimate resource', 'go-to reference', 'bookmark this', 'pinning this', 'adding to favorites', 'starred on GitHub', 'upvoted', 'shared on Twitter', 'posted in Slack', 'sent to team', 'mandatory reading', 'required material', 'essential knowledge', 'fundamental concepts', 'core principles', 'foundational understanding', 'prerequisite', 'building blocks', 'first principles', 'back to basics', 'fundamentals', 'beginner friendly', 'newbie approved', 'noob friendly', 'accessible', 'approachable', 'welcoming', 'inclusive', 'no gatekeeping', 'no jargon', 'plain English', 'simple terms', 'layman terms', 'ELI5', 'explain like I\'m five', 'dumbed down', 'simplified', 'distilled', 'condensed', 'summarized', 'cliff notes', 'cheat sheet', 'quick reference', 'tldr', 'executive summary'],
301
+ products: ['the docs', 'this guide', 'the video', 'walkthrough', 'tutorial', 'article', 'blog post', 'documentation', 'README', 'wiki page', 'knowledge base', 'help article', 'how-to guide', 'getting started guide', 'quick start', 'reference', 'manual', 'handbook', 'playbook', 'cookbook', 'recipe', 'code example', 'sample code', 'demo project', 'starter template', 'boilerplate', 'repository', 'gist', 'snippet', 'screen recording', 'video tutorial', 'screencast', 'livestream', 'webinar', 'workshop', 'course', 'lesson', 'module', 'chapter', 'section', 'part', 'series', 'playlist', 'collection', 'compilation', 'anthology', 'compendium', 'encyclopedia', 'glossary', 'dictionary', 'index', 'table of contents', 'outline', 'syllabus', 'curriculum', 'learning path', 'roadmap', 'journey', 'progression', 'sequence', 'order', 'steps', 'stages', 'phases', 'milestones', 'checkpoints', 'achievements', 'badges', 'certificates', 'credentials', 'certifications'],
302
+ learning: ['learned something new', 'finally understand', 'makes sense now', 'clicked for me', 'got it', 'understand now', 'see how it works', 'know what to do', 'figured it out', 'solved it', 'working now', 'no longer confused', 'crystal clear', 'perfectly clear', 'totally clear', 'much clearer', 'way easier', 'so simple', 'not as hard', 'easier than expected', 'straightforward', 'simple once you know', 'obvious in hindsight', 'wish I knew earlier', 'should have read this first', 'saved me hours', 'saved me days', 'prevented mistakes', 'avoided pitfalls', 'skipped the frustration', 'bypassed the struggle', 'shortcut to success', 'fast track', 'accelerated learning', 'leveled up', 'skill unlocked', 'knowledge gained', 'expertise acquired', 'mastery achieved', 'competence reached', 'proficiency attained', 'confidence boosted', 'understanding deepened', 'perspective shifted', 'mindset changed', 'paradigm shift', 'mental model', 'conceptual framework', 'theoretical foundation', 'practical application', 'hands-on experience', 'real-world practice', 'applied knowledge', 'transferable skills', 'cross-functional', 'interdisciplinary', 'holistic view', 'big picture', 'systems thinking', 'first principles', 'root cause', 'underlying mechanism', 'how it really works', 'what actually happens', 'behind the scenes', 'under the hood', 'inner workings', 'implementation details', 'nitty gritty', 'nuts and bolts', 'technical specifics', 'edge cases', 'corner cases', 'gotchas', 'pitfalls', 'common mistakes', 'anti-patterns', 'bad practices', 'code smells', 'best practices', 'design patterns', 'architectural patterns', 'industry standards', 'conventions', 'idioms', 'patterns']
304
303
  },
305
304
  authenticityLevel: 0.5,
306
305
  min: 20,
@@ -308,14 +307,14 @@ const tutorialCommentGen = createGenerator({
308
307
  includeMetadata: false
309
308
  });
310
309
 
311
- const webinarChatGen = createGenerator({
310
+ const webinarChatGen = createTextGenerator({
312
311
  style: "chat",
313
312
  tone: "neu",
314
313
  formality: "casual",
315
314
  keywords: {
316
- webinar: ['great presentation', 'can you share slides', 'question about', 'thanks for hosting'],
317
- products: ['the demo', 'live demo', 'presentation', 'your product'],
318
- chat: ['Q:', 'thanks!', 'link?', '+1', 'same question']
315
+ webinar: ['great presentation', 'can you share slides', 'question about', 'thanks for hosting', 'excellent webinar', 'very informative', 'learned a lot', 'appreciate the demo', 'love the examples', 'great use cases', 'real world scenarios', 'practical tips', 'useful insights', 'valuable information', 'recording available', 'will slides be shared', 'where to download', 'follow up questions', 'can you repeat', 'missed that part', 'audio issues', 'can\'t hear', 'screen sharing problem', 'can\'t see slides', 'lag on my end', 'connection issues', 'zoom problems', 'technical difficulties', 'please unmute', 'you\'re on mute', 'can\'t see video', 'camera off', 'share screen', 'next slide please', 'go back one slide', 'zoom in please', 'can\'t read that', 'too small', 'font size', 'contrast issues', 'poll results', 'survey link', 'resource links', 'documentation', 'github repo', 'code examples', 'discount code', 'special offer', 'trial extension', 'contact info', 'sales team', 'support email', 'book a demo', 'schedule call', 'free trial', 'pricing details', 'ROI calculator', 'case studies', 'white papers', 'data sheets', 'product brief', 'comparison chart', 'feature matrix', 'roadmap', 'release notes', 'changelog', 'API docs', 'integration guide', 'migration path', 'implementation timeline', 'onboarding process', 'training program', 'certification', 'partner program', 'reseller info', 'affiliate link', 'referral bonus', 'customer testimonials', 'success stories', 'user reviews', 'analyst reports', 'industry awards', 'press coverage', 'media kit', 'brand assets', 'logo files', 'screenshot library', 'video demos', 'tutorial videos', 'webinar series', 'event calendar', 'office hours', 'community forum', 'user group', 'slack channel', 'discord server'],
316
+ products: ['the demo', 'live demo', 'presentation', 'your product', 'the platform', 'the solution', 'the tool', 'the software', 'the app', 'the service', 'the API', 'the integration', 'the feature', 'the dashboard', 'the interface', 'the system', 'the framework', 'the library', 'the package', 'the plugin', 'the extension', 'your offering', 'the enterprise version', 'the pro plan', 'the premium tier', 'the free trial', 'the starter plan', 'the business plan', 'the implementation', 'the deployment', 'the migration', 'the setup process', 'the onboarding', 'the training', 'the configuration', 'the customization', 'the integration', 'the workflow', 'the automation', 'the template', 'the blueprint', 'the architecture', 'the infrastructure', 'the stack', 'the pipeline', 'the ecosystem', 'the marketplace', 'the app store', 'the plugin directory', 'the integration hub', 'the partner network'],
317
+ chat: ['Q:', 'thanks!', 'link?', '+1', 'same question', 'agreed', 'exactly', 'yes', 'no', 'maybe', 'interesting', 'cool', 'nice', 'awesome', 'great', 'excellent', 'perfect', 'helpful', 'useful', 'good point', 'makes sense', 'I see', 'got it', 'understood', 'noted', 'thanks', 'thank you', 'appreciate it', 'very helpful', 'super useful', 'this is great', 'loving this', 'fantastic', 'amazing', 'brilliant', 'smart', 'clever', 'innovative', 'impressive', 'wow', 'nice!', 'sweet', 'dope', 'fire', '🔥', '👍', '👏', '💯', '❤️', '😍', 'lol', 'lmao', 'haha', 'true', 'facts', 'real', 'relatable', 'same', 'me too', 'also wondering', 'following', 'interested', 'curious about', 'want to know', 'how about', 'what about', 'does it support', 'is there', 'will there be', 'when will', 'any plans for', 'roadmap', 'coming soon', 'ETA', 'timeline', 'pricing', 'cost', 'free tier', 'discount', 'coupon code', 'special offer', 'enterprise pricing', 'volume discount', 'annual vs monthly', 'refund policy', 'trial period', 'cancel anytime', 'no credit card', 'free forever', 'freemium', 'pay as you go', 'usage based', 'seat based', 'per user', 'unlimited', 'limits', 'quotas', 'overage', 'billing', 'invoice', 'receipt', 'payment method', 'credit card', 'paypal', 'wire transfer', 'purchase order', 'ACH', 'international', 'currency', 'VAT', 'tax', 'compliance', 'security', 'SOC2', 'GDPR', 'HIPAA', 'ISO', 'certifications', 'audit', 'penetration test', 'vulnerability scan', 'bug bounty', 'responsible disclosure', 'privacy policy', 'terms of service', 'SLA', 'uptime', 'support', '24/7', 'business hours', 'response time', 'ticket system', 'live chat', 'phone support', 'email support', 'community forum', 'self-service', 'knowledge base', 'documentation', 'tutorials', 'training', 'onboarding', 'implementation', 'professional services', 'consulting', 'custom development', 'white-glove', 'dedicated account manager', 'CSM', 'customer success', 'technical account manager', 'solutions architect', 'integration specialist']
319
318
  },
320
319
  authenticityLevel: 0.7,
321
320
  typos: true,
@@ -343,12 +342,12 @@ const dungeon = {
343
342
  hasBrowser: false,
344
343
  hasCampaigns: false,
345
344
  isAnonymous: false,
346
- hasAdSpend: false,
347
-
345
+ hasAdSpend: false,
348
346
  hasAvatar: false,
347
+ makeChart: false,
349
348
 
350
- batchSize: 1_500_000,
351
- concurrency: 50,
349
+ batchSize: 2_500_000,
350
+ concurrency: 1,
352
351
  writeToDisk: false,
353
352
 
354
353
  // ============= Enhanced Events with New API =============
@@ -699,6 +698,43 @@ const dungeon = {
699
698
  ],
700
699
 
701
700
  hook: function (record, type, meta) {
701
+ // --- user hook: classify users by engagement and tier ---
702
+ if (type === "user") {
703
+ record.is_power_user = record.engagement_score > 70;
704
+ record.risk_level = record.last_active_days_ago > 20 ? "high_churn" : "healthy";
705
+ return record;
706
+ }
707
+
708
+ // --- event hook: enterprise support tickets get auto-escalated if critical ---
709
+ if (type === "event") {
710
+ if (record.event === "enterprise_support_ticket" && record.priority === "critical") {
711
+ record.escalation_level = Math.min((record.escalation_level || 1) + 1, 3);
712
+ record.auto_escalated = true;
713
+ }
714
+ // bug reports with critical severity get flagged for immediate review
715
+ if (record.event === "bug_report_submitted" && record.severity === "critical" && record.is_reproducible === true) {
716
+ record.requires_immediate_review = true;
717
+ record.estimated_fix_hours = chance.integer({ min: 1, max: 8 });
718
+ }
719
+ return record;
720
+ }
721
+
722
+ // --- everything hook: enterprise users get a satisfaction survey event ---
723
+ if (type === "everything" && meta && meta.profile) {
724
+ if (meta.profile.user_tier === "enterprise" && record.length > 5) {
725
+ const lastEvent = record[record.length - 1];
726
+ record.push({
727
+ event: "satisfaction_survey_triggered",
728
+ time: lastEvent.time,
729
+ user_id: lastEvent.user_id,
730
+ product_tier: "enterprise",
731
+ survey_type: "quarterly_nps",
732
+ score: chance.integer({ min: 1, max: 10 })
733
+ });
734
+ }
735
+ return record;
736
+ }
737
+
702
738
  return record;
703
739
  }
704
740
  };