@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,163 +0,0 @@
|
|
|
1
|
-
# Scaffold: New OM Entries via `om:scaffold:*` CLI
|
|
2
|
-
|
|
3
|
-
`om:scaffold:*` is the guided-creation surface for adding new entries to the tenant Organization Model. Each command prompts for missing fields, prints the proposed TypeScript / MDX block under `--dry-run`, and (when run without `--dry-run`) writes into the canonical authoring file under `core/config/organization-model/**` or `core/config/knowledge/nodes/`.
|
|
4
|
-
|
|
5
|
-
This operation is invoked by `/om` when intent classifies as **Codify-new-entry** (a net-new System, Resource, Role, Knowledge node, or a fill-pass against a conformance-gap JSON) rather than a Level-A field edit. For existing-field edits, dispatch to `codify-level-a.md` instead.
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## When to Use
|
|
10
|
-
|
|
11
|
-
| Intent signal | Dispatch |
|
|
12
|
-
| ----------------------------------------------- | -------------------------------- |
|
|
13
|
-
| "Add a new system for …", "we have an X system" | `om:scaffold:system` |
|
|
14
|
-
| "Add a workflow / resource called …" | `om:scaffold:resource` |
|
|
15
|
-
| "Add a role …", "we need a … role" | `om:scaffold:role` |
|
|
16
|
-
| "Add a knowledge node / playbook / strategy …" | `om:scaffold:knowledge` |
|
|
17
|
-
| Conformance gate produced a gap JSON to apply | `om:scaffold:fill --gaps <path>` |
|
|
18
|
-
|
|
19
|
-
For existing-field edits (changing a description, toggling a system, renaming a label), use the Codify Level-A ceremony — do not scaffold.
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## CLI Surface
|
|
24
|
-
|
|
25
|
-
All commands run from inside `external/<project>/` (or any descendant — `elevasis-sdk` walks up to the `.elevasis` marker). Add `--dry-run` to any command to preview the generated TypeScript / MDX without writing.
|
|
26
|
-
|
|
27
|
-
| Command | Purpose | Writes to |
|
|
28
|
-
| ----------------------- | ---------------------------------------------------------------------------------------------------- | ------------------------------------------- |
|
|
29
|
-
| `om:scaffold:system` | Guide creation of a new System entry. Optional `--api-backed` emits an `apiInterface` block. | `core/config/organization-model/systems.ts` |
|
|
30
|
-
| `om:scaffold:resource` | Add a new workflow Resource descriptor with `systemPath` attachment and an ontology `primaryAction`. | `core/config/organization-model/systems.ts` |
|
|
31
|
-
| `om:scaffold:role` | Add a new Role to the profile domain. | `core/config/organization-model/profile.ts` |
|
|
32
|
-
| `om:scaffold:knowledge` | Create a new MDX knowledge node file under the requested kind / system mount. | `core/config/knowledge/nodes/` |
|
|
33
|
-
| `om:scaffold:fill` | Non-interactive apply of a conformance-gap JSON produced by the conformance gate (Agent 2a). | Per-file as recorded in the JSON. |
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## Common Options
|
|
38
|
-
|
|
39
|
-
| Flag | Behavior |
|
|
40
|
-
| --------------------------- | ------------------------------------------------------------------------------------ | -------- | --------- | -------- |
|
|
41
|
-
| `--dry-run` | Print proposed block; write nothing. Always run this first when in doubt. |
|
|
42
|
-
| `-h`, `--help` | Print command-specific help. |
|
|
43
|
-
| `--id <id>` | Pre-fill the canonical id (prompted if absent). |
|
|
44
|
-
| `--title <title>` | Pre-fill display title (prompted if absent — `system`, `resource`, `role`). |
|
|
45
|
-
| `--system-path <path>` | Attach Resource or Knowledge to an existing System (prompted if absent). |
|
|
46
|
-
| `--api-backed` | (`system` only) Emit an `apiInterface` block; reminds you to populate `resourceIds`. |
|
|
47
|
-
| `--primary-action <action>` | (`resource` only) Pre-fill ontology primary action id. |
|
|
48
|
-
| `--kind <kind>` | (`knowledge` only) `playbook | strategy | reference | policy`. |
|
|
49
|
-
| `--gaps <path>` | (`fill` only) Required path to the conformance-gap JSON. |
|
|
50
|
-
| `--skipped <path>` | (`fill` only) Output path for gaps that still need manual input. |
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
## Step-by-Step
|
|
55
|
-
|
|
56
|
-
### Step 1: Pre-flight read
|
|
57
|
-
|
|
58
|
-
Before scaffolding, run a single `om:describe` against the parent System (for Resource / Knowledge scaffolds) or the profile domain (for Role scaffolds). This grounds the proposed id, system path, and ontology references in current model state. Skipping this step routinely produces ids that collide with existing entries.
|
|
59
|
-
|
|
60
|
-
```bash
|
|
61
|
-
pnpm exec elevasis-sdk om:describe sales.crm
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
### Resource placement decision
|
|
65
|
-
|
|
66
|
-
For `om:scaffold:resource`, never choose `systemPath` because the new Resource is a workflow,
|
|
67
|
-
agent, script, or trigger. Those are Resource kinds, not Systems. Pick the existing System that
|
|
68
|
-
owns the business or platform capability the Resource operates.
|
|
69
|
-
|
|
70
|
-
If no existing System owns that capability, first propose a real capability System. Do not create
|
|
71
|
-
`automation`, `workflows`, `operations`, `monitoring`, `settings`, or similarly broad bucket
|
|
72
|
-
Systems to make the Resource fit.
|
|
73
|
-
|
|
74
|
-
### Step 2: Dry-run
|
|
75
|
-
|
|
76
|
-
Always preview first. Each command prints the exact TypeScript / MDX block it would write.
|
|
77
|
-
|
|
78
|
-
```bash
|
|
79
|
-
pnpm exec elevasis-sdk om:scaffold:system --dry-run
|
|
80
|
-
pnpm exec elevasis-sdk om:scaffold:resource --dry-run
|
|
81
|
-
pnpm exec elevasis-sdk om:scaffold:role --dry-run
|
|
82
|
-
pnpm exec elevasis-sdk om:scaffold:knowledge --dry-run
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
The dry-run output is the diff you would present to the user during a Codify proposal. Show it verbatim before asking for confirmation.
|
|
86
|
-
|
|
87
|
-
### Step 3: Confirm
|
|
88
|
-
|
|
89
|
-
Pause for explicit user confirmation, exactly like Codify Level-A Step 3. Permission prompts also gate the underlying write.
|
|
90
|
-
|
|
91
|
-
### Step 4: Write
|
|
92
|
-
|
|
93
|
-
Re-run the command without `--dry-run`. The CLI:
|
|
94
|
-
|
|
95
|
-
1. Asserts the project is in split layout (`core/config/organization-model/{profile,systems,navigation}.ts`); on monolithic projects it errors with a guidance message rather than guessing where to write.
|
|
96
|
-
2. Inserts the new block alongside existing entries of the same kind.
|
|
97
|
-
3. Reports the touched file path.
|
|
98
|
-
|
|
99
|
-
### Step 5: Validate
|
|
100
|
-
|
|
101
|
-
Always run both gates after a scaffold write:
|
|
102
|
-
|
|
103
|
-
```bash
|
|
104
|
-
pnpm -C operations check-types # type-check only, no emit
|
|
105
|
-
pnpm -C operations check # elevasis-sdk resource validator (incl. conformance gate)
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
The new conformance gate (shipped in `@elevasis/sdk@1.30+`) will catch a System that declares API-backed Resources but no `apiInterface`. If it fires after a `system` scaffold, either:
|
|
109
|
-
|
|
110
|
-
- Re-run `om:scaffold:system --api-backed` to add the `apiInterface` block, or
|
|
111
|
-
- Run `om:scaffold:fill --gaps <gaps.json>` against the gate's emitted gaps file.
|
|
112
|
-
|
|
113
|
-
### Step 6: Rollback on failure
|
|
114
|
-
|
|
115
|
-
If either validation gate fails, restore the touched file from the snapshot captured in Step 1 of the parent `/om` Codify ceremony. The scaffold CLI does not perform its own rollback — the ceremony around it does.
|
|
116
|
-
|
|
117
|
-
---
|
|
118
|
-
|
|
119
|
-
## `om:scaffold:fill` — Conformance Gap Pass
|
|
120
|
-
|
|
121
|
-
`om:scaffold:fill` is the non-interactive counterpart to the four guided scaffolders. It consumes a JSON file shaped like the output of the conformance gate (the new deploy preflight introduced alongside `@elevasis/core@0.38` + `@elevasis/sdk@1.30`) and writes the missing fields it can derive without user input. Gaps that require a choice (e.g. picking a `readinessProfile`) land in the `--skipped` output for manual review.
|
|
122
|
-
|
|
123
|
-
```bash
|
|
124
|
-
# After the conformance gate prints a gaps file:
|
|
125
|
-
pnpm exec elevasis-sdk om:scaffold:fill --gaps .elevasis/conformance-gaps.json --dry-run
|
|
126
|
-
pnpm exec elevasis-sdk om:scaffold:fill --gaps .elevasis/conformance-gaps.json --skipped .elevasis/conformance-skipped.json
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
`fill` is idempotent for already-applied gaps; it skips entries that no longer match the live model.
|
|
130
|
-
|
|
131
|
-
---
|
|
132
|
-
|
|
133
|
-
## Layout Guard
|
|
134
|
-
|
|
135
|
-
Every `om:scaffold:*` command requires the split layout under `core/config/organization-model/`:
|
|
136
|
-
|
|
137
|
-
- `profile.ts` — identity, customers, offerings, roles, goals, techStack, labels
|
|
138
|
-
- `systems.ts` — systems + system-attached resources
|
|
139
|
-
- `navigation.ts` — navigation surfaces and sidebar wiring
|
|
140
|
-
|
|
141
|
-
On a monolithic `core/config/organization-model.ts`, the command errors with a one-line instruction to split first. The split step is owned by an upstream `/om` workflow — do not hand-split during a scaffold.
|
|
142
|
-
|
|
143
|
-
---
|
|
144
|
-
|
|
145
|
-
## Related Operations
|
|
146
|
-
|
|
147
|
-
- `codify-level-a.md` — existing-field edits (the default Codify pipeline)
|
|
148
|
-
- `codify-level-b.md` — net-new Zod extension files under `core/config/extensions/`
|
|
149
|
-
- `verify.md` — model-coherence checks (the in-memory doctor)
|
|
150
|
-
|
|
151
|
-
---
|
|
152
|
-
|
|
153
|
-
## Caller Contract (when dispatched from `/om`)
|
|
154
|
-
|
|
155
|
-
When `/om` classifies a Codify-new-entry intent, it should:
|
|
156
|
-
|
|
157
|
-
1. Pick the correct sub-command from the table above.
|
|
158
|
-
2. Pre-fill any options it can confidently extract from the conversation (`--id`, `--title`, `--system-path`, `--api-backed`, etc.) so the CLI does not re-prompt for them.
|
|
159
|
-
3. Always pass `--dry-run` on the first invocation and show the output to the user.
|
|
160
|
-
4. On user confirmation, re-invoke without `--dry-run`.
|
|
161
|
-
5. Run the Step 5 validators and report the result. Roll back if either fails.
|
|
162
|
-
|
|
163
|
-
Do not skip the dry-run round-trip. The scaffolders write into the authoring source of truth — silent writes erode the trust the `/om` ceremony exists to protect.
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
# TechStack Context
|
|
2
|
-
|
|
3
|
-
Tech stack information is no longer modeled through `resourceMappings`. Resource identity and governance metadata live in OM Resources descriptors under the id-keyed `organizationModel.resources` map; external platform context belongs on the relevant integration descriptor or in project knowledge when the descriptor schema does not expose a dedicated field yet.
|
|
4
|
-
|
|
5
|
-
## Current Resource-Governance Contract
|
|
6
|
-
|
|
7
|
-
- Resource IDs are authored once in `core/config/organization-model.ts`.
|
|
8
|
-
- Runtime workflows, agents, and integrations derive `resourceId` / `type` from OM descriptors during deployment assembly.
|
|
9
|
-
- `DeploymentSpec` remains the runtime/deploy bundle, not an independent identity catalog.
|
|
10
|
-
- `pnpm -C operations check` validates descriptor/code alignment before deploy.
|
|
11
|
-
|
|
12
|
-
## Where To Look
|
|
13
|
-
|
|
14
|
-
- **Systems and Resources descriptors** -- `core/config/organization-model/systems.ts` (split
|
|
15
|
-
projects) or `core/config/organization-model.ts` (unsplit projects).
|
|
16
|
-
- `operations/src/index.ts` -- deployment assembly that binds executable behavior to descriptors.
|
|
17
|
-
- `pnpm elevasis-sdk project:list --pretty` -- live deployed resource surface.
|
|
18
|
-
- Project knowledge nodes -- narrative details such as credential owner, setup notes, and
|
|
19
|
-
system-of-record rationale when they do not fit the descriptor shape.
|
|
20
|
-
|
|
21
|
-
**Note:** `techStack` is not currently authored as a top-level key in either the template or
|
|
22
|
-
reference tenant model. Integration context lives in Resource descriptors (`systems.ts`) and
|
|
23
|
-
project knowledge nodes rather than a dedicated `techStack` domain block. Do not invent a
|
|
24
|
-
`techStack` key in `profile.ts`; if the schema adds one in a future SDK release, this note will
|
|
25
|
-
be updated.
|
|
26
|
-
|
|
27
|
-
## Write Path
|
|
28
|
-
|
|
29
|
-
When the user wants to document or change integration ownership, credential status, or system-of-record context:
|
|
30
|
-
|
|
31
|
-
1. Inspect `core/config/organization-model.ts` for the relevant integration Resource descriptor.
|
|
32
|
-
2. If the descriptor identity, System membership, owner role, or status is wrong, update the descriptor through the `/om` ceremony where possible.
|
|
33
|
-
3. If the requested detail is operational narrative rather than descriptor schema, capture it in a knowledge node or project documentation instead of recreating `resourceMappings`.
|
|
34
|
-
4. Run `pnpm -C operations check` after descriptor or deployment assembly changes.
|
|
35
|
-
|
|
36
|
-
---
|
|
37
|
-
|
|
38
|
-
**Read via `/om`** (legacy `/knowledge` alias also accepted) -- natural-language queries like "what integrations are configured?" or "is HubSpot our system of record for contacts?" route here for inspection and recommendation.
|