@elevasis/ui 2.45.1 → 2.46.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.
- package/dist/api/index.js +3 -3
- package/dist/app/index.d.ts +2 -3
- package/dist/app/index.js +3 -3
- package/dist/auth/index.d.ts +6 -0
- package/dist/auth/index.js +3 -3
- package/dist/charts/index.js +3 -3
- package/dist/{chunk-XDEUR36B.js → chunk-CDZB24OR.js} +6 -11
- package/dist/{chunk-NVVAQNKE.js → chunk-OFLWSKSC.js} +1 -1
- package/dist/{chunk-UBTSEZJK.js → chunk-REPITZKU.js} +2504 -1819
- package/dist/{chunk-UECAFQKT.js → chunk-SOGPJFO6.js} +1 -1
- package/dist/components/index.d.ts +1 -2
- package/dist/components/index.js +3 -3
- package/dist/components/navigation/index.js +3 -3
- package/dist/features/auth/index.js +4 -4
- package/dist/features/clients/index.js +3 -3
- package/dist/features/crm/index.js +3 -3
- package/dist/features/dashboard/index.d.ts +1 -2
- package/dist/features/dashboard/index.js +3 -3
- package/dist/features/delivery/index.js +3 -3
- package/dist/features/knowledge/index.js +3 -3
- package/dist/features/lead-gen/index.d.ts +2 -3
- package/dist/features/lead-gen/index.js +3 -3
- package/dist/features/monitoring/index.js +3 -3
- package/dist/features/monitoring/requests/index.js +4 -4
- package/dist/features/operations/index.d.ts +2 -3
- package/dist/features/operations/index.js +3 -3
- package/dist/features/settings/index.js +3 -3
- package/dist/hooks/access/index.d.ts +6 -0
- package/dist/hooks/access/index.js +3 -3
- package/dist/hooks/delivery/index.js +3 -3
- package/dist/hooks/index.d.ts +7 -2
- package/dist/hooks/index.js +3 -3
- package/dist/hooks/operations/command-view/utils/transformCommandViewData.d.ts +1 -2
- package/dist/hooks/published.d.ts +7 -2
- package/dist/hooks/published.js +3 -3
- package/dist/index.d.ts +8 -3
- package/dist/index.js +4 -4
- package/dist/knowledge/index.d.ts +3 -4
- package/dist/knowledge/index.js +286 -67
- package/dist/layout/index.js +3 -3
- package/dist/organization/index.js +3 -3
- package/dist/provider/index.d.ts +2 -3
- package/dist/provider/index.js +3 -3
- package/dist/provider/published.d.ts +2 -3
- package/dist/provider/published.js +3 -3
- package/dist/test-utils/index.js +3 -3
- package/dist/types/index.d.ts +1 -2
- package/dist/utils/index.d.ts +1 -2
- package/dist/utils/index.js +1 -1
- package/package.json +4 -4
|
@@ -4,14 +4,14 @@ import { useSupabase } from './chunk-MKH2KOAO.js';
|
|
|
4
4
|
import { StyledMarkdown, ChatHeader, ChatSidebar } from './chunk-GUKY77FJ.js';
|
|
5
5
|
import { CardHeader } from './chunk-S3XR4II4.js';
|
|
6
6
|
import { useInitialization, InitializationContext, InitializationProvider } from './chunk-6DO4PE3O.js';
|
|
7
|
-
import { HTTP_HEADERS, ApiClientProvider, useApiClient } from './chunk-
|
|
7
|
+
import { HTTP_HEADERS, ApiClientProvider, useApiClient } from './chunk-OFLWSKSC.js';
|
|
8
8
|
import { OrganizationContext, useOrganization } from './chunk-DD3CCMCZ.js';
|
|
9
9
|
import { sidebarItemGap, sidebarSubLinkPaddingY, sidebarSubLinkPaddingX, sidebarSubLinkIndent, sidebarHoverDelay, sidebarTransitionDuration, sidebarCollapsedWidth, sidebarWidth, topbarHeight, sidebarToggleIconSize, sidebarSectionPadding, sidebarItemPadding, sidebarItemHeight, sidebarIconSize, sidebarIconStroke, sidebarIconInnerSize, sidebarBottomSectionHeight, SubshellNavItem, sidebarGroupChevronSize, SubshellSidebarSection } from './chunk-GMXGDO3I.js';
|
|
10
10
|
import { useRouterContext } from './chunk-Q7DJKLEN.js';
|
|
11
11
|
import { Graph_module_css_default, useDirectedChainHighlighting, useNodeSelection, useFitViewTrigger, useGraphHighlighting, calculateGraphHeight, GRAPH_CONSTANTS } from './chunk-HENXLGVD.js';
|
|
12
12
|
import { STATUS_COLORS, getStatusIcon, formatDuration, getStatusColors, AGENT_CONSTANTS, shouldAnimateEdge, TIMELINE_CONSTANTS, calculateBarPosition, CONTAINER_CONSTANTS, useExecutionPath, useUnifiedWorkflowLayout, WORKFLOW_CONSTANTS, useReactFlowAgent, getResourceStatusColor, useMergedExecution, useTimelineData, useAgentIterationData } from './chunk-7FPLLSHN.js';
|
|
13
13
|
import { useProfile, useUserProfile, ProfileProvider } from './chunk-W2SFTXMT.js';
|
|
14
|
-
import { LabelSchema, DescriptionSchema, PathSchema, ModelIdSchema, IconNameSchema, SystemLifecycleSchema, OntologyIdSchema, SystemPathSchema, ActionInvocationSchema, SystemIdSchema, NodeIdStringSchema, JsonValueSchema, SystemInterfaceRefSchema, EntitiesDomainSchema, ActionsDomainSchema, DEFAULT_ORGANIZATION_MODEL_ACTIONS, OntologyScopeSchema, DEFAULT_ONTOLOGY_SCOPE, SystemsDomainSchema, DEFAULT_ORGANIZATION_MODEL_SYSTEMS, defineEntities, defineActions, listAllSystems,
|
|
14
|
+
import { LabelSchema, DescriptionSchema, PathSchema, ModelIdSchema, IconNameSchema, SystemLifecycleSchema, OntologyIdSchema, SystemPathSchema, ActionInvocationSchema, SystemIdSchema, NodeIdStringSchema, JsonValueSchema, SystemInterfaceRefSchema, EntitiesDomainSchema, ActionsDomainSchema, DEFAULT_ORGANIZATION_MODEL_ACTIONS, OntologyScopeSchema, DEFAULT_ONTOLOGY_SCOPE, SystemsDomainSchema, DEFAULT_ORGANIZATION_MODEL_SYSTEMS, defineEntities, defineActions, listAllSystems, listResolvedOntologyRecords, getErrorInfo, getErrorTitle, formatErrorMessage, getSystem, compileOrganizationOntology, isAPIClientError, getResourceIcon, formatTimeAgo, getTimeRangeLabel, getTimeRangeDates, formatBucketTime, PAGE_SIZE_DEFAULT, REFETCH_INTERVAL_DASHBOARD, STALE_TIME_MONITORING, REFETCH_INTERVAL_RUNNING, WS_MAX_RETRIES_BEFORE_ERROR, WS_RECONNECT_BASE_DELAY, WS_RECONNECT_MAX_DELAY, STALE_TIME_DEFAULT, STALE_TIME_ADMIN, APIClientError, GC_TIME_MEDIUM, GC_TIME_SHORT, formatDateTime, LEAD_GEN_API_INTERFACE, computeInterfaceReadiness, getAllBuildTemplates, getLeadGenStageCatalog, formatDate, formatRelativeTime, getResourcesForSystem, ontologyGraphNodeId, parseOntologyId, getAllProspectingStages, getAllPipelines, getAllProjectStatuses, debounce, OAUTH_FLOW_TIMEOUT, devOnlyFor, requiresAdminFor, topLevel, parentOf, ancestorsOf, childrenOf, findById, findByPath, getSystemAncestors, resolveSystemConfig, defaultPathFor } from './chunk-CDZB24OR.js';
|
|
15
15
|
import { ResourceStatusColors, toWorkflowLogMessages } from './chunk-KRWALB24.js';
|
|
16
16
|
import { useElevasisServices, ElevasisServiceContext, ElevasisServiceProvider } from './chunk-2FTX4WO2.js';
|
|
17
17
|
import { brandSupabaseOrgId, brandWorkOsOrgId } from './chunk-MQZE7SUI.js';
|
|
@@ -202,14 +202,20 @@ var AccessKeys = {
|
|
|
202
202
|
organizationManage: { systemPath: "permission.org", action: "manage" },
|
|
203
203
|
membersManage: { systemPath: "permission.members", action: "manage" },
|
|
204
204
|
rolesManage: { systemPath: "permission.roles", action: "manage" },
|
|
205
|
+
/** @reserved Reserved for first-class secret administration routes and command surfaces. */
|
|
205
206
|
secretsManage: { systemPath: "permission.secrets", action: "manage" },
|
|
206
207
|
operationsRead: { systemPath: "permission.operations", action: DEFAULT_ACCESS_ACTION },
|
|
208
|
+
/** @reserved Reserved for write-level operations administration beyond read-only monitoring. */
|
|
207
209
|
operationsManage: { systemPath: "permission.operations", action: "manage" },
|
|
208
210
|
leadGenManage: { systemPath: "sales.lead-gen", action: "manage" },
|
|
211
|
+
/** @reserved Reserved for acquisition administration once that permission namespace is wired. */
|
|
209
212
|
acquisitionManage: { systemPath: "permission.acquisition", action: "manage" },
|
|
213
|
+
/** @reserved Reserved for project administration permission catalog compatibility. */
|
|
210
214
|
projectsManage: { systemPath: "permission.projects", action: "manage" },
|
|
215
|
+
/** @reserved Reserved for client administration permission catalog compatibility. */
|
|
211
216
|
clientsManage: { systemPath: "permission.clients", action: "manage" },
|
|
212
217
|
operationsOverview: { systemPath: "diagnostic.operations.overview", action: DEFAULT_ACCESS_ACTION },
|
|
218
|
+
/** @reserved Reserved for a diagnostics surface that lists recent operations executions. */
|
|
213
219
|
operationsRecentExecutions: { systemPath: "diagnostic.operations.recent-executions", action: DEFAULT_ACCESS_ACTION },
|
|
214
220
|
monitoringExecutionLogs: { systemPath: "diagnostic.monitoring.execution-logs", action: DEFAULT_ACCESS_ACTION },
|
|
215
221
|
monitoringNotifications: { systemPath: "diagnostic.monitoring.notifications", action: DEFAULT_ACCESS_ACTION }
|
|
@@ -723,7 +729,7 @@ var ResourceOntologyBindingSchema = z.object({
|
|
|
723
729
|
/**
|
|
724
730
|
* Optional typed contract binding for this resource's workflow I/O.
|
|
725
731
|
* Each ref is a `package/subpath#ExportName` string that resolves to a
|
|
726
|
-
* Zod schema in
|
|
732
|
+
* Zod schema in the tenant-owned organization model package.
|
|
727
733
|
*
|
|
728
734
|
* Absence of this field preserves all existing behavior — it is additive + optional.
|
|
729
735
|
* Tier-1 validation (schema.ts): ref-string shape only (browser-safe, no imports).
|
|
@@ -1253,10 +1259,11 @@ var ONTOLOGY_REFERENCE_KEY_KINDS = {
|
|
|
1253
1259
|
interfaceType: "interface",
|
|
1254
1260
|
propertyType: "property",
|
|
1255
1261
|
groupType: "group",
|
|
1256
|
-
|
|
1262
|
+
endpointType: "endpoint",
|
|
1257
1263
|
stepCatalog: "catalog"
|
|
1258
1264
|
};
|
|
1259
|
-
|
|
1265
|
+
var omCompilationContextCache = /* @__PURE__ */ new WeakMap();
|
|
1266
|
+
function buildOmCrossRefIndexFromOntology(model, ontologyCompilation) {
|
|
1260
1267
|
const systemsById = /* @__PURE__ */ new Map();
|
|
1261
1268
|
for (const { path, system } of listAllSystems(model)) {
|
|
1262
1269
|
systemsById.set(path, system);
|
|
@@ -1270,7 +1277,6 @@ function buildOmCrossRefIndex(model) {
|
|
|
1270
1277
|
const actionIds = new Set(Object.keys(model.actions ?? {}));
|
|
1271
1278
|
const customerSegmentIds = new Set(Object.keys(model.customers ?? {}));
|
|
1272
1279
|
const offeringIds = new Set(Object.keys(model.offerings ?? {}));
|
|
1273
|
-
const ontologyCompilation = compileOrganizationOntology(model);
|
|
1274
1280
|
const ontologyIndexByKind = {
|
|
1275
1281
|
object: ontologyCompilation.ontology.objectTypes,
|
|
1276
1282
|
link: ontologyCompilation.ontology.linkTypes,
|
|
@@ -1281,7 +1287,7 @@ function buildOmCrossRefIndex(model) {
|
|
|
1281
1287
|
"value-type": ontologyCompilation.ontology.valueTypes,
|
|
1282
1288
|
property: ontologyCompilation.ontology.sharedProperties,
|
|
1283
1289
|
group: ontologyCompilation.ontology.groups,
|
|
1284
|
-
|
|
1290
|
+
endpoint: ontologyCompilation.ontology.endpoints
|
|
1285
1291
|
};
|
|
1286
1292
|
const ontologyIds = new Set(Object.values(ontologyIndexByKind).flatMap((index) => Object.keys(index)));
|
|
1287
1293
|
const stageIds = /* @__PURE__ */ new Set();
|
|
@@ -1309,6 +1315,15 @@ function buildOmCrossRefIndex(model) {
|
|
|
1309
1315
|
stageIds
|
|
1310
1316
|
};
|
|
1311
1317
|
}
|
|
1318
|
+
function buildOmCompilationContext(model) {
|
|
1319
|
+
const cached = omCompilationContextCache.get(model);
|
|
1320
|
+
if (cached !== void 0) return cached;
|
|
1321
|
+
const ontologyCompilation = compileOrganizationOntology(model);
|
|
1322
|
+
const crossRefIndex = buildOmCrossRefIndexFromOntology(model, ontologyCompilation);
|
|
1323
|
+
const context = { crossRefIndex, ontologyCompilation };
|
|
1324
|
+
omCompilationContextCache.set(model, context);
|
|
1325
|
+
return context;
|
|
1326
|
+
}
|
|
1312
1327
|
function knowledgeTargetExists(index, kind, id) {
|
|
1313
1328
|
if (kind === "system") return index.systemsById.has(id);
|
|
1314
1329
|
if (kind === "client") return index.clientIds.has(id);
|
|
@@ -1645,9 +1660,8 @@ function refineOrganizationModel(model, ctx) {
|
|
|
1645
1660
|
}
|
|
1646
1661
|
});
|
|
1647
1662
|
});
|
|
1648
|
-
const idx =
|
|
1663
|
+
const { crossRefIndex: idx, ontologyCompilation } = buildOmCompilationContext(model);
|
|
1649
1664
|
const { ontologyIndexByKind, ontologyIds } = idx;
|
|
1650
|
-
const ontologyCompilation = compileOrganizationOntology(model);
|
|
1651
1665
|
function topologyTargetExists(ref) {
|
|
1652
1666
|
if (ref.kind === "system") return systemsById.has(ref.id);
|
|
1653
1667
|
if (ref.kind === "resource") return resourcesById.has(ref.id);
|
|
@@ -23830,1298 +23844,284 @@ var platformNavigation = {
|
|
|
23830
23844
|
}
|
|
23831
23845
|
};
|
|
23832
23846
|
|
|
23833
|
-
// ../elevasis-core/src/organization-model/
|
|
23834
|
-
|
|
23835
|
-
|
|
23836
|
-
|
|
23837
|
-
|
|
23838
|
-
|
|
23839
|
-
|
|
23840
|
-
|
|
23841
|
-
|
|
23842
|
-
|
|
23843
|
-
|
|
23844
|
-
|
|
23845
|
-
return "role.operator";
|
|
23846
|
-
case "platform.projects":
|
|
23847
|
-
default:
|
|
23848
|
-
return "role.operator";
|
|
23849
|
-
}
|
|
23850
|
-
}
|
|
23851
|
-
|
|
23852
|
-
// ../elevasis-core/src/organization-model/resources.ts
|
|
23853
|
-
var platformWorkflowResourceSeeds = [
|
|
23854
|
-
["resend-diagnostic", "platform"],
|
|
23855
|
-
["instantly-diagnostic", "sales.lead-gen"],
|
|
23856
|
-
["stripe-diagnostic", "platform"],
|
|
23857
|
-
["dropbox-diagnostic", "platform"],
|
|
23858
|
-
["signature-api-diagnostic", "platform"],
|
|
23859
|
-
["apify-diagnostic", "sales.lead-gen"],
|
|
23860
|
-
["full-diagnostic", "platform"],
|
|
23861
|
-
["diagnostic-test-data", "platform"],
|
|
23862
|
-
["cutover-org-model-smoke-workflow", "platform"],
|
|
23863
|
-
["crm-action-system-smoke-workflow", "sales.crm"],
|
|
23864
|
-
["anymailfinder-diagnostic-workflow", "sales.lead-gen"],
|
|
23865
|
-
["lgn-dtc-apollo-pipeline-diagnostic", "sales.lead-gen"],
|
|
23866
|
-
["lgn-email-discovery-boundary-diagnostic-workflow", "sales.lead-gen"],
|
|
23867
|
-
["lgn-data-integrity-diagnostic", "sales.lead-gen"],
|
|
23868
|
-
["lgn-email-discovery-diagnostic-workflow", "sales.lead-gen"],
|
|
23869
|
-
["instantly-diagnostic-workflow", "sales.lead-gen"],
|
|
23870
|
-
["lgn-diagnostic-orchestrator", "sales.lead-gen"],
|
|
23871
|
-
["lgn-lead-filter-diagnostic", "sales.lead-gen"],
|
|
23872
|
-
["lgn-pipeline-diagnostic", "sales.lead-gen"],
|
|
23873
|
-
["lgn-qualification-diagnostic", "sales.lead-gen"],
|
|
23874
|
-
["lgn-scrape-diagnostic", "sales.lead-gen"],
|
|
23875
|
-
["lgn-tomba-diagnostic-workflow", "sales.lead-gen"],
|
|
23876
|
-
["lgn-verification-diagnostic", "sales.lead-gen"],
|
|
23877
|
-
["lgn-website-extract-diagnostic-workflow", "sales.lead-gen"],
|
|
23878
|
-
["lgn-amf-discovery-diagnostic-workflow", "sales.lead-gen"],
|
|
23879
|
-
["lgn-tomba-discovery-diagnostic-workflow", "sales.lead-gen"],
|
|
23880
|
-
["resend-unsubscribe-diagnostic-workflow", "platform"],
|
|
23881
|
-
["instantly-thread-diagnostic-workflow", "sales.lead-gen"],
|
|
23882
|
-
["instantly-thread-link-backfill-workflow", "sales.lead-gen"],
|
|
23883
|
-
["instantly-reply-cleanup-workflow", "sales.lead-gen"],
|
|
23884
|
-
["inb-integration-test", "sales.crm"],
|
|
23885
|
-
["organic-booking-diagnostic-workflow", "sales.crm"],
|
|
23886
|
-
["organic-booking-cleanup-workflow", "sales.crm"],
|
|
23887
|
-
["crm-timeout-checker-diagnostic-workflow", "sales.crm"],
|
|
23888
|
-
["ist-toolkit-diagnostic-workflow", "sales.lead-gen"],
|
|
23889
|
-
["ist-toolkit-diagnostic-orchestrator", "sales.lead-gen"],
|
|
23890
|
-
["ist-cross-batch-prompting-diagnostic-workflow", "sales.lead-gen"],
|
|
23891
|
-
["llm-diagnostic", "platform"],
|
|
23892
|
-
["execution-diagnostic", "platform"],
|
|
23893
|
-
["scheduler-diagnostic", "platform"],
|
|
23894
|
-
["storage-diagnostic", "platform"],
|
|
23895
|
-
["lead-diagnostic", "platform"],
|
|
23896
|
-
["email-diagnostic", "platform"],
|
|
23897
|
-
["approval-diagnostic", "platform"],
|
|
23898
|
-
["pdf-diagnostic", "platform"],
|
|
23899
|
-
["notification-diagnostic", "platform"],
|
|
23900
|
-
["notification-sequence-diagnostic", "platform"],
|
|
23901
|
-
["echo", "platform"],
|
|
23902
|
-
["migration-smoke", "platform"],
|
|
23903
|
-
["inb-01-instantly-reply-handler-workflow", "sales.crm"],
|
|
23904
|
-
["inb-01-booking-nudge-workflow", "sales.crm"],
|
|
23905
|
-
["inb-01-send-booking-reply-workflow", "sales.crm"],
|
|
23906
|
-
["inb-01-send-subsequent-reply-workflow", "sales.crm"],
|
|
23907
|
-
["inb-02-discovery-reminder-workflow", "sales.crm"],
|
|
23908
|
-
["cal-booking-revert-workflow", "sales.crm"],
|
|
23909
|
-
["inb-02-booking-handler-workflow", "sales.crm"],
|
|
23910
|
-
["inb-02b-organic-booking-handler-workflow", "sales.crm"],
|
|
23911
|
-
["inb-03-discovery-form-handler-workflow", "sales.crm"],
|
|
23912
|
-
["discovery-form-revert-workflow", "sales.crm"],
|
|
23913
|
-
["inb-pipeline-timeout-nurture-workflow", "sales.crm"],
|
|
23914
|
-
["inb-pipeline-timeout-close-lost-workflow", "sales.crm"],
|
|
23915
|
-
["inb-pipeline-timeout-no-show-workflow", "sales.crm"],
|
|
23916
|
-
["inb-pipeline-timeout-followup-workflow", "sales.crm"],
|
|
23917
|
-
["inb-pipeline-timeout-checker-workflow", "sales.crm"],
|
|
23918
|
-
["inb-pipeline-unsubscribe-cleanup-workflow", "sales.crm"],
|
|
23919
|
-
["inb-full-cleanup-workflow", "sales.crm"],
|
|
23920
|
-
["lgn-01a-google-maps-scrape-workflow", "sales.lead-gen", "lead-gen.company.source"],
|
|
23921
|
-
["lgn-01b-apify-acquire-workflow", "sales.lead-gen", "lead-gen.company.source"],
|
|
23922
|
-
["lgn-01c-apollo-import-workflow", "sales.lead-gen", "lead-gen.company.apollo-import"],
|
|
23923
|
-
["lgn-02a-apify-website-crawl-workflow", "sales.lead-gen", "lead-gen.company.apify-crawl"],
|
|
23924
|
-
["lgn-02-website-extract-workflow", "sales.lead-gen", "lead-gen.company.website-extract"],
|
|
23925
|
-
["lgn-website-extract-compare-workflow", "sales.lead-gen"],
|
|
23926
|
-
["lgn-03-company-qualification-workflow", "sales.lead-gen", "lead-gen.company.qualify"],
|
|
23927
|
-
["lgn-03b-dtc-subscription-score-workflow", "sales.lead-gen", "lead-gen.company.dtc-subscription-qualify"],
|
|
23928
|
-
["lgn-04-email-discovery-workflow", "sales.lead-gen", "lead-gen.contact.discover"],
|
|
23929
|
-
["lgn-04b-apollo-decision-maker-enrich-workflow", "sales.lead-gen", "lead-gen.contact.apollo-decision-maker-enrich"],
|
|
23930
|
-
["lgn-05-email-verification-workflow", "sales.lead-gen", "lead-gen.contact.verify-email"],
|
|
23931
|
-
["lgn-06-export-list-workflow", "sales.lead-gen", "lead-gen.export.list"],
|
|
23932
|
-
["lgn-import-workflow", "sales.lead-gen", "lead-gen.company.source"],
|
|
23933
|
-
["lgn-company-cleanup-workflow", "sales.lead-gen", "lead-gen.company.cleanup"],
|
|
23934
|
-
["lgn-assign-to-list-workflow", "sales.lead-gen"],
|
|
23935
|
-
["ist-upload-contacts-workflow", "sales.lead-gen", "lead-gen.review.outreach-ready"],
|
|
23936
|
-
["ist-campaign-create-workflow", "sales.lead-gen", "campaign.create"],
|
|
23937
|
-
["ist-analytics-workflow", "sales.lead-gen", "campaign.analyze"],
|
|
23938
|
-
["ist-ab-suggest-workflow", "sales.lead-gen", "campaign.optimize"],
|
|
23939
|
-
["ist-personalization-workflow", "sales.lead-gen", "lead-gen.contact.personalize"],
|
|
23940
|
-
["ist-campaign-review-workflow", "sales.lead-gen", "campaign.analyze"],
|
|
23941
|
-
["ist-cleanup-workflow", "sales.lead-gen", "campaign.delete"],
|
|
23942
|
-
["ist-campaign-list-workflow", "sales.lead-gen", "campaign.sync-list"],
|
|
23943
|
-
["ist-campaign-delete-workflow", "sales.lead-gen", "campaign.delete"],
|
|
23944
|
-
["ist-account-inventory-workflow", "sales.lead-gen", "campaign.analyze"],
|
|
23945
|
-
["ist-campaign-pause-workflow", "sales.lead-gen", "campaign.pause"],
|
|
23946
|
-
["ist-campaign-activate-workflow", "sales.lead-gen", "campaign.activate"],
|
|
23947
|
-
["ist-campaign-update-accounts-workflow", "sales.lead-gen", "campaign.update"],
|
|
23948
|
-
["ist-update-lead-variables-workflow", "sales.lead-gen", "campaign.update"],
|
|
23949
|
-
["mnt-reddit-monitor-workflow", "sales.lead-gen"],
|
|
23950
|
-
["mnt-reddit-scan-workflow", "sales.lead-gen"],
|
|
23951
|
-
["mnt-linkedin-monitor-workflow", "sales.lead-gen"],
|
|
23952
|
-
["website-form-intake-handler-workflow", "seo"],
|
|
23953
|
-
["grsi-change-request-workflow", "client-management"],
|
|
23954
|
-
["iss-submission-workflow", "client-management", "client-management.support-issue.review"],
|
|
23955
|
-
["youtube-research-workflow", "platform"],
|
|
23956
|
-
["send-email-workflow", "platform"],
|
|
23957
|
-
["platform-status", "platform"],
|
|
23958
|
-
["deal-browse", "sales.crm"],
|
|
23959
|
-
["crm-send-reply-workflow", "sales.crm", "send_reply"],
|
|
23960
|
-
["crm-reply-followup-workflow", "sales.crm", "reply_followup"],
|
|
23961
|
-
["crm-send-booking-link-workflow", "sales.crm", "send_link"],
|
|
23962
|
-
["crm-send-nudge-workflow", "sales.crm", "send_nudge"],
|
|
23963
|
-
["crm-rebook-workflow", "sales.crm", "rebook"],
|
|
23964
|
-
["move_to_proposal-workflow", "sales.crm", "move_to_proposal"],
|
|
23965
|
-
["move_to_closing-workflow", "sales.crm", "move_to_closing"],
|
|
23966
|
-
["move_to_closed_won-workflow", "sales.crm", "move_to_closed_won"],
|
|
23967
|
-
["move_to_closed_lost-workflow", "sales.crm", "move_to_closed_lost"],
|
|
23968
|
-
["move_to_nurturing-workflow", "sales.crm", "move_to_nurturing"],
|
|
23969
|
-
["mark_no_show-workflow", "sales.crm", "mark_no_show"]
|
|
23970
|
-
];
|
|
23971
|
-
var leadGenCompany = "sales.lead-gen:object/company";
|
|
23972
|
-
var leadGenContact = "sales.lead-gen:object/contact";
|
|
23973
|
-
var leadGenList = "sales.lead-gen:object/list";
|
|
23974
|
-
var leadGenCampaign = "sales.lead-gen:object/campaign";
|
|
23975
|
-
var leadGenCompanyStage = "sales.lead-gen:catalog/company-stage";
|
|
23976
|
-
var leadGenContactStage = "sales.lead-gen:catalog/contact-stage";
|
|
23977
|
-
var leadGenBuildTemplate = "sales.lead-gen:catalog/build-template";
|
|
23978
|
-
var leadGenLocalServicesTemplateStep = "sales.lead-gen:catalog/template-step.local-services";
|
|
23979
|
-
var leadGenDtcSubscriptionTemplateStep = "sales.lead-gen:catalog/template-step.dtc-subscription";
|
|
23980
|
-
var leadGenCampaignStatus = "sales.lead-gen:catalog/campaign-status";
|
|
23981
|
-
var crmDeal = "sales.crm:object/deal";
|
|
23982
|
-
var crmContact = "sales.crm:object/contact";
|
|
23983
|
-
var crmPipeline = "sales.crm:catalog/crm.pipeline";
|
|
23984
|
-
var clientSupportIssue = "client-management:object/support-issue";
|
|
23985
|
-
var clientSupportIssueSeverity = "client-management:catalog/support-issue-severity";
|
|
23986
|
-
var workflowOntologyBindingsByBuildActionKey = {
|
|
23987
|
-
"lead-gen.company.source": {
|
|
23988
|
-
actions: ["sales.lead-gen:action/company.source"],
|
|
23989
|
-
primaryAction: "sales.lead-gen:action/company.source",
|
|
23990
|
-
writes: [leadGenCompany],
|
|
23991
|
-
usesCatalogs: [leadGenBuildTemplate, leadGenLocalServicesTemplateStep]
|
|
23992
|
-
},
|
|
23993
|
-
"lead-gen.company.apollo-import": {
|
|
23994
|
-
actions: ["sales.lead-gen:action/company.source"],
|
|
23995
|
-
primaryAction: "sales.lead-gen:action/company.source",
|
|
23996
|
-
writes: [leadGenCompany, leadGenContact],
|
|
23997
|
-
usesCatalogs: [leadGenBuildTemplate, leadGenDtcSubscriptionTemplateStep]
|
|
23998
|
-
},
|
|
23999
|
-
"lead-gen.company.apify-crawl": {
|
|
24000
|
-
actions: ["sales.lead-gen:action/company.website-extract"],
|
|
24001
|
-
primaryAction: "sales.lead-gen:action/company.website-extract",
|
|
24002
|
-
reads: [leadGenCompany],
|
|
24003
|
-
writes: [leadGenCompany]
|
|
24004
|
-
},
|
|
24005
|
-
"lead-gen.company.website-extract": {
|
|
24006
|
-
actions: ["sales.lead-gen:action/company.website-extract"],
|
|
24007
|
-
primaryAction: "sales.lead-gen:action/company.website-extract",
|
|
24008
|
-
reads: [leadGenCompany],
|
|
24009
|
-
writes: [leadGenCompany, leadGenContact]
|
|
24010
|
-
},
|
|
24011
|
-
"lead-gen.company.qualify": {
|
|
24012
|
-
actions: ["sales.lead-gen:action/company.qualify"],
|
|
24013
|
-
primaryAction: "sales.lead-gen:action/company.qualify",
|
|
24014
|
-
reads: [leadGenCompany],
|
|
24015
|
-
writes: [leadGenCompany],
|
|
24016
|
-
usesCatalogs: [leadGenCompanyStage],
|
|
24017
|
-
emits: ["sales.lead-gen:event/company.qualified"]
|
|
24018
|
-
},
|
|
24019
|
-
"lead-gen.company.dtc-subscription-qualify": {
|
|
24020
|
-
actions: ["sales.lead-gen:action/company.qualify"],
|
|
24021
|
-
primaryAction: "sales.lead-gen:action/company.qualify",
|
|
24022
|
-
reads: [leadGenCompany],
|
|
24023
|
-
writes: [leadGenCompany],
|
|
24024
|
-
usesCatalogs: [leadGenCompanyStage, leadGenDtcSubscriptionTemplateStep],
|
|
24025
|
-
emits: ["sales.lead-gen:event/company.qualified"]
|
|
24026
|
-
},
|
|
24027
|
-
"lead-gen.contact.discover": {
|
|
24028
|
-
actions: ["sales.lead-gen:action/contact.discover"],
|
|
24029
|
-
primaryAction: "sales.lead-gen:action/contact.discover",
|
|
24030
|
-
reads: [leadGenCompany],
|
|
24031
|
-
writes: [leadGenContact],
|
|
24032
|
-
usesCatalogs: [leadGenContactStage]
|
|
24033
|
-
},
|
|
24034
|
-
"lead-gen.contact.apollo-decision-maker-enrich": {
|
|
24035
|
-
actions: ["sales.lead-gen:action/contact.discover"],
|
|
24036
|
-
primaryAction: "sales.lead-gen:action/contact.discover",
|
|
24037
|
-
reads: [leadGenCompany],
|
|
24038
|
-
writes: [leadGenContact],
|
|
24039
|
-
usesCatalogs: [leadGenContactStage]
|
|
24040
|
-
},
|
|
24041
|
-
"lead-gen.contact.verify-email": {
|
|
24042
|
-
actions: ["sales.lead-gen:action/contact.verify-email"],
|
|
24043
|
-
primaryAction: "sales.lead-gen:action/contact.verify-email",
|
|
24044
|
-
reads: [leadGenContact],
|
|
24045
|
-
writes: [leadGenContact],
|
|
24046
|
-
usesCatalogs: [leadGenContactStage],
|
|
24047
|
-
emits: ["sales.lead-gen:event/contact.verified"]
|
|
24048
|
-
},
|
|
24049
|
-
"lead-gen.contact.personalize": {
|
|
24050
|
-
actions: ["sales.lead-gen:action/contact.personalize"],
|
|
24051
|
-
primaryAction: "sales.lead-gen:action/contact.personalize",
|
|
24052
|
-
reads: [leadGenContact],
|
|
24053
|
-
writes: [leadGenContact],
|
|
24054
|
-
usesCatalogs: [leadGenContactStage]
|
|
24055
|
-
},
|
|
24056
|
-
"lead-gen.review.outreach-ready": {
|
|
24057
|
-
actions: ["sales.lead-gen:action/export.list"],
|
|
24058
|
-
primaryAction: "sales.lead-gen:action/export.list",
|
|
24059
|
-
reads: [leadGenContact, leadGenList],
|
|
24060
|
-
writes: [leadGenList],
|
|
24061
|
-
usesCatalogs: [leadGenBuildTemplate],
|
|
24062
|
-
emits: ["sales.lead-gen:event/list.exported"]
|
|
24063
|
-
},
|
|
24064
|
-
"lead-gen.export.list": {
|
|
24065
|
-
actions: ["sales.lead-gen:action/export.list"],
|
|
24066
|
-
primaryAction: "sales.lead-gen:action/export.list",
|
|
24067
|
-
reads: [leadGenCompany, leadGenContact, leadGenList],
|
|
24068
|
-
writes: [leadGenList],
|
|
24069
|
-
usesCatalogs: [
|
|
24070
|
-
leadGenBuildTemplate,
|
|
24071
|
-
leadGenLocalServicesTemplateStep,
|
|
24072
|
-
leadGenDtcSubscriptionTemplateStep,
|
|
24073
|
-
leadGenCompanyStage,
|
|
24074
|
-
leadGenContactStage,
|
|
24075
|
-
crmPipeline
|
|
24076
|
-
],
|
|
24077
|
-
emits: ["sales.lead-gen:event/list.exported"]
|
|
24078
|
-
},
|
|
24079
|
-
"campaign.create": {
|
|
24080
|
-
actions: ["sales.lead-gen:action/campaign.create"],
|
|
24081
|
-
primaryAction: "sales.lead-gen:action/campaign.create",
|
|
24082
|
-
writes: [leadGenCampaign],
|
|
24083
|
-
usesCatalogs: [leadGenCampaignStatus]
|
|
24084
|
-
},
|
|
24085
|
-
"campaign.analyze": {
|
|
24086
|
-
actions: ["sales.lead-gen:action/campaign.analyze"],
|
|
24087
|
-
primaryAction: "sales.lead-gen:action/campaign.analyze",
|
|
24088
|
-
reads: [leadGenCampaign],
|
|
24089
|
-
usesCatalogs: [leadGenCampaignStatus]
|
|
24090
|
-
},
|
|
24091
|
-
"campaign.optimize": {
|
|
24092
|
-
actions: ["sales.lead-gen:action/campaign.optimize"],
|
|
24093
|
-
primaryAction: "sales.lead-gen:action/campaign.optimize",
|
|
24094
|
-
reads: [leadGenCampaign],
|
|
24095
|
-
writes: [leadGenCampaign],
|
|
24096
|
-
usesCatalogs: [leadGenCampaignStatus]
|
|
24097
|
-
},
|
|
24098
|
-
"campaign.update": {
|
|
24099
|
-
actions: ["sales.lead-gen:action/campaign.update"],
|
|
24100
|
-
primaryAction: "sales.lead-gen:action/campaign.update",
|
|
24101
|
-
reads: [leadGenCampaign],
|
|
24102
|
-
writes: [leadGenCampaign],
|
|
24103
|
-
usesCatalogs: [leadGenCampaignStatus]
|
|
24104
|
-
},
|
|
24105
|
-
"campaign.activate": {
|
|
24106
|
-
actions: ["sales.lead-gen:action/campaign.activate"],
|
|
24107
|
-
primaryAction: "sales.lead-gen:action/campaign.activate",
|
|
24108
|
-
reads: [leadGenCampaign],
|
|
24109
|
-
writes: [leadGenCampaign],
|
|
24110
|
-
usesCatalogs: [leadGenCampaignStatus]
|
|
24111
|
-
},
|
|
24112
|
-
"campaign.pause": {
|
|
24113
|
-
actions: ["sales.lead-gen:action/campaign.pause"],
|
|
24114
|
-
primaryAction: "sales.lead-gen:action/campaign.pause",
|
|
24115
|
-
reads: [leadGenCampaign],
|
|
24116
|
-
writes: [leadGenCampaign],
|
|
24117
|
-
usesCatalogs: [leadGenCampaignStatus]
|
|
24118
|
-
},
|
|
24119
|
-
"campaign.delete": {
|
|
24120
|
-
actions: ["sales.lead-gen:action/campaign.delete"],
|
|
24121
|
-
primaryAction: "sales.lead-gen:action/campaign.delete",
|
|
24122
|
-
reads: [leadGenCampaign],
|
|
24123
|
-
writes: [leadGenCampaign],
|
|
24124
|
-
usesCatalogs: [leadGenCampaignStatus]
|
|
24125
|
-
},
|
|
24126
|
-
"campaign.sync-list": {
|
|
24127
|
-
actions: ["sales.lead-gen:action/campaign.sync-list"],
|
|
24128
|
-
primaryAction: "sales.lead-gen:action/campaign.sync-list",
|
|
24129
|
-
reads: [leadGenCampaign, leadGenContact],
|
|
24130
|
-
writes: [leadGenList],
|
|
24131
|
-
usesCatalogs: [leadGenBuildTemplate, leadGenCampaignStatus]
|
|
24132
|
-
},
|
|
24133
|
-
"client-management.support-issue.review": {
|
|
24134
|
-
actions: ["client-management:action/support-issue.review"],
|
|
24135
|
-
primaryAction: "client-management:action/support-issue.review",
|
|
24136
|
-
writes: [clientSupportIssue],
|
|
24137
|
-
usesCatalogs: [clientSupportIssueSeverity],
|
|
24138
|
-
emits: ["client-management:event/support-issue.submitted"]
|
|
24139
|
-
},
|
|
24140
|
-
"lead-gen.company.cleanup": {
|
|
24141
|
-
actions: ["sales.lead-gen:action/company.qualify"],
|
|
24142
|
-
primaryAction: "sales.lead-gen:action/company.qualify",
|
|
24143
|
-
reads: [leadGenCompany],
|
|
24144
|
-
writes: [leadGenCompany],
|
|
24145
|
-
usesCatalogs: [leadGenCompanyStage]
|
|
24146
|
-
},
|
|
24147
|
-
send_reply: {
|
|
24148
|
-
actions: ["sales.crm:action/deal.send-reply"],
|
|
24149
|
-
primaryAction: "sales.crm:action/deal.send-reply",
|
|
24150
|
-
reads: [crmDeal, crmContact],
|
|
24151
|
-
writes: [crmDeal]
|
|
24152
|
-
},
|
|
24153
|
-
reply_followup: {
|
|
24154
|
-
actions: ["sales.crm:action/deal.send-reply"],
|
|
24155
|
-
primaryAction: "sales.crm:action/deal.send-reply",
|
|
24156
|
-
reads: [crmDeal, crmContact],
|
|
24157
|
-
writes: [crmDeal]
|
|
24158
|
-
},
|
|
24159
|
-
send_link: {
|
|
24160
|
-
actions: ["sales.crm:action/deal.send-booking-link"],
|
|
24161
|
-
primaryAction: "sales.crm:action/deal.send-booking-link",
|
|
24162
|
-
reads: [crmDeal, crmContact],
|
|
24163
|
-
writes: [crmDeal]
|
|
24164
|
-
},
|
|
24165
|
-
send_nudge: {
|
|
24166
|
-
actions: ["sales.crm:action/deal.send-nudge"],
|
|
24167
|
-
primaryAction: "sales.crm:action/deal.send-nudge",
|
|
24168
|
-
reads: [crmDeal, crmContact],
|
|
24169
|
-
writes: [crmDeal]
|
|
24170
|
-
},
|
|
24171
|
-
rebook: {
|
|
24172
|
-
actions: ["sales.crm:action/deal.rebook"],
|
|
24173
|
-
primaryAction: "sales.crm:action/deal.rebook",
|
|
24174
|
-
reads: [crmDeal, crmContact],
|
|
24175
|
-
writes: [crmDeal]
|
|
24176
|
-
},
|
|
24177
|
-
move_to_proposal: {
|
|
24178
|
-
actions: ["sales.crm:action/deal.update-stage"],
|
|
24179
|
-
primaryAction: "sales.crm:action/deal.update-stage",
|
|
24180
|
-
reads: [crmDeal],
|
|
24181
|
-
writes: [crmDeal],
|
|
24182
|
-
usesCatalogs: [crmPipeline],
|
|
24183
|
-
emits: ["sales.crm:event/deal.stage-changed"]
|
|
24184
|
-
},
|
|
24185
|
-
move_to_closing: {
|
|
24186
|
-
actions: ["sales.crm:action/deal.update-stage"],
|
|
24187
|
-
primaryAction: "sales.crm:action/deal.update-stage",
|
|
24188
|
-
reads: [crmDeal],
|
|
24189
|
-
writes: [crmDeal],
|
|
24190
|
-
usesCatalogs: [crmPipeline],
|
|
24191
|
-
emits: ["sales.crm:event/deal.stage-changed"]
|
|
24192
|
-
},
|
|
24193
|
-
move_to_closed_won: {
|
|
24194
|
-
actions: ["sales.crm:action/deal.update-stage"],
|
|
24195
|
-
primaryAction: "sales.crm:action/deal.update-stage",
|
|
24196
|
-
reads: [crmDeal],
|
|
24197
|
-
writes: [crmDeal],
|
|
24198
|
-
usesCatalogs: [crmPipeline],
|
|
24199
|
-
emits: ["sales.crm:event/deal.stage-changed"]
|
|
24200
|
-
},
|
|
24201
|
-
move_to_closed_lost: {
|
|
24202
|
-
actions: ["sales.crm:action/deal.update-stage"],
|
|
24203
|
-
primaryAction: "sales.crm:action/deal.update-stage",
|
|
24204
|
-
reads: [crmDeal],
|
|
24205
|
-
writes: [crmDeal],
|
|
24206
|
-
usesCatalogs: [crmPipeline],
|
|
24207
|
-
emits: ["sales.crm:event/deal.stage-changed"]
|
|
24208
|
-
},
|
|
24209
|
-
move_to_nurturing: {
|
|
24210
|
-
actions: ["sales.crm:action/deal.update-stage"],
|
|
24211
|
-
primaryAction: "sales.crm:action/deal.update-stage",
|
|
24212
|
-
reads: [crmDeal],
|
|
24213
|
-
writes: [crmDeal],
|
|
24214
|
-
usesCatalogs: [crmPipeline],
|
|
24215
|
-
emits: ["sales.crm:event/deal.stage-changed"]
|
|
24216
|
-
},
|
|
24217
|
-
mark_no_show: {
|
|
24218
|
-
actions: ["sales.crm:action/deal.update-stage"],
|
|
24219
|
-
primaryAction: "sales.crm:action/deal.update-stage",
|
|
24220
|
-
reads: [crmDeal],
|
|
24221
|
-
writes: [crmDeal],
|
|
24222
|
-
usesCatalogs: [crmPipeline],
|
|
24223
|
-
emits: ["sales.crm:event/deal.stage-changed"]
|
|
24224
|
-
}
|
|
24225
|
-
};
|
|
24226
|
-
var workflowContractsByResourceId = {
|
|
24227
|
-
"lgn-01c-apollo-import-workflow": {
|
|
24228
|
-
input: "@repo/elevasis-core/contracts/apollo-import#inputSchema"
|
|
23847
|
+
// ../elevasis-core/src/organization-model/actions.ts
|
|
23848
|
+
var LEAD_GEN_ACTION_ENTRY_INPUTS = [
|
|
23849
|
+
{
|
|
23850
|
+
id: "lead-gen.company.source",
|
|
23851
|
+
order: 10,
|
|
23852
|
+
label: "Source companies",
|
|
23853
|
+
description: "Import source companies from a list provider.",
|
|
23854
|
+
scope: { domain: "sales" },
|
|
23855
|
+
resourceId: "lgn-import-workflow",
|
|
23856
|
+
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/source" }],
|
|
23857
|
+
lifecycle: "active",
|
|
23858
|
+
knowledge: []
|
|
24229
23859
|
},
|
|
24230
|
-
|
|
24231
|
-
|
|
23860
|
+
{
|
|
23861
|
+
id: "lead-gen.company.apollo-import",
|
|
23862
|
+
order: 20,
|
|
23863
|
+
label: "Import from Apollo",
|
|
23864
|
+
description: "Pull companies and seed contact data from an Apollo search or list.",
|
|
23865
|
+
scope: { domain: "sales" },
|
|
23866
|
+
resourceId: "lgn-01c-apollo-import-workflow",
|
|
23867
|
+
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/apollo-import" }],
|
|
23868
|
+
lifecycle: "active",
|
|
23869
|
+
knowledge: []
|
|
24232
23870
|
},
|
|
24233
|
-
|
|
24234
|
-
|
|
23871
|
+
{
|
|
23872
|
+
id: "lead-gen.contact.discover",
|
|
23873
|
+
order: 30,
|
|
23874
|
+
label: "Discover contact emails",
|
|
23875
|
+
description: "Find email addresses for contacts at qualified companies.",
|
|
23876
|
+
scope: { domain: "sales" },
|
|
23877
|
+
resourceId: "lgn-04-email-discovery-workflow",
|
|
23878
|
+
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/contacts/discover" }],
|
|
23879
|
+
lifecycle: "active",
|
|
23880
|
+
knowledge: []
|
|
24235
23881
|
},
|
|
24236
|
-
|
|
24237
|
-
|
|
23882
|
+
{
|
|
23883
|
+
id: "lead-gen.contact.verify-email",
|
|
23884
|
+
order: 40,
|
|
23885
|
+
label: "Verify emails",
|
|
23886
|
+
description: "Check email deliverability before outreach.",
|
|
23887
|
+
scope: { domain: "sales" },
|
|
23888
|
+
resourceId: "lgn-05-email-verification-workflow",
|
|
23889
|
+
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/contacts/verify-email" }],
|
|
23890
|
+
lifecycle: "active",
|
|
23891
|
+
knowledge: []
|
|
24238
23892
|
},
|
|
24239
|
-
|
|
24240
|
-
|
|
23893
|
+
{
|
|
23894
|
+
id: "lead-gen.company.apify-crawl",
|
|
23895
|
+
order: 50,
|
|
23896
|
+
label: "Crawl websites",
|
|
23897
|
+
description: "Crawl company websites via Apify and store raw page markdown for downstream LLM analysis.",
|
|
23898
|
+
scope: { domain: "sales" },
|
|
23899
|
+
resourceId: "lgn-02a-apify-website-crawl-workflow",
|
|
23900
|
+
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/apify-crawl" }],
|
|
23901
|
+
lifecycle: "active",
|
|
23902
|
+
knowledge: []
|
|
24241
23903
|
},
|
|
24242
|
-
|
|
24243
|
-
|
|
24244
|
-
|
|
23904
|
+
{
|
|
23905
|
+
id: "lead-gen.company.website-extract",
|
|
23906
|
+
order: 60,
|
|
23907
|
+
label: "Extract website signals",
|
|
23908
|
+
description: "Scrape and analyze company websites for qualification signals.",
|
|
23909
|
+
scope: { domain: "sales" },
|
|
23910
|
+
resourceId: "lgn-02-website-extract-workflow",
|
|
23911
|
+
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/website-extract" }],
|
|
23912
|
+
lifecycle: "active",
|
|
23913
|
+
knowledge: []
|
|
24245
23914
|
},
|
|
24246
|
-
|
|
24247
|
-
|
|
23915
|
+
{
|
|
23916
|
+
id: "lead-gen.company.qualify",
|
|
23917
|
+
order: 70,
|
|
23918
|
+
label: "Qualify companies",
|
|
23919
|
+
description: "Score and filter companies against the ICP rubric.",
|
|
23920
|
+
scope: { domain: "sales" },
|
|
23921
|
+
resourceId: "lgn-03-company-qualification-workflow",
|
|
23922
|
+
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/qualify" }],
|
|
23923
|
+
lifecycle: "active",
|
|
23924
|
+
knowledge: []
|
|
24248
23925
|
},
|
|
24249
|
-
|
|
24250
|
-
|
|
23926
|
+
{
|
|
23927
|
+
id: "lead-gen.company.dtc-subscription-qualify",
|
|
23928
|
+
order: 80,
|
|
23929
|
+
label: "Qualify DTC subscription fit",
|
|
23930
|
+
description: "Classify subscription potential and consumable-product fit for DTC brands.",
|
|
23931
|
+
scope: { domain: "sales" },
|
|
23932
|
+
resourceId: "lgn-03b-dtc-subscription-score-workflow",
|
|
23933
|
+
invocations: [
|
|
23934
|
+
{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/dtc-subscription-qualify" }
|
|
23935
|
+
],
|
|
23936
|
+
lifecycle: "active",
|
|
23937
|
+
knowledge: []
|
|
24251
23938
|
},
|
|
24252
|
-
|
|
24253
|
-
|
|
23939
|
+
{
|
|
23940
|
+
id: "lead-gen.contact.apollo-decision-maker-enrich",
|
|
23941
|
+
order: 90,
|
|
23942
|
+
label: "Enrich decision-makers",
|
|
23943
|
+
description: "Find and enrich qualified contacts at qualified companies via Apollo.",
|
|
23944
|
+
scope: { domain: "sales" },
|
|
23945
|
+
resourceId: "lgn-04b-apollo-decision-maker-enrich-workflow",
|
|
23946
|
+
invocations: [
|
|
23947
|
+
{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/contacts/apollo-decision-maker-enrich" }
|
|
23948
|
+
],
|
|
23949
|
+
lifecycle: "active",
|
|
23950
|
+
knowledge: []
|
|
24254
23951
|
},
|
|
24255
|
-
|
|
24256
|
-
|
|
23952
|
+
{
|
|
23953
|
+
id: "lead-gen.contact.personalize",
|
|
23954
|
+
order: 100,
|
|
23955
|
+
label: "Personalize outreach",
|
|
23956
|
+
description: "Generate personalized opening lines for each contact.",
|
|
23957
|
+
scope: { domain: "sales" },
|
|
23958
|
+
resourceId: "ist-personalization-workflow",
|
|
23959
|
+
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/contacts/personalize" }],
|
|
23960
|
+
lifecycle: "active",
|
|
23961
|
+
knowledge: []
|
|
24257
23962
|
},
|
|
24258
|
-
|
|
24259
|
-
|
|
23963
|
+
{
|
|
23964
|
+
id: "lead-gen.review.outreach-ready",
|
|
23965
|
+
order: 110,
|
|
23966
|
+
label: "Upload to outreach",
|
|
23967
|
+
description: "Upload approved contacts to the outreach sequence after QC review.",
|
|
23968
|
+
scope: { domain: "sales" },
|
|
23969
|
+
resourceId: "ist-upload-contacts-workflow",
|
|
23970
|
+
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/review/outreach-ready" }],
|
|
23971
|
+
lifecycle: "active",
|
|
23972
|
+
knowledge: []
|
|
24260
23973
|
},
|
|
24261
|
-
|
|
24262
|
-
|
|
23974
|
+
{
|
|
23975
|
+
id: "lead-gen.export.list",
|
|
23976
|
+
order: 120,
|
|
23977
|
+
label: "Export lead list",
|
|
23978
|
+
description: "Export approved leads as a downloadable lead list.",
|
|
23979
|
+
scope: { domain: "sales" },
|
|
23980
|
+
resourceId: "lgn-06-export-list-workflow",
|
|
23981
|
+
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/export/list" }],
|
|
23982
|
+
lifecycle: "active",
|
|
23983
|
+
knowledge: []
|
|
24263
23984
|
},
|
|
24264
|
-
|
|
24265
|
-
|
|
23985
|
+
{
|
|
23986
|
+
id: "lead-gen.company.cleanup",
|
|
23987
|
+
order: 130,
|
|
23988
|
+
label: "Clean up companies",
|
|
23989
|
+
description: "Remove disqualified or duplicate companies from the list.",
|
|
23990
|
+
scope: { domain: "sales" },
|
|
23991
|
+
resourceId: "lgn-company-cleanup-workflow",
|
|
23992
|
+
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/cleanup" }],
|
|
23993
|
+
lifecycle: "active",
|
|
23994
|
+
knowledge: []
|
|
24266
23995
|
}
|
|
24267
|
-
|
|
24268
|
-
var
|
|
24269
|
-
|
|
24270
|
-
|
|
24271
|
-
|
|
24272
|
-
|
|
24273
|
-
|
|
24274
|
-
|
|
24275
|
-
{
|
|
24276
|
-
|
|
24277
|
-
|
|
24278
|
-
|
|
24279
|
-
|
|
24280
|
-
|
|
24281
|
-
"lgn-01a-google-maps-scrape-workflow": [
|
|
24282
|
-
{
|
|
24283
|
-
path: "packages/elevasis-operations/src/sales/prospecting/scrape/apify-scrape.ts",
|
|
24284
|
-
role: "entrypoint",
|
|
24285
|
-
symbol: "ldsApifyScrapeWorkflow"
|
|
24286
|
-
}
|
|
24287
|
-
],
|
|
24288
|
-
"lgn-01b-apify-acquire-workflow": [
|
|
24289
|
-
{
|
|
24290
|
-
path: "packages/elevasis-operations/src/sales/prospecting/scrape/apify-acquire.ts",
|
|
24291
|
-
role: "entrypoint",
|
|
24292
|
-
symbol: "ldsApifyAcquireWorkflow"
|
|
24293
|
-
}
|
|
24294
|
-
],
|
|
24295
|
-
"lgn-01c-apollo-import-workflow": [
|
|
24296
|
-
{
|
|
24297
|
-
path: "packages/elevasis-operations/src/sales/prospecting/scrape/apollo-import.ts",
|
|
24298
|
-
role: "entrypoint",
|
|
24299
|
-
symbol: "lgnApolloImportWorkflow"
|
|
24300
|
-
},
|
|
24301
|
-
{
|
|
24302
|
-
path: "packages/elevasis-operations/src/sales/prospecting/__tests__/apollo-import.test.ts",
|
|
24303
|
-
role: "test"
|
|
24304
|
-
}
|
|
24305
|
-
],
|
|
24306
|
-
"lgn-03-company-qualification-workflow": [
|
|
24307
|
-
{
|
|
24308
|
-
path: "packages/elevasis-operations/src/sales/qualification/qualify/company-qualification.ts",
|
|
24309
|
-
role: "entrypoint",
|
|
24310
|
-
symbol: "ldsCompanyQualificationWorkflow"
|
|
24311
|
-
},
|
|
24312
|
-
{
|
|
24313
|
-
path: "packages/elevasis-operations/src/sales/qualification/qualify/__tests__/company-qualification.test.ts",
|
|
24314
|
-
role: "test"
|
|
24315
|
-
}
|
|
24316
|
-
],
|
|
24317
|
-
"lgn-import-workflow": [
|
|
24318
|
-
{
|
|
24319
|
-
path: "packages/elevasis-operations/src/sales/prospecting/utilities/lead-import.ts",
|
|
24320
|
-
role: "entrypoint",
|
|
24321
|
-
symbol: "leadImportWorkflow"
|
|
24322
|
-
}
|
|
24323
|
-
],
|
|
24324
|
-
"lgn-assign-to-list-workflow": [
|
|
24325
|
-
{
|
|
24326
|
-
path: "packages/elevasis-operations/src/sales/prospecting/utilities/assign-to-list.ts",
|
|
24327
|
-
role: "entrypoint",
|
|
24328
|
-
symbol: "lgnAssignToListWorkflow"
|
|
24329
|
-
}
|
|
24330
|
-
],
|
|
24331
|
-
"lgn-website-extract-compare-workflow": [
|
|
24332
|
-
{
|
|
24333
|
-
path: "packages/elevasis-operations/src/sales/prospecting/extract/website-extract-compare.ts",
|
|
24334
|
-
role: "entrypoint",
|
|
24335
|
-
symbol: "lgnWebsiteExtractCompareWorkflow"
|
|
24336
|
-
}
|
|
24337
|
-
],
|
|
24338
|
-
"lgn-data-integrity-diagnostic": [
|
|
24339
|
-
{
|
|
24340
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/data-integrity-diagnostic.ts",
|
|
24341
|
-
role: "entrypoint",
|
|
24342
|
-
symbol: "dataIntegrityDiagnosticWorkflow"
|
|
24343
|
-
}
|
|
24344
|
-
],
|
|
24345
|
-
"lgn-diagnostic-orchestrator": [
|
|
24346
|
-
{
|
|
24347
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/lds-diagnostic-orchestrator.ts",
|
|
24348
|
-
role: "entrypoint",
|
|
24349
|
-
symbol: "ldsDiagnosticOrchestratorWorkflow"
|
|
24350
|
-
}
|
|
24351
|
-
],
|
|
24352
|
-
"lgn-dtc-apollo-pipeline-diagnostic": [
|
|
24353
|
-
{
|
|
24354
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/dtc-subscription-apollo-pipeline-diagnostic.ts",
|
|
24355
|
-
role: "entrypoint",
|
|
24356
|
-
symbol: "dtcSubscriptionApolloPipelineDiagnosticWorkflow"
|
|
24357
|
-
},
|
|
24358
|
-
{
|
|
24359
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/dtc-subscription-apollo-pipeline-diagnostic.test.ts",
|
|
24360
|
-
role: "test"
|
|
24361
|
-
}
|
|
24362
|
-
],
|
|
24363
|
-
"lgn-email-discovery-boundary-diagnostic-workflow": [
|
|
24364
|
-
{
|
|
24365
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/email-discovery-boundary-diagnostic.ts",
|
|
24366
|
-
role: "entrypoint",
|
|
24367
|
-
symbol: "emailDiscoveryBoundaryDiagnosticWorkflow"
|
|
24368
|
-
}
|
|
24369
|
-
],
|
|
24370
|
-
"lgn-email-discovery-diagnostic-workflow": [
|
|
24371
|
-
{
|
|
24372
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/email-discovery-diagnostic.ts",
|
|
24373
|
-
role: "entrypoint",
|
|
24374
|
-
symbol: "emailDiscoveryDiagnosticWorkflow"
|
|
24375
|
-
}
|
|
24376
|
-
],
|
|
24377
|
-
"lgn-lead-filter-diagnostic": [
|
|
24378
|
-
{
|
|
24379
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/lead-filter-diagnostic.ts",
|
|
24380
|
-
role: "entrypoint",
|
|
24381
|
-
symbol: "leadFilterDiagnosticWorkflow"
|
|
24382
|
-
}
|
|
24383
|
-
],
|
|
24384
|
-
"lgn-pipeline-diagnostic": [
|
|
24385
|
-
{
|
|
24386
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/pipeline-diagnostic.ts",
|
|
24387
|
-
role: "entrypoint",
|
|
24388
|
-
symbol: "pipelineDiagnosticWorkflow"
|
|
24389
|
-
}
|
|
24390
|
-
],
|
|
24391
|
-
"lgn-qualification-diagnostic": [
|
|
24392
|
-
{
|
|
24393
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/qualification-diagnostic.ts",
|
|
24394
|
-
role: "entrypoint",
|
|
24395
|
-
symbol: "qualificationDiagnosticWorkflow"
|
|
24396
|
-
}
|
|
24397
|
-
],
|
|
24398
|
-
"lgn-scrape-diagnostic": [
|
|
24399
|
-
{
|
|
24400
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/scrape-diagnostic.ts",
|
|
24401
|
-
role: "entrypoint",
|
|
24402
|
-
symbol: "scrapeDiagnosticWorkflow"
|
|
24403
|
-
}
|
|
24404
|
-
],
|
|
24405
|
-
"lgn-tomba-diagnostic-workflow": [
|
|
24406
|
-
{
|
|
24407
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/tomba-diagnostic.ts",
|
|
24408
|
-
role: "entrypoint",
|
|
24409
|
-
symbol: "tombaDiagnosticWorkflow"
|
|
24410
|
-
}
|
|
24411
|
-
],
|
|
24412
|
-
"lgn-verification-diagnostic": [
|
|
24413
|
-
{
|
|
24414
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/verification-diagnostic.ts",
|
|
24415
|
-
role: "entrypoint",
|
|
24416
|
-
symbol: "verificationDiagnosticWorkflow"
|
|
24417
|
-
},
|
|
24418
|
-
{
|
|
24419
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/verification-diagnostic.test.ts",
|
|
24420
|
-
role: "test"
|
|
24421
|
-
}
|
|
24422
|
-
],
|
|
24423
|
-
"lgn-website-extract-diagnostic-workflow": [
|
|
24424
|
-
{
|
|
24425
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/website-extract-diagnostic.ts",
|
|
24426
|
-
role: "entrypoint",
|
|
24427
|
-
symbol: "websiteExtractDiagnosticWorkflow"
|
|
24428
|
-
}
|
|
24429
|
-
],
|
|
24430
|
-
"lgn-amf-discovery-diagnostic-workflow": [
|
|
24431
|
-
{
|
|
24432
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/amf-discovery-diagnostic.ts",
|
|
24433
|
-
role: "entrypoint",
|
|
24434
|
-
symbol: "amfDiscoveryDiagnosticWorkflow"
|
|
24435
|
-
}
|
|
24436
|
-
],
|
|
24437
|
-
"lgn-tomba-discovery-diagnostic-workflow": [
|
|
24438
|
-
{
|
|
24439
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/tomba-discovery-diagnostic.ts",
|
|
24440
|
-
role: "entrypoint",
|
|
24441
|
-
symbol: "tombaDiscoveryDiagnosticWorkflow"
|
|
24442
|
-
}
|
|
24443
|
-
],
|
|
24444
|
-
"anymailfinder-diagnostic-workflow": [
|
|
24445
|
-
{
|
|
24446
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/anymailfinder-diagnostic.ts",
|
|
24447
|
-
role: "entrypoint",
|
|
24448
|
-
symbol: "anymailfinderDiagnosticWorkflow"
|
|
24449
|
-
}
|
|
24450
|
-
],
|
|
24451
|
-
"instantly-diagnostic-workflow": [
|
|
24452
|
-
{
|
|
24453
|
-
path: "packages/elevasis-operations/src/diagnostics/lead-gen/instantly-diagnostic.ts",
|
|
24454
|
-
role: "entrypoint",
|
|
24455
|
-
symbol: "instantlyDiagnosticWorkflow"
|
|
24456
|
-
}
|
|
24457
|
-
],
|
|
24458
|
-
"ist-upload-contacts-workflow": [
|
|
24459
|
-
{
|
|
24460
|
-
path: "packages/elevasis-operations/src/sales/outreach/instantly/instantly-upload.ts",
|
|
24461
|
-
role: "entrypoint",
|
|
24462
|
-
symbol: "ldsInstantlyUploadWorkflow"
|
|
24463
|
-
}
|
|
24464
|
-
],
|
|
24465
|
-
"inb-01-instantly-reply-handler-workflow": [
|
|
24466
|
-
{
|
|
24467
|
-
path: "packages/elevasis-operations/src/sales/outreach/reply/instantly-reply-handler.ts",
|
|
24468
|
-
role: "entrypoint",
|
|
24469
|
-
symbol: "instantlyReplyHandlerWorkflow"
|
|
24470
|
-
}
|
|
24471
|
-
],
|
|
24472
|
-
"inb-01-send-booking-reply-workflow": [
|
|
24473
|
-
{
|
|
24474
|
-
path: "packages/elevasis-operations/src/sales/outreach/reply/send-booking-reply.ts",
|
|
24475
|
-
role: "entrypoint",
|
|
24476
|
-
symbol: "sendBookingReplyWorkflow"
|
|
24477
|
-
}
|
|
24478
|
-
],
|
|
24479
|
-
"inb-01-send-subsequent-reply-workflow": [
|
|
24480
|
-
{
|
|
24481
|
-
path: "packages/elevasis-operations/src/sales/outreach/reply/send-subsequent-reply.ts",
|
|
24482
|
-
role: "entrypoint",
|
|
24483
|
-
symbol: "sendSubsequentReplyWorkflow"
|
|
24484
|
-
}
|
|
24485
|
-
],
|
|
24486
|
-
"inb-01-booking-nudge-workflow": [
|
|
24487
|
-
{
|
|
24488
|
-
path: "packages/elevasis-operations/src/sales/outreach/reply/booking-nudge.ts",
|
|
24489
|
-
role: "entrypoint",
|
|
24490
|
-
symbol: "bookingNudgeWorkflow"
|
|
24491
|
-
},
|
|
24492
|
-
{
|
|
24493
|
-
path: "packages/elevasis-operations/src/sales/outreach/reply/booking-nudge-schema.ts",
|
|
24494
|
-
role: "schema"
|
|
24495
|
-
}
|
|
24496
|
-
],
|
|
24497
|
-
"inb-02-booking-handler-workflow": [
|
|
24498
|
-
{
|
|
24499
|
-
path: "packages/elevasis-operations/src/sales/crm/booking/booking-handler.ts",
|
|
24500
|
-
role: "entrypoint",
|
|
24501
|
-
symbol: "bookingHandlerWorkflow"
|
|
24502
|
-
}
|
|
24503
|
-
],
|
|
24504
|
-
"cal-booking-revert-workflow": [
|
|
24505
|
-
{
|
|
24506
|
-
path: "packages/elevasis-operations/src/sales/crm/booking/booking-revert.ts",
|
|
24507
|
-
role: "entrypoint",
|
|
24508
|
-
symbol: "bookingRevertWorkflow"
|
|
24509
|
-
}
|
|
24510
|
-
],
|
|
24511
|
-
"inb-02-discovery-reminder-workflow": [
|
|
24512
|
-
{
|
|
24513
|
-
path: "packages/elevasis-operations/src/sales/crm/booking/discovery-reminder.ts",
|
|
24514
|
-
role: "entrypoint",
|
|
24515
|
-
symbol: "discoveryReminderWorkflow"
|
|
24516
|
-
}
|
|
24517
|
-
],
|
|
24518
|
-
"inb-02b-organic-booking-handler-workflow": [
|
|
24519
|
-
{
|
|
24520
|
-
path: "packages/elevasis-operations/src/sales/crm/booking/organic-booking-handler.ts",
|
|
24521
|
-
role: "entrypoint",
|
|
24522
|
-
symbol: "organicBookingHandlerWorkflow"
|
|
24523
|
-
}
|
|
24524
|
-
],
|
|
24525
|
-
"inb-03-discovery-form-handler-workflow": [
|
|
24526
|
-
{
|
|
24527
|
-
path: "packages/elevasis-operations/src/sales/qualification/discovery/discovery-form-handler.ts",
|
|
24528
|
-
role: "entrypoint",
|
|
24529
|
-
symbol: "discoveryFormHandlerWorkflow"
|
|
24530
|
-
}
|
|
24531
|
-
],
|
|
24532
|
-
"discovery-form-revert-workflow": [
|
|
24533
|
-
{
|
|
24534
|
-
path: "packages/elevasis-operations/src/sales/qualification/discovery/discovery-form-revert.ts",
|
|
24535
|
-
role: "entrypoint",
|
|
24536
|
-
symbol: "discoveryFormRevertWorkflow"
|
|
24537
|
-
}
|
|
24538
|
-
],
|
|
24539
|
-
"inb-pipeline-timeout-checker-workflow": [
|
|
24540
|
-
{
|
|
24541
|
-
path: "packages/elevasis-operations/src/sales/crm/pipeline/timeout-checker.ts",
|
|
24542
|
-
role: "entrypoint",
|
|
24543
|
-
symbol: "timeoutCheckerWorkflow"
|
|
24544
|
-
}
|
|
24545
|
-
],
|
|
24546
|
-
"inb-pipeline-timeout-followup-workflow": [
|
|
24547
|
-
{
|
|
24548
|
-
path: "packages/elevasis-operations/src/sales/crm/pipeline/timeout-actions.ts",
|
|
24549
|
-
role: "entrypoint",
|
|
24550
|
-
symbol: "timeoutFollowupWorkflow"
|
|
24551
|
-
}
|
|
24552
|
-
],
|
|
24553
|
-
"inb-pipeline-timeout-nurture-workflow": [
|
|
24554
|
-
{
|
|
24555
|
-
path: "packages/elevasis-operations/src/sales/crm/pipeline/timeout-actions.ts",
|
|
24556
|
-
role: "entrypoint",
|
|
24557
|
-
symbol: "timeoutNurtureWorkflow"
|
|
24558
|
-
}
|
|
24559
|
-
],
|
|
24560
|
-
"inb-pipeline-timeout-close-lost-workflow": [
|
|
24561
|
-
{
|
|
24562
|
-
path: "packages/elevasis-operations/src/sales/crm/pipeline/timeout-actions.ts",
|
|
24563
|
-
role: "entrypoint",
|
|
24564
|
-
symbol: "timeoutCloseLostWorkflow"
|
|
24565
|
-
}
|
|
24566
|
-
],
|
|
24567
|
-
"inb-pipeline-timeout-no-show-workflow": [
|
|
24568
|
-
{
|
|
24569
|
-
path: "packages/elevasis-operations/src/sales/crm/pipeline/timeout-actions.ts",
|
|
24570
|
-
role: "entrypoint",
|
|
24571
|
-
symbol: "timeoutNoShowWorkflow"
|
|
24572
|
-
}
|
|
24573
|
-
],
|
|
24574
|
-
"inb-full-cleanup-workflow": [
|
|
24575
|
-
{
|
|
24576
|
-
path: "packages/elevasis-operations/src/sales/crm/pipeline/full-cleanup.ts",
|
|
24577
|
-
role: "entrypoint",
|
|
24578
|
-
symbol: "fullCleanupWorkflow"
|
|
24579
|
-
}
|
|
24580
|
-
],
|
|
24581
|
-
"inb-pipeline-unsubscribe-cleanup-workflow": [
|
|
24582
|
-
{
|
|
24583
|
-
path: "packages/elevasis-operations/src/sales/crm/pipeline/unsubscribe-cleanup.ts",
|
|
24584
|
-
role: "entrypoint",
|
|
24585
|
-
symbol: "unsubscribeCleanupWorkflow"
|
|
24586
|
-
}
|
|
24587
|
-
],
|
|
24588
|
-
"inb-integration-test": [
|
|
24589
|
-
{
|
|
24590
|
-
path: "packages/elevasis-operations/src/diagnostics/inbound/integration-test.ts",
|
|
24591
|
-
role: "entrypoint",
|
|
24592
|
-
symbol: "acqIntegrationTestWorkflow"
|
|
24593
|
-
},
|
|
24594
|
-
{
|
|
24595
|
-
path: "packages/elevasis-operations/src/diagnostics/inbound/integration-test-schema.ts",
|
|
24596
|
-
role: "schema"
|
|
24597
|
-
}
|
|
24598
|
-
],
|
|
24599
|
-
"crm-action-system-smoke-workflow": [
|
|
24600
|
-
{
|
|
24601
|
-
path: "packages/elevasis-operations/src/diagnostics/cutover/crm-action-system-smoke.ts",
|
|
24602
|
-
role: "entrypoint",
|
|
24603
|
-
symbol: "crmActionSystemSmokeWorkflow"
|
|
24604
|
-
}
|
|
24605
|
-
],
|
|
24606
|
-
"cutover-org-model-smoke-workflow": [
|
|
24607
|
-
{
|
|
24608
|
-
path: "packages/elevasis-operations/src/diagnostics/cutover/org-model-smoke.ts",
|
|
24609
|
-
role: "entrypoint",
|
|
24610
|
-
symbol: "orgModelSmokeWorkflow"
|
|
24611
|
-
}
|
|
24612
|
-
],
|
|
24613
|
-
"crm-timeout-checker-diagnostic-workflow": [
|
|
24614
|
-
{
|
|
24615
|
-
path: "packages/elevasis-operations/src/diagnostics/inbound/timeout-checker-diagnostic.ts",
|
|
24616
|
-
role: "entrypoint",
|
|
24617
|
-
symbol: "crmTimeoutCheckerDiagnosticWorkflow"
|
|
24618
|
-
}
|
|
24619
|
-
],
|
|
24620
|
-
"crm-send-reply-workflow": [
|
|
24621
|
-
{
|
|
24622
|
-
path: "packages/elevasis-operations/src/sales/crm/actions/crm-send-reply.ts",
|
|
24623
|
-
role: "entrypoint",
|
|
24624
|
-
symbol: "sendReplyWorkflow"
|
|
24625
|
-
},
|
|
24626
|
-
crmActionWorkflowSchemaCodeRef
|
|
24627
|
-
],
|
|
24628
|
-
"crm-reply-followup-workflow": [
|
|
24629
|
-
{
|
|
24630
|
-
path: "packages/elevasis-operations/src/sales/crm/actions/crm-reply-followup.ts",
|
|
24631
|
-
role: "entrypoint",
|
|
24632
|
-
symbol: "replyFollowupWorkflow"
|
|
24633
|
-
}
|
|
24634
|
-
],
|
|
24635
|
-
"crm-send-booking-link-workflow": [
|
|
24636
|
-
{
|
|
24637
|
-
path: "packages/elevasis-operations/src/sales/crm/actions/crm-send-booking-link.ts",
|
|
24638
|
-
role: "entrypoint",
|
|
24639
|
-
symbol: "sendBookingLinkWorkflow"
|
|
24640
|
-
},
|
|
24641
|
-
crmActionWorkflowSchemaCodeRef
|
|
24642
|
-
],
|
|
24643
|
-
"crm-send-nudge-workflow": [
|
|
24644
|
-
{
|
|
24645
|
-
path: "packages/elevasis-operations/src/sales/crm/actions/crm-send-nudge.ts",
|
|
24646
|
-
role: "entrypoint",
|
|
24647
|
-
symbol: "sendNudgeWorkflow"
|
|
24648
|
-
},
|
|
24649
|
-
crmActionWorkflowSchemaCodeRef
|
|
24650
|
-
],
|
|
24651
|
-
"crm-rebook-workflow": [
|
|
24652
|
-
{
|
|
24653
|
-
path: "packages/elevasis-operations/src/sales/crm/actions/crm-rebook.ts",
|
|
24654
|
-
role: "entrypoint",
|
|
24655
|
-
symbol: "rebookWorkflow"
|
|
24656
|
-
},
|
|
24657
|
-
crmActionWorkflowSchemaCodeRef
|
|
24658
|
-
],
|
|
24659
|
-
"move_to_closing-workflow": [
|
|
24660
|
-
{
|
|
24661
|
-
path: "packages/elevasis-operations/src/sales/crm/actions/move-to-closing.ts",
|
|
24662
|
-
role: "entrypoint",
|
|
24663
|
-
symbol: "moveToClosingWorkflow"
|
|
24664
|
-
},
|
|
24665
|
-
crmActionWorkflowSchemaCodeRef
|
|
24666
|
-
],
|
|
24667
|
-
"move_to_closed_won-workflow": [
|
|
24668
|
-
{
|
|
24669
|
-
path: "packages/elevasis-operations/src/sales/crm/actions/move-to-closed-won.ts",
|
|
24670
|
-
role: "entrypoint",
|
|
24671
|
-
symbol: "moveToClosedWonWorkflow"
|
|
24672
|
-
},
|
|
24673
|
-
crmActionWorkflowSchemaCodeRef
|
|
24674
|
-
],
|
|
24675
|
-
"move_to_closed_lost-workflow": [
|
|
24676
|
-
{
|
|
24677
|
-
path: "packages/elevasis-operations/src/sales/crm/actions/move-to-closed-lost.ts",
|
|
24678
|
-
role: "entrypoint",
|
|
24679
|
-
symbol: "moveToClosedLostWorkflow"
|
|
24680
|
-
},
|
|
24681
|
-
crmActionWorkflowSchemaCodeRef
|
|
24682
|
-
],
|
|
24683
|
-
"move_to_nurturing-workflow": [
|
|
24684
|
-
{
|
|
24685
|
-
path: "packages/elevasis-operations/src/sales/crm/actions/move-to-nurturing.ts",
|
|
24686
|
-
role: "entrypoint",
|
|
24687
|
-
symbol: "moveToNurturingWorkflow"
|
|
24688
|
-
},
|
|
24689
|
-
crmActionWorkflowSchemaCodeRef
|
|
24690
|
-
],
|
|
24691
|
-
"mark_no_show-workflow": [
|
|
24692
|
-
{
|
|
24693
|
-
path: "packages/elevasis-operations/src/sales/crm/actions/mark-no-show.ts",
|
|
24694
|
-
role: "entrypoint",
|
|
24695
|
-
symbol: "markNoShowWorkflow"
|
|
24696
|
-
},
|
|
24697
|
-
{
|
|
24698
|
-
path: "packages/elevasis-operations/src/sales/crm/shared/action-workflow-schemas.ts",
|
|
24699
|
-
role: "schema",
|
|
24700
|
-
symbol: "ActionWorkflowInputSchema"
|
|
24701
|
-
}
|
|
24702
|
-
],
|
|
24703
|
-
"move_to_proposal-workflow": [
|
|
24704
|
-
{
|
|
24705
|
-
path: "packages/elevasis-operations/src/sales/crm/actions/move-to-proposal.ts",
|
|
24706
|
-
role: "entrypoint",
|
|
24707
|
-
symbol: "moveToProposalWorkflow"
|
|
24708
|
-
}
|
|
24709
|
-
]
|
|
24710
|
-
};
|
|
24711
|
-
var workflowDisplayMetadataByResourceId = {
|
|
24712
|
-
"lgn-01a-google-maps-scrape-workflow": {
|
|
24713
|
-
title: "LGN-01A Google Maps Scrape",
|
|
24714
|
-
description: "Scrape local-services businesses from Google Maps via Apify and source companies into Lead DB."
|
|
24715
|
-
},
|
|
24716
|
-
"lgn-01b-apify-acquire-workflow": {
|
|
24717
|
-
title: "LGN-01B Apify Acquire",
|
|
24718
|
-
description: "Acquire and normalize Apify scrape results into Lead DB company records."
|
|
24719
|
-
},
|
|
24720
|
-
"lgn-01c-apollo-import-workflow": {
|
|
24721
|
-
title: "LGN-01C Apollo Import",
|
|
24722
|
-
description: "Import DTC subscription companies from Apollo search results into Lead DB"
|
|
24723
|
-
},
|
|
24724
|
-
"lgn-03-company-qualification-workflow": {
|
|
24725
|
-
title: "LGN-03 Company Qualification",
|
|
24726
|
-
description: "LLM-based company qualification against ICP signals; marks companies qualified or filtered with reason."
|
|
24727
|
-
},
|
|
24728
|
-
"lgn-import-workflow": {
|
|
24729
|
-
title: "LGN Lead Import",
|
|
24730
|
-
description: "Generic import entrypoint for sourcing companies into Lead DB from external batch inputs."
|
|
23996
|
+
];
|
|
23997
|
+
var LEAD_GEN_ACTION_ENTRIES = defineActions(LEAD_GEN_ACTION_ENTRY_INPUTS);
|
|
23998
|
+
var CRM_ACTION_ENTRY_INPUTS = [
|
|
23999
|
+
{
|
|
24000
|
+
id: "send_reply",
|
|
24001
|
+
order: 210,
|
|
24002
|
+
label: "Send Reply",
|
|
24003
|
+
description: "Send a contextual reply for an active CRM deal.",
|
|
24004
|
+
scope: { domain: "sales" },
|
|
24005
|
+
resourceId: "crm-send-reply-workflow",
|
|
24006
|
+
affects: ["crm.deal"],
|
|
24007
|
+
invocations: [],
|
|
24008
|
+
lifecycle: "active",
|
|
24009
|
+
knowledge: []
|
|
24731
24010
|
},
|
|
24732
|
-
|
|
24733
|
-
|
|
24734
|
-
|
|
24011
|
+
{
|
|
24012
|
+
id: "send_link",
|
|
24013
|
+
order: 220,
|
|
24014
|
+
label: "Send Booking Link",
|
|
24015
|
+
description: "Send a booking link to move a deal toward a scheduled call.",
|
|
24016
|
+
scope: { domain: "sales" },
|
|
24017
|
+
resourceId: "crm-send-booking-link-workflow",
|
|
24018
|
+
affects: ["crm.deal"],
|
|
24019
|
+
invocations: [],
|
|
24020
|
+
lifecycle: "active",
|
|
24021
|
+
knowledge: []
|
|
24735
24022
|
},
|
|
24736
|
-
|
|
24737
|
-
|
|
24738
|
-
|
|
24023
|
+
{
|
|
24024
|
+
id: "send_nudge",
|
|
24025
|
+
order: 230,
|
|
24026
|
+
label: "Send Nudge",
|
|
24027
|
+
description: "Send a follow-up nudge for a stalled CRM deal.",
|
|
24028
|
+
scope: { domain: "sales" },
|
|
24029
|
+
resourceId: "crm-send-nudge-workflow",
|
|
24030
|
+
affects: ["crm.deal"],
|
|
24031
|
+
invocations: [],
|
|
24032
|
+
lifecycle: "active",
|
|
24033
|
+
knowledge: []
|
|
24739
24034
|
},
|
|
24740
|
-
|
|
24741
|
-
|
|
24742
|
-
|
|
24035
|
+
{
|
|
24036
|
+
id: "rebook",
|
|
24037
|
+
order: 240,
|
|
24038
|
+
label: "Rebook",
|
|
24039
|
+
description: "Rebook a missed or rescheduled CRM appointment.",
|
|
24040
|
+
scope: { domain: "sales" },
|
|
24041
|
+
resourceId: "crm-rebook-workflow",
|
|
24042
|
+
affects: ["crm.deal"],
|
|
24043
|
+
invocations: [],
|
|
24044
|
+
lifecycle: "active",
|
|
24045
|
+
knowledge: []
|
|
24743
24046
|
},
|
|
24744
|
-
|
|
24745
|
-
|
|
24746
|
-
|
|
24047
|
+
{
|
|
24048
|
+
id: "move_to_proposal",
|
|
24049
|
+
order: 250,
|
|
24050
|
+
label: "Move to Proposal",
|
|
24051
|
+
description: "Advance a qualified CRM deal into the proposal stage.",
|
|
24052
|
+
scope: { domain: "sales" },
|
|
24053
|
+
resourceId: "move_to_proposal-workflow",
|
|
24054
|
+
affects: ["crm.deal"],
|
|
24055
|
+
invocations: [],
|
|
24056
|
+
lifecycle: "active",
|
|
24057
|
+
knowledge: []
|
|
24747
24058
|
},
|
|
24748
|
-
|
|
24749
|
-
|
|
24750
|
-
|
|
24059
|
+
{
|
|
24060
|
+
id: "move_to_closing",
|
|
24061
|
+
order: 260,
|
|
24062
|
+
label: "Move to Closing",
|
|
24063
|
+
description: "Advance a proposal-stage CRM deal into closing.",
|
|
24064
|
+
scope: { domain: "sales" },
|
|
24065
|
+
resourceId: "move_to_closing-workflow",
|
|
24066
|
+
affects: ["crm.deal"],
|
|
24067
|
+
invocations: [],
|
|
24068
|
+
lifecycle: "active",
|
|
24069
|
+
knowledge: []
|
|
24751
24070
|
},
|
|
24752
|
-
|
|
24753
|
-
|
|
24754
|
-
|
|
24071
|
+
{
|
|
24072
|
+
id: "move_to_closed_won",
|
|
24073
|
+
order: 270,
|
|
24074
|
+
label: "Close Won",
|
|
24075
|
+
description: "Mark a CRM deal as closed won.",
|
|
24076
|
+
scope: { domain: "sales" },
|
|
24077
|
+
resourceId: "move_to_closed_won-workflow",
|
|
24078
|
+
affects: ["crm.deal"],
|
|
24079
|
+
invocations: [],
|
|
24080
|
+
lifecycle: "active",
|
|
24081
|
+
knowledge: []
|
|
24755
24082
|
},
|
|
24756
|
-
|
|
24757
|
-
|
|
24758
|
-
|
|
24083
|
+
{
|
|
24084
|
+
id: "move_to_closed_lost",
|
|
24085
|
+
order: 280,
|
|
24086
|
+
label: "Close Lost",
|
|
24087
|
+
description: "Mark a CRM deal as closed lost.",
|
|
24088
|
+
scope: { domain: "sales" },
|
|
24089
|
+
resourceId: "move_to_closed_lost-workflow",
|
|
24090
|
+
affects: ["crm.deal"],
|
|
24091
|
+
invocations: [],
|
|
24092
|
+
lifecycle: "active",
|
|
24093
|
+
knowledge: []
|
|
24759
24094
|
},
|
|
24760
|
-
|
|
24761
|
-
|
|
24762
|
-
|
|
24763
|
-
|
|
24764
|
-
|
|
24765
|
-
|
|
24766
|
-
|
|
24767
|
-
|
|
24768
|
-
|
|
24769
|
-
|
|
24770
|
-
|
|
24771
|
-
}
|
|
24772
|
-
|
|
24773
|
-
|
|
24774
|
-
|
|
24775
|
-
|
|
24776
|
-
|
|
24777
|
-
|
|
24778
|
-
|
|
24779
|
-
|
|
24780
|
-
|
|
24781
|
-
|
|
24782
|
-
|
|
24783
|
-
|
|
24784
|
-
|
|
24785
|
-
|
|
24786
|
-
|
|
24787
|
-
|
|
24788
|
-
|
|
24789
|
-
|
|
24790
|
-
description: "Validates Google Maps scraper pipeline by scraping a single business via Apify and verifying company record creation."
|
|
24791
|
-
},
|
|
24792
|
-
"lgn-pipeline-diagnostic": {
|
|
24793
|
-
title: "LGN Pipeline E2E Diagnostic",
|
|
24794
|
-
description: "Full E2E smoke test of the 7-stage lead-gen pipeline: verify, cleanup, qualify, personalize, upload, processing-state assertions."
|
|
24795
|
-
},
|
|
24796
|
-
"lgn-verification-diagnostic": {
|
|
24797
|
-
title: "LGN Verification Diagnostic",
|
|
24798
|
-
description: "Smoke test for Tomba email verification with soft-delete decision logic."
|
|
24799
|
-
},
|
|
24800
|
-
"lgn-tomba-diagnostic-workflow": {
|
|
24801
|
-
title: "LGN Tomba Integration Diagnostic",
|
|
24802
|
-
description: "E2E validation of Tomba integration: domain-search, email-finder, and email-verifier against a known domain."
|
|
24803
|
-
},
|
|
24804
|
-
"lgn-tomba-discovery-diagnostic-workflow": {
|
|
24805
|
-
title: "LGN Tomba Discovery Diagnostic",
|
|
24806
|
-
description: "E2E validation of Tomba discovery workflow + soft-delete logic on found contacts."
|
|
24807
|
-
},
|
|
24808
|
-
"lgn-amf-discovery-diagnostic-workflow": {
|
|
24809
|
-
title: "LGN AnyMailFinder Discovery Diagnostic",
|
|
24810
|
-
description: "E2E validation of AnyMailFinder waterfall: preserves qualification + Tomba state, verifies enrichmentData.anymailfinder shape."
|
|
24811
|
-
},
|
|
24812
|
-
"lgn-email-discovery-diagnostic-workflow": {
|
|
24813
|
-
title: "LGN Email Discovery Diagnostic",
|
|
24814
|
-
description: "E2E validation of unified email discovery (Tomba + AMF waterfall) on diagnostic batch with idempotency and phase-tracking assertions."
|
|
24815
|
-
},
|
|
24816
|
-
"lgn-email-discovery-boundary-diagnostic-workflow": {
|
|
24817
|
-
title: "LGN Email Discovery Boundary Diagnostic",
|
|
24818
|
-
description: "Regression net for Tomba \u2192 AnyMailFinder migration: verifies AMF only runs when Tomba finds no personal email."
|
|
24819
|
-
},
|
|
24820
|
-
"lgn-website-extract-diagnostic-workflow": {
|
|
24821
|
-
title: "LGN Website Extract Diagnostic",
|
|
24822
|
-
description: "Tests LLM extraction improvements: verifies staff names/titles extracted and enrichmentData.staff populated correctly."
|
|
24823
|
-
},
|
|
24824
|
-
"lgn-dtc-apollo-pipeline-diagnostic": {
|
|
24825
|
-
title: "LGN DTC Apollo Pipeline Diagnostic",
|
|
24826
|
-
description: "Demo-safe E2E test of the DTC Subscription Apollo pipeline: fixture normalization, scoring, decision-maker enrichment, qualified-lead export."
|
|
24827
|
-
},
|
|
24828
|
-
"anymailfinder-diagnostic-workflow": {
|
|
24829
|
-
title: "AnyMailFinder Integration Diagnostic",
|
|
24830
|
-
description: "Integration-credential diagnostic for AnyMailFinder API connectivity and lookup endpoint."
|
|
24831
|
-
},
|
|
24832
|
-
"instantly-diagnostic-workflow": {
|
|
24833
|
-
title: "Instantly Integration Diagnostic",
|
|
24834
|
-
description: "Integration-credential diagnostic for Instantly: campaigns list, account health, analytics, and dry-run upload."
|
|
24835
|
-
},
|
|
24836
|
-
"crm-send-reply-workflow": {
|
|
24837
|
-
title: "CRM Send Reply",
|
|
24838
|
-
description: "Send a manual reply to an interested prospect via Instantly or Resend and record the CRM activity."
|
|
24839
|
-
},
|
|
24840
|
-
"crm-reply-followup-workflow": {
|
|
24841
|
-
title: "CRM Reply Follow-up",
|
|
24842
|
-
description: "Send Day 3/5/7 scheduled follow-ups after a user-authored CRM reply in the interested stage."
|
|
24843
|
-
},
|
|
24844
|
-
"crm-send-booking-link-workflow": {
|
|
24845
|
-
title: "CRM Send Booking Link",
|
|
24846
|
-
description: "Send a Cal.com booking link to an interested prospect and advance the deal state."
|
|
24847
|
-
},
|
|
24848
|
-
"crm-send-nudge-workflow": {
|
|
24849
|
-
title: "CRM Send Nudge",
|
|
24850
|
-
description: "Send a scheduled nudge reminder to a prospect who has not yet booked after receiving a booking link."
|
|
24851
|
-
},
|
|
24852
|
-
"crm-rebook-workflow": {
|
|
24853
|
-
title: "CRM Rebook",
|
|
24854
|
-
description: "Re-send a booking link to a no-show or lapsed prospect and reset the deal state for a new booking attempt."
|
|
24855
|
-
},
|
|
24856
|
-
"move_to_proposal-workflow": {
|
|
24857
|
-
title: "CRM Move to Proposal",
|
|
24858
|
-
description: "Advance a qualified discovery deal to the proposal stage and trigger downstream proposal generation."
|
|
24859
|
-
},
|
|
24860
|
-
"move_to_closing-workflow": {
|
|
24861
|
-
title: "CRM Move to Closing",
|
|
24862
|
-
description: "Advance a proposal deal to the closing stage and record the stage transition activity."
|
|
24863
|
-
},
|
|
24864
|
-
"move_to_closed_won-workflow": {
|
|
24865
|
-
title: "CRM Close Won",
|
|
24866
|
-
description: "Mark a deal as closed-won, record the outcome, and trigger post-close onboarding steps."
|
|
24867
|
-
},
|
|
24868
|
-
"move_to_closed_lost-workflow": {
|
|
24869
|
-
title: "CRM Close Lost",
|
|
24870
|
-
description: "Mark a deal as closed-lost, record the reason, and archive the deal from the active pipeline."
|
|
24871
|
-
},
|
|
24872
|
-
"move_to_nurturing-workflow": {
|
|
24873
|
-
title: "CRM Move to Nurturing",
|
|
24874
|
-
description: "Move a stalled deal into the nurturing stage for long-term follow-up sequencing."
|
|
24875
|
-
},
|
|
24876
|
-
"mark_no_show-workflow": {
|
|
24877
|
-
title: "CRM Mark No Show",
|
|
24878
|
-
description: "Mark a booked deal as a no-show and transition it to the appropriate recovery state."
|
|
24879
|
-
},
|
|
24880
|
-
"inb-01-instantly-reply-handler-workflow": {
|
|
24881
|
-
title: "INB-01 Instantly Reply Handler",
|
|
24882
|
-
description: "Entry handler for inbound Instantly replies: classifies intent, routes to booking or follow-up branches."
|
|
24883
|
-
},
|
|
24884
|
-
"inb-01-send-booking-reply-workflow": {
|
|
24885
|
-
title: "INB-01 Send Booking Reply",
|
|
24886
|
-
description: "Send a booking-link reply to an interested Instantly lead and create or update the CRM deal."
|
|
24887
|
-
},
|
|
24888
|
-
"inb-01-send-subsequent-reply-workflow": {
|
|
24889
|
-
title: "INB-01 Send Subsequent Reply",
|
|
24890
|
-
description: "Send a follow-up reply for edge-case inbound threads that require a second outreach pass."
|
|
24891
|
-
},
|
|
24892
|
-
"inb-01-booking-nudge-workflow": {
|
|
24893
|
-
title: "INB-01 Booking Nudge",
|
|
24894
|
-
description: "Send a scheduled nudge to prospects who received a booking link but have not yet booked."
|
|
24895
|
-
},
|
|
24896
|
-
"inb-02-booking-handler-workflow": {
|
|
24897
|
-
title: "INB-02 Cal Booking Handler",
|
|
24898
|
-
description: "Handle an inbound Cal.com booking event: update deal stage, send confirmation, and schedule discovery reminder."
|
|
24899
|
-
},
|
|
24900
|
-
"cal-booking-revert-workflow": {
|
|
24901
|
-
title: "INB-02 Cal Booking Revert",
|
|
24902
|
-
description: "Revert a deal to the pre-booking state when a Cal.com booking is cancelled or rescheduled."
|
|
24903
|
-
},
|
|
24904
|
-
"inb-02-discovery-reminder-workflow": {
|
|
24905
|
-
title: "INB-02 Discovery Reminder",
|
|
24906
|
-
description: "Send a pre-discovery call reminder and attach any relevant context to the deal record."
|
|
24907
|
-
},
|
|
24908
|
-
"inb-02b-organic-booking-handler-workflow": {
|
|
24909
|
-
title: "INB-02B Organic Booking Handler",
|
|
24910
|
-
description: "Handle Cal.com bookings that originate outside the Instantly outreach funnel (website form, referral, etc.)."
|
|
24911
|
-
},
|
|
24912
|
-
"inb-03-discovery-form-handler-workflow": {
|
|
24913
|
-
title: "INB-03 Discovery Form Handler",
|
|
24914
|
-
description: "Process an inbound discovery form submission: enrich deal, score fit, and route to proposal or nurture."
|
|
24915
|
-
},
|
|
24916
|
-
"discovery-form-revert-workflow": {
|
|
24917
|
-
title: "INB-03 Discovery Form Revert",
|
|
24918
|
-
description: "Revert a deal to the pre-discovery state when a discovery form submission must be rolled back."
|
|
24919
|
-
},
|
|
24920
|
-
"inb-pipeline-timeout-checker-workflow": {
|
|
24921
|
-
title: "INB Pipeline Timeout Checker",
|
|
24922
|
-
description: "Scheduled checker that scans the active deal pipeline for stage timeouts and dispatches timeout-action workflows."
|
|
24923
|
-
},
|
|
24924
|
-
"inb-pipeline-timeout-followup-workflow": {
|
|
24925
|
-
title: "INB Pipeline Timeout: Follow-up",
|
|
24926
|
-
description: "Timeout action for deals stuck in the interested stage: send a follow-up nudge or escalate."
|
|
24927
|
-
},
|
|
24928
|
-
"inb-pipeline-timeout-nurture-workflow": {
|
|
24929
|
-
title: "INB Pipeline Timeout: Nurture",
|
|
24930
|
-
description: "Timeout action for deals that have gone cold: move to nurturing and queue long-term follow-up."
|
|
24931
|
-
},
|
|
24932
|
-
"inb-pipeline-timeout-close-lost-workflow": {
|
|
24933
|
-
title: "INB Pipeline Timeout: Close Lost",
|
|
24934
|
-
description: "Timeout action for deals that have exceeded the maximum pipeline age: auto-close as lost."
|
|
24935
|
-
},
|
|
24936
|
-
"inb-pipeline-timeout-no-show-workflow": {
|
|
24937
|
-
title: "INB Pipeline Timeout: No Show",
|
|
24938
|
-
description: "Timeout action for booked deals with no discovery form submitted: mark as no-show and trigger recovery."
|
|
24939
|
-
},
|
|
24940
|
-
"inb-full-cleanup-workflow": {
|
|
24941
|
-
title: "INB Full Cleanup",
|
|
24942
|
-
description: "Full pipeline cleanup: archive stale deals, prune orphaned activities, and reset diagnostic test data."
|
|
24943
|
-
},
|
|
24944
|
-
"inb-pipeline-unsubscribe-cleanup-workflow": {
|
|
24945
|
-
title: "INB Unsubscribe Cleanup",
|
|
24946
|
-
description: "Remove unsubscribed contacts from the active pipeline and mark their deals closed-lost."
|
|
24947
|
-
},
|
|
24948
|
-
"inb-integration-test": {
|
|
24949
|
-
title: "INB Integration Test",
|
|
24950
|
-
description: "End-to-end integration test for the inbound sales pipeline: reply handler through booking and discovery stages."
|
|
24951
|
-
},
|
|
24952
|
-
"crm-action-system-smoke-workflow": {
|
|
24953
|
-
title: "CRM Action System Smoke Test",
|
|
24954
|
-
description: "Smoke test for CRM action workflows: verifies each action can be invoked end-to-end against the dev pipeline."
|
|
24955
|
-
},
|
|
24956
|
-
"cutover-org-model-smoke-workflow": {
|
|
24957
|
-
title: "Cutover Org Model Smoke Test",
|
|
24958
|
-
description: "Post-cutover smoke test that validates OM resource descriptors, system paths, and ontology bindings are consistent."
|
|
24959
|
-
},
|
|
24960
|
-
"crm-timeout-checker-diagnostic-workflow": {
|
|
24961
|
-
title: "CRM Timeout Checker Diagnostic",
|
|
24962
|
-
description: "Diagnostic for the pipeline timeout checker: simulates stale deals and verifies correct timeout-action dispatch."
|
|
24963
|
-
}
|
|
24964
|
-
};
|
|
24965
|
-
function titleFromResourceId(resourceId) {
|
|
24966
|
-
return resourceId.replace(/-workflow$/, "").replace(/[-_]+/g, " ").replace(/\b\w/g, (character) => character.toUpperCase());
|
|
24967
|
-
}
|
|
24968
|
-
var platformWorkflowResources = platformWorkflowResourceSeeds.map(([id, systemPath2, buildActionKey], index) => {
|
|
24969
|
-
const codeRefs = platformWorkflowCodeRefs[id];
|
|
24970
|
-
const ontology = buildActionKey !== void 0 ? workflowOntologyBindingsByBuildActionKey[buildActionKey] : void 0;
|
|
24971
|
-
const contract = workflowContractsByResourceId[id];
|
|
24972
|
-
const ontologyWithContract = ontology !== void 0 || contract !== void 0 ? {
|
|
24973
|
-
...ontology ?? {},
|
|
24974
|
-
...contract ? { contract } : {}
|
|
24975
|
-
} : void 0;
|
|
24976
|
-
const displayMetadata = workflowDisplayMetadataByResourceId[id];
|
|
24977
|
-
const title = displayMetadata?.title ?? titleFromResourceId(id);
|
|
24978
|
-
return {
|
|
24979
|
-
id,
|
|
24980
|
-
order: (index + 1) * 10,
|
|
24981
|
-
kind: "workflow",
|
|
24982
|
-
systemPath: systemPath2,
|
|
24983
|
-
title,
|
|
24984
|
-
description: displayMetadata?.description ?? `Workflow resource for ${title}.`,
|
|
24985
|
-
ownerRoleId: getPlatformOwnerRoleId(systemPath2),
|
|
24986
|
-
status: "active",
|
|
24987
|
-
...codeRefs ? { codeRefs } : {},
|
|
24988
|
-
...ontologyWithContract ? { ontology: ontologyWithContract } : {}
|
|
24989
|
-
};
|
|
24990
|
-
});
|
|
24991
|
-
var platformIntegrationResources = [
|
|
24992
|
-
{
|
|
24993
|
-
id: "inb-attio-integration",
|
|
24994
|
-
order: 10,
|
|
24995
|
-
kind: "integration",
|
|
24996
|
-
systemPath: "sales.crm",
|
|
24997
|
-
status: "active",
|
|
24998
|
-
codeRefs: [
|
|
24999
|
-
{
|
|
25000
|
-
path: "packages/elevasis-operations/src/metadata.ts",
|
|
25001
|
-
role: "config",
|
|
25002
|
-
symbol: "integrations"
|
|
25003
|
-
}
|
|
25004
|
-
],
|
|
25005
|
-
provider: "attio"
|
|
25006
|
-
},
|
|
25007
|
-
{
|
|
25008
|
-
id: "inb-instantly-integration",
|
|
25009
|
-
order: 20,
|
|
25010
|
-
kind: "integration",
|
|
25011
|
-
systemPath: "sales.lead-gen",
|
|
25012
|
-
status: "active",
|
|
25013
|
-
codeRefs: [
|
|
25014
|
-
{
|
|
25015
|
-
path: "packages/elevasis-operations/src/metadata.ts",
|
|
25016
|
-
role: "config",
|
|
25017
|
-
symbol: "integrations"
|
|
25018
|
-
}
|
|
25019
|
-
],
|
|
25020
|
-
provider: "instantly"
|
|
25021
|
-
},
|
|
25022
|
-
{
|
|
25023
|
-
id: "integration-resend-elevasis",
|
|
25024
|
-
order: 30,
|
|
25025
|
-
kind: "integration",
|
|
25026
|
-
systemPath: "sales.crm",
|
|
25027
|
-
status: "active",
|
|
25028
|
-
codeRefs: [
|
|
25029
|
-
{
|
|
25030
|
-
path: "packages/elevasis-operations/src/metadata.ts",
|
|
25031
|
-
role: "config",
|
|
25032
|
-
symbol: "integrations"
|
|
25033
|
-
}
|
|
25034
|
-
],
|
|
25035
|
-
provider: "resend"
|
|
25036
|
-
},
|
|
25037
|
-
{
|
|
25038
|
-
id: "integration-apify-elevasis",
|
|
25039
|
-
order: 40,
|
|
25040
|
-
kind: "integration",
|
|
25041
|
-
systemPath: "sales.lead-gen",
|
|
25042
|
-
status: "active",
|
|
25043
|
-
codeRefs: [
|
|
25044
|
-
{
|
|
25045
|
-
path: "packages/elevasis-operations/src/metadata.ts",
|
|
25046
|
-
role: "config",
|
|
25047
|
-
symbol: "integrations"
|
|
25048
|
-
}
|
|
25049
|
-
],
|
|
25050
|
-
provider: "apify"
|
|
25051
|
-
},
|
|
25052
|
-
{
|
|
25053
|
-
id: "integration-apollo-elevasis",
|
|
25054
|
-
order: 50,
|
|
25055
|
-
kind: "integration",
|
|
25056
|
-
systemPath: "sales.lead-gen",
|
|
25057
|
-
status: "active",
|
|
25058
|
-
codeRefs: [
|
|
25059
|
-
{
|
|
25060
|
-
path: "packages/elevasis-operations/src/metadata.ts",
|
|
25061
|
-
role: "config",
|
|
25062
|
-
symbol: "integrations"
|
|
25063
|
-
}
|
|
25064
|
-
],
|
|
25065
|
-
provider: "apollo"
|
|
25066
|
-
}
|
|
25067
|
-
];
|
|
25068
|
-
var platformIntegrationResourcesWithOwners = platformIntegrationResources.map((resource2) => ({
|
|
25069
|
-
...resource2,
|
|
25070
|
-
ownerRoleId: getPlatformOwnerRoleId(resource2.systemPath)
|
|
25071
|
-
}));
|
|
25072
|
-
var platformResourceDescriptors = defineResources(
|
|
25073
|
-
Object.fromEntries(
|
|
25074
|
-
[
|
|
25075
|
-
...platformWorkflowResources,
|
|
25076
|
-
...platformIntegrationResourcesWithOwners,
|
|
25077
|
-
{
|
|
25078
|
-
id: "command-center-assistant",
|
|
25079
|
-
order: 1e4,
|
|
25080
|
-
kind: "agent",
|
|
25081
|
-
systemPath: "platform.projects",
|
|
25082
|
-
ownerRoleId: "role.operator",
|
|
25083
|
-
actsAsRoleId: "role.operator",
|
|
25084
|
-
status: "active",
|
|
25085
|
-
codeRefs: [
|
|
25086
|
-
{
|
|
25087
|
-
path: "apps/api/src/resources/command-center-assistant/definition.ts",
|
|
25088
|
-
role: "entrypoint",
|
|
25089
|
-
symbol: "commandCenterAssistantDefinition"
|
|
25090
|
-
},
|
|
25091
|
-
{
|
|
25092
|
-
path: "apps/api/src/resources/index.ts",
|
|
25093
|
-
role: "config",
|
|
25094
|
-
symbol: "registerSystemResources"
|
|
25095
|
-
}
|
|
25096
|
-
],
|
|
25097
|
-
agentKind: "platform",
|
|
25098
|
-
sessionCapable: true,
|
|
25099
|
-
invocations: [
|
|
25100
|
-
{ kind: "slash-command", command: "/help" },
|
|
25101
|
-
{ kind: "slash-command", command: "/work" }
|
|
25102
|
-
]
|
|
25103
|
-
}
|
|
25104
|
-
].map((resource2) => [resource2.id, resource2])
|
|
25105
|
-
)
|
|
25106
|
-
);
|
|
25107
|
-
Object.values(platformResourceDescriptors);
|
|
25108
|
-
Object.fromEntries(
|
|
25109
|
-
Object.values(platformResourceDescriptors).flatMap(
|
|
25110
|
-
(resource2) => resource2.ontology === void 0 ? [] : [[resource2.id, resource2.ontology]]
|
|
25111
|
-
)
|
|
25112
|
-
);
|
|
25113
|
-
|
|
25114
|
-
// ../elevasis-core/src/organization-model/roles.ts
|
|
25115
|
-
var platformRoles = {
|
|
25116
|
-
"role.operator": {
|
|
25117
|
-
id: "role.operator",
|
|
25118
|
-
order: 10,
|
|
25119
|
-
title: "Platform Operator",
|
|
25120
|
-
responsibilities: [
|
|
25121
|
-
"Own platform operations knowledge and keep operational playbooks aligned with active systems.",
|
|
25122
|
-
"Maintain platform utilities, diagnostics, and resource governance health."
|
|
25123
|
-
],
|
|
25124
|
-
responsibleFor: ["client-management", "sales", "platform.projects", "seo", "platform"]
|
|
24095
|
+
{
|
|
24096
|
+
id: "move_to_nurturing",
|
|
24097
|
+
order: 290,
|
|
24098
|
+
label: "Move to Nurturing",
|
|
24099
|
+
description: "Move a CRM deal into nurturing for future follow-up.",
|
|
24100
|
+
scope: { domain: "sales" },
|
|
24101
|
+
resourceId: "move_to_nurturing-workflow",
|
|
24102
|
+
affects: ["crm.deal"],
|
|
24103
|
+
invocations: [],
|
|
24104
|
+
lifecycle: "active",
|
|
24105
|
+
knowledge: []
|
|
24106
|
+
}
|
|
24107
|
+
];
|
|
24108
|
+
var CRM_ACTION_ENTRIES = defineActions(CRM_ACTION_ENTRY_INPUTS);
|
|
24109
|
+
var ELEVASIS_DEFAULT_ORGANIZATION_MODEL_ACTIONS = {
|
|
24110
|
+
...LEAD_GEN_ACTION_ENTRIES,
|
|
24111
|
+
...CRM_ACTION_ENTRIES
|
|
24112
|
+
};
|
|
24113
|
+
|
|
24114
|
+
// ../elevasis-core/src/organization-model/roles.ts
|
|
24115
|
+
var platformRoles = {
|
|
24116
|
+
"role.operator": {
|
|
24117
|
+
id: "role.operator",
|
|
24118
|
+
order: 10,
|
|
24119
|
+
title: "Platform Operator",
|
|
24120
|
+
responsibilities: [
|
|
24121
|
+
"Own platform operations knowledge and keep operational playbooks aligned with active systems.",
|
|
24122
|
+
"Maintain platform utilities, diagnostics, and resource governance health."
|
|
24123
|
+
],
|
|
24124
|
+
responsibleFor: ["client-management", "sales", "platform.projects", "seo", "platform"]
|
|
25125
24125
|
},
|
|
25126
24126
|
"role.growth-operator": {
|
|
25127
24127
|
id: "role.growth-operator",
|
|
@@ -25158,273 +24158,6 @@ var platformRoles = {
|
|
|
25158
24158
|
}
|
|
25159
24159
|
};
|
|
25160
24160
|
|
|
25161
|
-
// ../elevasis-core/src/organization-model/actions.ts
|
|
25162
|
-
var LEAD_GEN_ACTION_ENTRY_INPUTS = [
|
|
25163
|
-
{
|
|
25164
|
-
id: "lead-gen.company.source",
|
|
25165
|
-
order: 10,
|
|
25166
|
-
label: "Source companies",
|
|
25167
|
-
description: "Import source companies from a list provider.",
|
|
25168
|
-
scope: { domain: "sales" },
|
|
25169
|
-
resourceId: "lgn-import-workflow",
|
|
25170
|
-
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/source" }],
|
|
25171
|
-
lifecycle: "active",
|
|
25172
|
-
knowledge: []
|
|
25173
|
-
},
|
|
25174
|
-
{
|
|
25175
|
-
id: "lead-gen.company.apollo-import",
|
|
25176
|
-
order: 20,
|
|
25177
|
-
label: "Import from Apollo",
|
|
25178
|
-
description: "Pull companies and seed contact data from an Apollo search or list.",
|
|
25179
|
-
scope: { domain: "sales" },
|
|
25180
|
-
resourceId: "lgn-01c-apollo-import-workflow",
|
|
25181
|
-
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/apollo-import" }],
|
|
25182
|
-
lifecycle: "active",
|
|
25183
|
-
knowledge: []
|
|
25184
|
-
},
|
|
25185
|
-
{
|
|
25186
|
-
id: "lead-gen.contact.discover",
|
|
25187
|
-
order: 30,
|
|
25188
|
-
label: "Discover contact emails",
|
|
25189
|
-
description: "Find email addresses for contacts at qualified companies.",
|
|
25190
|
-
scope: { domain: "sales" },
|
|
25191
|
-
resourceId: "lgn-04-email-discovery-workflow",
|
|
25192
|
-
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/contacts/discover" }],
|
|
25193
|
-
lifecycle: "active",
|
|
25194
|
-
knowledge: []
|
|
25195
|
-
},
|
|
25196
|
-
{
|
|
25197
|
-
id: "lead-gen.contact.verify-email",
|
|
25198
|
-
order: 40,
|
|
25199
|
-
label: "Verify emails",
|
|
25200
|
-
description: "Check email deliverability before outreach.",
|
|
25201
|
-
scope: { domain: "sales" },
|
|
25202
|
-
resourceId: "lgn-05-email-verification-workflow",
|
|
25203
|
-
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/contacts/verify-email" }],
|
|
25204
|
-
lifecycle: "active",
|
|
25205
|
-
knowledge: []
|
|
25206
|
-
},
|
|
25207
|
-
{
|
|
25208
|
-
id: "lead-gen.company.apify-crawl",
|
|
25209
|
-
order: 50,
|
|
25210
|
-
label: "Crawl websites",
|
|
25211
|
-
description: "Crawl company websites via Apify and store raw page markdown for downstream LLM analysis.",
|
|
25212
|
-
scope: { domain: "sales" },
|
|
25213
|
-
resourceId: "lgn-02a-apify-website-crawl-workflow",
|
|
25214
|
-
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/apify-crawl" }],
|
|
25215
|
-
lifecycle: "active",
|
|
25216
|
-
knowledge: []
|
|
25217
|
-
},
|
|
25218
|
-
{
|
|
25219
|
-
id: "lead-gen.company.website-extract",
|
|
25220
|
-
order: 60,
|
|
25221
|
-
label: "Extract website signals",
|
|
25222
|
-
description: "Scrape and analyze company websites for qualification signals.",
|
|
25223
|
-
scope: { domain: "sales" },
|
|
25224
|
-
resourceId: "lgn-02-website-extract-workflow",
|
|
25225
|
-
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/website-extract" }],
|
|
25226
|
-
lifecycle: "active",
|
|
25227
|
-
knowledge: []
|
|
25228
|
-
},
|
|
25229
|
-
{
|
|
25230
|
-
id: "lead-gen.company.qualify",
|
|
25231
|
-
order: 70,
|
|
25232
|
-
label: "Qualify companies",
|
|
25233
|
-
description: "Score and filter companies against the ICP rubric.",
|
|
25234
|
-
scope: { domain: "sales" },
|
|
25235
|
-
resourceId: "lgn-03-company-qualification-workflow",
|
|
25236
|
-
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/qualify" }],
|
|
25237
|
-
lifecycle: "active",
|
|
25238
|
-
knowledge: []
|
|
25239
|
-
},
|
|
25240
|
-
{
|
|
25241
|
-
id: "lead-gen.company.dtc-subscription-qualify",
|
|
25242
|
-
order: 80,
|
|
25243
|
-
label: "Qualify DTC subscription fit",
|
|
25244
|
-
description: "Classify subscription potential and consumable-product fit for DTC brands.",
|
|
25245
|
-
scope: { domain: "sales" },
|
|
25246
|
-
resourceId: "lgn-03b-dtc-subscription-score-workflow",
|
|
25247
|
-
invocations: [
|
|
25248
|
-
{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/dtc-subscription-qualify" }
|
|
25249
|
-
],
|
|
25250
|
-
lifecycle: "active",
|
|
25251
|
-
knowledge: []
|
|
25252
|
-
},
|
|
25253
|
-
{
|
|
25254
|
-
id: "lead-gen.contact.apollo-decision-maker-enrich",
|
|
25255
|
-
order: 90,
|
|
25256
|
-
label: "Enrich decision-makers",
|
|
25257
|
-
description: "Find and enrich qualified contacts at qualified companies via Apollo.",
|
|
25258
|
-
scope: { domain: "sales" },
|
|
25259
|
-
resourceId: "lgn-04b-apollo-decision-maker-enrich-workflow",
|
|
25260
|
-
invocations: [
|
|
25261
|
-
{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/contacts/apollo-decision-maker-enrich" }
|
|
25262
|
-
],
|
|
25263
|
-
lifecycle: "active",
|
|
25264
|
-
knowledge: []
|
|
25265
|
-
},
|
|
25266
|
-
{
|
|
25267
|
-
id: "lead-gen.contact.personalize",
|
|
25268
|
-
order: 100,
|
|
25269
|
-
label: "Personalize outreach",
|
|
25270
|
-
description: "Generate personalized opening lines for each contact.",
|
|
25271
|
-
scope: { domain: "sales" },
|
|
25272
|
-
resourceId: "ist-personalization-workflow",
|
|
25273
|
-
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/contacts/personalize" }],
|
|
25274
|
-
lifecycle: "active",
|
|
25275
|
-
knowledge: []
|
|
25276
|
-
},
|
|
25277
|
-
{
|
|
25278
|
-
id: "lead-gen.review.outreach-ready",
|
|
25279
|
-
order: 110,
|
|
25280
|
-
label: "Upload to outreach",
|
|
25281
|
-
description: "Upload approved contacts to the outreach sequence after QC review.",
|
|
25282
|
-
scope: { domain: "sales" },
|
|
25283
|
-
resourceId: "ist-upload-contacts-workflow",
|
|
25284
|
-
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/review/outreach-ready" }],
|
|
25285
|
-
lifecycle: "active",
|
|
25286
|
-
knowledge: []
|
|
25287
|
-
},
|
|
25288
|
-
{
|
|
25289
|
-
id: "lead-gen.export.list",
|
|
25290
|
-
order: 120,
|
|
25291
|
-
label: "Export lead list",
|
|
25292
|
-
description: "Export approved leads as a downloadable lead list.",
|
|
25293
|
-
scope: { domain: "sales" },
|
|
25294
|
-
resourceId: "lgn-06-export-list-workflow",
|
|
25295
|
-
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/export/list" }],
|
|
25296
|
-
lifecycle: "active",
|
|
25297
|
-
knowledge: []
|
|
25298
|
-
},
|
|
25299
|
-
{
|
|
25300
|
-
id: "lead-gen.company.cleanup",
|
|
25301
|
-
order: 130,
|
|
25302
|
-
label: "Clean up companies",
|
|
25303
|
-
description: "Remove disqualified or duplicate companies from the list.",
|
|
25304
|
-
scope: { domain: "sales" },
|
|
25305
|
-
resourceId: "lgn-company-cleanup-workflow",
|
|
25306
|
-
invocations: [{ kind: "api-endpoint", method: "POST", path: "/api/prospecting/companies/cleanup" }],
|
|
25307
|
-
lifecycle: "active",
|
|
25308
|
-
knowledge: []
|
|
25309
|
-
}
|
|
25310
|
-
];
|
|
25311
|
-
var LEAD_GEN_ACTION_ENTRIES = defineActions(LEAD_GEN_ACTION_ENTRY_INPUTS);
|
|
25312
|
-
var CRM_ACTION_ENTRY_INPUTS = [
|
|
25313
|
-
{
|
|
25314
|
-
id: "send_reply",
|
|
25315
|
-
order: 210,
|
|
25316
|
-
label: "Send Reply",
|
|
25317
|
-
description: "Send a contextual reply for an active CRM deal.",
|
|
25318
|
-
scope: { domain: "sales" },
|
|
25319
|
-
resourceId: "crm-send-reply-workflow",
|
|
25320
|
-
affects: ["crm.deal"],
|
|
25321
|
-
invocations: [],
|
|
25322
|
-
lifecycle: "active",
|
|
25323
|
-
knowledge: []
|
|
25324
|
-
},
|
|
25325
|
-
{
|
|
25326
|
-
id: "send_link",
|
|
25327
|
-
order: 220,
|
|
25328
|
-
label: "Send Booking Link",
|
|
25329
|
-
description: "Send a booking link to move a deal toward a scheduled call.",
|
|
25330
|
-
scope: { domain: "sales" },
|
|
25331
|
-
resourceId: "crm-send-booking-link-workflow",
|
|
25332
|
-
affects: ["crm.deal"],
|
|
25333
|
-
invocations: [],
|
|
25334
|
-
lifecycle: "active",
|
|
25335
|
-
knowledge: []
|
|
25336
|
-
},
|
|
25337
|
-
{
|
|
25338
|
-
id: "send_nudge",
|
|
25339
|
-
order: 230,
|
|
25340
|
-
label: "Send Nudge",
|
|
25341
|
-
description: "Send a follow-up nudge for a stalled CRM deal.",
|
|
25342
|
-
scope: { domain: "sales" },
|
|
25343
|
-
resourceId: "crm-send-nudge-workflow",
|
|
25344
|
-
affects: ["crm.deal"],
|
|
25345
|
-
invocations: [],
|
|
25346
|
-
lifecycle: "active",
|
|
25347
|
-
knowledge: []
|
|
25348
|
-
},
|
|
25349
|
-
{
|
|
25350
|
-
id: "rebook",
|
|
25351
|
-
order: 240,
|
|
25352
|
-
label: "Rebook",
|
|
25353
|
-
description: "Rebook a missed or rescheduled CRM appointment.",
|
|
25354
|
-
scope: { domain: "sales" },
|
|
25355
|
-
resourceId: "crm-rebook-workflow",
|
|
25356
|
-
affects: ["crm.deal"],
|
|
25357
|
-
invocations: [],
|
|
25358
|
-
lifecycle: "active",
|
|
25359
|
-
knowledge: []
|
|
25360
|
-
},
|
|
25361
|
-
{
|
|
25362
|
-
id: "move_to_proposal",
|
|
25363
|
-
order: 250,
|
|
25364
|
-
label: "Move to Proposal",
|
|
25365
|
-
description: "Advance a qualified CRM deal into the proposal stage.",
|
|
25366
|
-
scope: { domain: "sales" },
|
|
25367
|
-
resourceId: "move_to_proposal-workflow",
|
|
25368
|
-
affects: ["crm.deal"],
|
|
25369
|
-
invocations: [],
|
|
25370
|
-
lifecycle: "active",
|
|
25371
|
-
knowledge: []
|
|
25372
|
-
},
|
|
25373
|
-
{
|
|
25374
|
-
id: "move_to_closing",
|
|
25375
|
-
order: 260,
|
|
25376
|
-
label: "Move to Closing",
|
|
25377
|
-
description: "Advance a proposal-stage CRM deal into closing.",
|
|
25378
|
-
scope: { domain: "sales" },
|
|
25379
|
-
resourceId: "move_to_closing-workflow",
|
|
25380
|
-
affects: ["crm.deal"],
|
|
25381
|
-
invocations: [],
|
|
25382
|
-
lifecycle: "active",
|
|
25383
|
-
knowledge: []
|
|
25384
|
-
},
|
|
25385
|
-
{
|
|
25386
|
-
id: "move_to_closed_won",
|
|
25387
|
-
order: 270,
|
|
25388
|
-
label: "Close Won",
|
|
25389
|
-
description: "Mark a CRM deal as closed won.",
|
|
25390
|
-
scope: { domain: "sales" },
|
|
25391
|
-
resourceId: "move_to_closed_won-workflow",
|
|
25392
|
-
affects: ["crm.deal"],
|
|
25393
|
-
invocations: [],
|
|
25394
|
-
lifecycle: "active",
|
|
25395
|
-
knowledge: []
|
|
25396
|
-
},
|
|
25397
|
-
{
|
|
25398
|
-
id: "move_to_closed_lost",
|
|
25399
|
-
order: 280,
|
|
25400
|
-
label: "Close Lost",
|
|
25401
|
-
description: "Mark a CRM deal as closed lost.",
|
|
25402
|
-
scope: { domain: "sales" },
|
|
25403
|
-
resourceId: "move_to_closed_lost-workflow",
|
|
25404
|
-
affects: ["crm.deal"],
|
|
25405
|
-
invocations: [],
|
|
25406
|
-
lifecycle: "active",
|
|
25407
|
-
knowledge: []
|
|
25408
|
-
},
|
|
25409
|
-
{
|
|
25410
|
-
id: "move_to_nurturing",
|
|
25411
|
-
order: 290,
|
|
25412
|
-
label: "Move to Nurturing",
|
|
25413
|
-
description: "Move a CRM deal into nurturing for future follow-up.",
|
|
25414
|
-
scope: { domain: "sales" },
|
|
25415
|
-
resourceId: "move_to_nurturing-workflow",
|
|
25416
|
-
affects: ["crm.deal"],
|
|
25417
|
-
invocations: [],
|
|
25418
|
-
lifecycle: "active",
|
|
25419
|
-
knowledge: []
|
|
25420
|
-
}
|
|
25421
|
-
];
|
|
25422
|
-
var CRM_ACTION_ENTRIES = defineActions(CRM_ACTION_ENTRY_INPUTS);
|
|
25423
|
-
var ELEVASIS_DEFAULT_ORGANIZATION_MODEL_ACTIONS = {
|
|
25424
|
-
...LEAD_GEN_ACTION_ENTRIES,
|
|
25425
|
-
...CRM_ACTION_ENTRIES
|
|
25426
|
-
};
|
|
25427
|
-
|
|
25428
24161
|
// ../elevasis-core/src/organization-model/systems.ts
|
|
25429
24162
|
var platformSystems = {
|
|
25430
24163
|
platform: {
|
|
@@ -25433,6 +24166,7 @@ var platformSystems = {
|
|
|
25433
24166
|
label: "Platform",
|
|
25434
24167
|
description: "Cross-cutting platform infrastructure, diagnostics, and foundational utilities.",
|
|
25435
24168
|
kind: "platform",
|
|
24169
|
+
responsibleRoleId: "role.operator",
|
|
25436
24170
|
governedByKnowledge: [],
|
|
25437
24171
|
drivesGoals: [],
|
|
25438
24172
|
lifecycle: "active",
|
|
@@ -25457,6 +24191,7 @@ var platformSystems = {
|
|
|
25457
24191
|
description: "User-submitted feature requests and bug reports.",
|
|
25458
24192
|
kind: "operational",
|
|
25459
24193
|
parentSystemId: "platform",
|
|
24194
|
+
responsibleRoleId: "role.operator",
|
|
25460
24195
|
governedByKnowledge: [],
|
|
25461
24196
|
drivesGoals: [],
|
|
25462
24197
|
lifecycle: "active",
|
|
@@ -25472,6 +24207,7 @@ var platformSystems = {
|
|
|
25472
24207
|
label: "Projects",
|
|
25473
24208
|
description: "Projects, milestones, and work execution.",
|
|
25474
24209
|
kind: "operational",
|
|
24210
|
+
responsibleRoleId: "role.operator",
|
|
25475
24211
|
governedByKnowledge: [],
|
|
25476
24212
|
drivesGoals: [],
|
|
25477
24213
|
lifecycle: "beta",
|
|
@@ -25591,6 +24327,7 @@ var platformSystems = {
|
|
|
25591
24327
|
label: "Client Management",
|
|
25592
24328
|
description: "Operational client relationships, accounts, support intake, and business context.",
|
|
25593
24329
|
kind: "operational",
|
|
24330
|
+
responsibleRoleId: "role.client-support-operator",
|
|
25594
24331
|
governedByKnowledge: [],
|
|
25595
24332
|
drivesGoals: [],
|
|
25596
24333
|
lifecycle: "active",
|
|
@@ -25660,6 +24397,7 @@ var platformSystems = {
|
|
|
25660
24397
|
label: "Sales",
|
|
25661
24398
|
description: "Revenue workflows and customer acquisition.",
|
|
25662
24399
|
kind: "operational",
|
|
24400
|
+
responsibleRoleId: "role.operator",
|
|
25663
24401
|
governedByKnowledge: [],
|
|
25664
24402
|
drivesGoals: [],
|
|
25665
24403
|
lifecycle: "active",
|
|
@@ -25676,6 +24414,7 @@ var platformSystems = {
|
|
|
25676
24414
|
description: "Prospecting, qualification, and outreach preparation.",
|
|
25677
24415
|
kind: "operational",
|
|
25678
24416
|
parentSystemId: "sales",
|
|
24417
|
+
responsibleRoleId: "role.growth-operator",
|
|
25679
24418
|
governedByKnowledge: [],
|
|
25680
24419
|
drivesGoals: [],
|
|
25681
24420
|
lifecycle: "active",
|
|
@@ -26251,9 +24990,9 @@ var platformSystems = {
|
|
|
26251
24990
|
}
|
|
26252
24991
|
}
|
|
26253
24992
|
},
|
|
26254
|
-
|
|
26255
|
-
"sales.lead-gen:
|
|
26256
|
-
id: "sales.lead-gen:
|
|
24993
|
+
endpoints: {
|
|
24994
|
+
"sales.lead-gen:endpoint/lists": {
|
|
24995
|
+
id: "sales.lead-gen:endpoint/lists",
|
|
26257
24996
|
label: "Lead Lists",
|
|
26258
24997
|
ownerSystemId: "sales.lead-gen",
|
|
26259
24998
|
route: "/lead-gen"
|
|
@@ -26261,231 +25000,1785 @@ var platformSystems = {
|
|
|
26261
25000
|
}
|
|
26262
25001
|
}
|
|
26263
25002
|
},
|
|
26264
|
-
crm: {
|
|
26265
|
-
id: "sales.crm",
|
|
26266
|
-
order: 80,
|
|
26267
|
-
label: "CRM",
|
|
26268
|
-
description: "Relationship pipeline and deal management.",
|
|
26269
|
-
kind: "operational",
|
|
26270
|
-
parentSystemId: "sales",
|
|
26271
|
-
|
|
26272
|
-
|
|
26273
|
-
|
|
26274
|
-
|
|
26275
|
-
|
|
26276
|
-
|
|
26277
|
-
|
|
26278
|
-
|
|
26279
|
-
"crm-send-
|
|
26280
|
-
"crm-send-
|
|
26281
|
-
"crm-
|
|
26282
|
-
"
|
|
26283
|
-
|
|
26284
|
-
|
|
26285
|
-
|
|
26286
|
-
|
|
26287
|
-
|
|
26288
|
-
|
|
26289
|
-
|
|
26290
|
-
|
|
26291
|
-
|
|
26292
|
-
|
|
26293
|
-
|
|
26294
|
-
|
|
26295
|
-
|
|
26296
|
-
|
|
26297
|
-
|
|
26298
|
-
|
|
26299
|
-
|
|
26300
|
-
|
|
26301
|
-
//
|
|
26302
|
-
|
|
26303
|
-
|
|
26304
|
-
|
|
26305
|
-
|
|
26306
|
-
|
|
26307
|
-
|
|
26308
|
-
|
|
26309
|
-
|
|
26310
|
-
|
|
26311
|
-
|
|
26312
|
-
|
|
26313
|
-
|
|
26314
|
-
|
|
26315
|
-
|
|
26316
|
-
|
|
26317
|
-
|
|
26318
|
-
|
|
26319
|
-
|
|
26320
|
-
|
|
26321
|
-
|
|
26322
|
-
|
|
26323
|
-
|
|
26324
|
-
|
|
26325
|
-
|
|
26326
|
-
|
|
26327
|
-
|
|
26328
|
-
|
|
26329
|
-
|
|
26330
|
-
|
|
26331
|
-
|
|
26332
|
-
|
|
26333
|
-
|
|
26334
|
-
|
|
26335
|
-
|
|
26336
|
-
|
|
26337
|
-
|
|
26338
|
-
|
|
26339
|
-
|
|
26340
|
-
|
|
26341
|
-
|
|
26342
|
-
|
|
26343
|
-
|
|
26344
|
-
|
|
26345
|
-
|
|
26346
|
-
|
|
26347
|
-
|
|
26348
|
-
|
|
26349
|
-
|
|
26350
|
-
|
|
26351
|
-
|
|
26352
|
-
|
|
26353
|
-
|
|
26354
|
-
|
|
26355
|
-
|
|
26356
|
-
|
|
26357
|
-
|
|
26358
|
-
|
|
26359
|
-
|
|
26360
|
-
|
|
26361
|
-
|
|
26362
|
-
|
|
26363
|
-
|
|
26364
|
-
|
|
26365
|
-
|
|
26366
|
-
|
|
26367
|
-
|
|
26368
|
-
|
|
26369
|
-
|
|
26370
|
-
|
|
26371
|
-
|
|
26372
|
-
|
|
26373
|
-
|
|
26374
|
-
|
|
26375
|
-
|
|
26376
|
-
|
|
26377
|
-
|
|
26378
|
-
|
|
26379
|
-
|
|
26380
|
-
|
|
26381
|
-
|
|
26382
|
-
|
|
26383
|
-
|
|
26384
|
-
|
|
26385
|
-
|
|
26386
|
-
|
|
26387
|
-
|
|
26388
|
-
|
|
26389
|
-
|
|
26390
|
-
|
|
26391
|
-
|
|
26392
|
-
|
|
26393
|
-
|
|
26394
|
-
|
|
26395
|
-
|
|
26396
|
-
|
|
26397
|
-
|
|
26398
|
-
|
|
26399
|
-
|
|
26400
|
-
|
|
26401
|
-
|
|
26402
|
-
|
|
26403
|
-
|
|
26404
|
-
|
|
26405
|
-
|
|
26406
|
-
|
|
26407
|
-
|
|
26408
|
-
|
|
26409
|
-
|
|
26410
|
-
|
|
26411
|
-
|
|
26412
|
-
|
|
26413
|
-
|
|
26414
|
-
//
|
|
26415
|
-
//
|
|
26416
|
-
|
|
26417
|
-
|
|
26418
|
-
|
|
26419
|
-
|
|
26420
|
-
|
|
26421
|
-
|
|
26422
|
-
|
|
26423
|
-
|
|
26424
|
-
|
|
26425
|
-
|
|
26426
|
-
|
|
26427
|
-
|
|
26428
|
-
|
|
26429
|
-
|
|
26430
|
-
{ stateKey: "
|
|
26431
|
-
{ stateKey: "
|
|
26432
|
-
{ stateKey: "
|
|
26433
|
-
{ stateKey: "
|
|
26434
|
-
{ stateKey: "
|
|
26435
|
-
{ stateKey: "
|
|
26436
|
-
{ stateKey: "
|
|
26437
|
-
|
|
26438
|
-
|
|
26439
|
-
|
|
26440
|
-
|
|
26441
|
-
|
|
26442
|
-
|
|
26443
|
-
|
|
26444
|
-
|
|
26445
|
-
|
|
26446
|
-
|
|
26447
|
-
|
|
26448
|
-
|
|
26449
|
-
|
|
26450
|
-
|
|
26451
|
-
|
|
26452
|
-
|
|
26453
|
-
|
|
26454
|
-
|
|
26455
|
-
|
|
26456
|
-
|
|
26457
|
-
|
|
26458
|
-
|
|
26459
|
-
|
|
26460
|
-
|
|
26461
|
-
|
|
26462
|
-
|
|
26463
|
-
|
|
26464
|
-
|
|
26465
|
-
|
|
26466
|
-
|
|
26467
|
-
|
|
26468
|
-
|
|
26469
|
-
|
|
25003
|
+
crm: {
|
|
25004
|
+
id: "sales.crm",
|
|
25005
|
+
order: 80,
|
|
25006
|
+
label: "CRM",
|
|
25007
|
+
description: "Relationship pipeline and deal management.",
|
|
25008
|
+
kind: "operational",
|
|
25009
|
+
parentSystemId: "sales",
|
|
25010
|
+
responsibleRoleId: "role.crm-operator",
|
|
25011
|
+
governedByKnowledge: [],
|
|
25012
|
+
drivesGoals: [],
|
|
25013
|
+
lifecycle: "active",
|
|
25014
|
+
apiInterface: {
|
|
25015
|
+
lifecycle: "active",
|
|
25016
|
+
readinessProfile: "sales.crm.api",
|
|
25017
|
+
resourceIds: [
|
|
25018
|
+
"crm-send-reply-workflow",
|
|
25019
|
+
"crm-send-booking-link-workflow",
|
|
25020
|
+
"crm-send-nudge-workflow",
|
|
25021
|
+
"crm-rebook-workflow",
|
|
25022
|
+
"move_to_proposal-workflow"
|
|
25023
|
+
]
|
|
25024
|
+
},
|
|
25025
|
+
actions: Object.values(CRM_ACTION_ENTRIES).map((action) => ({
|
|
25026
|
+
actionId: action.id,
|
|
25027
|
+
intent: "exposes"
|
|
25028
|
+
})),
|
|
25029
|
+
ui: {
|
|
25030
|
+
path: "/crm",
|
|
25031
|
+
surfaces: []
|
|
25032
|
+
},
|
|
25033
|
+
config: {
|
|
25034
|
+
defaultPipelineId: "sales.crm:catalog/pipeline",
|
|
25035
|
+
kanban: {
|
|
25036
|
+
groupBy: "stage",
|
|
25037
|
+
showProbability: true
|
|
25038
|
+
}
|
|
25039
|
+
},
|
|
25040
|
+
// Primary authoring lives in ontology/config. The content block below is
|
|
25041
|
+
// a compatibility mirror for bridge-era pipeline and stage readers.
|
|
25042
|
+
ontology: {
|
|
25043
|
+
objectTypes: {
|
|
25044
|
+
"sales.crm:object/deal": {
|
|
25045
|
+
id: "sales.crm:object/deal",
|
|
25046
|
+
label: "Deal",
|
|
25047
|
+
description: "An acquisition opportunity tracked through the CRM pipeline.",
|
|
25048
|
+
ownerSystemId: "sales.crm",
|
|
25049
|
+
properties: {
|
|
25050
|
+
id: { valueType: "global:value-type/uuid", identity: true },
|
|
25051
|
+
title: { valueType: "global:value-type/text", required: true },
|
|
25052
|
+
stage: { catalogType: "sales.crm:catalog/pipeline" },
|
|
25053
|
+
primaryContactId: { objectType: "sales.crm:object/contact" }
|
|
25054
|
+
},
|
|
25055
|
+
storage: { kind: "table", table: "acq_deals", idColumn: "id" }
|
|
25056
|
+
},
|
|
25057
|
+
"sales.crm:object/contact": {
|
|
25058
|
+
id: "sales.crm:object/contact",
|
|
25059
|
+
label: "CRM Contact",
|
|
25060
|
+
description: "A person participating in an active acquisition relationship.",
|
|
25061
|
+
ownerSystemId: "sales.crm",
|
|
25062
|
+
properties: {
|
|
25063
|
+
id: { valueType: "global:value-type/uuid", identity: true },
|
|
25064
|
+
email: { valueType: "global:value-type/email", pii: true },
|
|
25065
|
+
name: { valueType: "global:value-type/text" }
|
|
25066
|
+
}
|
|
25067
|
+
}
|
|
25068
|
+
},
|
|
25069
|
+
linkTypes: {
|
|
25070
|
+
"sales.crm:link/deal-contact": {
|
|
25071
|
+
id: "sales.crm:link/deal-contact",
|
|
25072
|
+
label: "Deal contact",
|
|
25073
|
+
ownerSystemId: "sales.crm",
|
|
25074
|
+
from: "sales.crm:object/deal",
|
|
25075
|
+
to: "sales.crm:object/contact",
|
|
25076
|
+
cardinality: "many-to-many",
|
|
25077
|
+
via: "deal_contacts"
|
|
25078
|
+
}
|
|
25079
|
+
},
|
|
25080
|
+
actionTypes: {
|
|
25081
|
+
"sales.crm:action/deal.send-reply": {
|
|
25082
|
+
id: "sales.crm:action/deal.send-reply",
|
|
25083
|
+
label: "Send Reply",
|
|
25084
|
+
description: "Send a contextual reply on an active CRM deal.",
|
|
25085
|
+
ownerSystemId: "sales.crm",
|
|
25086
|
+
actsOn: ["sales.crm:object/deal", "sales.crm:object/contact"],
|
|
25087
|
+
effects: [{ kind: "write", objectType: "sales.crm:object/deal" }]
|
|
25088
|
+
},
|
|
25089
|
+
"sales.crm:action/deal.send-booking-link": {
|
|
25090
|
+
id: "sales.crm:action/deal.send-booking-link",
|
|
25091
|
+
label: "Send Booking Link",
|
|
25092
|
+
description: "Send a scheduling link and keep the deal moving toward a booked call.",
|
|
25093
|
+
ownerSystemId: "sales.crm",
|
|
25094
|
+
actsOn: ["sales.crm:object/deal"],
|
|
25095
|
+
effects: [{ kind: "write", objectType: "sales.crm:object/deal" }]
|
|
25096
|
+
},
|
|
25097
|
+
"sales.crm:action/deal.send-nudge": {
|
|
25098
|
+
id: "sales.crm:action/deal.send-nudge",
|
|
25099
|
+
label: "Send Nudge",
|
|
25100
|
+
description: "Send a follow-up nudge for a stalled deal.",
|
|
25101
|
+
ownerSystemId: "sales.crm",
|
|
25102
|
+
actsOn: ["sales.crm:object/deal"],
|
|
25103
|
+
effects: [{ kind: "write", objectType: "sales.crm:object/deal" }]
|
|
25104
|
+
},
|
|
25105
|
+
"sales.crm:action/deal.rebook": {
|
|
25106
|
+
id: "sales.crm:action/deal.rebook",
|
|
25107
|
+
label: "Rebook Deal",
|
|
25108
|
+
description: "Recover a missed or rescheduled appointment.",
|
|
25109
|
+
ownerSystemId: "sales.crm",
|
|
25110
|
+
actsOn: ["sales.crm:object/deal"],
|
|
25111
|
+
effects: [{ kind: "write", objectType: "sales.crm:object/deal" }]
|
|
25112
|
+
},
|
|
25113
|
+
"sales.crm:action/deal.update-stage": {
|
|
25114
|
+
id: "sales.crm:action/deal.update-stage",
|
|
25115
|
+
label: "Update Deal Stage",
|
|
25116
|
+
description: "Move a deal through the CRM pipeline.",
|
|
25117
|
+
ownerSystemId: "sales.crm",
|
|
25118
|
+
actsOn: ["sales.crm:object/deal"],
|
|
25119
|
+
input: {
|
|
25120
|
+
dealId: { valueType: "global:value-type/uuid", required: true },
|
|
25121
|
+
stage: { catalogType: "sales.crm:catalog/pipeline", required: true }
|
|
25122
|
+
},
|
|
25123
|
+
effects: [
|
|
25124
|
+
{
|
|
25125
|
+
kind: "setProperty",
|
|
25126
|
+
objectType: "sales.crm:object/deal",
|
|
25127
|
+
property: "stage",
|
|
25128
|
+
to: "$input.stage"
|
|
25129
|
+
},
|
|
25130
|
+
{ kind: "emitEvent", eventType: "sales.crm:event/deal.stage-changed" }
|
|
25131
|
+
]
|
|
25132
|
+
}
|
|
25133
|
+
},
|
|
25134
|
+
catalogTypes: {
|
|
25135
|
+
"sales.crm:catalog/pipeline": {
|
|
25136
|
+
id: "sales.crm:catalog/pipeline",
|
|
25137
|
+
label: "CRM Pipeline",
|
|
25138
|
+
description: "The primary deal pipeline from first interest through close or nurture.",
|
|
25139
|
+
ownerSystemId: "sales.crm",
|
|
25140
|
+
kind: "pipeline",
|
|
25141
|
+
appliesTo: "sales.crm:object/deal",
|
|
25142
|
+
entries: {
|
|
25143
|
+
interested: { label: "Interested", order: 10, semanticClass: "active", color: "blue" },
|
|
25144
|
+
booked: { label: "Booked", order: 20, semanticClass: "active", color: "cyan" },
|
|
25145
|
+
proposal: { label: "Proposal", order: 30, semanticClass: "active", color: "yellow" },
|
|
25146
|
+
closing: { label: "Closing", order: 40, semanticClass: "active", color: "orange" },
|
|
25147
|
+
closed_won: { label: "Closed Won", order: 50, semanticClass: "won", color: "green" },
|
|
25148
|
+
closed_lost: { label: "Closed Lost", order: 60, semanticClass: "lost", color: "red" },
|
|
25149
|
+
nurturing: { label: "Nurturing", order: 70, semanticClass: "open", color: "grape" },
|
|
25150
|
+
cancelled: { label: "Cancelled", order: 80, semanticClass: "closed", color: "gray" }
|
|
25151
|
+
}
|
|
25152
|
+
},
|
|
25153
|
+
// Bridge catalog authored here so @repo/core does not need to bake Elevasis CRM stage keys.
|
|
25154
|
+
// Shape mirrors exactly what ontology-validation.ts createCrmPipelineCatalog() produced from
|
|
25155
|
+
// CRM_PIPELINE_DEFINITION — behavior-identical, just the authoring location changed.
|
|
25156
|
+
"sales.crm:catalog/crm.pipeline": {
|
|
25157
|
+
id: "sales.crm:catalog/crm.pipeline",
|
|
25158
|
+
label: "CRM",
|
|
25159
|
+
ownerSystemId: "sales.crm",
|
|
25160
|
+
kind: "pipeline",
|
|
25161
|
+
appliesTo: "sales.crm:object/crm.deal",
|
|
25162
|
+
entries: {
|
|
25163
|
+
interested: {
|
|
25164
|
+
key: "interested",
|
|
25165
|
+
label: "Interested",
|
|
25166
|
+
order: 10,
|
|
25167
|
+
color: "blue",
|
|
25168
|
+
states: [
|
|
25169
|
+
{ stateKey: "discovery_replied", label: "Discovery Replied" },
|
|
25170
|
+
{ stateKey: "discovery_link_sent", label: "Discovery Link Sent" },
|
|
25171
|
+
{ stateKey: "discovery_nudging", label: "Discovery Nudging" },
|
|
25172
|
+
{ stateKey: "discovery_booking_cancelled", label: "Discovery Booking Cancelled" },
|
|
25173
|
+
{ stateKey: "reply_sent", label: "Reply Sent" },
|
|
25174
|
+
{ stateKey: "followup_1_sent", label: "Follow-up 1 Sent" },
|
|
25175
|
+
{ stateKey: "followup_2_sent", label: "Follow-up 2 Sent" },
|
|
25176
|
+
{ stateKey: "followup_3_sent", label: "Follow-up 3 Sent" }
|
|
25177
|
+
]
|
|
25178
|
+
},
|
|
25179
|
+
proposal: { key: "proposal", label: "Proposal", order: 20, color: "yellow", states: [] },
|
|
25180
|
+
closing: { key: "closing", label: "Closing", order: 30, color: "orange", states: [] },
|
|
25181
|
+
closed_won: { key: "closed_won", label: "Closed Won", order: 40, color: "green", states: [] },
|
|
25182
|
+
closed_lost: { key: "closed_lost", label: "Closed Lost", order: 50, color: "red", states: [] },
|
|
25183
|
+
nurturing: { key: "nurturing", label: "Nurturing", order: 60, color: "grape", states: [] }
|
|
25184
|
+
},
|
|
25185
|
+
legacyPipelineKey: "crm",
|
|
25186
|
+
legacyEntityKey: "crm.deal"
|
|
25187
|
+
}
|
|
25188
|
+
},
|
|
25189
|
+
eventTypes: {
|
|
25190
|
+
"sales.crm:event/deal.stage-changed": {
|
|
25191
|
+
id: "sales.crm:event/deal.stage-changed",
|
|
25192
|
+
label: "Deal Stage Changed",
|
|
25193
|
+
ownerSystemId: "sales.crm",
|
|
25194
|
+
payload: {
|
|
25195
|
+
dealId: { valueType: "global:value-type/uuid" },
|
|
25196
|
+
fromStage: { catalogType: "sales.crm:catalog/pipeline" },
|
|
25197
|
+
toStage: { catalogType: "sales.crm:catalog/pipeline" }
|
|
25198
|
+
}
|
|
25199
|
+
}
|
|
25200
|
+
},
|
|
25201
|
+
endpoints: {
|
|
25202
|
+
"sales.crm:endpoint/pipeline": {
|
|
25203
|
+
id: "sales.crm:endpoint/pipeline",
|
|
25204
|
+
label: "CRM Pipeline",
|
|
25205
|
+
ownerSystemId: "sales.crm",
|
|
25206
|
+
route: "/crm"
|
|
25207
|
+
}
|
|
25208
|
+
}
|
|
25209
|
+
}
|
|
25210
|
+
}
|
|
25211
|
+
}
|
|
25212
|
+
},
|
|
25213
|
+
seo: {
|
|
25214
|
+
id: "seo",
|
|
25215
|
+
order: 100,
|
|
25216
|
+
label: "SEO",
|
|
25217
|
+
description: "Search, content, and distribution workflows.",
|
|
25218
|
+
kind: "operational",
|
|
25219
|
+
responsibleRoleId: "role.website-operator",
|
|
25220
|
+
governedByKnowledge: [],
|
|
25221
|
+
drivesGoals: [],
|
|
25222
|
+
lifecycle: "beta",
|
|
25223
|
+
ui: {
|
|
25224
|
+
path: "/acquisition/seo",
|
|
25225
|
+
surfaces: [],
|
|
25226
|
+
icon: "search"
|
|
25227
|
+
}
|
|
25228
|
+
}
|
|
25229
|
+
};
|
|
25230
|
+
|
|
25231
|
+
// ../elevasis-core/src/organization-model/resource-routing.ts
|
|
25232
|
+
function systemOwnershipEntries(systems) {
|
|
25233
|
+
return Object.fromEntries(
|
|
25234
|
+
Object.entries(systems).map(([key, system]) => {
|
|
25235
|
+
const { apiInterface, systems: childSystems, subsystems, ...ownershipSystem } = system;
|
|
25236
|
+
return [
|
|
25237
|
+
key,
|
|
25238
|
+
{
|
|
25239
|
+
...ownershipSystem,
|
|
25240
|
+
...childSystems ? { systems: systemOwnershipEntries(childSystems) } : {},
|
|
25241
|
+
...subsystems ? { subsystems: systemOwnershipEntries(subsystems) } : {}
|
|
25242
|
+
}
|
|
25243
|
+
];
|
|
25244
|
+
})
|
|
25245
|
+
);
|
|
25246
|
+
}
|
|
25247
|
+
var platformSystemOwnershipModel = resolveOrganizationModel(
|
|
25248
|
+
{
|
|
25249
|
+
version: 1,
|
|
25250
|
+
roles: platformRoles,
|
|
25251
|
+
actions: ELEVASIS_DEFAULT_ORGANIZATION_MODEL_ACTIONS,
|
|
25252
|
+
entities: ELEVASIS_ORGANIZATION_MODEL_ENTITIES,
|
|
25253
|
+
systems: systemOwnershipEntries(platformSystems)
|
|
25254
|
+
},
|
|
25255
|
+
{ mergeDefaults: false }
|
|
25256
|
+
);
|
|
25257
|
+
function getPlatformOwnerRoleId(systemId) {
|
|
25258
|
+
return getSystem(platformSystemOwnershipModel, systemId)?.responsibleRoleId ?? "role.operator";
|
|
25259
|
+
}
|
|
25260
|
+
|
|
25261
|
+
// ../elevasis-core/src/organization-model/resources.ts
|
|
25262
|
+
var leadGenCompany = "sales.lead-gen:object/company";
|
|
25263
|
+
var leadGenContact = "sales.lead-gen:object/contact";
|
|
25264
|
+
var leadGenList = "sales.lead-gen:object/list";
|
|
25265
|
+
var leadGenCampaign = "sales.lead-gen:object/campaign";
|
|
25266
|
+
var leadGenCompanyStage = "sales.lead-gen:catalog/company-stage";
|
|
25267
|
+
var leadGenContactStage = "sales.lead-gen:catalog/contact-stage";
|
|
25268
|
+
var leadGenBuildTemplate = "sales.lead-gen:catalog/build-template";
|
|
25269
|
+
var leadGenLocalServicesTemplateStep = "sales.lead-gen:catalog/template-step.local-services";
|
|
25270
|
+
var leadGenDtcSubscriptionTemplateStep = "sales.lead-gen:catalog/template-step.dtc-subscription";
|
|
25271
|
+
var leadGenCampaignStatus = "sales.lead-gen:catalog/campaign-status";
|
|
25272
|
+
var crmDeal = "sales.crm:object/deal";
|
|
25273
|
+
var crmContact = "sales.crm:object/contact";
|
|
25274
|
+
var crmPipeline = "sales.crm:catalog/crm.pipeline";
|
|
25275
|
+
var clientSupportIssue = "client-management:object/support-issue";
|
|
25276
|
+
var clientSupportIssueSeverity = "client-management:catalog/support-issue-severity";
|
|
25277
|
+
var crmActionWorkflowSchemaCodeRef = {
|
|
25278
|
+
path: "packages/elevasis-operations/src/sales/crm/shared/action-workflow-schemas.ts",
|
|
25279
|
+
role: "schema",
|
|
25280
|
+
symbol: "ActionWorkflowInputSchema"
|
|
25281
|
+
};
|
|
25282
|
+
var platformWorkflowResourceDefinitions = {
|
|
25283
|
+
"resend-diagnostic": {
|
|
25284
|
+
systemPath: "platform"
|
|
25285
|
+
},
|
|
25286
|
+
"instantly-diagnostic": {
|
|
25287
|
+
systemPath: "sales.lead-gen"
|
|
25288
|
+
},
|
|
25289
|
+
"stripe-diagnostic": {
|
|
25290
|
+
systemPath: "platform"
|
|
25291
|
+
},
|
|
25292
|
+
"dropbox-diagnostic": {
|
|
25293
|
+
systemPath: "platform"
|
|
25294
|
+
},
|
|
25295
|
+
"signature-api-diagnostic": {
|
|
25296
|
+
systemPath: "platform"
|
|
25297
|
+
},
|
|
25298
|
+
"apify-diagnostic": {
|
|
25299
|
+
systemPath: "sales.lead-gen"
|
|
25300
|
+
},
|
|
25301
|
+
"full-diagnostic": {
|
|
25302
|
+
systemPath: "platform",
|
|
25303
|
+
contract: {
|
|
25304
|
+
input: "@repo/elevasis-core/contracts/full-diagnostic#inputSchema"
|
|
25305
|
+
}
|
|
25306
|
+
},
|
|
25307
|
+
"diagnostic-test-data": {
|
|
25308
|
+
systemPath: "platform"
|
|
25309
|
+
},
|
|
25310
|
+
"cutover-org-model-smoke-workflow": {
|
|
25311
|
+
systemPath: "platform",
|
|
25312
|
+
codeRefs: [
|
|
25313
|
+
{
|
|
25314
|
+
path: "packages/elevasis-operations/src/diagnostics/cutover/org-model-smoke.ts",
|
|
25315
|
+
role: "entrypoint",
|
|
25316
|
+
symbol: "orgModelSmokeWorkflow"
|
|
25317
|
+
}
|
|
25318
|
+
],
|
|
25319
|
+
displayMetadata: {
|
|
25320
|
+
title: "Cutover Org Model Smoke Test",
|
|
25321
|
+
description: "Post-cutover smoke test that validates OM resource descriptors, system paths, and ontology bindings are consistent."
|
|
25322
|
+
}
|
|
25323
|
+
},
|
|
25324
|
+
"crm-action-system-smoke-workflow": {
|
|
25325
|
+
systemPath: "sales.crm",
|
|
25326
|
+
codeRefs: [
|
|
25327
|
+
{
|
|
25328
|
+
path: "packages/elevasis-operations/src/diagnostics/cutover/crm-action-system-smoke.ts",
|
|
25329
|
+
role: "entrypoint",
|
|
25330
|
+
symbol: "crmActionSystemSmokeWorkflow"
|
|
25331
|
+
}
|
|
25332
|
+
],
|
|
25333
|
+
displayMetadata: {
|
|
25334
|
+
title: "CRM Action System Smoke Test",
|
|
25335
|
+
description: "Smoke test for CRM action workflows: verifies each action can be invoked end-to-end against the dev pipeline."
|
|
25336
|
+
}
|
|
25337
|
+
},
|
|
25338
|
+
"anymailfinder-diagnostic-workflow": {
|
|
25339
|
+
systemPath: "sales.lead-gen",
|
|
25340
|
+
codeRefs: [
|
|
25341
|
+
{
|
|
25342
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/anymailfinder-diagnostic.ts",
|
|
25343
|
+
role: "entrypoint",
|
|
25344
|
+
symbol: "anymailfinderDiagnosticWorkflow"
|
|
25345
|
+
}
|
|
25346
|
+
],
|
|
25347
|
+
displayMetadata: {
|
|
25348
|
+
title: "AnyMailFinder Integration Diagnostic",
|
|
25349
|
+
description: "Integration-credential diagnostic for AnyMailFinder API connectivity and lookup endpoint."
|
|
25350
|
+
}
|
|
25351
|
+
},
|
|
25352
|
+
"lgn-dtc-apollo-pipeline-diagnostic": {
|
|
25353
|
+
systemPath: "sales.lead-gen",
|
|
25354
|
+
codeRefs: [
|
|
25355
|
+
{
|
|
25356
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/dtc-subscription-apollo-pipeline-diagnostic.ts",
|
|
25357
|
+
role: "entrypoint",
|
|
25358
|
+
symbol: "dtcSubscriptionApolloPipelineDiagnosticWorkflow"
|
|
25359
|
+
},
|
|
25360
|
+
{
|
|
25361
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/dtc-subscription-apollo-pipeline-diagnostic.test.ts",
|
|
25362
|
+
role: "test"
|
|
25363
|
+
}
|
|
25364
|
+
],
|
|
25365
|
+
displayMetadata: {
|
|
25366
|
+
title: "LGN DTC Apollo Pipeline Diagnostic",
|
|
25367
|
+
description: "Demo-safe E2E test of the DTC Subscription Apollo pipeline: fixture normalization, scoring, decision-maker enrichment, qualified-lead export."
|
|
25368
|
+
}
|
|
25369
|
+
},
|
|
25370
|
+
"lgn-email-discovery-boundary-diagnostic-workflow": {
|
|
25371
|
+
systemPath: "sales.lead-gen",
|
|
25372
|
+
codeRefs: [
|
|
25373
|
+
{
|
|
25374
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/email-discovery-boundary-diagnostic.ts",
|
|
25375
|
+
role: "entrypoint",
|
|
25376
|
+
symbol: "emailDiscoveryBoundaryDiagnosticWorkflow"
|
|
25377
|
+
}
|
|
25378
|
+
],
|
|
25379
|
+
displayMetadata: {
|
|
25380
|
+
title: "LGN Email Discovery Boundary Diagnostic",
|
|
25381
|
+
description: "Regression net for Tomba \u2192 AnyMailFinder migration: verifies AMF only runs when Tomba finds no personal email."
|
|
25382
|
+
}
|
|
25383
|
+
},
|
|
25384
|
+
"lgn-data-integrity-diagnostic": {
|
|
25385
|
+
systemPath: "sales.lead-gen",
|
|
25386
|
+
codeRefs: [
|
|
25387
|
+
{
|
|
25388
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/data-integrity-diagnostic.ts",
|
|
25389
|
+
role: "entrypoint",
|
|
25390
|
+
symbol: "dataIntegrityDiagnosticWorkflow"
|
|
25391
|
+
}
|
|
25392
|
+
],
|
|
25393
|
+
displayMetadata: {
|
|
25394
|
+
title: "LGN Data Integrity Diagnostic",
|
|
25395
|
+
description: "Validates enrichmentData JSONB shape and domain dedup constraints across lead-gen companies."
|
|
25396
|
+
}
|
|
25397
|
+
},
|
|
25398
|
+
"lgn-email-discovery-diagnostic-workflow": {
|
|
25399
|
+
systemPath: "sales.lead-gen",
|
|
25400
|
+
codeRefs: [
|
|
25401
|
+
{
|
|
25402
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/email-discovery-diagnostic.ts",
|
|
25403
|
+
role: "entrypoint",
|
|
25404
|
+
symbol: "emailDiscoveryDiagnosticWorkflow"
|
|
25405
|
+
}
|
|
25406
|
+
],
|
|
25407
|
+
displayMetadata: {
|
|
25408
|
+
title: "LGN Email Discovery Diagnostic",
|
|
25409
|
+
description: "E2E validation of unified email discovery (Tomba + AMF waterfall) on diagnostic batch with idempotency and phase-tracking assertions."
|
|
25410
|
+
}
|
|
25411
|
+
},
|
|
25412
|
+
"instantly-diagnostic-workflow": {
|
|
25413
|
+
systemPath: "sales.lead-gen",
|
|
25414
|
+
codeRefs: [
|
|
25415
|
+
{
|
|
25416
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/instantly-diagnostic.ts",
|
|
25417
|
+
role: "entrypoint",
|
|
25418
|
+
symbol: "instantlyDiagnosticWorkflow"
|
|
25419
|
+
}
|
|
25420
|
+
],
|
|
25421
|
+
displayMetadata: {
|
|
25422
|
+
title: "Instantly Integration Diagnostic",
|
|
25423
|
+
description: "Integration-credential diagnostic for Instantly: campaigns list, account health, analytics, and dry-run upload."
|
|
25424
|
+
}
|
|
25425
|
+
},
|
|
25426
|
+
"lgn-diagnostic-orchestrator": {
|
|
25427
|
+
systemPath: "sales.lead-gen",
|
|
25428
|
+
codeRefs: [
|
|
25429
|
+
{
|
|
25430
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/lds-diagnostic-orchestrator.ts",
|
|
25431
|
+
role: "entrypoint",
|
|
25432
|
+
symbol: "ldsDiagnosticOrchestratorWorkflow"
|
|
25433
|
+
}
|
|
25434
|
+
],
|
|
25435
|
+
displayMetadata: {
|
|
25436
|
+
title: "LGN Diagnostic Orchestrator",
|
|
25437
|
+
description: "Meta-workflow that resets diagnostic data and runs internal + external lead-gen diagnostics sequentially with pass/fail summary."
|
|
25438
|
+
}
|
|
25439
|
+
},
|
|
25440
|
+
"lgn-lead-filter-diagnostic": {
|
|
25441
|
+
systemPath: "sales.lead-gen",
|
|
25442
|
+
codeRefs: [
|
|
25443
|
+
{
|
|
25444
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/lead-filter-diagnostic.ts",
|
|
25445
|
+
role: "entrypoint",
|
|
25446
|
+
symbol: "leadFilterDiagnosticWorkflow"
|
|
25447
|
+
}
|
|
25448
|
+
],
|
|
25449
|
+
displayMetadata: {
|
|
25450
|
+
title: "LGN Lead Filter Diagnostic",
|
|
25451
|
+
description: "Regression test for tool-dispatcher filters: verifies listCompanies/listContacts honor batchId, segment, and qualification filters."
|
|
25452
|
+
}
|
|
25453
|
+
},
|
|
25454
|
+
"lgn-pipeline-diagnostic": {
|
|
25455
|
+
systemPath: "sales.lead-gen",
|
|
25456
|
+
codeRefs: [
|
|
25457
|
+
{
|
|
25458
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/pipeline-diagnostic.ts",
|
|
25459
|
+
role: "entrypoint",
|
|
25460
|
+
symbol: "pipelineDiagnosticWorkflow"
|
|
25461
|
+
}
|
|
25462
|
+
],
|
|
25463
|
+
displayMetadata: {
|
|
25464
|
+
title: "LGN Pipeline E2E Diagnostic",
|
|
25465
|
+
description: "Full E2E smoke test of the 7-stage lead-gen pipeline: verify, cleanup, qualify, personalize, upload, processing-state assertions."
|
|
25466
|
+
}
|
|
25467
|
+
},
|
|
25468
|
+
"lgn-qualification-diagnostic": {
|
|
25469
|
+
systemPath: "sales.lead-gen",
|
|
25470
|
+
codeRefs: [
|
|
25471
|
+
{
|
|
25472
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/qualification-diagnostic.ts",
|
|
25473
|
+
role: "entrypoint",
|
|
25474
|
+
symbol: "qualificationDiagnosticWorkflow"
|
|
25475
|
+
}
|
|
25476
|
+
],
|
|
25477
|
+
displayMetadata: {
|
|
25478
|
+
title: "LGN Qualification Diagnostic",
|
|
25479
|
+
description: "Isolated LLM qualification smoke test: creates a test contact, runs LLM qualification, verifies DB write, cleans up."
|
|
25480
|
+
}
|
|
25481
|
+
},
|
|
25482
|
+
"lgn-scrape-diagnostic": {
|
|
25483
|
+
systemPath: "sales.lead-gen",
|
|
25484
|
+
codeRefs: [
|
|
25485
|
+
{
|
|
25486
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/scrape-diagnostic.ts",
|
|
25487
|
+
role: "entrypoint",
|
|
25488
|
+
symbol: "scrapeDiagnosticWorkflow"
|
|
25489
|
+
}
|
|
25490
|
+
],
|
|
25491
|
+
displayMetadata: {
|
|
25492
|
+
title: "LGN Scrape Diagnostic",
|
|
25493
|
+
description: "Validates Google Maps scraper pipeline by scraping a single business via Apify and verifying company record creation."
|
|
25494
|
+
}
|
|
25495
|
+
},
|
|
25496
|
+
"lgn-tomba-diagnostic-workflow": {
|
|
25497
|
+
systemPath: "sales.lead-gen",
|
|
25498
|
+
codeRefs: [
|
|
25499
|
+
{
|
|
25500
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/tomba-diagnostic.ts",
|
|
25501
|
+
role: "entrypoint",
|
|
25502
|
+
symbol: "tombaDiagnosticWorkflow"
|
|
25503
|
+
}
|
|
25504
|
+
],
|
|
25505
|
+
displayMetadata: {
|
|
25506
|
+
title: "LGN Tomba Integration Diagnostic",
|
|
25507
|
+
description: "E2E validation of Tomba integration: domain-search, email-finder, and email-verifier against a known domain."
|
|
25508
|
+
}
|
|
25509
|
+
},
|
|
25510
|
+
"lgn-verification-diagnostic": {
|
|
25511
|
+
systemPath: "sales.lead-gen",
|
|
25512
|
+
codeRefs: [
|
|
25513
|
+
{
|
|
25514
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/verification-diagnostic.ts",
|
|
25515
|
+
role: "entrypoint",
|
|
25516
|
+
symbol: "verificationDiagnosticWorkflow"
|
|
25517
|
+
},
|
|
25518
|
+
{
|
|
25519
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/verification-diagnostic.test.ts",
|
|
25520
|
+
role: "test"
|
|
25521
|
+
}
|
|
25522
|
+
],
|
|
25523
|
+
displayMetadata: {
|
|
25524
|
+
title: "LGN Verification Diagnostic",
|
|
25525
|
+
description: "Smoke test for Tomba email verification with soft-delete decision logic."
|
|
25526
|
+
}
|
|
25527
|
+
},
|
|
25528
|
+
"lgn-website-extract-diagnostic-workflow": {
|
|
25529
|
+
systemPath: "sales.lead-gen",
|
|
25530
|
+
codeRefs: [
|
|
25531
|
+
{
|
|
25532
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/website-extract-diagnostic.ts",
|
|
25533
|
+
role: "entrypoint",
|
|
25534
|
+
symbol: "websiteExtractDiagnosticWorkflow"
|
|
25535
|
+
}
|
|
25536
|
+
],
|
|
25537
|
+
displayMetadata: {
|
|
25538
|
+
title: "LGN Website Extract Diagnostic",
|
|
25539
|
+
description: "Tests LLM extraction improvements: verifies staff names/titles extracted and enrichmentData.staff populated correctly."
|
|
25540
|
+
}
|
|
25541
|
+
},
|
|
25542
|
+
"lgn-amf-discovery-diagnostic-workflow": {
|
|
25543
|
+
systemPath: "sales.lead-gen",
|
|
25544
|
+
codeRefs: [
|
|
25545
|
+
{
|
|
25546
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/amf-discovery-diagnostic.ts",
|
|
25547
|
+
role: "entrypoint",
|
|
25548
|
+
symbol: "amfDiscoveryDiagnosticWorkflow"
|
|
25549
|
+
}
|
|
25550
|
+
],
|
|
25551
|
+
displayMetadata: {
|
|
25552
|
+
title: "LGN AnyMailFinder Discovery Diagnostic",
|
|
25553
|
+
description: "E2E validation of AnyMailFinder waterfall: preserves qualification + Tomba state, verifies enrichmentData.anymailfinder shape."
|
|
25554
|
+
}
|
|
25555
|
+
},
|
|
25556
|
+
"lgn-tomba-discovery-diagnostic-workflow": {
|
|
25557
|
+
systemPath: "sales.lead-gen",
|
|
25558
|
+
codeRefs: [
|
|
25559
|
+
{
|
|
25560
|
+
path: "packages/elevasis-operations/src/diagnostics/lead-gen/tomba-discovery-diagnostic.ts",
|
|
25561
|
+
role: "entrypoint",
|
|
25562
|
+
symbol: "tombaDiscoveryDiagnosticWorkflow"
|
|
25563
|
+
}
|
|
25564
|
+
],
|
|
25565
|
+
displayMetadata: {
|
|
25566
|
+
title: "LGN Tomba Discovery Diagnostic",
|
|
25567
|
+
description: "E2E validation of Tomba discovery workflow + soft-delete logic on found contacts."
|
|
25568
|
+
}
|
|
25569
|
+
},
|
|
25570
|
+
"resend-unsubscribe-diagnostic-workflow": {
|
|
25571
|
+
systemPath: "platform"
|
|
25572
|
+
},
|
|
25573
|
+
"instantly-thread-diagnostic-workflow": {
|
|
25574
|
+
systemPath: "sales.lead-gen"
|
|
25575
|
+
},
|
|
25576
|
+
"instantly-thread-link-backfill-workflow": {
|
|
25577
|
+
systemPath: "sales.lead-gen"
|
|
25578
|
+
},
|
|
25579
|
+
"instantly-reply-cleanup-workflow": {
|
|
25580
|
+
systemPath: "sales.lead-gen"
|
|
25581
|
+
},
|
|
25582
|
+
"inb-integration-test": {
|
|
25583
|
+
systemPath: "sales.crm",
|
|
25584
|
+
contract: {
|
|
25585
|
+
input: "@repo/elevasis-core/contracts/integration-test#inputSchema"
|
|
25586
|
+
},
|
|
25587
|
+
codeRefs: [
|
|
25588
|
+
{
|
|
25589
|
+
path: "packages/elevasis-operations/src/diagnostics/inbound/integration-test.ts",
|
|
25590
|
+
role: "entrypoint",
|
|
25591
|
+
symbol: "acqIntegrationTestWorkflow"
|
|
25592
|
+
},
|
|
25593
|
+
{
|
|
25594
|
+
path: "packages/elevasis-operations/src/diagnostics/inbound/integration-test-schema.ts",
|
|
25595
|
+
role: "schema"
|
|
25596
|
+
}
|
|
25597
|
+
],
|
|
25598
|
+
displayMetadata: {
|
|
25599
|
+
title: "INB Integration Test",
|
|
25600
|
+
description: "End-to-end integration test for the inbound sales pipeline: reply handler through booking and discovery stages."
|
|
25601
|
+
}
|
|
25602
|
+
},
|
|
25603
|
+
"organic-booking-diagnostic-workflow": {
|
|
25604
|
+
systemPath: "sales.crm"
|
|
25605
|
+
},
|
|
25606
|
+
"organic-booking-cleanup-workflow": {
|
|
25607
|
+
systemPath: "sales.crm"
|
|
25608
|
+
},
|
|
25609
|
+
"crm-timeout-checker-diagnostic-workflow": {
|
|
25610
|
+
systemPath: "sales.crm",
|
|
25611
|
+
codeRefs: [
|
|
25612
|
+
{
|
|
25613
|
+
path: "packages/elevasis-operations/src/diagnostics/inbound/timeout-checker-diagnostic.ts",
|
|
25614
|
+
role: "entrypoint",
|
|
25615
|
+
symbol: "crmTimeoutCheckerDiagnosticWorkflow"
|
|
25616
|
+
}
|
|
25617
|
+
],
|
|
25618
|
+
displayMetadata: {
|
|
25619
|
+
title: "CRM Timeout Checker Diagnostic",
|
|
25620
|
+
description: "Diagnostic for the pipeline timeout checker: simulates stale deals and verifies correct timeout-action dispatch."
|
|
25621
|
+
}
|
|
25622
|
+
},
|
|
25623
|
+
"ist-toolkit-diagnostic-workflow": {
|
|
25624
|
+
systemPath: "sales.lead-gen"
|
|
25625
|
+
},
|
|
25626
|
+
"ist-toolkit-diagnostic-orchestrator": {
|
|
25627
|
+
systemPath: "sales.lead-gen"
|
|
25628
|
+
},
|
|
25629
|
+
"ist-cross-batch-prompting-diagnostic-workflow": {
|
|
25630
|
+
systemPath: "sales.lead-gen"
|
|
25631
|
+
},
|
|
25632
|
+
"llm-diagnostic": {
|
|
25633
|
+
systemPath: "platform"
|
|
25634
|
+
},
|
|
25635
|
+
"execution-diagnostic": {
|
|
25636
|
+
systemPath: "platform"
|
|
25637
|
+
},
|
|
25638
|
+
"scheduler-diagnostic": {
|
|
25639
|
+
systemPath: "platform"
|
|
25640
|
+
},
|
|
25641
|
+
"storage-diagnostic": {
|
|
25642
|
+
systemPath: "platform"
|
|
25643
|
+
},
|
|
25644
|
+
"lead-diagnostic": {
|
|
25645
|
+
systemPath: "platform"
|
|
25646
|
+
},
|
|
25647
|
+
"email-diagnostic": {
|
|
25648
|
+
systemPath: "platform"
|
|
25649
|
+
},
|
|
25650
|
+
"approval-diagnostic": {
|
|
25651
|
+
systemPath: "platform"
|
|
25652
|
+
},
|
|
25653
|
+
"pdf-diagnostic": {
|
|
25654
|
+
systemPath: "platform"
|
|
25655
|
+
},
|
|
25656
|
+
"notification-diagnostic": {
|
|
25657
|
+
systemPath: "platform"
|
|
25658
|
+
},
|
|
25659
|
+
"notification-sequence-diagnostic": {
|
|
25660
|
+
systemPath: "platform"
|
|
25661
|
+
},
|
|
25662
|
+
echo: {
|
|
25663
|
+
systemPath: "platform",
|
|
25664
|
+
codeRefs: [
|
|
25665
|
+
{
|
|
25666
|
+
path: "packages/elevasis-operations/src/diagnostics/platform/echo-workflow.ts",
|
|
25667
|
+
role: "entrypoint",
|
|
25668
|
+
symbol: "echoWorkflow"
|
|
25669
|
+
}
|
|
25670
|
+
]
|
|
25671
|
+
},
|
|
25672
|
+
"migration-smoke": {
|
|
25673
|
+
systemPath: "platform"
|
|
25674
|
+
},
|
|
25675
|
+
"inb-01-instantly-reply-handler-workflow": {
|
|
25676
|
+
systemPath: "sales.crm",
|
|
25677
|
+
codeRefs: [
|
|
25678
|
+
{
|
|
25679
|
+
path: "packages/elevasis-operations/src/sales/outreach/reply/instantly-reply-handler.ts",
|
|
25680
|
+
role: "entrypoint",
|
|
25681
|
+
symbol: "instantlyReplyHandlerWorkflow"
|
|
25682
|
+
}
|
|
25683
|
+
],
|
|
25684
|
+
displayMetadata: {
|
|
25685
|
+
title: "INB-01 Instantly Reply Handler",
|
|
25686
|
+
description: "Entry handler for inbound Instantly replies: classifies intent, routes to booking or follow-up branches."
|
|
25687
|
+
}
|
|
25688
|
+
},
|
|
25689
|
+
"inb-01-booking-nudge-workflow": {
|
|
25690
|
+
systemPath: "sales.crm",
|
|
25691
|
+
contract: {
|
|
25692
|
+
input: "@repo/elevasis-core/contracts/booking-nudge#inputSchema"
|
|
25693
|
+
},
|
|
25694
|
+
codeRefs: [
|
|
25695
|
+
{
|
|
25696
|
+
path: "packages/elevasis-operations/src/sales/outreach/reply/booking-nudge.ts",
|
|
25697
|
+
role: "entrypoint",
|
|
25698
|
+
symbol: "bookingNudgeWorkflow"
|
|
25699
|
+
},
|
|
25700
|
+
{
|
|
25701
|
+
path: "packages/elevasis-operations/src/sales/outreach/reply/booking-nudge-schema.ts",
|
|
25702
|
+
role: "schema"
|
|
25703
|
+
}
|
|
25704
|
+
],
|
|
25705
|
+
displayMetadata: {
|
|
25706
|
+
title: "INB-01 Booking Nudge",
|
|
25707
|
+
description: "Send a scheduled nudge to prospects who received a booking link but have not yet booked."
|
|
25708
|
+
}
|
|
25709
|
+
},
|
|
25710
|
+
"inb-01-send-booking-reply-workflow": {
|
|
25711
|
+
systemPath: "sales.crm",
|
|
25712
|
+
codeRefs: [
|
|
25713
|
+
{
|
|
25714
|
+
path: "packages/elevasis-operations/src/sales/outreach/reply/send-booking-reply.ts",
|
|
25715
|
+
role: "entrypoint",
|
|
25716
|
+
symbol: "sendBookingReplyWorkflow"
|
|
25717
|
+
}
|
|
25718
|
+
],
|
|
25719
|
+
displayMetadata: {
|
|
25720
|
+
title: "INB-01 Send Booking Reply",
|
|
25721
|
+
description: "Send a booking-link reply to an interested Instantly lead and create or update the CRM deal."
|
|
25722
|
+
}
|
|
25723
|
+
},
|
|
25724
|
+
"inb-01-send-subsequent-reply-workflow": {
|
|
25725
|
+
systemPath: "sales.crm",
|
|
25726
|
+
codeRefs: [
|
|
25727
|
+
{
|
|
25728
|
+
path: "packages/elevasis-operations/src/sales/outreach/reply/send-subsequent-reply.ts",
|
|
25729
|
+
role: "entrypoint",
|
|
25730
|
+
symbol: "sendSubsequentReplyWorkflow"
|
|
25731
|
+
}
|
|
25732
|
+
],
|
|
25733
|
+
displayMetadata: {
|
|
25734
|
+
title: "INB-01 Send Subsequent Reply",
|
|
25735
|
+
description: "Send a follow-up reply for edge-case inbound threads that require a second outreach pass."
|
|
25736
|
+
}
|
|
25737
|
+
},
|
|
25738
|
+
"inb-02-discovery-reminder-workflow": {
|
|
25739
|
+
systemPath: "sales.crm",
|
|
25740
|
+
codeRefs: [
|
|
25741
|
+
{
|
|
25742
|
+
path: "packages/elevasis-operations/src/sales/crm/booking/discovery-reminder.ts",
|
|
25743
|
+
role: "entrypoint",
|
|
25744
|
+
symbol: "discoveryReminderWorkflow"
|
|
25745
|
+
}
|
|
25746
|
+
],
|
|
25747
|
+
displayMetadata: {
|
|
25748
|
+
title: "INB-02 Discovery Reminder",
|
|
25749
|
+
description: "Send a pre-discovery call reminder and attach any relevant context to the deal record."
|
|
25750
|
+
}
|
|
25751
|
+
},
|
|
25752
|
+
"cal-booking-revert-workflow": {
|
|
25753
|
+
systemPath: "sales.crm",
|
|
25754
|
+
codeRefs: [
|
|
25755
|
+
{
|
|
25756
|
+
path: "packages/elevasis-operations/src/sales/crm/booking/booking-revert.ts",
|
|
25757
|
+
role: "entrypoint",
|
|
25758
|
+
symbol: "bookingRevertWorkflow"
|
|
25759
|
+
}
|
|
25760
|
+
],
|
|
25761
|
+
displayMetadata: {
|
|
25762
|
+
title: "INB-02 Cal Booking Revert",
|
|
25763
|
+
description: "Revert a deal to the pre-booking state when a Cal.com booking is cancelled or rescheduled."
|
|
25764
|
+
}
|
|
25765
|
+
},
|
|
25766
|
+
"inb-02-booking-handler-workflow": {
|
|
25767
|
+
systemPath: "sales.crm",
|
|
25768
|
+
codeRefs: [
|
|
25769
|
+
{
|
|
25770
|
+
path: "packages/elevasis-operations/src/sales/crm/booking/booking-handler.ts",
|
|
25771
|
+
role: "entrypoint",
|
|
25772
|
+
symbol: "bookingHandlerWorkflow"
|
|
25773
|
+
}
|
|
25774
|
+
],
|
|
25775
|
+
displayMetadata: {
|
|
25776
|
+
title: "INB-02 Cal Booking Handler",
|
|
25777
|
+
description: "Handle an inbound Cal.com booking event: update deal stage, send confirmation, and schedule discovery reminder."
|
|
25778
|
+
}
|
|
25779
|
+
},
|
|
25780
|
+
"inb-02b-organic-booking-handler-workflow": {
|
|
25781
|
+
systemPath: "sales.crm",
|
|
25782
|
+
codeRefs: [
|
|
25783
|
+
{
|
|
25784
|
+
path: "packages/elevasis-operations/src/sales/crm/booking/organic-booking-handler.ts",
|
|
25785
|
+
role: "entrypoint",
|
|
25786
|
+
symbol: "organicBookingHandlerWorkflow"
|
|
25787
|
+
}
|
|
25788
|
+
],
|
|
25789
|
+
displayMetadata: {
|
|
25790
|
+
title: "INB-02B Organic Booking Handler",
|
|
25791
|
+
description: "Handle Cal.com bookings that originate outside the Instantly outreach funnel (website form, referral, etc.)."
|
|
25792
|
+
}
|
|
25793
|
+
},
|
|
25794
|
+
"inb-03-discovery-form-handler-workflow": {
|
|
25795
|
+
systemPath: "sales.crm",
|
|
25796
|
+
codeRefs: [
|
|
25797
|
+
{
|
|
25798
|
+
path: "packages/elevasis-operations/src/sales/qualification/discovery/discovery-form-handler.ts",
|
|
25799
|
+
role: "entrypoint",
|
|
25800
|
+
symbol: "discoveryFormHandlerWorkflow"
|
|
25801
|
+
}
|
|
25802
|
+
],
|
|
25803
|
+
displayMetadata: {
|
|
25804
|
+
title: "INB-03 Discovery Form Handler",
|
|
25805
|
+
description: "Process an inbound discovery form submission: enrich deal, score fit, and route to proposal or nurture."
|
|
25806
|
+
}
|
|
25807
|
+
},
|
|
25808
|
+
"discovery-form-revert-workflow": {
|
|
25809
|
+
systemPath: "sales.crm",
|
|
25810
|
+
codeRefs: [
|
|
25811
|
+
{
|
|
25812
|
+
path: "packages/elevasis-operations/src/sales/qualification/discovery/discovery-form-revert.ts",
|
|
25813
|
+
role: "entrypoint",
|
|
25814
|
+
symbol: "discoveryFormRevertWorkflow"
|
|
25815
|
+
}
|
|
25816
|
+
],
|
|
25817
|
+
displayMetadata: {
|
|
25818
|
+
title: "INB-03 Discovery Form Revert",
|
|
25819
|
+
description: "Revert a deal to the pre-discovery state when a discovery form submission must be rolled back."
|
|
25820
|
+
}
|
|
25821
|
+
},
|
|
25822
|
+
"inb-pipeline-timeout-nurture-workflow": {
|
|
25823
|
+
systemPath: "sales.crm",
|
|
25824
|
+
codeRefs: [
|
|
25825
|
+
{
|
|
25826
|
+
path: "packages/elevasis-operations/src/sales/crm/pipeline/timeout-actions.ts",
|
|
25827
|
+
role: "entrypoint",
|
|
25828
|
+
symbol: "timeoutNurtureWorkflow"
|
|
25829
|
+
}
|
|
25830
|
+
],
|
|
25831
|
+
displayMetadata: {
|
|
25832
|
+
title: "INB Pipeline Timeout: Nurture",
|
|
25833
|
+
description: "Timeout action for deals that have gone cold: move to nurturing and queue long-term follow-up."
|
|
25834
|
+
}
|
|
25835
|
+
},
|
|
25836
|
+
"inb-pipeline-timeout-close-lost-workflow": {
|
|
25837
|
+
systemPath: "sales.crm",
|
|
25838
|
+
codeRefs: [
|
|
25839
|
+
{
|
|
25840
|
+
path: "packages/elevasis-operations/src/sales/crm/pipeline/timeout-actions.ts",
|
|
25841
|
+
role: "entrypoint",
|
|
25842
|
+
symbol: "timeoutCloseLostWorkflow"
|
|
25843
|
+
}
|
|
25844
|
+
],
|
|
25845
|
+
displayMetadata: {
|
|
25846
|
+
title: "INB Pipeline Timeout: Close Lost",
|
|
25847
|
+
description: "Timeout action for deals that have exceeded the maximum pipeline age: auto-close as lost."
|
|
25848
|
+
}
|
|
25849
|
+
},
|
|
25850
|
+
"inb-pipeline-timeout-no-show-workflow": {
|
|
25851
|
+
systemPath: "sales.crm",
|
|
25852
|
+
codeRefs: [
|
|
25853
|
+
{
|
|
25854
|
+
path: "packages/elevasis-operations/src/sales/crm/pipeline/timeout-actions.ts",
|
|
25855
|
+
role: "entrypoint",
|
|
25856
|
+
symbol: "timeoutNoShowWorkflow"
|
|
25857
|
+
}
|
|
25858
|
+
],
|
|
25859
|
+
displayMetadata: {
|
|
25860
|
+
title: "INB Pipeline Timeout: No Show",
|
|
25861
|
+
description: "Timeout action for booked deals with no discovery form submitted: mark as no-show and trigger recovery."
|
|
25862
|
+
}
|
|
25863
|
+
},
|
|
25864
|
+
"inb-pipeline-timeout-followup-workflow": {
|
|
25865
|
+
systemPath: "sales.crm",
|
|
25866
|
+
codeRefs: [
|
|
25867
|
+
{
|
|
25868
|
+
path: "packages/elevasis-operations/src/sales/crm/pipeline/timeout-actions.ts",
|
|
25869
|
+
role: "entrypoint",
|
|
25870
|
+
symbol: "timeoutFollowupWorkflow"
|
|
25871
|
+
}
|
|
25872
|
+
],
|
|
25873
|
+
displayMetadata: {
|
|
25874
|
+
title: "INB Pipeline Timeout: Follow-up",
|
|
25875
|
+
description: "Timeout action for deals stuck in the interested stage: send a follow-up nudge or escalate."
|
|
25876
|
+
}
|
|
25877
|
+
},
|
|
25878
|
+
"inb-pipeline-timeout-checker-workflow": {
|
|
25879
|
+
systemPath: "sales.crm",
|
|
25880
|
+
codeRefs: [
|
|
25881
|
+
{
|
|
25882
|
+
path: "packages/elevasis-operations/src/sales/crm/pipeline/timeout-checker.ts",
|
|
25883
|
+
role: "entrypoint",
|
|
25884
|
+
symbol: "timeoutCheckerWorkflow"
|
|
25885
|
+
}
|
|
25886
|
+
],
|
|
25887
|
+
displayMetadata: {
|
|
25888
|
+
title: "INB Pipeline Timeout Checker",
|
|
25889
|
+
description: "Scheduled checker that scans the active deal pipeline for stage timeouts and dispatches timeout-action workflows."
|
|
25890
|
+
}
|
|
25891
|
+
},
|
|
25892
|
+
"inb-pipeline-unsubscribe-cleanup-workflow": {
|
|
25893
|
+
systemPath: "sales.crm",
|
|
25894
|
+
codeRefs: [
|
|
25895
|
+
{
|
|
25896
|
+
path: "packages/elevasis-operations/src/sales/crm/pipeline/unsubscribe-cleanup.ts",
|
|
25897
|
+
role: "entrypoint",
|
|
25898
|
+
symbol: "unsubscribeCleanupWorkflow"
|
|
25899
|
+
}
|
|
25900
|
+
],
|
|
25901
|
+
displayMetadata: {
|
|
25902
|
+
title: "INB Unsubscribe Cleanup",
|
|
25903
|
+
description: "Remove unsubscribed contacts from the active pipeline and mark their deals closed-lost."
|
|
25904
|
+
}
|
|
25905
|
+
},
|
|
25906
|
+
"inb-full-cleanup-workflow": {
|
|
25907
|
+
systemPath: "sales.crm",
|
|
25908
|
+
codeRefs: [
|
|
25909
|
+
{
|
|
25910
|
+
path: "packages/elevasis-operations/src/sales/crm/pipeline/full-cleanup.ts",
|
|
25911
|
+
role: "entrypoint",
|
|
25912
|
+
symbol: "fullCleanupWorkflow"
|
|
25913
|
+
}
|
|
25914
|
+
],
|
|
25915
|
+
displayMetadata: {
|
|
25916
|
+
title: "INB Full Cleanup",
|
|
25917
|
+
description: "Full pipeline cleanup: archive stale deals, prune orphaned activities, and reset diagnostic test data."
|
|
25918
|
+
}
|
|
25919
|
+
},
|
|
25920
|
+
"lgn-01a-google-maps-scrape-workflow": {
|
|
25921
|
+
systemPath: "sales.lead-gen",
|
|
25922
|
+
ontology: {
|
|
25923
|
+
actions: ["sales.lead-gen:action/company.source"],
|
|
25924
|
+
primaryAction: "sales.lead-gen:action/company.source",
|
|
25925
|
+
writes: [leadGenCompany],
|
|
25926
|
+
usesCatalogs: [leadGenBuildTemplate, leadGenLocalServicesTemplateStep]
|
|
25927
|
+
},
|
|
25928
|
+
codeRefs: [
|
|
25929
|
+
{
|
|
25930
|
+
path: "packages/elevasis-operations/src/sales/prospecting/scrape/apify-scrape.ts",
|
|
25931
|
+
role: "entrypoint",
|
|
25932
|
+
symbol: "ldsApifyScrapeWorkflow"
|
|
25933
|
+
}
|
|
25934
|
+
],
|
|
25935
|
+
displayMetadata: {
|
|
25936
|
+
title: "LGN-01A Google Maps Scrape",
|
|
25937
|
+
description: "Scrape local-services businesses from Google Maps via Apify and source companies into Lead DB."
|
|
25938
|
+
}
|
|
25939
|
+
},
|
|
25940
|
+
"lgn-01b-apify-acquire-workflow": {
|
|
25941
|
+
systemPath: "sales.lead-gen",
|
|
25942
|
+
ontology: {
|
|
25943
|
+
actions: ["sales.lead-gen:action/company.source"],
|
|
25944
|
+
primaryAction: "sales.lead-gen:action/company.source",
|
|
25945
|
+
writes: [leadGenCompany],
|
|
25946
|
+
usesCatalogs: [leadGenBuildTemplate, leadGenLocalServicesTemplateStep]
|
|
25947
|
+
},
|
|
25948
|
+
codeRefs: [
|
|
25949
|
+
{
|
|
25950
|
+
path: "packages/elevasis-operations/src/sales/prospecting/scrape/apify-acquire.ts",
|
|
25951
|
+
role: "entrypoint",
|
|
25952
|
+
symbol: "ldsApifyAcquireWorkflow"
|
|
25953
|
+
}
|
|
25954
|
+
],
|
|
25955
|
+
displayMetadata: {
|
|
25956
|
+
title: "LGN-01B Apify Acquire",
|
|
25957
|
+
description: "Acquire and normalize Apify scrape results into Lead DB company records."
|
|
25958
|
+
}
|
|
25959
|
+
},
|
|
25960
|
+
"lgn-01c-apollo-import-workflow": {
|
|
25961
|
+
systemPath: "sales.lead-gen",
|
|
25962
|
+
ontology: {
|
|
25963
|
+
actions: ["sales.lead-gen:action/company.source"],
|
|
25964
|
+
primaryAction: "sales.lead-gen:action/company.source",
|
|
25965
|
+
writes: [leadGenCompany, leadGenContact],
|
|
25966
|
+
usesCatalogs: [leadGenBuildTemplate, leadGenDtcSubscriptionTemplateStep]
|
|
25967
|
+
},
|
|
25968
|
+
contract: {
|
|
25969
|
+
input: "@repo/elevasis-core/contracts/apollo-import#inputSchema"
|
|
25970
|
+
},
|
|
25971
|
+
codeRefs: [
|
|
25972
|
+
{
|
|
25973
|
+
path: "packages/elevasis-operations/src/sales/prospecting/scrape/apollo-import.ts",
|
|
25974
|
+
role: "entrypoint",
|
|
25975
|
+
symbol: "lgnApolloImportWorkflow"
|
|
25976
|
+
},
|
|
25977
|
+
{
|
|
25978
|
+
path: "packages/elevasis-operations/src/sales/prospecting/__tests__/apollo-import.test.ts",
|
|
25979
|
+
role: "test"
|
|
25980
|
+
}
|
|
25981
|
+
],
|
|
25982
|
+
displayMetadata: {
|
|
25983
|
+
title: "LGN-01C Apollo Import",
|
|
25984
|
+
description: "Import DTC subscription companies from Apollo search results into Lead DB"
|
|
25985
|
+
}
|
|
25986
|
+
},
|
|
25987
|
+
"lgn-02a-apify-website-crawl-workflow": {
|
|
25988
|
+
systemPath: "sales.lead-gen",
|
|
25989
|
+
ontology: {
|
|
25990
|
+
actions: ["sales.lead-gen:action/company.website-extract"],
|
|
25991
|
+
primaryAction: "sales.lead-gen:action/company.website-extract",
|
|
25992
|
+
reads: [leadGenCompany],
|
|
25993
|
+
writes: [leadGenCompany]
|
|
25994
|
+
},
|
|
25995
|
+
contract: {
|
|
25996
|
+
input: "@repo/elevasis-core/contracts/apify-website-crawl#apifyWebsiteCrawlInputSchema"
|
|
25997
|
+
},
|
|
25998
|
+
displayMetadata: {
|
|
25999
|
+
title: "LGN-02A Apify Website Crawl",
|
|
26000
|
+
description: "Crawl company websites via Apify and store page markdown for downstream LLM analysis."
|
|
26001
|
+
}
|
|
26002
|
+
},
|
|
26003
|
+
"lgn-02-website-extract-workflow": {
|
|
26004
|
+
systemPath: "sales.lead-gen",
|
|
26005
|
+
ontology: {
|
|
26006
|
+
actions: ["sales.lead-gen:action/company.website-extract"],
|
|
26007
|
+
primaryAction: "sales.lead-gen:action/company.website-extract",
|
|
26008
|
+
reads: [leadGenCompany],
|
|
26009
|
+
writes: [leadGenCompany, leadGenContact]
|
|
26010
|
+
},
|
|
26011
|
+
contract: {
|
|
26012
|
+
input: "@repo/elevasis-core/contracts/website-extract#websiteExtractInputSchema"
|
|
26013
|
+
},
|
|
26014
|
+
displayMetadata: {
|
|
26015
|
+
title: "LGN-02 Website Extract",
|
|
26016
|
+
description: "LLM extraction from raw crawled markdown for company signals, staff, emails, and downstream contacts."
|
|
26017
|
+
}
|
|
26018
|
+
},
|
|
26019
|
+
"lgn-website-extract-compare-workflow": {
|
|
26020
|
+
systemPath: "sales.lead-gen",
|
|
26021
|
+
codeRefs: [
|
|
26022
|
+
{
|
|
26023
|
+
path: "packages/elevasis-operations/src/sales/prospecting/extract/website-extract-compare.ts",
|
|
26024
|
+
role: "entrypoint",
|
|
26025
|
+
symbol: "lgnWebsiteExtractCompareWorkflow"
|
|
26026
|
+
}
|
|
26027
|
+
],
|
|
26028
|
+
displayMetadata: {
|
|
26029
|
+
title: "LGN Website Extract Compare",
|
|
26030
|
+
description: "A/B model comparison for website extraction LLM quality testing."
|
|
26031
|
+
}
|
|
26032
|
+
},
|
|
26033
|
+
"lgn-03-company-qualification-workflow": {
|
|
26034
|
+
systemPath: "sales.lead-gen",
|
|
26035
|
+
ontology: {
|
|
26036
|
+
actions: ["sales.lead-gen:action/company.qualify"],
|
|
26037
|
+
primaryAction: "sales.lead-gen:action/company.qualify",
|
|
26038
|
+
reads: [leadGenCompany],
|
|
26039
|
+
writes: [leadGenCompany],
|
|
26040
|
+
usesCatalogs: [leadGenCompanyStage],
|
|
26041
|
+
emits: ["sales.lead-gen:event/company.qualified"]
|
|
26042
|
+
},
|
|
26043
|
+
codeRefs: [
|
|
26044
|
+
{
|
|
26045
|
+
path: "packages/elevasis-operations/src/sales/qualification/qualify/company-qualification.ts",
|
|
26046
|
+
role: "entrypoint",
|
|
26047
|
+
symbol: "ldsCompanyQualificationWorkflow"
|
|
26048
|
+
},
|
|
26049
|
+
{
|
|
26050
|
+
path: "packages/elevasis-operations/src/sales/qualification/qualify/__tests__/company-qualification.test.ts",
|
|
26051
|
+
role: "test"
|
|
26052
|
+
}
|
|
26053
|
+
],
|
|
26054
|
+
displayMetadata: {
|
|
26055
|
+
title: "LGN-03 Company Qualification",
|
|
26056
|
+
description: "LLM-based company qualification against ICP signals; marks companies qualified or filtered with reason."
|
|
26057
|
+
}
|
|
26058
|
+
},
|
|
26059
|
+
"lgn-03b-dtc-subscription-score-workflow": {
|
|
26060
|
+
systemPath: "sales.lead-gen",
|
|
26061
|
+
ontology: {
|
|
26062
|
+
actions: ["sales.lead-gen:action/company.qualify"],
|
|
26063
|
+
primaryAction: "sales.lead-gen:action/company.qualify",
|
|
26064
|
+
reads: [leadGenCompany],
|
|
26065
|
+
writes: [leadGenCompany],
|
|
26066
|
+
usesCatalogs: [leadGenCompanyStage, leadGenDtcSubscriptionTemplateStep],
|
|
26067
|
+
emits: ["sales.lead-gen:event/company.qualified"]
|
|
26068
|
+
},
|
|
26069
|
+
contract: {
|
|
26070
|
+
input: "@repo/elevasis-core/contracts/dtc-subscription-score#dtcSubscriptionScoreInputSchema",
|
|
26071
|
+
output: "@repo/elevasis-core/contracts/dtc-subscription-score#outputSchema"
|
|
26072
|
+
},
|
|
26073
|
+
displayMetadata: {
|
|
26074
|
+
title: "LGN-03B DTC Subscription Score",
|
|
26075
|
+
description: "Score Apollo-imported brands for DTC subscription fit and mark qualified companies."
|
|
26076
|
+
}
|
|
26077
|
+
},
|
|
26078
|
+
"lgn-04-email-discovery-workflow": {
|
|
26079
|
+
systemPath: "sales.lead-gen",
|
|
26080
|
+
ontology: {
|
|
26081
|
+
actions: ["sales.lead-gen:action/contact.discover"],
|
|
26082
|
+
primaryAction: "sales.lead-gen:action/contact.discover",
|
|
26083
|
+
reads: [leadGenCompany],
|
|
26084
|
+
writes: [leadGenContact],
|
|
26085
|
+
usesCatalogs: [leadGenContactStage]
|
|
26086
|
+
},
|
|
26087
|
+
contract: {
|
|
26088
|
+
input: "@repo/elevasis-core/contracts/email-discovery#emailDiscoveryInputSchema"
|
|
26089
|
+
},
|
|
26090
|
+
displayMetadata: {
|
|
26091
|
+
title: "LGN-04 Email Discovery",
|
|
26092
|
+
description: "Unified email discovery: Tomba email lookup with AnyMailFinder fallback for qualified company contacts."
|
|
26093
|
+
}
|
|
26094
|
+
},
|
|
26095
|
+
"lgn-04b-apollo-decision-maker-enrich-workflow": {
|
|
26096
|
+
systemPath: "sales.lead-gen",
|
|
26097
|
+
ontology: {
|
|
26098
|
+
actions: ["sales.lead-gen:action/contact.discover"],
|
|
26099
|
+
primaryAction: "sales.lead-gen:action/contact.discover",
|
|
26100
|
+
reads: [leadGenCompany],
|
|
26101
|
+
writes: [leadGenContact],
|
|
26102
|
+
usesCatalogs: [leadGenContactStage]
|
|
26103
|
+
},
|
|
26104
|
+
contract: {
|
|
26105
|
+
input: "@repo/elevasis-core/contracts/apollo-decision-makers#apolloDecisionMakerEnrichInputSchema"
|
|
26106
|
+
},
|
|
26107
|
+
displayMetadata: {
|
|
26108
|
+
title: "LGN-04B Apollo Decision Makers",
|
|
26109
|
+
description: "Enrich qualified DTC companies with prioritized Apollo decision-maker contacts."
|
|
26110
|
+
}
|
|
26111
|
+
},
|
|
26112
|
+
"lgn-05-email-verification-workflow": {
|
|
26113
|
+
systemPath: "sales.lead-gen",
|
|
26114
|
+
ontology: {
|
|
26115
|
+
actions: ["sales.lead-gen:action/contact.verify-email"],
|
|
26116
|
+
primaryAction: "sales.lead-gen:action/contact.verify-email",
|
|
26117
|
+
reads: [leadGenContact],
|
|
26118
|
+
writes: [leadGenContact],
|
|
26119
|
+
usesCatalogs: [leadGenContactStage],
|
|
26120
|
+
emits: ["sales.lead-gen:event/contact.verified"]
|
|
26121
|
+
},
|
|
26122
|
+
contract: {
|
|
26123
|
+
input: "@repo/elevasis-core/contracts/email-verification#emailVerificationInputSchema"
|
|
26124
|
+
},
|
|
26125
|
+
displayMetadata: {
|
|
26126
|
+
title: "LGN-05 Email Verification",
|
|
26127
|
+
description: "Email verification via MillionVerifier with soft-delete for invalid or disposable emails."
|
|
26128
|
+
}
|
|
26129
|
+
},
|
|
26130
|
+
"lgn-06-export-list-workflow": {
|
|
26131
|
+
systemPath: "sales.lead-gen",
|
|
26132
|
+
ontology: {
|
|
26133
|
+
actions: ["sales.lead-gen:action/export.list"],
|
|
26134
|
+
primaryAction: "sales.lead-gen:action/export.list",
|
|
26135
|
+
reads: [leadGenCompany, leadGenContact, leadGenList],
|
|
26136
|
+
writes: [leadGenList],
|
|
26137
|
+
usesCatalogs: [
|
|
26138
|
+
leadGenBuildTemplate,
|
|
26139
|
+
leadGenLocalServicesTemplateStep,
|
|
26140
|
+
leadGenDtcSubscriptionTemplateStep,
|
|
26141
|
+
leadGenCompanyStage,
|
|
26142
|
+
leadGenContactStage,
|
|
26143
|
+
crmPipeline
|
|
26144
|
+
],
|
|
26145
|
+
emits: ["sales.lead-gen:event/list.exported"]
|
|
26146
|
+
},
|
|
26147
|
+
contract: {
|
|
26148
|
+
input: "@repo/elevasis-core/contracts/export-list#approvedLeadListExportInputSchema"
|
|
26149
|
+
},
|
|
26150
|
+
displayMetadata: {
|
|
26151
|
+
title: "LGN-06 Approved Lead List Export",
|
|
26152
|
+
description: "Build and finalize an export-ready approved lead list for qualified DTC subscription prospects."
|
|
26153
|
+
}
|
|
26154
|
+
},
|
|
26155
|
+
"lgn-import-workflow": {
|
|
26156
|
+
systemPath: "sales.lead-gen",
|
|
26157
|
+
ontology: {
|
|
26158
|
+
actions: ["sales.lead-gen:action/company.source"],
|
|
26159
|
+
primaryAction: "sales.lead-gen:action/company.source",
|
|
26160
|
+
writes: [leadGenCompany],
|
|
26161
|
+
usesCatalogs: [leadGenBuildTemplate, leadGenLocalServicesTemplateStep]
|
|
26162
|
+
},
|
|
26163
|
+
codeRefs: [
|
|
26164
|
+
{
|
|
26165
|
+
path: "packages/elevasis-operations/src/sales/prospecting/utilities/lead-import.ts",
|
|
26166
|
+
role: "entrypoint",
|
|
26167
|
+
symbol: "leadImportWorkflow"
|
|
26168
|
+
}
|
|
26169
|
+
],
|
|
26170
|
+
displayMetadata: {
|
|
26171
|
+
title: "LGN Lead Import",
|
|
26172
|
+
description: "Generic import entrypoint for sourcing companies into Lead DB from external batch inputs."
|
|
26173
|
+
}
|
|
26174
|
+
},
|
|
26175
|
+
"lgn-company-cleanup-workflow": {
|
|
26176
|
+
systemPath: "sales.lead-gen",
|
|
26177
|
+
ontology: {
|
|
26178
|
+
actions: ["sales.lead-gen:action/company.qualify"],
|
|
26179
|
+
primaryAction: "sales.lead-gen:action/company.qualify",
|
|
26180
|
+
reads: [leadGenCompany],
|
|
26181
|
+
writes: [leadGenCompany],
|
|
26182
|
+
usesCatalogs: [leadGenCompanyStage]
|
|
26183
|
+
},
|
|
26184
|
+
contract: {
|
|
26185
|
+
input: "@repo/elevasis-core/contracts/company-cleanup#companyCleanupInputSchema"
|
|
26186
|
+
},
|
|
26187
|
+
displayMetadata: {
|
|
26188
|
+
title: "LGN Company Cleanup",
|
|
26189
|
+
description: "Classify companies via LLM and delete irrelevant companies from Lead DB."
|
|
26190
|
+
}
|
|
26191
|
+
},
|
|
26192
|
+
"lgn-assign-to-list-workflow": {
|
|
26193
|
+
systemPath: "sales.lead-gen",
|
|
26194
|
+
codeRefs: [
|
|
26195
|
+
{
|
|
26196
|
+
path: "packages/elevasis-operations/src/sales/prospecting/utilities/assign-to-list.ts",
|
|
26197
|
+
role: "entrypoint",
|
|
26198
|
+
symbol: "lgnAssignToListWorkflow"
|
|
26199
|
+
}
|
|
26200
|
+
],
|
|
26201
|
+
displayMetadata: {
|
|
26202
|
+
title: "LGN Assign to List",
|
|
26203
|
+
description: "Assign qualified contacts to a target lead list for export and outreach handoff."
|
|
26204
|
+
}
|
|
26205
|
+
},
|
|
26206
|
+
"ist-upload-contacts-workflow": {
|
|
26207
|
+
systemPath: "sales.lead-gen",
|
|
26208
|
+
ontology: {
|
|
26209
|
+
actions: ["sales.lead-gen:action/export.list"],
|
|
26210
|
+
primaryAction: "sales.lead-gen:action/export.list",
|
|
26211
|
+
reads: [leadGenContact, leadGenList],
|
|
26212
|
+
writes: [leadGenList],
|
|
26213
|
+
usesCatalogs: [leadGenBuildTemplate],
|
|
26214
|
+
emits: ["sales.lead-gen:event/list.exported"]
|
|
26215
|
+
},
|
|
26216
|
+
codeRefs: [
|
|
26217
|
+
{
|
|
26218
|
+
path: "packages/elevasis-operations/src/sales/outreach/instantly/instantly-upload.ts",
|
|
26219
|
+
role: "entrypoint",
|
|
26220
|
+
symbol: "ldsInstantlyUploadWorkflow"
|
|
26221
|
+
}
|
|
26222
|
+
]
|
|
26223
|
+
},
|
|
26224
|
+
"ist-campaign-create-workflow": {
|
|
26225
|
+
systemPath: "sales.lead-gen",
|
|
26226
|
+
ontology: {
|
|
26227
|
+
actions: ["sales.lead-gen:action/campaign.create"],
|
|
26228
|
+
primaryAction: "sales.lead-gen:action/campaign.create",
|
|
26229
|
+
writes: [leadGenCampaign],
|
|
26230
|
+
usesCatalogs: [leadGenCampaignStatus]
|
|
26231
|
+
}
|
|
26232
|
+
},
|
|
26233
|
+
"ist-analytics-workflow": {
|
|
26234
|
+
systemPath: "sales.lead-gen",
|
|
26235
|
+
ontology: {
|
|
26236
|
+
actions: ["sales.lead-gen:action/campaign.analyze"],
|
|
26237
|
+
primaryAction: "sales.lead-gen:action/campaign.analyze",
|
|
26238
|
+
reads: [leadGenCampaign],
|
|
26239
|
+
usesCatalogs: [leadGenCampaignStatus]
|
|
26240
|
+
}
|
|
26241
|
+
},
|
|
26242
|
+
"ist-ab-suggest-workflow": {
|
|
26243
|
+
systemPath: "sales.lead-gen",
|
|
26244
|
+
ontology: {
|
|
26245
|
+
actions: ["sales.lead-gen:action/campaign.optimize"],
|
|
26246
|
+
primaryAction: "sales.lead-gen:action/campaign.optimize",
|
|
26247
|
+
reads: [leadGenCampaign],
|
|
26248
|
+
writes: [leadGenCampaign],
|
|
26249
|
+
usesCatalogs: [leadGenCampaignStatus]
|
|
26250
|
+
}
|
|
26251
|
+
},
|
|
26252
|
+
"ist-personalization-workflow": {
|
|
26253
|
+
systemPath: "sales.lead-gen",
|
|
26254
|
+
ontology: {
|
|
26255
|
+
actions: ["sales.lead-gen:action/contact.personalize"],
|
|
26256
|
+
primaryAction: "sales.lead-gen:action/contact.personalize",
|
|
26257
|
+
reads: [leadGenContact],
|
|
26258
|
+
writes: [leadGenContact],
|
|
26259
|
+
usesCatalogs: [leadGenContactStage]
|
|
26260
|
+
},
|
|
26261
|
+
contract: {
|
|
26262
|
+
input: "@repo/elevasis-core/contracts/instantly-personalization#inputSchema"
|
|
26263
|
+
}
|
|
26264
|
+
},
|
|
26265
|
+
"ist-campaign-review-workflow": {
|
|
26266
|
+
systemPath: "sales.lead-gen",
|
|
26267
|
+
ontology: {
|
|
26268
|
+
actions: ["sales.lead-gen:action/campaign.analyze"],
|
|
26269
|
+
primaryAction: "sales.lead-gen:action/campaign.analyze",
|
|
26270
|
+
reads: [leadGenCampaign],
|
|
26271
|
+
usesCatalogs: [leadGenCampaignStatus]
|
|
26272
|
+
}
|
|
26273
|
+
},
|
|
26274
|
+
"ist-cleanup-workflow": {
|
|
26275
|
+
systemPath: "sales.lead-gen",
|
|
26276
|
+
ontology: {
|
|
26277
|
+
actions: ["sales.lead-gen:action/campaign.delete"],
|
|
26278
|
+
primaryAction: "sales.lead-gen:action/campaign.delete",
|
|
26279
|
+
reads: [leadGenCampaign],
|
|
26280
|
+
writes: [leadGenCampaign],
|
|
26281
|
+
usesCatalogs: [leadGenCampaignStatus]
|
|
26282
|
+
}
|
|
26283
|
+
},
|
|
26284
|
+
"ist-campaign-list-workflow": {
|
|
26285
|
+
systemPath: "sales.lead-gen",
|
|
26286
|
+
ontology: {
|
|
26287
|
+
actions: ["sales.lead-gen:action/campaign.sync-list"],
|
|
26288
|
+
primaryAction: "sales.lead-gen:action/campaign.sync-list",
|
|
26289
|
+
reads: [leadGenCampaign, leadGenContact],
|
|
26290
|
+
writes: [leadGenList],
|
|
26291
|
+
usesCatalogs: [leadGenBuildTemplate, leadGenCampaignStatus]
|
|
26292
|
+
}
|
|
26293
|
+
},
|
|
26294
|
+
"ist-campaign-delete-workflow": {
|
|
26295
|
+
systemPath: "sales.lead-gen",
|
|
26296
|
+
ontology: {
|
|
26297
|
+
actions: ["sales.lead-gen:action/campaign.delete"],
|
|
26298
|
+
primaryAction: "sales.lead-gen:action/campaign.delete",
|
|
26299
|
+
reads: [leadGenCampaign],
|
|
26300
|
+
writes: [leadGenCampaign],
|
|
26301
|
+
usesCatalogs: [leadGenCampaignStatus]
|
|
26302
|
+
}
|
|
26303
|
+
},
|
|
26304
|
+
"ist-account-inventory-workflow": {
|
|
26305
|
+
systemPath: "sales.lead-gen",
|
|
26306
|
+
ontology: {
|
|
26307
|
+
actions: ["sales.lead-gen:action/campaign.analyze"],
|
|
26308
|
+
primaryAction: "sales.lead-gen:action/campaign.analyze",
|
|
26309
|
+
reads: [leadGenCampaign],
|
|
26310
|
+
usesCatalogs: [leadGenCampaignStatus]
|
|
26311
|
+
}
|
|
26312
|
+
},
|
|
26313
|
+
"ist-campaign-pause-workflow": {
|
|
26314
|
+
systemPath: "sales.lead-gen",
|
|
26315
|
+
ontology: {
|
|
26316
|
+
actions: ["sales.lead-gen:action/campaign.pause"],
|
|
26317
|
+
primaryAction: "sales.lead-gen:action/campaign.pause",
|
|
26318
|
+
reads: [leadGenCampaign],
|
|
26319
|
+
writes: [leadGenCampaign],
|
|
26320
|
+
usesCatalogs: [leadGenCampaignStatus]
|
|
26321
|
+
}
|
|
26322
|
+
},
|
|
26323
|
+
"ist-campaign-activate-workflow": {
|
|
26324
|
+
systemPath: "sales.lead-gen",
|
|
26325
|
+
ontology: {
|
|
26326
|
+
actions: ["sales.lead-gen:action/campaign.activate"],
|
|
26327
|
+
primaryAction: "sales.lead-gen:action/campaign.activate",
|
|
26328
|
+
reads: [leadGenCampaign],
|
|
26329
|
+
writes: [leadGenCampaign],
|
|
26330
|
+
usesCatalogs: [leadGenCampaignStatus]
|
|
26331
|
+
}
|
|
26332
|
+
},
|
|
26333
|
+
"ist-campaign-update-accounts-workflow": {
|
|
26334
|
+
systemPath: "sales.lead-gen",
|
|
26335
|
+
ontology: {
|
|
26336
|
+
actions: ["sales.lead-gen:action/campaign.update"],
|
|
26337
|
+
primaryAction: "sales.lead-gen:action/campaign.update",
|
|
26338
|
+
reads: [leadGenCampaign],
|
|
26339
|
+
writes: [leadGenCampaign],
|
|
26340
|
+
usesCatalogs: [leadGenCampaignStatus]
|
|
26341
|
+
}
|
|
26342
|
+
},
|
|
26343
|
+
"ist-update-lead-variables-workflow": {
|
|
26344
|
+
systemPath: "sales.lead-gen",
|
|
26345
|
+
ontology: {
|
|
26346
|
+
actions: ["sales.lead-gen:action/campaign.update"],
|
|
26347
|
+
primaryAction: "sales.lead-gen:action/campaign.update",
|
|
26348
|
+
reads: [leadGenCampaign],
|
|
26349
|
+
writes: [leadGenCampaign],
|
|
26350
|
+
usesCatalogs: [leadGenCampaignStatus]
|
|
26351
|
+
}
|
|
26352
|
+
},
|
|
26353
|
+
"mnt-reddit-monitor-workflow": {
|
|
26354
|
+
systemPath: "sales.lead-gen"
|
|
26355
|
+
},
|
|
26356
|
+
"mnt-reddit-scan-workflow": {
|
|
26357
|
+
systemPath: "sales.lead-gen"
|
|
26358
|
+
},
|
|
26359
|
+
"mnt-linkedin-monitor-workflow": {
|
|
26360
|
+
systemPath: "sales.lead-gen"
|
|
26361
|
+
},
|
|
26362
|
+
"website-form-intake-handler-workflow": {
|
|
26363
|
+
systemPath: "seo"
|
|
26364
|
+
},
|
|
26365
|
+
"grsi-change-request-workflow": {
|
|
26366
|
+
systemPath: "client-management"
|
|
26367
|
+
},
|
|
26368
|
+
"iss-submission-workflow": {
|
|
26369
|
+
systemPath: "client-management",
|
|
26370
|
+
ontology: {
|
|
26371
|
+
actions: ["client-management:action/support-issue.review"],
|
|
26372
|
+
primaryAction: "client-management:action/support-issue.review",
|
|
26373
|
+
writes: [clientSupportIssue],
|
|
26374
|
+
usesCatalogs: [clientSupportIssueSeverity],
|
|
26375
|
+
emits: ["client-management:event/support-issue.submitted"]
|
|
26376
|
+
}
|
|
26377
|
+
},
|
|
26378
|
+
"youtube-research-workflow": {
|
|
26379
|
+
systemPath: "platform"
|
|
26380
|
+
},
|
|
26381
|
+
"send-email-workflow": {
|
|
26382
|
+
systemPath: "platform"
|
|
26383
|
+
},
|
|
26384
|
+
"platform-status": {
|
|
26385
|
+
systemPath: "platform"
|
|
26386
|
+
},
|
|
26387
|
+
"deal-browse": {
|
|
26388
|
+
systemPath: "sales.crm"
|
|
26389
|
+
},
|
|
26390
|
+
"crm-send-reply-workflow": {
|
|
26391
|
+
systemPath: "sales.crm",
|
|
26392
|
+
ontology: {
|
|
26393
|
+
actions: ["sales.crm:action/deal.send-reply"],
|
|
26394
|
+
primaryAction: "sales.crm:action/deal.send-reply",
|
|
26395
|
+
reads: [crmDeal, crmContact],
|
|
26396
|
+
writes: [crmDeal]
|
|
26397
|
+
},
|
|
26398
|
+
codeRefs: [
|
|
26399
|
+
{
|
|
26400
|
+
path: "packages/elevasis-operations/src/sales/crm/actions/crm-send-reply.ts",
|
|
26401
|
+
role: "entrypoint",
|
|
26402
|
+
symbol: "sendReplyWorkflow"
|
|
26403
|
+
},
|
|
26404
|
+
crmActionWorkflowSchemaCodeRef
|
|
26405
|
+
],
|
|
26406
|
+
displayMetadata: {
|
|
26407
|
+
title: "CRM Send Reply",
|
|
26408
|
+
description: "Send a manual reply to an interested prospect via Instantly or Resend and record the CRM activity."
|
|
26409
|
+
}
|
|
26410
|
+
},
|
|
26411
|
+
"crm-reply-followup-workflow": {
|
|
26412
|
+
systemPath: "sales.crm",
|
|
26413
|
+
ontology: {
|
|
26414
|
+
actions: ["sales.crm:action/deal.send-reply"],
|
|
26415
|
+
primaryAction: "sales.crm:action/deal.send-reply",
|
|
26416
|
+
reads: [crmDeal, crmContact],
|
|
26417
|
+
writes: [crmDeal]
|
|
26418
|
+
},
|
|
26419
|
+
codeRefs: [
|
|
26420
|
+
{
|
|
26421
|
+
path: "packages/elevasis-operations/src/sales/crm/actions/crm-reply-followup.ts",
|
|
26422
|
+
role: "entrypoint",
|
|
26423
|
+
symbol: "replyFollowupWorkflow"
|
|
26424
|
+
}
|
|
26425
|
+
],
|
|
26426
|
+
displayMetadata: {
|
|
26427
|
+
title: "CRM Reply Follow-up",
|
|
26428
|
+
description: "Send Day 3/5/7 scheduled follow-ups after a user-authored CRM reply in the interested stage."
|
|
26429
|
+
}
|
|
26430
|
+
},
|
|
26431
|
+
"crm-send-booking-link-workflow": {
|
|
26432
|
+
systemPath: "sales.crm",
|
|
26433
|
+
ontology: {
|
|
26434
|
+
actions: ["sales.crm:action/deal.send-booking-link"],
|
|
26435
|
+
primaryAction: "sales.crm:action/deal.send-booking-link",
|
|
26436
|
+
reads: [crmDeal, crmContact],
|
|
26437
|
+
writes: [crmDeal]
|
|
26438
|
+
},
|
|
26439
|
+
codeRefs: [
|
|
26440
|
+
{
|
|
26441
|
+
path: "packages/elevasis-operations/src/sales/crm/actions/crm-send-booking-link.ts",
|
|
26442
|
+
role: "entrypoint",
|
|
26443
|
+
symbol: "sendBookingLinkWorkflow"
|
|
26444
|
+
},
|
|
26445
|
+
crmActionWorkflowSchemaCodeRef
|
|
26446
|
+
],
|
|
26447
|
+
displayMetadata: {
|
|
26448
|
+
title: "CRM Send Booking Link",
|
|
26449
|
+
description: "Send a Cal.com booking link to an interested prospect and advance the deal state."
|
|
26450
|
+
}
|
|
26451
|
+
},
|
|
26452
|
+
"crm-send-nudge-workflow": {
|
|
26453
|
+
systemPath: "sales.crm",
|
|
26454
|
+
ontology: {
|
|
26455
|
+
actions: ["sales.crm:action/deal.send-nudge"],
|
|
26456
|
+
primaryAction: "sales.crm:action/deal.send-nudge",
|
|
26457
|
+
reads: [crmDeal, crmContact],
|
|
26458
|
+
writes: [crmDeal]
|
|
26459
|
+
},
|
|
26460
|
+
codeRefs: [
|
|
26461
|
+
{
|
|
26462
|
+
path: "packages/elevasis-operations/src/sales/crm/actions/crm-send-nudge.ts",
|
|
26463
|
+
role: "entrypoint",
|
|
26464
|
+
symbol: "sendNudgeWorkflow"
|
|
26465
|
+
},
|
|
26466
|
+
crmActionWorkflowSchemaCodeRef
|
|
26467
|
+
],
|
|
26468
|
+
displayMetadata: {
|
|
26469
|
+
title: "CRM Send Nudge",
|
|
26470
|
+
description: "Send a scheduled nudge reminder to a prospect who has not yet booked after receiving a booking link."
|
|
26471
|
+
}
|
|
26472
|
+
},
|
|
26473
|
+
"crm-rebook-workflow": {
|
|
26474
|
+
systemPath: "sales.crm",
|
|
26475
|
+
ontology: {
|
|
26476
|
+
actions: ["sales.crm:action/deal.rebook"],
|
|
26477
|
+
primaryAction: "sales.crm:action/deal.rebook",
|
|
26478
|
+
reads: [crmDeal, crmContact],
|
|
26479
|
+
writes: [crmDeal]
|
|
26480
|
+
},
|
|
26481
|
+
codeRefs: [
|
|
26482
|
+
{
|
|
26483
|
+
path: "packages/elevasis-operations/src/sales/crm/actions/crm-rebook.ts",
|
|
26484
|
+
role: "entrypoint",
|
|
26485
|
+
symbol: "rebookWorkflow"
|
|
26486
|
+
},
|
|
26487
|
+
crmActionWorkflowSchemaCodeRef
|
|
26488
|
+
],
|
|
26489
|
+
displayMetadata: {
|
|
26490
|
+
title: "CRM Rebook",
|
|
26491
|
+
description: "Re-send a booking link to a no-show or lapsed prospect and reset the deal state for a new booking attempt."
|
|
26492
|
+
}
|
|
26493
|
+
},
|
|
26494
|
+
"move_to_proposal-workflow": {
|
|
26495
|
+
systemPath: "sales.crm",
|
|
26496
|
+
ontology: {
|
|
26497
|
+
actions: ["sales.crm:action/deal.update-stage"],
|
|
26498
|
+
primaryAction: "sales.crm:action/deal.update-stage",
|
|
26499
|
+
reads: [crmDeal],
|
|
26500
|
+
writes: [crmDeal],
|
|
26501
|
+
usesCatalogs: [crmPipeline],
|
|
26502
|
+
emits: ["sales.crm:event/deal.stage-changed"]
|
|
26503
|
+
},
|
|
26504
|
+
codeRefs: [
|
|
26505
|
+
{
|
|
26506
|
+
path: "packages/elevasis-operations/src/sales/crm/actions/move-to-proposal.ts",
|
|
26507
|
+
role: "entrypoint",
|
|
26508
|
+
symbol: "moveToProposalWorkflow"
|
|
26470
26509
|
}
|
|
26510
|
+
],
|
|
26511
|
+
displayMetadata: {
|
|
26512
|
+
title: "CRM Move to Proposal",
|
|
26513
|
+
description: "Advance a qualified discovery deal to the proposal stage and trigger downstream proposal generation."
|
|
26471
26514
|
}
|
|
26472
26515
|
},
|
|
26473
|
-
|
|
26474
|
-
|
|
26475
|
-
|
|
26476
|
-
|
|
26477
|
-
|
|
26478
|
-
|
|
26479
|
-
|
|
26480
|
-
|
|
26481
|
-
|
|
26482
|
-
|
|
26483
|
-
|
|
26484
|
-
|
|
26485
|
-
|
|
26516
|
+
"move_to_closing-workflow": {
|
|
26517
|
+
systemPath: "sales.crm",
|
|
26518
|
+
ontology: {
|
|
26519
|
+
actions: ["sales.crm:action/deal.update-stage"],
|
|
26520
|
+
primaryAction: "sales.crm:action/deal.update-stage",
|
|
26521
|
+
reads: [crmDeal],
|
|
26522
|
+
writes: [crmDeal],
|
|
26523
|
+
usesCatalogs: [crmPipeline],
|
|
26524
|
+
emits: ["sales.crm:event/deal.stage-changed"]
|
|
26525
|
+
},
|
|
26526
|
+
codeRefs: [
|
|
26527
|
+
{
|
|
26528
|
+
path: "packages/elevasis-operations/src/sales/crm/actions/move-to-closing.ts",
|
|
26529
|
+
role: "entrypoint",
|
|
26530
|
+
symbol: "moveToClosingWorkflow"
|
|
26531
|
+
},
|
|
26532
|
+
crmActionWorkflowSchemaCodeRef
|
|
26533
|
+
],
|
|
26534
|
+
displayMetadata: {
|
|
26535
|
+
title: "CRM Move to Closing",
|
|
26536
|
+
description: "Advance a proposal deal to the closing stage and record the stage transition activity."
|
|
26537
|
+
}
|
|
26538
|
+
},
|
|
26539
|
+
"move_to_closed_won-workflow": {
|
|
26540
|
+
systemPath: "sales.crm",
|
|
26541
|
+
ontology: {
|
|
26542
|
+
actions: ["sales.crm:action/deal.update-stage"],
|
|
26543
|
+
primaryAction: "sales.crm:action/deal.update-stage",
|
|
26544
|
+
reads: [crmDeal],
|
|
26545
|
+
writes: [crmDeal],
|
|
26546
|
+
usesCatalogs: [crmPipeline],
|
|
26547
|
+
emits: ["sales.crm:event/deal.stage-changed"]
|
|
26548
|
+
},
|
|
26549
|
+
codeRefs: [
|
|
26550
|
+
{
|
|
26551
|
+
path: "packages/elevasis-operations/src/sales/crm/actions/move-to-closed-won.ts",
|
|
26552
|
+
role: "entrypoint",
|
|
26553
|
+
symbol: "moveToClosedWonWorkflow"
|
|
26554
|
+
},
|
|
26555
|
+
crmActionWorkflowSchemaCodeRef
|
|
26556
|
+
],
|
|
26557
|
+
displayMetadata: {
|
|
26558
|
+
title: "CRM Close Won",
|
|
26559
|
+
description: "Mark a deal as closed-won, record the outcome, and trigger post-close onboarding steps."
|
|
26560
|
+
}
|
|
26561
|
+
},
|
|
26562
|
+
"move_to_closed_lost-workflow": {
|
|
26563
|
+
systemPath: "sales.crm",
|
|
26564
|
+
ontology: {
|
|
26565
|
+
actions: ["sales.crm:action/deal.update-stage"],
|
|
26566
|
+
primaryAction: "sales.crm:action/deal.update-stage",
|
|
26567
|
+
reads: [crmDeal],
|
|
26568
|
+
writes: [crmDeal],
|
|
26569
|
+
usesCatalogs: [crmPipeline],
|
|
26570
|
+
emits: ["sales.crm:event/deal.stage-changed"]
|
|
26571
|
+
},
|
|
26572
|
+
codeRefs: [
|
|
26573
|
+
{
|
|
26574
|
+
path: "packages/elevasis-operations/src/sales/crm/actions/move-to-closed-lost.ts",
|
|
26575
|
+
role: "entrypoint",
|
|
26576
|
+
symbol: "moveToClosedLostWorkflow"
|
|
26577
|
+
},
|
|
26578
|
+
crmActionWorkflowSchemaCodeRef
|
|
26579
|
+
],
|
|
26580
|
+
displayMetadata: {
|
|
26581
|
+
title: "CRM Close Lost",
|
|
26582
|
+
description: "Mark a deal as closed-lost, record the reason, and archive the deal from the active pipeline."
|
|
26583
|
+
}
|
|
26584
|
+
},
|
|
26585
|
+
"move_to_nurturing-workflow": {
|
|
26586
|
+
systemPath: "sales.crm",
|
|
26587
|
+
ontology: {
|
|
26588
|
+
actions: ["sales.crm:action/deal.update-stage"],
|
|
26589
|
+
primaryAction: "sales.crm:action/deal.update-stage",
|
|
26590
|
+
reads: [crmDeal],
|
|
26591
|
+
writes: [crmDeal],
|
|
26592
|
+
usesCatalogs: [crmPipeline],
|
|
26593
|
+
emits: ["sales.crm:event/deal.stage-changed"]
|
|
26594
|
+
},
|
|
26595
|
+
codeRefs: [
|
|
26596
|
+
{
|
|
26597
|
+
path: "packages/elevasis-operations/src/sales/crm/actions/move-to-nurturing.ts",
|
|
26598
|
+
role: "entrypoint",
|
|
26599
|
+
symbol: "moveToNurturingWorkflow"
|
|
26600
|
+
},
|
|
26601
|
+
crmActionWorkflowSchemaCodeRef
|
|
26602
|
+
],
|
|
26603
|
+
displayMetadata: {
|
|
26604
|
+
title: "CRM Move to Nurturing",
|
|
26605
|
+
description: "Move a stalled deal into the nurturing stage for long-term follow-up sequencing."
|
|
26606
|
+
}
|
|
26607
|
+
},
|
|
26608
|
+
"mark_no_show-workflow": {
|
|
26609
|
+
systemPath: "sales.crm",
|
|
26610
|
+
ontology: {
|
|
26611
|
+
actions: ["sales.crm:action/deal.update-stage"],
|
|
26612
|
+
primaryAction: "sales.crm:action/deal.update-stage",
|
|
26613
|
+
reads: [crmDeal],
|
|
26614
|
+
writes: [crmDeal],
|
|
26615
|
+
usesCatalogs: [crmPipeline],
|
|
26616
|
+
emits: ["sales.crm:event/deal.stage-changed"]
|
|
26617
|
+
},
|
|
26618
|
+
codeRefs: [
|
|
26619
|
+
{
|
|
26620
|
+
path: "packages/elevasis-operations/src/sales/crm/actions/mark-no-show.ts",
|
|
26621
|
+
role: "entrypoint",
|
|
26622
|
+
symbol: "markNoShowWorkflow"
|
|
26623
|
+
},
|
|
26624
|
+
{
|
|
26625
|
+
path: "packages/elevasis-operations/src/sales/crm/shared/action-workflow-schemas.ts",
|
|
26626
|
+
role: "schema",
|
|
26627
|
+
symbol: "ActionWorkflowInputSchema"
|
|
26628
|
+
}
|
|
26629
|
+
],
|
|
26630
|
+
displayMetadata: {
|
|
26631
|
+
title: "CRM Mark No Show",
|
|
26632
|
+
description: "Mark a booked deal as a no-show and transition it to the appropriate recovery state."
|
|
26486
26633
|
}
|
|
26487
26634
|
}
|
|
26488
26635
|
};
|
|
26636
|
+
function titleFromResourceId(resourceId) {
|
|
26637
|
+
return resourceId.replace(/-workflow$/, "").replace(/[-_]+/g, " ").replace(/\b\w/g, (character) => character.toUpperCase());
|
|
26638
|
+
}
|
|
26639
|
+
var platformWorkflowResources = Object.entries(platformWorkflowResourceDefinitions).map(
|
|
26640
|
+
([id, { systemPath: systemPath2, ontology, contract, codeRefs, displayMetadata }], index) => {
|
|
26641
|
+
const ontologyWithContract = ontology !== void 0 || contract !== void 0 ? {
|
|
26642
|
+
...ontology ?? {},
|
|
26643
|
+
...contract ? { contract } : {}
|
|
26644
|
+
} : void 0;
|
|
26645
|
+
const title = displayMetadata?.title ?? titleFromResourceId(id);
|
|
26646
|
+
return {
|
|
26647
|
+
id,
|
|
26648
|
+
order: (index + 1) * 10,
|
|
26649
|
+
kind: "workflow",
|
|
26650
|
+
systemPath: systemPath2,
|
|
26651
|
+
title,
|
|
26652
|
+
description: displayMetadata?.description ?? `Workflow resource for ${title}.`,
|
|
26653
|
+
ownerRoleId: getPlatformOwnerRoleId(systemPath2),
|
|
26654
|
+
status: "active",
|
|
26655
|
+
...codeRefs ? { codeRefs } : {},
|
|
26656
|
+
...ontologyWithContract ? { ontology: ontologyWithContract } : {}
|
|
26657
|
+
};
|
|
26658
|
+
}
|
|
26659
|
+
);
|
|
26660
|
+
var platformIntegrationResources = [
|
|
26661
|
+
{
|
|
26662
|
+
id: "inb-attio-integration",
|
|
26663
|
+
order: 10,
|
|
26664
|
+
kind: "integration",
|
|
26665
|
+
systemPath: "sales.crm",
|
|
26666
|
+
status: "active",
|
|
26667
|
+
codeRefs: [
|
|
26668
|
+
{
|
|
26669
|
+
path: "packages/elevasis-operations/src/metadata.ts",
|
|
26670
|
+
role: "config",
|
|
26671
|
+
symbol: "integrations"
|
|
26672
|
+
}
|
|
26673
|
+
],
|
|
26674
|
+
provider: "attio"
|
|
26675
|
+
},
|
|
26676
|
+
{
|
|
26677
|
+
id: "inb-instantly-integration",
|
|
26678
|
+
order: 20,
|
|
26679
|
+
kind: "integration",
|
|
26680
|
+
systemPath: "sales.lead-gen",
|
|
26681
|
+
status: "active",
|
|
26682
|
+
codeRefs: [
|
|
26683
|
+
{
|
|
26684
|
+
path: "packages/elevasis-operations/src/metadata.ts",
|
|
26685
|
+
role: "config",
|
|
26686
|
+
symbol: "integrations"
|
|
26687
|
+
}
|
|
26688
|
+
],
|
|
26689
|
+
provider: "instantly"
|
|
26690
|
+
},
|
|
26691
|
+
{
|
|
26692
|
+
id: "integration-resend-elevasis",
|
|
26693
|
+
order: 30,
|
|
26694
|
+
kind: "integration",
|
|
26695
|
+
systemPath: "sales.crm",
|
|
26696
|
+
status: "active",
|
|
26697
|
+
codeRefs: [
|
|
26698
|
+
{
|
|
26699
|
+
path: "packages/elevasis-operations/src/metadata.ts",
|
|
26700
|
+
role: "config",
|
|
26701
|
+
symbol: "integrations"
|
|
26702
|
+
}
|
|
26703
|
+
],
|
|
26704
|
+
provider: "resend"
|
|
26705
|
+
},
|
|
26706
|
+
{
|
|
26707
|
+
id: "integration-apify-elevasis",
|
|
26708
|
+
order: 40,
|
|
26709
|
+
kind: "integration",
|
|
26710
|
+
systemPath: "sales.lead-gen",
|
|
26711
|
+
status: "active",
|
|
26712
|
+
codeRefs: [
|
|
26713
|
+
{
|
|
26714
|
+
path: "packages/elevasis-operations/src/metadata.ts",
|
|
26715
|
+
role: "config",
|
|
26716
|
+
symbol: "integrations"
|
|
26717
|
+
}
|
|
26718
|
+
],
|
|
26719
|
+
provider: "apify"
|
|
26720
|
+
},
|
|
26721
|
+
{
|
|
26722
|
+
id: "integration-apollo-elevasis",
|
|
26723
|
+
order: 50,
|
|
26724
|
+
kind: "integration",
|
|
26725
|
+
systemPath: "sales.lead-gen",
|
|
26726
|
+
status: "active",
|
|
26727
|
+
codeRefs: [
|
|
26728
|
+
{
|
|
26729
|
+
path: "packages/elevasis-operations/src/metadata.ts",
|
|
26730
|
+
role: "config",
|
|
26731
|
+
symbol: "integrations"
|
|
26732
|
+
}
|
|
26733
|
+
],
|
|
26734
|
+
provider: "apollo"
|
|
26735
|
+
}
|
|
26736
|
+
];
|
|
26737
|
+
var platformIntegrationResourcesWithOwners = platformIntegrationResources.map((resource2) => ({
|
|
26738
|
+
...resource2,
|
|
26739
|
+
ownerRoleId: getPlatformOwnerRoleId(resource2.systemPath)
|
|
26740
|
+
}));
|
|
26741
|
+
var platformResourceDescriptors = defineResources(
|
|
26742
|
+
Object.fromEntries(
|
|
26743
|
+
[
|
|
26744
|
+
...platformWorkflowResources,
|
|
26745
|
+
...platformIntegrationResourcesWithOwners,
|
|
26746
|
+
{
|
|
26747
|
+
id: "command-center-assistant",
|
|
26748
|
+
order: 1e4,
|
|
26749
|
+
kind: "agent",
|
|
26750
|
+
systemPath: "platform.projects",
|
|
26751
|
+
ownerRoleId: "role.operator",
|
|
26752
|
+
actsAsRoleId: "role.operator",
|
|
26753
|
+
status: "active",
|
|
26754
|
+
codeRefs: [
|
|
26755
|
+
{
|
|
26756
|
+
path: "apps/api/src/resources/command-center-assistant/definition.ts",
|
|
26757
|
+
role: "entrypoint",
|
|
26758
|
+
symbol: "commandCenterAssistantDefinition"
|
|
26759
|
+
},
|
|
26760
|
+
{
|
|
26761
|
+
path: "apps/api/src/resources/index.ts",
|
|
26762
|
+
role: "config",
|
|
26763
|
+
symbol: "registerSystemResources"
|
|
26764
|
+
}
|
|
26765
|
+
],
|
|
26766
|
+
agentKind: "platform",
|
|
26767
|
+
sessionCapable: true,
|
|
26768
|
+
invocations: [
|
|
26769
|
+
{ kind: "slash-command", command: "/help" },
|
|
26770
|
+
{ kind: "slash-command", command: "/work" }
|
|
26771
|
+
]
|
|
26772
|
+
}
|
|
26773
|
+
].map((resource2) => [resource2.id, resource2])
|
|
26774
|
+
)
|
|
26775
|
+
);
|
|
26776
|
+
Object.values(platformResourceDescriptors);
|
|
26777
|
+
Object.fromEntries(
|
|
26778
|
+
Object.values(platformResourceDescriptors).flatMap(
|
|
26779
|
+
(resource2) => resource2.ontology === void 0 ? [] : [[resource2.id, resource2.ontology]]
|
|
26780
|
+
)
|
|
26781
|
+
);
|
|
26489
26782
|
|
|
26490
26783
|
// ../elevasis-core/src/organization-model/topology.ts
|
|
26491
26784
|
function resource(resourceId) {
|
|
@@ -26660,29 +26953,6 @@ var platformTopology = defineTopology(
|
|
|
26660
26953
|
);
|
|
26661
26954
|
|
|
26662
26955
|
// ../elevasis-core/src/organization-model/assembly.ts
|
|
26663
|
-
function assignResponsibleRoles(systems) {
|
|
26664
|
-
function roleFor(systemId) {
|
|
26665
|
-
if (systemId === "sales.lead-gen") return "role.growth-operator";
|
|
26666
|
-
if (systemId === "sales.crm") return "role.crm-operator";
|
|
26667
|
-
if (systemId === "seo") return "role.website-operator";
|
|
26668
|
-
if (systemId === "client-management") return "role.client-support-operator";
|
|
26669
|
-
return "role.operator";
|
|
26670
|
-
}
|
|
26671
|
-
function applyToMap(map, prefix = "") {
|
|
26672
|
-
return Object.fromEntries(
|
|
26673
|
-
Object.entries(map).map(([key, system]) => [
|
|
26674
|
-
key,
|
|
26675
|
-
{
|
|
26676
|
-
...system,
|
|
26677
|
-
responsibleRoleId: roleFor(prefix ? `${prefix}.${key}` : key),
|
|
26678
|
-
...system.systems ? { systems: applyToMap(system.systems, prefix ? `${prefix}.${key}` : key) } : {},
|
|
26679
|
-
...system.subsystems ? { subsystems: applyToMap(system.subsystems, prefix ? `${prefix}.${key}` : key) } : {}
|
|
26680
|
-
}
|
|
26681
|
-
])
|
|
26682
|
-
);
|
|
26683
|
-
}
|
|
26684
|
-
return applyToMap(systems);
|
|
26685
|
-
}
|
|
26686
26956
|
var canonicalOrganizationModel = resolveOrganizationModel(
|
|
26687
26957
|
{
|
|
26688
26958
|
version: 1,
|
|
@@ -26706,7 +26976,7 @@ var canonicalOrganizationModel = resolveOrganizationModel(
|
|
|
26706
26976
|
navigation: platformNavigation,
|
|
26707
26977
|
identity: platformIdentity,
|
|
26708
26978
|
roles: platformRoles,
|
|
26709
|
-
systems:
|
|
26979
|
+
systems: platformSystems,
|
|
26710
26980
|
actions: ELEVASIS_DEFAULT_ORGANIZATION_MODEL_ACTIONS,
|
|
26711
26981
|
entities: ELEVASIS_ORGANIZATION_MODEL_ENTITIES,
|
|
26712
26982
|
resources: platformResourceDescriptors,
|
|
@@ -44925,7 +45195,7 @@ function ontologyCounts(model) {
|
|
|
44925
45195
|
objects: Object.keys(compiled.ontology.objectTypes).length,
|
|
44926
45196
|
actions: Object.keys(compiled.ontology.actionTypes).length,
|
|
44927
45197
|
catalogs: Object.keys(compiled.ontology.catalogTypes).length,
|
|
44928
|
-
|
|
45198
|
+
endpoints: Object.keys(compiled.ontology.endpoints).length,
|
|
44929
45199
|
diagnostics: compiled.diagnostics.length
|
|
44930
45200
|
};
|
|
44931
45201
|
}
|
|
@@ -44936,7 +45206,7 @@ function ontologyCountsForSystem(model, systemPath2) {
|
|
|
44936
45206
|
objects: Object.values(compiled.ontology.objectTypes).filter((record) => belongsToSystem(record.ownerSystemId)).length,
|
|
44937
45207
|
actions: Object.values(compiled.ontology.actionTypes).filter((record) => belongsToSystem(record.ownerSystemId)).length,
|
|
44938
45208
|
catalogs: Object.values(compiled.ontology.catalogTypes).filter((record) => belongsToSystem(record.ownerSystemId)).length,
|
|
44939
|
-
|
|
45209
|
+
endpoints: Object.values(compiled.ontology.endpoints).filter((record) => belongsToSystem(record.ownerSystemId)).length,
|
|
44940
45210
|
diagnostics: compiled.diagnostics.length
|
|
44941
45211
|
};
|
|
44942
45212
|
}
|
|
@@ -45053,7 +45323,16 @@ function SystemSummaryPaper({
|
|
|
45053
45323
|
] }),
|
|
45054
45324
|
/* @__PURE__ */ jsx(Text, { size: "xs", c: "dimmed", children: entry.path })
|
|
45055
45325
|
] }),
|
|
45056
|
-
/* @__PURE__ */ jsx(
|
|
45326
|
+
/* @__PURE__ */ jsx(
|
|
45327
|
+
Button,
|
|
45328
|
+
{
|
|
45329
|
+
size: "xs",
|
|
45330
|
+
variant: "light",
|
|
45331
|
+
rightSection: /* @__PURE__ */ jsx(IconArrowRight, { size: 14 }),
|
|
45332
|
+
onClick: () => onNavigate(entry.path),
|
|
45333
|
+
children: "Open"
|
|
45334
|
+
}
|
|
45335
|
+
)
|
|
45057
45336
|
] }),
|
|
45058
45337
|
entry.system.description && /* @__PURE__ */ jsx(Text, { size: "sm", c: "dimmed", lineClamp: 2, children: entry.system.description }),
|
|
45059
45338
|
/* @__PURE__ */ jsxs(SimpleGrid, { cols: { base: 2, md: 4 }, spacing: "xs", children: [
|
|
@@ -45067,7 +45346,14 @@ function SystemSummaryPaper({
|
|
|
45067
45346
|
),
|
|
45068
45347
|
/* @__PURE__ */ jsx(MetricCard2, { label: "Health", value: "--", detail: "Runtime data pending" }),
|
|
45069
45348
|
/* @__PURE__ */ jsx(MetricCard2, { label: "Executions", value: 0, detail: "No executions in range" }),
|
|
45070
|
-
/* @__PURE__ */ jsx(
|
|
45349
|
+
/* @__PURE__ */ jsx(
|
|
45350
|
+
MetricCard2,
|
|
45351
|
+
{
|
|
45352
|
+
label: "Subsystems",
|
|
45353
|
+
value: childCount,
|
|
45354
|
+
detail: childCount === 1 ? "child system" : "child systems"
|
|
45355
|
+
}
|
|
45356
|
+
)
|
|
45071
45357
|
] }),
|
|
45072
45358
|
/* @__PURE__ */ jsx(ResourceKindSummary, { metrics: entry.metrics, rollupMode })
|
|
45073
45359
|
] }) });
|
|
@@ -45087,7 +45373,16 @@ function SubsystemCard({
|
|
|
45087
45373
|
] }),
|
|
45088
45374
|
/* @__PURE__ */ jsx(Text, { size: "xs", c: "dimmed", children: entry.path })
|
|
45089
45375
|
] }),
|
|
45090
|
-
/* @__PURE__ */ jsx(
|
|
45376
|
+
/* @__PURE__ */ jsx(
|
|
45377
|
+
Button,
|
|
45378
|
+
{
|
|
45379
|
+
size: "xs",
|
|
45380
|
+
variant: "subtle",
|
|
45381
|
+
rightSection: /* @__PURE__ */ jsx(IconArrowRight, { size: 13 }),
|
|
45382
|
+
onClick: () => onNavigate(entry.path),
|
|
45383
|
+
children: "Open"
|
|
45384
|
+
}
|
|
45385
|
+
)
|
|
45091
45386
|
] }),
|
|
45092
45387
|
entry.system.description && /* @__PURE__ */ jsx(Text, { size: "sm", c: "dimmed", lineClamp: 2, children: entry.system.description }),
|
|
45093
45388
|
/* @__PURE__ */ jsxs(Text, { size: "xs", c: "dimmed", children: [
|
|
@@ -45144,7 +45439,13 @@ function SystemsIndex({ model, onNavigate }) {
|
|
|
45144
45439
|
const rootMetrics = aggregateSystemMetrics(model, "");
|
|
45145
45440
|
const rootOntologyCounts = ontologyCounts(model);
|
|
45146
45441
|
return /* @__PURE__ */ jsxs(Stack, { gap: "md", children: [
|
|
45147
|
-
/* @__PURE__ */ jsx(
|
|
45442
|
+
/* @__PURE__ */ jsx(
|
|
45443
|
+
PageTitleCaption,
|
|
45444
|
+
{
|
|
45445
|
+
title: "Systems",
|
|
45446
|
+
caption: "Semantic operating systems and resource rollups from the organization model."
|
|
45447
|
+
}
|
|
45448
|
+
),
|
|
45148
45449
|
/* @__PURE__ */ jsx(Paper, { withBorder: true, p: "md", radius: "md", children: /* @__PURE__ */ jsxs(Stack, { gap: "md", children: [
|
|
45149
45450
|
/* @__PURE__ */ jsxs(Group, { justify: "space-between", align: "flex-start", children: [
|
|
45150
45451
|
/* @__PURE__ */ jsxs(Stack, { gap: 4, children: [
|
|
@@ -45167,7 +45468,14 @@ function SystemsIndex({ model, onNavigate }) {
|
|
|
45167
45468
|
/* @__PURE__ */ jsx(MetricCard2, { label: "Health", value: "--", detail: "System endpoint pending" })
|
|
45168
45469
|
] })
|
|
45169
45470
|
] }) }),
|
|
45170
|
-
entries.length > 0 ? /* @__PURE__ */ jsx(SimpleGrid, { cols: 1, spacing: "md", children: entries.map((entry) => /* @__PURE__ */ jsx(SystemSummaryPaper, { entry, rollupMode, onNavigate }, entry.path)) }) : /* @__PURE__ */ jsx(
|
|
45471
|
+
entries.length > 0 ? /* @__PURE__ */ jsx(SimpleGrid, { cols: 1, spacing: "md", children: entries.map((entry) => /* @__PURE__ */ jsx(SystemSummaryPaper, { entry, rollupMode, onNavigate }, entry.path)) }) : /* @__PURE__ */ jsx(
|
|
45472
|
+
EmptyState,
|
|
45473
|
+
{
|
|
45474
|
+
icon: IconFolder,
|
|
45475
|
+
title: "No systems match",
|
|
45476
|
+
description: "Adjust search, status, resource type, or rollup filters."
|
|
45477
|
+
}
|
|
45478
|
+
)
|
|
45171
45479
|
] });
|
|
45172
45480
|
}
|
|
45173
45481
|
function SystemDetail({
|
|
@@ -45197,7 +45505,14 @@ function SystemDetail({
|
|
|
45197
45505
|
const breadcrumbs = buildBreadcrumbs(model, systemPath2);
|
|
45198
45506
|
const scopedOntologyCounts = ontologyCountsForSystem(model, systemPath2);
|
|
45199
45507
|
if (!currentSystem) {
|
|
45200
|
-
return /* @__PURE__ */ jsx(
|
|
45508
|
+
return /* @__PURE__ */ jsx(
|
|
45509
|
+
EmptyState,
|
|
45510
|
+
{
|
|
45511
|
+
icon: IconRoute,
|
|
45512
|
+
title: "System not found",
|
|
45513
|
+
description: `No semantic system exists at ${systemPath2}.`
|
|
45514
|
+
}
|
|
45515
|
+
);
|
|
45201
45516
|
}
|
|
45202
45517
|
return /* @__PURE__ */ jsxs(Stack, { gap: "md", children: [
|
|
45203
45518
|
/* @__PURE__ */ jsx(Breadcrumbs$1, { children: breadcrumbs.map((crumb, idx) => {
|
|
@@ -45232,7 +45547,14 @@ function SystemDetail({
|
|
|
45232
45547
|
detail: systemHealth ? `${systemHealth.resourceCounts.executable} executable / ${systemHealth.resourceCounts.passiveIntegrations} passive` : "Selected time range"
|
|
45233
45548
|
}
|
|
45234
45549
|
),
|
|
45235
|
-
/* @__PURE__ */ jsx(
|
|
45550
|
+
/* @__PURE__ */ jsx(
|
|
45551
|
+
MetricCard2,
|
|
45552
|
+
{
|
|
45553
|
+
label: "Completed",
|
|
45554
|
+
value: executionHealth?.statusCounts.success ?? 0,
|
|
45555
|
+
detail: "Selected time range"
|
|
45556
|
+
}
|
|
45557
|
+
),
|
|
45236
45558
|
/* @__PURE__ */ jsx(MetricCard2, { label: "Failed", value: executionHealth?.statusCounts.failed ?? 0, detail: "Selected time range" })
|
|
45237
45559
|
] })
|
|
45238
45560
|
] }) }),
|
|
@@ -45248,7 +45570,7 @@ function SystemDetail({
|
|
|
45248
45570
|
/* @__PURE__ */ jsx(MetricCard2, { label: "Objects", value: scopedOntologyCounts.objects, detail: "compiled object types" }),
|
|
45249
45571
|
/* @__PURE__ */ jsx(MetricCard2, { label: "Actions", value: scopedOntologyCounts.actions, detail: "compiled action types" }),
|
|
45250
45572
|
/* @__PURE__ */ jsx(MetricCard2, { label: "Catalogs", value: scopedOntologyCounts.catalogs, detail: "compiled catalog types" }),
|
|
45251
|
-
/* @__PURE__ */ jsx(MetricCard2, { label: "
|
|
45573
|
+
/* @__PURE__ */ jsx(MetricCard2, { label: "Endpoints", value: scopedOntologyCounts.endpoints, detail: "compiled endpoint types" })
|
|
45252
45574
|
] })
|
|
45253
45575
|
] }) }),
|
|
45254
45576
|
/* @__PURE__ */ jsx(Paper, { withBorder: true, p: "md", radius: "md", children: /* @__PURE__ */ jsxs(Stack, { gap: "sm", children: [
|
|
@@ -47554,6 +47876,339 @@ function getSharedOrganizationGraph(organizationModel2) {
|
|
|
47554
47876
|
return graph;
|
|
47555
47877
|
}
|
|
47556
47878
|
|
|
47879
|
+
// src/knowledge/conceptGlossary.ts
|
|
47880
|
+
var CONCEPT_GLOSSARY = {
|
|
47881
|
+
// -------------------------------------------------------------------------
|
|
47882
|
+
// Node kinds (OrganizationGraphNodeKind)
|
|
47883
|
+
// -------------------------------------------------------------------------
|
|
47884
|
+
organization: {
|
|
47885
|
+
term: "Organization",
|
|
47886
|
+
description: "The root node representing your entire business and its operational model."
|
|
47887
|
+
},
|
|
47888
|
+
system: {
|
|
47889
|
+
term: "System",
|
|
47890
|
+
description: "A bounded operational domain that groups related resources, roles, and workflows."
|
|
47891
|
+
},
|
|
47892
|
+
client: {
|
|
47893
|
+
term: "Client",
|
|
47894
|
+
description: "A customer or prospect record tracked within the organization."
|
|
47895
|
+
},
|
|
47896
|
+
role: {
|
|
47897
|
+
term: "Role",
|
|
47898
|
+
description: "A responsibility group that owns or governs resources, policies, and actions within a system."
|
|
47899
|
+
},
|
|
47900
|
+
action: {
|
|
47901
|
+
term: "Action",
|
|
47902
|
+
description: "A named operation or step that a resource can perform within a system."
|
|
47903
|
+
},
|
|
47904
|
+
entity: {
|
|
47905
|
+
term: "Entity",
|
|
47906
|
+
description: "A core data object type defined in the system ontology."
|
|
47907
|
+
},
|
|
47908
|
+
event: {
|
|
47909
|
+
term: "Event",
|
|
47910
|
+
description: "A signal emitted by a resource that can trigger downstream policies or workflows."
|
|
47911
|
+
},
|
|
47912
|
+
policy: {
|
|
47913
|
+
term: "Policy",
|
|
47914
|
+
description: "A governance rule that applies to actions, entities, or stages within a system."
|
|
47915
|
+
},
|
|
47916
|
+
stage: {
|
|
47917
|
+
term: "Stage",
|
|
47918
|
+
description: "A step in a workflow pipeline that entities progress through over time."
|
|
47919
|
+
},
|
|
47920
|
+
resource: {
|
|
47921
|
+
term: "Resource",
|
|
47922
|
+
description: "A deployable workflow, agent, integration, or script descriptor owned by a system."
|
|
47923
|
+
},
|
|
47924
|
+
knowledge: {
|
|
47925
|
+
term: "Knowledge",
|
|
47926
|
+
description: "A curated document or playbook that governs how a system or role should operate."
|
|
47927
|
+
},
|
|
47928
|
+
"customer-segment": {
|
|
47929
|
+
term: "Customer Segment",
|
|
47930
|
+
description: "A defined group of customers sharing common characteristics used for targeting."
|
|
47931
|
+
},
|
|
47932
|
+
offering: {
|
|
47933
|
+
term: "Offering",
|
|
47934
|
+
description: "A product or service the organization sells or delivers to its customers."
|
|
47935
|
+
},
|
|
47936
|
+
goal: {
|
|
47937
|
+
term: "Goal",
|
|
47938
|
+
description: "A measurable outcome that a system or resource is designed to drive toward."
|
|
47939
|
+
},
|
|
47940
|
+
surface: {
|
|
47941
|
+
term: "Surface",
|
|
47942
|
+
description: "A named UI or API endpoint that exposes system functionality to users or integrations."
|
|
47943
|
+
},
|
|
47944
|
+
"navigation-group": {
|
|
47945
|
+
term: "Navigation Group",
|
|
47946
|
+
description: "A grouping node used to organise sidebar navigation entries in the shell."
|
|
47947
|
+
},
|
|
47948
|
+
ontology: {
|
|
47949
|
+
term: "Ontology",
|
|
47950
|
+
description: "The semantic schema for a system: objects, actions, events, catalogs, and value types."
|
|
47951
|
+
},
|
|
47952
|
+
// -------------------------------------------------------------------------
|
|
47953
|
+
// Edge relationship semantics (normalised EdgeRelationshipGroup labels)
|
|
47954
|
+
// -------------------------------------------------------------------------
|
|
47955
|
+
governs: {
|
|
47956
|
+
term: "Governs",
|
|
47957
|
+
description: "This node provides authoritative knowledge or policy that controls the target node."
|
|
47958
|
+
},
|
|
47959
|
+
"governed-by": {
|
|
47960
|
+
term: "Governed by",
|
|
47961
|
+
description: "This node is subject to the rules or knowledge of the source governing node."
|
|
47962
|
+
},
|
|
47963
|
+
"sub-systems": {
|
|
47964
|
+
term: "Sub-systems",
|
|
47965
|
+
description: "Nested systems contained within this system, sharing its operational scope."
|
|
47966
|
+
},
|
|
47967
|
+
"resources-contained": {
|
|
47968
|
+
term: "Resources contained",
|
|
47969
|
+
description: "Resources declared as belonging to this system in the organization model."
|
|
47970
|
+
},
|
|
47971
|
+
"resources-used": {
|
|
47972
|
+
term: "Resources used",
|
|
47973
|
+
description: "External resources that this node depends on or invokes at runtime."
|
|
47974
|
+
},
|
|
47975
|
+
"governing-knowledge": {
|
|
47976
|
+
term: "Governing Knowledge",
|
|
47977
|
+
description: "Knowledge nodes whose playbooks or docs provide governance to this node."
|
|
47978
|
+
},
|
|
47979
|
+
references: {
|
|
47980
|
+
term: "References",
|
|
47981
|
+
description: "This node references another node as contextual data without a direct dependency."
|
|
47982
|
+
},
|
|
47983
|
+
"referenced-by": {
|
|
47984
|
+
term: "Referenced by",
|
|
47985
|
+
description: "Other nodes that reference this node as contextual data."
|
|
47986
|
+
},
|
|
47987
|
+
"maps-to": {
|
|
47988
|
+
term: "Maps to",
|
|
47989
|
+
description: "This ontology concept maps to a concrete resource or implementation node."
|
|
47990
|
+
},
|
|
47991
|
+
"mapped-from": {
|
|
47992
|
+
term: "Mapped from",
|
|
47993
|
+
description: "A resource or concept that resolves to this node in the semantic graph."
|
|
47994
|
+
},
|
|
47995
|
+
"affects-entities": {
|
|
47996
|
+
term: "Affects entities",
|
|
47997
|
+
description: "Entities whose state this action, policy, or resource may read or mutate."
|
|
47998
|
+
},
|
|
47999
|
+
"affected-by-actions": {
|
|
48000
|
+
term: "Affected by actions",
|
|
48001
|
+
description: "Actions or resources that can modify the state of this entity."
|
|
48002
|
+
},
|
|
48003
|
+
"emits-events": {
|
|
48004
|
+
term: "Emits events",
|
|
48005
|
+
description: "Events published by this resource that downstream policies or workflows can react to."
|
|
48006
|
+
},
|
|
48007
|
+
"emitted-by-resources": {
|
|
48008
|
+
term: "Emitted by resources",
|
|
48009
|
+
description: "Resources that produce this event as part of their execution."
|
|
48010
|
+
},
|
|
48011
|
+
"originates-from": {
|
|
48012
|
+
term: "Originates from",
|
|
48013
|
+
description: "The source system or resource that this event or action originated from."
|
|
48014
|
+
},
|
|
48015
|
+
"origin-for-events": {
|
|
48016
|
+
term: "Origin for events",
|
|
48017
|
+
description: "Events that trace their origin back to this node."
|
|
48018
|
+
},
|
|
48019
|
+
"triggers-policies": {
|
|
48020
|
+
term: "Triggers policies",
|
|
48021
|
+
description: "Policies that are activated when this event or action fires."
|
|
48022
|
+
},
|
|
48023
|
+
"triggered-by": {
|
|
48024
|
+
term: "Triggered by",
|
|
48025
|
+
description: "The events or actions that cause this policy or resource to activate."
|
|
48026
|
+
},
|
|
48027
|
+
"applies-to": {
|
|
48028
|
+
term: "Applies to",
|
|
48029
|
+
description: "Entities or stages that this policy governs and constrains."
|
|
48030
|
+
},
|
|
48031
|
+
"governed-by-policies": {
|
|
48032
|
+
term: "Governed by policies",
|
|
48033
|
+
description: "Policies that apply to this entity or stage and constrain its transitions."
|
|
48034
|
+
},
|
|
48035
|
+
effects: {
|
|
48036
|
+
term: "Effects",
|
|
48037
|
+
description: "Downstream outcomes or state changes produced by this policy when it fires."
|
|
48038
|
+
},
|
|
48039
|
+
"effected-by-policies": {
|
|
48040
|
+
term: "Effected by policies",
|
|
48041
|
+
description: "Policies whose effects are applied to this node."
|
|
48042
|
+
},
|
|
48043
|
+
"linked-to": {
|
|
48044
|
+
term: "Linked to",
|
|
48045
|
+
description: "General-purpose link from this node to a related node in the graph."
|
|
48046
|
+
},
|
|
48047
|
+
"linked-from": {
|
|
48048
|
+
term: "Linked from",
|
|
48049
|
+
description: "Other nodes that maintain a general-purpose link pointing to this node."
|
|
48050
|
+
},
|
|
48051
|
+
contains: {
|
|
48052
|
+
term: "Contains",
|
|
48053
|
+
description: "Child nodes owned or enclosed by this parent node."
|
|
48054
|
+
},
|
|
48055
|
+
"contained-by": {
|
|
48056
|
+
term: "Contained by",
|
|
48057
|
+
description: "The parent node that encloses or owns this node."
|
|
48058
|
+
},
|
|
48059
|
+
// -------------------------------------------------------------------------
|
|
48060
|
+
// Knowledge Browser tree structure — platform-provided categories.
|
|
48061
|
+
// Keyed by the stable tree group key / domain key / resource-type token so
|
|
48062
|
+
// platform taxonomy rows resolve while tenant instance rows (a specific
|
|
48063
|
+
// system, role, policy, client, offering, or ontology item) do not.
|
|
48064
|
+
// `organization` and `knowledge` group headers reuse the node-kind entries
|
|
48065
|
+
// above, so they are intentionally absent here.
|
|
48066
|
+
// -------------------------------------------------------------------------
|
|
48067
|
+
// Top-level tree groups
|
|
48068
|
+
systems: {
|
|
48069
|
+
term: "Systems",
|
|
48070
|
+
description: "The operational domains that structure how the organization runs."
|
|
48071
|
+
},
|
|
48072
|
+
graph: {
|
|
48073
|
+
term: "Ontology",
|
|
48074
|
+
description: "The semantic schema layer: objects, actions, events, and the typed vocabulary systems share."
|
|
48075
|
+
},
|
|
48076
|
+
resources: {
|
|
48077
|
+
term: "Resources",
|
|
48078
|
+
description: "Deployable building blocks \u2014 workflows, agents, integrations, scripts \u2014 that systems run."
|
|
48079
|
+
},
|
|
48080
|
+
"governance-wiring": {
|
|
48081
|
+
term: "Governance",
|
|
48082
|
+
description: "Cross-cutting roles and policies that authorize and constrain what happens across systems."
|
|
48083
|
+
},
|
|
48084
|
+
profile: {
|
|
48085
|
+
term: "Profile",
|
|
48086
|
+
description: "The organization's identity and brand: who it is, what it stands for, how it presents."
|
|
48087
|
+
},
|
|
48088
|
+
"business-model": {
|
|
48089
|
+
term: "Business Model",
|
|
48090
|
+
description: "Who the organization serves and what it sells \u2014 customer segments, offerings, and goals."
|
|
48091
|
+
},
|
|
48092
|
+
navigation: {
|
|
48093
|
+
term: "Navigation",
|
|
48094
|
+
description: "Navigable surfaces (pages and endpoints) the shell exposes for each system."
|
|
48095
|
+
},
|
|
48096
|
+
// Organization / business-model domain categories
|
|
48097
|
+
identity: {
|
|
48098
|
+
term: "Identity",
|
|
48099
|
+
description: "Core identity facts: legal name, mission, structure, and operating basics."
|
|
48100
|
+
},
|
|
48101
|
+
branding: {
|
|
48102
|
+
term: "Branding",
|
|
48103
|
+
description: "Brand expression: voice, visual style, and how the organization presents itself."
|
|
48104
|
+
},
|
|
48105
|
+
customers: {
|
|
48106
|
+
term: "ICP",
|
|
48107
|
+
description: "The customer segments the organization targets \u2014 its ideal-customer profiles."
|
|
48108
|
+
},
|
|
48109
|
+
offerings: {
|
|
48110
|
+
term: "Offerings",
|
|
48111
|
+
description: "The products and services the organization sells or delivers."
|
|
48112
|
+
},
|
|
48113
|
+
goals: {
|
|
48114
|
+
term: "Goals",
|
|
48115
|
+
description: "Measurable outcomes the organization is working toward."
|
|
48116
|
+
},
|
|
48117
|
+
clients: {
|
|
48118
|
+
term: "Clients",
|
|
48119
|
+
description: "Customer and prospect records tracked by the organization."
|
|
48120
|
+
},
|
|
48121
|
+
// Governance domain categories
|
|
48122
|
+
roles: {
|
|
48123
|
+
term: "Roles",
|
|
48124
|
+
description: "Responsibility groups that own and govern resources, policies, and actions."
|
|
48125
|
+
},
|
|
48126
|
+
policies: {
|
|
48127
|
+
term: "Policies",
|
|
48128
|
+
description: "Governance rules that constrain actions, entities, and stages across systems."
|
|
48129
|
+
},
|
|
48130
|
+
// Ontology domain categories
|
|
48131
|
+
"ontology-objects": {
|
|
48132
|
+
term: "Objects",
|
|
48133
|
+
description: "Core data object types defined in the ontology."
|
|
48134
|
+
},
|
|
48135
|
+
"ontology-links": {
|
|
48136
|
+
term: "Links",
|
|
48137
|
+
description: "Typed relationships that connect ontology objects to one another."
|
|
48138
|
+
},
|
|
48139
|
+
"ontology-actions": {
|
|
48140
|
+
term: "Actions",
|
|
48141
|
+
description: "Named operations the ontology defines that can run against objects."
|
|
48142
|
+
},
|
|
48143
|
+
"ontology-catalogs": {
|
|
48144
|
+
term: "Catalogs",
|
|
48145
|
+
description: "Enumerated value sets the ontology defines for typed fields."
|
|
48146
|
+
},
|
|
48147
|
+
"ontology-events": {
|
|
48148
|
+
term: "Events",
|
|
48149
|
+
description: "Event types the ontology defines that resources can emit or react to."
|
|
48150
|
+
},
|
|
48151
|
+
"ontology-interfaces": {
|
|
48152
|
+
term: "Interfaces",
|
|
48153
|
+
description: "Shared shapes objects can implement to guarantee common fields."
|
|
48154
|
+
},
|
|
48155
|
+
"ontology-value-types": {
|
|
48156
|
+
term: "Value Types",
|
|
48157
|
+
description: "Reusable typed value formats (e.g. currency, email) used across objects."
|
|
48158
|
+
},
|
|
48159
|
+
"ontology-properties": {
|
|
48160
|
+
term: "Shared Properties",
|
|
48161
|
+
description: "Shared property definitions reused across multiple object types."
|
|
48162
|
+
},
|
|
48163
|
+
"ontology-groups": {
|
|
48164
|
+
term: "Groups",
|
|
48165
|
+
description: "Logical groupings that organize ontology objects in the model."
|
|
48166
|
+
},
|
|
48167
|
+
"ontology-endpoints": {
|
|
48168
|
+
term: "Endpoints",
|
|
48169
|
+
description: "An API contract a system publishes to other systems."
|
|
48170
|
+
},
|
|
48171
|
+
"ontology-resources": {
|
|
48172
|
+
term: "Resources",
|
|
48173
|
+
description: "Resources projected into the ontology layer."
|
|
48174
|
+
},
|
|
48175
|
+
// Resource-type collections (keyed by resourceType token)
|
|
48176
|
+
workflow: {
|
|
48177
|
+
term: "Workflows",
|
|
48178
|
+
description: "Multi-step automated processes deployed and run by the platform."
|
|
48179
|
+
},
|
|
48180
|
+
agent: {
|
|
48181
|
+
term: "Agents",
|
|
48182
|
+
description: "AI workers that perform tasks autonomously within a system."
|
|
48183
|
+
},
|
|
48184
|
+
integration: {
|
|
48185
|
+
term: "Integrations",
|
|
48186
|
+
description: "Connectors to external services or APIs the platform calls."
|
|
48187
|
+
},
|
|
48188
|
+
script: {
|
|
48189
|
+
term: "Scripts",
|
|
48190
|
+
description: "Standalone code routines the platform can execute."
|
|
48191
|
+
},
|
|
48192
|
+
external: {
|
|
48193
|
+
term: "External",
|
|
48194
|
+
description: "Externally-hosted resources the platform invokes."
|
|
48195
|
+
},
|
|
48196
|
+
trigger: {
|
|
48197
|
+
term: "Triggers",
|
|
48198
|
+
description: "Event sources that start workflows when their conditions are met."
|
|
48199
|
+
},
|
|
48200
|
+
"human-checkpoint": {
|
|
48201
|
+
term: "Human Checkpoints",
|
|
48202
|
+
description: "Human-in-the-loop approval steps within a workflow."
|
|
48203
|
+
}
|
|
48204
|
+
};
|
|
48205
|
+
function normaliseConceptKey(label) {
|
|
48206
|
+
return label.replace(/\s*\(\d+\)\s*$/, "").trim().toLowerCase().replace(/[\s_]+/g, "-");
|
|
48207
|
+
}
|
|
48208
|
+
function getConceptDefinition(key) {
|
|
48209
|
+
return CONCEPT_GLOSSARY[normaliseConceptKey(key)];
|
|
48210
|
+
}
|
|
48211
|
+
|
|
47557
48212
|
// src/knowledge/iconTokens.ts
|
|
47558
48213
|
var KNOWLEDGE_ICON_TOKEN_BY_KIND = {
|
|
47559
48214
|
playbook: "playbook",
|
|
@@ -47632,7 +48287,7 @@ var DOMAIN_LABELS2 = {
|
|
|
47632
48287
|
"ontology-value-types": "Value Types",
|
|
47633
48288
|
"ontology-properties": "Shared Properties",
|
|
47634
48289
|
"ontology-groups": "Groups",
|
|
47635
|
-
"ontology-
|
|
48290
|
+
"ontology-endpoints": "Endpoints",
|
|
47636
48291
|
"ontology-resources": "Resources"
|
|
47637
48292
|
};
|
|
47638
48293
|
function titleFromId(id) {
|
|
@@ -47728,9 +48383,9 @@ function getKnowledgeOntologyProjection(model) {
|
|
|
47728
48383
|
([id, record]) => ontologyItem(id, record, "group")
|
|
47729
48384
|
)
|
|
47730
48385
|
),
|
|
47731
|
-
|
|
47732
|
-
Object.entries(compiled.ontology.
|
|
47733
|
-
([id, record]) => ontologyItem(id, record, "
|
|
48386
|
+
endpoints: sortItems(
|
|
48387
|
+
Object.entries(compiled.ontology.endpoints).map(
|
|
48388
|
+
([id, record]) => ontologyItem(id, record, "endpoint")
|
|
47734
48389
|
)
|
|
47735
48390
|
),
|
|
47736
48391
|
resources: sortItems(
|
|
@@ -47767,8 +48422,8 @@ function getOntologyItemsForDomain(projection, domainKey) {
|
|
|
47767
48422
|
return projection.properties;
|
|
47768
48423
|
case "ontology-groups":
|
|
47769
48424
|
return projection.groups;
|
|
47770
|
-
case "ontology-
|
|
47771
|
-
return projection.
|
|
48425
|
+
case "ontology-endpoints":
|
|
48426
|
+
return projection.endpoints;
|
|
47772
48427
|
case "ontology-resources":
|
|
47773
48428
|
return projection.resources;
|
|
47774
48429
|
default:
|
|
@@ -47923,7 +48578,7 @@ var OM_TREE_GROUPS = [
|
|
|
47923
48578
|
"ontology-value-types",
|
|
47924
48579
|
"ontology-properties",
|
|
47925
48580
|
"ontology-groups",
|
|
47926
|
-
"ontology-
|
|
48581
|
+
"ontology-endpoints"
|
|
47927
48582
|
]
|
|
47928
48583
|
},
|
|
47929
48584
|
{ key: "resources", label: "Resources", domains: ["resources"] },
|
|
@@ -47999,7 +48654,7 @@ var CORE_ONTOLOGY_DOMAIN_KEYS = [
|
|
|
47999
48654
|
"ontology-actions",
|
|
48000
48655
|
"ontology-catalogs",
|
|
48001
48656
|
"ontology-events",
|
|
48002
|
-
"ontology-
|
|
48657
|
+
"ontology-endpoints"
|
|
48003
48658
|
];
|
|
48004
48659
|
var OPTIONAL_ONTOLOGY_DOMAIN_KEYS = [
|
|
48005
48660
|
"ontology-interfaces",
|
|
@@ -48064,7 +48719,7 @@ var KNOWLEDGE_DOMAINS_WITH_PANELS = /* @__PURE__ */ new Set([
|
|
|
48064
48719
|
"ontology-value-types",
|
|
48065
48720
|
"ontology-properties",
|
|
48066
48721
|
"ontology-groups",
|
|
48067
|
-
"ontology-
|
|
48722
|
+
"ontology-endpoints"
|
|
48068
48723
|
]);
|
|
48069
48724
|
var FILTERABLE_DOMAIN_KEYS = /* @__PURE__ */ new Set(["customers", "clients", "offerings", "goals", "roles", "policies"]);
|
|
48070
48725
|
function shouldRouteItemToDomainPanel(domainKey) {
|
|
@@ -49070,6 +49725,7 @@ function KnowledgeTree({
|
|
|
49070
49725
|
),
|
|
49071
49726
|
isActive: isActive2,
|
|
49072
49727
|
fallbackKind: "organization",
|
|
49728
|
+
conceptKey: groupKey,
|
|
49073
49729
|
uppercase: true,
|
|
49074
49730
|
onSelectGraphNode: isQuickAccess ? void 0 : onSelectGroup ? () => onSelectGroup(groupKey) : void 0,
|
|
49075
49731
|
favorite: isQuickAccess ? void 0 : {
|
|
@@ -49124,6 +49780,7 @@ function KnowledgeTree({
|
|
|
49124
49780
|
),
|
|
49125
49781
|
isActive: isActive2,
|
|
49126
49782
|
fallbackKind: "organization",
|
|
49783
|
+
conceptKey: domainKey,
|
|
49127
49784
|
uppercase: true,
|
|
49128
49785
|
onSelectGraphNode: onSelectDomain ? () => onSelectDomain(domainKey) : void 0,
|
|
49129
49786
|
favorite: {
|
|
@@ -49176,6 +49833,8 @@ function KnowledgeTree({
|
|
|
49176
49833
|
);
|
|
49177
49834
|
}
|
|
49178
49835
|
if (typeof value === "string" && value.startsWith(FOLDER_PREFIX)) {
|
|
49836
|
+
const folderSegments = value.slice(FOLDER_PREFIX.length).split(":");
|
|
49837
|
+
const folderConceptKey = folderSegments[0] === "resources" ? folderSegments[1] : folderSegments[0] === "ontology" ? folderSegments[folderSegments.length - 1] : void 0;
|
|
49179
49838
|
return /* @__PURE__ */ jsx(
|
|
49180
49839
|
DirectoryRow,
|
|
49181
49840
|
{
|
|
@@ -49188,7 +49847,8 @@ function KnowledgeTree({
|
|
|
49188
49847
|
typedNode.knowledgeNodeIds,
|
|
49189
49848
|
getKnowledgeTreeFolderCommand(String(value))
|
|
49190
49849
|
),
|
|
49191
|
-
isActive: false
|
|
49850
|
+
isActive: false,
|
|
49851
|
+
conceptKey: folderConceptKey
|
|
49192
49852
|
}
|
|
49193
49853
|
);
|
|
49194
49854
|
}
|
|
@@ -49495,9 +50155,11 @@ function DirectoryRow({
|
|
|
49495
50155
|
fallbackKind = "system",
|
|
49496
50156
|
uppercase = false,
|
|
49497
50157
|
onSelectGraphNode,
|
|
49498
|
-
favorite
|
|
50158
|
+
favorite,
|
|
50159
|
+
conceptKey
|
|
49499
50160
|
}) {
|
|
49500
50161
|
const [hovered, setHovered] = useState(false);
|
|
50162
|
+
const conceptDefinition = conceptKey ? getConceptDefinition(conceptKey) : void 0;
|
|
49501
50163
|
return /* @__PURE__ */ jsxs(
|
|
49502
50164
|
Group,
|
|
49503
50165
|
{
|
|
@@ -49581,20 +50243,22 @@ function DirectoryRow({
|
|
|
49581
50243
|
label: "Copy folder knowledge commands",
|
|
49582
50244
|
showCopy: hovered,
|
|
49583
50245
|
favorite,
|
|
49584
|
-
hovered
|
|
50246
|
+
hovered,
|
|
50247
|
+
conceptDescription: conceptDefinition?.description
|
|
49585
50248
|
}
|
|
49586
50249
|
)
|
|
49587
50250
|
]
|
|
49588
50251
|
}
|
|
49589
50252
|
);
|
|
49590
50253
|
}
|
|
49591
|
-
function TrailingCopySlot({ command, label, showCopy, favorite, hovered }) {
|
|
50254
|
+
function TrailingCopySlot({ command, label, showCopy, favorite, hovered, conceptDescription }) {
|
|
49592
50255
|
const isFavorited = useKnowledgeFavoritesStore(
|
|
49593
50256
|
(state) => favorite ? Boolean(state.favorites[favorite.routeId]) : false
|
|
49594
50257
|
);
|
|
49595
50258
|
const favoriteVisible = Boolean(favorite) && (hovered || isFavorited);
|
|
49596
50259
|
const copyVisible = showCopy && Boolean(command);
|
|
49597
|
-
|
|
50260
|
+
const infoVisible = hovered && Boolean(conceptDescription);
|
|
50261
|
+
if (!favoriteVisible && !copyVisible && !infoVisible) return null;
|
|
49598
50262
|
return /* @__PURE__ */ jsxs(
|
|
49599
50263
|
"span",
|
|
49600
50264
|
{
|
|
@@ -49607,6 +50271,7 @@ function TrailingCopySlot({ command, label, showCopy, favorite, hovered }) {
|
|
|
49607
50271
|
flexShrink: 0
|
|
49608
50272
|
},
|
|
49609
50273
|
children: [
|
|
50274
|
+
infoVisible && conceptDescription ? /* @__PURE__ */ jsx(ConceptInfoControl, { description: conceptDescription }) : null,
|
|
49610
50275
|
copyVisible ? /* @__PURE__ */ jsx(CopyCommandControl, { command, label, visible: true }) : null,
|
|
49611
50276
|
favoriteVisible && favorite ? /* @__PURE__ */ jsx(
|
|
49612
50277
|
FavoriteStarControl,
|
|
@@ -49622,6 +50287,26 @@ function TrailingCopySlot({ command, label, showCopy, favorite, hovered }) {
|
|
|
49622
50287
|
}
|
|
49623
50288
|
);
|
|
49624
50289
|
}
|
|
50290
|
+
function ConceptInfoControl({ description }) {
|
|
50291
|
+
return /* @__PURE__ */ jsx(Tooltip, { label: description, withArrow: true, multiline: true, maw: 260, position: "right", openDelay: 200, children: /* @__PURE__ */ jsx(
|
|
50292
|
+
"span",
|
|
50293
|
+
{
|
|
50294
|
+
"aria-label": "Concept definition",
|
|
50295
|
+
onClick: (event) => event.stopPropagation(),
|
|
50296
|
+
style: {
|
|
50297
|
+
display: "inline-flex",
|
|
50298
|
+
alignItems: "center",
|
|
50299
|
+
justifyContent: "center",
|
|
50300
|
+
width: 22,
|
|
50301
|
+
height: 22,
|
|
50302
|
+
color: "var(--color-text-subtle)",
|
|
50303
|
+
cursor: "help",
|
|
50304
|
+
flexShrink: 0
|
|
50305
|
+
},
|
|
50306
|
+
children: /* @__PURE__ */ jsx(IconInfoCircle, { size: 14, stroke: 2 })
|
|
50307
|
+
}
|
|
50308
|
+
) });
|
|
50309
|
+
}
|
|
49625
50310
|
var indexPromise = null;
|
|
49626
50311
|
function loadSearchIndex() {
|
|
49627
50312
|
if (!indexPromise) {
|
|
@@ -50036,7 +50721,7 @@ function RequestActionIcon({
|
|
|
50036
50721
|
}) {
|
|
50037
50722
|
const [opened, { open, close }] = useDisclosure(false);
|
|
50038
50723
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
50039
|
-
/* @__PURE__ */ jsx(Tooltip, { label: tooltip, children: /* @__PURE__ */ jsx(ActionIcon, { variant: "subtle", onClick: open, "aria-label": tooltip, children: /* @__PURE__ */ jsx(IconMessagePlus, { size: 18 }) }) }),
|
|
50724
|
+
/* @__PURE__ */ jsx(Tooltip, { label: tooltip, children: /* @__PURE__ */ jsx(ActionIcon, { variant: "subtle", onClick: open, "aria-label": tooltip, children: /* @__PURE__ */ jsx(IconMessagePlus, { size: 18, color: "var(--color-text-subtle)" }) }) }),
|
|
50040
50725
|
/* @__PURE__ */ jsx(RequestModal, { opened, onClose: close, affectedPage })
|
|
50041
50726
|
] });
|
|
50042
50727
|
}
|
|
@@ -50387,4 +51072,4 @@ function useAccess(key) {
|
|
|
50387
51072
|
};
|
|
50388
51073
|
}
|
|
50389
51074
|
|
|
50390
|
-
export { APIErrorAlert, AbsoluteScheduleForm, AccessGuard, AccessKeys, AccountSettings, ActionModal, ActivityCard, ActivityFeed, ActivityFeedWidget, ActivityFilters, ActivityLog, ActivityTable, ActivityTimeline, ActivityTrendChart, AgentDefinitionDisplay, AgentExecutionLogs, AgentExecutionPanel, AgentExecutionTimeline, AgentExecutionVisualizer, AgentIterationEdge, AgentIterationNode, AgentResourceEntrySchema, AgentSessionGroup, AllTasksPage, ApiKeyDisplayModal, ApiKeyList, ApiKeyService, ApiKeySettings, AppErrorBoundary, AppShellCenteredContainer, AppShellContainer, AppShellContentContainer, AppShellError, AppShellLoader, AppShellRightSideContainer, AppShellRightSideOuterContainer, AppTopbarAdjusterWrapper, AppearanceContext, AppearanceProvider, AppearanceSettings, BaseEdge, BaseExecutionLogs, BaseExecutionLogsHeader, BaseExecutionLogsStates, BaseNode, Breadcrumbs, BusinessImpactCard, CRM_ITEMS, CenteredErrorState, ChartFrame, Checklist, CheckpointGroup, CollapsibleJsonSection, CollapsibleSection, CollapsibleSidebarGroup, CombinedTrendChart, CommandQueueDetailPage, CommandQueuePage, CommandQueueShell, CommandQueueSidebar, CommandQueueSidebarMiddle, CommandQueueSidebarTop, CommandQueueTaskRow, CommandViewPage, CompanyDetailPage, ConfigCard, ConfirmationInputModal, ConfirmationModal, ContactDetailPage, ContentSections, ContextUsageBadge, ContextViewer, ContractDisplay, ConversationThread, CostAnalytics, CostBreakdownCard, CostByModelTable, CostMetricsCard, CostTrendChart, CrashErrorFallback, CreateApiKeyModal, CreateCredentialModal, CreateDeliveryEntityModal, CreateRoleModal, CreateScheduleModal, CreateWebhookEndpointModal, CredentialList, CredentialService, CredentialSettings, CrmActionsProvider, CrmOverview, CrmSettingsPage, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, CustomModal, CustomSelector, CyberAreaChart, CyberDonut, CyberDonutTooltip, CyberLegendItem, CyberParticles, DEAL_STAGES, DEAL_STAGE_COLORS, DEAL_STAGE_OPTIONS, DEFAULT_KANBAN_CONFIG, DEFAULT_SEMANTIC_ICON_REGISTRY, DELIVERY_COMMUNICATION_ITEMS, DELIVERY_PROJECT_ITEMS, DELIVERY_WORK_ITEMS, Dashboard, DashboardOperationsOverview, DealDetailPage, DealKanbanCard, DealsListPage, DeleteScheduleModal, DeploymentDetailModal, DeploymentList, DeploymentService, DeploymentSettings, DeploymentStatusBadge, DetailCardSkeleton, EMPTY_LIST_ACTIONS, EditApiKeyModal, EditCredentialModal, EditWebhookEndpointModal, ElevasisCoreProvider, ElevasisLoader, ElevasisSystemsProvider, ElevasisUIProvider, EmptyState, EmptyVisualizer, ErrorAnalysisCard, ErrorBreakdownTable, ErrorDetailsModal, ErrorReportCard, ExecuteWorkflowModal, ExecutionBreakdownTable, ExecutionErrorSection, ExecutionHealth, ExecutionHealthCard, ExecutionLogsFilters, ExecutionLogsPage, ExecutionLogsTable, ExecutionPanel, ExecutionStats, ExecutionStatusBadge, FeatureUnavailableState, FilterBar, GlowDot, GraphBackground, GraphContainer, GraphFitViewButton, GraphFitViewHandler, GraphLegend, HealthStatusCard, HeroStatsRow, IdentityDomainSchema, IntegrationResourceEntrySchema, JsonViewer, KNOWLEDGE_DOMAINS_WITH_PANELS, KNOWLEDGE_ICON_TOKEN_BY_KIND, KanbanBoard, KnowledgeSearchBar, KnowledgeTree, LEAD_GEN_ITEMS, LEAD_GEN_ROUTE_LINKS, LeadGenCompaniesPage, LeadGenContactsPage, LeadGenListDetailPage, LeadGenListsPage, LeadGenOverviewPage, LeadGenRouteShell, LeadGenSidebar, LeadGenSidebarMiddle, LeadGenSidebarTop, LinksGroup, ListActionsProvider, ListBuilderIndexPage, ListBuilderPage, ListSkeleton, LogEntry, LogGroup, MdxRenderer, MemberAccessModal, MembershipStatusBadge, MetricsStrip, MilestoneTimeline, MyRolesPage, MyTasksPanel, NavigationButton, NewKnowledgeMapEdge, NewKnowledgeMapGraph, NewKnowledgeMapNode, NoAccessState, NotificationBell, NotificationCenter, NotificationItem, NotificationList, NotificationPanel, NotificationProvider, OAuthConnectModal, OAuthIntegrationsCard, OM_NESTED_TREE_GROUPS, OM_TREE_GROUPS, ORPHAN_STAGE_ORDER, OperationsOverview, OperationsService, OperationsSidebar, OperationsSidebarMiddle, OperationsSidebarTop, OrgMembersList, OrganizationGraphPage, OrganizationMembershipService, OrganizationMembershipsList, OrganizationProvider, OrganizationSettings, OrganizationSwitcher, OrganizationSwitcherConnected, PIPELINE_FUNNEL_ORDER, PageContainer, PageNotFound, PageTitleCaption, PermissionMatrix, PipelineFunnelWidget, PolicySchema, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, ProtectedRoute, QuickCreateActions, RecentExecutionsByResource, RecurringScheduleForm, RelativeScheduleForm, RequestActionIcon, RequestModal, ResourceCard, ResourceDefinitionSection, ResourceDetailPage, ResourceErrorState, ResourceFilter, ResourceHeader, ResourceHealthChart, ResourceHealthPanel, ResourceNotFoundState, ResourceOverview, ResourcesPage, ResourcesSidebar, RichTextEditor, RoleBadge, RoleSchema, RunResourceButton, SAVED_VIEW_PRESETS, SavedViewsPanel, ScheduleCard, ScheduleDetailModal, ScheduleTypeSelector, ScriptResourceEntrySchema, SemanticIcon, SessionChatArea, SessionChatInterface, SessionChatPage, SessionDetailsSidebar, SessionExecutionLogs, SessionHeader, SessionListItem, SessionMemory, SessionsPage, SessionsSidebar, Sidebar, SidebarContext, SidebarProvider, SortableHeader, StatCard, StatCardSkeleton, StatsCardSkeleton, StatusBadge, StepConfigForm, SubshellContainer, SubshellContentContainer, SubshellLoader, SubshellNavList, SubshellRightSideContainer, SubshellSidebar, SubshellSidebarLoader, SurfaceDefinitionSchema, SystemOpsView, SystemShell, TabCountBadge, TabSection, TableSelectionToolbar, TaskCard, TaskScheduler, TimeRangeSelector, TimelineAxis, TimelineBar, TimelineContainer, TimelineRow, ToolsListDisplay, Topbar, TopbarActions, TopbarContainer, TrendIndicator, UnifiedWorkflowEdge, UnifiedWorkflowGraph, UnifiedWorkflowNode, UnresolvedErrorsTeaser, UpcomingMilestonesPage, Vignette, VisualizerContainer, WebhookEndpointList, WebhookEndpointService, WebhookEndpointSettings, WebhookUrlDisplayModal, WorkflowDefinitionDisplay, WorkflowExecutionLogs, WorkflowExecutionPanel, WorkflowExecutionTimeline, WorkflowResourceEntrySchema, ZodFormRenderer, acquisitionListKeys, aggregateSystemMetrics, buildErrorReport, calculateProgress, clientsKeys, collectResourceFilterFacets, companyKeys, contactKeys, createOrganizationsSlice, createTestSystemsProvider, createUseOrgInitialization, createUseOrganizations, crmManifest, crmPrioritySettingsKeys, dealKeys, dealNoteKeys, dealTaskKeys, deliveryManifest, deriveBusinessProgress, executionsKeys, extendSemanticIconRegistry, filterByDomainFilters, findListActionByAction, findOmTreeGroup, formatDate3 as formatDate, formatDealStageLabel, formatResourceAttribution, formatStatusLabel, getEnrichmentColor, getEnrichmentStatus, getExecutionStatusConfig, getGraphBackgroundStyles, getHealthColor, getIcon, getKnowledgeDomainFolderCommand, getKnowledgeGraphNodeCommand, getKnowledgeIconToken, getKnowledgeNodeReadCommand, getKnowledgeOntologyProjection, getKnowledgeTreeFolderCommand, getLeadGenApiInterfaceReadiness, getLeadGenExportWorkflowId, getListActionWorkflowId, getLogLevelConfig, getOntologyDomainLabel, getPrimaryOntologyItemsForDomain, getResourceFilterFacetIds, getSemanticIconComponent, getSeriesColor, getSharedOrganizationGraph, getStateKeyColor, getStatusColor4 as getStatusColor, getStepActionLabel, iconMap, isLeadGenExportAction, isSessionCapable, knowledgeManifest, labelResourceFilterFacet, leadGenArtifactKeys, leadGenListCompanyKeys, leadGenListMemberKeys, leadGenManifest, mdxComponents, milestoneKeys, milestoneStatusColors, monitoringManifest, noteKeys, noteTypeColors, observabilityKeys, operationsKeys, operationsManifest, projectActivityKeys, projectKeys, projectNavigationGroups, projectNavigationSurfaces, projectStatusColors, requestTopbarActionManifest, requestsKeys, resolveBuildPlanSteps, resolveBuildState, resolveSemanticIconComponent, scheduleKeys, sessionsKeys, settingsManifest, showApiErrorNotification, showAuthError, showErrorNotification, showInfoNotification, showSuccessNotification, showWarningNotification, sortData, sortStageKeys, subsidebarWidth, taskKeys, taskStatusColors, taskTypeColors, useAccess, useActivateDeployment, useActivities, useActivitiesRealtime, useActivityFilters, useActivityTrend, useAddCompaniesToList, useAddContactsToList, useAppearance, useArchiveSession, useArchivedLogs, useArtifacts, useAssignRole, useBatchDelete, useBatchTelemetry, useBatchedResourcesHealth, useBreadcrumbs, useBulkDeleteExecutions, useBusinessImpact, useCancelExecution, useCancelSchedule, useCheckpointTasks, useClient, useClientStatus, useClients, useCommandQueue, useCommandQueueTotals, useCommandViewData, useCommandViewDomainFilters, useCommandViewStats, useCommandViewStore, useCompanies, useCompany, useCompanyFacets, useCompleteDealTask, useContact, useContacts, useCostBreakdown, useCostByModel, useCostSummary, useCostTrends, useCreateApiKey, useCreateArtifact, useCreateClient, useCreateCompany, useCreateContact, useCreateCredential, useCreateDealNote, useCreateDealTask, useCreateList, useCreateMilestone, useCreateNote, useCreateOrgRole, useCreateProject, useCreateSchedule, useCreateSession, useCreateTask, useCreateWebhookEndpoint, useCredentials, useCrmActions, useCrmPipelineSummary, useCrmPrioritySettings, useCrmQuickMetrics, useCyberColors, useDashboardMetrics, useDeactivateDeployment, useDeactivateMembership, useDealDetail, useDealNotes, useDealTasks, useDealTasksDue, useDeals, useDealsLookup, useDealsSummary, useDeleteApiKey, useDeleteClient, useDeleteCompanies, useDeleteContacts, useDeleteCredential, useDeleteDeal, useDeleteDeployment, useDeleteExecution, useDeleteList, useDeleteLists, useDeleteMilestone, useDeleteOrgRole, useDeleteProject, useDeleteRequest, useDeleteSchedule, useDeleteSession, useDeleteTask, useDeleteTask2, useDeleteWebhookEndpoint, useDeriveActions, useEffectivePermissions, useElevasisSystems, useErrorAnalysis, useErrorDetail, useErrorDetails, useErrorDistribution, useErrorNotification, useErrorTrends, useExecuteAction, useExecuteAsync, useExecuteResource, useExecution, useExecutionHealth, useExecutionLogSSE, useExecutionLogs, useExecutionLogsFilters, useExecutionPanelState, useExecutionSSE, useExecutions, useGetExecutionHistory, useGetSchedule, useGraphBackgroundStyles, useGraphTheme, useInFlightExecutions, useLeadGenConfig, useList, useListActions, useListApiKeys, useListDeployments, useListExecutions, useListMember, useListMembers, useListProgress, useListRecords, useListSchedules, useListWebhookEndpoints, useLists, useListsTelemetry, useMarkAllAsRead, useMarkAsRead, useMilestones, useNewKnowledgeMapLayout, useNotificationAdapter, useNotificationCount, useNotifications, useOptionalElevasisSystems, useOrgRoles, useOrganizationMembers, usePaginationState, usePatchTask, usePauseSchedule, usePermissionCatalog, useProject, useProjectActivities, useProjectMilestones, useProjectNotes, useProjectRealtime, useProjectTasks, useProjects, useReactivateMembership, useRecentCrmActivity, useRecentExecutionsByResource, useRemoveCompaniesFromList, useRequest, useRequestsList, useResetCrmPrioritySettings, useResolveAllErrors, useResolveError, useResolveErrorsByExecution, useResolvedOrganizationModel, useResourceDefinition, useResourceErrors, useResourceExecutions, useResourceSearch, useResources, useResourcesDomainFilters, useResourcesHealth, useResumeSchedule, useRetryExecution, useRevokeRole, useSSEConnection, useScheduledTasks, useSession, useSessionCheck, useSessionExecution, useSessionExecutions, useSessionMessages, useSessionWebSocket, useSessions, useSidebar, useSidebarCollapse, useSortedData, useStableAccessToken, useStatusFilter, useSubmitAction, useSubmitRequest, useSuccessNotification, useSystemHealth, useTableSelection, useTableSort, useTasks, useTestNotification, useTimeRangeDates, useTopFailingResources, useTransitionItem, useTransitionListCompany, useTransitionListMember, useTransitionState, useUnresolveError, useUnresolvedErrors, useUpdateAnchor, useUpdateApiKey, useUpdateClient, useUpdateCompany, useUpdateContact, useUpdateCredential, useUpdateCrmPrioritySettings, useUpdateList, useUpdateListConfig, useUpdateListStatus, useUpdateMilestone, useUpdateOrgRole, useUpdateProject, useUpdateRequestStatus, useUpdateSchedule, useUpdateTask, useUpdateWebhookEndpoint, useUserMemberships, useVerifyCredential, useVisibleResources, useWarningNotification, useWorkflowExecution };
|
|
51075
|
+
export { APIErrorAlert, AbsoluteScheduleForm, AccessGuard, AccessKeys, AccountSettings, ActionModal, ActivityCard, ActivityFeed, ActivityFeedWidget, ActivityFilters, ActivityLog, ActivityTable, ActivityTimeline, ActivityTrendChart, AgentDefinitionDisplay, AgentExecutionLogs, AgentExecutionPanel, AgentExecutionTimeline, AgentExecutionVisualizer, AgentIterationEdge, AgentIterationNode, AgentResourceEntrySchema, AgentSessionGroup, AllTasksPage, ApiKeyDisplayModal, ApiKeyList, ApiKeyService, ApiKeySettings, AppErrorBoundary, AppShellCenteredContainer, AppShellContainer, AppShellContentContainer, AppShellError, AppShellLoader, AppShellRightSideContainer, AppShellRightSideOuterContainer, AppTopbarAdjusterWrapper, AppearanceContext, AppearanceProvider, AppearanceSettings, BaseEdge, BaseExecutionLogs, BaseExecutionLogsHeader, BaseExecutionLogsStates, BaseNode, Breadcrumbs, BusinessImpactCard, CRM_ITEMS, CenteredErrorState, ChartFrame, Checklist, CheckpointGroup, CollapsibleJsonSection, CollapsibleSection, CollapsibleSidebarGroup, CombinedTrendChart, CommandQueueDetailPage, CommandQueuePage, CommandQueueShell, CommandQueueSidebar, CommandQueueSidebarMiddle, CommandQueueSidebarTop, CommandQueueTaskRow, CommandViewPage, CompanyDetailPage, ConfigCard, ConfirmationInputModal, ConfirmationModal, ContactDetailPage, ContentSections, ContextUsageBadge, ContextViewer, ContractDisplay, ConversationThread, CostAnalytics, CostBreakdownCard, CostByModelTable, CostMetricsCard, CostTrendChart, CrashErrorFallback, CreateApiKeyModal, CreateCredentialModal, CreateDeliveryEntityModal, CreateRoleModal, CreateScheduleModal, CreateWebhookEndpointModal, CredentialList, CredentialService, CredentialSettings, CrmActionsProvider, CrmOverview, CrmSettingsPage, CrmSidebar, CrmSidebarMiddle, CrmSidebarTop, CustomModal, CustomSelector, CyberAreaChart, CyberDonut, CyberDonutTooltip, CyberLegendItem, CyberParticles, DEAL_STAGES, DEAL_STAGE_COLORS, DEAL_STAGE_OPTIONS, DEFAULT_KANBAN_CONFIG, DEFAULT_SEMANTIC_ICON_REGISTRY, DELIVERY_COMMUNICATION_ITEMS, DELIVERY_PROJECT_ITEMS, DELIVERY_WORK_ITEMS, Dashboard, DashboardOperationsOverview, DealDetailPage, DealKanbanCard, DealsListPage, DeleteScheduleModal, DeploymentDetailModal, DeploymentList, DeploymentService, DeploymentSettings, DeploymentStatusBadge, DetailCardSkeleton, EMPTY_LIST_ACTIONS, EditApiKeyModal, EditCredentialModal, EditWebhookEndpointModal, ElevasisCoreProvider, ElevasisLoader, ElevasisSystemsProvider, ElevasisUIProvider, EmptyState, EmptyVisualizer, ErrorAnalysisCard, ErrorBreakdownTable, ErrorDetailsModal, ErrorReportCard, ExecuteWorkflowModal, ExecutionBreakdownTable, ExecutionErrorSection, ExecutionHealth, ExecutionHealthCard, ExecutionLogsFilters, ExecutionLogsPage, ExecutionLogsTable, ExecutionPanel, ExecutionStats, ExecutionStatusBadge, FeatureUnavailableState, FilterBar, GlowDot, GraphBackground, GraphContainer, GraphFitViewButton, GraphFitViewHandler, GraphLegend, HealthStatusCard, HeroStatsRow, IdentityDomainSchema, IntegrationResourceEntrySchema, JsonViewer, KNOWLEDGE_DOMAINS_WITH_PANELS, KNOWLEDGE_ICON_TOKEN_BY_KIND, KanbanBoard, KnowledgeSearchBar, KnowledgeTree, LEAD_GEN_ITEMS, LEAD_GEN_ROUTE_LINKS, LeadGenCompaniesPage, LeadGenContactsPage, LeadGenListDetailPage, LeadGenListsPage, LeadGenOverviewPage, LeadGenRouteShell, LeadGenSidebar, LeadGenSidebarMiddle, LeadGenSidebarTop, LinksGroup, ListActionsProvider, ListBuilderIndexPage, ListBuilderPage, ListSkeleton, LogEntry, LogGroup, MdxRenderer, MemberAccessModal, MembershipStatusBadge, MetricsStrip, MilestoneTimeline, MyRolesPage, MyTasksPanel, NavigationButton, NewKnowledgeMapEdge, NewKnowledgeMapGraph, NewKnowledgeMapNode, NoAccessState, NotificationBell, NotificationCenter, NotificationItem, NotificationList, NotificationPanel, NotificationProvider, OAuthConnectModal, OAuthIntegrationsCard, OM_NESTED_TREE_GROUPS, OM_TREE_GROUPS, ORPHAN_STAGE_ORDER, OperationsOverview, OperationsService, OperationsSidebar, OperationsSidebarMiddle, OperationsSidebarTop, OrgMembersList, OrganizationGraphPage, OrganizationMembershipService, OrganizationMembershipsList, OrganizationProvider, OrganizationSettings, OrganizationSwitcher, OrganizationSwitcherConnected, PIPELINE_FUNNEL_ORDER, PageContainer, PageNotFound, PageTitleCaption, PermissionMatrix, PipelineFunnelWidget, PolicySchema, ProjectDetailPage, ProjectsListPage, ProjectsSidebar, ProjectsSidebarMiddle, ProjectsSidebarTop, ProtectedRoute, QuickCreateActions, RecentExecutionsByResource, RecurringScheduleForm, RelativeScheduleForm, RequestActionIcon, RequestModal, ResourceCard, ResourceDefinitionSection, ResourceDetailPage, ResourceErrorState, ResourceFilter, ResourceHeader, ResourceHealthChart, ResourceHealthPanel, ResourceNotFoundState, ResourceOverview, ResourcesPage, ResourcesSidebar, RichTextEditor, RoleBadge, RoleSchema, RunResourceButton, SAVED_VIEW_PRESETS, SavedViewsPanel, ScheduleCard, ScheduleDetailModal, ScheduleTypeSelector, ScriptResourceEntrySchema, SemanticIcon, SessionChatArea, SessionChatInterface, SessionChatPage, SessionDetailsSidebar, SessionExecutionLogs, SessionHeader, SessionListItem, SessionMemory, SessionsPage, SessionsSidebar, Sidebar, SidebarContext, SidebarProvider, SortableHeader, StatCard, StatCardSkeleton, StatsCardSkeleton, StatusBadge, StepConfigForm, SubshellContainer, SubshellContentContainer, SubshellLoader, SubshellNavList, SubshellRightSideContainer, SubshellSidebar, SubshellSidebarLoader, SurfaceDefinitionSchema, SystemOpsView, SystemShell, TabCountBadge, TabSection, TableSelectionToolbar, TaskCard, TaskScheduler, TimeRangeSelector, TimelineAxis, TimelineBar, TimelineContainer, TimelineRow, ToolsListDisplay, Topbar, TopbarActions, TopbarContainer, TrendIndicator, UnifiedWorkflowEdge, UnifiedWorkflowGraph, UnifiedWorkflowNode, UnresolvedErrorsTeaser, UpcomingMilestonesPage, Vignette, VisualizerContainer, WebhookEndpointList, WebhookEndpointService, WebhookEndpointSettings, WebhookUrlDisplayModal, WorkflowDefinitionDisplay, WorkflowExecutionLogs, WorkflowExecutionPanel, WorkflowExecutionTimeline, WorkflowResourceEntrySchema, ZodFormRenderer, acquisitionListKeys, aggregateSystemMetrics, buildErrorReport, calculateProgress, clientsKeys, collectResourceFilterFacets, companyKeys, contactKeys, createOrganizationsSlice, createTestSystemsProvider, createUseOrgInitialization, createUseOrganizations, crmManifest, crmPrioritySettingsKeys, dealKeys, dealNoteKeys, dealTaskKeys, deliveryManifest, deriveBusinessProgress, executionsKeys, extendSemanticIconRegistry, filterByDomainFilters, findListActionByAction, findOmTreeGroup, formatDate3 as formatDate, formatDealStageLabel, formatResourceAttribution, formatStatusLabel, getConceptDefinition, getEnrichmentColor, getEnrichmentStatus, getExecutionStatusConfig, getGraphBackgroundStyles, getHealthColor, getIcon, getKnowledgeDomainFolderCommand, getKnowledgeGraphNodeCommand, getKnowledgeIconToken, getKnowledgeNodeReadCommand, getKnowledgeOntologyProjection, getKnowledgeTreeFolderCommand, getLeadGenApiInterfaceReadiness, getLeadGenExportWorkflowId, getListActionWorkflowId, getLogLevelConfig, getOntologyDomainLabel, getPrimaryOntologyItemsForDomain, getResourceFilterFacetIds, getSemanticIconComponent, getSeriesColor, getSharedOrganizationGraph, getStateKeyColor, getStatusColor4 as getStatusColor, getStepActionLabel, iconMap, isLeadGenExportAction, isSessionCapable, knowledgeManifest, labelResourceFilterFacet, leadGenArtifactKeys, leadGenListCompanyKeys, leadGenListMemberKeys, leadGenManifest, mdxComponents, milestoneKeys, milestoneStatusColors, monitoringManifest, normaliseConceptKey, noteKeys, noteTypeColors, observabilityKeys, operationsKeys, operationsManifest, projectActivityKeys, projectKeys, projectNavigationGroups, projectNavigationSurfaces, projectStatusColors, requestTopbarActionManifest, requestsKeys, resolveBuildPlanSteps, resolveBuildState, resolveSemanticIconComponent, scheduleKeys, sessionsKeys, settingsManifest, showApiErrorNotification, showAuthError, showErrorNotification, showInfoNotification, showSuccessNotification, showWarningNotification, sortData, sortStageKeys, subsidebarWidth, taskKeys, taskStatusColors, taskTypeColors, useAccess, useActivateDeployment, useActivities, useActivitiesRealtime, useActivityFilters, useActivityTrend, useAddCompaniesToList, useAddContactsToList, useAppearance, useArchiveSession, useArchivedLogs, useArtifacts, useAssignRole, useBatchDelete, useBatchTelemetry, useBatchedResourcesHealth, useBreadcrumbs, useBulkDeleteExecutions, useBusinessImpact, useCancelExecution, useCancelSchedule, useCheckpointTasks, useClient, useClientStatus, useClients, useCommandQueue, useCommandQueueTotals, useCommandViewData, useCommandViewDomainFilters, useCommandViewStats, useCommandViewStore, useCompanies, useCompany, useCompanyFacets, useCompleteDealTask, useContact, useContacts, useCostBreakdown, useCostByModel, useCostSummary, useCostTrends, useCreateApiKey, useCreateArtifact, useCreateClient, useCreateCompany, useCreateContact, useCreateCredential, useCreateDealNote, useCreateDealTask, useCreateList, useCreateMilestone, useCreateNote, useCreateOrgRole, useCreateProject, useCreateSchedule, useCreateSession, useCreateTask, useCreateWebhookEndpoint, useCredentials, useCrmActions, useCrmPipelineSummary, useCrmPrioritySettings, useCrmQuickMetrics, useCyberColors, useDashboardMetrics, useDeactivateDeployment, useDeactivateMembership, useDealDetail, useDealNotes, useDealTasks, useDealTasksDue, useDeals, useDealsLookup, useDealsSummary, useDeleteApiKey, useDeleteClient, useDeleteCompanies, useDeleteContacts, useDeleteCredential, useDeleteDeal, useDeleteDeployment, useDeleteExecution, useDeleteList, useDeleteLists, useDeleteMilestone, useDeleteOrgRole, useDeleteProject, useDeleteRequest, useDeleteSchedule, useDeleteSession, useDeleteTask, useDeleteTask2, useDeleteWebhookEndpoint, useDeriveActions, useEffectivePermissions, useElevasisSystems, useErrorAnalysis, useErrorDetail, useErrorDetails, useErrorDistribution, useErrorNotification, useErrorTrends, useExecuteAction, useExecuteAsync, useExecuteResource, useExecution, useExecutionHealth, useExecutionLogSSE, useExecutionLogs, useExecutionLogsFilters, useExecutionPanelState, useExecutionSSE, useExecutions, useGetExecutionHistory, useGetSchedule, useGraphBackgroundStyles, useGraphTheme, useInFlightExecutions, useLeadGenConfig, useList, useListActions, useListApiKeys, useListDeployments, useListExecutions, useListMember, useListMembers, useListProgress, useListRecords, useListSchedules, useListWebhookEndpoints, useLists, useListsTelemetry, useMarkAllAsRead, useMarkAsRead, useMilestones, useNewKnowledgeMapLayout, useNotificationAdapter, useNotificationCount, useNotifications, useOptionalElevasisSystems, useOrgRoles, useOrganizationMembers, usePaginationState, usePatchTask, usePauseSchedule, usePermissionCatalog, useProject, useProjectActivities, useProjectMilestones, useProjectNotes, useProjectRealtime, useProjectTasks, useProjects, useReactivateMembership, useRecentCrmActivity, useRecentExecutionsByResource, useRemoveCompaniesFromList, useRequest, useRequestsList, useResetCrmPrioritySettings, useResolveAllErrors, useResolveError, useResolveErrorsByExecution, useResolvedOrganizationModel, useResourceDefinition, useResourceErrors, useResourceExecutions, useResourceSearch, useResources, useResourcesDomainFilters, useResourcesHealth, useResumeSchedule, useRetryExecution, useRevokeRole, useSSEConnection, useScheduledTasks, useSession, useSessionCheck, useSessionExecution, useSessionExecutions, useSessionMessages, useSessionWebSocket, useSessions, useSidebar, useSidebarCollapse, useSortedData, useStableAccessToken, useStatusFilter, useSubmitAction, useSubmitRequest, useSuccessNotification, useSystemHealth, useTableSelection, useTableSort, useTasks, useTestNotification, useTimeRangeDates, useTopFailingResources, useTransitionItem, useTransitionListCompany, useTransitionListMember, useTransitionState, useUnresolveError, useUnresolvedErrors, useUpdateAnchor, useUpdateApiKey, useUpdateClient, useUpdateCompany, useUpdateContact, useUpdateCredential, useUpdateCrmPrioritySettings, useUpdateList, useUpdateListConfig, useUpdateListStatus, useUpdateMilestone, useUpdateOrgRole, useUpdateProject, useUpdateRequestStatus, useUpdateSchedule, useUpdateTask, useUpdateWebhookEndpoint, useUserMemberships, useVerifyCredential, useVisibleResources, useWarningNotification, useWorkflowExecution };
|