@elevasis/core 0.21.0 → 0.22.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/index.d.ts +416 -6
- package/dist/index.js +240 -15
- package/dist/knowledge/index.d.ts +97 -1
- package/dist/organization-model/index.d.ts +416 -6
- package/dist/organization-model/index.js +240 -15
- package/dist/test-utils/index.d.ts +216 -1
- package/dist/test-utils/index.js +230 -14
- package/package.json +3 -3
- package/src/_gen/__tests__/__snapshots__/contracts.md.snap +495 -302
- package/src/auth/multi-tenancy/permissions.ts +20 -8
- package/src/business/README.md +2 -2
- package/src/business/acquisition/api-schemas.test.ts +173 -0
- package/src/business/acquisition/api-schemas.ts +125 -7
- package/src/business/acquisition/index.ts +12 -0
- package/src/business/clients/api-schemas.test.ts +115 -0
- package/src/business/clients/api-schemas.ts +158 -0
- package/src/business/clients/index.ts +1 -0
- package/src/business/deals/api-schemas.ts +8 -0
- package/src/business/index.ts +5 -2
- package/src/business/projects/types.ts +19 -0
- package/src/execution/engine/__tests__/fixtures/test-agents.ts +10 -8
- package/src/execution/engine/agent/core/__tests__/agent.test.ts +16 -12
- package/src/execution/engine/agent/core/__tests__/error-passthrough.test.ts +4 -3
- package/src/execution/engine/agent/core/types.ts +25 -15
- package/src/execution/engine/agent/index.ts +6 -4
- package/src/execution/engine/agent/reasoning/__tests__/request-builder.test.ts +24 -18
- package/src/execution/engine/index.ts +3 -0
- package/src/execution/engine/workflow/types.ts +7 -0
- package/src/organization-model/README.md +10 -3
- package/src/organization-model/__tests__/defaults.test.ts +6 -0
- package/src/organization-model/__tests__/domains/resources.test.ts +188 -0
- package/src/organization-model/__tests__/domains/roles.test.ts +402 -347
- package/src/organization-model/__tests__/domains/systems.test.ts +193 -0
- package/src/organization-model/__tests__/knowledge.test.ts +39 -0
- package/src/organization-model/__tests__/resolve.test.ts +1 -1
- package/src/organization-model/defaults.ts +24 -3
- package/src/organization-model/domains/knowledge.ts +3 -2
- package/src/organization-model/domains/resources.ts +88 -0
- package/src/organization-model/domains/roles.ts +93 -55
- package/src/organization-model/domains/systems.ts +46 -0
- package/src/organization-model/icons.ts +1 -0
- package/src/organization-model/index.ts +2 -0
- package/src/organization-model/organization-model.mdx +33 -14
- package/src/organization-model/published.ts +52 -1
- package/src/organization-model/schema.ts +121 -0
- package/src/organization-model/types.ts +46 -1
- package/src/platform/api/types.ts +38 -35
- package/src/platform/registry/__tests__/resource-registry.test.ts +2051 -2005
- package/src/platform/registry/__tests__/validation.test.ts +1343 -1086
- package/src/platform/registry/index.ts +14 -0
- package/src/platform/registry/resource-registry.ts +40 -2
- package/src/platform/registry/serialization.ts +241 -202
- package/src/platform/registry/serialized-types.ts +1 -0
- package/src/platform/registry/types.ts +411 -361
- package/src/platform/registry/validation.ts +743 -513
- package/src/projects/api-schemas.ts +290 -267
- package/src/reference/_generated/contracts.md +495 -302
- package/src/reference/glossary.md +8 -3
- package/src/supabase/database.types.ts +121 -0
|
@@ -19,6 +19,7 @@ var ORGANIZATION_MODEL_ICON_TOKENS = [
|
|
|
19
19
|
"knowledge.reference",
|
|
20
20
|
"feature.dashboard",
|
|
21
21
|
"feature.calendar",
|
|
22
|
+
"feature.business",
|
|
22
23
|
"feature.sales",
|
|
23
24
|
"feature.crm",
|
|
24
25
|
"feature.finance",
|
|
@@ -969,13 +970,113 @@ var OfferingsDomainSchema = z.object({
|
|
|
969
970
|
var DEFAULT_ORGANIZATION_MODEL_OFFERINGS = {
|
|
970
971
|
products: []
|
|
971
972
|
};
|
|
973
|
+
var SystemKindSchema = z.enum(["product", "operational", "platform", "diagnostic"]);
|
|
974
|
+
var SystemStatusSchema = z.enum(["active", "deprecated", "archived"]);
|
|
975
|
+
var SystemIdSchema = ModelIdSchema;
|
|
976
|
+
var SystemEntrySchema = z.object({
|
|
977
|
+
/** Stable tenant-defined system id (e.g. "sys.lead-gen"). */
|
|
978
|
+
id: SystemIdSchema,
|
|
979
|
+
/** Human-readable system title shown in governance and operations UI. */
|
|
980
|
+
title: LabelSchema,
|
|
981
|
+
/** One-paragraph purpose statement for the bounded context. */
|
|
982
|
+
description: DescriptionSchema,
|
|
983
|
+
/** Closed system shape enum; catalog values remain tenant-defined. */
|
|
984
|
+
kind: SystemKindSchema,
|
|
985
|
+
/** Optional role responsible for this system. */
|
|
986
|
+
responsibleRoleId: ModelIdSchema.optional(),
|
|
987
|
+
/** Optional knowledge nodes that govern this system. */
|
|
988
|
+
governedByKnowledge: ReferenceIdsSchema,
|
|
989
|
+
/** Optional goals this system contributes to. */
|
|
990
|
+
drivesGoals: ReferenceIdsSchema,
|
|
991
|
+
status: SystemStatusSchema
|
|
992
|
+
});
|
|
993
|
+
var SystemsDomainSchema = z.object({
|
|
994
|
+
systems: z.array(SystemEntrySchema).default([])
|
|
995
|
+
});
|
|
996
|
+
var DEFAULT_ORGANIZATION_MODEL_SYSTEMS = {
|
|
997
|
+
systems: []
|
|
998
|
+
};
|
|
999
|
+
|
|
1000
|
+
// src/organization-model/domains/resources.ts
|
|
1001
|
+
var ResourceKindSchema = z.enum(["workflow", "agent", "integration"]);
|
|
1002
|
+
var ResourceGovernanceStatusSchema = z.enum(["active", "deprecated", "archived"]);
|
|
1003
|
+
var AgentKindSchema = z.enum(["orchestrator", "specialist", "utility", "system"]);
|
|
1004
|
+
var ResourceIdSchema = z.string().trim().min(1).max(255).regex(/^[A-Za-z0-9]+(?:[-._][A-Za-z0-9]+)*$/, "Resource IDs must use letters, numbers, -, _, or . separators");
|
|
1005
|
+
var ResourceEntryBaseSchema = z.object({
|
|
1006
|
+
/** Canonical resource id; runtime resourceId derives from this value. */
|
|
1007
|
+
id: ResourceIdSchema,
|
|
1008
|
+
/** Required single System membership. */
|
|
1009
|
+
systemId: SystemIdSchema,
|
|
1010
|
+
/** Optional role responsible for maintaining this resource. */
|
|
1011
|
+
ownerRoleId: ModelIdSchema.optional(),
|
|
1012
|
+
status: ResourceGovernanceStatusSchema
|
|
1013
|
+
});
|
|
1014
|
+
var WorkflowResourceEntrySchema = ResourceEntryBaseSchema.extend({
|
|
1015
|
+
kind: z.literal("workflow"),
|
|
1016
|
+
/** Mirrors WorkflowConfig.capabilityKey when the runtime workflow has one. */
|
|
1017
|
+
capabilityKey: z.string().trim().min(1).max(255).optional()
|
|
1018
|
+
});
|
|
1019
|
+
var AgentResourceEntrySchema = ResourceEntryBaseSchema.extend({
|
|
1020
|
+
kind: z.literal("agent"),
|
|
1021
|
+
/** Mirrors code-side AgentConfig.kind. */
|
|
1022
|
+
agentKind: AgentKindSchema,
|
|
1023
|
+
/** Role this agent embodies, if any. */
|
|
1024
|
+
actsAsRoleId: ModelIdSchema.optional(),
|
|
1025
|
+
/** Mirrors AgentConfig.sessionCapable. */
|
|
1026
|
+
sessionCapable: z.boolean()
|
|
1027
|
+
});
|
|
1028
|
+
var IntegrationResourceEntrySchema = ResourceEntryBaseSchema.extend({
|
|
1029
|
+
kind: z.literal("integration"),
|
|
1030
|
+
provider: z.string().trim().min(1).max(100)
|
|
1031
|
+
});
|
|
1032
|
+
var ResourceEntrySchema = z.discriminatedUnion("kind", [
|
|
1033
|
+
WorkflowResourceEntrySchema,
|
|
1034
|
+
AgentResourceEntrySchema,
|
|
1035
|
+
IntegrationResourceEntrySchema
|
|
1036
|
+
]);
|
|
1037
|
+
var ResourcesDomainSchema = z.object({
|
|
1038
|
+
entries: z.array(ResourceEntrySchema).default([])
|
|
1039
|
+
});
|
|
1040
|
+
var DEFAULT_ORGANIZATION_MODEL_RESOURCES = {
|
|
1041
|
+
entries: []
|
|
1042
|
+
};
|
|
1043
|
+
function defineResource(resource) {
|
|
1044
|
+
return ResourceEntrySchema.parse(resource);
|
|
1045
|
+
}
|
|
1046
|
+
function defineResources(resources) {
|
|
1047
|
+
for (const resource of Object.values(resources)) {
|
|
1048
|
+
ResourceEntrySchema.parse(resource);
|
|
1049
|
+
}
|
|
1050
|
+
return resources;
|
|
1051
|
+
}
|
|
1052
|
+
|
|
1053
|
+
// src/organization-model/domains/roles.ts
|
|
1054
|
+
var RoleIdSchema = ModelIdSchema;
|
|
1055
|
+
var HumanRoleHolderSchema = z.object({
|
|
1056
|
+
kind: z.literal("human"),
|
|
1057
|
+
userId: z.string().trim().min(1).max(200)
|
|
1058
|
+
});
|
|
1059
|
+
var AgentRoleHolderSchema = z.object({
|
|
1060
|
+
kind: z.literal("agent"),
|
|
1061
|
+
agentId: ResourceIdSchema
|
|
1062
|
+
});
|
|
1063
|
+
var TeamRoleHolderSchema = z.object({
|
|
1064
|
+
kind: z.literal("team"),
|
|
1065
|
+
memberIds: z.array(z.string().trim().min(1).max(200)).min(1)
|
|
1066
|
+
});
|
|
1067
|
+
var RoleHolderSchema = z.discriminatedUnion("kind", [
|
|
1068
|
+
HumanRoleHolderSchema,
|
|
1069
|
+
AgentRoleHolderSchema,
|
|
1070
|
+
TeamRoleHolderSchema
|
|
1071
|
+
]);
|
|
1072
|
+
var RoleHoldersSchema = z.union([RoleHolderSchema, z.array(RoleHolderSchema).min(1)]);
|
|
972
1073
|
var RoleSchema = z.object({
|
|
973
1074
|
/** Stable unique identifier for the role (e.g. "role-ceo", "role-head-of-sales"). */
|
|
974
|
-
id:
|
|
1075
|
+
id: RoleIdSchema,
|
|
975
1076
|
/** Human-readable title shown to agents and in UI (e.g. "CEO", "Head of Sales"). */
|
|
976
1077
|
title: z.string().trim().min(1).max(200),
|
|
977
1078
|
/**
|
|
978
|
-
* List of responsibilities this role owns
|
|
1079
|
+
* List of responsibilities this role owns - plain-language descriptions of
|
|
979
1080
|
* what the person in this role is accountable for delivering.
|
|
980
1081
|
* Defaults to empty array so minimal role definitions stay concise.
|
|
981
1082
|
*/
|
|
@@ -983,16 +1084,18 @@ var RoleSchema = z.object({
|
|
|
983
1084
|
/**
|
|
984
1085
|
* Optional: ID of another role this role reports to.
|
|
985
1086
|
* When present, must reference another `roles[].id` in the same organization.
|
|
986
|
-
* Cross-reference enforced in `OrganizationModelSchema.superRefine()`.
|
|
987
|
-
* Absence indicates a top-level role (no reporting line).
|
|
988
1087
|
*/
|
|
989
|
-
reportsToId:
|
|
1088
|
+
reportsToId: RoleIdSchema.optional(),
|
|
990
1089
|
/**
|
|
991
|
-
* Optional:
|
|
992
|
-
*
|
|
993
|
-
* any human-readable identifier. Not validated against any user registry.
|
|
1090
|
+
* Optional: human, agent, or team holder currently filling this role.
|
|
1091
|
+
* Agent holders reference OM Resource IDs and are validated at the model level.
|
|
994
1092
|
*/
|
|
995
|
-
heldBy:
|
|
1093
|
+
heldBy: RoleHoldersSchema.optional(),
|
|
1094
|
+
/**
|
|
1095
|
+
* Optional Systems this role is accountable for.
|
|
1096
|
+
* Cross-reference enforced in `OrganizationModelSchema.superRefine()`.
|
|
1097
|
+
*/
|
|
1098
|
+
responsibleFor: z.array(SystemIdSchema).optional()
|
|
996
1099
|
});
|
|
997
1100
|
var RolesDomainSchema = z.object({
|
|
998
1101
|
roles: z.array(RoleSchema).default([])
|
|
@@ -1227,8 +1330,8 @@ var OrgKnowledgeNodeSchema = z.object({
|
|
|
1227
1330
|
skills: z.array(KnowledgeSkillBindingSchema).optional(),
|
|
1228
1331
|
/** Domain key used to derive fast graph->skill registries. */
|
|
1229
1332
|
domain: KnowledgeDomainBindingSchema.optional(),
|
|
1230
|
-
/**
|
|
1231
|
-
ownerIds: z.array(
|
|
1333
|
+
/** Role identifiers that own this knowledge node. */
|
|
1334
|
+
ownerIds: z.array(RoleIdSchema).default([]),
|
|
1232
1335
|
/** ISO date string (YYYY-MM-DD or full ISO 8601) of last meaningful update. */
|
|
1233
1336
|
updatedAt: z.string().trim().min(1).max(50)
|
|
1234
1337
|
});
|
|
@@ -1250,6 +1353,8 @@ var OrganizationModelSchemaBase = z.object({
|
|
|
1250
1353
|
offerings: OfferingsDomainSchema.default(DEFAULT_ORGANIZATION_MODEL_OFFERINGS),
|
|
1251
1354
|
roles: RolesDomainSchema.default(DEFAULT_ORGANIZATION_MODEL_ROLES),
|
|
1252
1355
|
goals: GoalsDomainSchema.default(DEFAULT_ORGANIZATION_MODEL_GOALS),
|
|
1356
|
+
systems: SystemsDomainSchema.default(DEFAULT_ORGANIZATION_MODEL_SYSTEMS),
|
|
1357
|
+
resources: ResourcesDomainSchema.default(DEFAULT_ORGANIZATION_MODEL_RESOURCES),
|
|
1253
1358
|
statuses: StatusesDomainSchema.default({ entries: [] }),
|
|
1254
1359
|
operations: OperationsDomainSchema.default({ entries: [] }),
|
|
1255
1360
|
knowledge: KnowledgeDomainSchema.default({ nodes: [] })
|
|
@@ -1283,6 +1388,9 @@ function hasFeature(featuresById, featureId) {
|
|
|
1283
1388
|
function defaultFeaturePathFor(id) {
|
|
1284
1389
|
return `/${id.replaceAll(".", "/")}`;
|
|
1285
1390
|
}
|
|
1391
|
+
function asRoleHolderArray(heldBy) {
|
|
1392
|
+
return Array.isArray(heldBy) ? heldBy : [heldBy];
|
|
1393
|
+
}
|
|
1286
1394
|
var OrganizationModelSchema = OrganizationModelSchemaBase.superRefine((model, ctx) => {
|
|
1287
1395
|
const featuresById = collectIds(model.features, ctx, ["features"], "Feature");
|
|
1288
1396
|
const featureIdsByEffectivePath = /* @__PURE__ */ new Map();
|
|
@@ -1393,6 +1501,8 @@ var OrganizationModelSchema = OrganizationModelSchemaBase.superRefine((model, ct
|
|
|
1393
1501
|
);
|
|
1394
1502
|
}
|
|
1395
1503
|
});
|
|
1504
|
+
const goalsById = new Map(model.goals.objectives.map((objective) => [objective.id, objective]));
|
|
1505
|
+
const knowledgeById = new Map(model.knowledge.nodes.map((node) => [node.id, node]));
|
|
1396
1506
|
const rolesById = new Map(model.roles.roles.map((role) => [role.id, role]));
|
|
1397
1507
|
model.roles.roles.forEach((role, roleIndex) => {
|
|
1398
1508
|
if (role.reportsToId !== void 0 && !rolesById.has(role.reportsToId)) {
|
|
@@ -1403,6 +1513,102 @@ var OrganizationModelSchema = OrganizationModelSchemaBase.superRefine((model, ct
|
|
|
1403
1513
|
);
|
|
1404
1514
|
}
|
|
1405
1515
|
});
|
|
1516
|
+
const systemsById = collectIds(model.systems.systems, ctx, ["systems", "systems"], "System");
|
|
1517
|
+
model.roles.roles.forEach((role, roleIndex) => {
|
|
1518
|
+
role.responsibleFor?.forEach((systemId, systemIndex) => {
|
|
1519
|
+
if (!systemsById.has(systemId)) {
|
|
1520
|
+
addIssue(
|
|
1521
|
+
ctx,
|
|
1522
|
+
["roles", "roles", roleIndex, "responsibleFor", systemIndex],
|
|
1523
|
+
`Role "${role.id}" references unknown responsibleFor system "${systemId}"`
|
|
1524
|
+
);
|
|
1525
|
+
}
|
|
1526
|
+
});
|
|
1527
|
+
});
|
|
1528
|
+
model.systems.systems.forEach((system, systemIndex) => {
|
|
1529
|
+
if (system.responsibleRoleId !== void 0 && !rolesById.has(system.responsibleRoleId)) {
|
|
1530
|
+
addIssue(
|
|
1531
|
+
ctx,
|
|
1532
|
+
["systems", "systems", systemIndex, "responsibleRoleId"],
|
|
1533
|
+
`System "${system.id}" references unknown responsibleRoleId "${system.responsibleRoleId}"`
|
|
1534
|
+
);
|
|
1535
|
+
}
|
|
1536
|
+
system.governedByKnowledge.forEach((nodeId, nodeIndex) => {
|
|
1537
|
+
if (!knowledgeById.has(nodeId)) {
|
|
1538
|
+
addIssue(
|
|
1539
|
+
ctx,
|
|
1540
|
+
["systems", "systems", systemIndex, "governedByKnowledge", nodeIndex],
|
|
1541
|
+
`System "${system.id}" references unknown knowledge node "${nodeId}"`
|
|
1542
|
+
);
|
|
1543
|
+
}
|
|
1544
|
+
});
|
|
1545
|
+
system.drivesGoals.forEach((goalId, goalIndex) => {
|
|
1546
|
+
if (!goalsById.has(goalId)) {
|
|
1547
|
+
addIssue(
|
|
1548
|
+
ctx,
|
|
1549
|
+
["systems", "systems", systemIndex, "drivesGoals", goalIndex],
|
|
1550
|
+
`System "${system.id}" references unknown goal "${goalId}"`
|
|
1551
|
+
);
|
|
1552
|
+
}
|
|
1553
|
+
});
|
|
1554
|
+
});
|
|
1555
|
+
const resourcesById = collectIds(model.resources.entries, ctx, ["resources", "entries"], "Resource");
|
|
1556
|
+
model.resources.entries.forEach((resource, resourceIndex) => {
|
|
1557
|
+
if (!systemsById.has(resource.systemId)) {
|
|
1558
|
+
addIssue(
|
|
1559
|
+
ctx,
|
|
1560
|
+
["resources", "entries", resourceIndex, "systemId"],
|
|
1561
|
+
`Resource "${resource.id}" references unknown systemId "${resource.systemId}"`
|
|
1562
|
+
);
|
|
1563
|
+
}
|
|
1564
|
+
if (resource.ownerRoleId !== void 0 && !rolesById.has(resource.ownerRoleId)) {
|
|
1565
|
+
addIssue(
|
|
1566
|
+
ctx,
|
|
1567
|
+
["resources", "entries", resourceIndex, "ownerRoleId"],
|
|
1568
|
+
`Resource "${resource.id}" references unknown ownerRoleId "${resource.ownerRoleId}"`
|
|
1569
|
+
);
|
|
1570
|
+
}
|
|
1571
|
+
if (resource.kind === "agent" && resource.actsAsRoleId !== void 0 && !rolesById.has(resource.actsAsRoleId)) {
|
|
1572
|
+
addIssue(
|
|
1573
|
+
ctx,
|
|
1574
|
+
["resources", "entries", resourceIndex, "actsAsRoleId"],
|
|
1575
|
+
`Agent resource "${resource.id}" references unknown actsAsRoleId "${resource.actsAsRoleId}"`
|
|
1576
|
+
);
|
|
1577
|
+
}
|
|
1578
|
+
});
|
|
1579
|
+
model.roles.roles.forEach((role, roleIndex) => {
|
|
1580
|
+
if (role.heldBy === void 0) return;
|
|
1581
|
+
asRoleHolderArray(role.heldBy).forEach((holder, holderIndex) => {
|
|
1582
|
+
if (holder.kind !== "agent") return;
|
|
1583
|
+
const resource = resourcesById.get(holder.agentId);
|
|
1584
|
+
if (resource === void 0) {
|
|
1585
|
+
addIssue(
|
|
1586
|
+
ctx,
|
|
1587
|
+
["roles", "roles", roleIndex, "heldBy", Array.isArray(role.heldBy) ? holderIndex : "agentId"],
|
|
1588
|
+
`Role "${role.id}" references unknown agent holder resource "${holder.agentId}"`
|
|
1589
|
+
);
|
|
1590
|
+
return;
|
|
1591
|
+
}
|
|
1592
|
+
if (resource.kind !== "agent") {
|
|
1593
|
+
addIssue(
|
|
1594
|
+
ctx,
|
|
1595
|
+
["roles", "roles", roleIndex, "heldBy", Array.isArray(role.heldBy) ? holderIndex : "agentId"],
|
|
1596
|
+
`Role "${role.id}" agent holder "${holder.agentId}" must reference an agent resource`
|
|
1597
|
+
);
|
|
1598
|
+
}
|
|
1599
|
+
});
|
|
1600
|
+
});
|
|
1601
|
+
model.knowledge.nodes.forEach((node, nodeIndex) => {
|
|
1602
|
+
node.ownerIds.forEach((roleId, ownerIndex) => {
|
|
1603
|
+
if (!rolesById.has(roleId)) {
|
|
1604
|
+
addIssue(
|
|
1605
|
+
ctx,
|
|
1606
|
+
["knowledge", "nodes", nodeIndex, "ownerIds", ownerIndex],
|
|
1607
|
+
`Knowledge node "${node.id}" references unknown owner role "${roleId}"`
|
|
1608
|
+
);
|
|
1609
|
+
}
|
|
1610
|
+
});
|
|
1611
|
+
});
|
|
1406
1612
|
});
|
|
1407
1613
|
var OrganizationGraphNodeKindSchema = z.enum([
|
|
1408
1614
|
"organization",
|
|
@@ -1497,6 +1703,15 @@ var DEFAULT_ORGANIZATION_MODEL = {
|
|
|
1497
1703
|
color: "green",
|
|
1498
1704
|
icon: "feature.finance"
|
|
1499
1705
|
},
|
|
1706
|
+
{
|
|
1707
|
+
id: "business",
|
|
1708
|
+
label: "Business",
|
|
1709
|
+
description: "Revenue, client relationships, and project delivery",
|
|
1710
|
+
enabled: true,
|
|
1711
|
+
color: "blue",
|
|
1712
|
+
icon: "feature.business",
|
|
1713
|
+
uiPosition: "sidebar-primary"
|
|
1714
|
+
},
|
|
1500
1715
|
{
|
|
1501
1716
|
id: "sales",
|
|
1502
1717
|
label: "Sales",
|
|
@@ -1504,7 +1719,7 @@ var DEFAULT_ORGANIZATION_MODEL = {
|
|
|
1504
1719
|
enabled: true,
|
|
1505
1720
|
color: "blue",
|
|
1506
1721
|
icon: "feature.sales",
|
|
1507
|
-
|
|
1722
|
+
path: "/sales"
|
|
1508
1723
|
},
|
|
1509
1724
|
{
|
|
1510
1725
|
id: "sales.crm",
|
|
@@ -1531,8 +1746,16 @@ var DEFAULT_ORGANIZATION_MODEL = {
|
|
|
1531
1746
|
enabled: true,
|
|
1532
1747
|
color: "orange",
|
|
1533
1748
|
icon: "feature.projects",
|
|
1534
|
-
path: "/projects"
|
|
1535
|
-
|
|
1749
|
+
path: "/projects"
|
|
1750
|
+
},
|
|
1751
|
+
{
|
|
1752
|
+
id: "clients",
|
|
1753
|
+
label: "Clients",
|
|
1754
|
+
description: "Client relationships, accounts, and business context",
|
|
1755
|
+
enabled: true,
|
|
1756
|
+
color: "orange",
|
|
1757
|
+
icon: "feature.projects",
|
|
1758
|
+
path: "/business/clients"
|
|
1536
1759
|
},
|
|
1537
1760
|
{
|
|
1538
1761
|
id: "operations",
|
|
@@ -1777,6 +2000,8 @@ var DEFAULT_ORGANIZATION_MODEL = {
|
|
|
1777
2000
|
offerings: DEFAULT_ORGANIZATION_MODEL_OFFERINGS,
|
|
1778
2001
|
roles: DEFAULT_ORGANIZATION_MODEL_ROLES,
|
|
1779
2002
|
goals: DEFAULT_ORGANIZATION_MODEL_GOALS,
|
|
2003
|
+
systems: DEFAULT_ORGANIZATION_MODEL_SYSTEMS,
|
|
2004
|
+
resources: DEFAULT_ORGANIZATION_MODEL_RESOURCES,
|
|
1780
2005
|
statuses: DEFAULT_ORGANIZATION_MODEL_STATUSES,
|
|
1781
2006
|
operations: DEFAULT_ORGANIZATION_MODEL_OPERATIONS,
|
|
1782
2007
|
knowledge: DEFAULT_ORGANIZATION_MODEL_KNOWLEDGE
|
|
@@ -1863,4 +2088,4 @@ function createFoundationOrganizationModel(override) {
|
|
|
1863
2088
|
};
|
|
1864
2089
|
}
|
|
1865
2090
|
|
|
1866
|
-
export { CustomerSegmentSchema, CustomersDomainSchema, DEFAULT_ORGANIZATION_MODEL, DEFAULT_ORGANIZATION_MODEL_CUSTOMERS, DEFAULT_ORGANIZATION_MODEL_GOALS, DEFAULT_ORGANIZATION_MODEL_OFFERINGS, DEFAULT_ORGANIZATION_MODEL_OPERATIONS, DEFAULT_ORGANIZATION_MODEL_ROLES, DEFAULT_ORGANIZATION_MODEL_STATUSES, FeatureSchema, FirmographicsSchema, GoalsDomainSchema, IconNameSchema, KNOWLEDGE_FEATURE_ID, KeyResultSchema, KnowledgeDomainSchema, KnowledgeLinkSchema, LinkSchema, MONITORING_FEATURE_ID, NodeIdPathSchema, NodeIdStringSchema, OPERATIONS_COMMAND_VIEW_SURFACE_ID, OPERATIONS_FEATURE_ID, ORGANIZATION_MODEL_ICON_TOKENS, ObjectiveSchema, OfferingsDomainSchema, OperationEntrySchema, OperationSemanticClassSchema, OperationsDomainSchema, OrgKnowledgeKindSchema, OrgKnowledgeNodeSchema, OrganizationModelBuiltinIconTokenSchema, OrganizationModelIconTokenSchema, OrganizationModelSchema, PROJECTS_FEATURE_ID, PROJECTS_INDEX_SURFACE_ID, PROJECTS_VIEW_CAPABILITY_ID, PROSPECTING_FEATURE_ID, PROSPECTING_LISTS_SURFACE_ID, PricingModelSchema, ProductSchema, RoleSchema, RolesDomainSchema, SALES_FEATURE_ID, SALES_PIPELINE_SURFACE_ID, SEO_FEATURE_ID, SETTINGS_FEATURE_ID, SETTINGS_ROLES_SURFACE_ID, StatusEntrySchema, StatusSemanticClassSchema, StatusesDomainSchema, TechStackEntrySchema, UiPositionSchema, createFoundationOrganizationModel, defineOrganizationModel, resolveOrganizationModel };
|
|
2091
|
+
export { AgentKindSchema, AgentResourceEntrySchema, AgentRoleHolderSchema, CustomerSegmentSchema, CustomersDomainSchema, DEFAULT_ORGANIZATION_MODEL, DEFAULT_ORGANIZATION_MODEL_CUSTOMERS, DEFAULT_ORGANIZATION_MODEL_GOALS, DEFAULT_ORGANIZATION_MODEL_OFFERINGS, DEFAULT_ORGANIZATION_MODEL_OPERATIONS, DEFAULT_ORGANIZATION_MODEL_RESOURCES, DEFAULT_ORGANIZATION_MODEL_ROLES, DEFAULT_ORGANIZATION_MODEL_STATUSES, DEFAULT_ORGANIZATION_MODEL_SYSTEMS, FeatureSchema, FirmographicsSchema, GoalsDomainSchema, HumanRoleHolderSchema, IconNameSchema, IntegrationResourceEntrySchema, KNOWLEDGE_FEATURE_ID, KeyResultSchema, KnowledgeDomainSchema, KnowledgeLinkSchema, LinkSchema, MONITORING_FEATURE_ID, NodeIdPathSchema, NodeIdStringSchema, OPERATIONS_COMMAND_VIEW_SURFACE_ID, OPERATIONS_FEATURE_ID, ORGANIZATION_MODEL_ICON_TOKENS, ObjectiveSchema, OfferingsDomainSchema, OperationEntrySchema, OperationSemanticClassSchema, OperationsDomainSchema, OrgKnowledgeKindSchema, OrgKnowledgeNodeSchema, OrganizationModelBuiltinIconTokenSchema, OrganizationModelIconTokenSchema, OrganizationModelSchema, PROJECTS_FEATURE_ID, PROJECTS_INDEX_SURFACE_ID, PROJECTS_VIEW_CAPABILITY_ID, PROSPECTING_FEATURE_ID, PROSPECTING_LISTS_SURFACE_ID, PricingModelSchema, ProductSchema, ResourceEntrySchema, ResourceGovernanceStatusSchema, ResourceIdSchema, ResourceKindSchema, ResourcesDomainSchema, RoleHolderSchema, RoleHoldersSchema, RoleIdSchema, RoleSchema, RolesDomainSchema, SALES_FEATURE_ID, SALES_PIPELINE_SURFACE_ID, SEO_FEATURE_ID, SETTINGS_FEATURE_ID, SETTINGS_ROLES_SURFACE_ID, StatusEntrySchema, StatusSemanticClassSchema, StatusesDomainSchema, SystemEntrySchema, SystemIdSchema, SystemKindSchema, SystemStatusSchema, SystemsDomainSchema, TeamRoleHolderSchema, TechStackEntrySchema, UiPositionSchema, WorkflowResourceEntrySchema, createFoundationOrganizationModel, defineOrganizationModel, defineResource, defineResources, resolveOrganizationModel };
|