@optima-chat/agentic-sdk 0.33.1 → 0.34.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/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "0.
|
|
1
|
+
export declare const SDK_VERSION = "0.34.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-provider.d.ts","sourceRoot":"","sources":["../../src/workspace/default-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EAOrB,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAIpB,MAAM,WAAW,+BAA+B;IAC9C,6FAA6F;IAC7F,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C;AAED,KAAK,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AA+CxE;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,8BAA8B,CAC5C,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,SAAS,EAC7B,OAAO,GAAE,+BAAoC,GAC5C,iBAAiB,
|
|
1
|
+
{"version":3,"file":"default-provider.d.ts","sourceRoot":"","sources":["../../src/workspace/default-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EAOrB,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAIpB,MAAM,WAAW,+BAA+B;IAC9C,6FAA6F;IAC7F,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C;AAED,KAAK,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AA+CxE;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,8BAA8B,CAC5C,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,SAAS,EAC7B,OAAO,GAAE,+BAAoC,GAC5C,iBAAiB,CA4NnB"}
|
|
@@ -46,6 +46,67 @@ async function asWorkspaceError(res, fallbackOp) {
|
|
|
46
46
|
export function createDefaultWorkspaceProvider(gatewayBaseUrl, authenticatedFetch, options = {}) {
|
|
47
47
|
const base = gatewayBaseUrl.endsWith('/') ? gatewayBaseUrl.slice(0, -1) : gatewayBaseUrl;
|
|
48
48
|
const uploader = options.authenticatedUploader;
|
|
49
|
+
const CHUNK_THRESHOLD = 10 * 1024 * 1024; // >10MB 走分片
|
|
50
|
+
const CHUNK_RETRIES = 3;
|
|
51
|
+
// Backoff is applied *between* attempts, not after the last one — for N retries
|
|
52
|
+
// there are only N-1 gaps, so this array intentionally has CHUNK_RETRIES-1 entries.
|
|
53
|
+
const RETRY_BACKOFF_MS = [250, 500];
|
|
54
|
+
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
|
|
55
|
+
async function chunkedUpload(file, targetPath, onLoaded) {
|
|
56
|
+
const initRes = await authenticatedFetch(`${base}/api/user/files/upload/init`, {
|
|
57
|
+
method: 'POST',
|
|
58
|
+
headers: { 'Content-Type': 'application/json' },
|
|
59
|
+
body: JSON.stringify({ filename: file.name, path: targetPath, size: file.size }),
|
|
60
|
+
});
|
|
61
|
+
if (!initRes.ok)
|
|
62
|
+
throw await asWorkspaceError(initRes, 'upload');
|
|
63
|
+
const { uploadId, chunkSize, totalChunks } = (await initRes.json());
|
|
64
|
+
for (let i = 0; i < totalChunks; i++) {
|
|
65
|
+
const start = i * chunkSize;
|
|
66
|
+
const blob = file.slice(start, Math.min(start + chunkSize, file.size));
|
|
67
|
+
const url = `${base}/api/user/files/upload/${uploadId}/chunk?index=${i}`;
|
|
68
|
+
let ok = false;
|
|
69
|
+
let lastErr;
|
|
70
|
+
for (let attempt = 0; attempt < CHUNK_RETRIES; attempt++) {
|
|
71
|
+
try {
|
|
72
|
+
const form = new FormData();
|
|
73
|
+
form.append('file', blob, 'chunk');
|
|
74
|
+
const res = uploader
|
|
75
|
+
? await uploader(url, form, onLoaded ? (p) => onLoaded(start + p.loaded) : undefined)
|
|
76
|
+
: await authenticatedFetch(url, { method: 'POST', body: form });
|
|
77
|
+
if (res.ok) {
|
|
78
|
+
ok = true;
|
|
79
|
+
onLoaded?.(start + blob.size);
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
const err = await asWorkspaceError(res, 'upload');
|
|
83
|
+
lastErr = err;
|
|
84
|
+
// Only transient failures are worth retrying. A deterministic 4xx (bad chunk,
|
|
85
|
+
// over-limit, not-found) fails identically on retry — fail fast. 429/408 are
|
|
86
|
+
// the retryable exceptions among 4xx.
|
|
87
|
+
if (!(err.status >= 500 || err.status === 429 || err.status === 408))
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
catch (e) {
|
|
91
|
+
lastErr = e;
|
|
92
|
+
}
|
|
93
|
+
if (attempt < CHUNK_RETRIES - 1)
|
|
94
|
+
await sleep(RETRY_BACKOFF_MS[attempt]);
|
|
95
|
+
}
|
|
96
|
+
if (!ok)
|
|
97
|
+
throw lastErr ?? new WorkspaceFileError(500, 'UNKNOWN', `chunk ${i} failed`);
|
|
98
|
+
}
|
|
99
|
+
const done = await authenticatedFetch(`${base}/api/user/files/upload/${uploadId}/complete`, {
|
|
100
|
+
method: 'POST',
|
|
101
|
+
});
|
|
102
|
+
if (!done.ok)
|
|
103
|
+
throw await asWorkspaceError(done, 'upload');
|
|
104
|
+
const body = (await done.json());
|
|
105
|
+
const u = body.uploaded[0];
|
|
106
|
+
if (!u)
|
|
107
|
+
throw new WorkspaceFileError(500, 'UNKNOWN', `Upload of ${file.name} returned no entries`);
|
|
108
|
+
return u;
|
|
109
|
+
}
|
|
49
110
|
function buildUrl(path, query) {
|
|
50
111
|
const qs = query
|
|
51
112
|
? Object.entries(query)
|
|
@@ -61,6 +122,24 @@ export function createDefaultWorkspaceProvider(gatewayBaseUrl, authenticatedFetc
|
|
|
61
122
|
const url = `${base}/api/user/files`;
|
|
62
123
|
const results = [];
|
|
63
124
|
for (const file of files) {
|
|
125
|
+
if (file.size > CHUNK_THRESHOLD) {
|
|
126
|
+
const uploaded = await chunkedUpload(file, targetPath, options.onProgress
|
|
127
|
+
? (loaded) => {
|
|
128
|
+
// Clamp: XHR's `total` for a chunk request is the multipart-encoded
|
|
129
|
+
// body size (blob + form-data boundary/header overhead), so a
|
|
130
|
+
// transient last-chunk progress tick can report loaded slightly
|
|
131
|
+
// over file.size before self-correcting. Never surface >100%.
|
|
132
|
+
const l = Math.min(loaded, file.size);
|
|
133
|
+
options.onProgress(file, {
|
|
134
|
+
loaded: l,
|
|
135
|
+
total: file.size,
|
|
136
|
+
percentage: (l / file.size) * 100,
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
: undefined);
|
|
140
|
+
results.push({ originalName: file.name, url: uploaded.path, mediaType: file.type });
|
|
141
|
+
continue;
|
|
142
|
+
}
|
|
64
143
|
const formData = new FormData();
|
|
65
144
|
// path MUST come before file — gateway sets targetPath as it consumes parts in append order
|
|
66
145
|
formData.append('path', targetPath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-provider.js","sourceRoot":"","sources":["../../src/workspace/default-provider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"default-provider.js","sourceRoot":"","sources":["../../src/workspace/default-provider.ts"],"names":[],"mappings":"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"}
|