deepline 0.1.258 → 0.1.260
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/bundling-sources/sdk/src/config.ts +110 -8
- package/dist/bundling-sources/sdk/src/release.ts +1 -1
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-api.ts +124 -34
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-postgres-admission.ts +130 -21
- package/dist/bundling-sources/shared_libs/play-runtime/transient-service-error.ts +5 -1
- package/dist/bundling-sources/shared_libs/plays/static-pipeline.ts +21 -0
- package/dist/cli/index.js +1642 -496
- package/dist/cli/index.mjs +1783 -629
- package/dist/index.js +1 -1
- package/dist/index.mjs +2 -2
- package/package.json +1 -1
|
@@ -2,7 +2,11 @@ export function transientServiceUnavailableDetail(
|
|
|
2
2
|
error: unknown,
|
|
3
3
|
): string | null {
|
|
4
4
|
const detail = error instanceof Error ? error.message : String(error);
|
|
5
|
-
|
|
5
|
+
// Convex uses both an explicit ServiceUnavailable response and this generic
|
|
6
|
+
// InternalServerError envelope for short control-plane outages. The latter
|
|
7
|
+
// text is intentionally exact: application exceptions must not become
|
|
8
|
+
// retryable merely because they mention an internal-server error.
|
|
9
|
+
return /ServiceUnavailable|Service temporarily unavailable|temporarily unavailable \(Code:\s*\d+\)|"code"\s*:\s*"InternalServerError"[\s\S]*Your request couldn't be completed\. Try again later\./i.test(
|
|
6
10
|
detail,
|
|
7
11
|
)
|
|
8
12
|
? detail
|
|
@@ -1021,6 +1021,27 @@ export function resolveSheetContractForTableNamespace(
|
|
|
1021
1021
|
continue;
|
|
1022
1022
|
}
|
|
1023
1023
|
|
|
1024
|
+
// A ctx.dataset() inside an if/switch/loop is represented inside the
|
|
1025
|
+
// control-flow step's flattened `steps`. Its contract is just as durable
|
|
1026
|
+
// as a top-level dataset contract: runtime sheet registration resolves by
|
|
1027
|
+
// namespace after the branch is chosen. Do not make that registration
|
|
1028
|
+
// depend on which branch happened to be first in the source.
|
|
1029
|
+
if (
|
|
1030
|
+
(substep.type === 'control_flow' || substep.type === 'step_suite') &&
|
|
1031
|
+
substep.steps.length > 0
|
|
1032
|
+
) {
|
|
1033
|
+
const nestedPipeline: PlayStaticPipeline = {
|
|
1034
|
+
stages: substep.steps,
|
|
1035
|
+
substeps: [],
|
|
1036
|
+
fields: [],
|
|
1037
|
+
};
|
|
1038
|
+
const nestedContract = resolveFromPipeline(nestedPipeline);
|
|
1039
|
+
if (nestedContract) {
|
|
1040
|
+
return nestedContract;
|
|
1041
|
+
}
|
|
1042
|
+
continue;
|
|
1043
|
+
}
|
|
1044
|
+
|
|
1024
1045
|
if (substep.type === 'play_call') {
|
|
1025
1046
|
const nestedContract = resolveFromPipeline(substep.pipeline);
|
|
1026
1047
|
if (nestedContract) {
|