@mengruo/dsh-vision-toolkit 0.0.1 → 0.1.1

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 (51) hide show
  1. package/README.i18n.yaml +2 -2
  2. package/README.md +17 -42
  3. package/README.zh.md +16 -41
  4. package/assets/logo_eapi_dark.png +0 -0
  5. package/docs/aihubmix-gemini-vision.i18n.yaml +2 -2
  6. package/docs/aihubmix-gemini-vision.md +2 -2
  7. package/docs/aihubmix-gemini-vision.zh.md +2 -2
  8. package/lib/client.js +246 -68
  9. package/lib/client.js.map +1 -1
  10. package/lib/config.js +143 -24
  11. package/lib/config.js.map +1 -1
  12. package/lib/evidence-cache.js +14 -0
  13. package/lib/evidence-cache.js.map +1 -1
  14. package/lib/image-input-variants.js +48 -24
  15. package/lib/image-input-variants.js.map +1 -1
  16. package/lib/runtime-install.js +204 -19
  17. package/lib/runtime-install.js.map +1 -1
  18. package/lib/runtime.js +310 -154
  19. package/lib/runtime.js.map +1 -1
  20. package/lib/tools.js +1 -0
  21. package/lib/tools.js.map +1 -1
  22. package/lib/types/client/index.d.ts +45 -3
  23. package/lib/types/client/index.d.ts.map +1 -1
  24. package/lib/types/config.d.ts +53 -0
  25. package/lib/types/config.d.ts.map +1 -1
  26. package/lib/types/evidence-cache.d.ts.map +1 -1
  27. package/lib/types/image-input-variants.d.ts +9 -4
  28. package/lib/types/image-input-variants.d.ts.map +1 -1
  29. package/lib/types/runtime-install.d.ts +21 -0
  30. package/lib/types/runtime-install.d.ts.map +1 -1
  31. package/lib/types/runtime.d.ts +45 -10
  32. package/lib/types/runtime.d.ts.map +1 -1
  33. package/lib/types/tools.d.ts.map +1 -1
  34. package/lib/types/upstream.d.ts +3 -0
  35. package/lib/types/upstream.d.ts.map +1 -1
  36. package/lib/types/web.d.ts +8 -0
  37. package/lib/types/web.d.ts.map +1 -1
  38. package/lib/upstream.js +11 -6
  39. package/lib/upstream.js.map +1 -1
  40. package/lib/web.js +50 -7
  41. package/lib/web.js.map +1 -1
  42. package/package.json +1 -1
  43. package/src/client/index.tsx +331 -88
  44. package/src/config.ts +210 -28
  45. package/src/evidence-cache.ts +14 -0
  46. package/src/image-input-variants.ts +54 -22
  47. package/src/runtime-install.ts +231 -20
  48. package/src/runtime.ts +333 -180
  49. package/src/tools.ts +1 -0
  50. package/src/upstream.ts +15 -8
  51. package/src/web.ts +67 -8
@@ -9,7 +9,7 @@ import { createHash, randomUUID } from 'node:crypto';
9
9
  import { access, chmod, lstat, mkdir, mkdtemp, readFile, readdir, realpath, rename, rm, stat, utimes, writeFile, } from 'node:fs/promises';
10
10
  import { createWriteStream } from 'node:fs';
11
11
  import { homedir } from 'node:os';
12
- import { dirname, join, resolve } from 'node:path';
12
+ import { basename, dirname, join, resolve } from 'node:path';
13
13
  import { Transform } from 'node:stream';
14
14
  import { pipeline } from 'node:stream/promises';
15
15
  import { fileURLToPath } from 'node:url';
@@ -27,6 +27,9 @@ const PYPI_MIRROR_BASE_URL = 'https://mirrors.cloud.tencent.com/pypi/simple';
27
27
  const PROBE_TIMEOUT_MS = 30_000;
28
28
  const LOCK_STALE_MS = 15 * 60 * 1000;
29
29
  const LOCK_HEARTBEAT_MS = 5_000;
30
+ const WINDOWS_FILE_RETRY_ATTEMPTS = 5;
31
+ const WINDOWS_FILE_RETRY_DELAY_MS = 250;
32
+ const LEGACY_RUNTIME_GC_STALE_MS = 24 * 60 * 60 * 1000;
30
33
  /** Absolute root of the packaged upstream snapshot. */
