@equilateral_ai/mindmeld 3.3.1 → 3.5.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 (72) hide show
  1. package/README.md +1 -10
  2. package/hooks/pre-compact.js +213 -25
  3. package/hooks/session-end.js +112 -3
  4. package/hooks/session-start.js +635 -41
  5. package/hooks/subagent-start.js +150 -0
  6. package/hooks/subagent-stop.js +184 -0
  7. package/package.json +8 -7
  8. package/scripts/init-project.js +74 -33
  9. package/scripts/mcp-bridge.js +220 -0
  10. package/src/core/CorrelationAnalyzer.js +157 -0
  11. package/src/core/LLMPatternDetector.js +198 -0
  12. package/src/core/RelevanceDetector.js +123 -36
  13. package/src/core/StandardsIngestion.js +119 -18
  14. package/src/handlers/activity/activityGetMe.js +1 -1
  15. package/src/handlers/activity/activityGetTeam.js +100 -55
  16. package/src/handlers/admin/adminSetup.js +216 -0
  17. package/src/handlers/alerts/alertsAcknowledge.js +6 -6
  18. package/src/handlers/alerts/alertsGet.js +11 -11
  19. package/src/handlers/analytics/activitySummaryGet.js +34 -35
  20. package/src/handlers/analytics/coachingGet.js +11 -11
  21. package/src/handlers/analytics/convergenceGet.js +236 -0
  22. package/src/handlers/analytics/developerScoreGet.js +41 -111
  23. package/src/handlers/collaborators/collaboratorInvite.js +1 -1
  24. package/src/handlers/company/companyUsersDelete.js +141 -0
  25. package/src/handlers/company/companyUsersGet.js +90 -0
  26. package/src/handlers/company/companyUsersPost.js +267 -0
  27. package/src/handlers/company/companyUsersPut.js +76 -0
  28. package/src/handlers/correlations/correlationsDeveloperGet.js +12 -12
  29. package/src/handlers/correlations/correlationsGet.js +8 -8
  30. package/src/handlers/correlations/correlationsProjectGet.js +5 -5
  31. package/src/handlers/enterprise/controlTowerGet.js +224 -0
  32. package/src/handlers/enterprise/enterpriseOnboardingSetup.js +48 -9
  33. package/src/handlers/enterprise/enterpriseOnboardingStatus.js +1 -3
  34. package/src/handlers/github/githubConnectionStatus.js +1 -1
  35. package/src/handlers/github/githubDiscoverPatterns.js +4 -2
  36. package/src/handlers/github/githubPatternsReview.js +7 -36
  37. package/src/handlers/health/healthGet.js +55 -0
  38. package/src/handlers/helpers/checkSuperAdmin.js +13 -14
  39. package/src/handlers/helpers/mindmeldMcpCore.js +594 -0
  40. package/src/handlers/helpers/subscriptionTiers.js +27 -27
  41. package/src/handlers/mcp/mcpHandler.js +569 -0
  42. package/src/handlers/mcp/mindmeldMcpHandler.js +124 -0
  43. package/src/handlers/mcp/mindmeldMcpStreamHandler.js +243 -0
  44. package/src/handlers/notifications/sendNotification.js +18 -18
  45. package/src/handlers/patterns/patternEvaluatePromotionPost.js +173 -0
  46. package/src/handlers/projects/projectCreate.js +124 -10
  47. package/src/handlers/projects/projectDelete.js +4 -4
  48. package/src/handlers/projects/projectGet.js +8 -8
  49. package/src/handlers/projects/projectUpdate.js +4 -4
  50. package/src/handlers/reports/aiLeverage.js +34 -30
  51. package/src/handlers/reports/engineeringInvestment.js +16 -16
  52. package/src/handlers/reports/riskForecast.js +41 -21
  53. package/src/handlers/reports/standardsRoi.js +101 -9
  54. package/src/handlers/scheduled/maturityUpdateJob.js +166 -0
  55. package/src/handlers/sessions/sessionStandardsPost.js +43 -7
  56. package/src/handlers/standards/discoveriesGet.js +93 -0
  57. package/src/handlers/standards/projectStandardsGet.js +2 -2
  58. package/src/handlers/standards/projectStandardsPut.js +2 -2
  59. package/src/handlers/standards/standardsRelevantPost.js +107 -12
  60. package/src/handlers/standards/standardsTransition.js +112 -15
  61. package/src/handlers/stripe/billingPortalPost.js +1 -1
  62. package/src/handlers/stripe/enterpriseCheckoutPost.js +2 -2
  63. package/src/handlers/stripe/subscriptionCreatePost.js +2 -2
  64. package/src/handlers/stripe/webhookPost.js +42 -14
  65. package/src/handlers/user/apiTokenCreate.js +71 -0
  66. package/src/handlers/user/apiTokenList.js +64 -0
  67. package/src/handlers/user/userSplashGet.js +90 -73
  68. package/src/handlers/users/cognitoPostConfirmation.js +37 -1
  69. package/src/handlers/users/cognitoPreSignUp.js +114 -0
  70. package/src/handlers/users/userGet.js +15 -11
  71. package/src/handlers/webhooks/githubWebhook.js +117 -125
  72. package/src/index.js +8 -5
