@telorun/k8s-runner 0.13.0 → 0.14.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.
Files changed (56) hide show
  1. package/README.md +72 -92
  2. package/dist/bundle-store.d.ts +6 -13
  3. package/dist/bundle-store.d.ts.map +1 -1
  4. package/dist/bundle-store.js +6 -18
  5. package/dist/bundle-store.js.map +1 -1
  6. package/dist/capabilities.d.ts +3 -3
  7. package/dist/capabilities.js +4 -4
  8. package/dist/capabilities.js.map +1 -1
  9. package/dist/config.d.ts +7 -32
  10. package/dist/config.d.ts.map +1 -1
  11. package/dist/config.js +13 -21
  12. package/dist/config.js.map +1 -1
  13. package/dist/k8s/api-error.d.ts +34 -0
  14. package/dist/k8s/api-error.d.ts.map +1 -0
  15. package/dist/k8s/api-error.js +118 -0
  16. package/dist/k8s/api-error.js.map +1 -0
  17. package/dist/k8s/backend.d.ts.map +1 -1
  18. package/dist/k8s/backend.js +23 -35
  19. package/dist/k8s/backend.js.map +1 -1
  20. package/dist/k8s/client.d.ts +1 -2
  21. package/dist/k8s/client.d.ts.map +1 -1
  22. package/dist/k8s/client.js +1 -2
  23. package/dist/k8s/client.js.map +1 -1
  24. package/dist/k8s/pod-spec.d.ts +8 -9
  25. package/dist/k8s/pod-spec.d.ts.map +1 -1
  26. package/dist/k8s/pod-spec.js +19 -29
  27. package/dist/k8s/pod-spec.js.map +1 -1
  28. package/dist/k8s/pod-status.d.ts.map +1 -1
  29. package/dist/k8s/pod-status.js +2 -2
  30. package/dist/k8s/pod-status.js.map +1 -1
  31. package/dist/k8s/watch-session.d.ts +4 -5
  32. package/dist/k8s/watch-session.d.ts.map +1 -1
  33. package/dist/k8s/watch-session.js +8 -8
  34. package/dist/k8s/watch-session.js.map +1 -1
  35. package/dist/server.js +3 -3
  36. package/dist/server.js.map +1 -1
  37. package/package.json +2 -2
  38. package/src/bundle-store.ts +6 -19
  39. package/src/capabilities.ts +4 -4
  40. package/src/config.ts +20 -61
  41. package/src/k8s/api-error.test.ts +89 -0
  42. package/src/k8s/api-error.ts +128 -0
  43. package/src/k8s/backend.ts +34 -39
  44. package/src/k8s/client.ts +1 -10
  45. package/src/k8s/pod-spec.test.ts +57 -2
  46. package/src/k8s/pod-spec.ts +25 -36
  47. package/src/k8s/pod-status.ts +2 -2
  48. package/src/k8s/watch-pod-spec.test.ts +0 -1
  49. package/src/k8s/watch-session.ts +8 -13
  50. package/src/server.ts +3 -3
  51. package/dist/k8s/image-build.d.ts +0 -103
  52. package/dist/k8s/image-build.d.ts.map +0 -1
  53. package/dist/k8s/image-build.js +0 -427
  54. package/dist/k8s/image-build.js.map +0 -1
  55. package/src/k8s/image-build.test.ts +0 -238
  56. package/src/k8s/image-build.ts +0 -540
@@ -1,3 +1,4 @@
1
+ import { statusCode } from "./api-error.js";
1
2
  /**
2
3
  * Reading a Pod's status — shared by the run-session and watch-session paths.
3
4
  * Pure functions over the watch payload plus the one delete that both perform;
@@ -119,8 +120,7 @@ export async function deletePod(kube, ns, name) {
119
120
  }
120
121
  }
121
122
  export function is404(err) {
122
- const e = err;
123
- return e?.statusCode === 404 || e?.code === 404 || e?.response?.statusCode === 404;
123
+ return statusCode(err) === 404;
124
124
  }
125
125
  export function msg(err) {
126
126
  if (err instanceof Error)
@@ -1 +1 @@
1
- {"version":3,"file":"pod-status.js","sourceRoot":"","sources":["../../src/k8s/pod-status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pod-status.js","sourceRoot":"","sources":["../../src/k8s/pod-status.ts"],"names":[],"mappings":"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"}
@@ -9,11 +9,10 @@ export interface WatchSessionDeps {
9
9
  * A watch session: one pod, one workspace volume, one container per running
10
10
  * application, and the session outliving every run inside it.
11
11
  *
12
- * What it does NOT do is as load-bearing as what it does: it never builds an
13
- * image. The build path exists to put a dependency closure on disk before boot;
14
- * a watch session resolves its own into a per-app cache directory that lives as
15
- * long as the pod, so the download happens once per app per session and every
16
- * later reload resolves from local disk.
12
+ * Its cache is what separates it from a run session: the module closure lands in
13
+ * a directory that lives as long as the POD rather than as long as one run, so
14
+ * the download happens once per session and every later reload resolves from
15
+ * local disk.
17
16
  */
18
17
  export declare function startWatchSession(deps: WatchSessionDeps, spec: BackendStartSpec): Promise<BackendSession>;
19
18
  //# sourceMappingURL=watch-session.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"watch-session.d.ts","sourceRoot":"","sources":["../../src/k8s/watch-session.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,cAAc,EACd,gBAAgB,EAMjB,MAAM,sBAAsB,CAAC;AAW9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAsB9C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,eAAe,CAAC;CACzB;AAED;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,gBAAgB,EACtB,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,cAAc,CAAC,CA6kBzB"}
