@opengeni/worker-bundle 2.2.0 → 2.2.1-canary.36919050519001
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/activities/agent-run-admission.d.ts +3 -1
- package/dist/activities/agent-turn/admission.d.ts +24 -3
- package/dist/activities/agent-turn/agent-build.d.ts +1 -0
- package/dist/activities/agent-turn/claude-usage-observer.d.ts +13 -1
- package/dist/activities/agent-turn/compaction-prep.d.ts +20 -0
- package/dist/activities/agent-turn/final-reply.d.ts +18 -0
- package/dist/activities/agent-turn/governance-model.d.ts +6 -0
- package/dist/activities/agent-turn/model-call-admission.d.ts +15 -0
- package/dist/activities/agent-turn/run-credentials.d.ts +2 -0
- package/dist/activities/agent-turn/sandbox-establish.d.ts +1 -0
- package/dist/activities/agent-turn/session-title.d.ts +3 -1
- package/dist/activities/agent-turn/stream-attempt.d.ts +1 -0
- package/dist/activities/agent-turn/turn-context.d.ts +1 -0
- package/dist/activities/automations.d.ts +3 -1
- package/dist/activities/browser-deadline-checkpoint.d.ts +29 -0
- package/dist/activities/goals.d.ts +8 -0
- package/dist/activities/run-credentials.d.ts +4 -2
- package/dist/activities/types.d.ts +1 -1
- package/dist/{activities-control-MHNA3CYV.js → activities-control-55ECL47G.js} +403 -116
- package/dist/activities-control-55ECL47G.js.map +1 -0
- package/dist/activities-control.d.ts +30 -0
- package/dist/{activities-turn-FQ5OO2WW.js → activities-turn-T7Y3BWYO.js} +678 -246
- package/dist/activities-turn-T7Y3BWYO.js.map +1 -0
- package/dist/activities.d.ts +30 -0
- package/dist/browser-deadline-checkpoint-contract.d.ts +2 -0
- package/dist/{chunk-RZAAGRFQ.js → chunk-OWNLATJL.js} +189 -80
- package/dist/chunk-OWNLATJL.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.js +45 -23
- package/dist/index.js.map +1 -1
- package/dist/sandbox-resume.d.ts +4 -1
- package/dist/workflow-bundle.js +72 -10
- package/dist/workflows/browser-deadline-checkpoint.d.ts +9 -0
- package/dist/workflows.d.ts +1 -0
- package/package.json +21 -20
- package/src/activities/agent-run-admission.ts +17 -1
- package/src/activities/agent-turn/admission.ts +64 -1
- package/src/activities/agent-turn/agent-build.ts +24 -3
- package/src/activities/agent-turn/claim.ts +56 -14
- package/src/activities/agent-turn/claude-usage-observer.ts +33 -1
- package/src/activities/agent-turn/compaction-prep.ts +67 -16
- package/src/activities/agent-turn/errors.ts +55 -0
- package/src/activities/agent-turn/failure-settlement.ts +26 -6
- package/src/activities/agent-turn/final-reply.ts +46 -0
- package/src/activities/agent-turn/governance-model.ts +12 -0
- package/src/activities/agent-turn/model-call-admission.ts +94 -0
- package/src/activities/agent-turn/run-credentials.ts +15 -3
- package/src/activities/agent-turn/run.ts +43 -5
- package/src/activities/agent-turn/sandbox-establish.ts +9 -5
- package/src/activities/agent-turn/session-title.ts +8 -2
- package/src/activities/agent-turn/stream-attempt.ts +144 -38
- package/src/activities/agent-turn/tool-environment.ts +51 -39
- package/src/activities/agent-turn/turn-context.ts +1 -0
- package/src/activities/automations.ts +55 -3
- package/src/activities/browser-deadline-checkpoint.ts +279 -0
- package/src/activities/capabilities.ts +52 -14
- package/src/activities/goals.ts +67 -95
- package/src/activities/knowledge-indexing.ts +29 -0
- package/src/activities/open-suffix-resume.ts +2 -1
- package/src/activities/run-credentials.ts +22 -16
- package/src/activities/scheduled-tasks.ts +83 -13
- package/src/activities/types.ts +1 -0
- package/src/activities/workspace-credential-provider.ts +12 -0
- package/src/activities-control.ts +2 -0
- package/src/activities.ts +3 -0
- package/src/browser-deadline-checkpoint-contract.ts +5 -0
- package/src/index.ts +53 -25
- package/src/sandbox-resume.ts +23 -8
- package/src/sandbox-routing.ts +4 -2
- package/src/workflows/browser-deadline-checkpoint.ts +50 -0
- package/src/workflows.ts +4 -0
- package/dist/activities-control-MHNA3CYV.js.map +0 -1
- package/dist/activities-turn-FQ5OO2WW.js.map +0 -1
- package/dist/chunk-RZAAGRFQ.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -64,6 +64,21 @@ export declare function createDefaultWorkerActivities(role: OpenGeniWorkerRole,
|
|
|
64
64
|
} | null>;
|
|
65
65
|
reconcileCodexCapacityWait: (input: import("./activities.js").ReconcileCodexCapacityWaitInput) => Promise<import("./activities.js").ReconcileCodexCapacityWaitResult>;
|
|
66
66
|
maintainBrowserStateArtifacts: () => Promise<import("./activities/browser-state-artifact-reaper.js").MaintainBrowserStateArtifactsResult>;
|
|
67
|
+
listDueBrowserCheckpoints(): Promise<{
|
|
68
|
+
accountId: string;
|
|
69
|
+
workspaceId: string;
|
|
70
|
+
sandboxGroupId: string;
|
|
71
|
+
leaseId: string;
|
|
72
|
+
leaseEpoch: number;
|
|
73
|
+
instanceId: string;
|
|
74
|
+
browserSessionId: string;
|
|
75
|
+
controllerGeneration: string;
|
|
76
|
+
}[]>;
|
|
77
|
+
checkpointBrowserBeforeDeadline(target: import("@opengeni/db").BrowserDeadlineCheckpointTarget): Promise<{
|
|
78
|
+
status: "skipped";
|
|
79
|
+
} | {
|
|
80
|
+
status: "suspended";
|
|
81
|
+
}>;
|
|
67
82
|
settleAutomationRunFailure: (input: import("./activities.js").DispatchAutomationRunInput) => Promise<void>;
|
|
68
83
|
dispatchAutomationRun: (input: import("./activities.js").DispatchAutomationRunInput) => Promise<import("./activities.js").DispatchAutomationRunResult>;
|
|
69
84
|
indexDocument: (input: import("./activities.js").IndexDocumentInput) => Promise<{
|
package/dist/index.js
CHANGED
|
@@ -768,6 +768,13 @@ function installWorkerUnhandledRejectionBoundary(runtimeProcess = process, repor
|
|
|
768
768
|
return () => runtimeProcess.off("unhandledRejection", onUnhandledRejection);
|
|
769
769
|
}
|
|
770
770
|
|
|
771
|
+
// src/browser-deadline-checkpoint-contract.ts
|
|
772
|
+
var BROWSER_DEADLINE_CHECKPOINT_SWEEP_ID = "opengeni-browser-deadline-checkpoints-v1";
|
|
773
|
+
var QUEUE_SUFFIX = "-browser-checkpoint-v1";
|
|
774
|
+
function browserDeadlineCheckpointTaskQueue(base) {
|
|
775
|
+
return base.endsWith(QUEUE_SUFFIX) ? base : `${base}${QUEUE_SUFFIX}`;
|
|
776
|
+
}
|
|
777
|
+
|
|
771
778
|
// src/index.ts
|
|
772
779
|
var SANDBOX_REAPER_SCHEDULE_ID = "opengeni-sandbox-lease-reaper";
|
|
773
780
|
var KNOWLEDGE_INDEXING_SCHEDULE_ID = "opengeni-knowledge-indexing";
|
|
@@ -790,7 +797,7 @@ function temporalWorkflowExecutionNotFound(error) {
|
|
|
790
797
|
return isGrpcServiceError(error) && error.code === 5;
|
|
791
798
|
}
|
|
792
799
|
async function createDefaultWorkerActivities(role, dependencies = {}) {
|
|
793
|
-
return role === "control" ? (await import("./activities-control-
|
|
800
|
+
return role === "control" ? (await import("./activities-control-55ECL47G.js")).createControlActivities(dependencies) : (await import("./activities-turn-T7Y3BWYO.js")).createTurnActivities(dependencies);
|
|
794
801
|
}
|
|
795
802
|
function resolveOpenGeniWorkflowDefinition(moduleUrl = import.meta.url) {
|
|
796
803
|
const modulePath = fileURLToPath(moduleUrl).replaceAll("\\", "/");
|
|
@@ -885,25 +892,34 @@ async function createOpenGeniWorker(options) {
|
|
|
885
892
|
turnConcurrency?.admission?.finalizeStartupBaseline();
|
|
886
893
|
return { worker, connection };
|
|
887
894
|
}
|
|
895
|
+
const ownedWorkers = [worker];
|
|
888
896
|
try {
|
|
889
|
-
const
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
897
|
+
for (const taskQueue of [
|
|
898
|
+
sandboxLifecycleTaskQueue(settings.temporalTaskQueue),
|
|
899
|
+
browserDeadlineCheckpointTaskQueue(settings.temporalTaskQueue)
|
|
900
|
+
]) {
|
|
901
|
+
const lifecycleWorker = await Worker.create({
|
|
902
|
+
...sharedWorkerOptions,
|
|
903
|
+
...workflowDefinition,
|
|
904
|
+
taskQueue,
|
|
905
|
+
reuseV8Context: true,
|
|
906
|
+
workflowThreadPoolSize: 1,
|
|
907
|
+
maxCachedWorkflows: CONTROL_WORKER_MAX_CACHED_WORKFLOWS,
|
|
908
|
+
maxConcurrentWorkflowTaskExecutions: CONTROL_WORKER_MAX_CONCURRENT_WORKFLOW_TASKS,
|
|
909
|
+
maxConcurrentActivityTaskExecutions: CONTROL_WORKER_MAX_CONCURRENT_ACTIVITIES
|
|
910
|
+
});
|
|
911
|
+
ownedWorkers.push(lifecycleWorker);
|
|
912
|
+
}
|
|
899
913
|
return {
|
|
900
|
-
worker: combineWorkerRunTargets(
|
|
914
|
+
worker: combineWorkerRunTargets(ownedWorkers),
|
|
901
915
|
connection
|
|
902
916
|
};
|
|
903
917
|
} catch (error) {
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
918
|
+
for (const ownedWorker of ownedWorkers) {
|
|
919
|
+
try {
|
|
920
|
+
ownedWorker.shutdown();
|
|
921
|
+
} catch {
|
|
922
|
+
}
|
|
907
923
|
}
|
|
908
924
|
throw error;
|
|
909
925
|
}
|
|
@@ -1012,20 +1028,26 @@ async function createWorkerWorkflowSignaler(settings, db) {
|
|
|
1012
1028
|
return normalizeTurnTaskQueueStats(response.stats);
|
|
1013
1029
|
},
|
|
1014
1030
|
startSandboxReaperWorkflow: async () => {
|
|
1015
|
-
|
|
1016
|
-
|
|
1031
|
+
const starts = await Promise.allSettled([
|
|
1032
|
+
temporal.workflow.start("sandboxReaperWorkflowV2", {
|
|
1017
1033
|
taskQueue: sandboxLifecycleTaskQueue(settings.temporalTaskQueue),
|
|
1018
1034
|
workflowId: SANDBOX_REAPER_V2_WORKFLOW_ID,
|
|
1019
1035
|
workflowIdReusePolicy: "ALLOW_DUPLICATE",
|
|
1020
1036
|
args: []
|
|
1021
|
-
})
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1037
|
+
}),
|
|
1038
|
+
temporal.workflow.start("browserDeadlineCheckpointSweepWorkflow", {
|
|
1039
|
+
taskQueue: browserDeadlineCheckpointTaskQueue(settings.temporalTaskQueue),
|
|
1040
|
+
workflowId: BROWSER_DEADLINE_CHECKPOINT_SWEEP_ID,
|
|
1041
|
+
workflowIdReusePolicy: "ALLOW_DUPLICATE",
|
|
1042
|
+
args: []
|
|
1043
|
+
})
|
|
1044
|
+
]);
|
|
1045
|
+
for (const start of starts) {
|
|
1046
|
+
if (start.status === "rejected" && !(start.reason instanceof WorkflowExecutionAlreadyStartedError)) {
|
|
1047
|
+
throw start.reason;
|
|
1026
1048
|
}
|
|
1027
|
-
throw error;
|
|
1028
1049
|
}
|
|
1050
|
+
return starts[0].status === "fulfilled" ? "started" : "already_running";
|
|
1029
1051
|
},
|
|
1030
1052
|
startVideoGenerationWorkflow: async ({ accountId, workspaceId, operationId }) => {
|
|
1031
1053
|
try {
|