@@ -117,9 +117,9 @@ const SUBSCRIPTION_TIERS = {
117
117
  'community_standards',
118
118
  'community_feedback' // Patterns feed back to community repo
119
119
  ],
120
- stripeProductId: process.env.STRIPE_PRODUCT_TEAM || 'prod_Tn3KhkNBqHwfJ1',
121
- stripePriceIdMonthly: process.env.STRIPE_PRICE_TEAM_MONTHLY || 'price_1SpTDmQoD4pT2xXuMG8yUqiz',
122
- stripePriceIdAnnual: process.env.STRIPE_PRICE_TEAM_ANNUAL || 'price_1SpTDrQoD4pT2xXu5qU33axg'
120
+ stripeProductId: process.env.STRIPE_PRODUCT_TEAM || 'prod_TqxmkB1XGIm9qM',
121
+ stripePriceIdMonthly: process.env.STRIPE_PRICE_TEAM_MONTHLY || 'price_1StFrbQoD4pT2xXuoclFMmzn',
122
+ stripePriceIdAnnual: process.env.STRIPE_PRICE_TEAM_ANNUAL || 'price_1StFrxQoD4pT2xXuBWIZK1gX'
123
123
  },
124
124
  team_private: {
125
125
  name: 'Team Private',
@@ -141,9 +141,9 @@ const SUBSCRIPTION_TIERS = {
141
141
  'community_standards',
142
142
  'private_patterns' // Patterns do NOT feed back to community
143
143
  ],
144
- stripeProductId: process.env.STRIPE_PRODUCT_TEAM_PRIVATE || 'prod_Tn3KEmFEbA3y2T',
145
- stripePriceIdMonthly: process.env.STRIPE_PRICE_TEAM_PRIVATE_MONTHLY || 'price_1SpTE5QoD4pT2xXu0ry2yL7j',
146
- stripePriceIdAnnual: process.env.STRIPE_PRICE_TEAM_PRIVATE_ANNUAL || 'price_1SpTE6QoD4pT2xXuCiDZ37Ge'
144
+ stripeProductId: process.env.STRIPE_PRODUCT_TEAM_PRIVATE || 'prod_TqxmYMX4mxPs6A',
145
+ stripePriceIdMonthly: process.env.STRIPE_PRICE_TEAM_PRIVATE_MONTHLY || 'price_1StFrdQoD4pT2xXupsZM0B3Q',
146
+ stripePriceIdAnnual: process.env.STRIPE_PRICE_TEAM_PRIVATE_ANNUAL || 'price_1StFryQoD4pT2xXuFqVKflKV'
147
147
  },
148
148
  professional: {
149
149
  name: 'Professional',
@@ -170,9 +170,9 @@ const SUBSCRIPTION_TIERS = {
170
170
  'aws_standards',
171
171
  'community_feedback'
172
172
  ],
173
- stripeProductId: process.env.STRIPE_PRODUCT_PROFESSIONAL || 'prod_Tn3Kz8u744njE8',
174
- stripePriceIdMonthly: process.env.STRIPE_PRICE_PROFESSIONAL_MONTHLY || 'price_1SpTELQoD4pT2xXukzY5iodd',
175
- stripePriceIdAnnual: process.env.STRIPE_PRICE_PROFESSIONAL_ANNUAL || 'price_1SpTELQoD4pT2xXuwoa3zAtA'
173
+ stripeProductId: process.env.STRIPE_PRODUCT_PROFESSIONAL || 'prod_Tqxm0PwlEAFviD',
174
+ stripePriceIdMonthly: process.env.STRIPE_PRICE_PROFESSIONAL_MONTHLY || 'price_1StFriQoD4pT2xXuJVlSx1pr',
175
+ stripePriceIdAnnual: process.env.STRIPE_PRICE_PROFESSIONAL_ANNUAL || 'price_1StFryQoD4pT2xXuPG3jzk0a'
176
176
  },
