mirror of
https://github.com/paperclipai/paperclip.git
synced 2026-11-08 22:13:59 +01:00
test: keep warm rolling deploys separate from outage faults
Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
1 parent
40ce43c3df
commit
0c6796b936
2 files changed
+5
-1
No files matched your search
@@ -3,6 +3,7 @@ import type { ServingArtifact } from "./upgrade-artifacts.js";
|
||||
import type { ControllerRecoveryReceipt } from "./controller-recovery-observer.js";
|
||||
import { setTimeout as delay } from "node:timers/promises";
|
||||
import type { MatrixExecution } from "./types.js";
|
||||
import { isRollingWebDeployment } from "./controller-rolling-deployment.js";
|
||||
|
||||
export interface ControllerOutage {
|
||||
signal: "SIGTERM" | "SIGKILL";
|
||||
@@ -40,7 +41,7 @@ export function configuredControllerOutage(env: NodeJS.ProcessEnv, defaultHoldMs
|
||||
}
|
||||
|
||||
export function controllerOutageForExecution(execution: MatrixExecution, env: NodeJS.ProcessEnv): ControllerOutage | undefined {
|
||||
if (execution.suite.id === "rolling-web-deployment") return undefined;
|
||||
if (isRollingWebDeployment(execution)) return undefined;
|
||||
if (execution.task.flow !== "everyday_workflow" || execution.task.id !== "recover-controller"
|
||||
|| execution.environment.id !== "daytona" || execution.profile.generation !== "native"
|
||||
|| (execution.profile.provider !== "codex" && execution.profile.provider !== "acpx")) return undefined;
|
||||
|
||||
@@ -85,5 +85,8 @@ describe("rolling controller qualification", () => {
|
||||
.toEqual(new Set(warmIds.has(profile.id) ? ["per_turn", "warm-controller-outage-v1"] : ["per_turn"]));
|
||||
}
|
||||
expect(executions.every(execution => execution.suite.definitionMetadata?.retainedControllerContinuation === true)).toBe(true);
|
||||
for (const execution of executions) {
|
||||
expect(controllerOutageForExecution(execution, {})).toBeUndefined();
|
||||
}
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user