1
+ {"version":3,"file":"watch-session.d.ts","sourceRoot":"","sources":["../../src/k8s/watch-session.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,cAAc,EACd,gBAAgB,EAMjB,MAAM,sBAAsB,CAAC;AAW9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAsB9C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,eAAe,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,gBAAgB,EACtB,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,cAAc,CAAC,CAwkBzB"}
@@ -1,6 +1,7 @@
1
1
  import { PassThrough, Writable } from "node:stream";
2
2
  import { portKey, portsResolvedFrom, relayDebugStream, SessionStartError, watchReachability, workspaceMarkerWrite, WorkspaceClient, } from "@telorun/runner-core";
3
3
  import { clampLimits } from "../limits.js";
4
+ import { apiFailure, apiReason } from "./api-error.js";
4
5
  import { buildSessionIngress, buildSessionService, endpointsFor } from "./ingress.js";
5
6
  import { buildWatchPod, inspectPortFor, WORKSPACE_PORT } from "./pod-spec.js";
6
7
  import { deletePod, is404, msg, podPhase, podStatus, provisionMessage } from "./pod-status.js";
@@ -19,11 +20,10 @@ const RESIZE_CHANNEL = 4;
19
20
  * A watch session: one pod, one workspace volume, one container per running
20
21
  * application, and the session outliving every run inside it.
21
22
  *
22
- * What it does NOT do is as load-bearing as what it does: it never builds an
23
- * image. The build path exists to put a dependency closure on disk before boot;
24
- * a watch session resolves its own into a per-app cache directory that lives as
25
- * long as the pod, so the download happens once per app per session and every
26
- * later reload resolves from local disk.
23
+ * Its cache is what separates it from a run session: the module closure lands in
24
+ * a directory that lives as long as the POD rather than as long as one run, so
25
+ * the download happens once per session and every later reload resolves from
26
+ * local disk.
27
27
  */
28
28
  export async function startWatchSession(deps, spec) {
29
29
  const { kube, config } = deps;
@@ -62,7 +62,7 @@ export async function startWatchSession(deps, spec) {
62
62
  created = await kube.core.createNamespacedPod({ namespace: ns, body: pod });
63
63
  }
64
64
  catch (err) {
65
- throw new SessionStartError("start_failed", "create", `failed to create pod: ${msg(err)}`, msg(err));
65
+ throw apiFailure(err, "create", "could not create the session pod");
66
66
  }
67
67
  const abort = new AbortController();
68
68
  const ip = await waitForRunning(podName, abort);
@@ -224,7 +224,7 @@ export async function startWatchSession(deps, spec) {
224
224
  // A degraded terminal is not a failed session — status, run events and
225
225
  // the workspace all still work — so it is reported on that app's own
226
226
  // channel rather than aborting the start.
227
- spec.onOutput(app.name, Buffer.from(`\r\n[runner] failed to attach: ${msg(err)}\r\n`), tagFor(app, "stderr"));
227
+ spec.onOutput(app.name, Buffer.from(`\r\n[runner] failed to attach: ${apiReason(err)}\r\n`), tagFor(app, "stderr"));
228
228
  }
229
229
  }
230
230
  }
@@ -285,7 +285,7 @@ export async function startWatchSession(deps, spec) {
285
285
  }
286
286
  catch (err) {
287
287
  spec.onEndpoints(appName, {
288
- rejected: accepted.map((p) => ({ port: p.port, reason: msg(err) })),
288
+ rejected: accepted.map((p) => ({ port: p.port, reason: apiReason(err) })),
289
289
  });
290
290
  return;
291
291
  }
