@elevasis/sdk 1.20.2 → 1.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.
Files changed (164) hide show
  1. package/dist/cli.cjs +4220 -1583
  2. package/dist/index.d.ts +1035 -481
  3. package/dist/index.js +7381 -4187
  4. package/dist/node/index.d.ts +1 -3
  5. package/dist/node/index.js +40 -49
  6. package/dist/test-utils/index.d.ts +699 -123
  7. package/dist/test-utils/index.js +3826 -630
  8. package/dist/worker/index.js +3616 -442
  9. package/package.json +3 -3
  10. package/reference/_navigation.md +9 -7
  11. package/reference/_reference-manifest.json +1 -1
  12. package/reference/claude-config/hooks/post-edit-validate.mjs +98 -98
  13. package/reference/claude-config/hooks/scaffold-registry-reminder.mjs +188 -188
  14. package/reference/claude-config/hooks/tool-failure-recovery.mjs +73 -73
  15. package/reference/claude-config/registries/graph-skills.json +4 -4
  16. package/reference/claude-config/registries/knowledge-flags.json +0 -2
  17. package/reference/claude-config/rules/active-change-index.md +80 -80
  18. package/reference/claude-config/rules/agent-start-here.md +277 -273
  19. package/reference/claude-config/rules/deployment.md +57 -57
  20. package/reference/claude-config/rules/error-handling.md +56 -56
  21. package/reference/claude-config/rules/execution.md +40 -40
  22. package/reference/claude-config/rules/frontend.md +4 -4
  23. package/reference/claude-config/rules/observability.md +31 -31
  24. package/reference/claude-config/rules/operations.md +29 -17
  25. package/reference/claude-config/rules/organization-model.md +108 -40
  26. package/reference/claude-config/rules/organization-os.md +115 -113
  27. package/reference/claude-config/rules/package-taxonomy.md +33 -33
  28. package/reference/claude-config/rules/platform.md +42 -42
  29. package/reference/claude-config/rules/shared-types.md +49 -46
  30. package/reference/claude-config/rules/task-tracking.md +47 -47
  31. package/reference/claude-config/rules/ui.md +200 -200
  32. package/reference/claude-config/rules/vibe.md +235 -231
  33. package/reference/claude-config/scripts/statusline-command.js +18 -18
  34. package/reference/claude-config/settings.json +34 -34
  35. package/reference/claude-config/skills/deploy/{SKILL.md → skill.md} +156 -156
  36. package/reference/claude-config/skills/dsp/SKILL.md +66 -66
  37. package/reference/claude-config/skills/elevasis/SKILL.md +235 -235
  38. package/reference/claude-config/skills/explore/SKILL.md +6 -6
  39. package/reference/claude-config/skills/git-sync/SKILL.md +126 -126
  40. package/reference/claude-config/skills/knowledge/SKILL.md +330 -271
  41. package/reference/claude-config/skills/knowledge/operations/codify-level-a.md +100 -100
  42. package/reference/claude-config/skills/knowledge/operations/codify-level-b.md +159 -158
  43. package/reference/claude-config/skills/knowledge/operations/customers.md +109 -109
  44. package/reference/claude-config/skills/knowledge/operations/features.md +76 -113
  45. package/reference/claude-config/skills/knowledge/operations/goals.md +118 -118
  46. package/reference/claude-config/skills/knowledge/operations/identity.md +93 -93
  47. package/reference/claude-config/skills/knowledge/operations/labels.md +94 -89
  48. package/reference/claude-config/skills/knowledge/operations/offerings.md +109 -109
  49. package/reference/claude-config/skills/knowledge/operations/roles.md +99 -99
  50. package/reference/claude-config/skills/knowledge/operations/techStack.md +30 -30
  51. package/reference/claude-config/skills/project/SKILL.md +1088 -1088
  52. package/reference/claude-config/skills/run-ui/SKILL.md +73 -73
  53. package/reference/claude-config/skills/save/SKILL.md +3 -3
  54. package/reference/claude-config/skills/setup/SKILL.md +275 -275
  55. package/reference/claude-config/skills/status/SKILL.md +59 -59
  56. package/reference/claude-config/skills/submit-request/SKILL.md +180 -180
  57. package/reference/claude-config/skills/sync/SKILL.md +47 -47
  58. package/reference/claude-config/skills/tutorial/SKILL.md +259 -259
  59. package/reference/claude-config/skills/tutorial/progress-template.md +74 -74
  60. package/reference/claude-config/skills/tutorial/technical.md +1303 -1306
  61. package/reference/claude-config/skills/tutorial/vibe-coder.md +890 -890
  62. package/reference/claude-config/sync-notes/2026-04-22-git-sync-and-sync-notes.md +27 -27
  63. package/reference/claude-config/sync-notes/2026-04-22-lead-gen-deliverability-removal.md +30 -30
  64. package/reference/claude-config/sync-notes/2026-04-24-test-utils-and-template-tests.md +73 -73
  65. package/reference/claude-config/sync-notes/2026-04-24-ui-consolidation-and-sdk-cli-train.md +86 -86
  66. package/reference/claude-config/sync-notes/2026-04-25-auth-role-system-and-settings-roles.md +55 -55
  67. package/reference/claude-config/sync-notes/2026-04-27-crm-hitl-action-layer-cutover.md +97 -97
  68. package/reference/claude-config/sync-notes/2026-04-27-lead-gen-substrate-train.md +112 -112
  69. package/reference/claude-config/sync-notes/2026-04-29-crm-state-and-lead-gen-processing-status.md +93 -93
  70. package/reference/claude-config/sync-notes/2026-05-02-crm-ownership-next-action.md +58 -58
  71. package/reference/claude-config/sync-notes/2026-05-02-template-hardcode-workos-config.md +56 -56
  72. package/reference/claude-config/sync-notes/2026-05-04-elevasis-workspace.md +71 -71
  73. package/reference/claude-config/sync-notes/2026-05-04-knowledge-bundle.md +83 -83
  74. package/reference/claude-config/sync-notes/2026-05-04-template-skills-run-ui-and-tutorial.md +59 -59
  75. package/reference/claude-config/sync-notes/2026-05-05-list-builder.md +42 -42
  76. package/reference/claude-config/sync-notes/2026-05-06-crm-spine.md +60 -60
  77. package/reference/claude-config/sync-notes/2026-05-06-sdk-changes-release-train.md +37 -37
  78. package/reference/claude-config/sync-notes/2026-05-07-sdk-changes-release-train.md +34 -34
  79. package/reference/claude-config/sync-notes/2026-05-08-resource-governance-scaffold-guidance.md +38 -38
  80. package/reference/claude-config/sync-notes/2026-05-09-clients-domain.md +32 -32
  81. package/reference/claude-config/sync-notes/2026-05-09-command-system.md +33 -33
  82. package/reference/claude-config/sync-notes/2026-05-09-resource-governance-and-misc.md +69 -69
  83. package/reference/claude-config/sync-notes/2026-05-12-sdk-ready-release-train.md +30 -0
  84. package/reference/claude-config/sync-notes/2026-05-14-organization-model-ontology-refactor.md +42 -0
  85. package/reference/claude-config/sync-notes/README.md +43 -43
  86. package/reference/cli.mdx +808 -668
  87. package/reference/concepts.mdx +146 -146
  88. package/reference/deployment/api.mdx +297 -297
  89. package/reference/deployment/command-center.mdx +209 -209
  90. package/reference/deployment/index.mdx +195 -195
  91. package/reference/deployment/provided-features.mdx +107 -93
  92. package/reference/deployment/ui-execution.mdx +250 -250
  93. package/reference/examples/organization-model.ts +147 -84
  94. package/reference/framework/agent.mdx +156 -156
  95. package/reference/framework/index.mdx +195 -195
  96. package/reference/framework/interaction-guidance.mdx +182 -182
  97. package/reference/framework/memory.mdx +326 -326
  98. package/reference/framework/project-structure.mdx +282 -282
  99. package/reference/framework/tutorial-system.mdx +135 -135
  100. package/reference/getting-started.mdx +142 -142
  101. package/reference/index.mdx +106 -106
  102. package/reference/packages/core/src/README.md +14 -14
  103. package/reference/packages/core/src/business/README.md +2 -2
  104. package/reference/packages/core/src/knowledge/README.md +33 -32
  105. package/reference/packages/core/src/organization-model/README.md +149 -109
  106. package/reference/packages/core/src/test-utils/README.md +37 -37
  107. package/reference/packages/ui/src/api/README.md +18 -18
  108. package/reference/packages/ui/src/app/README.md +24 -24
  109. package/reference/packages/ui/src/auth/README.md +18 -18
  110. package/reference/packages/ui/src/components/README.md +24 -24
  111. package/reference/packages/ui/src/execution/README.md +16 -16
  112. package/reference/packages/ui/src/features/README.md +28 -28
  113. package/reference/packages/ui/src/graph/README.md +16 -16
  114. package/reference/packages/ui/src/hooks/README.md +23 -23
  115. package/reference/packages/ui/src/initialization/README.md +19 -19
  116. package/reference/packages/ui/src/knowledge/README.md +31 -31
  117. package/reference/packages/ui/src/organization/README.md +18 -18
  118. package/reference/packages/ui/src/profile/README.md +19 -19
  119. package/reference/packages/ui/src/provider/README.md +32 -32
  120. package/reference/packages/ui/src/router/README.md +18 -18
  121. package/reference/packages/ui/src/sse/README.md +13 -13
  122. package/reference/packages/ui/src/test-utils/README.md +7 -7
  123. package/reference/packages/ui/src/theme/README.md +23 -23
  124. package/reference/packages/ui/src/theme/presets/README.md +19 -19
  125. package/reference/packages/ui/src/types/README.md +16 -16
  126. package/reference/packages/ui/src/utils/README.md +18 -18
  127. package/reference/packages/ui/src/zustand/README.md +18 -18
  128. package/reference/platform-tools/adapters-integration.mdx +301 -301
  129. package/reference/platform-tools/adapters-platform.mdx +553 -553
  130. package/reference/platform-tools/index.mdx +217 -217
  131. package/reference/platform-tools/type-safety.mdx +82 -82
  132. package/reference/resources/index.mdx +349 -349
  133. package/reference/resources/patterns.mdx +449 -449
  134. package/reference/resources/types.mdx +116 -116
  135. package/reference/roadmap.mdx +165 -165
  136. package/reference/runtime.mdx +173 -173
  137. package/reference/scaffold/core/organization-graph.mdx +110 -89
  138. package/reference/scaffold/core/organization-model.mdx +226 -171
  139. package/reference/scaffold/index.mdx +67 -67
  140. package/reference/scaffold/operations/propagation-pipeline.md +77 -77
  141. package/reference/scaffold/operations/scaffold-maintenance.md +10 -10
  142. package/reference/scaffold/operations/workflow-recipes.md +138 -138
  143. package/reference/scaffold/recipes/add-a-feature.md +310 -88
  144. package/reference/scaffold/recipes/add-a-resource.md +137 -117
  145. package/reference/scaffold/recipes/customize-crm-actions.md +439 -439
  146. package/reference/scaffold/recipes/customize-knowledge-browser.md +384 -0
  147. package/reference/scaffold/recipes/customize-organization-model.md +281 -118
  148. package/reference/scaffold/recipes/extend-a-base-entity.md +8 -8
  149. package/reference/scaffold/recipes/extend-crm.md +40 -39
  150. package/reference/scaffold/recipes/extend-lead-gen.md +400 -401
  151. package/reference/scaffold/recipes/gate-by-feature-or-admin.md +118 -114
  152. package/reference/scaffold/recipes/index.md +47 -46
  153. package/reference/scaffold/recipes/query-the-knowledge-graph.md +227 -0
  154. package/reference/scaffold/reference/contracts.md +2389 -2121
  155. package/reference/scaffold/reference/feature-registry.md +9 -20
  156. package/reference/scaffold/reference/glossary.md +76 -76
  157. package/reference/scaffold/ui/composition-extensibility.mdx +233 -233
  158. package/reference/scaffold/ui/customization.md +243 -243
  159. package/reference/scaffold/ui/feature-flags-and-gating.md +46 -46
  160. package/reference/scaffold/ui/feature-shell.mdx +72 -72
  161. package/reference/scaffold/ui/recipes.md +221 -213
  162. package/reference/spine/spine-primer.md +96 -96
  163. package/reference/templates/index.mdx +47 -47
  164. package/reference/troubleshooting.mdx +223 -223