177
177
  professional_private: {
178
178
  name: 'Professional Private',
@@ -199,9 +199,9 @@ const SUBSCRIPTION_TIERS = {
199
199
  'aws_standards',
200
200
  'private_patterns'
201
201
  ],
202
- stripeProductId: process.env.STRIPE_PRODUCT_PROFESSIONAL_PRIVATE || 'prod_Tn3LxewfKvzfNc',
203
- stripePriceIdMonthly: process.env.STRIPE_PRICE_PROFESSIONAL_PRIVATE_MONTHLY || 'price_1SpTEaQoD4pT2xXujb9l87Su',
204
- stripePriceIdAnnual: process.env.STRIPE_PRICE_PROFESSIONAL_PRIVATE_ANNUAL || 'price_1SpTEaQoD4pT2xXuxQx8CTIv'
202
+ stripeProductId: process.env.STRIPE_PRODUCT_PROFESSIONAL_PRIVATE || 'prod_TqxmNJrJRVXSKC',
203
+ stripePriceIdMonthly: process.env.STRIPE_PRICE_PROFESSIONAL_PRIVATE_MONTHLY || 'price_1StFrjQoD4pT2xXunEPrL5e0',
204
+ stripePriceIdAnnual: process.env.STRIPE_PRICE_PROFESSIONAL_PRIVATE_ANNUAL || 'price_1StFrzQoD4pT2xXupWDgIquo'
205
205
  },
206
206
  enterprise: {
207
207
  name: 'Enterprise',
@@ -234,7 +234,7 @@ const SUBSCRIPTION_TIERS = {
234
234
  'dedicated_support',
235
235
  'custom_integrations'
236
236
  ],
237
- stripeProductId: process.env.STRIPE_PRODUCT_ENTERPRISE || 'prod_Tn3Lmdaa1yhQtD',
237
+ stripeProductId: process.env.STRIPE_PRODUCT_ENTERPRISE || 'prod_Tqxmy47rFwQqHf',
238
238
  stripePriceIdMonthly: null, // Contact sales
239
239
  stripePriceIdAnnual: null // Contact sales
240
240
  }