@@ -1 +1 @@
1
- {"version":3,"file":"watch-session.js","sourceRoot":"","sources":["../../src/k8s/watch-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAapD,OAAO,EACL,OAAO,EACP,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEpE;kEACkE;AAClE,MAAM,iBAAiB,GAAG,OAAO,CAAC;AAClC,MAAM,oBAAoB,GAAG,KAAK,CAAC;AACnC;;4CAE4C;AAC5C,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAC3C,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,MAAM,cAAc,GAAG,CAAC,CAAC;AAYzB;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAsB,EACtB,IAAsB;IAEtB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC9B,MAAM,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAC;IACnC,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAExD,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACrB,IAAI,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,WAAW,GAAG,KAAK,CAAC;IAExB,MAAM,qBAAqB,GAAG,MAAM,wBAAwB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAe3E,IAAI,OAAO,GAAsB,IAAI,CAAC;IAEtC,IAAI,WAAwB,CAAC;IAC7B,MAAM,IAAI,GAAG,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC;IACzD,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,MAAM,MAAM,GAAG,CAAC,MAAiB,EAAQ,EAAE;QACzC,IAAI,OAAO;YAAE,OAAO;QACpB,OAAO,GAAG,IAAI,CAAC;QACf,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtB,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,KAAK,UAAU,OAAO,CAAC,IAAa;QAClC,MAAM,GAAG,GAAG,aAAa,CAAC;YACxB,MAAM;YACN,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO;YACP,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,IAAI;YACJ,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM;YACN,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,YAAY;YAC/C,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;YAClC,qBAAqB;SACtB,CAAC,CAAC;QAEH,IAAI,OAAc,CAAC;QACnB,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;QAC9E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,iBAAiB,CACzB,cAAc,EACd,QAAQ,EACR,yBAAyB,GAAG,CAAC,GAAG,CAAC,EAAE,EACnC,GAAG,CAAC,GAAG,CAAC,CACT,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,eAAe,EAAE,CAAC;QACpC,MAAM,EAAE,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAEhD,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,UAAU,EAAE,IAAI,cAAc,EAAE,CAAC,CAAC;QACxE,MAAM,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAEhD,2EAA2E;QAC3E,6EAA6E;QAC7E,6EAA6E;QAC7E,kDAAkD;QAClD,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,SAAS,CAAC,KAAK,CAAC;gBACpB,KAAK,EAAE;oBACL,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC/B,IAAI,EAAE,CAAC,CAAC,YAAY;wBACpB,OAAO,EAAE,CAAC,CAAC,QAAQ;wBACnB,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,MAAM;qBAC/B,CAAC,CAAC;oBACH,sEAAsE;oBACtE,gEAAgE;oBAChE,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC;iBACrC;aACF,CAAC,CAAC;QACL,CAAC;QAED,SAAS,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO,GAAG;YACR,IAAI,EAAE,OAAO;YACb,GAAG,EAAE,OAAO,CAAC,QAAQ,EAAE,GAAG,IAAI,EAAE;YAChC,EAAE;YACF,SAAS;YACT,OAAO,EAAE,IAAI,GAAG,EAAE;YAClB,MAAM,EAAE,IAAI,GAAG,EAAE;YACjB,KAAK;YACL,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;SACpB,CAAC;QAEF,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;QAC1B,MAAM,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACtC,UAAU,CAAC,OAAO,CAAC,CAAC;QACpB,UAAU,CAAC,OAAO,CAAC,CAAC;QACpB,WAAW,CAAC,OAAO,CAAC,CAAC;QAErB,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC;YACZ,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC/D,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5B,CAAC,CAAC;IACL,CAAC;IAED;;;gEAG4D;IAC5D,SAAS,aAAa;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC;QAC9B,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QACzC,OAAO,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED;;;6DAGyD;IACzD,SAAS,WAAW,CAAC,OAAyB;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC;QAC9B,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QAChC,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAc,EAAE,CAAC,CAAC;IACrF,CAAC;IAED;;yEAEqE;IACrE,KAAK,UAAU,cAAc,CAAC,IAAY,EAAE,KAAsB;QAChE,IAAI,aAAiC,CAAC;QACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,iBAAiB,CAAC;QAChD,SAAS,CAAC;YACR,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACzF,IAAI,OAAc,CAAC;YACnB,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;YACvE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,KAAK,CAAC,GAAG,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;gBAC3E,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;YAChC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC;gBACrC,IAAI,EAAE;oBAAE,OAAO,EAAE,CAAC;YACpB,CAAC;iBAAM,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;gBACvD,MAAM,IAAI,KAAK,CAAC,eAAe,KAAK,iBAAiB,CAAC,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACN,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC5C,IAAI,SAAS,IAAI,SAAS,KAAK,aAAa,EAAE,CAAC;oBAC7C,aAAa,GAAG,SAAS,CAAC;oBAC1B,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;YACD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;YACzE,CAAC;YACD,MAAM,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED;;sEAEkE;IAClE,KAAK,UAAU,gBAAgB,CAAC,MAAuB,EAAE,MAAmB;QAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,0BAA0B,CAAC;QACzD,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;QAC9C,IAAI,SAAS,GAAG,aAAa,CAAC;QAC9B,SAAS,CAAC;YACR,IAAI,MAAM,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;YACzF,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBACpB,OAAO;YACT,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YACvB,CAAC;YACD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;gBAC1B,MAAM,IAAI,iBAAiB,CACzB,cAAc,EACd,OAAO,EACP,6CAA6C,SAAS,EAAE,EACxD,SAAS,CACV,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED;qFACiF;IACjF,KAAK,UAAU,UAAU,CAAC,EAAc;QACtC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC;gBAC1B,KAAK,CAAC,KAAa,EAAE,QAAQ,EAAE,EAAE;oBAC/B,IAAI,KAAK,EAAE,UAAU;wBAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;oBAC1F,EAAE,EAAE,CAAC;gBACP,CAAC;aACF,CAAC,CAAC;YACH,yEAAyE;YACzE,wEAAwE;YACxE,wDAAwD;YACxD,MAAM,MAAM,GACV,GAAG,CAAC,EAAE,KAAK,SAAS;gBAClB,CAAC,CAAC,IAAI,QAAQ,CAAC;oBACX,KAAK,CAAC,KAAa,EAAE,QAAQ,EAAE,EAAE;wBAC/B,IAAI,KAAK,EAAE,UAAU;4BAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;wBAC7E,EAAE,EAAE,CAAC;oBACP,CAAC;iBACF,CAAC;gBACJ,CAAC,CAAC,IAAI,CAAC;YACX,IAAI,CAAC;gBACH,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CACjC,EAAE,EACF,EAAE,CAAC,IAAI,EACP,OAAO,GAAG,CAAC,IAAI,EAAE,EACjB,MAAM,EACN,MAAM,EACN,KAAK,EACL,GAAG,CAAC,EAAE,KAAK,KAAK,CACjB,CAAC;gBACF,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAgC,CAAC,CAAC;gBAC3D,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACjC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,uEAAuE;gBACvE,qEAAqE;gBACrE,0CAA0C;gBAC1C,IAAI,CAAC,QAAQ,CACX,GAAG,CAAC,IAAI,EACR,MAAM,CAAC,IAAI,CAAC,kCAAkC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAC7D,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CACtB,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAS,UAAU,CAAC,EAAc;QAChC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC1B,KAAK,gBAAgB,CAAC;gBACpB,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,cAAc,CAAC,KAAK,CAAC,SAAS;gBACtD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACjB,KAAK,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oBACzC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAChC,CAAC;gBACD,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM;aACxB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,UAAU,kBAAkB,CAAC,OAAe,EAAE,KAAiB;QAClE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,EAAE,GAAG,OAAO,CAAC;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;QACjD,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG;YAAE,OAAO;QAExB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAEvD,4EAA4E;QAC5E,6EAA6E;QAC7E,6DAA6D;QAC7D,0EAA0E;QAC1E,sEAAsE;QACtE,qEAAqE;QACrE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC;YACpB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC9E,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,KAAK,SAAS;gBAChC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;gBACvD,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE7D,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC;QAE7E,IAAI,CAAC;YACH,MAAM,gBAAgB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;gBACxB,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aACpE,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE;YACxB,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;gBACrB,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE;gBAC3D,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBACpB,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE;gBAC5D,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;gBACrB,CAAC,CAAC;oBACE,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC7B,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,MAAM,EACJ,IAAI,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,KAAK,KAAK;4BACjD,CAAC,CAAC,qCAAqC,IAAI,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,CAAC,QAAQ,SAAS,CAAC,CAAC,IAAI,EAAE;4BACjG,CAAC,CAAC,gDAAgD,CAAC,CAAC,QAAQ,SAAS,CAAC,CAAC,IAAI,EAAE;qBAClF,CAAC,CAAC;iBACJ;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5E,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnB,KAAK,iBAAiB,CAAC;gBACrB,IAAI,EAAE,EAAE,CAAC,EAAE;gBACX,KAAK,EAAE,GAAG;gBACV,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC;gBACnE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM;aACxB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,SAAS,UAAU,CAAC,EAAc;QAChC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC7E,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YAC/B,KAAK,iBAAiB,CAAC;gBACrB,IAAI,EAAE,EAAE,CAAC,EAAE;gBACX,KAAK,EAAE,GAAG;gBACV,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC;gBACpE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM;aACxB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;uEACmE;IACnE,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IAEpC;;;;;;;;;;;OAWG;IACH,SAAS,mBAAmB,CAAC,GAAY;QACvC,IAAI,WAAW;YAAE,OAAO;QACxB,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,iBAAiB,IAAI,EAAE,EAAE,CAAC;YAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;gBAAE,SAAS;YACvC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC;YAC5C,IAAI,CAAC,UAAU;gBAAE,SAAS;YAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC1C,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC;gBAAE,SAAS;YACrC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACvB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;gBACvB,MAAM,EACJ,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,KAAK,WAAW;oBACpD,CAAC,CAAC,yBAAyB,UAAU,CAAC,MAAM,eAAe,UAAU,CAAC,QAAQ,IAAI,SAAS,GAAG;oBAC9F,CAAC,CAAC,sCAAsC,UAAU,CAAC,QAAQ,IAAI,SAAS,GAAG;aAChF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;0EACsE;IACtE,SAAS,WAAW,CAAC,EAAc;QACjC,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,GAAG,GAAG,KAAK,IAAmB,EAAE;YACpC,IAAI,OAAO;gBAAE,OAAO;YACpB,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAChC,sBAAsB,EAAE,OAAO,EAC/B,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,EAC7C,CAAC,IAAY,EAAE,GAAY,EAAE,EAAE;oBAC7B,IAAI,OAAO;wBAAE,OAAO;oBACpB,mBAAmB,CAAC,GAAG,CAAC,CAAC;oBACzB,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;oBAC5B,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;wBAChD,6DAA6D;wBAC7D,iEAAiE;wBACjE,gDAAgD;wBAChD,MAAM,CACJ,WAAW;4BACT,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE;4BACrB,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,uBAAuB,KAAK,EAAE,EAAE,CAChE,CAAC;oBACJ,CAAC;gBACH,CAAC,EACD,GAAG,EAAE;oBACH,IAAI,OAAO;wBAAE,OAAO;oBACpB,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,EAAE,EAAE,oBAAoB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;gBAC/D,CAAC,CACF,CAAC;gBACF,EAAE,CAAC,SAAS,GAAG,GAAG,EAAE;oBAClB,OAAO,GAAG,IAAI,CAAC;oBACf,IAAI,CAAC;wBACF,GAA8B,CAAC,KAAK,EAAE,EAAE,CAAC;oBAC5C,CAAC;oBAAC,MAAM,CAAC;wBACP,kBAAkB;oBACpB,CAAC;gBACH,CAAC,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC,OAAO;oBAAE,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,EAAE,EAAE,oBAAoB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YAC7E,CAAC;QACH,CAAC,CAAC;QACF,KAAK,GAAG,EAAE,CAAC;IACb,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,UAAU,gBAAgB,CAAC,EAAc,EAAE,OAAyB;QACvE,IAAI,CAAC,MAAM,CAAC,wBAAwB;YAAE,OAAO;QAC7C,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC/B,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACpF,MAAM,WAAW,GAAG,OAAO,CAAC,QAAS,CAAC,IAAK,CAAC;QAC5C,MAAM,MAAM,CACV,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EACzE,KAAK,IAAI,EAAE;YACT,wEAAwE;YACxE,yEAAyE;YACzE,oEAAoE;YACpE,+CAA+C;YAC/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;YAC7F,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC;gBACvC,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,EAAE;gBACb,IAAI,EAAE;oBACJ,GAAG,OAAO;oBACV,QAAQ,EAAE;wBACR,GAAG,OAAO,CAAC,QAAQ;wBACnB,eAAe,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe;qBACpD;oBACD,IAAI,EAAE;wBACJ,GAAG,OAAO,CAAC,IAAI;wBACf,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS;wBACnC,UAAU,EAAE,QAAQ,CAAC,IAAI,EAAE,UAAU;qBACtC;iBACF;aACF,CAAC,CAAC;QACL,CAAC,CACF,CAAC;QACF,MAAM,EAAE,OAAO,EAAE,GAAG,mBAAmB,CACrC,MAAM,EACN,IAAI,CAAC,SAAS,EACd,WAAW,EACX,EAAE,CAAC,IAAI,EACP,EAAE,CAAC,GAAG,EACN,KAAK,CACN,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM;YAAE,OAAO;QACzC,MAAM,WAAW,GAAG,OAAO,CAAC,QAAS,CAAC,IAAK,CAAC;QAC5C,MAAM,MAAM,CACV,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAC/E,KAAK,IAAI,EAAE;YACT,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;gBAC3D,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,EAAE;aACd,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC;gBAC7C,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,EAAE;gBACb,IAAI,EAAE;oBACJ,GAAG,OAAO;oBACV,QAAQ,EAAE;wBACR,GAAG,OAAO,CAAC,QAAQ;wBACnB,eAAe,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe;qBACpD;iBACF;aACF,CAAC,CAAC;QACL,CAAC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,UAAU,WAAW;QACxB,MAAM,EAAE,GAAG,OAAO,CAAC;QACnB,OAAO,GAAG,IAAI,CAAC;QACf,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,EAAE,CAAC,SAAS,EAAE,CAAC;QACf,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACjB,KAAK,MAAM,MAAM,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YACzC,IAAI,CAAC;gBACH,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,CAAC;YAAC,MAAM,CAAC;gBACP,oBAAoB;YACtB,CAAC;QACH,CAAC;QACD,MAAM,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpB,OAAO;QACL,UAAU,CAAC,GAAG,EAAE,KAAK;YACnB,IAAI,CAAC;gBACH,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YACtD,CAAC;YAAC,MAAM,CAAC;gBACP,kBAAkB;YACpB,CAAC;QACH,CAAC;QACD,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI;YACpB,MAAM,MAAM,GAAG,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM;gBAAE,OAAO;YACpB,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC3E,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YACvE,CAAC;YAAC,MAAM,CAAC;gBACP,iBAAiB;YACnB,CAAC;QACH,CAAC;QACD,IAAI;QACJ,IAAI,SAAS;YACX,OAAO,OAAO,EAAE,SAAS,CAAC;QAC5B,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,GAAG;YACd,MAAM,EAAE,GAAG,OAAO,CAAC;YACnB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;YAC/C,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK;gBAAE,OAAO;YAC1B,MAAM,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACpD,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,IAAI;YAChB,yEAAyE;YACzE,yEAAyE;YACzE,yEAAyE;YACzE,uEAAuE;YACvE,qDAAqD;YACrD,MAAM,KAAK,GAAG,MAAM,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC;YAClD,MAAM,WAAW,EAAE,CAAC;YACpB,IAAI,GAAG,IAAI,CAAC;YACZ,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACvC,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;YACrB,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,OAAQ,CAAC,SAAS,CAAC,KAAK,CAAC;oBAC7B,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;iBACtF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,KAAK,CAAC,OAAO;YACX,0EAA0E;YAC1E,mCAAmC;YACnC,MAAM,WAAW,EAAE,CAAC;QACtB,CAAC;QACD,KAAK,CAAC,IAAI;YACR,WAAW,GAAG,IAAI,CAAC;YACnB,MAAM,WAAW,EAAE,CAAC;YACpB,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QAC9B,CAAC;KACF,CAAC;IAEF,SAAS,MAAM,CAAC,GAAmB,EAAE,IAAyB;QAC5D,OAAO,GAAG,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACzC,CAAC;IAED,KAAK,UAAU,MAAM,CAAC,MAA8B,EAAE,OAA+B;QACnF,IAAI,CAAC;YACH,MAAM,MAAM,EAAE,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,MAAM,GAAG,CAAC;YAChC,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,IAAsB;IACtC,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;wEAOwE;AACxE,IAAI,WAAW,GAAG,CAAC,CAAC;AAEpB,SAAS,YAAY,CAAC,SAAiB;IACrC,WAAW,IAAI,CAAC,CAAC;IACjB,OAAO,cAAc,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;AACzF,CAAC;AAED,SAAS,UAAU,CAAC,GAAY;IAC9B,MAAM,CAAC,GAAG,GAAiF,CAAC;IAC5F,OAAO,CAAC,CAAC,EAAE,UAAU,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,KAAK,GAAG,CAAC;AACvE,CAAC;AAED,SAAS,KAAK,CAAC,EAAU,EAAE,MAAoB;IAC7C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACtC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QAChB,MAAM,EAAE,gBAAgB,CACtB,OAAO,EACP,GAAG,EAAE;YACH,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/B,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"watch-session.js","sourceRoot":"","sources":["../../src/k8s/watch-session.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
@@ -30,7 +30,7 @@ export async function buildServer(deps) {
30
30
  agents: deps.config.watch.enabled ? coResidentAgentNames(apps) : undefined,
31
31
  }),
32
32
  // Operator-predefined apps (RUNNER_APPS; none when unset). Advertised on
33
- // /v1/capabilities; app sessions run the catalog image directly (no build).
33
+ // /v1/capabilities; app sessions run the catalog image directly.
34
34
  apps,
35
35
  validateConfig: catalog
36
36
  ? (sessionConfig) => catalog.isAllowed(sessionConfig.image)
@@ -39,8 +39,8 @@ export async function buildServer(deps) {
39
39
  `Allowed images: ${catalog.current().join(", ")}`
40
40
  : undefined,
41
41
  });
