clinkx 1.1.2 → 1.2.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/CHANGELOG.md +31 -0
- package/README.md +63 -12
- package/clinkx-workflows/dist/allowed-roots.js +2 -0
- package/clinkx-workflows/dist/allowed-roots.js.map +1 -1
- package/clinkx-workflows/dist/child-env.d.ts +3 -1
- package/clinkx-workflows/dist/child-env.js +6 -2
- package/clinkx-workflows/dist/child-env.js.map +1 -1
- package/clinkx-workflows/dist/config.d.ts +28 -5
- package/clinkx-workflows/dist/config.js +137 -20
- package/clinkx-workflows/dist/config.js.map +1 -1
- package/clinkx-workflows/dist/contained-file.js +9 -0
- package/clinkx-workflows/dist/contained-file.js.map +1 -1
- package/clinkx-workflows/dist/dashboard/session-log-identity.js +2 -1
- package/clinkx-workflows/dist/dashboard/session-log-identity.js.map +1 -1
- package/clinkx-workflows/dist/root-path-validation.d.ts +12 -0
- package/clinkx-workflows/dist/root-path-validation.js +63 -0
- package/clinkx-workflows/dist/root-path-validation.js.map +1 -0
- package/clinkx-workflows/dist/rosters.d.ts +1 -0
- package/clinkx-workflows/dist/rosters.js +16 -6
- package/clinkx-workflows/dist/rosters.js.map +1 -1
- package/clinkx-workflows/dist/server.js +5 -2
- package/clinkx-workflows/dist/server.js.map +1 -1
- package/clinkx-workflows/dist/state-schema.d.ts +13 -0
- package/clinkx-workflows/dist/state.d.ts +7 -1
- package/clinkx-workflows/dist/state.js +74 -13
- package/clinkx-workflows/dist/state.js.map +1 -1
- package/clinkx-workflows/dist/workflow-completion.d.ts +83 -0
- package/clinkx-workflows/dist/workflow-completion.js +250 -0
- package/clinkx-workflows/dist/workflow-completion.js.map +1 -0
- package/clinkx-workflows/dist/workflow-tools.d.ts +4 -3
- package/clinkx-workflows/dist/workflow-tools.js +341 -34
- package/clinkx-workflows/dist/workflow-tools.js.map +1 -1
- package/dist/allowed-roots.d.ts +1 -1
- package/dist/allowed-roots.js +124 -14
- package/dist/allowed-roots.js.map +1 -1
- package/dist/context-builder/config.d.ts +1 -0
- package/dist/context-builder/config.js +21 -9
- package/dist/context-builder/config.js.map +1 -1
- package/dist/context-builder/mutation-lock.d.ts +4 -0
- package/dist/context-builder/mutation-lock.js +7 -1
- package/dist/context-builder/mutation-lock.js.map +1 -1
- package/dist/context-builder/storage.d.ts +10 -2
- package/dist/context-builder/storage.js +213 -16
- package/dist/context-builder/storage.js.map +1 -1
- package/dist/dashboard-cli.d.ts +6 -0
- package/dist/dashboard-cli.js +8 -29
- package/dist/dashboard-cli.js.map +1 -1
- package/dist/registry.d.ts +1 -1
- package/dist/registry.js +5 -1
- package/dist/registry.js.map +1 -1
- package/dist/server.js +12 -5
- package/dist/server.js.map +1 -1
- package/docs/configuration.md +157 -12
- package/docs/security.md +3 -0
- package/package.json +1 -1
- package/scripts/provider-doctor-core.mjs +21 -5
|
@@ -3,6 +3,7 @@ import { randomBytes } from "node:crypto";
|
|
|
3
3
|
import { hostname } from "node:os";
|
|
4
4
|
import { basename, dirname, isAbsolute, join, relative, resolve } from "node:path";
|
|
5
5
|
import { CancellationError, ExecutionError, InvalidParamsError } from "../errors.js";
|
|
6
|
+
import { logger } from "../logger.js";
|
|
6
7
|
import { validateProspectiveChildPath } from "../paths.js";
|
|
7
8
|
import { contextBuilderInternalCapsForManifest, CONTEXT_BUILDER_INTERNAL_CAP_DEFAULTS, resolveContextBuilderRunsDir, } from "./config.js";
|
|
8
9
|
import { boundContextBuilderOmissions, boundContextBuilderWarnings, } from "./diagnostics.js";
|
|
@@ -10,7 +11,7 @@ import { cloneContextBuilderDelegateReceiptMetadata, CONTEXT_BUILDER_DELEGATE_SC
|
|
|
10
11
|
import { validateCallerRunId } from "./run-id.js";
|
|
11
12
|
import { scanSecretPath } from "./secrets.js";
|
|
12
13
|
import { CONTEXT_BUILDER_INVOCATION_AUDIT_FILENAME, readContextBuilderInvocationAuditSidecar, } from "./invocation-sidecar.js";
|
|
13
|
-
import { withContextBuilderMutationLock, } from "./mutation-lock.js";
|
|
14
|
+
import { ContextBuilderMutationLockTimeoutError, withContextBuilderMutationLock, } from "./mutation-lock.js";
|
|
14
15
|
export const CONTEXT_BUILDER_ARTIFACT_FILE_NAMES = Object.freeze({
|
|
15
16
|
manifest_json: "manifest.json",
|
|
16
17
|
bundle_md: "bundle.md",
|
|
@@ -54,6 +55,9 @@ export const WORKFLOW_CONTEXT_CACHE_TTL_SECONDS_ENV = "CLINKX_WORKFLOWS_CONTEXT_
|
|
|
54
55
|
export const DEFAULT_WORKFLOW_CONTEXT_CACHE_MAX_ENTRIES = 50;
|
|
55
56
|
export const DEFAULT_WORKFLOW_CONTEXT_CACHE_TTL_SECONDS = 86_400;
|
|
56
57
|
const DEFAULT_WORKFLOW_CONTEXT_TEMP_TTL_SECONDS = 3_600;
|
|
58
|
+
const WORKFLOW_CONTEXT_CACHE_RUN_PREFIX = "wfctx-";
|
|
59
|
+
const WORKFLOW_CONTEXT_QUARANTINE_PREFIX = ".stale-";
|
|
60
|
+
const WORKFLOW_CONTEXT_QUARANTINE_NAME_PATTERN = /^\.stale-(wfctx-[A-Za-z0-9_-]+)-(\d{1,15})-([0-9a-f]{16})$/;
|
|
57
61
|
export class ContextBuilderAncillaryPromotionError extends ExecutionError {
|
|
58
62
|
reasonCode;
|
|
59
63
|
constructor(reasonCode) {
|
|
@@ -207,14 +211,14 @@ export async function writeContextBuilderArtifactsAndCommit(storage, contents, m
|
|
|
207
211
|
await writeExclusiveText(canonicalStorage.manifestJson, `${JSON.stringify(completeManifest)}\n`, ops, options.signal === undefined ? {} : { signal: options.signal });
|
|
208
212
|
}, { ownerNonce });
|
|
209
213
|
}
|
|
210
|
-
export async function promoteContextBuilderRun(tempRunDir, targetRunId, ops = DEFAULT_STORAGE_OPS) {
|
|
211
|
-
return await withPromotedContextBuilderRun(tempRunDir, targetRunId, async (storage) => storage, ops);
|
|
214
|
+
export async function promoteContextBuilderRun(tempRunDir, targetRunId, ops = DEFAULT_STORAGE_OPS, options = {}) {
|
|
215
|
+
return await withPromotedContextBuilderRun(tempRunDir, targetRunId, async (storage) => storage, ops, options);
|
|
212
216
|
}
|
|
213
217
|
/**
|
|
214
218
|
* Acquire source before target, then retain the target lease through its
|
|
215
219
|
* caller's manifest re-read and materialization callback.
|
|
216
220
|
*/
|
|
217
|
-
export async function withPromotedContextBuilderRun(tempRunDir, targetRunId, callback, ops = DEFAULT_STORAGE_OPS) {
|
|
221
|
+
export async function withPromotedContextBuilderRun(tempRunDir, targetRunId, callback, ops = DEFAULT_STORAGE_OPS, options = {}) {
|
|
218
222
|
const resolvedTempRunDir = resolve(tempRunDir);
|
|
219
223
|
const tempStorage = resolveContextBuilderRunPaths(dirname(resolvedTempRunDir), basename(resolvedTempRunDir));
|
|
220
224
|
return await withCommittedContextBuilderRunMutationLease(tempStorage, async (sourceOps) => {
|
|
@@ -231,11 +235,19 @@ export async function withPromotedContextBuilderRun(tempRunDir, targetRunId, cal
|
|
|
231
235
|
throw new ContextBuilderAncillaryPromotionError("invalid_source");
|
|
232
236
|
}
|
|
233
237
|
const targetStorage = resolveContextBuilderRunPaths(tempStorage.runsDir, targetRunId);
|
|
234
|
-
await claimContextBuilderRunDir(targetStorage, sourceOps
|
|
238
|
+
await claimContextBuilderRunDir(targetStorage, sourceOps, {
|
|
239
|
+
quarantineRelocatedCacheEntry: true,
|
|
240
|
+
});
|
|
241
|
+
const claimedTarget = await admitContextBuilderRunDirectory(targetStorage, sourceOps);
|
|
242
|
+
if (claimedTarget === undefined) {
|
|
243
|
+
throw new ContextBuilderActiveRunClaimConflictError(targetRunId);
|
|
244
|
+
}
|
|
235
245
|
let targetCommitted = false;
|
|
246
|
+
let targetLeaseEntered = false;
|
|
236
247
|
try {
|
|
237
248
|
await sourceOps.mkdir(targetStorage.artifactDir, { recursive: false, mode: 0o700 });
|
|
238
249
|
return await withContextBuilderStorageMutationLock(targetStorage, sourceOps, async (targetOps) => {
|
|
250
|
+
targetLeaseEntered = true;
|
|
239
251
|
await assertManifestAbsentForMutation(targetStorage, targetOps);
|
|
240
252
|
const artifactEntries = Object.entries(tempManifest.artifacts);
|
|
241
253
|
for (const [key, sourcePath] of artifactEntries) {
|
|
@@ -276,16 +288,29 @@ export async function withPromotedContextBuilderRun(tempRunDir, targetRunId, cal
|
|
|
276
288
|
await (targetOps.rm ?? fsRm)(resolvedTempRunDir, { recursive: true, force: true }).catch(() => { });
|
|
277
289
|
await syncDirectoryBestEffort(tempStorage.runsDir, targetOps);
|
|
278
290
|
return await callback(targetStorage, targetOps);
|
|
291
|
+
}, {
|
|
292
|
+
maxAttempts: options.targetLockMaxAttempts,
|
|
293
|
+
// A lock left by a holder that died after quarantining the previous
|
|
294
|
+
// incarnation would otherwise wedge this cache id forever.
|
|
295
|
+
canRecoverStale: async () => await isClaimedUncommittedRunDirectory(targetStorage, claimedTarget, sourceOps),
|
|
279
296
|
});
|
|
280
297
|
}
|
|
281
298
|
catch (error) {
|
|
282
299
|
if (!targetCommitted) {
|
|
283
|
-
// This call claimed the uncommitted target, so it owns cleanup
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
300
|
+
// This call claimed the uncommitted target, so it owns cleanup of
|
|
301
|
+
// that incarnation only.
|
|
302
|
+
if (await isSameRunDirectoryIncarnation(targetStorage, claimedTarget, sourceOps)) {
|
|
303
|
+
await (sourceOps.rm ?? fsRm)(targetStorage.runDir, {
|
|
304
|
+
recursive: true,
|
|
305
|
+
force: true,
|
|
306
|
+
}).catch(() => { });
|
|
307
|
+
await syncDirectoryBestEffort(targetStorage.runsDir, sourceOps);
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
if (!targetLeaseEntered
|
|
311
|
+
&& error instanceof ContextBuilderMutationLockTimeoutError) {
|
|
312
|
+
logger.warn({ run_id: targetRunId, runs_dir: targetStorage.runsDir }, "context_builder skipped cache promotion because the target mutation lock stayed held");
|
|
313
|
+
throw new ContextBuilderActiveRunClaimConflictError(targetRunId);
|
|
289
314
|
}
|
|
290
315
|
throw error;
|
|
291
316
|
}
|
|
@@ -304,8 +329,27 @@ export async function evictWorkflowContextRuns(runsDir, options = {}) {
|
|
|
304
329
|
let scanned = 0;
|
|
305
330
|
let skipped = 0;
|
|
306
331
|
let failed = 0;
|
|
332
|
+
let quarantined = 0;
|
|
333
|
+
let purged = 0;
|
|
307
334
|
for (const entry of entries) {
|
|
308
|
-
if (!entry.isDirectory()
|
|
335
|
+
if (!entry.isDirectory()) {
|
|
336
|
+
continue;
|
|
337
|
+
}
|
|
338
|
+
const quarantineMatch = WORKFLOW_CONTEXT_QUARANTINE_NAME_PATTERN.exec(entry.name);
|
|
339
|
+
if (quarantineMatch !== null) {
|
|
340
|
+
if (nowMs - Number(quarantineMatch[2]) > bounds.tempTtlMs) {
|
|
341
|
+
try {
|
|
342
|
+
if (await purgeQuarantinedWorkflowContextRun(resolvedRunsDir, entry.name, ops)) {
|
|
343
|
+
purged += 1;
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
catch {
|
|
347
|
+
failed += 1;
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
continue;
|
|
351
|
+
}
|
|
352
|
+
if (!isWorkflowContextRunId(entry.name)) {
|
|
309
353
|
continue;
|
|
310
354
|
}
|
|
311
355
|
scanned += 1;
|
|
@@ -318,7 +362,14 @@ export async function evictWorkflowContextRuns(runsDir, options = {}) {
|
|
|
318
362
|
}
|
|
319
363
|
const admission = await admitCommittedContextBuilderRun(storage, ops);
|
|
320
364
|
if (admission === undefined) {
|
|
321
|
-
|
|
365
|
+
if (!protectedRunIds.has(storage.runId)
|
|
366
|
+
&& await quarantineRelocatedWorkflowContextRun(storage, ops, nowMs)
|
|
367
|
+
=== "quarantined") {
|
|
368
|
+
quarantined += 1;
|
|
369
|
+
}
|
|
370
|
+
else {
|
|
371
|
+
skipped += 1;
|
|
372
|
+
}
|
|
322
373
|
continue;
|
|
323
374
|
}
|
|
324
375
|
const currentDirectoryAdmission = await admitContextBuilderRunDirectory(storage, ops);
|
|
@@ -392,10 +443,10 @@ export async function evictWorkflowContextRuns(runsDir, options = {}) {
|
|
|
392
443
|
}
|
|
393
444
|
}
|
|
394
445
|
}
|
|
395
|
-
if (evicted > 0) {
|
|
446
|
+
if (evicted > 0 || purged > 0) {
|
|
396
447
|
await syncDirectoryBestEffort(resolvedRunsDir, ops);
|
|
397
448
|
}
|
|
398
|
-
return { scanned, evicted, skipped, failed };
|
|
449
|
+
return { scanned, evicted, skipped, failed, quarantined, purged };
|
|
399
450
|
}
|
|
400
451
|
export async function cleanupContextBuilderIncompleteRun(storage, ownerNonce, ops = DEFAULT_STORAGE_OPS) {
|
|
401
452
|
const canonicalStorage = canonicalizeContextBuilderStorage(storage);
|
|
@@ -551,6 +602,29 @@ async function admitContextBuilderRunDirectory(storage, ops) {
|
|
|
551
602
|
throw error;
|
|
552
603
|
}
|
|
553
604
|
}
|
|
605
|
+
async function isSameRunDirectoryIncarnation(storage, claimed, ops) {
|
|
606
|
+
try {
|
|
607
|
+
const current = await admitContextBuilderRunDirectory(storage, ops);
|
|
608
|
+
return current !== undefined
|
|
609
|
+
&& current.dev === claimed.dev
|
|
610
|
+
&& current.ino === claimed.ino;
|
|
611
|
+
}
|
|
612
|
+
catch {
|
|
613
|
+
return false;
|
|
614
|
+
}
|
|
615
|
+
}
|
|
616
|
+
async function isClaimedUncommittedRunDirectory(storage, claimed, ops) {
|
|
617
|
+
if (!await isSameRunDirectoryIncarnation(storage, claimed, ops)) {
|
|
618
|
+
return false;
|
|
619
|
+
}
|
|
620
|
+
try {
|
|
621
|
+
await (ops.lstat ?? fsLstat)(storage.manifestJson, { bigint: true });
|
|
622
|
+
return false;
|
|
623
|
+
}
|
|
624
|
+
catch (error) {
|
|
625
|
+
return isNodeError(error) && error.code === "ENOENT";
|
|
626
|
+
}
|
|
627
|
+
}
|
|
554
628
|
function contextBuilderRunDirectoryAdmissionsEqual(left, right) {
|
|
555
629
|
return left.dev === right.dev
|
|
556
630
|
&& left.ino === right.ino
|
|
@@ -681,7 +755,7 @@ async function manifestCleanupDecision(storage, ops) {
|
|
|
681
755
|
};
|
|
682
756
|
}
|
|
683
757
|
}
|
|
684
|
-
async function claimContextBuilderRunDir(paths, ops) {
|
|
758
|
+
async function claimContextBuilderRunDir(paths, ops, options = {}) {
|
|
685
759
|
try {
|
|
686
760
|
await ops.mkdir(paths.runDir, { recursive: false, mode: 0o700 });
|
|
687
761
|
}
|
|
@@ -690,11 +764,134 @@ async function claimContextBuilderRunDir(paths, ops) {
|
|
|
690
764
|
if (await isContextBuilderRunCommitted(paths.runDir, ops)) {
|
|
691
765
|
throw new ContextBuilderRunClaimConflictError(paths.runId);
|
|
692
766
|
}
|
|
767
|
+
if (options.quarantineRelocatedCacheEntry === true
|
|
768
|
+
&& await quarantineRelocatedWorkflowContextRunForClaim(paths, ops)) {
|
|
769
|
+
await claimContextBuilderRunDir(paths, ops);
|
|
770
|
+
return;
|
|
771
|
+
}
|
|
693
772
|
throw new ContextBuilderActiveRunClaimConflictError(paths.runId);
|
|
694
773
|
}
|
|
695
774
|
throw error;
|
|
696
775
|
}
|
|
697
776
|
}
|
|
777
|
+
async function quarantineRelocatedWorkflowContextRunForClaim(paths, ops) {
|
|
778
|
+
try {
|
|
779
|
+
return await quarantineRelocatedWorkflowContextRun(paths, ops, Date.now())
|
|
780
|
+
!== "not_relocated";
|
|
781
|
+
}
|
|
782
|
+
catch (error) {
|
|
783
|
+
logger.warn({ err: error, run_id: paths.runId, runs_dir: paths.runsDir }, "context_builder could not quarantine a relocated workflow cache entry");
|
|
784
|
+
return false;
|
|
785
|
+
}
|
|
786
|
+
}
|
|
787
|
+
/**
|
|
788
|
+
* A wfctx entry whose committed manifest names the same layout under another
|
|
789
|
+
* runs root (the directory was moved). It can never be admitted here because
|
|
790
|
+
* manifest paths are absolute, and it blocks re-promotion of its cache id.
|
|
791
|
+
*/
|
|
792
|
+
async function inspectRelocatedWorkflowContextRun(storage, ops) {
|
|
793
|
+
if (!storage.runId.startsWith(WORKFLOW_CONTEXT_CACHE_RUN_PREFIX)) {
|
|
794
|
+
return undefined;
|
|
795
|
+
}
|
|
796
|
+
const lstat = ops.lstat ?? fsLstat;
|
|
797
|
+
try {
|
|
798
|
+
const directoryAdmission = await admitContextBuilderRunDirectory(storage, ops);
|
|
799
|
+
if (directoryAdmission === undefined) {
|
|
800
|
+
return undefined;
|
|
801
|
+
}
|
|
802
|
+
const manifestStats = await lstat(storage.manifestJson, { bigint: true });
|
|
803
|
+
if (!manifestStats.isFile()) {
|
|
804
|
+
return undefined;
|
|
805
|
+
}
|
|
806
|
+
const serializedManifest = await ops.readFile(storage.manifestJson, "utf8");
|
|
807
|
+
const parsed = JSON.parse(serializedManifest);
|
|
808
|
+
if (!isValidContextBuilderManifest(parsed, storage.runId)) {
|
|
809
|
+
return undefined;
|
|
810
|
+
}
|
|
811
|
+
const artifactKeys = supportedArtifactKeys(parsed.artifacts);
|
|
812
|
+
if (artifactKeys == null
|
|
813
|
+
|| artifactPathsExactlyMatch(parsed.artifacts, storage.artifacts, artifactKeys)) {
|
|
814
|
+
return undefined;
|
|
815
|
+
}
|
|
816
|
+
const previousManifestPath = parsed.artifacts.manifest_json;
|
|
817
|
+
if (!isAbsolute(previousManifestPath)) {
|
|
818
|
+
return undefined;
|
|
819
|
+
}
|
|
820
|
+
const previousRunDir = dirname(previousManifestPath);
|
|
821
|
+
if (previousRunDir === storage.runDir
|
|
822
|
+
|| basename(previousRunDir) !== storage.runId) {
|
|
823
|
+
return undefined;
|
|
824
|
+
}
|
|
825
|
+
const previousStorage = resolveContextBuilderRunPaths(dirname(previousRunDir), storage.runId);
|
|
826
|
+
if (!artifactPathsExactlyMatch(parsed.artifacts, previousStorage.artifacts, artifactKeys)) {
|
|
827
|
+
return undefined;
|
|
828
|
+
}
|
|
829
|
+
await assertRequiredArtifactsReadable(storage, ops, artifactKeys);
|
|
830
|
+
return { serializedManifest, directoryAdmission, previousRunDir };
|
|
831
|
+
}
|
|
832
|
+
catch {
|
|
833
|
+
return undefined;
|
|
834
|
+
}
|
|
835
|
+
}
|
|
836
|
+
async function quarantineRelocatedWorkflowContextRun(storage, ops, nowMs) {
|
|
837
|
+
const observed = await inspectRelocatedWorkflowContextRun(storage, ops);
|
|
838
|
+
if (observed === undefined) {
|
|
839
|
+
return "not_relocated";
|
|
840
|
+
}
|
|
841
|
+
const isSameRelocatedRun = (current) => current !== undefined
|
|
842
|
+
&& current.serializedManifest === observed.serializedManifest
|
|
843
|
+
&& contextBuilderRunDirectoryAdmissionsEqual(current.directoryAdmission, observed.directoryAdmission);
|
|
844
|
+
return await withContextBuilderStorageMutationLock(storage, ops, async (leasedOps) => {
|
|
845
|
+
if (!isSameRelocatedRun(await inspectRelocatedWorkflowContextRun(storage, leasedOps))) {
|
|
846
|
+
return await admitContextBuilderRunDirectory(storage, leasedOps)
|
|
847
|
+
=== undefined
|
|
848
|
+
? "already_moved"
|
|
849
|
+
: "not_relocated";
|
|
850
|
+
}
|
|
851
|
+
const quarantineName = `${WORKFLOW_CONTEXT_QUARANTINE_PREFIX}${storage.runId}-${nowMs}-${randomBytes(8).toString("hex")}`;
|
|
852
|
+
try {
|
|
853
|
+
await leasedOps.rename(storage.runDir, join(storage.runsDir, quarantineName));
|
|
854
|
+
}
|
|
855
|
+
catch (error) {
|
|
856
|
+
const code = nodeErrorCode(error);
|
|
857
|
+
if (code === "ENOENT" || code === "EEXIST" || code === "ENOTEMPTY") {
|
|
858
|
+
return "already_moved";
|
|
859
|
+
}
|
|
860
|
+
throw error;
|
|
861
|
+
}
|
|
862
|
+
await syncDirectoryBestEffort(storage.runsDir, leasedOps);
|
|
863
|
+
logger.warn({
|
|
864
|
+
run_id: storage.runId,
|
|
865
|
+
runs_dir: storage.runsDir,
|
|
866
|
+
previous_run_dir: observed.previousRunDir,
|
|
867
|
+
quarantine_name: quarantineName,
|
|
868
|
+
}, "context_builder quarantined a relocated workflow cache entry");
|
|
869
|
+
return "quarantined";
|
|
870
|
+
}, {
|
|
871
|
+
canRecoverStale: async () => isSameRelocatedRun(await inspectRelocatedWorkflowContextRun(storage, ops)),
|
|
872
|
+
});
|
|
873
|
+
}
|
|
874
|
+
async function purgeQuarantinedWorkflowContextRun(runsDir, name, ops) {
|
|
875
|
+
const quarantinePath = join(runsDir, name);
|
|
876
|
+
if (dirname(quarantinePath) !== runsDir
|
|
877
|
+
|| !isPathInsideDirectory(quarantinePath, runsDir)) {
|
|
878
|
+
return false;
|
|
879
|
+
}
|
|
880
|
+
try {
|
|
881
|
+
const stats = await (ops.lstat ?? fsLstat)(quarantinePath, { bigint: true });
|
|
882
|
+
if (!stats.isDirectory()) {
|
|
883
|
+
return false;
|
|
884
|
+
}
|
|
885
|
+
}
|
|
886
|
+
catch (error) {
|
|
887
|
+
if (isNodeError(error) && error.code === "ENOENT") {
|
|
888
|
+
return false;
|
|
889
|
+
}
|
|
890
|
+
throw error;
|
|
891
|
+
}
|
|
892
|
+
await (ops.rm ?? fsRm)(quarantinePath, { recursive: true, force: true });
|
|
893
|
+
return true;
|
|
894
|
+
}
|
|
698
895
|
function throwIfCancelledBeforeManifest(options) {
|
|
699
896
|
if (options.signal?.aborted !== true) {
|
|
700
897
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/context-builder/storage.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/context-builder/storage.ts"],"names":[],"mappings":"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"}
|
package/dist/dashboard-cli.d.ts
CHANGED
|
@@ -19,6 +19,12 @@ export interface DashboardCliDependencies {
|
|
|
19
19
|
readonly createDashboardServerPair?: (options: DashboardServerOptions) => readonly [Server, Server];
|
|
20
20
|
readonly createDashboardPasskeyAuth?: typeof createDashboardPasskeyAuth;
|
|
21
21
|
}
|
|
22
|
+
export declare function contextBuilderRunsRootForDashboard(options?: {
|
|
23
|
+
env?: NodeJS.ProcessEnv;
|
|
24
|
+
cwd?: string;
|
|
25
|
+
homeDir?: string;
|
|
26
|
+
platform?: NodeJS.Platform;
|
|
27
|
+
}): string;
|
|
22
28
|
/** Atomic split-origin override supplied on the command line (remote mode). */
|
|
23
29
|
export interface DashboardRemoteOverride {
|
|
24
30
|
readonly apiOrigin: string;
|
package/dist/dashboard-cli.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { realpathSync } from "node:fs";
|
|
3
|
-
import {
|
|
4
|
-
import { dirname, isAbsolute, join, parse, relative, resolve, } from "node:path";
|
|
3
|
+
import { isAbsolute, join, resolve } from "node:path";
|
|
5
4
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
6
5
|
import { createDashboardServer, DashboardBearerCapabilitySchema, formatDashboardRemoteFragment, generateDashboardAgentInstanceId, generateDashboardCapability, } from "../clinkx-workflows/dist/dashboard/index.js";
|
|
7
6
|
import { createDashboardPasskeyAuth, } from "../clinkx-workflows/dist/dashboard/auth/controller.js";
|
|
@@ -9,7 +8,7 @@ import { createDashboardServerPair, } from "../clinkx-workflows/dist/dashboard/s
|
|
|
9
8
|
import { DASHBOARD_AUTH_MODE_ENV, DEFAULT_DASHBOARD_PORT, resolveDashboardAuthConfig, resolveDashboardAuthMode, resolveDashboardCredentialDirectory, getChildConfigPath, getDashboardMaxStateBytes, getDashboardPort, getResolvedWorkflowsPath, getRunsDir, getStateDir, getProgressReportOverrideDir, getTemplatesPath, parseCanonicalHttpsOrigin, resolveDashboardPublicAccess, resolveWorkspaceRoot, } from "../clinkx-workflows/dist/config.js";
|
|
10
9
|
import { projectDashboardAdapterCatalog } from "./dashboard-adapter-catalog.js";
|
|
11
10
|
import { AdapterRegistry } from "./registry.js";
|
|
12
|
-
import { contextBuilderRunsDirFromEnv } from "./context-builder/config.js";
|
|
11
|
+
import { contextBuilderRunsDirFromEnv, validateContextBuilderRunsDir, } from "./context-builder/config.js";
|
|
13
12
|
import { DashboardGatewayClient } from "./dashboard-companion/client.js";
|
|
14
13
|
import { resolveDashboardGatewayConfig } from "./dashboard-companion/config.js";
|
|
15
14
|
const defaultDependencies = {
|
|
@@ -28,31 +27,11 @@ const defaultDependencies = {
|
|
|
28
27
|
createDashboardServerPair,
|
|
29
28
|
createDashboardPasskeyAuth,
|
|
30
29
|
};
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
: requested.startsWith("~/")
|
|
37
|
-
? join(home, requested.slice(2))
|
|
38
|
-
: requested;
|
|
39
|
-
const runsDir = resolve(expanded);
|
|
40
|
-
const cwd = resolve(process.cwd());
|
|
41
|
-
const relationToCwd = relative(runsDir, cwd);
|
|
42
|
-
if (runsDir === parse(runsDir).root) {
|
|
43
|
-
throw new Error("context_builder runs_dir must not be filesystem root");
|
|
44
|
-
}
|
|
45
|
-
if (runsDir === home) {
|
|
46
|
-
throw new Error("context_builder runs_dir must not be the home directory");
|
|
47
|
-
}
|
|
48
|
-
if (process.platform === "darwin" && dirname(runsDir) === "/Volumes") {
|
|
49
|
-
throw new Error("context_builder runs_dir must not be a volume root");
|
|
50
|
-
}
|
|
51
|
-
if (relationToCwd === "" ||
|
|
52
|
-
(!relationToCwd.startsWith("..") && !isAbsolute(relationToCwd))) {
|
|
53
|
-
throw new Error("context_builder runs_dir must not be the workspace root or an ancestor");
|
|
54
|
-
}
|
|
55
|
-
return runsDir;
|
|
30
|
+
// Producers' runs-dir policy without resolveContextBuilderRunsDir's
|
|
31
|
+
// mkdir/ownership/chmod: the dashboard may read a read-only, foreign-uid mount.
|
|
32
|
+
export function contextBuilderRunsRootForDashboard(options = {}) {
|
|
33
|
+
const { env, ...validation } = options;
|
|
34
|
+
return validateContextBuilderRunsDir(contextBuilderRunsDirFromEnv(env === undefined ? {} : { env }), validation);
|
|
56
35
|
}
|
|
57
36
|
const DASHBOARD_HELP = `Usage: clinkx-workflows-dashboard [--port <0..65535>] [--bootstrap-port <1..65535>]
|
|
58
37
|
[--public-api-origin <https-origin> --ui-origin <https-origin>] [--help]
|
|
@@ -77,7 +56,7 @@ fallback, including an invalid fallback value.
|
|
|
77
56
|
|
|
78
57
|
Environment:
|
|
79
58
|
CLINKX_WORKFLOWS_STATE_DIR Absolute root; must match the workflow server
|
|
80
|
-
|
|
59
|
+
CLINKX_HOME Absolute durable root (default ~/.clinkx) when state root is unset
|
|
81
60
|
CLINKX_WORKFLOWS_DASHBOARD_PORT Default listener port (0 requests an ephemeral port)
|
|
82
61
|
CLINKX_WORKFLOWS_DASHBOARD_BOOTSTRAP_PORT Browser-facing local bootstrap port (1..65535)
|
|
83
62
|
CLINKX_WORKFLOWS_DASHBOARD_AUTH_MODE passkey (default), bearer (temporary rollback), or none (local testing only; disables authentication)
|