@@ -276,7 +276,7 @@ function checkSubscriptionLimits(client, action, counts) {
276
276
  switch (action) {
277
277
  case 'add_collaborator':
278
278
  const collabLimit = tier.maxCollaborators;
279
- if (counts.collaborators >= collabLimit) {
279
+ if (collabLimit !== null && counts.collaborators >= collabLimit) {
280
280
  return {
281
281
  allowed: false,
282
282
  message: `${tier.displayName} tier allows up to ${collabLimit} collaborators. Upgrade to add more.`,
@@ -287,7 +287,7 @@ function checkSubscriptionLimits(client, action, counts) {
287
287
 
288
288
  case 'create_project':
289
289
  const projectLimit = tier.maxProjects;
290
- if (counts.projects >= projectLimit) {
290
+ if (projectLimit !== null && counts.projects >= projectLimit) {
291
291
  return {
292
292
  allowed: false,
293
293
  message: `${tier.displayName} tier allows up to ${projectLimit} projects. Upgrade to create more.`,
@@ -743,9 +743,9 @@ const ENTERPRISE_PACKAGES = {
743
743
  'admin_dashboard',
744
744
  'all_professional_features'
745
745
  ],
746
- stripeProductId: process.env.STRIPE_PRODUCT_ENTERPRISE || 'prod_Tn3Lmdaa1yhQtD',
747
- stripePriceIdMonthly25: process.env.STRIPE_PRICE_ENT_BASE_MONTHLY || 'price_1SrXDCQoD4pT2xXuS8RPpS9X',
748
- stripePriceIdAnnual25: process.env.STRIPE_PRICE_ENT_BASE_ANNUAL || 'price_1SrXDCQoD4pT2xXukOTjeUpv'
746
+ stripeProductId: process.env.STRIPE_PRODUCT_ENTERPRISE || 'prod_Tqxmy47rFwQqHf',
747
+ stripePriceIdMonthly25: process.env.STRIPE_PRICE_ENT_BASE_MONTHLY || 'price_1StFyhQoD4pT2xXusUSHq6au',
748
+ stripePriceIdAnnual25: process.env.STRIPE_PRICE_ENT_BASE_ANNUAL || 'price_1StFyiQoD4pT2xXuevv2PYYB'
749
749
  },
750
750
  full: {
751
751
  name: 'Full Platform',
@@ -772,9 +772,9 @@ const ENTERPRISE_PACKAGES = {
772
772
  'onboarding_acceleration',
773
773
  'knowledge_transfer_docs'
774
774
  ],
775
- stripeProductId: process.env.STRIPE_PRODUCT_ENTERPRISE || 'prod_Tn3Lmdaa1yhQtD',
776
- stripePriceIdMonthly25: process.env.STRIPE_PRICE_ENT_FULL_MONTHLY || 'price_1SrXDCQoD4pT2xXuBKUuXRsT',
777
- stripePriceIdAnnual25: process.env.STRIPE_PRICE_ENT_FULL_ANNUAL || 'price_1SrXDDQoD4pT2xXuIeWZ0VDa'
775
+ stripeProductId: process.env.STRIPE_PRODUCT_ENTERPRISE || 'prod_Tqxmy47rFwQqHf',
776
+ stripePriceIdMonthly25: process.env.STRIPE_PRICE_ENT_FULL_MONTHLY || 'price_1StFykQoD4pT2xXuuOnck3Gc',
777
+ stripePriceIdAnnual25: process.env.STRIPE_PRICE_ENT_FULL_ANNUAL || 'price_1StFylQoD4pT2xXuv7JJXYZN'
778
778
  }
779
779
  };
780
780
 
@@ -797,9 +797,9 @@ const ENTERPRISE_ADDONS = {
797
797
  'session_commit_correlation',
798
798
  'roi_reporting'
799
799
  ],
800
- stripeProductId: process.env.STRIPE_PRODUCT_ADDON_ENG_INTEL || 'prod_TpBat7IZySP7MB',
801
- stripePriceIdMonthly25: process.env.STRIPE_PRICE_ADDON_ENG_INTEL_MONTHLY || 'price_1SrXDXQoD4pT2xXuk4bDjKm8',
802
- stripePriceIdAnnual25: process.env.STRIPE_PRICE_ADDON_ENG_INTEL_ANNUAL || 'price_1SrXDYQoD4pT2xXuD3EdKBs1'
800
+ stripeProductId: process.env.STRIPE_PRODUCT_ADDON_ENG_INTEL || 'prod_TqxmsazHo5nJZi',
801
+ stripePriceIdMonthly25: process.env.STRIPE_PRICE_ADDON_ENG_INTEL_MONTHLY || 'price_1StFymQoD4pT2xXuJzHg42Jq',
802
+ stripePriceIdAnnual25: process.env.STRIPE_PRICE_ADDON_ENG_INTEL_ANNUAL || 'price_1StFynQoD4pT2xXuUIpe1PyM'
803
803
  },
804
804
  knowledge_continuity: {
805
805
  id: 'knowledge_continuity',
@@ -815,9 +815,9 @@ const ENTERPRISE_ADDONS = {
815
815
  'onboarding_acceleration',
816
816
  'knowledge_transfer_docs'
817
817
  ],
818
- stripeProductId: process.env.STRIPE_PRODUCT_ADDON_KNOWLEDGE || 'prod_TpBaOkMV4fsctv',
819
- stripePriceIdMonthly25: process.env.STRIPE_PRICE_ADDON_KNOWLEDGE_MONTHLY || 'price_1SrXDYQoD4pT2xXuFYZy90r0',
820
- stripePriceIdAnnual25: process.env.STRIPE_PRICE_ADDON_KNOWLEDGE_ANNUAL || 'price_1SrXDYQoD4pT2xXuxULSElxH'
818
+ stripeProductId: process.env.STRIPE_PRODUCT_ADDON_KNOWLEDGE || 'prod_TqxmqIjRtKiIbY',
819
+ stripePriceIdMonthly25: process.env.STRIPE_PRICE_ADDON_KNOWLEDGE_MONTHLY || 'price_1StFypQoD4pT2xXu2tNNMma9',
820
+ stripePriceIdAnnual25: process.env.STRIPE_PRICE_ADDON_KNOWLEDGE_ANNUAL || 'price_1StFyqQoD4pT2xXufWC2jgxz'
821
821
  }
822
822
  };
823
823