31
34
  export function bundledUpstreamRoot() {
32
35
  return BUNDLED_ROOT;
@@ -38,6 +41,184 @@ export function displayCommand(command) {
38
41
  function sha256(bytes) {
39
42
  return createHash('sha256').update(bytes).digest('hex');
40
43
  }
44
+ /**
45
+ * Windows Defender/antivirus real-time scanning briefly locks freshly written
46
+ * Python DLLs, so recursive removal and directory replacement can fail with
47
+ * EBUSY/EPERM immediately after installation. Retry those transient Windows
48
+ * errors before surfacing them; non-Windows platforms pass through unchanged.
49
+ */
50
+ export async function withWindowsTransientRetry(operation) {
51
+ let lastError;
52
+ for (let attempt = 1; attempt <= WINDOWS_FILE_RETRY_ATTEMPTS; attempt += 1) {
53
+ try {
54
+ return await operation();
55
+ }
56
+ catch (error) {
57
+ lastError = error;
58
+ const code = error instanceof Error ? error.code : undefined;
59
+ const transient = process.platform === 'win32' && (code === 'EBUSY' || code === 'EPERM' || code === 'EACCES');
60
+ if (!transient)
61
+ break;
62
+ if (attempt < WINDOWS_FILE_RETRY_ATTEMPTS) {
63
+ await new Promise(resolveWait => setTimeout(resolveWait, WINDOWS_FILE_RETRY_DELAY_MS * attempt));
64
+ }
65
+ }
66
+ }
67
+ throw lastError;
68
+ }
69
+ /**
70
+ * Best-effort removal used after the primary runtime path has already
71
+ * succeeded or failed. Transient Windows locks must not turn a usable runtime
72
+ * into an error, but leaving the directory behind should still be audible.
73
+ */
74
+ export async function ignoreCleanupFailure(ctx, label, path) {
75
+ try {
76
+ await withWindowsTransientRetry(() => rm(path, { recursive: true, force: true }));
77
+ }
78
+ catch (error) {
79
+ ctx.logger.warn('dsh-vision-toolkit: %s cleanup failed: %s', label, error instanceof Error ? error.message : String(error));
80
+ }
81
+ }
82
+ function runtimeGarbageLockToken(lockBase) {
83
+ return sha256(lockBase).slice(0, 12);
84
+ }
85
+ function managedRuntimeGarbage(name) {
86
+ if (name.startsWith('.prepare-')) {
87
+ const current = /^\.prepare-([a-f0-9]{12})-[^/]{6}$/.exec(name);
88
+ return { kind: 'managed runtime staging', ...(current === null ? {} : { lockToken: current[1] }) };
89
+ }
90
+ const replaced = name.indexOf('.replaced-');
91
+ if (replaced > 0) {
92
+ const stamped = /^(\d{13})-/.exec(name.slice(replaced + '.replaced-'.length));
93
+ return {
94
+ kind: 'managed runtime quarantine',
95
+ lockName: `${name.slice(0, replaced)}.lock`,
96
+ minimumAgeMs: LEGACY_RUNTIME_GC_STALE_MS,
97
+ ...(stamped === null
98
+ ? { observationMarker: '.dsh-vision-toolkit-gc-observed' }
99
+ : { createdAtMs: Number(stamped[1]) }),
100
+ };
101
+ }
102
+ return undefined;
103
+ }
104
+ function bundledPythonGarbage(name) {
105
+ if (!name.startsWith('.python-bootstrap-'))
106
+ return undefined;
107
+ const current = /^\.python-bootstrap-([a-f0-9]{12})-[^/]{6}$/.exec(name);
108
+ return { kind: 'bundled Python staging', ...(current === null ? {} : { lockToken: current[1] }) };
109
+ }
110
+ async function runtimeLockIsActive(lockPath, now) {
111
+ try {
112
+ const info = await stat(lockPath);
113
+ return now - info.mtimeMs <= LOCK_STALE_MS;
114
+ }
115
+ catch (error) {
116
+ if (error.code === 'ENOENT')
117
+ return false;
118
+ return true;
119
+ }
120
+ }
121
+ async function garbageCollectDirectory(ctx, parent, classify, now) {
122
+ let entries;
123
+ try {
124
+ entries = await readdir(parent, { withFileTypes: true });
125
+ }
126
+ catch (error) {
127
+ if (error.code === 'ENOENT')
128
+ return;
129
+ ctx.logger.warn('dsh-vision-toolkit: runtime garbage collection scan failed for %s: %s', parent, error instanceof Error ? error.message : String(error));
130
+ return;
131
+ }
132
+ let activeLockTokens;
133
+ const getActiveLockTokens = async () => {
134
+ if (activeLockTokens !== undefined)
135
+ return activeLockTokens;
136
+ activeLockTokens = new Set();
137
+ for (const lock of entries) {
138
+ if (lock.isDirectory()
139
+ && lock.name.endsWith('.lock')
140
+ && await runtimeLockIsActive(join(parent, lock.name), now)) {
141
+ activeLockTokens.add(runtimeGarbageLockToken(lock.name.slice(0, -'.lock'.length)));
142
+ }
143
+ }
144
+ return activeLockTokens;
145
+ };
146
+ let legacyCollectionSafe;
147
+ for (const entry of entries) {
148
+ if (!entry.isDirectory())
149
+ continue;
150
+ const candidate = classify(entry.name);
151
+ if (candidate === undefined)
152
+ continue;
153
+ const path = join(parent, entry.name);
154
+ if (candidate.lockName !== undefined) {
155
+ if (await runtimeLockIsActive(join(parent, candidate.lockName), now))
156
+ continue;
157
+ }
158
+ else if (candidate.lockToken !== undefined) {
159
+ if ((await getActiveLockTokens()).has(candidate.lockToken))
160
+ continue;
161
+ }
162
+ else {
163
+ if (legacyCollectionSafe === undefined) {
164
+ legacyCollectionSafe = (await getActiveLockTokens()).size === 0;
165
+ }
166
+ if (!legacyCollectionSafe)
167
+ continue;
168
+ try {
169
+ const info = await stat(path);
170
+ if (now - info.mtimeMs <= LEGACY_RUNTIME_GC_STALE_MS)
171
+ continue;
172
+ }
173
+ catch (error) {
174
+ if (error.code === 'ENOENT')
175
+ continue;
176
+ ctx.logger.warn('dsh-vision-toolkit: runtime garbage collection inspection failed for %s: %s', path, error instanceof Error ? error.message : String(error));
177
+ continue;
178
+ }
179
+ }
180
+ if (candidate.minimumAgeMs !== undefined) {
181
+ let createdAt = candidate.createdAtMs;
182
+ if (createdAt === undefined && candidate.observationMarker !== undefined) {
183
+ const marker = join(path, candidate.observationMarker);
184
+ try {
185
+ createdAt = (await stat(marker)).mtimeMs;
186
+ }
187
+ catch (error) {
188
+ if (error.code === 'ENOENT') {
189
+ await writeFile(marker, `${now}\n`, { flag: 'wx' }).catch(() => { });
190
+ }
191
+ continue;
192
+ }
193
+ }
194
+ if (createdAt === undefined) {
195
+ try {
196
+ createdAt = (await stat(path)).mtimeMs;
197
+ }
198
+ catch (error) {
199
+ if (error.code === 'ENOENT')
200
+ continue;
201
+ ctx.logger.warn('dsh-vision-toolkit: runtime garbage collection inspection failed for %s: %s', path, error instanceof Error ? error.message : String(error));
202
+ continue;
203
+ }
204
+ }
205
+ if (now - createdAt <= candidate.minimumAgeMs)
206
+ continue;
207
+ }
208
+ await ignoreCleanupFailure(ctx, `stale ${candidate.kind}`, path);
209
+ }
210
+ }
211
+ /**
212
+ * Opportunistically remove abandoned runtime staging and quarantine trees.
213
+ * Current names encode their owning runtime lock, so live preparation is
214
+ * skipped. Quarantines retain a 24-hour recovery window; legacy names use the
215
+ * same grace period and are collected only when no runtime lock is active
216
+ * because they cannot be associated with a specific lock.
217
+ */
218
+ export async function garbageCollectRuntimeCache(ctx, stateRoot, now = Date.now()) {
219
+ await garbageCollectDirectory(ctx, join(stateRoot, 'python'), managedRuntimeGarbage, now);
220
+ await garbageCollectDirectory(ctx, join(stateRoot, 'python-bootstrap'), bundledPythonGarbage, now);
221
+ }
41
222
  export function isolatedPythonEnvironment(home) {
42
223
  return {
43
224
  HOME: home,
@@ -372,7 +553,7 @@ async function withDirectoryLock(lockPath, fn) {
372
553
  }
373
554
  catch (error) {
374
555
  if (acquired) {
375
- await rm(lockPath, { recursive: true, force: true }).catch(() => { });
556
+ await withWindowsTransientRetry(() => rm(lockPath, { recursive: true, force: true })).catch(() => { });
376
557
  throw error;
377
558
  }
378
559
  if (error.code !== 'EEXIST')
@@ -382,7 +563,7 @@ async function withDirectoryLock(lockPath, fn) {
382
563
  try {
383
564
  const info = await stat(lockPath);
384
565
  if (Date.now() - info.mtimeMs > LOCK_STALE_MS) {
385
- await rm(lockPath, { recursive: true, force: true });
566
+ await withWindowsTransientRetry(() => rm(lockPath, { recursive: true, force: true }));
386
567
  return withDirectoryLock(lockPath, fn);
387
568
  }
388
569
  }
@@ -405,7 +586,7 @@ async function withDirectoryLock(lockPath, fn) {
405
586
  clearInterval(heartbeat);
406
587
  try {
407
588
  if ((await readFile(join(lockPath, 'owner'), 'utf8')).trim() === owner) {
408
- await rm(lockPath, { recursive: true, force: true });
589
+ await withWindowsTransientRetry(() => rm(lockPath, { recursive: true, force: true }));
409
590
  }
410
591
  }
411
592
  catch {
@@ -432,8 +613,8 @@ export async function acquireBundledPython(ctx, stateRoot, cwd, manifestOverride
432
613
  return;
433
614
  const parent = dirname(root);
434
615
  await mkdir(parent, { recursive: true });
435
- await rm(root, { recursive: true, force: true });
436
- const work = await mkdtemp(join(parent, '.python-bootstrap-'));
616
+ await withWindowsTransientRetry(() => rm(root, { recursive: true, force: true }));
617
+ const work = await mkdtemp(join(parent, `.python-bootstrap-${runtimeGarbageLockToken(basename(root))}-`));
437
618
  try {
438
619
  const archive = join(work, 'python.tar.gz');
439
620
  const extractDir = join(work, 'extract');
@@ -461,10 +642,10 @@ export async function acquireBundledPython(ctx, stateRoot, cwd, manifestOverride
461
642
  }
462
643
  if (process.platform !== 'win32')
463
644
  await chmod(extractedInterpreter, 0o755);
464
- await rename(extractDir, root);
645
+ await withWindowsTransientRetry(() => rename(extractDir, root));
465
646
  }
466
647
  finally {
467
- await rm(work, { recursive: true, force: true });
648
+ await ignoreCleanupFailure(ctx, 'bundled Python staging', work);
468
649
  }
469
650
  });
470
651
  const metadata = await pythonMetadata(ctx, command, cwd);
@@ -498,6 +679,7 @@ export async function resolveBootstrapPython(ctx, configured, cwd, manifestOverr
498
679
  try {
499
680
  const stateRoot = visionToolkitStateRoot();
500
681
  await mkdir(stateRoot, { recursive: true });
682
+ await garbageCollectRuntimeCache(ctx, stateRoot);
501
683
  const bundled = await acquireBundledPython(ctx, stateRoot, cwd, manifestOverride, requestImpl);
502
684
  return {
503
685
  command: bundled.command,
@@ -663,7 +845,7 @@ async function waitForManagedRuntime(markerPath, lockPath, expected) {
663
845
  try {
664
846
  const info = await stat(lockPath);
665
847
  if (Date.now() - info.mtimeMs > LOCK_STALE_MS) {
666
- await rm(lockPath, { recursive: true, force: true });
848
+ await withWindowsTransientRetry(() => rm(lockPath, { recursive: true, force: true }));
667
849
  return undefined;
668
850
  }
669
851
  }
@@ -682,11 +864,12 @@ async function releaseManagedLock(lockPath, owner) {
682
864
  catch {
683
865
  return;
684
866
  }
685
- await rm(lockPath, { recursive: true, force: true });
867
+ await withWindowsTransientRetry(() => rm(lockPath, { recursive: true, force: true }));
686
868
  }
687
869
  async function prepareManaged(ctx, config, manifest) {
688
870
  const stateRoot = visionToolkitStateRoot();
689
871
  await mkdir(stateRoot, { recursive: true });
872
+ await garbageCollectRuntimeCache(ctx, stateRoot);
690
873
  const cleanHome = join(stateRoot, 'home');
691
874
  await mkdir(cleanHome, { recursive: true });
692
875
  const bootstrap = await resolveBootstrapPython(ctx, config.runtime.python, cleanHome);
@@ -731,7 +914,7 @@ async function prepareManaged(ctx, config, manifest) {
731
914
  }
732
915
  catch (error) {
733
916
  if (lockAcquired) {
734
- await rm(lockPath, { recursive: true, force: true });
917
+ await withWindowsTransientRetry(() => rm(lockPath, { recursive: true, force: true })).catch(() => { });
735
918
  throw error;
736
919
  }
737
920
  if (error.code !== 'EEXIST')
@@ -756,7 +939,7 @@ async function prepareManaged(ctx, config, manifest) {
756
939
  }
757
940
  return prepareManaged(ctx, config, manifest);
758
941
  }
759
- const staging = await mkdtemp(join(parent, '.prepare-'));
942
+ const staging = await mkdtemp(join(parent, `.prepare-${runtimeGarbageLockToken(runtimeId)}-`));
760
943
  const installEnv = {
761
944
  ...isolatedPythonEnvironment(cleanHome),
762
945
  UV_CACHE_DIR: join(stateRoot, 'uv-cache'),
@@ -820,10 +1003,10 @@ async function prepareManaged(ctx, config, manifest) {
820
1003
  manager,
821
1004
  };
822
1005
  await writeFile(join(staging, 'runtime.json'), `${JSON.stringify(marker, null, 2)}\n`);
823
- const quarantine = `${finalRoot}.replaced-${randomUUID()}`;
1006
+ const quarantine = `${finalRoot}.replaced-${Date.now()}-${randomUUID()}`;
824
1007
  let quarantined = false;
825
1008
  try {
826
- await rename(finalRoot, quarantine);
1009
+ await withWindowsTransientRetry(() => rename(finalRoot, quarantine));
827
1010
  quarantined = true;
828
1011
  }
829
1012
  catch (error) {
@@ -831,12 +1014,12 @@ async function prepareManaged(ctx, config, manifest) {
831
1014
  throw error;
832
1015
  }
833
1016
  try {
834
- await rename(staging, finalRoot);
1017
+ await withWindowsTransientRetry(() => rename(staging, finalRoot));
835
1018
  }
836
1019
  catch (error) {
837
1020
  if (quarantined) {
838
1021
  try {
839
- await rename(quarantine, finalRoot);
1022
+ await withWindowsTransientRetry(() => rename(quarantine, finalRoot));
840
1023
  }
841
1024
  catch (restoreError) {
842
1025
  throw new VisionToolkitError('runtime', `managed runtime replacement failed and the prior runtime could not be restored; recovery copy: ${quarantine}`, { cause: new AggregateError([error, restoreError]) });
@@ -844,14 +1027,16 @@ async function prepareManaged(ctx, config, manifest) {
844
1027
  }
845
1028
  throw error;
846
1029
  }
847
- await rm(quarantine, { recursive: true, force: true });
1030
+ await ignoreCleanupFailure(ctx, 'managed runtime quarantine', quarantine);
848
1031
  const python = { program: interpreter, prefix: [], display: interpreter };
849
1032
  return { source: 'managed', root: BUNDLED_ROOT, python, cleanHome, pythonVersion: metadata.version, dependencies };
850
1033
  }
851
1034
  finally {
852
1035
  clearInterval(heartbeat);
853
- await rm(staging, { recursive: true, force: true });
854
- await releaseManagedLock(lockPath, lockOwner);
1036
+ await ignoreCleanupFailure(ctx, 'managed runtime staging', staging);
1037
+ await releaseManagedLock(lockPath, lockOwner).catch(error => {
1038
+ ctx.logger.warn('dsh-vision-toolkit: managed runtime lock cleanup failed: %s', error instanceof Error ? error.message : String(error));
1039
+ });
855
1040
  }
856
1041
  }
857
1042
  async function snapshotFiles(root) {
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-install.js","sourceRoot":"","sources":["../src/runtime-install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-install.js","sourceRoot":"","sources":["../src/runtime-install.ts"],"names":[],"mappings":"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"}