@elevasis/sdk 1.44.3 → 1.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/cli.cjs +35026 -30226
- package/dist/index.d.ts +1786 -808
- package/dist/index.js +789 -739
- package/dist/node/index.d.ts +105 -181
- package/dist/node/index.js +2 -2
- package/dist/test-utils/index.d.ts +901 -359
- package/dist/test-utils/index.js +587 -824
- package/dist/worker/index.d.ts +12685 -0
- package/dist/worker/index.js +188 -216
- package/package.json +4 -7
- package/reference/_navigation.md +161 -22
- package/reference/_reference-manifest.json +228 -4
- package/reference/claude-config.md +8 -0
- package/reference/core/exports.mdx +2 -0
- package/reference/core/index.mdx +3 -3
- package/reference/examples/organization-model.ts +117 -111
- package/reference/index.mdx +4 -4
- package/reference/packages/core/src/business/README.md +4 -1
- package/reference/packages/core/src/content/README.md +19 -0
- package/reference/packages/core/src/organization-model/README.md +148 -149
- package/reference/packages/core/src/organization-model/readiness/README.md +42 -0
- package/reference/packages/ui/src/features/README.md +28 -28
- package/reference/rules/active-change-index.md +40 -54
- package/reference/rules/agent-runtime.md +81 -0
- package/reference/rules/agent-start-here.md +71 -163
- package/reference/rules/deployment.md +33 -10
- package/reference/rules/error-handling.md +26 -0
- package/reference/rules/execution.md +13 -0
- package/reference/rules/frontend.md +10 -3
- package/reference/rules/observability.md +9 -1
- package/reference/rules/operations.md +26 -17
- package/reference/rules/organization-model.md +74 -88
- package/reference/rules/organization-os.md +71 -88
- package/reference/rules/package-taxonomy.md +11 -2
- package/reference/rules/platform.md +13 -7
- package/reference/rules/shared-types.md +36 -0
- package/reference/rules/task-tracking.md +30 -5
- package/reference/rules/ui.md +145 -3
- package/reference/rules/vibe-intents.md +271 -0
- package/reference/rules/vibe.md +17 -243
- package/reference/scaffold/core/organization-graph.mdx +112 -99
- package/reference/scaffold/core/organization-model.mdx +231 -215
- package/reference/scaffold/operations/propagation-pipeline.md +16 -17
- package/reference/scaffold/operations/scaffold-maintenance.md +22 -20
- package/reference/scaffold/operations/workflow-recipes.md +72 -20
- package/reference/scaffold/recipes/add-a-feature.md +156 -146
- package/reference/scaffold/recipes/add-a-resource.md +123 -117
- package/reference/scaffold/recipes/customize-crm-actions.md +28 -13
- package/reference/scaffold/recipes/customize-knowledge-browser.md +52 -117
- package/reference/scaffold/recipes/customize-organization-model.md +161 -149
- package/reference/scaffold/recipes/extend-a-base-entity.md +156 -140
- package/reference/scaffold/recipes/extend-content.md +265 -0
- package/reference/scaffold/recipes/extend-crm.md +16 -11
- package/reference/scaffold/recipes/extend-lead-gen.md +37 -21
- package/reference/scaffold/recipes/gate-by-feature-or-admin.md +160 -118
- package/reference/scaffold/recipes/index.md +6 -3
- package/reference/scaffold/recipes/query-the-knowledge-graph.md +23 -23
- package/reference/scaffold/reference/contracts.md +30 -56
- package/reference/scaffold/reference/feature-registry.md +3 -0
- package/reference/scaffold/reference/glossary.md +4 -4
- package/reference/scaffold/reference/system-interface-capabilities.md +5 -4
- package/reference/scaffold/ui/composition-extensibility.mdx +271 -232
- package/reference/scaffold/ui/customization.md +2 -2
- package/reference/scaffold/ui/feature-flags-and-gating.md +14 -6
- package/reference/scaffold/ui/feature-shell.mdx +277 -62
- package/reference/scaffold/ui/recipes.md +229 -197
- package/reference/sdk/cli-management.mdx +166 -33
- package/reference/sdk/cli.mdx +90 -13
- package/reference/sdk/concepts.mdx +2 -0
- package/reference/sdk/define-builders.mdx +76 -0
- package/reference/sdk/deployment/command-center.mdx +6 -2
- package/reference/sdk/deployment/execution-reference.mdx +64 -186
- package/reference/sdk/deployment/index.mdx +2 -0
- package/reference/sdk/exports.mdx +4 -4
- package/reference/sdk/framework/agent.mdx +52 -116
- package/reference/sdk/framework/index.mdx +46 -65
- package/reference/sdk/framework/project-structure.mdx +150 -205
- package/reference/sdk/framework/tutorial-system.mdx +2 -2
- package/reference/sdk/human-in-the-loop.mdx +152 -0
- package/reference/sdk/index.mdx +6 -7
- package/reference/sdk/platform-tools/adapters-platform.mdx +3 -1
- package/reference/sdk/platform-tools/index.mdx +12 -0
- package/reference/sdk/platform-tools/type-safety.mdx +4 -0
- package/reference/sdk/project-deployment-spec.mdx +131 -0
- package/reference/sdk/resources/index.mdx +21 -7
- package/reference/sdk/resources/patterns.mdx +54 -24
- package/reference/sdk/resources/types.mdx +7 -4
- package/reference/sdk/templates/data-enrichment.mdx +7 -3
- package/reference/sdk/templates/email-sender.mdx +139 -135
- package/reference/sdk/templates/lead-scorer.mdx +5 -1
- package/reference/sdk/templates/pdf-generator.mdx +155 -151
- package/reference/sdk/templates/recurring-job.mdx +195 -189
- package/reference/sdk/templates/text-classifier.mdx +4 -0
- package/reference/sdk/templates/web-scraper.mdx +139 -135
- package/reference/spine/spine-primer.md +135 -96
- package/reference/ui/exports.mdx +1 -0
- package/reference/ui/index.mdx +14 -7
- package/dist/types/worker/adapters/anymailfinder.d.ts +0 -14
- package/dist/types/worker/adapters/apify.d.ts +0 -14
- package/dist/types/worker/adapters/approval.d.ts +0 -23
- package/dist/types/worker/adapters/attio.d.ts +0 -22
- package/dist/types/worker/adapters/clickup.d.ts +0 -22
- package/dist/types/worker/adapters/create-adapter.d.ts +0 -41
- package/dist/types/worker/adapters/crm.d.ts +0 -20
- package/dist/types/worker/adapters/dropbox.d.ts +0 -14
- package/dist/types/worker/adapters/email.d.ts +0 -25
- package/dist/types/worker/adapters/execution.d.ts +0 -22
- package/dist/types/worker/adapters/gmail.d.ts +0 -14
- package/dist/types/worker/adapters/google-sheets.d.ts +0 -14
- package/dist/types/worker/adapters/index.d.ts +0 -33
- package/dist/types/worker/adapters/instantly.d.ts +0 -14
- package/dist/types/worker/adapters/lead.d.ts +0 -28
- package/dist/types/worker/adapters/list.d.ts +0 -9
- package/dist/types/worker/adapters/llm.d.ts +0 -45
- package/dist/types/worker/adapters/millionverifier.d.ts +0 -14
- package/dist/types/worker/adapters/notification.d.ts +0 -28
- package/dist/types/worker/adapters/pdf.d.ts +0 -22
- package/dist/types/worker/adapters/projects.d.ts +0 -20
- package/dist/types/worker/adapters/resend.d.ts +0 -14
- package/dist/types/worker/adapters/scheduler.d.ts +0 -25
- package/dist/types/worker/adapters/signature-api.d.ts +0 -14
- package/dist/types/worker/adapters/storage.d.ts +0 -33
- package/dist/types/worker/adapters/stripe.d.ts +0 -14
- package/dist/types/worker/adapters/tomba.d.ts +0 -14
- package/dist/types/worker/index.d.ts +0 -60
- package/dist/types/worker/platform.d.ts +0 -90
- package/dist/types/worker/utils.d.ts +0 -9
- package/reference/claude-config/Overview.md +0 -230
- package/reference/claude-config/hooks/post-edit-validate.mjs +0 -98
- package/reference/claude-config/hooks/scaffold-registry-reminder.mjs +0 -187
- package/reference/claude-config/hooks/tool-failure-recovery.mjs +0 -73
- package/reference/claude-config/registries/graph-skills.json +0 -4
- package/reference/claude-config/registries/knowledge-flags.json +0 -154
- package/reference/claude-config/registries/skill-coverage.json +0 -20
- package/reference/claude-config/rules/active-change-index.md +0 -22
- package/reference/claude-config/rules/agent-start-here.md +0 -22
- package/reference/claude-config/rules/deployment.md +0 -22
- package/reference/claude-config/rules/error-handling.md +0 -22
- package/reference/claude-config/rules/execution.md +0 -22
- package/reference/claude-config/rules/frontend.md +0 -22
- package/reference/claude-config/rules/observability.md +0 -22
- package/reference/claude-config/rules/operations.md +0 -22
- package/reference/claude-config/rules/organization-model.md +0 -22
- package/reference/claude-config/rules/organization-os.md +0 -22
- package/reference/claude-config/rules/package-taxonomy.md +0 -22
- package/reference/claude-config/rules/platform.md +0 -22
- package/reference/claude-config/rules/shared-types.md +0 -22
- package/reference/claude-config/rules/task-tracking.md +0 -22
- package/reference/claude-config/rules/topbar-actions.md +0 -70
- package/reference/claude-config/rules/ui.md +0 -22
- package/reference/claude-config/rules/vibe.md +0 -22
- package/reference/claude-config/scripts/statusline-command.js +0 -18
- package/reference/claude-config/settings.json +0 -30
- package/reference/claude-config/skills/client/SKILL.md +0 -201
- package/reference/claude-config/skills/deploy/SKILL.md +0 -159
- package/reference/claude-config/skills/dsp/SKILL.md +0 -66
- package/reference/claude-config/skills/elevasis/SKILL.md +0 -251
- package/reference/claude-config/skills/explore/SKILL.md +0 -78
- package/reference/claude-config/skills/git-sync/SKILL.md +0 -166
- package/reference/claude-config/skills/om/SKILL.md +0 -475
- package/reference/claude-config/skills/om/operations/build.md +0 -237
- package/reference/claude-config/skills/om/operations/codify-level-a.md +0 -109
- package/reference/claude-config/skills/om/operations/codify-level-b.md +0 -159
- package/reference/claude-config/skills/om/operations/customers.md +0 -114
- package/reference/claude-config/skills/om/operations/features.md +0 -88
- package/reference/claude-config/skills/om/operations/goals.md +0 -123
- package/reference/claude-config/skills/om/operations/identity.md +0 -97
- package/reference/claude-config/skills/om/operations/labels.md +0 -110
- package/reference/claude-config/skills/om/operations/offerings.md +0 -114
- package/reference/claude-config/skills/om/operations/roles.md +0 -104
- package/reference/claude-config/skills/om/operations/scaffold.md +0 -163
- package/reference/claude-config/skills/om/operations/techStack.md +0 -38
- package/reference/claude-config/skills/project/SKILL.md +0 -1114
- package/reference/claude-config/skills/run-ui/SKILL.md +0 -73
- package/reference/claude-config/skills/save/SKILL.md +0 -183
- package/reference/claude-config/skills/setup/SKILL.md +0 -290
- package/reference/claude-config/skills/status/SKILL.md +0 -59
- package/reference/claude-config/skills/submit-request/SKILL.md +0 -180
- package/reference/claude-config/skills/sync/SKILL.md +0 -47
- package/reference/claude-config/skills/tutorial/SKILL.md +0 -259
- package/reference/claude-config/skills/tutorial/progress-template.md +0 -74
- package/reference/claude-config/skills/tutorial/technical.md +0 -1303
- package/reference/claude-config/skills/tutorial/vibe-coder.md +0 -890
- package/reference/claude-config/sync-notes/2026-04-22-git-sync-and-sync-notes.md +0 -27
- package/reference/claude-config/sync-notes/2026-04-22-lead-gen-deliverability-removal.md +0 -30
- package/reference/claude-config/sync-notes/2026-04-24-test-utils-and-template-tests.md +0 -73
- package/reference/claude-config/sync-notes/2026-04-24-ui-consolidation-and-sdk-cli-train.md +0 -86
- package/reference/claude-config/sync-notes/2026-04-25-auth-role-system-and-settings-roles.md +0 -55
- package/reference/claude-config/sync-notes/2026-04-27-crm-hitl-action-layer-cutover.md +0 -97
- package/reference/claude-config/sync-notes/2026-04-27-lead-gen-substrate-train.md +0 -112
- package/reference/claude-config/sync-notes/2026-04-29-crm-state-and-lead-gen-processing-status.md +0 -93
- package/reference/claude-config/sync-notes/2026-05-02-crm-ownership-next-action.md +0 -58
- package/reference/claude-config/sync-notes/2026-05-02-template-hardcode-workos-config.md +0 -56
- package/reference/claude-config/sync-notes/2026-05-04-elevasis-workspace.md +0 -71
- package/reference/claude-config/sync-notes/2026-05-04-knowledge-bundle.md +0 -83
- package/reference/claude-config/sync-notes/2026-05-04-template-skills-run-ui-and-tutorial.md +0 -59
- package/reference/claude-config/sync-notes/2026-05-05-list-builder.md +0 -42
- package/reference/claude-config/sync-notes/2026-05-06-crm-spine.md +0 -60
- package/reference/claude-config/sync-notes/2026-05-06-sdk-changes-release-train.md +0 -37
- package/reference/claude-config/sync-notes/2026-05-07-sdk-changes-release-train.md +0 -34
- package/reference/claude-config/sync-notes/2026-05-08-resource-governance-scaffold-guidance.md +0 -38
- package/reference/claude-config/sync-notes/2026-05-09-clients-domain.md +0 -32
- package/reference/claude-config/sync-notes/2026-05-09-command-system.md +0 -33
- package/reference/claude-config/sync-notes/2026-05-09-resource-governance-and-misc.md +0 -69
- package/reference/claude-config/sync-notes/2026-05-12-sdk-ready-release-train.md +0 -30
- package/reference/claude-config/sync-notes/2026-05-14-organization-model-ontology-refactor.md +0 -45
- package/reference/claude-config/sync-notes/2026-05-15-om-skill-rename-and-write-family.md +0 -52
- package/reference/claude-config/sync-notes/2026-05-17-sdk-boundary-consolidation.md +0 -33
- package/reference/claude-config/sync-notes/2026-05-20-om-define-helpers.md +0 -32
- package/reference/claude-config/sync-notes/2026-05-22-access-model-and-right-panel.md +0 -43
- package/reference/claude-config/sync-notes/2026-05-22-lead-gen-tenant-config.md +0 -40
- package/reference/claude-config/sync-notes/2026-05-22-org-model-multi-file-split.md +0 -61
- package/reference/claude-config/sync-notes/2026-05-23-branding-names-to-identity.md +0 -49
- package/reference/claude-config/sync-notes/2026-05-23-lead-gen-manage-access.md +0 -31
- package/reference/claude-config/sync-notes/2026-05-23-om-deployment-drift-detection.md +0 -42
- package/reference/claude-config/sync-notes/2026-05-23-om-full-model-deploy-contract.md +0 -33
- package/reference/claude-config/sync-notes/2026-05-23-ui-sdk-package-fixes.md +0 -37
- package/reference/claude-config/sync-notes/2026-05-24-platform-invite-router-core-baseline.md +0 -28
- package/reference/claude-config/sync-notes/2026-05-24-system-interface-readiness.md +0 -43
- package/reference/claude-config/sync-notes/2026-05-25-invitation-login-loader.md +0 -26
- package/reference/claude-config/sync-notes/2026-05-25-om-topbar-requests.md +0 -33
- package/reference/claude-config/sync-notes/2026-05-25-system-interface-profile-registry-and-substrate.md +0 -35
- package/reference/claude-config/sync-notes/2026-05-25-tenant-om-scaffold-cli.md +0 -49
- package/reference/claude-config/sync-notes/2026-05-25-vibe-operate-intent.md +0 -47
- package/reference/claude-config/sync-notes/2026-05-28-om-snapshot-sdk-workflow-config.md +0 -33
- package/reference/claude-config/sync-notes/2026-05-30-client-source-and-om-profiles.md +0 -39
- package/reference/claude-config/sync-notes/2026-06-02-knowledge-nested-group-routing.md +0 -27
- package/reference/claude-config/sync-notes/2026-06-02-nest-projects-under-platform.md +0 -45
- package/reference/claude-config/sync-notes/2026-06-03-skill-autogen-and-client-skill.md +0 -34
- package/reference/claude-config/sync-notes/2026-06-04-scaffold-registry-lane-severity.md +0 -34
- package/reference/claude-config/sync-notes/2026-06-05-appearance-app-mode-decouple.md +0 -29
- package/reference/claude-config/sync-notes/2026-06-05-ontology-endpoint-rename-and-knowledge-browser-ui.md +0 -86
- package/reference/claude-config/sync-notes/2026-06-06-om-build-systems-scaffold.md +0 -47
- package/reference/claude-config/sync-notes/2026-06-06-om-item-copy-references.md +0 -50
- package/reference/claude-config/sync-notes/2026-06-08-knowledge-base-page-not-found-fix.md +0 -76
- package/reference/claude-config/sync-notes/2026-06-09-agent-sessions-public-agent-chat-route.md +0 -75
- package/reference/claude-config/sync-notes/2026-06-09-sdk-cli-load-org-model-resolution.md +0 -42
- package/reference/claude-config/sync-notes/2026-06-12-agent-grants-visualizer-operations.md +0 -30
- package/reference/claude-config/sync-notes/2026-06-14-session-ux-and-project-cli-json.md +0 -33
- package/reference/claude-config/sync-notes/2026-06-14-shared-session-conversation-view.md +0 -26
- package/reference/claude-config/sync-notes/2026-06-15-session-chat-zero-wiring.md +0 -46
- package/reference/claude-config/sync-notes/2026-06-17-agent-session-ux-features.md +0 -34
- package/reference/claude-config/sync-notes/2026-06-25-shared-page-scroll-contract-guard.md +0 -52
- package/reference/claude-config/sync-notes/2026-06-26-leadgen-overview-om-telemetry.md +0 -47
- package/reference/claude-config/sync-notes/2026-07-21-agent-scaffold-hardening.md +0 -75
- package/reference/claude-config/sync-notes/2026-07-23-agent-session-memory.md +0 -49
- package/reference/claude-config/sync-notes/2026-07-23-workos-org-marker.md +0 -50
- package/reference/claude-config/sync-notes/2026-07-24-claude-5-models-and-session-surface-fixes.md +0 -116
- package/reference/claude-config/sync-notes/2026-07-27-agent-strict-output-and-turn-drift.md +0 -73
- package/reference/claude-config/sync-notes/2026-07-28-agent-reply-is-its-own-field.md +0 -84
- package/reference/claude-config/sync-notes/2026-07-30-login-screen-and-member-provisioning-state.md +0 -114
- package/reference/claude-config/sync-notes/2026-08-02-auth-guard-defaults-and-truncation-fix.md +0 -122
- package/reference/claude-config/sync-notes/2026-08-03-agent-prose-escape-normalization.md +0 -88
- package/reference/claude-config/sync-notes/2026-08-03-cli-gateway-errors-and-request-timeout.md +0 -120
- package/reference/claude-config/sync-notes/README.md +0 -43
- package/reference/sdk/framework/interaction-guidance.mdx +0 -182
- package/reference/sdk/framework/memory.mdx +0 -326
- package/reference/sdk/framework/resource-documentation.mdx +0 -90
- package/reference/sdk/roadmap.mdx +0 -164
|
@@ -1,146 +1,159 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Organization Model
|
|
3
|
-
description: Organization OS Model layer documentation for the System hierarchy, semantic domains, resource descriptors, and curated @elevasis/core public API.
|
|
4
|
-
---
|
|
1
|
+
---
|
|
2
|
+
title: Organization Model
|
|
3
|
+
description: Organization OS Model layer documentation for the System hierarchy, semantic domains, resource descriptors, and curated @elevasis/core public API.
|
|
4
|
+
---
|
|
5
5
|
<!-- @generated by packages/sdk/scripts/copy-reference-docs.mjs -- DO NOT EDIT -->
|
|
6
6
|
<!-- Regenerate: pnpm scaffold:sync -->
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
## Overview
|
|
10
|
-
|
|
11
|
-
The organization model is the semantic contract that maps an organization's System hierarchy, business semantics, shell navigation, resource governance, action/entity vocabulary, and graph binding. It is schema-first, versioned, and validated.
|
|
12
|
-
|
|
13
|
-
The model is authored in `@repo/core` and published through the curated `@elevasis/core/organization-model` surface.
|
|
14
|
-
|
|
15
|
-
## Source of Truth
|
|
16
|
-
|
|
17
|
-
- `packages/core/src/organization-model/schema.ts`
|
|
18
|
-
- `packages/core/src/organization-model/types.ts`
|
|
19
|
-
- `packages/core/src/organization-model/defaults.ts`
|
|
20
|
-
- `packages/core/src/organization-model/helpers.ts`
|
|
21
|
-
- `packages/core/src/organization-model/graph/link.ts`
|
|
22
|
-
- `packages/core/src/organization-model/published.ts`
|
|
23
|
-
- `packages/core/src/__tests__/template-core-compatibility.test.ts`
|
|
24
|
-
|
|
25
|
-
## Contract Shape
|
|
26
|
-
|
|
27
|
-
Top-level fields on `OrganizationModel`:
|
|
28
|
-
|
|
29
|
-
- `version`
|
|
30
|
-
- `
|
|
31
|
-
- `
|
|
32
|
-
- `
|
|
33
|
-
- `
|
|
34
|
-
- `
|
|
35
|
-
- `
|
|
36
|
-
- `
|
|
37
|
-
- `
|
|
38
|
-
- `
|
|
39
|
-
- `
|
|
40
|
-
- `
|
|
41
|
-
- `
|
|
42
|
-
- `
|
|
43
|
-
- `
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
systems
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
- `
|
|
70
|
-
- `
|
|
71
|
-
- `
|
|
72
|
-
- `
|
|
73
|
-
- `
|
|
74
|
-
- `
|
|
75
|
-
- `
|
|
76
|
-
- `
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
|
|
11
|
+
The organization model is the semantic contract that maps an organization's System hierarchy, business semantics, shell navigation, resource governance, action/entity vocabulary, and graph binding. It is schema-first, versioned, and validated.
|
|
12
|
+
|
|
13
|
+
The model is authored in `@repo/core` and published through the curated `@elevasis/core/organization-model` surface.
|
|
14
|
+
|
|
15
|
+
## Source of Truth
|
|
16
|
+
|
|
17
|
+
- `packages/core/src/organization-model/schema.ts`
|
|
18
|
+
- `packages/core/src/organization-model/types.ts`
|
|
19
|
+
- `packages/core/src/organization-model/defaults.ts`
|
|
20
|
+
- `packages/core/src/organization-model/helpers.ts`
|
|
21
|
+
- `packages/core/src/organization-model/graph/link.ts`
|
|
22
|
+
- `packages/core/src/organization-model/published.ts`
|
|
23
|
+
- `packages/core/src/__tests__/template-core-compatibility.test.ts`
|
|
24
|
+
|
|
25
|
+
## Contract Shape
|
|
26
|
+
|
|
27
|
+
Top-level fields on `OrganizationModel`:
|
|
28
|
+
|
|
29
|
+
- `version`
|
|
30
|
+
- `snapshotHash`
|
|
31
|
+
- `domainMetadata`
|
|
32
|
+
- `branding`
|
|
33
|
+
- `navigation`
|
|
34
|
+
- `identity`
|
|
35
|
+
- `clients`
|
|
36
|
+
- `customers`
|
|
37
|
+
- `offerings`
|
|
38
|
+
- `roles`
|
|
39
|
+
- `goals`
|
|
40
|
+
- `systems`
|
|
41
|
+
- `ontology`
|
|
42
|
+
- `resources`
|
|
43
|
+
- `topology`
|
|
44
|
+
- `actions`
|
|
45
|
+
- `entities`
|
|
46
|
+
- `knowledge`
|
|
47
|
+
|
|
48
|
+
The pure collection domains are id-keyed maps: `systems`, `roles`, `goals`, `clients`, `customers`, `offerings`, `resources`, `actions`, `entities`, and `knowledge`. `ontology` is an `OntologyScope` object (not an id-keyed map at the top level) and `topology` is a relationships record. The map key must match the entry `id` for id-keyed domains. Entries carry `order` for deterministic ordered views; use `listDomain(record)` when order matters. `sales`, `prospecting`, `projects`, `statuses`, and `policies` were removed from the top-level contract; do not author against them.
|
|
49
|
+
|
|
50
|
+
Resource identity is authored inside `OrganizationModel.resources`. Runtime workflows, agents, integrations, and scripts import those descriptors, derive `resourceId` and kind from them, and attach executable behavior in operations code.
|
|
51
|
+
|
|
52
|
+
## System Shape
|
|
53
|
+
|
|
54
|
+
`OrganizationModel.systems` is the canonical semantic domain map. Hierarchy is authored with recursive `systems`; dotted paths such as `sales.crm` are derived from position in that tree. `subsystems` is a deprecated compatibility alias — it is still accepted and kept in sync with `systems` during parse, but new authoring should use `systems`. `parentSystemId` and `id` remain accepted compatibility fields during the migration.
|
|
55
|
+
|
|
56
|
+
{/* doc-snippet:skip: illustrative excerpt, not a standalone compilable file */}
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
systems: {
|
|
60
|
+
dashboard: { id: 'dashboard', order: 10, label: 'Dashboard', lifecycle: 'active' },
|
|
61
|
+
sales: { id: 'sales', order: 20, label: 'Sales', lifecycle: 'active' },
|
|
62
|
+
clients: { id: 'clients', order: 30, label: 'Clients', lifecycle: 'active' },
|
|
63
|
+
projects: { id: 'projects', order: 40, label: 'Projects', lifecycle: 'active' }
|
|
64
|
+
}
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Authored fields:
|
|
68
|
+
|
|
69
|
+
- `id`
|
|
70
|
+
- `label`
|
|
71
|
+
- `description`
|
|
72
|
+
- `kind`
|
|
73
|
+
- `parentSystemId`
|
|
74
|
+
- `ui`
|
|
75
|
+
- `lifecycle`
|
|
76
|
+
- `responsibleRoleId`
|
|
77
|
+
- `governedByKnowledge`
|
|
78
|
+
- `actions`
|
|
79
|
+
- `drivesGoals`
|
|
80
|
+
- `apiInterface`
|
|
81
|
+
- `config`
|
|
82
|
+
- `ontology`
|
|
83
|
+
- `systems`
|
|
84
|
+
- `order`
|
|
85
|
+
|
|
86
|
+
Systems describe ownership, hierarchy, lifecycle, access, and governance. Sidebar presentation lives in `navigation.sidebar`, not on System entries. UI-backed Systems may still provide `ui.path` for route matching during the migration, but `ui.surfaces` is not an authored contract. `lifecycle` replaces the old feature enabled/dev-only split. `config` holds System-local JSON settings; `ontology` holds System-owned object, action, catalog, link, event, and other ontology records; `apiInterface` is the thin platform API-readiness marker (see `System Interface` in the glossary).
|
|
87
|
+
|
|
88
|
+
## Navigation Shape
|
|
89
|
+
|
|
90
|
+
`OrganizationModel.navigation.sidebar` is the authored shell tree. It has `primary` and `bottom` sections whose records contain recursive group nodes and routeable surface nodes:
|
|
91
|
+
|
|
92
|
+
{/* doc-snippet:skip: illustrative excerpt, not a standalone compilable file */}
|
|
93
|
+
|
|
94
|
+
```ts
|
|
95
|
+
navigation: {
|
|
96
|
+
sidebar: {
|
|
97
|
+
primary: {
|
|
98
|
+
dashboard: {
|
|
99
|
+
type: 'surface',
|
|
100
|
+
order: 10,
|
|
101
|
+
label: 'Dashboard',
|
|
102
|
+
path: '/',
|
|
103
|
+
surfaceType: 'dashboard',
|
|
104
|
+
targets: { systems: ['dashboard'] }
|
|
105
|
+
},
|
|
106
|
+
business: {
|
|
107
|
+
type: 'group',
|
|
108
|
+
order: 20,
|
|
109
|
+
label: 'Business',
|
|
110
|
+
children: {
|
|
111
|
+
sales: {
|
|
112
|
+
type: 'surface',
|
|
113
|
+
order: 10,
|
|
114
|
+
label: 'Sales',
|
|
115
|
+
path: '/sales',
|
|
116
|
+
surfaceType: 'page',
|
|
117
|
+
targets: { systems: ['sales'] }
|
|
118
|
+
},
|
|
119
|
+
clients: {
|
|
120
|
+
type: 'surface',
|
|
121
|
+
order: 20,
|
|
122
|
+
label: 'Clients',
|
|
123
|
+
path: '/clients',
|
|
124
|
+
surfaceType: 'list',
|
|
125
|
+
targets: { systems: ['clients'] }
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
bottom: {}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
Dashboard is ordered before Business in the primary sidebar. Business is a navigation group only; it is not a System and it is not a URL namespace. Routeable leaves are projected into flat surface DTOs by `projectOrganizationSurfaces(model)`.
|
|
136
|
+
|
|
137
|
+
## Graph IDs and Resource Descriptors
|
|
138
|
+
|
|
139
|
+
Cross-collection links use kind-prefixed graph IDs:
|
|
140
|
+
|
|
141
|
+
- `system:sales.crm`
|
|
142
|
+
- `integration:instantly`
|
|
143
|
+
- `resource:lead-import`
|
|
144
|
+
- `action:operations.queue.review`
|
|
145
|
+
|
|
146
|
+
Resource identity is authored in the OM Resources domain. Operations imports descriptors from `organizationModel.resources` and derives runtime `resourceId` / `type` while attaching executable behavior.
|
|
147
|
+
|
|
148
|
+
{/* doc-snippet:skip: `systems` in resourceGovernanceModel refers to the System map authored earlier in a tenant's own organization-model.ts, not a local declaration */}
|
|
149
|
+
|
|
150
|
+
```ts
|
|
151
|
+
import { defineResources } from '@elevasis/core/organization-model'
|
|
152
|
+
|
|
141
153
|
export const resourceDescriptors = defineResources({
|
|
142
154
|
leadImport: {
|
|
143
155
|
id: 'lgn-01c-apollo-import-workflow',
|
|
156
|
+
order: 10,
|
|
144
157
|
title: 'Apollo Import',
|
|
145
158
|
description: 'Imports Apollo company records into the lead generation pipeline.',
|
|
146
159
|
kind: 'workflow',
|
|
@@ -153,82 +166,85 @@ export const resourceDescriptors = defineResources({
|
|
|
153
166
|
},
|
|
154
167
|
codeRefs: [
|
|
155
168
|
{
|
|
156
|
-
path: 'packages/elevasis
|
|
157
|
-
role: 'entrypoint',
|
|
158
|
-
symbol: 'lgnApolloImportWorkflow'
|
|
159
|
-
}
|
|
160
|
-
]
|
|
161
|
-
}
|
|
162
|
-
})
|
|
163
|
-
|
|
164
|
-
export const resourceGovernanceModel = {
|
|
165
|
-
systems,
|
|
166
|
-
resources: resourceDescriptors
|
|
167
|
-
} as const
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
Legacy `sys.*` paths may still appear in older examples and external compatibility mirrors.
|
|
171
|
-
For new Organization OS examples, prefer the current semantic System path.
|
|
172
|
-
|
|
173
|
-
## Domain Semantics
|
|
174
|
-
|
|
175
|
-
The model keeps business semantics in named domains:
|
|
176
|
-
|
|
177
|
-
- `identity`, `customers`, `offerings`, `roles`, `goals` -- organizational reality
|
|
178
|
-
- `systems` -- bounded contexts that group governed operational resources and system-local content
|
|
179
|
-
- `actions` -- stable business verbs exposed or consumed by systems
|
|
180
|
-
- `entities` -- durable business nouns and their semantic links
|
|
181
|
-
- `resources` -- governance-only workflow, agent, integration, and script descriptors
|
|
182
|
-
- `
|
|
183
|
-
|
|
184
|
-
|
|
169
|
+
path: 'packages/elevasis/operations/src/sales/prospecting/scrape/apollo-import.ts',
|
|
170
|
+
role: 'entrypoint',
|
|
171
|
+
symbol: 'lgnApolloImportWorkflow'
|
|
172
|
+
}
|
|
173
|
+
]
|
|
174
|
+
}
|
|
175
|
+
})
|
|
176
|
+
|
|
177
|
+
export const resourceGovernanceModel = {
|
|
178
|
+
systems,
|
|
179
|
+
resources: resourceDescriptors
|
|
180
|
+
} as const
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
Legacy `sys.*` paths may still appear in older examples and external compatibility mirrors.
|
|
184
|
+
For new Organization OS examples, prefer the current semantic System path.
|
|
185
|
+
|
|
186
|
+
## Domain Semantics
|
|
187
|
+
|
|
188
|
+
The model keeps business semantics in named domains:
|
|
189
|
+
|
|
190
|
+
- `identity`, `customers`, `offerings`, `roles`, `goals` -- organizational reality
|
|
191
|
+
- `systems` -- bounded contexts that group governed operational resources and system-local content
|
|
192
|
+
- `actions` -- stable business verbs exposed or consumed by systems
|
|
193
|
+
- `entities` -- durable business nouns and their semantic links
|
|
194
|
+
- `resources` -- governance-only workflow, agent, integration, and script descriptors
|
|
195
|
+
- `knowledge` -- playbooks, strategies, references, and graph-governing links
|
|
196
|
+
|
|
185
197
|
System-local operational catalogs live under `System.ontology.catalogTypes`, including pipeline, stage, template, template-step, status-flow, and status records. System-local settings live in `System.config`. The legacy compound and status domains should not be used for new authoring.
|
|
186
|
-
|
|
187
|
-
## Authoring and Resolution
|
|
188
|
-
|
|
189
|
-
- `defineOrganizationModel()` is a typed authoring helper.
|
|
190
|
-
- `resolveOrganizationModel(partial)` deep-merges a partial override into `DEFAULT_ORGANIZATION_MODEL` and validates the result.
|
|
191
|
-
- `createFoundationOrganizationModel(partial)` resolves the canonical model and returns template-facing helpers.
|
|
192
|
-
- Plain objects merge recursively.
|
|
193
|
-
- Id-keyed domain maps merge additively by key.
|
|
194
|
-
- Arrays replace defaults.
|
|
195
|
-
|
|
196
|
-
## Referential Integrity
|
|
197
|
-
|
|
198
|
-
`OrganizationModelSchema` validates:
|
|
199
|
-
|
|
200
|
-
- unique System IDs
|
|
201
|
-
- ancestor existence for dotted System IDs and `parentSystemId`
|
|
202
|
-
- UI path rules for Systems with UI presence
|
|
203
|
-
- valid sidebar positions
|
|
204
|
-
- reality-domain cross references such as offering target segments and role reporting lines
|
|
205
|
-
- system, resource, role, knowledge, and goal cross references used by resource governance
|
|
206
|
-
|
|
207
|
-
`DeploymentSpec` remains the runtime/deploy assembly around these descriptors. It is not the source of resource identity.
|
|
208
|
-
|
|
209
|
-
## Provider Integration
|
|
210
|
-
|
|
211
|
-
`ElevasisSystemsProvider` uses the organization model to:
|
|
212
|
-
|
|
213
|
-
1. validate each manifest's `systemId`
|
|
214
|
-
2. resolve effective system access
|
|
215
|
-
3. derive sidebar entries from `navigation.sidebar`
|
|
216
|
-
4. expose shell helpers such as `childrenOf`, `ancestorsOf`, and `findByPath`
|
|
217
|
-
5. bridge the operations graph into shared UI
|
|
218
|
-
|
|
219
|
-
## Published Package
|
|
220
|
-
|
|
221
|
-
`@elevasis/core` exposes a curated browser-safe surface:
|
|
222
|
-
|
|
223
|
-
- root barrel
|
|
224
|
-
- `./
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
```
|
|
198
|
+
|
|
199
|
+
## Authoring and Resolution
|
|
200
|
+
|
|
201
|
+
- `defineOrganizationModel()` is a typed authoring helper.
|
|
202
|
+
- `resolveOrganizationModel(partial)` deep-merges a partial override into `DEFAULT_ORGANIZATION_MODEL` and validates the result.
|
|
203
|
+
- `createFoundationOrganizationModel(partial)` resolves the canonical model and returns template-facing helpers.
|
|
204
|
+
- Plain objects merge recursively.
|
|
205
|
+
- Id-keyed domain maps merge additively by key.
|
|
206
|
+
- Arrays replace defaults.
|
|
207
|
+
|
|
208
|
+
## Referential Integrity
|
|
209
|
+
|
|
210
|
+
`OrganizationModelSchema` validates:
|
|
211
|
+
|
|
212
|
+
- unique System IDs
|
|
213
|
+
- ancestor existence for dotted System IDs and `parentSystemId`
|
|
214
|
+
- UI path rules for Systems with UI presence
|
|
215
|
+
- valid sidebar positions
|
|
216
|
+
- reality-domain cross references such as offering target segments and role reporting lines
|
|
217
|
+
- system, resource, role, knowledge, and goal cross references used by resource governance
|
|
218
|
+
|
|
219
|
+
`DeploymentSpec` remains the runtime/deploy assembly around these descriptors. It is not the source of resource identity.
|
|
220
|
+
|
|
221
|
+
## Provider Integration
|
|
222
|
+
|
|
223
|
+
`ElevasisSystemsProvider` uses the organization model to:
|
|
224
|
+
|
|
225
|
+
1. validate each manifest's `systemId`
|
|
226
|
+
2. resolve effective system access
|
|
227
|
+
3. derive sidebar entries from `navigation.sidebar`
|
|
228
|
+
4. expose shell helpers such as `childrenOf`, `ancestorsOf`, and `findByPath`
|
|
229
|
+
5. bridge the operations graph into shared UI
|
|
230
|
+
|
|
231
|
+
## Published Package
|
|
232
|
+
|
|
233
|
+
`@elevasis/core` exposes a curated browser-safe surface with six subpaths:
|
|
234
|
+
|
|
235
|
+
- `.` (root barrel)
|
|
236
|
+
- `./auth`
|
|
237
|
+
- `./test-utils`
|
|
238
|
+
- `./organization-model`
|
|
239
|
+
- `./entities`
|
|
240
|
+
- `./knowledge`
|
|
241
|
+
|
|
242
|
+
Only these subpaths are the legitimate published contract; any other `@repo/core/<subpath>` (`/server`, `/platform`, `/execution`, `/commands`, `/operations`, `/resilience`, `/supabase`, ...) is workspace-internal and not part of the SDK surface. The organization graph builder remains monorepo-internal until there is a concrete external contract need.
|
|
243
|
+
|
|
244
|
+
## Verification
|
|
245
|
+
|
|
246
|
+
```bash
|
|
247
|
+
pnpm --filter @repo/core test -- organization-model
|
|
248
|
+
pnpm --filter @repo/core build:publish
|
|
249
|
+
pnpm -C external/_template/core test
|
|
250
|
+
```
|
|
@@ -31,19 +31,18 @@ Layer 3: Sync Verification (pnpm sync:verify)
|
|
|
31
31
|
|
|
32
32
|
## Layer 1: Source Generation
|
|
33
33
|
|
|
34
|
-
`pnpm scaffold:sync` is the meta-script that regenerates all derived documentation and validates the output. It chains
|
|
34
|
+
`pnpm scaffold:sync` is the meta-script that regenerates all derived documentation and validates the output. It chains six sub-scripts:
|
|
35
35
|
|
|
36
|
-
| Script
|
|
37
|
-
|
|
|
38
|
-
| `scaffold:generate`
|
|
39
|
-
| `knowledge:generate`
|
|
40
|
-
| `gen:sdk-catalog`
|
|
41
|
-
| `gen:sdk-adapters`
|
|
42
|
-
| `copy-docs`
|
|
43
|
-
| `sdk-ref:
|
|
44
|
-
| `sdk-ref:check` | Generated SDK reference artifacts | Freshness validation for `packages/sdk/reference/_reference-manifest.json` and `_navigation.md` |
|
|
36
|
+
| Script | Input | Output |
|
|
37
|
+
| -------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------ |
|
|
38
|
+
| `scaffold:generate` | Scaffold contract and feature-registry sources | `packages/core/src/reference/_generated/**`, `packages/ui/src/scaffold/_generated/feature-registry.md` |
|
|
39
|
+
| `knowledge:generate` | Elevasis core knowledge nodes and UI knowledge body sources | Generated knowledge nodes and UI knowledge bodies |
|
|
40
|
+
| `gen:sdk-catalog` | SDK catalog source definitions | SDK catalog artifacts |
|
|
41
|
+
| `gen:sdk-adapters` | SDK adapter definitions | SDK adapter artifacts |
|
|
42
|
+
| `copy-docs` | SDK docs, package-owned reference docs, scaffold docs, and `_template/.claude` config | `packages/sdk/reference/**` copied docs, `_reference-manifest.json`, and `_navigation.md` |
|
|
43
|
+
| `sdk-ref:check` | Generated SDK reference artifacts | Freshness validation for `packages/sdk/reference/_reference-manifest.json` and `_navigation.md` |
|
|
45
44
|
|
|
46
|
-
The final `sdk-ref:check` step validates that the reference artifacts are consistent. Exit 1 if drifted.
|
|
45
|
+
`copy-docs` (`packages/sdk/scripts/copy-reference-docs.mjs`) atomically regenerates `_reference-manifest.json` and `_navigation.md` itself as its own Phase 5, via the same `buildAllArtifacts()`/`writeArtifacts()` functions the standalone `sdk-ref:generate` script runs -- so there is no separate `sdk-ref:generate` step in this chain; running it again after `copy-docs` would just recompute an identical result. The final `sdk-ref:check` step validates that the reference artifacts are consistent. Exit 1 if drifted.
|
|
47
46
|
|
|
48
47
|
### Trigger Points
|
|
49
48
|
|
|
@@ -63,12 +62,12 @@ Drift is healed at the moment it would otherwise leak downstream. This is cheape
|
|
|
63
62
|
`/external sync` now treats the scaffold registry as the execution contract rather than relying on tier prose alone.
|
|
64
63
|
The canonical ownership vocabulary is:
|
|
65
64
|
|
|
66
|
-
| Category | Strategy examples
|
|
67
|
-
| ------------- |
|
|
68
|
-
| `replace` | `replace-all`
|
|
65
|
+
| Category | Strategy examples | Meaning |
|
|
66
|
+
| ------------- | ------------------------------------------ | ------------------------------------------------------------------- |
|
|
67
|
+
| `replace` | `replace-all` | Template-managed surface; copy from template baseline |
|
|
69
68
|
| `merge` | `merge-baseline`, `preserve-on-divergence` | Merge-aware surface; preserve project customizations where required |
|
|
70
|
-
| `never-touch` | `verify-only`
|
|
71
|
-
| `generated` | `generated-freshness`
|
|
69
|
+
| `never-touch` | `verify-only` | Project-owned surface; planner may report drift but never writes |
|
|
70
|
+
| `generated` | `generated-freshness` | Generated surface; verify/regen instead of copying |
|
|
72
71
|
|
|
73
72
|
Current command helpers:
|
|
74
73
|
|
|
@@ -127,7 +126,7 @@ The external skill doc (`.claude/skills/external/SKILL.md`) remains the workflow
|
|
|
127
126
|
```bash
|
|
128
127
|
pnpm sync:verify # Post-sync assertion (exit 1 on failures)
|
|
129
128
|
pnpm sync:verify --pre # Pre-sync drift report (always exit 0)
|
|
130
|
-
pnpm sync:verify --
|
|
129
|
+
pnpm sync:verify -- nirvana-marketing # Single project
|
|
131
130
|
```
|
|
132
131
|
|
|
133
132
|
### Integration Points
|
|
@@ -25,24 +25,24 @@ Scaffold docs are co-located with their owning package and copied into the SDK r
|
|
|
25
25
|
|
|
26
26
|
### Source-to-Destination Map
|
|
27
27
|
|
|
28
|
-
| Content
|
|
29
|
-
|
|
|
30
|
-
| Organization Model
|
|
31
|
-
| Organization Graph
|
|
32
|
-
| Glossary
|
|
33
|
-
| Contracts (auto-gen)
|
|
28
|
+
| Content | Source | SDK Reference Destination |
|
|
29
|
+
| ---------------------------------------- | ------------------------------------------------------------------------- | ----------------------------------------------------- |
|
|
30
|
+
| Organization Model | `packages/core/src/organization-model/organization-model.mdx` | `scaffold/core/organization-model.mdx` |
|
|
31
|
+
| Organization Graph | `packages/core/src/organization-model/organization-graph.mdx` | `scaffold/core/organization-graph.mdx` |
|
|
32
|
+
| Glossary | `packages/core/src/reference/glossary.md` | `scaffold/reference/glossary.md` |
|
|
33
|
+
| Contracts (auto-gen) | `packages/core/src/reference/_generated/contracts.md` | `scaffold/reference/contracts.md` |
|
|
34
34
|
| System Interface Capabilities (auto-gen) | `packages/core/src/reference/_generated/system-interface-capabilities.md` | `scaffold/reference/system-interface-capabilities.md` |
|
|
35
|
-
| UI Recipes
|
|
36
|
-
| System Flags & Gating
|
|
37
|
-
| Customization
|
|
38
|
-
| System Shell
|
|
39
|
-
| Composition & Extensibility
|
|
40
|
-
| System Registry (auto-gen)
|
|
41
|
-
| Scaffold Index
|
|
42
|
-
| Pathway Recipes
|
|
43
|
-
| Workflow Recipes
|
|
44
|
-
| Propagation Pipeline
|
|
45
|
-
| This doc
|
|
35
|
+
| UI Recipes | `packages/ui/src/scaffold/recipes.md` | `scaffold/ui/recipes.md` |
|
|
36
|
+
| System Flags & Gating | `packages/ui/src/scaffold/feature-flags-and-gating.md` | `scaffold/ui/feature-flags-and-gating.md` |
|
|
37
|
+
| Customization | `packages/ui/src/scaffold/customization.md` | `scaffold/ui/customization.md` |
|
|
38
|
+
| System Shell | `packages/ui/src/scaffold/feature-shell.mdx` | `scaffold/ui/feature-shell.mdx` |
|
|
39
|
+
| Composition & Extensibility | `packages/ui/src/scaffold/composition-extensibility.mdx` | `scaffold/ui/composition-extensibility.mdx` |
|
|
40
|
+
| System Registry (auto-gen) | `packages/ui/src/scaffold/_generated/feature-registry.md` | `scaffold/reference/feature-registry.md` |
|
|
41
|
+
| Scaffold Index | `packages/sdk/docs/scaffold/index.mdx` | `scaffold/index.mdx` |
|
|
42
|
+
| Pathway Recipes | `packages/sdk/docs/scaffold/recipes/` | `scaffold/recipes/` |
|
|
43
|
+
| Workflow Recipes | `packages/sdk/docs/scaffold/operations/workflow-recipes.md` | `scaffold/operations/workflow-recipes.md` |
|
|
44
|
+
| Propagation Pipeline | `packages/sdk/docs/scaffold/operations/propagation-pipeline.md` | `scaffold/operations/propagation-pipeline.md` |
|
|
45
|
+
| This doc | `packages/sdk/docs/scaffold/operations/scaffold-maintenance.md` | `scaffold/operations/scaffold-maintenance.md` |
|
|
46
46
|
|
|
47
47
|
---
|
|
48
48
|
|
|
@@ -65,7 +65,8 @@ Output: `packages/core/src/reference/_generated/contracts.md`
|
|
|
65
65
|
Generated by `scripts/monorepo/generate-scaffold-contracts.js` from:
|
|
66
66
|
|
|
67
67
|
- `packages/core/src/organization-model/domains/systems.ts` -- `SYSTEM_INTERFACE_PROFILES`
|
|
68
|
-
- `packages/core/src/
|
|
68
|
+
- `packages/core/src/organization-model/readiness/` -- generic derived-readiness engine (`computeInterfaceReadiness`)
|
|
69
|
+
- `packages/core/src/business/acquisition/ontology-validation.ts` -- built-in lead-gen/CRM readiness contracts and profile registration
|
|
69
70
|
|
|
70
71
|
Output: `packages/core/src/reference/_generated/system-interface-capabilities.md`
|
|
71
72
|
|
|
@@ -99,12 +100,13 @@ Generated files should never be edited manually. If the output is wrong, fix the
|
|
|
99
100
|
|
|
100
101
|
## SDK Build Pipeline (Reference Copy)
|
|
101
102
|
|
|
102
|
-
`packages/sdk/scripts/copy-reference-docs.mjs` runs during `pnpm --filter @elevasis/sdk build` and has
|
|
103
|
+
`packages/sdk/scripts/copy-reference-docs.mjs` runs during `pnpm --filter @elevasis/sdk build` (and as the `copy-docs` root script) and has five phases:
|
|
103
104
|
|
|
104
105
|
1. **Phase 1:** Copies SDK public docs from `apps/docs/content/docs/sdk/` with link rewriting and MDX escape stripping
|
|
105
106
|
2. **Phase 2:** Copies package-owned reference docs declared in reference manifests
|
|
106
107
|
3. **Phase 3:** Copies scaffold docs from co-located package sources using the `SCAFFOLD_COPIES` map
|
|
107
|
-
4. **Phase 4:**
|
|
108
|
+
4. **Phase 4:** Generates a pointer doc (`claude-config.md`) to the tenant's own `.claude/` config instead of bundling it wholesale
|
|
109
|
+
5. **Phase 5 (F14):** Atomically regenerates `_reference-manifest.json` and `_navigation.md` via the same `buildAllArtifacts()`/`writeArtifacts()` functions the standalone `sdk-ref:generate` script runs -- this happens after the wipe-and-recopy above because the orphan-reachability check inside `buildAllArtifacts()` walks the output directory. This closes the window where `packages/sdk/reference/` could sit without those two files between a `copy-docs` run and a separate `sdk-ref:generate` run, so a chain that already runs `copy-docs` never needs a following `sdk-ref:generate` step -- it would just recompute an identical result.
|
|
108
110
|
|
|
109
111
|
The output lands in `packages/sdk/reference/` which is included in the npm package's `files` array. External projects access it via `operations/node_modules/@elevasis/sdk/reference/`.
|
|
110
112
|
|