@namzu/sandbox 14.0.0 → 16.0.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 (100) hide show
  1. package/CHANGELOG.md +924 -0
  2. package/README.md +369 -14
  3. package/dist/backends/aci-standby-pool/index.d.ts.map +1 -1
  4. package/dist/backends/aci-standby-pool/index.js +13 -1
  5. package/dist/backends/aci-standby-pool/index.js.map +1 -1
  6. package/dist/backends/docker/index.d.ts +169 -6
  7. package/dist/backends/docker/index.d.ts.map +1 -1
  8. package/dist/backends/docker/index.js +499 -85
  9. package/dist/backends/docker/index.js.map +1 -1
  10. package/dist/backends/firecracker/index.d.ts.map +1 -1
  11. package/dist/backends/firecracker/index.js +12 -2
  12. package/dist/backends/firecracker/index.js.map +1 -1
  13. package/dist/backends/firecracker/protocol.d.ts +459 -8
  14. package/dist/backends/firecracker/protocol.d.ts.map +1 -1
  15. package/dist/backends/firecracker/protocol.js +136 -0
  16. package/dist/backends/firecracker/protocol.js.map +1 -1
  17. package/dist/backends/firecracker/transport.d.ts +539 -6
  18. package/dist/backends/firecracker/transport.d.ts.map +1 -1
  19. package/dist/backends/firecracker/transport.js +1171 -24
  20. package/dist/backends/firecracker/transport.js.map +1 -1
  21. package/dist/backends/kubernetes/egress-policy.d.ts +1181 -13
  22. package/dist/backends/kubernetes/egress-policy.d.ts.map +1 -1
  23. package/dist/backends/kubernetes/egress-policy.js +2350 -31
  24. package/dist/backends/kubernetes/egress-policy.js.map +1 -1
  25. package/dist/backends/kubernetes/identity.d.ts +193 -0
  26. package/dist/backends/kubernetes/identity.d.ts.map +1 -0
  27. package/dist/backends/kubernetes/identity.js +147 -0
  28. package/dist/backends/kubernetes/identity.js.map +1 -0
  29. package/dist/backends/kubernetes/index.d.ts +678 -33
  30. package/dist/backends/kubernetes/index.d.ts.map +1 -1
  31. package/dist/backends/kubernetes/index.js +1180 -95
  32. package/dist/backends/kubernetes/index.js.map +1 -1
  33. package/dist/backends/kubernetes/ingress-policy.d.ts +375 -0
  34. package/dist/backends/kubernetes/ingress-policy.d.ts.map +1 -0
  35. package/dist/backends/kubernetes/ingress-policy.js +1050 -0
  36. package/dist/backends/kubernetes/ingress-policy.js.map +1 -0
  37. package/dist/backends/kubernetes/k8s-client.d.ts +213 -4
  38. package/dist/backends/kubernetes/k8s-client.d.ts.map +1 -1
  39. package/dist/backends/kubernetes/k8s-client.js +359 -52
  40. package/dist/backends/kubernetes/k8s-client.js.map +1 -1
  41. package/dist/backends/kubernetes/lease.d.ts +40 -14
  42. package/dist/backends/kubernetes/lease.d.ts.map +1 -1
  43. package/dist/backends/kubernetes/lease.js +68 -18
  44. package/dist/backends/kubernetes/lease.js.map +1 -1
  45. package/dist/backends/kubernetes/objects.d.ts +423 -3
  46. package/dist/backends/kubernetes/objects.d.ts.map +1 -1
  47. package/dist/backends/kubernetes/objects.js +364 -2
  48. package/dist/backends/kubernetes/objects.js.map +1 -1
  49. package/dist/backends/kubernetes/per-sandbox-policy.d.ts +219 -0
  50. package/dist/backends/kubernetes/per-sandbox-policy.d.ts.map +1 -0
  51. package/dist/backends/kubernetes/per-sandbox-policy.js +375 -0
  52. package/dist/backends/kubernetes/per-sandbox-policy.js.map +1 -0
  53. package/dist/backends/kubernetes/rbac.d.ts +153 -0
  54. package/dist/backends/kubernetes/rbac.d.ts.map +1 -0
  55. package/dist/backends/kubernetes/rbac.js +177 -0
  56. package/dist/backends/kubernetes/rbac.js.map +1 -0
  57. package/dist/backends/kubernetes/sandbox.d.ts +81 -14
  58. package/dist/backends/kubernetes/sandbox.d.ts.map +1 -1
  59. package/dist/backends/kubernetes/sandbox.js +149 -15
  60. package/dist/backends/kubernetes/sandbox.js.map +1 -1
  61. package/dist/backends/kubernetes/transport.d.ts +935 -9
  62. package/dist/backends/kubernetes/transport.d.ts.map +1 -1
  63. package/dist/backends/kubernetes/transport.js +1958 -62
  64. package/dist/backends/kubernetes/transport.js.map +1 -1
  65. package/dist/backends/kubernetes/workspace.d.ts +1149 -18
  66. package/dist/backends/kubernetes/workspace.d.ts.map +1 -1
  67. package/dist/backends/kubernetes/workspace.js +2825 -186
  68. package/dist/backends/kubernetes/workspace.js.map +1 -1
  69. package/dist/backends/remote-execution-controller.d.ts +14 -0
  70. package/dist/backends/remote-execution-controller.d.ts.map +1 -1
  71. package/dist/backends/remote-execution-controller.js.map +1 -1
  72. package/dist/index.d.ts +294 -18
  73. package/dist/index.d.ts.map +1 -1
  74. package/dist/index.js +280 -10
  75. package/dist/index.js.map +1 -1
  76. package/dist/testing/sandbox-conformance.d.ts +39 -5
  77. package/dist/testing/sandbox-conformance.d.ts.map +1 -1
  78. package/dist/testing/sandbox-conformance.js +436 -5
  79. package/dist/testing/sandbox-conformance.js.map +1 -1
  80. package/package.json +3 -3
  81. package/src/backends/aci-standby-pool/index.ts +16 -1
  82. package/src/backends/docker/index.ts +617 -100
  83. package/src/backends/firecracker/index.ts +14 -2
  84. package/src/backends/firecracker/protocol.ts +514 -6
  85. package/src/backends/firecracker/transport.ts +1492 -40
  86. package/src/backends/kubernetes/egress-policy.ts +3334 -55
  87. package/src/backends/kubernetes/identity.ts +261 -0
  88. package/src/backends/kubernetes/index.ts +1785 -127
  89. package/src/backends/kubernetes/ingress-policy.ts +1344 -0
  90. package/src/backends/kubernetes/k8s-client.ts +444 -54
  91. package/src/backends/kubernetes/lease.ts +75 -19
  92. package/src/backends/kubernetes/objects.ts +626 -6
  93. package/src/backends/kubernetes/per-sandbox-policy.ts +497 -0
  94. package/src/backends/kubernetes/rbac.ts +192 -0
  95. package/src/backends/kubernetes/sandbox.ts +218 -20
  96. package/src/backends/kubernetes/transport.ts +2733 -124
  97. package/src/backends/kubernetes/workspace.ts +4476 -222
  98. package/src/backends/remote-execution-controller.ts +14 -0
  99. package/src/index.ts +668 -19
  100. package/src/testing/sandbox-conformance.ts +540 -5