@@ -1,180 +1,180 @@
1
- ---
2
- name: submit-request
3
- description: Submit a structured request report to the Elevasis platform via CLI — enforces pre-analysis before posting
4
- ---
5
-
6
- # Submit Request
7
-
8
- Submit a structured request report to the Elevasis platform. The agent performs a six-phase analysis before posting so that every submitted request includes meaningful context, not just a one-liner.
9
-
10
- **Usage:** `/submit-request [optional description]`
11
-
12
- If a description is provided, it is the primary signal for Phase 1. Otherwise the agent analyzes recent conversation context plus any active error context.
13
-
14
- ## Env Requirements
15
-
16
- `ELEVASIS_PLATFORM_KEY` must be present in the project's root `.env` (the same key used by all other `elevasis-sdk` commands — no additional setup needed if deploy is already working).
17
-
18
- The organization and API base URL are resolved automatically by the CLI. No `ELEVASIS_API_KEY` or `ELEVASIS_API_URL` needed.
19
-
20
- ## Pre-Analysis Phases
21
-
22
- Complete all six phases before assembling the report or asking for confirmation. Do not skip phases — they ensure the submitted record is actionable.
23
-
24
- ### Phase 1: Collect Context
25
-
26
- Gather available context:
27
-
28
- - If the user provided a description with the command, treat it as the primary signal.
29
- - Otherwise review the last ~20 conversation messages for error output, failed commands, unexpected behavior, and any `explain_page` / active error context.
30
- - Ask one targeted follow-up question if a key detail is ambiguous. Do not fire multiple questions at once.
31
-
32
- ### Phase 2: Identify Source
33
-
34
- Pinpoint where the request originates:
35
-
36
- - File paths (if a code or config file is involved)
37
- - Workflow or agent resource IDs (if a platform execution failed)
38
- - Execution IDs (if available in logs or prior output)
39
- - Route or page path (if a UI issue)
40
-
41
- Record these for the `evidence` and `affected_page` fields.
42
-
43
- ### Phase 3: Gather Errors
44
-
45
- Extract concrete error signals (if applicable):
46
-
47
- - Full error messages and stack traces (truncated to the relevant portion)
48
- - HTTP status codes and response bodies
49
- - Log lines with timestamps if available
50
- - Screenshots or screenshot file references if the user provided them
51
-
52
- These go into the `evidence` object. For feature requests or questions, this phase may produce an empty `evidence` object — that is expected.
53
-
54
- ### Phase 4: Select Type and Classify Severity and Category
55
-
56
- Select exactly one value for **type first**, then **severity**, then **category**:
57
-
58
- **Type:**
59
-
60
- | Value | When to use |
61
- | ---------- | -------------------------------------------------- |
62
- | `bug` | Something is broken or behaving incorrectly |
63
- | `feature` | A new capability or enhancement request |
64
- | `question` | Asking for clarification, guidance, or explanation |
65
- | `other` | Doesn't fit the above |
66
-
67
- **Severity:**
68
-
69
- | Value | When to use |
70
- | ---------- | ------------------------------------------------------------------- |
71
- | `critical` | Data loss, security breach, complete feature outage, blocked deploy |
72
- | `warning` | Degraded behavior, partial failure, noticeable but recoverable |
73
- | `info` | Minor UX glitch, cosmetic bug, improvement suggestion |
74
-
75
- **Category:**
76
-
77
- | Value | When to use |
78
- | --------------------- | ------------------------------------------------------ |
79
- | `ui_bug` | Frontend rendering or interaction problem |
80
- | `data_inconsistency` | DB records, API responses, or UI state don't match |
81
- | `performance` | Slow load, timeout, high resource usage |
82
- | `error_pattern` | Recurring or systematic error across executions |
83
- | `configuration` | Misconfigured resource, credential, env var, or policy |
84
- | `feature_request` | New feature or enhancement being requested |
85
- | `api_design` | Feedback on API contract, naming, or behavior |
86
- | `documentation` | Missing, incorrect, or unclear documentation |
87
- | `integration_request` | Request for a new integration or adapter |
88
- | `other` | Doesn't fit above |
89
-
90
- ### Phase 5: Build Structured Report
91
-
92
- Assemble the report body from phases 1–4:
93
-
94
- ```json
95
- {
96
- "title": "One-line summary — specific, not vague",
97
- "description": "What happened. What was expected. Steps to reproduce if applicable.",
98
- "type": "<bug|feature|question|other>",
99
- "severity": "<critical|warning|info>",
100
- "category": "<category value>",
101
- "affected_page": "<route or page path, omit if not a UI issue>",
102
- "evidence": {
103
- "errors": ["<error message or stack trace excerpt>"],
104
- "log_snippets": ["<relevant log lines>"],
105
- "screenshot_refs": ["<file path if user provided a screenshot>"]
106
- },
107
- "context": {
108
- "source_files": ["<file paths>"],
109
- "resource_ids": ["<workflow or agent IDs>"],
110
- "execution_ids": ["<execution IDs>"],
111
- "summary": "<one-paragraph agent analysis summary>"
112
- }
113
- }
114
- ```
115
-
116
- Omit any field that has nothing meaningful to record. `project_id` and `task_id` are optional UUID fields — include them only if the request is clearly scoped to a specific project or task visible in context.
117
-
118
- Do NOT include `source` or `organization_id` — the server sets both automatically.
119
-
120
- ### Phase 6: Confirm with User
121
-
122
- Unless the command was invoked with `--auto`, present the assembled report to the user before submitting:
123
-
124
- ```
125
- Request Report (ready to submit)
126
- ================================
127
- Title: <title>
128
- Type: <type>
129
- Severity: <severity>
130
- Category: <category>
131
- Page: <affected_page or "—">
132
-
133
- Description:
134
- <description>
135
-
136
- Evidence:
137
- <summarized evidence>
138
-
139
- Context:
140
- <summarized context>
141
-
142
- Submit? (yes / edit / cancel)
143
- ```
144
-
145
- If the user says "edit", accept corrections and re-display the updated report before proceeding.
146
- If the user says "cancel", abort and confirm: "Submission cancelled."
147
- Auto-submit (`--auto`) skips this confirmation entirely — use only when the caller is a trusted agent pipeline.
148
-
149
- ## Submit
150
-
151
- Once confirmed (or `--auto`), write the assembled JSON body to a temp file under the project-root `tmp/` directory, then submit via the SDK CLI:
152
-
153
- ```bash
154
- # Write the report body to tmp/request-report.json from the project root
155
- # The template keeps tmp/ gitignored for transient CLI payloads
156
-
157
- pnpm elevasis-sdk request:submit -f tmp/request-report.json --cleanup-input --pretty
158
- ```
159
-
160
- `--cleanup-input` removes the temp file automatically after a successful submission. If the command fails, leave the file in `tmp/` for inspection.
161
-
162
- ## Report Back
163
-
164
- On success, the CLI prints the request ID. Surface it to the user:
165
-
166
- ```
167
- Submitted — id: <uuid>
168
- Track it in Command Center > Requests.
169
- ```
170
-
171
- ## Troubleshooting
172
-
173
- | Error | Cause | Fix |
174
- | ------------------------------- | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
175
- | `ELEVASIS_PLATFORM_KEY` missing | Key not set in root `.env` | Add `ELEVASIS_PLATFORM_KEY=sk_...` to `.env`. Provision from Command Center > Settings > API Keys. |
176
- | `401 Unauthorized` | Key is malformed or revoked | Verify the key starts with `sk_` and is 67 chars. Re-provision if needed. |
177
- | `403 Forbidden` | Key's org lacks access to request reporting | Contact the platform operator to verify the key's org permissions. |
178
- | `Invalid request body` | Report failed CLI-side Zod validation before the request was sent | Read the field errors printed by the CLI. Common causes: missing `title`/`description`/`type`, invalid enum. |
179
- | `400 Bad Request` | Body passed CLI validation but failed server-side validation | Read the response body for the specific field error. |
180
- | Connection refused | API server unreachable | Default target is `https://api.elevasis.io` — check network. For local dev, set `ELEVASIS_API_URL` in `.env`. |
1
+ ---
2
+ name: submit-request
3
+ description: Submit a structured request report to the Elevasis platform via CLI — enforces pre-analysis before posting
4
+ ---
5
+
6
+ # Submit Request
7
+
8
+ Submit a structured request report to the Elevasis platform. The agent performs a six-phase analysis before posting so that every submitted request includes meaningful context, not just a one-liner.
9
+
10
+ **Usage:** `/submit-request [optional description]`
11
+
12
+ If a description is provided, it is the primary signal for Phase 1. Otherwise the agent analyzes recent conversation context plus any active error context.
13
+
14
+ ## Env Requirements
15
+
16
+ `ELEVASIS_PLATFORM_KEY` must be present in the project's root `.env` (the same key used by all other `elevasis-sdk` commands — no additional setup needed if deploy is already working).
17
+
18
+ The organization and API base URL are resolved automatically by the CLI. No `ELEVASIS_API_KEY` or `ELEVASIS_API_URL` needed.
19
+
20
+ ## Pre-Analysis Phases
21
+
22
+ Complete all six phases before assembling the report or asking for confirmation. Do not skip phases — they ensure the submitted record is actionable.
23
+
24
+ ### Phase 1: Collect Context
25
+
26
+ Gather available context:
27
+
28
+ - If the user provided a description with the command, treat it as the primary signal.
29
+ - Otherwise review the last ~20 conversation messages for error output, failed commands, unexpected behavior, and any `explain_page` / active error context.
30
+ - Ask one targeted follow-up question if a key detail is ambiguous. Do not fire multiple questions at once.
31
+
32
+ ### Phase 2: Identify Source
33
+
34
+ Pinpoint where the request originates:
35
+
36
+ - File paths (if a code or config file is involved)
37
+ - Workflow or agent resource IDs (if a platform execution failed)
38
+ - Execution IDs (if available in logs or prior output)
39
+ - Route or page path (if a UI issue)
40
+
41
+ Record these for the `evidence` and `affected_page` fields.
42
+
43
+ ### Phase 3: Gather Errors
44
+
45
+ Extract concrete error signals (if applicable):
46
+
47
+ - Full error messages and stack traces (truncated to the relevant portion)
48
+ - HTTP status codes and response bodies
49
+ - Log lines with timestamps if available
50
+ - Screenshots or screenshot file references if the user provided them
51
+
52
+ These go into the `evidence` object. For feature requests or questions, this phase may produce an empty `evidence` object — that is expected.
53
+
54
+ ### Phase 4: Select Type and Classify Severity and Category
55
+
56
+ Select exactly one value for **type first**, then **severity**, then **category**:
57
+
58
+ **Type:**
59
+
60
+ | Value | When to use |
61
+ | ---------- | -------------------------------------------------- |
62
+ | `bug` | Something is broken or behaving incorrectly |
63
+ | `feature` | A new capability or enhancement request |
64
+ | `question` | Asking for clarification, guidance, or explanation |
65
+ | `other` | Doesn't fit the above |
66
+
67
+ **Severity:**
68
+
69
+ | Value | When to use |
70
+ | ---------- | ------------------------------------------------------------------- |
71
+ | `critical` | Data loss, security breach, complete feature outage, blocked deploy |
72
+ | `warning` | Degraded behavior, partial failure, noticeable but recoverable |
73
+ | `info` | Minor UX glitch, cosmetic bug, improvement suggestion |
74
+
75
+ **Category:**
76
+
77
+ | Value | When to use |
78
+ | --------------------- | ------------------------------------------------------ |
79
+ | `ui_bug` | Frontend rendering or interaction problem |
80
+ | `data_inconsistency` | DB records, API responses, or UI state don't match |
81
+ | `performance` | Slow load, timeout, high resource usage |
82
+ | `error_pattern` | Recurring or systematic error across executions |
83
+ | `configuration` | Misconfigured resource, credential, env var, or policy |
84
+ | `feature_request` | New feature or enhancement being requested |
85
+ | `api_design` | Feedback on API contract, naming, or behavior |
86
+ | `documentation` | Missing, incorrect, or unclear documentation |
87
+ | `integration_request` | Request for a new integration or adapter |
88
+ | `other` | Doesn't fit above |
89
+
90
+ ### Phase 5: Build Structured Report
91
+
92
+ Assemble the report body from phases 1–4:
93
+
94
+ ```json
95
+ {
96
+ "title": "One-line summary — specific, not vague",
97
+ "description": "What happened. What was expected. Steps to reproduce if applicable.",
98
+ "type": "<bug|feature|question|other>",
99
+ "severity": "<critical|warning|info>",
100
+ "category": "<category value>",
101
+ "affected_page": "<route or page path, omit if not a UI issue>",
102
+ "evidence": {
103
+ "errors": ["<error message or stack trace excerpt>"],
104
+ "log_snippets": ["<relevant log lines>"],
105
+ "screenshot_refs": ["<file path if user provided a screenshot>"]
106
+ },
107
+ "context": {
108
+ "source_files": ["<file paths>"],
109
+ "resource_ids": ["<workflow or agent IDs>"],
110
+ "execution_ids": ["<execution IDs>"],
111
+ "summary": "<one-paragraph agent analysis summary>"
112
+ }
113
+ }
114
+ ```
115
+
116
+ Omit any field that has nothing meaningful to record. `project_id` and `task_id` are optional UUID fields — include them only if the request is clearly scoped to a specific project or task visible in context.
117
+
118
+ Do NOT include `source` or `organization_id` — the server sets both automatically.
119
+
120
+ ### Phase 6: Confirm with User
121
+
122
+ Unless the command was invoked with `--auto`, present the assembled report to the user before submitting:
123
+
124
+ ```
125
+ Request Report (ready to submit)
126
+ ================================
127
+ Title: <title>
128
+ Type: <type>
129
+ Severity: <severity>
130
+ Category: <category>
131
+ Page: <affected_page or "—">
132
+
133
+ Description:
134
+ <description>
135
+
136
+ Evidence:
137
+ <summarized evidence>
138
+
139
+ Context:
140
+ <summarized context>
141
+
142
+ Submit? (yes / edit / cancel)
143
+ ```
144
+
145
+ If the user says "edit", accept corrections and re-display the updated report before proceeding.
146
+ If the user says "cancel", abort and confirm: "Submission cancelled."
147
+ Auto-submit (`--auto`) skips this confirmation entirely — use only when the caller is a trusted agent pipeline.
148
+
149
+ ## Submit
150
+
151
+ Once confirmed (or `--auto`), write the assembled JSON body to a temp file under the project-root `tmp/` directory, then submit via the SDK CLI:
152
+
153
+ ```bash
154
+ # Write the report body to tmp/request-report.json from the project root
155
+ # The template keeps tmp/ gitignored for transient CLI payloads
156
+
157
+ pnpm elevasis-sdk request:submit -f tmp/request-report.json --cleanup-input --pretty
158
+ ```
159
+
160
+ `--cleanup-input` removes the temp file automatically after a successful submission. If the command fails, leave the file in `tmp/` for inspection.
161
+
162
+ ## Report Back
163
+
164
+ On success, the CLI prints the request ID. Surface it to the user:
165
+
166
+ ```
167
+ Submitted — id: <uuid>
168
+ Track it in Command Center > Requests.
169
+ ```
170
+
171
+ ## Troubleshooting
172
+
173
+ | Error | Cause | Fix |
174
+ | ------------------------------- | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
175
+ | `ELEVASIS_PLATFORM_KEY` missing | Key not set in root `.env` | Add `ELEVASIS_PLATFORM_KEY=sk_...` to `.env`. Provision from Command Center > Settings > API Keys. |
176
+ | `401 Unauthorized` | Key is malformed or revoked | Verify the key starts with `sk_` and is 67 chars. Re-provision if needed. |
177
+ | `403 Forbidden` | Key's org lacks access to request reporting | Contact the platform operator to verify the key's org permissions. |
178
+ | `Invalid request body` | Report failed CLI-side Zod validation before the request was sent | Read the field errors printed by the CLI. Common causes: missing `title`/`description`/`type`, invalid enum. |
179
+ | `400 Bad Request` | Body passed CLI validation but failed server-side validation | Read the response body for the specific field error. |
180
+ | Connection refused | API server unreachable | Default target is `https://api.elevasis.io` — check network. For local dev, set `ELEVASIS_API_URL` in `.env`. |
@@ -1,47 +1,47 @@
1
- ---
2
- name: sync
3
- description: Fresh reinstall and cache reset after local dependency or cache drift
4
- ---
5
-
6
- # Sync
7
-
8
- Fresh reinstall and cache reset for local dependency or cache drift.
9
-
10
- **Usage:** `/sync`
11
-
12
- Use this when: packages feel stale, Vite cache is serving old code, or `pnpm install` didn't fully clean up after a package version bump.
13
-
14
- For pulling template updates, surfacing new `.claude/sync-notes/` guidance, and running the baseline post-pull verification flow, use `/git-sync` instead.
15
-
16
- ## Process
17
-
18
- ### Step 1: Wipe
19
-
20
- Remove all `node_modules` and build caches across the workspace in parallel:
21
-
22
- ```bash
23
- rm -rf node_modules
24
- rm -rf ui/node_modules
25
- rm -rf ui/node_modules/.vite
26
- rm -rf operations/node_modules
27
- rm -rf shared/node_modules
28
- ```
29
-
30
- ### Step 2: Reinstall
31
-
32
- ```bash
33
- pnpm install
34
- ```
35
-
36
- Report success or any errors.
37
-
38
- ### Step 3: Report
39
-
40
- ```text
41
- Sync Complete
42
- =============
43
- Wiped: node_modules (root, ui, operations, shared) + Vite cache
44
- Install: success
45
- ```
46
-
47
- If `pnpm install` fails, report the error and stop - do not attempt to start the dev server.
1
+ ---
2
+ name: sync
3
+ description: Fresh reinstall and cache reset after local dependency or cache drift
4
+ ---
5
+
6
+ # Sync
7
+
8
+ Fresh reinstall and cache reset for local dependency or cache drift.
9
+
10
+ **Usage:** `/sync`
11
+
12
+ Use this when: packages feel stale, Vite cache is serving old code, or `pnpm install` didn't fully clean up after a package version bump.
13
+
14
+ For pulling template updates, surfacing new `.claude/sync-notes/` guidance, and running the baseline post-pull verification flow, use `/git-sync` instead.
15
+
16
+ ## Process
17
+
18
+ ### Step 1: Wipe
19
+
20
+ Remove all `node_modules` and build caches across the workspace in parallel:
21
+
22
+ ```bash
23
+ rm -rf node_modules
24
+ rm -rf ui/node_modules
25
+ rm -rf ui/node_modules/.vite
26
+ rm -rf operations/node_modules
27
+ rm -rf shared/node_modules
28
+ ```
29
+
30
+ ### Step 2: Reinstall
31
+
32
+ ```bash
33
+ pnpm install
34
+ ```
35
+
36
+ Report success or any errors.
37
+
38
+ ### Step 3: Report
39
+
40
+ ```text
41
+ Sync Complete
42
+ =============
43
+ Wiped: node_modules (root, ui, operations, shared) + Vite cache
44
+ Install: success
45
+ ```
46
+
47
+ If `pnpm install` fails, report the error and stop - do not attempt to start the dev server.