42
- // Mount the internal, tokenized fetch route on the same app so a build Job's
43
- // initContainer can pull the build-context tarball (bundle + Dockerfile).
42
+ // Mount the internal, tokenized fetch route on the same app so a session pod's
43
+ // initContainer can pull the bundle tarball.
44
44
  deps.bundleStore.registerRoute(handle.app);
45
45
  return handle;
46
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telorun/k8s-runner",
3
- "version": "0.13.0",
3
+ "version": "0.14.0",
4
4
  "description": "Telo Kubernetes Runner - HTTP service that runs Telo Applications as sandboxed Kubernetes Pods. A backend over @telorun/runner-core, sibling to docker-runner.",
5
5
  "keywords": [
6
6
  "telo",
@@ -23,7 +23,7 @@
23
23
  "dependencies": {
24
24
  "@kubernetes/client-node": "^1.4.0",
25
25
  "fastify": "^5.12.1",
26
- "@telorun/runner-core": "0.11.0"
26
+ "@telorun/runner-core": "0.12.0"
27
27
  },
28
28
  "devDependencies": {
29
29
  "@types/node": "^20.0.0",
@@ -16,9 +16,9 @@ interface StoredBundle {
16
16
  const STAGING_TTL_MS = 5 * 60 * 1000;
17
17
 
18
18
  /**
19
- * Holds image-build contexts in memory and serves them over a tokenized,
20
- * cluster-internal URL the build Job's initContainer fetches once. The
21
- * per-build unguessable token prevents cross-build disclosure; the entry is
19
+ * Holds session bundles in memory and serves them over a tokenized,
20
+ * cluster-internal URL the session pod's initContainer fetches once. The
21
+ * per-session unguessable token prevents cross-session disclosure; the entry is
22
22
  * dropped after first fetch (or explicitly on cleanup).
23
23
  */
24
24
  export class BundleStore {
@@ -27,22 +27,9 @@ export class BundleStore {
27
27
  constructor(private readonly selfUrl: string) {}
28
28
 
29
29
  /**
30
- * Stages an image-build context the bundle plus a generated `Dockerfile` at
31
- * the context root and returns the tokenized, single-use URL the build Job's
32
- * initContainer fetches. Keyed by `id` (a build id).
33
- */
34
- async stageBuildContext(id: string, bundle: RunBundle, dockerfile: string): Promise<string> {
35
- return this.stage(id, {
36
- entryRelativePath: bundle.entryRelativePath,
37
- files: [...bundle.files, { relativePath: "Dockerfile", contents: dockerfile }],
38
- });
39
- }
40
-
41
- /**
42
- * Stages the raw session bundle (no Dockerfile) and returns the tokenized,
43
- * single-use URL the session Pod's body-delivery initContainer fetches into
44
- * `/app`. Keyed by `sessionId`. The image is keyed only on the dependency
45
- * closure, so the per-session body is delivered here at boot rather than baked.
30
+ * Stages the session bundle and returns the tokenized, single-use URL the
31
+ * session Pod's body-delivery initContainer fetches into `/app`. Keyed by
32
+ * `sessionId`.
46
33
  */
47
34
  async stageSessionBundle(sessionId: string, bundle: RunBundle): Promise<string> {
48
35
  return this.stage(sessionId, bundle);
@@ -25,9 +25,9 @@ export interface KubernetesRunnerCapabilitiesOptions {
25
25
  * studio renders an editable dropdown constrained to that allowlist — which the
26
26
  * session route re-validates server-side. Without a catalog (disabled /
27
27
  * first-fetch failure) the list collapses to the single `defaultImage` (locked
28
- * via `enforced`). `pullPolicy` is client-editable: `always` re-pulls the base
29
- * image when its tag has moved upstream (rebuilding the per-app image), which
30
- * is how a picked moving tag like `latest-slim` stays current.
28
+ * via `enforced`). `pullPolicy` is client-editable and is the pod's own
29
+ * `imagePullPolicy`: `always` re-pulls the kernel image, which is how a picked
30
+ * moving tag like `latest-slim` stays current.
31
31
  *
32
32
  * `terms`, when set (operator-provided via RUNNER_TERMS_*), are enforced: a
33
33
  * session won't start until the client acknowledges the current version. */
@@ -53,7 +53,7 @@ export function kubernetesRunnerCapabilities(
53
53
  enforced: true,
54
54
  imageEnum,
55
55
  pullPolicyDescription:
56
- "Base-image freshness. `always` rebuilds the session image when the base tag has moved upstream (Docker Hub only); `missing` and `never` reuse the cached build.",
56
+ "Kernel-image freshness, applied as the Pod's imagePullPolicy. `always` re-pulls on every session, so a moving tag like `latest-slim` picks up a new release. `missing` pulls only when the node has no copy. `never` never pulls at all — on a node that has not already cached the image the session fails to start (ErrImageNeverPull), so it suits a cluster that pre-loads its images and nothing else.",
57
57
  }),
58
58
  },
59
59
  terms,
package/src/config.ts CHANGED
@@ -45,34 +45,6 @@ export interface LimitCeilings {
45
45
  ephemeralStorage: string;
46
46
  }
47
47
 
48
- /**
49
- * On-cluster image-build settings. The runner ALWAYS prebuilds a self-contained
50
- * per-app image (controllers + module manifests baked in via `telo install`) and
51
- * the session pod runs it directly — there is no in-pod install fallback, so a
52
- * registry repository (`RUNNER_IMAGE_REPOSITORY`) is required.
53
- */
54
- export interface ImageBuildConfig {
55
- /** Registry repository the per-app image is pushed to / pulled from; the tag
56
- * is the bundle content hash (e.g. `registry.telo-runner.svc:5000/telo-sessions`). */
57
- repository: string;
58
- /** Namespace the trusted Kaniko build Jobs run in (registry egress lives here). */
59
- namespace: string;
60
- /** Builder image — Kaniko (or a compatible `--context`/`--destination` executor). */
61
- builderImage: string;
62
- /** Build Job `activeDeadlineSeconds` and the runner's wait budget. */
63
- timeoutSeconds: number;
64
- /** Push/pull to an insecure (HTTP / self-signed) registry — the in-cluster default. */
65
- insecureRegistry: boolean;
66
- /** HTTP(S) base for a best-effort manifest existence check (skip build on hit);
67
- * undefined → always build. */
68
- registryApiUrl?: string;
69
- /** Optional dockerconfig Secret (in the build namespace) Kaniko pushes with. */
70
- pushSecretName?: string;
71
- /** Optional dockerconfig Secret (in the session namespace) the kubelet uses to
72
- * pull per-app images from a private registry. */
73
- imagePullSecret?: string;
74
- }
75
-
76
48
  export interface K8sRunnerConfig extends RunnerCoreConfig {
77
49
  /** Identity advertised on `/v1/capabilities` — studio labels the runner
78
50
  * with these. */
@@ -84,8 +56,12 @@ export interface K8sRunnerConfig extends RunnerCoreConfig {
84
56
  * image as `RUNNER_IMAGE` at build time (the kernel version the runner was
85
57
  * built against); the literal fallback below is for a source checkout only. */
86
58
  defaultImage: string;
87
- /** Small image for the bundle/build-context fetch initContainer (needs wget + tar). */
59
+ /** Small image for the bundle-fetch initContainer (needs wget + tar). */
88
60
  initImage: string;
61
+ /** Optional dockerconfig Secret (in the session namespace) the kubelet pulls
62
+ * session images with — the kernel image, and any operator catalog image
63
+ * (`RUNNER_APPS`) held in a private registry. */
64
+ imagePullSecret?: string;
89
65
  /** Optional sandbox RuntimeClass (gvisor/kata). Unset → cluster default (runc). */
90
66
  runtimeClass?: string;
91
67
  /** Wildcard base domain for per-session ingress; unset → logs-only. */
@@ -96,10 +72,8 @@ export interface K8sRunnerConfig extends RunnerCoreConfig {
96
72
  * Ingress presents so an upstream (e.g. Cloudflare Full (Strict)) can validate
97
73
  * the origin. Must cover the wildcard `*.<sessionIngressBaseDomain>`. Unset → no TLS block. */
98
74
  sessionIngressTlsSecretName?: string;
99
- /** On-cluster image build the only delivery path (always present). */
100
- build: ImageBuildConfig;
101
- /** Runner's own in-cluster base URL, used to build the bundle/build-context
102
- * fetch URL the initContainer curls (e.g. http://k8s-runner.telo-runner:8062). */
75
+ /** Runner's own in-cluster base URL, used to build the bundle fetch URL the
76
+ * initContainer curls (e.g. http://k8s-runner.telo-runner:8062). */
103
77
  selfUrl: string;
104
78
  /** Label applied to every session object, used for orphan reaping. */
105
79
  managedByLabel: string;
@@ -162,30 +136,6 @@ export function loadK8sRunnerConfig(env: NodeJS.ProcessEnv): K8sRunnerConfig {
162
136
  );
163
137
  }
164
138
 
165
- const repository = env.RUNNER_IMAGE_REPOSITORY?.trim();
166
- if (!repository) {
167
- throw new RunnerConfigError(
168
- "RUNNER_IMAGE_REPOSITORY env var is required. The runner prebuilds a per-app session image for " +
169
- "every run (there is no in-pod install fallback); set it to the registry repository the built " +
170
- "images are pushed to / pulled from (e.g. registry.example.com/telo-sessions). The tag is the " +
171
- "bundle content hash.",
172
- );
173
- }
174
- const build: ImageBuildConfig = {
175
- repository: repository.replace(/\/+$/, ""),
176
- namespace: env.RUNNER_BUILD_NAMESPACE?.trim() || "telo-builds",
177
- builderImage: env.RUNNER_BUILDER_IMAGE?.trim() || "gcr.io/kaniko-project/executor:latest",
178
- timeoutSeconds: parsePositiveInt(
179
- env.RUNNER_BUILD_TIMEOUT_SECONDS,
180
- 600,
181
- "RUNNER_BUILD_TIMEOUT_SECONDS",
182
- ),
183
- insecureRegistry: env.RUNNER_REGISTRY_INSECURE?.trim() === "true",
184
- registryApiUrl: env.RUNNER_REGISTRY_API_URL?.trim() || undefined,
185
- pushSecretName: env.RUNNER_REGISTRY_PUSH_SECRET?.trim() || undefined,
186
- imagePullSecret: env.RUNNER_IMAGE_PULL_SECRET?.trim() || undefined,
187
- };
188
-
189
139
  return {
190
140
  ...loadCoreConfig(env, { port: DEFAULT_PORT }),
191
141
  displayName: env.RUNNER_DISPLAY_NAME?.trim() || "Telo Runner",
@@ -194,18 +144,27 @@ export function loadK8sRunnerConfig(env: NodeJS.ProcessEnv): K8sRunnerConfig {
194
144
  sessionNamespace: env.RUNNER_SESSION_NAMESPACE?.trim() || "telo-sessions",
195
145
  defaultImage: env.RUNNER_IMAGE?.trim() || "telorun/node:latest-slim",
196
146
  initImage: env.RUNNER_INIT_IMAGE?.trim() || "busybox:stable",
147
+ imagePullSecret: env.RUNNER_IMAGE_PULL_SECRET?.trim() || undefined,
197
148
  runtimeClass: env.RUNNER_RUNTIME_CLASS?.trim() || undefined,
198
149
  sessionIngressBaseDomain: env.SESSION_INGRESS_BASE_DOMAIN?.trim() || undefined,
199
150
  sessionIngressClassName: env.SESSION_INGRESS_CLASS?.trim() || undefined,
200
151
  sessionIngressTlsSecretName: env.SESSION_INGRESS_TLS_SECRET?.trim() || undefined,
201
- build,
202
152
  selfUrl: selfUrl.replace(/\/+$/, ""),
203
153
  managedByLabel: env.RUNNER_MANAGED_BY?.trim() || "telo-k8s-runner",
154
+ // Sized for a pod that RESOLVES ITS OWN module closure. They used to be
155
+ // 50m / 100Mi / 512Mi, which described a different workload: the closure
156
+ // arrived in image layers, so the pod only ran it. It now downloads,
157
+ // unpacks and resolves it in-pod, into an emptyDir that counts against
158
+ // ephemeral-storage — so the old numbers meant an OOMKill on the memory
159
+ // ceiling and an eviction on the storage one, for the ordinary case. The
160
+ // watch path already ran this workload and already carried the roomier
161
+ // ceiling; these match it. `appLimits` stays separate: it still differs in
162
+ // TTL, and both remain the operator's policy to tighten.
204
163
  limits: {
205
- cpu: env.RUNNER_MAX_CPU?.trim() || "50m",
206
- memory: env.RUNNER_MAX_MEMORY?.trim() || "100Mi",
164
+ cpu: env.RUNNER_MAX_CPU?.trim() || "500m",
165
+ memory: env.RUNNER_MAX_MEMORY?.trim() || "512Mi",
207
166
  ttlSeconds: parsePositiveInt(env.RUNNER_MAX_TTL_SECONDS, 3600, "RUNNER_MAX_TTL_SECONDS"),
208
- ephemeralStorage: env.RUNNER_MAX_EPHEMERAL_STORAGE?.trim() || "512Mi",
167
+ ephemeralStorage: env.RUNNER_MAX_EPHEMERAL_STORAGE?.trim() || "1Gi",
209
168
  },
210
169
  appLimits: {
211
170
  cpu: env.RUNNER_APP_MAX_CPU?.trim() || "500m",
@@ -0,0 +1,89 @@
1
+ import { ApiException } from "@kubernetes/client-node";
2
+ import { describe, expect, it } from "vitest";
3
+
4
+ import { apiFailure, apiReason } from "./api-error.js";
5
+
6
+ /** A 403 with an arbitrary admission message. `body` is the raw JSON text,
7
+ * which is what the client-node deserializer leaves for a status code it does
8
+ * not recognize — exactly the 403 case ("Unknown API Status Code!"). */
9
+ function forbidden(message: string): ApiException<string> {
10
+ const body = JSON.stringify({
11
+ kind: "Status",
12
+ apiVersion: "v1",
13
+ status: "Failure",
14
+ message,
15
+ reason: "Forbidden",
16
+ code: 403,
17
+ });
18
+ return new ApiException<string>(403, "Unknown API Status Code!", body, {
19
+ "audit-id": "240bebaf-17aa-4684-8732-210b5b720f5a",
20
+ "x-kubernetes-pf-flowschema-uid": "f895735a-d707-400c-88de-23e24406fa8c",
21
+ });
22
+ }
23
+
24
+ const RBAC_DENIAL =
25
+ 'pods is forbidden: User "system:serviceaccount:telo-runner:telo-k8s-runner" cannot create resource "pods" in the namespace "telo-sessions"';
26
+ const QUOTA_DENIAL =
27
+ 'pods "telo-run-abc" is forbidden: exceeded quota: telo-k8s-runner-sessions, requested: pods=1, used: pods=32, limited: pods=32';
28
+
29
+ describe("apiReason", () => {
30
+ it("keeps the status and reason, and nothing else the exception carried", () => {
31
+ const reason = apiReason(forbidden(RBAC_DENIAL));
32
+ expect(reason).toContain("Forbidden");
33
+ expect(reason).toContain("403");
34
+ // The whole point: no cluster identities, no audit id, no headers.
35
+ expect(reason).not.toContain("system:serviceaccount");
36
+ expect(reason).not.toContain("audit-id");
37
+ expect(reason).not.toContain("flowschema");
38
+ });
39
+
40
+ it("names RBAC as the fix for a rejection only the operator can clear", () => {
41
+ expect(apiReason(forbidden(RBAC_DENIAL))).toContain("RBAC");
42
+ });
43
+
44
+ it("tells a quota rejection from an RBAC one — same code, same reason", () => {
45
+ // The chart ships a 32-pod ResourceQuota enabled by default, so the 33rd
46
+ // session is a 403 `Forbidden` that has nothing to do with RBAC. Sending
47
+ // that operator to re-check a Role is the wrong action at the one moment
48
+ // the message is read under load.
49
+ const reason = apiReason(forbidden(QUOTA_DENIAL));
50
+ expect(reason).toContain("quota");
51
+ expect(reason).not.toContain("RBAC");
52
+ // The admission message is classified, never echoed.
53
+ expect(reason).not.toContain("telo-k8s-runner-sessions");
54
+ });
55
+
56
+ it("stays neutral on a 403 whose message identifies neither", () => {
57
+ const reason = apiReason(forbidden("denied by a validating webhook"));
58
+ expect(reason).toContain("rejected the request");
59
+ expect(reason).not.toContain("RBAC");
60
+ expect(reason).not.toContain("quota");
61
+ });
62
+
63
+ it("reads a parsed status body as well as a raw one", () => {
64
+ const parsed = new ApiException<unknown>(404, "Not Found", { reason: "NotFound" }, {});
65
+ expect(apiReason(parsed)).toContain("NotFound");
66
+ });
67
+
68
+ it("reports an unreachable apiserver as unreachable, not as a rejection", () => {
69
+ // A system error's `code` is a STRING and a DOMException's is a small
70
+ // number, both in the field an HTTP status also lands in. Reading either as
71
+ // a status claimed the apiserver refused something it was never asked.
72
+ const refused = Object.assign(new Error("connect ECONNREFUSED"), { code: "ECONNREFUSED" });
73
+ const aborted = Object.assign(new Error("The operation was aborted"), { code: 20 });
74
+ for (const err of [refused, aborted, new Error("socket hang up")]) {
75
+ expect(apiReason(err)).toBe("the Kubernetes API could not be reached");
76
+ }
77
+ });
78
+ });
79
+
80
+ describe("apiFailure", () => {
81
+ it("carries the raw exception as `cause` so the runner log keeps the detail", () => {
82
+ const raw = forbidden(RBAC_DENIAL);
83
+ const failure = apiFailure(raw, "create", "could not create the session pod");
84
+ expect(failure.stage).toBe("create");
85
+ expect(failure.message).toContain("could not create the session pod");
86
+ expect(failure.message).not.toContain("system:serviceaccount");
87
+ expect(failure.cause).toBe(raw);
88
+ });
89
+ });