@@ -1 +1 @@
1
- {"version":3,"file":"egress-policy.js","sourceRoot":"","sources":["../../../src/backends/kubernetes/egress-policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"egress-policy.js","sourceRoot":"","sources":["../../../src/backends/kubernetes/egress-policy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,193 @@
1
+ /**
2
+ * What a Kubernetes workspace handle is bound to, and what it says when the
3
+ * thing behind the name changes underneath it.
4
+ *
5
+ * Its own module for one structural reason: `workspace.ts` owns the handle
6
+ * and `transport.ts` owns the rebind that follows a replaced pod, the
7
+ * workspace imports the transport, and the refusal the transport has to
8
+ * carry back out belongs to neither of them alone. Putting these here is
9
+ * what lets the rebind routine rethrow a workspace-level verdict without
10
+ * `transport.ts` importing the file that imports it.
11
+ *
12
+ * Nothing in here reaches `@namzu/sdk`'s `Sandbox`. A handle's identity is a
13
+ * Kubernetes fact — a Sandbox uid, a PVC uid, a pod uid — and a tier with no
14
+ * such objects has nothing to answer.
15
+ */
16
+ import { RemoteCancellationUnknownError } from '../remote-execution-controller.js';
17
+ /**
18
+ * The four objects a workspace handle is holding at once.
19
+ *
20
+ * Read as a set rather than one at a time, because the QUESTION a host has is
21
+ * never about one of them: "is the work I did still there" is answered by the
22
+ * disk (`sandboxUid` and `volumeClaimUids`), and "are the processes I started
23
+ * still there" by the guest (`podUid` and `guestBootId`). The two can move
24
+ * independently and each moving means something different.
25
+ *
26
+ * - `sandboxUid` — the Sandbox object itself. A workspace deleted and
27
+ * recreated under the same id gets a new one, and an empty disk with it.
28
+ * Undefined only if the API server answered the handle's reads without a
29
+ * `metadata.uid`, which no real one does.
30
+ * - `volumeClaimUids` — one entry per `volumeClaimTemplates` entry NAME,
31
+ * holding that PVC's uid. Empty when the Role does not grant `get` on
32
+ * `persistentvolumeclaims`: the disk identity is reported when it can be
33
+ * read and the workspace works either way, rather than every create
34
+ * failing on a verb an existing deployment's Role does not have.
35
+ * - `podUid` — the live pod, and the agent's bind token. `undefined` exactly
36
+ * when the handle is bound to no pod: a suspended or destroyed workspace,
37
+ * and the window a `suspend()` opens between giving its pod back and a
38
+ * `resume()` binding the next one. It is NOT blanked for the length of a
39
+ * transition — a resume that has bound its pod and is probing it names
40
+ * that pod, because that is the pod every answer in that window is about.
41
+ * - `guestBootId` — the agent PROCESS inside that pod. `undefined` wherever
42
+ * `podUid` is, against a guest too old to report one (which is why nothing
43
+ * may require it), and until the pod it names has answered once. A changed
44
+ * value with an unchanged `podUid` is a container the kubelet restarted in
45
+ * place: same pod, same token, and every process the caller started gone.
46
+ */
47
+ export interface KubernetesWorkspaceIdentity {
48
+ readonly sandboxUid: string | undefined;
49
+ readonly volumeClaimUids: Readonly<Record<string, string>>;
50
+ readonly podUid: string | undefined;
51
+ readonly guestBootId: string | undefined;
52
+ }
53
+ /**
54
+ * Why the guest a handle is talking to is not the guest it was talking to.
55
+ *
56
+ * - `pod-replaced` — a different pod. The controller replaced it (a resume
57
+ * the handle did not make, an eviction, a node drain), and the handle has
58
+ * rebound to it with a new bind token.
59
+ * - `container-restarted` — the same pod, a different agent process. The
60
+ * kubelet restarted the container in place, so nothing about the address
61
+ * or the token changed and only the boot id says the guest did.
62
+ */
63
+ export type KubernetesGuestRestartReason = 'pod-replaced' | 'container-restarted';
64
+ /**
65
+ * One guest restart, delivered to every
66
+ * {@link KubernetesWorkspace.onGuestRestart} listener.
67
+ *
68
+ * `previous` and `current` are whole identities rather than the one field
69
+ * that moved: a listener deciding what of its own state to throw away needs
70
+ * to know what did NOT move as much as what did.
71
+ *
72
+ * Both halves name a pod, ALWAYS, and that is a promise about the payload
73
+ * rather than about the handle: they are built from the uids the routine
74
+ * announcing the move is holding, never read back off a handle that may be
75
+ * in the middle of a transition. The event a host is most likely to act on
76
+ * is the one raised while a `resume()` is still in flight — somebody else's
77
+ * replacement, found by the privilege probe — and an identity assembled from
78
+ * the handle's state would announce a pod replacement there while naming
79
+ * neither pod.
80
+ *
81
+ * On `pod-replaced`, `current.guestBootId` is `undefined` — the replacement
82
+ * has not answered yet, and naming a process nobody has heard from would be a
83
+ * guess. `current.podUid` is the field that moved, and the process that
84
+ * answers from that pod is in `workspace.identity` once the call that
85
+ * rebound has returned. On `container-restarted` the pod did not move and
86
+ * both boot ids are present.
87
+ */
88
+ export interface KubernetesGuestRestart {
89
+ readonly reason: KubernetesGuestRestartReason;
90
+ readonly previous: KubernetesWorkspaceIdentity;
91
+ readonly current: KubernetesWorkspaceIdentity;
92
+ }
93
+ /**
94
+ * Thrown instead of rebinding when the object behind the workspace's name is
95
+ * not the object this handle was opened on.
96
+ *
97
+ * The distinction this class exists for is the whole reason a rebind is
98
+ * allowed at all. Following a REPLACED POD is safe: the Sandbox is the same
99
+ * object, so the disk behind it is the same disk and the work the caller did
100
+ * is still there. Following a replaced SANDBOX is not: the name is
101
+ * deterministic, so a workspace deleted and recreated stands under it with an
102
+ * empty disk, and a handle that silently carried on would write a caller's
103
+ * next file into a workspace its records say holds a month of work.
104
+ *
105
+ * So this is terminal for the handle: nothing retries it, nothing rebinds
106
+ * after it, and the way forward is to open a new handle and decide what the
107
+ * new disk is worth.
108
+ */
109
+ export declare class KubernetesWorkspaceReplacedError extends Error {
110
+ readonly workspaceId: string;
111
+ readonly sandboxName: string;
112
+ /** The Sandbox uid this handle was opened on. */
113
+ readonly expectedSandboxUid: string | undefined;
114
+ /**
115
+ * The uid standing under that name now — `undefined` when there is no
116
+ * Sandbox there at all any more.
117
+ */
118
+ readonly actualSandboxUid: string | undefined;
119
+ readonly name = "KubernetesWorkspaceReplacedError";
120
+ constructor(workspaceId: string, sandboxName: string,
121
+ /** The Sandbox uid this handle was opened on. */
122
+ expectedSandboxUid: string | undefined,
123
+ /**
124
+ * The uid standing under that name now — `undefined` when there is no
125
+ * Sandbox there at all any more.
126
+ */
127
+ actualSandboxUid: string | undefined, options?: ErrorOptions);
128
+ }
129
+ /**
130
+ * What a bounded look at the guest found after a cancellation could not be
131
+ * confirmed — the identity half of the diagnosis, beside the `healthz` half.
132
+ *
133
+ * - `same-guest` — the pod this handle is bound to is still the live pod and
134
+ * the agent process is the one it has been talking to. A command of
135
+ * unknown state may genuinely still be running in it.
136
+ * - `pod-replaced` — a live pod stands under the name with a DIFFERENT uid.
137
+ * The pod that ran the command is gone, and everything in its pid
138
+ * namespace went with it.
139
+ * - `pod-gone` — no live pod under the name at all.
140
+ * - `container-restarted` — the same pod, a different agent process: the
141
+ * kubelet restarted the container, so the command's process tree is gone
142
+ * even though the address and the token still work.
143
+ * - `unknown` — the look itself could not be completed (the API read failed,
144
+ * or its own short deadline expired). Nothing may be concluded from it.
145
+ */
146
+ export type KubernetesGuestEvidence = 'same-guest' | 'pod-replaced' | 'pod-gone' | 'container-restarted' | 'unknown';
147
+ /**
148
+ * A cancellation that could not be confirmed, raised against a guest that is
149
+ * demonstrably no longer there.
150
+ *
151
+ * It extends {@link RemoteCancellationUnknownError} rather than replacing it,
152
+ * and that is the point: every host already catching the base class goes on
153
+ * catching this, the `retirement` observation still rides on it, and the rule
154
+ * it states is unchanged — **the command's outcome is unknown and it must not
155
+ * be retried automatically**. What this adds is the EVIDENCE, which the base
156
+ * class cannot carry: which guest the command was started on, which guest is
157
+ * there now, and how they differ.
158
+ *
159
+ * It changes nothing about the cluster. No patch is sent on this path — a
160
+ * `Suspended` patch cannot stop a command whose pod is already gone, and
161
+ * would only take the replacement away from every other holder — so a
162
+ * `Running` workspace stays `Running` and `suspended` stays `false`, and the
163
+ * next call rebinds to the live pod on its own.
164
+ *
165
+ * `previous` is the guest the COMMAND was running in — the pod its
166
+ * reservation was accepted by and the agent process inside it — and not
167
+ * whatever the handle is bound to by the time the diagnosis runs. The two
168
+ * differ exactly when it matters: the failing call's own `cancel-execution`
169
+ * refusal already told the handle about a restarted container, and another
170
+ * call may already have rebound the handle to the replacement pod. `current`
171
+ * is what stands under the workspace name now, and it names an agent process
172
+ * only when that process belongs to the pod it names — a pod nobody has heard
173
+ * from reports `guestBootId: undefined` rather than borrowing another pod's.
174
+ *
175
+ * It is never how a FOREIGN SUSPEND is reported, even though a suspended
176
+ * workspace has no pod either and produces the same evidence. That case
177
+ * leaves as `KubernetesWorkspaceSuspendedError` instead: the handle adopts
178
+ * the suspension, so `suspended` reads `true` and `resume()` brings a pod
179
+ * back — a recovery this error has no way to offer.
180
+ */
181
+ export declare class KubernetesWorkspaceGuestGoneError extends RemoteCancellationUnknownError {
182
+ readonly workspaceId: string;
183
+ readonly sandboxName: string;
184
+ /** See {@link KubernetesGuestEvidence} — never `same-guest` here. */
185
+ readonly evidence: KubernetesGuestEvidence;
186
+ readonly previous: KubernetesWorkspaceIdentity;
187
+ readonly current: KubernetesWorkspaceIdentity;
188
+ readonly name = "KubernetesWorkspaceGuestGoneError";
189
+ constructor(workspaceId: string, sandboxName: string,
190
+ /** See {@link KubernetesGuestEvidence} — never `same-guest` here. */
191
+ evidence: KubernetesGuestEvidence, previous: KubernetesWorkspaceIdentity, current: KubernetesWorkspaceIdentity, options?: ErrorOptions);
192
+ }
193
+ //# sourceMappingURL=identity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../../src/backends/kubernetes/identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,mCAAmC,CAAA;AAElF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,WAAW,2BAA2B;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IACvC,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAC1D,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;CACxC;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,4BAA4B,GAAG,cAAc,GAAG,qBAAqB,CAAA;AAEjF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,MAAM,EAAE,4BAA4B,CAAA;IAC7C,QAAQ,CAAC,QAAQ,EAAE,2BAA2B,CAAA;IAC9C,QAAQ,CAAC,OAAO,EAAE,2BAA2B,CAAA;CAC7C;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,gCAAiC,SAAQ,KAAK;IAIzD,QAAQ,CAAC,WAAW,EAAE,MAAM;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM;IAC5B,iDAAiD;IACjD,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,SAAS;IAC/C;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS;IAX9C,SAAkB,IAAI,sCAAqC;gBAGjD,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM;IAC5B,iDAAiD;IACxC,kBAAkB,EAAE,MAAM,GAAG,SAAS;IAC/C;;;OAGG;IACM,gBAAgB,EAAE,MAAM,GAAG,SAAS,EAC7C,OAAO,CAAC,EAAE,YAAY;CAavB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,uBAAuB,GAChC,YAAY,GACZ,cAAc,GACd,UAAU,GACV,qBAAqB,GACrB,SAAS,CAAA;AAEZ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,qBAAa,iCAAkC,SAAQ,8BAA8B;IAInF,QAAQ,CAAC,WAAW,EAAE,MAAM;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM;IAC5B,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,EAAE,uBAAuB;IAC1C,QAAQ,CAAC,QAAQ,EAAE,2BAA2B;IAC9C,QAAQ,CAAC,OAAO,EAAE,2BAA2B;IAR9C,SAAkB,IAAI,uCAAsC;gBAGlD,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM;IAC5B,qEAAqE;IAC5D,QAAQ,EAAE,uBAAuB,EACjC,QAAQ,EAAE,2BAA2B,EACrC,OAAO,EAAE,2BAA2B,EAC7C,OAAO,CAAC,EAAE,YAAY;CASvB"}
@@ -0,0 +1,147 @@
1
+ /**
2
+ * What a Kubernetes workspace handle is bound to, and what it says when the
3
+ * thing behind the name changes underneath it.
4
+ *
5
+ * Its own module for one structural reason: `workspace.ts` owns the handle
6
+ * and `transport.ts` owns the rebind that follows a replaced pod, the
7
+ * workspace imports the transport, and the refusal the transport has to
8
+ * carry back out belongs to neither of them alone. Putting these here is
9
+ * what lets the rebind routine rethrow a workspace-level verdict without
10
+ * `transport.ts` importing the file that imports it.
11
+ *
12
+ * Nothing in here reaches `@namzu/sdk`'s `Sandbox`. A handle's identity is a
13
+ * Kubernetes fact — a Sandbox uid, a PVC uid, a pod uid — and a tier with no
14
+ * such objects has nothing to answer.
15
+ */
16
+ import { RemoteCancellationUnknownError } from '../remote-execution-controller.js';
17
+ /**
18
+ * Thrown instead of rebinding when the object behind the workspace's name is
19
+ * not the object this handle was opened on.
20
+ *
21
+ * The distinction this class exists for is the whole reason a rebind is
22
+ * allowed at all. Following a REPLACED POD is safe: the Sandbox is the same
23
+ * object, so the disk behind it is the same disk and the work the caller did
24
+ * is still there. Following a replaced SANDBOX is not: the name is
25
+ * deterministic, so a workspace deleted and recreated stands under it with an
26
+ * empty disk, and a handle that silently carried on would write a caller's
27
+ * next file into a workspace its records say holds a month of work.
28
+ *
29
+ * So this is terminal for the handle: nothing retries it, nothing rebinds
30
+ * after it, and the way forward is to open a new handle and decide what the
31
+ * new disk is worth.
32
+ */
33
+ export class KubernetesWorkspaceReplacedError extends Error {
34
+ workspaceId;
35
+ sandboxName;
36
+ expectedSandboxUid;
37
+ actualSandboxUid;
38
+ name = 'KubernetesWorkspaceReplacedError';
39
+ constructor(workspaceId, sandboxName,
40
+ /** The Sandbox uid this handle was opened on. */
41
+ expectedSandboxUid,
42
+ /**
43
+ * The uid standing under that name now — `undefined` when there is no
44
+ * Sandbox there at all any more.
45
+ */
46
+ actualSandboxUid, options) {
47
+ super(actualSandboxUid === undefined
48
+ ? `kubernetes: workspace ${workspaceId} (Sandbox ${sandboxName}, uid ${String(expectedSandboxUid)}) no longer exists — the guest refused this handle's bind token and a re-read found no Sandbox of that name. Somebody deleted it, and a DELETE cascades to the disk. This handle is finished: it will not rebind, because there is nothing to rebind TO, and the failed call's outcome in the pod that is gone is unknown. Open a new workspace with the same id to get a fresh object with an empty disk.`
49
+ : `kubernetes: workspace ${workspaceId} (Sandbox ${sandboxName}) is a DIFFERENT object than the one this handle was opened on — it holds uid ${actualSandboxUid} where this handle bound uid ${String(expectedSandboxUid)}. The name is deterministic, so somebody deleted the workspace and created it again under it; the disk behind the name is a new, empty disk and none of this handle's work is on it. This handle deliberately did NOT rebind to it — a call that silently succeeded against it would write into a workspace whose records say it holds the old one's work. Open a new handle and decide what the new disk is worth.`, options);
50
+ this.workspaceId = workspaceId;
51
+ this.sandboxName = sandboxName;
52
+ this.expectedSandboxUid = expectedSandboxUid;
53
+ this.actualSandboxUid = actualSandboxUid;
54
+ }
55
+ }
56
+ /**
57
+ * A cancellation that could not be confirmed, raised against a guest that is
58
+ * demonstrably no longer there.
59
+ *
60
+ * It extends {@link RemoteCancellationUnknownError} rather than replacing it,
61
+ * and that is the point: every host already catching the base class goes on
62
+ * catching this, the `retirement` observation still rides on it, and the rule
63
+ * it states is unchanged — **the command's outcome is unknown and it must not
64
+ * be retried automatically**. What this adds is the EVIDENCE, which the base
65
+ * class cannot carry: which guest the command was started on, which guest is
66
+ * there now, and how they differ.
67
+ *
68
+ * It changes nothing about the cluster. No patch is sent on this path — a
69
+ * `Suspended` patch cannot stop a command whose pod is already gone, and
70
+ * would only take the replacement away from every other holder — so a
71
+ * `Running` workspace stays `Running` and `suspended` stays `false`, and the
72
+ * next call rebinds to the live pod on its own.
73
+ *
74
+ * `previous` is the guest the COMMAND was running in — the pod its
75
+ * reservation was accepted by and the agent process inside it — and not
76
+ * whatever the handle is bound to by the time the diagnosis runs. The two
77
+ * differ exactly when it matters: the failing call's own `cancel-execution`
78
+ * refusal already told the handle about a restarted container, and another
79
+ * call may already have rebound the handle to the replacement pod. `current`
80
+ * is what stands under the workspace name now, and it names an agent process
81
+ * only when that process belongs to the pod it names — a pod nobody has heard
82
+ * from reports `guestBootId: undefined` rather than borrowing another pod's.
83
+ *
84
+ * It is never how a FOREIGN SUSPEND is reported, even though a suspended
85
+ * workspace has no pod either and produces the same evidence. That case
86
+ * leaves as `KubernetesWorkspaceSuspendedError` instead: the handle adopts
87
+ * the suspension, so `suspended` reads `true` and `resume()` brings a pod
88
+ * back — a recovery this error has no way to offer.
89
+ */
90
+ export class KubernetesWorkspaceGuestGoneError extends RemoteCancellationUnknownError {
91
+ workspaceId;
92
+ sandboxName;
93
+ evidence;
94
+ previous;
95
+ current;
96
+ name = 'KubernetesWorkspaceGuestGoneError';
97
+ constructor(workspaceId, sandboxName,
98
+ /** See {@link KubernetesGuestEvidence} — never `same-guest` here. */
99
+ evidence, previous, current, options) {
100
+ super(`kubernetes: a command on workspace ${workspaceId} (Sandbox ${sandboxName}) could not have its cancellation confirmed, and the guest it was running in is gone: ${describeEvidence(evidence)} (${describeMove(previous, current)}). The command's outcome is UNKNOWN — nothing on this side ever saw it end — so it must not be retried automatically; whatever it had already written to the disk is on the disk. Nothing was patched from here: no Suspended patch was sent, the workspace still holds its disk, and the next call binds to whatever pod stands under the name. Every process the command's guest was running, this command included, is gone with it.`, options);
101
+ this.workspaceId = workspaceId;
102
+ this.sandboxName = sandboxName;
103
+ this.evidence = evidence;
104
+ this.previous = previous;
105
+ this.current = current;
106
+ }
107
+ }
108
+ /**
109
+ * What moved between the guest the command RESERVED on and the guest standing
110
+ * there now, said without ever printing a value neither identity holds.
111
+ *
112
+ * Both halves of each identity come from the same pod by construction, so
113
+ * this only has to render them: an absent `podUid` is no pod at all, and an
114
+ * absent `guestBootId` on `current` is a pod nothing has answered from yet —
115
+ * never a process this handle happens to know about in some other pod.
116
+ *
117
+ * "No pod" is spelled out on BOTH sides rather than stringified. Every
118
+ * caller here guards on a bound pod before it builds a diagnosis, so an
119
+ * absent `previous.podUid` should not arrive — and a sentence reading "pod
120
+ * undefined, unchanged" is the kind of thing an operator quotes back, so it
121
+ * is worded rather than left to `String`.
122
+ */
123
+ function describeMove(previous, current) {
124
+ const was = previous.podUid ?? 'no pod this handle could name';
125
+ const pod = previous.podUid === current.podUid
126
+ ? `pod ${was}, unchanged`
127
+ : `pod ${was} → ${current.podUid ?? 'no pod under the name'}`;
128
+ if (previous.guestBootId === undefined && current.guestBootId === undefined) {
129
+ return `${pod}; this guest reports no boot id, so its agent process cannot be named`;
130
+ }
131
+ if (previous.guestBootId === current.guestBootId)
132
+ return `${pod}, agent ${String(current.guestBootId)}, unchanged`;
133
+ return `${pod}, agent ${previous.guestBootId ?? 'unknown'} → ${current.guestBootId ?? 'nothing has answered from there yet'}`;
134
+ }
135
+ function describeEvidence(evidence) {
136
+ if (evidence === 'pod-replaced')
137
+ return 'a different pod stands under the workspace name';
138
+ if (evidence === 'pod-gone')
139
+ return 'no live pod stands under the workspace name';
140
+ if (evidence === 'container-restarted') {
141
+ return 'the same pod is running a different agent process, so its container was restarted in place';
142
+ }
143
+ if (evidence === 'unknown')
144
+ return 'the guest could not be identified at all';
145
+ return 'the guest is unchanged';
146
+ }
147
+ //# sourceMappingURL=identity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identity.js","sourceRoot":"","sources":["../../../src/backends/kubernetes/identity.ts"],"names":[],"mappings":"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"}