@agentuity/server 0.1.16 → 0.1.18
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/api/api.d.ts +11 -6
- package/dist/api/api.d.ts.map +1 -1
- package/dist/api/api.js +19 -12
- package/dist/api/api.js.map +1 -1
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +1 -0
- package/dist/api/index.js.map +1 -1
- package/dist/api/org/env-delete.d.ts.map +1 -1
- package/dist/api/org/env-delete.js.map +1 -1
- package/dist/api/org/env-get.d.ts.map +1 -1
- package/dist/api/org/env-get.js.map +1 -1
- package/dist/api/org/env-update.d.ts.map +1 -1
- package/dist/api/org/env-update.js.map +1 -1
- package/dist/api/queue/analytics.d.ts +108 -0
- package/dist/api/queue/analytics.d.ts.map +1 -0
- package/dist/api/queue/analytics.js +245 -0
- package/dist/api/queue/analytics.js.map +1 -0
- package/dist/api/queue/destinations.d.ts +108 -0
- package/dist/api/queue/destinations.d.ts.map +1 -0
- package/dist/api/queue/destinations.js +238 -0
- package/dist/api/queue/destinations.js.map +1 -0
- package/dist/api/queue/dlq.d.ts +100 -0
- package/dist/api/queue/dlq.d.ts.map +1 -0
- package/dist/api/queue/dlq.js +204 -0
- package/dist/api/queue/dlq.js.map +1 -0
- package/dist/api/queue/index.d.ts +55 -0
- package/dist/api/queue/index.d.ts.map +1 -0
- package/dist/api/queue/index.js +86 -0
- package/dist/api/queue/index.js.map +1 -0
- package/dist/api/queue/messages.d.ts +332 -0
- package/dist/api/queue/messages.d.ts.map +1 -0
- package/dist/api/queue/messages.js +637 -0
- package/dist/api/queue/messages.js.map +1 -0
- package/dist/api/queue/queues.d.ts +153 -0
- package/dist/api/queue/queues.d.ts.map +1 -0
- package/dist/api/queue/queues.js +319 -0
- package/dist/api/queue/queues.js.map +1 -0
- package/dist/api/queue/sources.d.ts +132 -0
- package/dist/api/queue/sources.d.ts.map +1 -0
- package/dist/api/queue/sources.js +285 -0
- package/dist/api/queue/sources.js.map +1 -0
- package/dist/api/queue/types.d.ts +1129 -0
- package/dist/api/queue/types.d.ts.map +1 -0
- package/dist/api/queue/types.js +949 -0
- package/dist/api/queue/types.js.map +1 -0
- package/dist/api/queue/util.d.ts +262 -0
- package/dist/api/queue/util.d.ts.map +1 -0
- package/dist/api/queue/util.js +171 -0
- package/dist/api/queue/util.js.map +1 -0
- package/dist/api/queue/validation.d.ts +247 -0
- package/dist/api/queue/validation.d.ts.map +1 -0
- package/dist/api/queue/validation.js +513 -0
- package/dist/api/queue/validation.js.map +1 -0
- package/dist/api/sandbox/get.d.ts.map +1 -1
- package/dist/api/sandbox/get.js +5 -0
- package/dist/api/sandbox/get.js.map +1 -1
- package/dist/api/sandbox/index.d.ts +3 -3
- package/dist/api/sandbox/index.d.ts.map +1 -1
- package/dist/api/sandbox/index.js +1 -1
- package/dist/api/sandbox/index.js.map +1 -1
- package/dist/api/sandbox/run.d.ts.map +1 -1
- package/dist/api/sandbox/run.js +5 -2
- package/dist/api/sandbox/run.js.map +1 -1
- package/dist/api/sandbox/snapshot-build.d.ts +2 -0
- package/dist/api/sandbox/snapshot-build.d.ts.map +1 -1
- package/dist/api/sandbox/snapshot-build.js +4 -0
- package/dist/api/sandbox/snapshot-build.js.map +1 -1
- package/dist/api/sandbox/snapshot.d.ts +143 -1
- package/dist/api/sandbox/snapshot.d.ts.map +1 -1
- package/dist/api/sandbox/snapshot.js +183 -4
- package/dist/api/sandbox/snapshot.js.map +1 -1
- package/package.json +4 -4
- package/src/api/api.ts +62 -13
- package/src/api/index.ts +1 -0
- package/src/api/org/env-delete.ts +1 -4
- package/src/api/org/env-get.ts +1 -4
- package/src/api/org/env-update.ts +1 -4
- package/src/api/queue/analytics.ts +313 -0
- package/src/api/queue/destinations.ts +321 -0
- package/src/api/queue/dlq.ts +283 -0
- package/src/api/queue/index.ts +261 -0
- package/src/api/queue/messages.ts +875 -0
- package/src/api/queue/queues.ts +448 -0
- package/src/api/queue/sources.ts +384 -0
- package/src/api/queue/types.ts +1253 -0
- package/src/api/queue/util.ts +204 -0
- package/src/api/queue/validation.ts +560 -0
- package/src/api/sandbox/get.ts +5 -0
- package/src/api/sandbox/index.ts +13 -1
- package/src/api/sandbox/run.ts +5 -2
- package/src/api/sandbox/snapshot-build.ts +4 -0
- package/src/api/sandbox/snapshot.ts +223 -5
package/dist/api/sandbox/run.js
CHANGED
|
@@ -80,6 +80,7 @@ export async function sandboxRun(client, params) {
|
|
|
80
80
|
// Poll for sandbox completion in parallel with streaming
|
|
81
81
|
let attempts = 0;
|
|
82
82
|
let finalStatus = null;
|
|
83
|
+
let finalExitCode;
|
|
83
84
|
while (attempts < MAX_POLL_ATTEMPTS) {
|
|
84
85
|
if (signal?.aborted) {
|
|
85
86
|
abortController.abort();
|
|
@@ -94,10 +95,12 @@ export async function sandboxRun(client, params) {
|
|
|
94
95
|
const sandboxInfo = await sandboxGet(client, { sandboxId, orgId });
|
|
95
96
|
if (sandboxInfo.status === 'terminated') {
|
|
96
97
|
finalStatus = 'terminated';
|
|
98
|
+
finalExitCode = sandboxInfo.exitCode;
|
|
97
99
|
break;
|
|
98
100
|
}
|
|
99
101
|
if (sandboxInfo.status === 'failed') {
|
|
100
102
|
finalStatus = 'failed';
|
|
103
|
+
finalExitCode = sandboxInfo.exitCode;
|
|
101
104
|
break;
|
|
102
105
|
}
|
|
103
106
|
}
|
|
@@ -115,14 +118,14 @@ export async function sandboxRun(client, params) {
|
|
|
115
118
|
if (finalStatus === 'terminated') {
|
|
116
119
|
return {
|
|
117
120
|
sandboxId,
|
|
118
|
-
exitCode: 0,
|
|
121
|
+
exitCode: finalExitCode ?? 0,
|
|
119
122
|
durationMs: Date.now() - started,
|
|
120
123
|
};
|
|
121
124
|
}
|
|
122
125
|
if (finalStatus === 'failed') {
|
|
123
126
|
return {
|
|
124
127
|
sandboxId,
|
|
125
|
-
exitCode: 1,
|
|
128
|
+
exitCode: finalExitCode ?? 1,
|
|
126
129
|
durationMs: Date.now() - started,
|
|
127
130
|
};
|
|
128
131
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/api/sandbox/run.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAE7D,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAC7B,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAc/B;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC/B,MAAiB,EACjB,MAAwB;IAExB,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IACzF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE3B,IAAI,aAAiC,CAAC;IACtC,IAAI,cAAkC,CAAC;IAEvC,4DAA4D;IAC5D,IAAI,KAAK,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;QAC/B,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5E,aAAa,GAAG,YAAY,CAAC,EAAE,CAAC;QAChC,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC;QAClC,MAAM,EAAE,KAAK,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE;QAClD,OAAO,EAAE;YACR,GAAG,OAAO;YACV,OAAO,EAAE;gBACR,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;gBAC1B,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK;gBAC5B,IAAI,EAAE,SAAS;aACf;YACD,MAAM,EAAE;gBACP,GAAG,OAAO,CAAC,MAAM;gBACjB,KAAK,EAAE,aAAa;aACpB;SACD;QACD,KAAK;KACL,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC;IAC3C,MAAM,eAAe,GAAG,cAAc,CAAC,eAAe,CAAC;IACvD,MAAM,eAAe,GAAG,cAAc,CAAC,eAAe,CAAC;IAEvD,MAAM,EAAE,KAAK,CACZ,mDAAmD,EACnD,SAAS,EACT,eAAe,IAAI,MAAM,EACzB,eAAe,IAAI,MAAM,CACzB,CAAC;IAEF,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IAC9C,MAAM,cAAc,GAAoB,EAAE,CAAC;IAE3C,IAAI,CAAC;QACJ,0DAA0D;QAC1D,IAAI,KAAK,IAAI,cAAc,IAAI,MAAM,EAAE,CAAC;YACvC,MAAM,YAAY,GAAG,gBAAgB,CACpC,KAAK,EACL,cAAc,EACd,MAAM,EACN,eAAe,CAAC,MAAM,EACtB,MAAM,CACN,CAAC;YACF,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACnC,CAAC;QAED,mEAAmE;QACnE,MAAM,gBAAgB,GACrB,eAAe,IAAI,eAAe,IAAI,eAAe,KAAK,eAAe,CAAC;QAE3E,IAAI,gBAAgB,EAAE,CAAC;YACtB,4DAA4D;YAC5D,IAAI,MAAM,EAAE,CAAC;gBACZ,MAAM,EAAE,KAAK,CAAC,kDAAkD,CAAC,CAAC;gBAClE,MAAM,eAAe,GAAG,mBAAmB,CAC1C,eAAe,EACf,MAAM,EACN,eAAe,CAAC,MAAM,EACtB,MAAM,CACN,CAAC;gBACF,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACtC,CAAC;QACF,CAAC;aAAM,CAAC;YACP,yBAAyB;YACzB,IAAI,eAAe,IAAI,MAAM,EAAE,CAAC;gBAC/B,MAAM,aAAa,GAAG,mBAAmB,CACxC,eAAe,EACf,MAAM,EACN,eAAe,CAAC,MAAM,EACtB,MAAM,CACN,CAAC;gBACF,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACpC,CAAC;YAED,yBAAyB;YACzB,IAAI,eAAe,IAAI,MAAM,EAAE,CAAC;gBAC/B,MAAM,aAAa,GAAG,mBAAmB,CACxC,eAAe,EACf,MAAM,EACN,eAAe,CAAC,MAAM,EACtB,MAAM,CACN,CAAC;gBACF,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACpC,CAAC;QACF,CAAC;QAED,yDAAyD;QACzD,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAI,WAAW,GAAmC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/api/sandbox/run.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAE7D,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAC7B,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAc/B;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC/B,MAAiB,EACjB,MAAwB;IAExB,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IACzF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE3B,IAAI,aAAiC,CAAC;IACtC,IAAI,cAAkC,CAAC;IAEvC,4DAA4D;IAC5D,IAAI,KAAK,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;QAC/B,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5E,aAAa,GAAG,YAAY,CAAC,EAAE,CAAC;QAChC,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC;QAClC,MAAM,EAAE,KAAK,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE;QAClD,OAAO,EAAE;YACR,GAAG,OAAO;YACV,OAAO,EAAE;gBACR,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;gBAC1B,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK;gBAC5B,IAAI,EAAE,SAAS;aACf;YACD,MAAM,EAAE;gBACP,GAAG,OAAO,CAAC,MAAM;gBACjB,KAAK,EAAE,aAAa;aACpB;SACD;QACD,KAAK;KACL,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC;IAC3C,MAAM,eAAe,GAAG,cAAc,CAAC,eAAe,CAAC;IACvD,MAAM,eAAe,GAAG,cAAc,CAAC,eAAe,CAAC;IAEvD,MAAM,EAAE,KAAK,CACZ,mDAAmD,EACnD,SAAS,EACT,eAAe,IAAI,MAAM,EACzB,eAAe,IAAI,MAAM,CACzB,CAAC;IAEF,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IAC9C,MAAM,cAAc,GAAoB,EAAE,CAAC;IAE3C,IAAI,CAAC;QACJ,0DAA0D;QAC1D,IAAI,KAAK,IAAI,cAAc,IAAI,MAAM,EAAE,CAAC;YACvC,MAAM,YAAY,GAAG,gBAAgB,CACpC,KAAK,EACL,cAAc,EACd,MAAM,EACN,eAAe,CAAC,MAAM,EACtB,MAAM,CACN,CAAC;YACF,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACnC,CAAC;QAED,mEAAmE;QACnE,MAAM,gBAAgB,GACrB,eAAe,IAAI,eAAe,IAAI,eAAe,KAAK,eAAe,CAAC;QAE3E,IAAI,gBAAgB,EAAE,CAAC;YACtB,4DAA4D;YAC5D,IAAI,MAAM,EAAE,CAAC;gBACZ,MAAM,EAAE,KAAK,CAAC,kDAAkD,CAAC,CAAC;gBAClE,MAAM,eAAe,GAAG,mBAAmB,CAC1C,eAAe,EACf,MAAM,EACN,eAAe,CAAC,MAAM,EACtB,MAAM,CACN,CAAC;gBACF,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACtC,CAAC;QACF,CAAC;aAAM,CAAC;YACP,yBAAyB;YACzB,IAAI,eAAe,IAAI,MAAM,EAAE,CAAC;gBAC/B,MAAM,aAAa,GAAG,mBAAmB,CACxC,eAAe,EACf,MAAM,EACN,eAAe,CAAC,MAAM,EACtB,MAAM,CACN,CAAC;gBACF,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACpC,CAAC;YAED,yBAAyB;YACzB,IAAI,eAAe,IAAI,MAAM,EAAE,CAAC;gBAC/B,MAAM,aAAa,GAAG,mBAAmB,CACxC,eAAe,EACf,MAAM,EACN,eAAe,CAAC,MAAM,EACtB,MAAM,CACN,CAAC;gBACF,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACpC,CAAC;QACF,CAAC;QAED,yDAAyD;QACzD,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAI,WAAW,GAAmC,IAAI,CAAC;QACvD,IAAI,aAAiC,CAAC;QAEtC,OAAO,QAAQ,GAAG,iBAAiB,EAAE,CAAC;YACrC,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;gBACrB,eAAe,CAAC,KAAK,EAAE,CAAC;gBACxB,MAAM,IAAI,oBAAoB,CAAC;oBAC9B,OAAO,EAAE,6BAA6B;oBACtC,SAAS;iBACT,CAAC,CAAC;YACJ,CAAC;YAED,MAAM,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAC9B,QAAQ,EAAE,CAAC;YAEX,IAAI,CAAC;gBACJ,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;gBAEnE,IAAI,WAAW,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;oBACzC,WAAW,GAAG,YAAY,CAAC;oBAC3B,aAAa,GAAG,WAAW,CAAC,QAAQ,CAAC;oBACrC,MAAM;gBACP,CAAC;gBAED,IAAI,WAAW,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACrC,WAAW,GAAG,QAAQ,CAAC;oBACvB,aAAa,GAAG,WAAW,CAAC,QAAQ,CAAC;oBACrC,MAAM;gBACP,CAAC;YACF,CAAC;YAAC,MAAM,CAAC;gBACR,kCAAkC;gBAClC,SAAS;YACV,CAAC;QACF,CAAC;QAED,mEAAmE;QACnE,0EAA0E;QAC1E,2DAA2D;QAC3D,MAAM,EAAE,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACpD,MAAM,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QACzC,MAAM,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAEnC,IAAI,WAAW,KAAK,YAAY,EAAE,CAAC;YAClC,OAAO;gBACN,SAAS;gBACT,QAAQ,EAAE,aAAa,IAAI,CAAC;gBAC5B,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;aAChC,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO;gBACN,SAAS;gBACT,QAAQ,EAAE,aAAa,IAAI,CAAC;gBAC5B,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;aAChC,CAAC;QACH,CAAC;QAED,MAAM,IAAI,oBAAoB,CAAC;YAC9B,OAAO,EAAE,qCAAqC;YAC9C,SAAS;SACT,CAAC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,eAAe,CAAC,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC;YACJ,MAAM,cAAc,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QACpD,CAAC;QAAC,MAAM,CAAC;YACR,wBAAwB;QACzB,CAAC;QACD,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC/B,MAAc,EACd,MAAc,EACd,KAAc,EACd,MAAe;IAEf,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;IAElC,4DAA4D;IAC5D,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;IAC1C,IAAI,KAAK,EAAE,CAAC;QACX,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;IAC3C,MAAM,GAAG,GAAG,GAAG,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACtE,MAAM,EAAE,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QACjC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACR,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,MAAM,EAAE;SACjC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACpB,IAAI,EAAE,iBAAiB,IAAI,CAAC,GAAG,EAAE,EAAE;SACnC,CAAC;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,kCAAkC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAmB,CAAC;IACvD,MAAM,EAAE,KAAK,CAAC,0BAA0B,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAEnD,mFAAmF;IACnF,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,OAAO;QACN,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,GAAG,EAAE,GAAG,aAAa,IAAI,IAAI,CAAC,EAAE,GAAG,cAAc,EAAE;KACnD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC9B,KAAe,EACf,GAAW,EACX,MAAc,EACd,MAAmB,EACnB,MAAe;IAEf,IAAI,CAAC;QACJ,MAAM,EAAE,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;QAE7C,kEAAkE;QAClE,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAC7B,MAAM,SAAS,GAAG,IAAI,cAAc,CAAC;YACpC,KAAK,CAAC,UAAU;gBACf,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;oBAClC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBAC1C,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC3B,CAAC;gBACF,CAAC,CAAC,CAAC;gBACH,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;oBACpB,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACvB,gBAAgB,GAAG,IAAI,CAAC;wBACxB,UAAU,CAAC,KAAK,EAAE,CAAC;oBACpB,CAAC;gBACF,CAAC,CAAC,CAAC;gBACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;oBACzB,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACvB,gBAAgB,GAAG,IAAI,CAAC;wBACxB,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACvB,CAAC;gBACF,CAAC,CAAC,CAAC;gBACH,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;oBACrC,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACvB,gBAAgB,GAAG,IAAI,CAAC;wBACxB,UAAU,CAAC,KAAK,EAAE,CAAC;oBACpB,CAAC;gBACF,CAAC,CAAC,CAAC;YACJ,CAAC;SACD,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YACjC,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACR,aAAa,EAAE,UAAU,MAAM,EAAE;aACjC;YACD,IAAI,EAAE,SAAS;YACf,MAAM;YACN,MAAM,EAAE,MAAM;SACC,CAAC,CAAC;QAElB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YAClB,MAAM,EAAE,KAAK,CAAC,6BAA6B,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/D,CAAC;aAAM,CAAC;YACP,MAAM,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACzC,CAAC;IACF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACvD,MAAM,EAAE,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACP,MAAM,EAAE,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;QAC9C,CAAC;IACF,CAAC;AACF,CAAC;AAED,KAAK,UAAU,mBAAmB,CACjC,GAAW,EACX,QAAkB,EAClB,MAAmB,EACnB,MAAe;IAEf,IAAI,CAAC;QACJ,MAAM,EAAE,KAAK,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9C,MAAM,EAAE,KAAK,CAAC,4BAA4B,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAE7D,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpC,MAAM,EAAE,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACnD,OAAO;QACR,CAAC;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAEzC,4DAA4D;QAC5D,OAAO,IAAI,EAAE,CAAC;YACb,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,IAAI,EAAE,CAAC;gBACV,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;gBAC5B,MAAM;YACP,CAAC;YAED,IAAI,KAAK,EAAE,CAAC;gBACX,MAAM,EAAE,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;gBACtD,MAAM,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACtC,CAAC;QACF,CAAC;IACF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACvD,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAChC,OAAO;QACR,CAAC;QACD,MAAM,EAAE,KAAK,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;IACxC,CAAC;AACF,CAAC;AAED,SAAS,KAAK,CAAC,EAAU;IACxB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC1D,CAAC"}
|
|
@@ -12,6 +12,7 @@ export declare const SnapshotBuildFileBaseSchema: z.ZodObject<{
|
|
|
12
12
|
files: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
13
13
|
env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
14
14
|
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
15
|
+
public: z.ZodOptional<z.ZodBoolean>;
|
|
15
16
|
}, z.core.$strip>;
|
|
16
17
|
/**
|
|
17
18
|
* Schema with validation refinement - use this for parsing/validation.
|
|
@@ -26,6 +27,7 @@ export declare const SnapshotBuildFileSchema: z.ZodObject<{
|
|
|
26
27
|
files: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
27
28
|
env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
28
29
|
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
30
|
+
public: z.ZodOptional<z.ZodBoolean>;
|
|
29
31
|
}, z.core.$strip>;
|
|
30
32
|
export type SnapshotBuildFile = z.infer<typeof SnapshotBuildFileSchema>;
|
|
31
33
|
//# sourceMappingURL=snapshot-build.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-build.d.ts","sourceRoot":"","sources":["../../../src/api/sandbox/snapshot-build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,2BAA2B
|
|
1
|
+
{"version":3,"file":"snapshot-build.d.ts","sourceRoot":"","sources":["../../../src/api/sandbox/snapshot-build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;iBAyCgD,CAAC;AAEzF;;;GAGG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;iBAUnC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
|
|
@@ -31,6 +31,10 @@ export const SnapshotBuildFileBaseSchema = z
|
|
|
31
31
|
.record(z.string(), z.string())
|
|
32
32
|
.optional()
|
|
33
33
|
.describe('User-defined metadata key-value pairs. Use ${VAR} syntax for build-time substitution via --metadata flag'),
|
|
34
|
+
public: z
|
|
35
|
+
.boolean()
|
|
36
|
+
.optional()
|
|
37
|
+
.describe('Whether to make the snapshot publicly accessible (default: false)'),
|
|
34
38
|
})
|
|
35
39
|
.describe('Agentuity Snapshot Build File - defines a reproducible sandbox environment');
|
|
36
40
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-build.js","sourceRoot":"","sources":["../../../src/api/sandbox/snapshot-build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC;KAC1C,MAAM,CAAC;IACP,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IAC3D,OAAO,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,CAAC,yEAAyE,CAAC;IACrF,IAAI,EAAE,CAAC;SACL,MAAM,EAAE;SACR,KAAK,CAAC,kBAAkB,CAAC;SACzB,QAAQ,EAAE;SACV,QAAQ,CAAC,wDAAwD,CAAC;IACpE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;IACzF,YAAY,EAAE,CAAC;SACb,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CACR,oHAAoH,CACpH;IACF,KAAK,EAAE,CAAC;SACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CACR,oHAAoH,CACpH;IACF,GAAG,EAAE,CAAC;SACJ,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9B,QAAQ,EAAE;SACV,QAAQ,CACR,4FAA4F,CAC5F;IACF,QAAQ,EAAE,CAAC;SACT,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9B,QAAQ,EAAE;SACV,QAAQ,CACR,0GAA0G,CAC1G;
|
|
1
|
+
{"version":3,"file":"snapshot-build.js","sourceRoot":"","sources":["../../../src/api/sandbox/snapshot-build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC;KAC1C,MAAM,CAAC;IACP,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IAC3D,OAAO,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,CAAC,yEAAyE,CAAC;IACrF,IAAI,EAAE,CAAC;SACL,MAAM,EAAE;SACR,KAAK,CAAC,kBAAkB,CAAC;SACzB,QAAQ,EAAE;SACV,QAAQ,CAAC,wDAAwD,CAAC;IACpE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;IACzF,YAAY,EAAE,CAAC;SACb,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CACR,oHAAoH,CACpH;IACF,KAAK,EAAE,CAAC;SACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CACR,oHAAoH,CACpH;IACF,GAAG,EAAE,CAAC;SACJ,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9B,QAAQ,EAAE;SACV,QAAQ,CACR,4FAA4F,CAC5F;IACF,QAAQ,EAAE,CAAC;SACT,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9B,QAAQ,EAAE;SACV,QAAQ,CACR,0GAA0G,CAC1G;IACF,MAAM,EAAE,CAAC;SACP,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,mEAAmE,CAAC;CAC/E,CAAC;KACD,QAAQ,CAAC,4EAA4E,CAAC,CAAC;AAEzF;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,2BAA2B,CAAC,MAAM,CACxE,CAAC,IAAI,EAAE,EAAE;IACR,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5D,OAAO,eAAe,IAAI,QAAQ,IAAI,MAAM,CAAC;AAC9C,CAAC,EACD;IACC,OAAO,EAAE,+DAA+D;CACxE,CACD,CAAC"}
|
|
@@ -3,21 +3,42 @@ import { APIClient } from '../api';
|
|
|
3
3
|
declare const SnapshotFileInfoSchema: z.ZodObject<{
|
|
4
4
|
path: z.ZodString;
|
|
5
5
|
size: z.ZodNumber;
|
|
6
|
+
sha256: z.ZodString;
|
|
7
|
+
contentType: z.ZodString;
|
|
8
|
+
mode: z.ZodNumber;
|
|
6
9
|
}, z.core.$strip>;
|
|
7
10
|
declare const SnapshotInfoSchema: z.ZodObject<{
|
|
8
11
|
snapshotId: z.ZodString;
|
|
9
12
|
runtimeId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
10
13
|
name: z.ZodString;
|
|
14
|
+
fullName: z.ZodOptional<z.ZodString>;
|
|
11
15
|
description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
16
|
+
message: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
12
17
|
tag: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
13
18
|
sizeBytes: z.ZodNumber;
|
|
14
19
|
fileCount: z.ZodNumber;
|
|
15
20
|
parentSnapshotId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
21
|
+
public: z.ZodOptional<z.ZodBoolean>;
|
|
22
|
+
orgName: z.ZodOptional<z.ZodString>;
|
|
23
|
+
orgSlug: z.ZodOptional<z.ZodString>;
|
|
24
|
+
org: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
25
|
+
id: z.ZodString;
|
|
26
|
+
name: z.ZodString;
|
|
27
|
+
slug: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
28
|
+
}, z.core.$strip>>>;
|
|
29
|
+
user: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
30
|
+
id: z.ZodString;
|
|
31
|
+
firstName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
32
|
+
lastName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
33
|
+
}, z.core.$strip>>>;
|
|
16
34
|
createdAt: z.ZodString;
|
|
17
35
|
downloadUrl: z.ZodOptional<z.ZodString>;
|
|
18
36
|
files: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
|
|
19
37
|
path: z.ZodString;
|
|
20
38
|
size: z.ZodNumber;
|
|
39
|
+
sha256: z.ZodString;
|
|
40
|
+
contentType: z.ZodString;
|
|
41
|
+
mode: z.ZodNumber;
|
|
21
42
|
}, z.core.$strip>>>>;
|
|
22
43
|
userMetadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodString>>>;
|
|
23
44
|
}, z.core.$strip>;
|
|
@@ -26,29 +47,93 @@ declare const SnapshotListDataSchema: z.ZodObject<{
|
|
|
26
47
|
snapshotId: z.ZodString;
|
|
27
48
|
runtimeId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
28
49
|
name: z.ZodString;
|
|
50
|
+
fullName: z.ZodOptional<z.ZodString>;
|
|
29
51
|
description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
52
|
+
message: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
30
53
|
tag: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
31
54
|
sizeBytes: z.ZodNumber;
|
|
32
55
|
fileCount: z.ZodNumber;
|
|
33
56
|
parentSnapshotId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
57
|
+
public: z.ZodOptional<z.ZodBoolean>;
|
|
58
|
+
orgName: z.ZodOptional<z.ZodString>;
|
|
59
|
+
orgSlug: z.ZodOptional<z.ZodString>;
|
|
60
|
+
org: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
61
|
+
id: z.ZodString;
|
|
62
|
+
name: z.ZodString;
|
|
63
|
+
slug: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
64
|
+
}, z.core.$strip>>>;
|
|
65
|
+
user: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
66
|
+
id: z.ZodString;
|
|
67
|
+
firstName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
68
|
+
lastName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
69
|
+
}, z.core.$strip>>>;
|
|
34
70
|
createdAt: z.ZodString;
|
|
35
71
|
downloadUrl: z.ZodOptional<z.ZodString>;
|
|
36
72
|
files: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
|
|
37
73
|
path: z.ZodString;
|
|
38
74
|
size: z.ZodNumber;
|
|
75
|
+
sha256: z.ZodString;
|
|
76
|
+
contentType: z.ZodString;
|
|
77
|
+
mode: z.ZodNumber;
|
|
39
78
|
}, z.core.$strip>>>>;
|
|
40
79
|
userMetadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodString>>>;
|
|
41
80
|
}, z.core.$strip>>;
|
|
42
81
|
total: z.ZodNumber;
|
|
43
82
|
}, z.core.$strip>;
|
|
83
|
+
declare const SnapshotLineageEntrySchema: z.ZodObject<{
|
|
84
|
+
snapshotId: z.ZodString;
|
|
85
|
+
name: z.ZodString;
|
|
86
|
+
fullName: z.ZodOptional<z.ZodString>;
|
|
87
|
+
message: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
88
|
+
tag: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
89
|
+
parentSnapshotId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
90
|
+
public: z.ZodBoolean;
|
|
91
|
+
org: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
92
|
+
id: z.ZodString;
|
|
93
|
+
name: z.ZodString;
|
|
94
|
+
slug: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
95
|
+
}, z.core.$strip>>>;
|
|
96
|
+
user: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
97
|
+
id: z.ZodString;
|
|
98
|
+
firstName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
99
|
+
lastName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
100
|
+
}, z.core.$strip>>>;
|
|
101
|
+
createdAt: z.ZodString;
|
|
102
|
+
}, z.core.$strip>;
|
|
103
|
+
declare const SnapshotLineageDataSchema: z.ZodObject<{
|
|
104
|
+
lineage: z.ZodArray<z.ZodObject<{
|
|
105
|
+
snapshotId: z.ZodString;
|
|
106
|
+
name: z.ZodString;
|
|
107
|
+
fullName: z.ZodOptional<z.ZodString>;
|
|
108
|
+
message: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
109
|
+
tag: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
110
|
+
parentSnapshotId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
111
|
+
public: z.ZodBoolean;
|
|
112
|
+
org: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
113
|
+
id: z.ZodString;
|
|
114
|
+
name: z.ZodString;
|
|
115
|
+
slug: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
116
|
+
}, z.core.$strip>>>;
|
|
117
|
+
user: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
118
|
+
id: z.ZodString;
|
|
119
|
+
firstName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
120
|
+
lastName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
121
|
+
}, z.core.$strip>>>;
|
|
122
|
+
createdAt: z.ZodString;
|
|
123
|
+
}, z.core.$strip>>;
|
|
124
|
+
total: z.ZodNumber;
|
|
125
|
+
}, z.core.$strip>;
|
|
44
126
|
export type SnapshotFileInfo = z.infer<typeof SnapshotFileInfoSchema>;
|
|
45
127
|
export type SnapshotInfo = z.infer<typeof SnapshotInfoSchema>;
|
|
46
128
|
export type SnapshotListResponse = z.infer<typeof SnapshotListDataSchema>;
|
|
129
|
+
export type SnapshotLineageEntry = z.infer<typeof SnapshotLineageEntrySchema>;
|
|
130
|
+
export type SnapshotLineageResponse = z.infer<typeof SnapshotLineageDataSchema>;
|
|
47
131
|
declare const _SnapshotCreateParamsSchema: z.ZodObject<{
|
|
48
132
|
sandboxId: z.ZodString;
|
|
49
133
|
name: z.ZodOptional<z.ZodString>;
|
|
50
134
|
description: z.ZodOptional<z.ZodString>;
|
|
51
135
|
tag: z.ZodOptional<z.ZodString>;
|
|
136
|
+
public: z.ZodOptional<z.ZodBoolean>;
|
|
52
137
|
orgId: z.ZodOptional<z.ZodString>;
|
|
53
138
|
}, z.core.$strip>;
|
|
54
139
|
declare const _SnapshotGetParamsSchema: z.ZodObject<{
|
|
@@ -70,11 +155,19 @@ declare const _SnapshotTagParamsSchema: z.ZodObject<{
|
|
|
70
155
|
tag: z.ZodNullable<z.ZodString>;
|
|
71
156
|
orgId: z.ZodOptional<z.ZodString>;
|
|
72
157
|
}, z.core.$strip>;
|
|
158
|
+
declare const _SnapshotLineageParamsSchema: z.ZodObject<{
|
|
159
|
+
snapshot: z.ZodOptional<z.ZodString>;
|
|
160
|
+
name: z.ZodOptional<z.ZodString>;
|
|
161
|
+
tag: z.ZodOptional<z.ZodString>;
|
|
162
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
163
|
+
orgId: z.ZodOptional<z.ZodString>;
|
|
164
|
+
}, z.core.$strip>;
|
|
73
165
|
export type SnapshotCreateParams = z.infer<typeof _SnapshotCreateParamsSchema>;
|
|
74
166
|
export type SnapshotGetParams = z.infer<typeof _SnapshotGetParamsSchema>;
|
|
75
167
|
export type SnapshotListParams = z.infer<typeof _SnapshotListParamsSchema>;
|
|
76
168
|
export type SnapshotDeleteParams = z.infer<typeof _SnapshotDeleteParamsSchema>;
|
|
77
169
|
export type SnapshotTagParams = z.infer<typeof _SnapshotTagParamsSchema>;
|
|
170
|
+
export type SnapshotLineageParams = z.infer<typeof _SnapshotLineageParamsSchema>;
|
|
78
171
|
/**
|
|
79
172
|
* Creates a snapshot of a sandbox's current state.
|
|
80
173
|
*
|
|
@@ -119,6 +212,30 @@ export declare function snapshotDelete(client: APIClient, params: SnapshotDelete
|
|
|
119
212
|
* @throws {SandboxResponseError} If the snapshot is not found or update fails
|
|
120
213
|
*/
|
|
121
214
|
export declare function snapshotTag(client: APIClient, params: SnapshotTagParams): Promise<SnapshotInfo>;
|
|
215
|
+
/**
|
|
216
|
+
* Gets the lineage (ancestry chain) of a snapshot.
|
|
217
|
+
*
|
|
218
|
+
* Returns an ordered list of snapshots from the specified snapshot (or latest by name)
|
|
219
|
+
* walking back through parentSnapshotId references to the root.
|
|
220
|
+
*
|
|
221
|
+
* @param client - The API client to use for the request
|
|
222
|
+
* @param params - Parameters specifying which snapshot to get lineage for
|
|
223
|
+
* @returns Ordered list of snapshots in the lineage (newest to oldest)
|
|
224
|
+
* @throws {SandboxResponseError} If the snapshot is not found or request fails
|
|
225
|
+
*
|
|
226
|
+
* @example
|
|
227
|
+
* // Get lineage starting from a specific snapshot ID
|
|
228
|
+
* const lineage = await snapshotLineage(client, { snapshot: 'snp_abc123' });
|
|
229
|
+
*
|
|
230
|
+
* @example
|
|
231
|
+
* // Get lineage starting from the latest snapshot with a given name
|
|
232
|
+
* const lineage = await snapshotLineage(client, { name: 'myapp' });
|
|
233
|
+
*
|
|
234
|
+
* @example
|
|
235
|
+
* // Get lineage starting from a specific name:tag
|
|
236
|
+
* const lineage = await snapshotLineage(client, { name: 'myapp', tag: 'v1.0.0' });
|
|
237
|
+
*/
|
|
238
|
+
export declare function snapshotLineage(client: APIClient, params: SnapshotLineageParams): Promise<SnapshotLineageResponse>;
|
|
122
239
|
declare const _SnapshotBuildInitParamsSchema: z.ZodObject<{
|
|
123
240
|
runtime: z.ZodString;
|
|
124
241
|
name: z.ZodOptional<z.ZodString>;
|
|
@@ -127,12 +244,12 @@ declare const _SnapshotBuildInitParamsSchema: z.ZodObject<{
|
|
|
127
244
|
contentHash: z.ZodOptional<z.ZodString>;
|
|
128
245
|
force: z.ZodOptional<z.ZodBoolean>;
|
|
129
246
|
encrypt: z.ZodOptional<z.ZodBoolean>;
|
|
247
|
+
public: z.ZodOptional<z.ZodBoolean>;
|
|
130
248
|
orgId: z.ZodOptional<z.ZodString>;
|
|
131
249
|
}, z.core.$strip>;
|
|
132
250
|
declare const SnapshotBuildInitResponseSchema: z.ZodObject<{
|
|
133
251
|
snapshotId: z.ZodOptional<z.ZodString>;
|
|
134
252
|
uploadUrl: z.ZodOptional<z.ZodString>;
|
|
135
|
-
s3Key: z.ZodOptional<z.ZodString>;
|
|
136
253
|
publicKey: z.ZodOptional<z.ZodString>;
|
|
137
254
|
unchanged: z.ZodOptional<z.ZodBoolean>;
|
|
138
255
|
existingId: z.ZodOptional<z.ZodString>;
|
|
@@ -146,6 +263,9 @@ declare const _SnapshotBuildFinalizeParamsSchema: z.ZodObject<{
|
|
|
146
263
|
files: z.ZodArray<z.ZodObject<{
|
|
147
264
|
path: z.ZodString;
|
|
148
265
|
size: z.ZodNumber;
|
|
266
|
+
sha256: z.ZodString;
|
|
267
|
+
contentType: z.ZodString;
|
|
268
|
+
mode: z.ZodNumber;
|
|
149
269
|
}, z.core.$strip>>;
|
|
150
270
|
dependencies: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
151
271
|
env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
@@ -173,5 +293,27 @@ export declare function snapshotBuildInit(client: APIClient, params: SnapshotBui
|
|
|
173
293
|
* @throws {SandboxResponseError} If the finalization fails
|
|
174
294
|
*/
|
|
175
295
|
export declare function snapshotBuildFinalize(client: APIClient, params: SnapshotBuildFinalizeParams): Promise<SnapshotInfo>;
|
|
296
|
+
declare const SnapshotUploadResponseSchema: z.ZodObject<{
|
|
297
|
+
success: z.ZodBoolean;
|
|
298
|
+
scanned: z.ZodBoolean;
|
|
299
|
+
message: z.ZodOptional<z.ZodString>;
|
|
300
|
+
}, z.core.$strip>;
|
|
301
|
+
export type SnapshotUploadResponse = z.infer<typeof SnapshotUploadResponseSchema>;
|
|
302
|
+
export interface SnapshotUploadParams {
|
|
303
|
+
snapshotId: string;
|
|
304
|
+
body: Uint8Array | ArrayBuffer | ReadableStream<Uint8Array> | string | Blob;
|
|
305
|
+
contentLength: number;
|
|
306
|
+
orgId?: string;
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* Upload a public snapshot archive via Catalyst (with virus scanning).
|
|
310
|
+
* This should only be used when snapshotBuildInit returns no uploadUrl.
|
|
311
|
+
*
|
|
312
|
+
* @param client - The API client to use for the request
|
|
313
|
+
* @param params - Parameters including snapshotId and the archive body
|
|
314
|
+
* @returns Upload result with scan status
|
|
315
|
+
* @throws {SandboxResponseError} If the upload fails or malware is detected
|
|
316
|
+
*/
|
|
317
|
+
export declare function snapshotUpload(client: APIClient, params: SnapshotUploadParams): Promise<SnapshotUploadResponse>;
|
|
176
318
|
export {};
|
|
177
319
|
//# sourceMappingURL=snapshot.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../src/api/sandbox/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAA8C,MAAM,QAAQ,CAAC;AAG/E,QAAA,MAAM,sBAAsB
|
|
1
|
+
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../src/api/sandbox/snapshot.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,25 @@ const SnapshotFileInfoSchema = z
|
|
|
5
5
|
.object({
|
|
6
6
|
path: z.string().describe('File path within the snapshot'),
|
|
7
7
|
size: z.number().describe('File size in bytes'),
|
|
8
|
+
sha256: z.string().describe('SHA256 hash of the file contents'),
|
|
9
|
+
contentType: z.string().describe('MIME type of the file'),
|
|
10
|
+
mode: z.number().describe('Unix file mode/permissions (e.g., 0o644)'),
|
|
8
11
|
})
|
|
9
12
|
.describe('Information about a file in a snapshot');
|
|
13
|
+
const SnapshotOrgInfoSchema = z
|
|
14
|
+
.object({
|
|
15
|
+
id: z.string().describe('Organization ID'),
|
|
16
|
+
name: z.string().describe('Organization name'),
|
|
17
|
+
slug: z.string().nullable().optional().describe('Organization slug for building full name'),
|
|
18
|
+
})
|
|
19
|
+
.describe('Organization information for public snapshots');
|
|
20
|
+
const SnapshotUserInfoSchema = z
|
|
21
|
+
.object({
|
|
22
|
+
id: z.string().describe('User ID'),
|
|
23
|
+
firstName: z.string().nullable().optional().describe('User first name'),
|
|
24
|
+
lastName: z.string().nullable().optional().describe('User last name'),
|
|
25
|
+
})
|
|
26
|
+
.describe('User information for private snapshots');
|
|
10
27
|
const SnapshotInfoSchema = z
|
|
11
28
|
.object({
|
|
12
29
|
snapshotId: z.string().describe('Unique identifier for the snapshot'),
|
|
@@ -18,7 +35,12 @@ const SnapshotInfoSchema = z
|
|
|
18
35
|
name: z
|
|
19
36
|
.string()
|
|
20
37
|
.describe('Display name for the snapshot (URL-safe: letters, numbers, underscores, dashes)'),
|
|
38
|
+
fullName: z
|
|
39
|
+
.string()
|
|
40
|
+
.optional()
|
|
41
|
+
.describe('Full name with org slug for public snapshots (@slug/name:tag)'),
|
|
21
42
|
description: z.string().nullable().optional().describe('Description of the snapshot'),
|
|
43
|
+
message: z.string().nullable().optional().describe('Build message for the snapshot'),
|
|
22
44
|
tag: z.string().nullable().optional().describe('Tag for the snapshot (defaults to "latest")'),
|
|
23
45
|
sizeBytes: z.number().describe('Total size of the snapshot in bytes'),
|
|
24
46
|
fileCount: z.number().describe('Number of files in the snapshot'),
|
|
@@ -27,6 +49,15 @@ const SnapshotInfoSchema = z
|
|
|
27
49
|
.nullable()
|
|
28
50
|
.optional()
|
|
29
51
|
.describe('ID of the parent snapshot (for incremental snapshots)'),
|
|
52
|
+
public: z.boolean().optional().describe('Whether the snapshot is publicly accessible'),
|
|
53
|
+
orgName: z.string().optional().describe('Organization name (for public snapshots)'),
|
|
54
|
+
orgSlug: z.string().optional().describe('Organization slug (for public snapshots)'),
|
|
55
|
+
org: SnapshotOrgInfoSchema.nullable()
|
|
56
|
+
.optional()
|
|
57
|
+
.describe('Organization details (for public snapshots)'),
|
|
58
|
+
user: SnapshotUserInfoSchema.nullable()
|
|
59
|
+
.optional()
|
|
60
|
+
.describe('User who pushed the snapshot (for private snapshots)'),
|
|
30
61
|
createdAt: z.string().describe('ISO timestamp when the snapshot was created'),
|
|
31
62
|
downloadUrl: z.string().optional().describe('URL to download the snapshot archive'),
|
|
32
63
|
files: z
|
|
@@ -51,12 +82,50 @@ const SnapshotListDataSchema = z
|
|
|
51
82
|
.describe('Paginated list of snapshots');
|
|
52
83
|
const SnapshotListResponseSchema = APIResponseSchema(SnapshotListDataSchema);
|
|
53
84
|
const SnapshotDeleteResponseSchema = APIResponseSchemaNoData();
|
|
85
|
+
const SnapshotLineageEntrySchema = z
|
|
86
|
+
.object({
|
|
87
|
+
snapshotId: z.string().describe('Unique identifier for the snapshot'),
|
|
88
|
+
name: z
|
|
89
|
+
.string()
|
|
90
|
+
.describe('Display name for the snapshot (URL-safe: letters, numbers, underscores, dashes)'),
|
|
91
|
+
fullName: z
|
|
92
|
+
.string()
|
|
93
|
+
.optional()
|
|
94
|
+
.describe('Full name with org slug for public snapshots (@slug/name:tag)'),
|
|
95
|
+
message: z.string().nullable().optional().describe('Build message for the snapshot'),
|
|
96
|
+
tag: z.string().nullable().optional().describe('Tag for the snapshot'),
|
|
97
|
+
parentSnapshotId: z
|
|
98
|
+
.string()
|
|
99
|
+
.nullable()
|
|
100
|
+
.optional()
|
|
101
|
+
.describe('ID of the parent snapshot in the lineage'),
|
|
102
|
+
public: z.boolean().describe('Whether the snapshot is publicly accessible'),
|
|
103
|
+
org: SnapshotOrgInfoSchema.nullable()
|
|
104
|
+
.optional()
|
|
105
|
+
.describe('Organization details (for public snapshots)'),
|
|
106
|
+
user: SnapshotUserInfoSchema.nullable()
|
|
107
|
+
.optional()
|
|
108
|
+
.describe('User who pushed the snapshot (for private snapshots)'),
|
|
109
|
+
createdAt: z.string().describe('ISO timestamp when the snapshot was created'),
|
|
110
|
+
})
|
|
111
|
+
.describe('A single entry in the snapshot lineage chain');
|
|
112
|
+
const SnapshotLineageDataSchema = z
|
|
113
|
+
.object({
|
|
114
|
+
lineage: z.array(SnapshotLineageEntrySchema).describe('Ordered list of snapshots in lineage'),
|
|
115
|
+
total: z.number().describe('Total number of snapshots in the lineage'),
|
|
116
|
+
})
|
|
117
|
+
.describe('Snapshot lineage response');
|
|
118
|
+
const SnapshotLineageResponseSchema = APIResponseSchema(SnapshotLineageDataSchema);
|
|
54
119
|
const _SnapshotCreateParamsSchema = z
|
|
55
120
|
.object({
|
|
56
121
|
sandboxId: z.string().describe('ID of the sandbox to snapshot'),
|
|
57
122
|
name: z.string().optional().describe('Display name for the snapshot'),
|
|
58
123
|
description: z.string().optional().describe('Description of the snapshot'),
|
|
59
124
|
tag: z.string().optional().describe('Tag for the snapshot'),
|
|
125
|
+
public: z
|
|
126
|
+
.boolean()
|
|
127
|
+
.optional()
|
|
128
|
+
.describe('Whether to make the snapshot publicly accessible (default: false)'),
|
|
60
129
|
orgId: z.string().optional().describe('Organization ID'),
|
|
61
130
|
})
|
|
62
131
|
.describe('Parameters for creating a snapshot');
|
|
@@ -87,6 +156,24 @@ const _SnapshotTagParamsSchema = z
|
|
|
87
156
|
orgId: z.string().optional().describe('Organization ID'),
|
|
88
157
|
})
|
|
89
158
|
.describe('Parameters for tagging a snapshot');
|
|
159
|
+
const _SnapshotLineageParamsSchema = z
|
|
160
|
+
.object({
|
|
161
|
+
snapshot: z
|
|
162
|
+
.string()
|
|
163
|
+
.optional()
|
|
164
|
+
.describe('Snapshot ID or name:tag to start lineage from (e.g., "sss_xxx" or "myimage:v1")'),
|
|
165
|
+
name: z
|
|
166
|
+
.string()
|
|
167
|
+
.optional()
|
|
168
|
+
.describe('Snapshot name to start lineage from (uses latest if tag not specified)'),
|
|
169
|
+
tag: z.string().optional().describe('Tag to use with name parameter'),
|
|
170
|
+
limit: z
|
|
171
|
+
.number()
|
|
172
|
+
.optional()
|
|
173
|
+
.describe('Maximum number of snapshots to return in lineage (default: 100, max: 1000)'),
|
|
174
|
+
orgId: z.string().optional().describe('Organization ID'),
|
|
175
|
+
})
|
|
176
|
+
.describe('Parameters for getting snapshot lineage');
|
|
90
177
|
function buildQueryString(params) {
|
|
91
178
|
const query = new URLSearchParams();
|
|
92
179
|
for (const [key, value] of Object.entries(params)) {
|
|
@@ -106,7 +193,7 @@ function buildQueryString(params) {
|
|
|
106
193
|
* @throws {SandboxResponseError} If the snapshot creation fails
|
|
107
194
|
*/
|
|
108
195
|
export async function snapshotCreate(client, params) {
|
|
109
|
-
const { sandboxId, name, description, tag, orgId } = params;
|
|
196
|
+
const { sandboxId, name, description, tag, public: isPublic, orgId } = params;
|
|
110
197
|
const queryString = buildQueryString({ orgId });
|
|
111
198
|
const url = `/sandbox/${API_VERSION}/${sandboxId}/snapshot${queryString}`;
|
|
112
199
|
const body = {};
|
|
@@ -119,6 +206,9 @@ export async function snapshotCreate(client, params) {
|
|
|
119
206
|
if (tag) {
|
|
120
207
|
body.tag = tag;
|
|
121
208
|
}
|
|
209
|
+
if (isPublic !== undefined) {
|
|
210
|
+
body.public = isPublic;
|
|
211
|
+
}
|
|
122
212
|
const resp = await client.post(url, body, SnapshotCreateResponseSchema);
|
|
123
213
|
if (resp.success) {
|
|
124
214
|
return resp.data;
|
|
@@ -195,6 +285,39 @@ export async function snapshotTag(client, params) {
|
|
|
195
285
|
}
|
|
196
286
|
throw new SandboxResponseError({ message: resp.message });
|
|
197
287
|
}
|
|
288
|
+
/**
|
|
289
|
+
* Gets the lineage (ancestry chain) of a snapshot.
|
|
290
|
+
*
|
|
291
|
+
* Returns an ordered list of snapshots from the specified snapshot (or latest by name)
|
|
292
|
+
* walking back through parentSnapshotId references to the root.
|
|
293
|
+
*
|
|
294
|
+
* @param client - The API client to use for the request
|
|
295
|
+
* @param params - Parameters specifying which snapshot to get lineage for
|
|
296
|
+
* @returns Ordered list of snapshots in the lineage (newest to oldest)
|
|
297
|
+
* @throws {SandboxResponseError} If the snapshot is not found or request fails
|
|
298
|
+
*
|
|
299
|
+
* @example
|
|
300
|
+
* // Get lineage starting from a specific snapshot ID
|
|
301
|
+
* const lineage = await snapshotLineage(client, { snapshot: 'snp_abc123' });
|
|
302
|
+
*
|
|
303
|
+
* @example
|
|
304
|
+
* // Get lineage starting from the latest snapshot with a given name
|
|
305
|
+
* const lineage = await snapshotLineage(client, { name: 'myapp' });
|
|
306
|
+
*
|
|
307
|
+
* @example
|
|
308
|
+
* // Get lineage starting from a specific name:tag
|
|
309
|
+
* const lineage = await snapshotLineage(client, { name: 'myapp', tag: 'v1.0.0' });
|
|
310
|
+
*/
|
|
311
|
+
export async function snapshotLineage(client, params) {
|
|
312
|
+
const { snapshot, name, tag, limit, orgId } = params;
|
|
313
|
+
const queryString = buildQueryString({ snapshot, name, tag, limit, orgId });
|
|
314
|
+
const url = `/sandbox/${API_VERSION}/snapshots/lineage${queryString}`;
|
|
315
|
+
const resp = await client.get(url, SnapshotLineageResponseSchema);
|
|
316
|
+
if (resp.success) {
|
|
317
|
+
return resp.data;
|
|
318
|
+
}
|
|
319
|
+
throw new SandboxResponseError({ message: resp.message });
|
|
320
|
+
}
|
|
198
321
|
// ===== Snapshot Build API =====
|
|
199
322
|
const _SnapshotBuildInitParamsSchema = z
|
|
200
323
|
.object({
|
|
@@ -208,6 +331,10 @@ const _SnapshotBuildInitParamsSchema = z
|
|
|
208
331
|
.describe('SHA-256 hash of snapshot content for change detection'),
|
|
209
332
|
force: z.boolean().optional().describe('Force rebuild even if content is unchanged'),
|
|
210
333
|
encrypt: z.boolean().optional().describe('Request encryption for the snapshot archive'),
|
|
334
|
+
public: z
|
|
335
|
+
.boolean()
|
|
336
|
+
.optional()
|
|
337
|
+
.describe('Make snapshot public (enables virus scanning, disables encryption)'),
|
|
211
338
|
orgId: z.string().optional().describe('Organization ID'),
|
|
212
339
|
})
|
|
213
340
|
.describe('Parameters for initializing a snapshot build');
|
|
@@ -217,8 +344,7 @@ const SnapshotBuildInitResponseSchema = z
|
|
|
217
344
|
uploadUrl: z
|
|
218
345
|
.string()
|
|
219
346
|
.optional()
|
|
220
|
-
.describe('Pre-signed URL for uploading the snapshot archive'),
|
|
221
|
-
s3Key: z.string().optional().describe('S3 key where the snapshot will be stored'),
|
|
347
|
+
.describe('Pre-signed URL for uploading the snapshot archive (private snapshots only)'),
|
|
222
348
|
publicKey: z
|
|
223
349
|
.string()
|
|
224
350
|
.optional()
|
|
@@ -254,7 +380,7 @@ const _SnapshotBuildFinalizeParamsSchema = z
|
|
|
254
380
|
* @throws {SandboxResponseError} If the initialization fails
|
|
255
381
|
*/
|
|
256
382
|
export async function snapshotBuildInit(client, params) {
|
|
257
|
-
const { runtime, name, description, tag, contentHash, force, encrypt, orgId } = params;
|
|
383
|
+
const { runtime, name, description, tag, contentHash, force, encrypt, public: isPublic, orgId } = params;
|
|
258
384
|
const queryString = buildQueryString({ orgId });
|
|
259
385
|
const url = `/sandbox/${API_VERSION}/snapshots/build${queryString}`;
|
|
260
386
|
const body = { runtime };
|
|
@@ -270,6 +396,8 @@ export async function snapshotBuildInit(client, params) {
|
|
|
270
396
|
body.force = force;
|
|
271
397
|
if (encrypt)
|
|
272
398
|
body.encrypt = encrypt;
|
|
399
|
+
if (isPublic !== undefined)
|
|
400
|
+
body.public = isPublic;
|
|
273
401
|
const resp = await client.post(url, body, SnapshotBuildInitAPIResponseSchema);
|
|
274
402
|
if (resp.success) {
|
|
275
403
|
return resp.data;
|
|
@@ -305,4 +433,55 @@ export async function snapshotBuildFinalize(client, params) {
|
|
|
305
433
|
}
|
|
306
434
|
throw new SandboxResponseError({ message: resp.message });
|
|
307
435
|
}
|
|
436
|
+
// ===== Snapshot Upload API (for public snapshots) =====
|
|
437
|
+
const SnapshotUploadResponseSchema = z
|
|
438
|
+
.object({
|
|
439
|
+
success: z.boolean().describe('Whether the upload was successful'),
|
|
440
|
+
scanned: z.boolean().describe('Whether the upload was virus scanned'),
|
|
441
|
+
message: z.string().optional().describe('Optional message'),
|
|
442
|
+
})
|
|
443
|
+
.describe('Response from snapshot upload API');
|
|
444
|
+
const _SnapshotUploadAPIResponseSchema = APIResponseSchema(SnapshotUploadResponseSchema);
|
|
445
|
+
/**
|
|
446
|
+
* Upload a public snapshot archive via Catalyst (with virus scanning).
|
|
447
|
+
* This should only be used when snapshotBuildInit returns no uploadUrl.
|
|
448
|
+
*
|
|
449
|
+
* @param client - The API client to use for the request
|
|
450
|
+
* @param params - Parameters including snapshotId and the archive body
|
|
451
|
+
* @returns Upload result with scan status
|
|
452
|
+
* @throws {SandboxResponseError} If the upload fails or malware is detected
|
|
453
|
+
*/
|
|
454
|
+
export async function snapshotUpload(client, params) {
|
|
455
|
+
const { snapshotId, body, contentLength, orgId } = params;
|
|
456
|
+
const queryString = buildQueryString({ orgId });
|
|
457
|
+
const url = `/sandbox/${API_VERSION}/snapshots/${snapshotId}/upload${queryString}`;
|
|
458
|
+
const response = await client.rawPut(url, body, 'application/gzip', undefined, {
|
|
459
|
+
'Content-Length': String(contentLength),
|
|
460
|
+
Accept: 'application/json',
|
|
461
|
+
});
|
|
462
|
+
if (!response.ok) {
|
|
463
|
+
const text = await response.text();
|
|
464
|
+
let message = `Upload failed: ${response.status} ${response.statusText}`;
|
|
465
|
+
try {
|
|
466
|
+
const json = JSON.parse(text);
|
|
467
|
+
if (json.message) {
|
|
468
|
+
message = json.message;
|
|
469
|
+
}
|
|
470
|
+
else if (json.error) {
|
|
471
|
+
message = typeof json.error === 'string' ? json.error : JSON.stringify(json.error);
|
|
472
|
+
}
|
|
473
|
+
}
|
|
474
|
+
catch {
|
|
475
|
+
if (text) {
|
|
476
|
+
message = text;
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
throw new SandboxResponseError({ message });
|
|
480
|
+
}
|
|
481
|
+
const data = (await response.json());
|
|
482
|
+
if (data.success) {
|
|
483
|
+
return data.data;
|
|
484
|
+
}
|
|
485
|
+
throw new SandboxResponseError({ message: data.message });
|
|
486
|
+
}
|
|
308
487
|
//# sourceMappingURL=snapshot.js.map
|