@knpkv/herdr-fleet 0.7.0 → 0.8.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/errors.d.ts +11 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +10 -0
- package/dist/errors.js.map +1 -1
- package/dist/service.d.ts +10 -10
- package/dist/store.d.ts +3 -3
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +9 -3
- package/dist/store.js.map +1 -1
- package/package.json +1 -1
package/dist/errors.d.ts
CHANGED
|
@@ -16,6 +16,17 @@ declare const FleetStoreError_base: Schema.Class<FleetStoreError, Schema.TaggedS
|
|
|
16
16
|
}>, import("effect/Cause").YieldableError>;
|
|
17
17
|
export declare class FleetStoreError extends FleetStoreError_base {
|
|
18
18
|
}
|
|
19
|
+
declare const FleetStoreBusyError_base: Schema.Class<FleetStoreBusyError, Schema.TaggedStruct<"FleetStoreBusyError", {
|
|
20
|
+
readonly operation: Schema.String;
|
|
21
|
+
readonly detail: Schema.String;
|
|
22
|
+
readonly cause: Schema.Defect;
|
|
23
|
+
}>, import("effect/Cause").YieldableError>;
|
|
24
|
+
/**
|
|
25
|
+
* A write found the job database locked by another connection (SQLite BUSY/LOCKED) after its busy
|
|
26
|
+
* timeout. Nothing was written, so the same request may be retried; HTTP surfaces map it to 503.
|
|
27
|
+
*/
|
|
28
|
+
export declare class FleetStoreBusyError extends FleetStoreBusyError_base {
|
|
29
|
+
}
|
|
19
30
|
declare const FleetTransitionConflictError_base: Schema.Class<FleetTransitionConflictError, Schema.TaggedStruct<"FleetTransitionConflictError", {
|
|
20
31
|
readonly jobId: Schema.String;
|
|
21
32
|
}>, import("effect/Cause").YieldableError>;
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;;;;AAE/B,qBAAa,oBAAqB,SAAQ,yBAGzC;CAAG;;;;AAEJ,qBAAa,uBAAwB,SAAQ,4BAG5C;CAAG;;;;;;AAEJ,qBAAa,eAAgB,SAAQ,oBAOpC;CAAG;;;;AAEJ,qBAAa,4BAA6B,SAAQ,iCAGjD;CAAG;;;;AAEJ,qBAAa,qBAAsB,SAAQ,0BAG1C;CAAG;;;;AAEJ,qBAAa,qBAAsB,SAAQ,0BAG1C;CAAG;;;;;AAEJ,qBAAa,kBAAmB,SAAQ,uBAGvC;CAAG;;;;;AAEJ,kGAAkG;AAClG,qBAAa,8BAA+B,SAAQ,mCAGnD;CAAG;;;;;;AAEJ,qBAAa,mBAAoB,SAAQ,wBAOxC;CAAG;;;;;;AAEJ,qBAAa,sBAAuB,SAAQ,2BAO3C;CAAG;;;;;;AAEJ,qBAAa,yBAA0B,SAAQ,8BAO9C;CAAG;;;;;AAEJ,qBAAa,sBAAuB,SAAQ,2BAG3C;CAAG;;;;;;AAEJ,qBAAa,sBAAuB,SAAQ,2BAO3C;CAAG;;;;;AAEJ,qBAAa,4BAA6B,SAAQ,iCAGjD;CAAG;;;;;AAEJ,qBAAa,uBAAwB,SAAQ,4BAG5C;CAAG;;;;;AAEJ,qBAAa,2BAA4B,SAAQ,gCAMhD;CAAG"}
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;;;;AAE/B,qBAAa,oBAAqB,SAAQ,yBAGzC;CAAG;;;;AAEJ,qBAAa,uBAAwB,SAAQ,4BAG5C;CAAG;;;;;;AAEJ,qBAAa,eAAgB,SAAQ,oBAOpC;CAAG;;;;;;AAEJ;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,wBAOxC;CAAG;;;;AAEJ,qBAAa,4BAA6B,SAAQ,iCAGjD;CAAG;;;;AAEJ,qBAAa,qBAAsB,SAAQ,0BAG1C;CAAG;;;;AAEJ,qBAAa,qBAAsB,SAAQ,0BAG1C;CAAG;;;;;AAEJ,qBAAa,kBAAmB,SAAQ,uBAGvC;CAAG;;;;;AAEJ,kGAAkG;AAClG,qBAAa,8BAA+B,SAAQ,mCAGnD;CAAG;;;;;;AAEJ,qBAAa,mBAAoB,SAAQ,wBAOxC;CAAG;;;;;;AAEJ,qBAAa,sBAAuB,SAAQ,2BAO3C;CAAG;;;;;;AAEJ,qBAAa,yBAA0B,SAAQ,8BAO9C;CAAG;;;;;AAEJ,qBAAa,sBAAuB,SAAQ,2BAG3C;CAAG;;;;;;AAEJ,qBAAa,sBAAuB,SAAQ,2BAO3C;CAAG;;;;;AAEJ,qBAAa,4BAA6B,SAAQ,iCAGjD;CAAG;;;;;AAEJ,qBAAa,uBAAwB,SAAQ,4BAG5C;CAAG;;;;;AAEJ,qBAAa,2BAA4B,SAAQ,gCAMhD;CAAG"}
|
package/dist/errors.js
CHANGED
|
@@ -9,6 +9,16 @@ export class FleetStoreError extends Schema.TaggedError()("FleetStoreError", {
|
|
|
9
9
|
cause: Schema.Defect()
|
|
10
10
|
}) {
|
|
11
11
|
}
|
|
12
|
+
/**
|
|
13
|
+
* A write found the job database locked by another connection (SQLite BUSY/LOCKED) after its busy
|
|
14
|
+
* timeout. Nothing was written, so the same request may be retried; HTTP surfaces map it to 503.
|
|
15
|
+
*/
|
|
16
|
+
export class FleetStoreBusyError extends Schema.TaggedError()("FleetStoreBusyError", {
|
|
17
|
+
operation: Schema.String,
|
|
18
|
+
detail: Schema.String,
|
|
19
|
+
cause: Schema.Defect()
|
|
20
|
+
}) {
|
|
21
|
+
}
|
|
12
22
|
export class FleetTransitionConflictError extends Schema.TaggedError()("FleetTransitionConflictError", { jobId: Schema.String }) {
|
|
13
23
|
}
|
|
14
24
|
export class FleetJobConflictError extends Schema.TaggedError()("FleetJobConflictError", { jobId: Schema.String }) {
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,MAAM,OAAO,oBAAqB,SAAQ,MAAM,CAAC,WAAW,EAAwB,CAClF,sBAAsB,EACtB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAC1B;CAAG;AAEJ,MAAM,OAAO,uBAAwB,SAAQ,MAAM,CAAC,WAAW,EAA2B,CACxF,yBAAyB,EACzB,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CACzB;CAAG;AAEJ,MAAM,OAAO,eAAgB,SAAQ,MAAM,CAAC,WAAW,EAAmB,CACxE,iBAAiB,EACjB;IACE,SAAS,EAAE,MAAM,CAAC,MAAM;IACxB,MAAM,EAAE,MAAM,CAAC,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;CACvB,CACF;CAAG;AAEJ,MAAM,OAAO,4BAA6B,SAAQ,MAAM,CAAC,WAAW,EAAgC,CAClG,8BAA8B,EAC9B,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CACzB;CAAG;AAEJ,MAAM,OAAO,qBAAsB,SAAQ,MAAM,CAAC,WAAW,EAAyB,CACpF,uBAAuB,EACvB,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CACzB;CAAG;AAEJ,MAAM,OAAO,qBAAsB,SAAQ,MAAM,CAAC,WAAW,EAAyB,CACpF,uBAAuB,EACvB,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CACzB;CAAG;AAEJ,MAAM,OAAO,kBAAmB,SAAQ,MAAM,CAAC,WAAW,EAAsB,CAC9E,oBAAoB,EACpB,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAChD;CAAG;AAEJ,kGAAkG;AAClG,MAAM,OAAO,8BAA+B,SAAQ,MAAM,CAAC,WAAW,EAAkC,CACtG,gCAAgC,EAChC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAC/C;CAAG;AAEJ,MAAM,OAAO,mBAAoB,SAAQ,MAAM,CAAC,WAAW,EAAuB,CAChF,qBAAqB,EACrB;IACE,SAAS,EAAE,MAAM,CAAC,MAAM;IACxB,MAAM,EAAE,MAAM,CAAC,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;CACvB,CACF;CAAG;AAEJ,MAAM,OAAO,sBAAuB,SAAQ,MAAM,CAAC,WAAW,EAA0B,CACtF,wBAAwB,EACxB;IACE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;IACtB,MAAM,EAAE,MAAM,CAAC,MAAM;IACrB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;CAC9D,CACF;CAAG;AAEJ,MAAM,OAAO,yBAA0B,SAAQ,MAAM,CAAC,WAAW,EAA6B,CAC5F,2BAA2B,EAC3B;IACE,IAAI,EAAE,MAAM,CAAC,MAAM;IACnB,MAAM,EAAE,MAAM,CAAC,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;CACvB,CACF;CAAG;AAEJ,MAAM,OAAO,sBAAuB,SAAQ,MAAM,CAAC,WAAW,EAA0B,CACtF,wBAAwB,EACxB,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAC/C;CAAG;AAEJ,MAAM,OAAO,sBAAuB,SAAQ,MAAM,CAAC,WAAW,EAA0B,CACtF,wBAAwB,EACxB;IACE,IAAI,EAAE,MAAM,CAAC,MAAM;IACnB,MAAM,EAAE,MAAM,CAAC,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;CACvB,CACF;CAAG;AAEJ,MAAM,OAAO,4BAA6B,SAAQ,MAAM,CAAC,WAAW,EAAgC,CAClG,8BAA8B,EAC9B,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,CAC7D;CAAG;AAEJ,MAAM,OAAO,uBAAwB,SAAQ,MAAM,CAAC,WAAW,EAA2B,CACxF,yBAAyB,EACzB,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,CAClD;CAAG;AAEJ,MAAM,OAAO,2BAA4B,SAAQ,MAAM,CAAC,WAAW,EAA+B,CAChG,6BAA6B,EAC7B;IACE,IAAI,EAAE,MAAM,CAAC,MAAM;IACnB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;CACpD,CACF;CAAG"}
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/service.d.ts
CHANGED
|
@@ -411,7 +411,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
411
411
|
readonly url: string;
|
|
412
412
|
};
|
|
413
413
|
readonly workerTerminalObservedAt?: number | null;
|
|
414
|
-
}, import("./errors.js").FleetJobConflictError | FleetOperationError | FleetOperationUnavailableError | FleetStoreError | FleetValidationError, never>;
|
|
414
|
+
}, import("./errors.js").FleetJobConflictError | FleetOperationError | FleetOperationUnavailableError | import("./errors.js").FleetStoreBusyError | FleetStoreError | FleetValidationError, never>;
|
|
415
415
|
approve: (jobId: string, approval: Approval, actor: string) => Effect.Effect<{
|
|
416
416
|
readonly id: string;
|
|
417
417
|
readonly createdAt: number;
|
|
@@ -598,7 +598,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
598
598
|
readonly url: string;
|
|
599
599
|
};
|
|
600
600
|
readonly workerTerminalObservedAt?: number | null;
|
|
601
|
-
}, FleetApprovalError | FleetJobNotFoundError | FleetStoreError | FleetTransitionConflictError | FleetValidationError, never>;
|
|
601
|
+
}, FleetApprovalError | FleetJobNotFoundError | import("./errors.js").FleetStoreBusyError | FleetStoreError | FleetTransitionConflictError | FleetValidationError, never>;
|
|
602
602
|
reject: (jobId: string, approval: Approval, actor: string) => Effect.Effect<{
|
|
603
603
|
readonly id: string;
|
|
604
604
|
readonly createdAt: number;
|
|
@@ -785,7 +785,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
785
785
|
readonly url: string;
|
|
786
786
|
};
|
|
787
787
|
readonly workerTerminalObservedAt?: number | null;
|
|
788
|
-
}, FleetApprovalError | FleetJobNotFoundError | FleetStoreError | FleetTransitionConflictError | FleetValidationError, never>;
|
|
788
|
+
}, FleetApprovalError | FleetJobNotFoundError | import("./errors.js").FleetStoreBusyError | FleetStoreError | FleetTransitionConflictError | FleetValidationError, never>;
|
|
789
789
|
run: (jobId: string) => Effect.Effect<{
|
|
790
790
|
readonly id: string;
|
|
791
791
|
readonly createdAt: number;
|
|
@@ -972,7 +972,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
972
972
|
readonly url: string;
|
|
973
973
|
};
|
|
974
974
|
readonly workerTerminalObservedAt?: number | null;
|
|
975
|
-
}, FleetApprovalError | FleetJobNotFoundError | FleetOperationError | FleetStoreError | FleetTransitionConflictError | FleetValidationError, never>;
|
|
975
|
+
}, FleetApprovalError | FleetJobNotFoundError | FleetOperationError | import("./errors.js").FleetStoreBusyError | FleetStoreError | FleetTransitionConflictError | FleetValidationError, never>;
|
|
976
976
|
runCoordinatorChat: (jobId: string) => Effect.Effect<{
|
|
977
977
|
readonly id: string;
|
|
978
978
|
readonly createdAt: number;
|
|
@@ -1159,7 +1159,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
1159
1159
|
readonly url: string;
|
|
1160
1160
|
};
|
|
1161
1161
|
readonly workerTerminalObservedAt?: number | null;
|
|
1162
|
-
}, FleetApprovalError | FleetJobNotFoundError | FleetOperationError | FleetStoreError | FleetTransitionConflictError | FleetValidationError, never>;
|
|
1162
|
+
}, FleetApprovalError | FleetJobNotFoundError | FleetOperationError | import("./errors.js").FleetStoreBusyError | FleetStoreError | FleetTransitionConflictError | FleetValidationError, never>;
|
|
1163
1163
|
get: (jobId: string) => Effect.Effect<{
|
|
1164
1164
|
readonly id: string;
|
|
1165
1165
|
readonly createdAt: number;
|
|
@@ -1346,7 +1346,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
1346
1346
|
readonly url: string;
|
|
1347
1347
|
};
|
|
1348
1348
|
readonly workerTerminalObservedAt?: number | null;
|
|
1349
|
-
}, FleetJobNotFoundError | FleetStoreError, never>;
|
|
1349
|
+
}, FleetJobNotFoundError | import("./errors.js").FleetStoreBusyError | FleetStoreError, never>;
|
|
1350
1350
|
history: (limit: number) => Effect.Effect<{
|
|
1351
1351
|
readonly id: string;
|
|
1352
1352
|
readonly createdAt: number;
|
|
@@ -2115,7 +2115,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
2115
2115
|
createdAt: number;
|
|
2116
2116
|
id: string;
|
|
2117
2117
|
} | null;
|
|
2118
|
-
}, FleetJobNotFoundError | FleetStoreError, never>;
|
|
2118
|
+
}, FleetJobNotFoundError | import("./errors.js").FleetStoreBusyError | FleetStoreError, never>;
|
|
2119
2119
|
pendingApprovals: () => Effect.Effect<{
|
|
2120
2120
|
readonly id: string;
|
|
2121
2121
|
readonly createdAt: number;
|
|
@@ -2302,7 +2302,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
2302
2302
|
readonly url: string;
|
|
2303
2303
|
};
|
|
2304
2304
|
readonly workerTerminalObservedAt?: number | null;
|
|
2305
|
-
}[], FleetJobNotFoundError | FleetStoreError, never>;
|
|
2305
|
+
}[], FleetJobNotFoundError | import("./errors.js").FleetStoreBusyError | FleetStoreError, never>;
|
|
2306
2306
|
agents: () => Effect.Effect<{
|
|
2307
2307
|
readonly agents: readonly {
|
|
2308
2308
|
readonly agentId: string | null;
|
|
@@ -2354,7 +2354,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
2354
2354
|
readonly error: string | null;
|
|
2355
2355
|
};
|
|
2356
2356
|
}, FleetOperationError, never>;
|
|
2357
|
-
recover: () => Effect.Effect<string[], FleetOperationError | FleetStoreError | FleetTransitionConflictError, never>;
|
|
2357
|
+
recover: () => Effect.Effect<string[], FleetOperationError | import("./errors.js").FleetStoreBusyError | FleetStoreError | FleetTransitionConflictError, never>;
|
|
2358
2358
|
abortSubmission: (jobId: string, detail: string) => Effect.Effect<{
|
|
2359
2359
|
readonly id: string;
|
|
2360
2360
|
readonly createdAt: number;
|
|
@@ -2541,7 +2541,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
2541
2541
|
readonly url: string;
|
|
2542
2542
|
};
|
|
2543
2543
|
readonly workerTerminalObservedAt?: number | null;
|
|
2544
|
-
}, FleetJobNotFoundError | FleetStoreError | FleetTransitionConflictError, never>;
|
|
2544
|
+
}, FleetJobNotFoundError | import("./errors.js").FleetStoreBusyError | FleetStoreError | FleetTransitionConflictError, never>;
|
|
2545
2545
|
}, never, Crypto.Crypto>;
|
|
2546
2546
|
export type FleetService = Effect.Success<ReturnType<typeof makeFleetService>>;
|
|
2547
2547
|
//# sourceMappingURL=service.d.ts.map
|
package/dist/store.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Effect } from "effect";
|
|
2
|
-
import { FleetJobConflictError, FleetStoreError, FleetTransitionConflictError } from "./errors.js";
|
|
2
|
+
import { FleetJobConflictError, FleetStoreBusyError, FleetStoreError, FleetTransitionConflictError } from "./errors.js";
|
|
3
3
|
export declare class JobStore {
|
|
4
4
|
#private;
|
|
5
5
|
readonly path: string;
|
|
@@ -377,7 +377,7 @@ export declare class JobStore {
|
|
|
377
377
|
readonly url: string;
|
|
378
378
|
};
|
|
379
379
|
readonly workerTerminalObservedAt?: number | null;
|
|
380
|
-
}, FleetJobConflictError | FleetStoreError, never>;
|
|
380
|
+
}, FleetJobConflictError | FleetStoreBusyError | FleetStoreError, never>;
|
|
381
381
|
readonly transition: (this: JobStore, current: {
|
|
382
382
|
readonly id: string;
|
|
383
383
|
readonly createdAt: number;
|
|
@@ -936,7 +936,7 @@ export declare class JobStore {
|
|
|
936
936
|
readonly url: string;
|
|
937
937
|
};
|
|
938
938
|
readonly workerTerminalObservedAt?: number | null;
|
|
939
|
-
}, FleetStoreError | FleetTransitionConflictError, never>;
|
|
939
|
+
}, FleetStoreBusyError | FleetStoreError | FleetTransitionConflictError, never>;
|
|
940
940
|
readonly get: (this: JobStore, id: string) => Effect.Effect<{
|
|
941
941
|
readonly id: string;
|
|
942
942
|
readonly createdAt: number;
|
package/dist/store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,QAAQ,CAAA;AAEvC,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
|
package/dist/store.js
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
import { Effect, Schema } from "effect";
|
|
2
|
-
import { FleetJobConflictError, FleetStoreError, FleetTransitionConflictError } from "./errors.js";
|
|
2
|
+
import { FleetJobConflictError, FleetStoreBusyError, FleetStoreError, FleetTransitionConflictError } from "./errors.js";
|
|
3
3
|
import { JobRecord } from "./model.js";
|
|
4
4
|
import { openPrivateSqlite } from "./sqlite.js";
|
|
5
5
|
const storeError = (operation) => (cause) => new FleetStoreError({ operation, detail: String(cause), cause });
|
|
6
|
+
// node:sqlite reports SQLITE_BUSY (5) and SQLITE_LOCKED (6) as ERR_SQLITE_ERROR with the primary code in errcode.
|
|
7
|
+
const isSqliteBusy = Schema.is(Schema.Struct({ code: Schema.Literal("ERR_SQLITE_ERROR"), errcode: Schema.Literals([5, 6]) }));
|
|
8
|
+
// A write either lost the lock to another connection (retryable) or failed for any other reason.
|
|
9
|
+
const writeError = (operation) => (cause) => isSqliteBusy(cause)
|
|
10
|
+
? new FleetStoreBusyError({ operation, detail: String(cause), cause })
|
|
11
|
+
: new FleetStoreError({ operation, detail: String(cause), cause });
|
|
6
12
|
const fromPrivateDatabaseError = (error) => new FleetStoreError({ operation: error.operation, detail: String(error.cause), cause: error.cause });
|
|
7
13
|
const decodeRecord = (text) => Effect.try({
|
|
8
14
|
try: () => Schema.decodeUnknownSync(JobRecord)(JSON.parse(text)),
|
|
@@ -43,7 +49,7 @@ export class JobStore {
|
|
|
43
49
|
try: () => database
|
|
44
50
|
.prepare("INSERT OR IGNORE INTO jobs (id, created_at, record) VALUES (?, ?, ?)")
|
|
45
51
|
.run(record.id, record.createdAt, encodeRecord(record)).changes,
|
|
46
|
-
catch:
|
|
52
|
+
catch: writeError("put")
|
|
47
53
|
});
|
|
48
54
|
if (inserted !== 1) {
|
|
49
55
|
return yield* new FleetJobConflictError({ jobId: record.id });
|
|
@@ -62,7 +68,7 @@ export class JobStore {
|
|
|
62
68
|
AND record = ?
|
|
63
69
|
`)
|
|
64
70
|
.run(encodeRecord(next), current.id, encodeRecord(current)).changes,
|
|
65
|
-
catch:
|
|
71
|
+
catch: writeError("transition")
|
|
66
72
|
});
|
|
67
73
|
if (changed !== 1) {
|
|
68
74
|
return yield* new FleetTransitionConflictError({ jobId: current.id });
|
package/dist/store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAEvC,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
|