@@ -41,6 +49,20 @@ function FeatureList({ features, checkClass }: { features: string[]; checkClass:
);
}
+/** The Enterprise delta: same layout as FeatureList but "+" bullets and emphasized text. */
+function PlusList({ features }: { features: string[] }) {
+ return (
+
+ {features.map((f) => (
+
+
+ {f}
+
+ ))}
+
+ );
+}
+
/**
* Plan section: two side-by-side plan cards (Community and Enterprise). The tenant's current plan
* is highlighted so the edition is obvious at a glance; the Enterprise card teases what it adds.
@@ -55,16 +77,23 @@ export function SectionPlan() {
const canStartTrial =
editionInfo.trialAvailable && (user?.isTenantAdmin === true || user?.isGlobalAdmin === true);
- const communityFeatures = [
+ // Features shared by both plans verbatim. Plan-specific items (retention, support tier) are NOT
+ // in here — repeating "90-day retention" on the Enterprise card would be factually wrong; their
+ // Enterprise counterparts live in enterpriseExtras instead.
+ const sharedFeatures = [
"Live session monitoring & progress portal",
"Full rules engine, including custom rules",
"Fleet analytics, notifications & diagnostics",
"AI integration (MCP) within usage limits",
+ ];
+
+ const communityFeatures = [
+ ...sharedFeatures,
`${COMMUNITY_RETENTION_DAYS}-day data retention`,
"Community support (GitHub)",
];
- const enterpriseFeatures = [
+ const enterpriseExtras = [
`Extended data retention — ${ENTERPRISE_RETENTION_DAYS} days (vs ${COMMUNITY_RETENTION_DAYS})`,
"Higher portal & agent API rate limits",
"Larger AI (MCP) usage quota",
@@ -144,9 +173,16 @@ export function SectionPlan() {
- Everything in Community, plus
+ Everything in Community
-
+
+
+
+
+ Plus
+
+
+
{/* CTA — only meaningful while the tenant is on Community */}
{!isEnterprise && (