@elevasis/sdk 1.8.1 → 1.8.2
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 +13 -5
- package/package.json +2 -2
- package/reference/claude-config/logs/scaffold-registry-reminder.log +1 -0
- package/reference/claude-config/skills/submit-request/SKILL.md +5 -5
- package/reference/scaffold/reference/contracts.md +5 -1
- package/reference/scaffold/ui/feature-shell.mdx +1 -0
package/dist/cli.cjs
CHANGED
|
@@ -40507,12 +40507,12 @@ function wrapAction(commandName, fn) {
|
|
|
40507
40507
|
return async (...args) => {
|
|
40508
40508
|
try {
|
|
40509
40509
|
await fn(...args);
|
|
40510
|
-
process.
|
|
40510
|
+
process.exitCode = 0;
|
|
40511
40511
|
} catch (error46) {
|
|
40512
40512
|
const errorMessage = error46 instanceof Error ? error46.message : String(error46);
|
|
40513
40513
|
console.error(source_default.red("\nError:"), errorMessage);
|
|
40514
40514
|
console.error(source_default.gray(`Run "elevasis-sdk ${commandName} --help" for more information`));
|
|
40515
|
-
process.
|
|
40515
|
+
process.exitCode = 1;
|
|
40516
40516
|
}
|
|
40517
40517
|
};
|
|
40518
40518
|
}
|
|
@@ -40520,7 +40520,7 @@ function wrapAction(commandName, fn) {
|
|
|
40520
40520
|
// package.json
|
|
40521
40521
|
var package_default = {
|
|
40522
40522
|
name: "@elevasis/sdk",
|
|
40523
|
-
version: "1.8.
|
|
40523
|
+
version: "1.8.2",
|
|
40524
40524
|
description: "SDK for building Elevasis organization resources",
|
|
40525
40525
|
type: "module",
|
|
40526
40526
|
bin: {
|
|
@@ -40950,17 +40950,25 @@ var POLL_INTERVAL_MS = 3e3;
|
|
|
40950
40950
|
async function pollForCompletion(resourceId, executionId, apiUrl) {
|
|
40951
40951
|
const pollSpinner = ora("Waiting for completion...").start();
|
|
40952
40952
|
const startTime = Date.now();
|
|
40953
|
+
let interrupted = false;
|
|
40953
40954
|
const cleanup = () => {
|
|
40955
|
+
interrupted = true;
|
|
40956
|
+
process.removeListener("SIGINT", cleanup);
|
|
40954
40957
|
pollSpinner.stop();
|
|
40955
40958
|
console.log();
|
|
40956
40959
|
console.log(source_default.yellow("Polling stopped. Execution continues on server."));
|
|
40957
40960
|
console.log(source_default.gray(" Execution ID:"), source_default.cyan(executionId));
|
|
40958
40961
|
console.log(source_default.dim(" Check status manually or re-run with --async"));
|
|
40959
|
-
process.exit(0);
|
|
40960
40962
|
};
|
|
40961
40963
|
process.on("SIGINT", cleanup);
|
|
40962
40964
|
while (true) {
|
|
40965
|
+
if (interrupted) {
|
|
40966
|
+
return;
|
|
40967
|
+
}
|
|
40963
40968
|
await new Promise((resolve5) => setTimeout(resolve5, POLL_INTERVAL_MS));
|
|
40969
|
+
if (interrupted) {
|
|
40970
|
+
return;
|
|
40971
|
+
}
|
|
40964
40972
|
const elapsed = Math.round((Date.now() - startTime) / 1e3);
|
|
40965
40973
|
pollSpinner.text = `Waiting for completion... (${elapsed}s)`;
|
|
40966
40974
|
try {
|
|
@@ -41078,7 +41086,7 @@ function registerExecCommand(program3) {
|
|
|
41078
41086
|
console.log(source_default.yellow("Could not recover. The execution may still be running on the server."));
|
|
41079
41087
|
console.log(source_default.dim(" Check status manually or re-run with --async"));
|
|
41080
41088
|
}
|
|
41081
|
-
|
|
41089
|
+
return;
|
|
41082
41090
|
}
|
|
41083
41091
|
spinner.fail(source_default.red("Execution failed"));
|
|
41084
41092
|
throw error46;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elevasis/sdk",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.2",
|
|
4
4
|
"description": "SDK for building Elevasis organization resources",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"tsup": "^8.0.0",
|
|
45
45
|
"typescript": "5.9.2",
|
|
46
46
|
"zod": "^4.1.0",
|
|
47
|
-
"@repo/core": "0.7.
|
|
47
|
+
"@repo/core": "0.7.1",
|
|
48
48
|
"@repo/typescript-config": "0.0.0"
|
|
49
49
|
},
|
|
50
50
|
"scripts": {
|
|
@@ -32,3 +32,4 @@
|
|
|
32
32
|
[2026-04-21T08:12:30.121Z] SKIP — registry not found (pre-SDK-delivery)
|
|
33
33
|
[2026-04-21T08:14:55.475Z] SKIP — registry not found (pre-SDK-delivery)
|
|
34
34
|
[2026-04-21T08:17:01.426Z] SKIP — registry not found (pre-SDK-delivery)
|
|
35
|
+
[2026-04-21T08:36:02.820Z] SKIP — registry not found (pre-SDK-delivery)
|
|
@@ -148,16 +148,16 @@ Auto-submit (`--auto`) skips this confirmation entirely — use only when the ca
|
|
|
148
148
|
|
|
149
149
|
## Submit
|
|
150
150
|
|
|
151
|
-
Once confirmed (or `--auto`), write the assembled JSON body to a temp file then submit via the SDK CLI:
|
|
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
152
|
|
|
153
153
|
```bash
|
|
154
|
-
# Write the report body to
|
|
155
|
-
#
|
|
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
156
|
|
|
157
|
-
pnpm elevasis-sdk request:submit
|
|
157
|
+
pnpm elevasis-sdk request:submit -f tmp/request-report.json --cleanup-input --pretty
|
|
158
158
|
```
|
|
159
159
|
|
|
160
|
-
|
|
160
|
+
`--cleanup-input` removes the temp file automatically after a successful submission. If the command fails, leave the file in `tmp/` for inspection.
|
|
161
161
|
|
|
162
162
|
## Report Back
|
|
163
163
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- Auto-generated on 2026-04-
|
|
1
|
+
<!-- Auto-generated on 2026-04-21 by scripts/monorepo/generate-scaffold-contracts.js -->
|
|
2
2
|
---
|
|
3
3
|
title: Reference Contracts
|
|
4
4
|
description: Auto-generated TypeScript contracts for SDK consumers. Do not edit manually.
|
|
@@ -363,6 +363,8 @@ export interface ElevasisFeaturesProviderProps {
|
|
|
363
363
|
timeRange?: TimeRange
|
|
364
364
|
operationsApiUrl?: string
|
|
365
365
|
operationsSSEManager?: SSEConnectionManagerLike
|
|
366
|
+
deliveryApiUrl?: string
|
|
367
|
+
deliverySSEManager?: SSEConnectionManagerLike
|
|
366
368
|
disabledSubsectionPaths?: string[]
|
|
367
369
|
children: ReactNode
|
|
368
370
|
}
|
|
@@ -381,6 +383,8 @@ export interface ElevasisFeaturesContextValue {
|
|
|
381
383
|
timeRange?: TimeRange
|
|
382
384
|
operationsApiUrl?: string
|
|
383
385
|
operationsSSEManager?: SSEConnectionManagerLike
|
|
386
|
+
deliveryApiUrl?: string
|
|
387
|
+
deliverySSEManager?: SSEConnectionManagerLike
|
|
384
388
|
disabledSubsectionPaths: string[]
|
|
385
389
|
isFeatureEnabled: (key: string) => boolean
|
|
386
390
|
getResolvedFeature: (key: string) => ResolvedFeatureModule | undefined
|
|
@@ -130,6 +130,7 @@ Consumer nav derivation runs locally from `shellModel.navItems`; the provider no
|
|
|
130
130
|
- `enabledResolvedFeatures` -- filtered to `access.enabled === true`
|
|
131
131
|
- `timeRange`
|
|
132
132
|
- `operationsApiUrl`, `operationsSSEManager`
|
|
133
|
+
- `deliveryApiUrl`, `deliverySSEManager`
|
|
133
134
|
- `organizationModel`
|
|
134
135
|
- `organizationGraph` (resolved from `operations.organization-graph` surface; see [Organization Graph](../core/organization-graph.mdx))
|
|
135
136
|
- `disabledSubsectionPaths` -- used by consumers like `_template` to hide specific subsections (e.g., `/settings/appearance`)
|