@cat-factory/integrations 0.169.1 → 0.170.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/modules/compose/ComposeEnvironmentProvider.d.ts.map +1 -1
- package/dist/modules/compose/ComposeEnvironmentProvider.js +6 -1
- package/dist/modules/compose/ComposeEnvironmentProvider.js.map +1 -1
- package/dist/modules/environments/EnvironmentProvisioningService.d.ts +7 -1
- package/dist/modules/environments/EnvironmentProvisioningService.d.ts.map +1 -1
- package/dist/modules/environments/EnvironmentProvisioningService.js +45 -88
- package/dist/modules/environments/EnvironmentProvisioningService.js.map +1 -1
- package/dist/modules/environments/HttpEnvironmentProvider.d.ts.map +1 -1
- package/dist/modules/environments/HttpEnvironmentProvider.js +22 -2
- package/dist/modules/environments/HttpEnvironmentProvider.js.map +1 -1
- package/dist/modules/environments/environmentDiagnostics.d.ts.map +1 -1
- package/dist/modules/environments/environmentDiagnostics.js +270 -49
- package/dist/modules/environments/environmentDiagnostics.js.map +1 -1
- package/dist/modules/environments/environmentReachability.d.ts +76 -4
- package/dist/modules/environments/environmentReachability.d.ts.map +1 -1
- package/dist/modules/environments/environmentReachability.js +116 -13
- package/dist/modules/environments/environmentReachability.js.map +1 -1
- package/dist/modules/environments/environmentStatusPoll.d.ts +36 -0
- package/dist/modules/environments/environmentStatusPoll.d.ts.map +1 -0
- package/dist/modules/environments/environmentStatusPoll.js +193 -0
- package/dist/modules/environments/environmentStatusPoll.js.map +1 -0
- package/dist/modules/environments/environments.logic.d.ts +9 -1
- package/dist/modules/environments/environments.logic.d.ts.map +1 -1
- package/dist/modules/environments/environments.logic.js +14 -2
- package/dist/modules/environments/environments.logic.js.map +1 -1
- package/dist/modules/kubernetes/KubernetesEnvironmentProvider.d.ts.map +1 -1
- package/dist/modules/kubernetes/KubernetesEnvironmentProvider.js +4 -1
- package/dist/modules/kubernetes/KubernetesEnvironmentProvider.js.map +1 -1
- package/package.json +4 -4
|
@@ -63,24 +63,127 @@ export async function proveEnvironmentRoute(url, candidates, deps) {
|
|
|
63
63
|
* is stored; a statement replaces it. The same rule as everywhere else in this tree: absent is not
|
|
64
64
|
* empty.
|
|
65
65
|
*
|
|
66
|
-
* The proof survives
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
*
|
|
66
|
+
* The proof survives on what it ESTABLISHED, never on the shape of the list it was handed.
|
|
67
|
+
*
|
|
68
|
+
* Order is not part of any finding. A provider stating addresses from a live DNS answer is stating
|
|
69
|
+
* a value whose order it does not control (`getaddrinfo` applies RFC 6724 destination sorting
|
|
70
|
+
* against the local interface set, and recursive resolvers rotate records between answers), so a
|
|
71
|
+
* sequence comparison drops a good proof on a network change, months later, on someone else's
|
|
72
|
+
* machine. The stated ORDER is still kept for the next probe, because it is the provider's current
|
|
73
|
+
* preference about what to try first; it is just not evidence.
|
|
74
|
+
*
|
|
75
|
+
* So the URL has to be unchanged (every finding was about that name), and then:
|
|
76
|
+
*
|
|
77
|
+
* - a `reached` proof is a finding about ONE target: the address in `via`, or the name itself
|
|
78
|
+
* when `via` is null. It survives while that target is still on offer, which for `via` means
|
|
79
|
+
* still being among the stated candidates and for the name means nothing further, the URL
|
|
80
|
+
* having already been checked. A provider adding a fallback candidate is strictly MORE
|
|
81
|
+
* information and cannot invalidate a proof about an address it did not touch.
|
|
82
|
+
* - every other proof is a finding about the whole list that was TRIED, so it survives only
|
|
83
|
+
* while the candidate SET is unchanged. A new candidate is a target nothing ever dialled, and
|
|
84
|
+
* "nothing reaches this environment" is no longer established once one exists.
|
|
85
|
+
*
|
|
86
|
+
* A dropped proof costs a re-probe, and the status poll takes one (on the terms
|
|
87
|
+
* {@link routeReproveDecision} sets) rather than leaving the row to be re-proved by a deployer
|
|
88
|
+
* settle that will not run again for that frame: a dropped proof and a proof never taken are the
|
|
89
|
+
* same value, so nothing downstream could tell that the feature had stopped working.
|
|
70
90
|
*/
|
|
71
91
|
export function foldStatedAddresses(previous, previousUrl, addresses, url) {
|
|
72
92
|
const stored = previous?.candidates ?? [];
|
|
73
93
|
const candidates = addresses ? [...addresses] : [...stored];
|
|
74
|
-
const
|
|
75
|
-
|
|
76
|
-
|
|
94
|
+
const proof = previousUrl === url ? survivingProof(previous?.proof ?? null, stored, candidates) : null;
|
|
95
|
+
// Carried across a drop, and across a MOVED URL, because it is not a claim about either: it
|
|
96
|
+
// says when the platform last looked, which stays true however little the verdict survives.
|
|
97
|
+
// Without it a dropped proof leaves a row that reads as an environment nothing ever dialled.
|
|
98
|
+
const probedAt = lastLookedAt(previous);
|
|
99
|
+
if (candidates.length === 0 && !proof && probedAt === null)
|
|
100
|
+
return null;
|
|
101
|
+
return { candidates, proof, ...(probedAt === null ? {} : { probedAt }) };
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* When the platform last looked at reaching this environment, or null when nothing ever has.
|
|
105
|
+
*
|
|
106
|
+
* Falls back to the proof's own date for a value written before `probedAt` existed, and counts an
|
|
107
|
+
* `unproved` proof as a look: what it records is the SETTLE path having run and found no prober
|
|
108
|
+
* wired, which is the fact the poll needs (the settle owns the first look and will not run again
|
|
109
|
+
* for a frame that already settled, so a poll that treats `unproved` as "never looked" is a poll
|
|
110
|
+
* that leaves such an environment unproved forever, even once the facade can open a socket).
|
|
111
|
+
*/
|
|
112
|
+
export function lastLookedAt(stored) {
|
|
113
|
+
return stored?.probedAt ?? stored?.proof?.checkedAt ?? null;
|
|
114
|
+
}
|
|
115
|
+
/** A stored proof that still says something about the freshly stated candidates, or null. */
|
|
116
|
+
function survivingProof(proof, stored, candidates) {
|
|
117
|
+
if (!proof)
|
|
77
118
|
return null;
|
|
78
|
-
|
|
119
|
+
if (proof.state === 'reached') {
|
|
120
|
+
return !proof.via || candidates.some((entry) => normalized(entry) === proof.via) ? proof : null;
|
|
121
|
+
}
|
|
122
|
+
return sameAddressSet(stored, candidates) ? proof : null;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* One candidate's address as the PROOF spells it.
|
|
126
|
+
*
|
|
127
|
+
* `planRouteProbes` trims before it dials, so `via` is a trimmed value and a raw comparison
|
|
128
|
+
* against the stored candidate crosses that boundary: a provider stating `' 10.4.19.22'` proved
|
|
129
|
+
* `'10.4.19.22'`, matched neither its own candidate nor itself, and paid a fresh probe on every
|
|
130
|
+
* single poll for a proof it already had. The manifest provider trims on capture, which is why
|
|
131
|
+
* this only ever bit an adapter stating addresses directly.
|
|
132
|
+
*/
|
|
133
|
+
function normalized(entry) {
|
|
134
|
+
return entry.address.trim();
|
|
79
135
|
}
|
|
80
|
-
/** Whether two candidate lists name the same
|
|
81
|
-
function
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
return
|
|
136
|
+
/** Whether two candidate lists name the same SET of addresses (order and labels are cosmetic). */
|
|
137
|
+
function sameAddressSet(a, b) {
|
|
138
|
+
const left = new Set(a.map(normalized));
|
|
139
|
+
const right = new Set(b.map(normalized));
|
|
140
|
+
return left.size === right.size && [...left].every((address) => right.has(address));
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* How long a proof holds the prober off, once one has run.
|
|
144
|
+
*
|
|
145
|
+
* The bound on the poll path's re-prove. A status poll runs on a ten-second cadence inside the
|
|
146
|
+
* deployer's readiness wait, and a proof costs up to `MAX_PROBED_ADDRESSES + 1` sequential dials
|
|
147
|
+
* at `ROUTE_PROBE_TIMEOUT_MS` each: an environment whose provider genuinely re-states a different
|
|
148
|
+
* candidate set every answer (a balancer scaling across zones) would drop and re-take its proof on
|
|
149
|
+
* every poll, turning a poll that took milliseconds into twenty seconds of blocking I/O inside a
|
|
150
|
+
* durable step, over and over. A minute means at most one probe sequence per environment per
|
|
151
|
+
* minute, which is still promptly enough for the case the re-prove exists for: a proof invalidated
|
|
152
|
+
* once, by a provider that then stays put.
|
|
153
|
+
*/
|
|
154
|
+
export const ROUTE_REPROVE_MIN_INTERVAL_MS = 60_000;
|
|
155
|
+
/**
|
|
156
|
+
* Whether this poll should re-take the route proof, leave what the fold produced, or hold off.
|
|
157
|
+
*
|
|
158
|
+
* `held` is its own answer rather than a second `keep`, so the caller can SAY that a probe was due
|
|
159
|
+
* and skipped instead of leaving a poll that looks identical to one with nothing to prove.
|
|
160
|
+
*
|
|
161
|
+
* Four narrowings, each of which was a real cost or a real omission:
|
|
162
|
+
*
|
|
163
|
+
* - **Only a `ready` environment.** One that has gone back to `provisioning` is not worth
|
|
164
|
+
* dialling yet and its own settle path will prove it when it comes up; probing here would
|
|
165
|
+
* record a `not_reached` about an environment mid-rollout.
|
|
166
|
+
* - **Never the FIRST look.** Nothing has looked at a provisioning environment, and looking here
|
|
167
|
+
* would put a probe on every poll of every environment whose deployer has not settled it. The
|
|
168
|
+
* settle path owns that one.
|
|
169
|
+
* - **A surviving proof is left alone, EXCEPT `unproved`.** `unproved` records that nothing was
|
|
170
|
+
* wired to open a socket, so it is a proof never taken and it survives the fold forever on set
|
|
171
|
+
* equality; treating it as a live proof is what would leave every environment settled before a
|
|
172
|
+
* deployment wired its prober permanently unproved, which is exactly the "a dropped proof and
|
|
173
|
+
* a proof never taken are the same value" trap one level up.
|
|
174
|
+
* - **{@link ROUTE_REPROVE_MIN_INTERVAL_MS} since the last look**, read off `probedAt` rather
|
|
175
|
+
* than off the proof, because a hold PERSISTS the drop: anchored on the proof's own date, the
|
|
176
|
+
* first hold would erase the anchor and no later poll would ever re-take anything.
|
|
177
|
+
*/
|
|
178
|
+
export function routeReproveDecision(args) {
|
|
179
|
+
if (!args.ready)
|
|
180
|
+
return 'keep';
|
|
181
|
+
const lookedAt = lastLookedAt(args.stored);
|
|
182
|
+
if (lookedAt === null)
|
|
183
|
+
return 'keep';
|
|
184
|
+
const surviving = args.folded?.proof;
|
|
185
|
+
if (surviving && surviving.state !== 'unproved')
|
|
186
|
+
return 'keep';
|
|
187
|
+
return args.now - lookedAt < ROUTE_REPROVE_MIN_INTERVAL_MS ? 'held' : 'reprove';
|
|
85
188
|
}
|
|
86
189
|
//# sourceMappingURL=environmentReachability.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environmentReachability.js","sourceRoot":"","sources":["../../../src/modules/environments/environmentReachability.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,yEAAyE;AACzE,EAAE;AACF,6FAA6F;AAC7F,iGAAiG;AACjG,kGAAkG;AAClG,qDAAqD;AACrD,EAAE;AACF,uEAAuE;AACvE,+FAA+F;AAC/F,gGAAgG;AAChG,8BAA8B;AAE9B,OAAO,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAA;AASrE,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,GACd,MAAM,qBAAqB,CAAA;AAE5B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,GAA8B,EAC9B,UAAyC,EACzC,IAA0C;IAE1C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;IAC5B,IAAI,CAAC,IAAI,CAAC,KAAK;QAAE,OAAO,aAAa,CAAC,GAAG,CAAC,CAAA;IAC1C,MAAM,MAAM,GAAG,4BAA4B,CAAC,GAAG,CAAC,CAAA;IAChD,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,CAAA;IACvE,MAAM,QAAQ,GAA8B,EAAE,CAAA;IAC9C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAA;YAC3C,SAAQ;QACV,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAChD,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;QAClD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;YAAE,OAAO,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IACzF,CAAC;IACD,OAAO,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;AAC9C,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"environmentReachability.js","sourceRoot":"","sources":["../../../src/modules/environments/environmentReachability.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { Clock, EnvironmentAccessHandle, EnvironmentHandle, EnvironmentRecord, EnvironmentRegistryRepository, Logger, ProvisionedEnvironment, ProvisionFields, RouteProbe } from '@cat-factory/kernel';
|
|
2
|
+
import type { ProvisioningLogRecorder } from '../provisioning-logs/ProvisioningLogService.js';
|
|
3
|
+
import type { ResolvedEnvironmentProvider } from './environmentRemediation.js';
|
|
4
|
+
/**
|
|
5
|
+
* Bound collaborators, supplied by the owning service (this holds no state of its own). The
|
|
6
|
+
* lifecycle seams stay THERE: sealing, the URL policy and the expiry rule are the same ones the
|
|
7
|
+
* provision path applies, and re-deriving any of them here is how a poll and a create come to
|
|
8
|
+
* disagree about the row they both write.
|
|
9
|
+
*/
|
|
10
|
+
export interface EnvironmentStatusPollerDeps {
|
|
11
|
+
registry: EnvironmentRegistryRepository;
|
|
12
|
+
/** The provider that stood this environment up, resolved from the row's own type/engine. */
|
|
13
|
+
resolveProvider: (record: EnvironmentRecord) => Promise<ResolvedEnvironmentProvider>;
|
|
14
|
+
decryptFields: (record: EnvironmentRecord) => Promise<ProvisionFields>;
|
|
15
|
+
/** Seal a freshly stated field bag, through the org cipher the provision path uses. */
|
|
16
|
+
sealFields: (workspaceId: string, fields: ProvisionFields) => Promise<string>;
|
|
17
|
+
sealAccess: (workspaceId: string, access: EnvironmentAccessHandle | null) => Promise<string | null>;
|
|
18
|
+
/** The SSRF/misresolution guard on a provider-supplied URL. Throws; never a boolean. */
|
|
19
|
+
assertPublishableUrl: (url: string | null) => void;
|
|
20
|
+
resolveExpiry: (provisioned: ProvisionedEnvironment, defaultTtlMs: number | undefined, base: number) => number | null;
|
|
21
|
+
clock: Clock;
|
|
22
|
+
/**
|
|
23
|
+
* Opens one bounded TCP connection, so a proof the fold had to drop can be RE-TAKEN here.
|
|
24
|
+
* Absent ⇒ this deployment probes nothing at all and the poll behaves exactly as it did.
|
|
25
|
+
*/
|
|
26
|
+
probe?: RouteProbe;
|
|
27
|
+
/** Best-effort provisioning-event log; absent ⇒ polling is unchanged. */
|
|
28
|
+
provisioningLog?: ProvisioningLogRecorder;
|
|
29
|
+
logger?: Logger;
|
|
30
|
+
}
|
|
31
|
+
export declare function createEnvironmentStatusPoller(deps: EnvironmentStatusPollerDeps): {
|
|
32
|
+
refresh: (workspaceId: string, id: string) => Promise<EnvironmentHandle>;
|
|
33
|
+
};
|
|
34
|
+
/** The poller's public shape, so the owning service can type its member. */
|
|
35
|
+
export type EnvironmentStatusPoller = ReturnType<typeof createEnvironmentStatusPoller>;
|
|
36
|
+
//# sourceMappingURL=environmentStatusPoll.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environmentStatusPoll.d.ts","sourceRoot":"","sources":["../../../src/modules/environments/environmentStatusPoll.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EACL,uBAAuB,EACvB,iBAAiB,EAEjB,iBAAiB,EAEjB,6BAA6B,EAC7B,MAAM,EACN,sBAAsB,EACtB,eAAe,EACf,UAAU,EACX,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAA;AAO7F,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAA;AAyB9E;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,6BAA6B,CAAA;IACvC,4FAA4F;IAC5F,eAAe,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,OAAO,CAAC,2BAA2B,CAAC,CAAA;IACpF,aAAa,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAA;IACtE,uFAAuF;IACvF,UAAU,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7E,UAAU,EAAE,CACV,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,uBAAuB,GAAG,IAAI,KACnC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAC3B,wFAAwF;IACxF,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IAClD,aAAa,EAAE,CACb,WAAW,EAAE,sBAAsB,EACnC,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,IAAI,EAAE,MAAM,KACT,MAAM,GAAG,IAAI,CAAA;IAClB,KAAK,EAAE,KAAK,CAAA;IACZ;;;OAGG;IACH,KAAK,CAAC,EAAE,UAAU,CAAA;IAClB,yEAAyE;IACzE,eAAe,CAAC,EAAE,uBAAuB,CAAA;IACzC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,2BAA2B;2BAIzC,MAAM,MAAM,MAAM,KAAG,OAAO,CAAC,iBAAiB,CAAC;EAoNpF;AAED,4EAA4E;AAC5E,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAA"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { assertFound, getErrorMessage, noopLogger, runBestEffort } from '@cat-factory/kernel';
|
|
2
|
+
import { foldStatedAddresses, lastLookedAt, proveEnvironmentRoute, routeReproveDecision, } from './environmentReachability.js';
|
|
3
|
+
import { boundStatusNote, parseReachability, recordToHandle, serializeReachability, } from './environments.logic.js';
|
|
4
|
+
export function createEnvironmentStatusPoller(deps) {
|
|
5
|
+
const log = (deps.logger ?? noopLogger).child({ scope: 'environmentStatusPoll' });
|
|
6
|
+
/** Re-poll the provider for an environment's status and persist what the answer says. */
|
|
7
|
+
async function refresh(workspaceId, id) {
|
|
8
|
+
const record = assertFound(await deps.registry.get(workspaceId, id), 'Environment', id);
|
|
9
|
+
// Resolve the provider from the record's stored provision type/engine (the handler that stood
|
|
10
|
+
// it up), not the workspace-primary, matching the per-type resolution provisioning uses.
|
|
11
|
+
const resolved = await deps.resolveProvider(record);
|
|
12
|
+
// Opened BEFORE the guarded call, and deliberately outside it. Decrypting is the platform's
|
|
13
|
+
// own work against its own cipher (a mothership node opens a row the mothership sealed), so a
|
|
14
|
+
// failure here is a key-routing fault; inside the try it would be filed in the provisioning
|
|
15
|
+
// log as an `environment.status` PROVIDER failure and land on the run's "Infrastructure
|
|
16
|
+
// attempts" as the provider's fault, which is the misattribution this whole change is about.
|
|
17
|
+
const provisionFields = await deps.decryptFields(record);
|
|
18
|
+
const provisioned = await readStatus(workspaceId, record, resolved, provisionFields);
|
|
19
|
+
deps.assertPublishableUrl(provisioned.url);
|
|
20
|
+
const patch = await buildPatch(record, resolved, provisioned);
|
|
21
|
+
await deps.registry.update(workspaceId, id, patch);
|
|
22
|
+
await logFailedTransition(workspaceId, record, resolved, provisioned);
|
|
23
|
+
return recordToHandle({ ...record, ...patch });
|
|
24
|
+
}
|
|
25
|
+
/** The provider's answer, with a THROW logged as the failed attempt it is and re-raised. */
|
|
26
|
+
async function readStatus(workspaceId, record, resolved, provisionFields) {
|
|
27
|
+
try {
|
|
28
|
+
return await resolved.provider.status({
|
|
29
|
+
manifest: resolved.manifest,
|
|
30
|
+
externalId: record.externalId,
|
|
31
|
+
provisionFields,
|
|
32
|
+
resolveSecret: resolved.resolveSecret,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
await deps.provisioningLog?.record({
|
|
37
|
+
workspaceId,
|
|
38
|
+
subsystem: 'environment',
|
|
39
|
+
operation: 'status',
|
|
40
|
+
targetId: record.id,
|
|
41
|
+
providerId: resolved.manifest.providerId,
|
|
42
|
+
blockId: record.blockId,
|
|
43
|
+
executionId: record.executionId,
|
|
44
|
+
outcome: 'failure',
|
|
45
|
+
error: getErrorMessage(error),
|
|
46
|
+
detail: null,
|
|
47
|
+
});
|
|
48
|
+
throw error;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
async function buildPatch(record, resolved, provisioned) {
|
|
52
|
+
const { workspaceId } = record;
|
|
53
|
+
return {
|
|
54
|
+
status: provisioned.status,
|
|
55
|
+
url: provisioned.url,
|
|
56
|
+
externalId: provisioned.externalId ?? record.externalId,
|
|
57
|
+
expiresAt: deps.resolveExpiry(provisioned, resolved.manifest.defaultTtlMs, record.createdAt),
|
|
58
|
+
accessCipher: await deps.sealAccess(workspaceId, provisioned.access),
|
|
59
|
+
// Everything THIS answer captured, re-sealed. The status poll is where an asynchronous
|
|
60
|
+
// provider's facts arrive (the finished deploy job, the balancer FQDNs, its own readiness
|
|
61
|
+
// detail), and the whole bag is what the provider stated, so it REPLACES rather than merges:
|
|
62
|
+
// a key it has stopped stating has stopped being true, and a bag nothing can clear is the
|
|
63
|
+
// trap the clear-unless-restated rule on `lastError` and `statusNote` below exists to avoid.
|
|
64
|
+
// `null` is an answer that made no statement about the bag (a narrower status shape than the
|
|
65
|
+
// create's, the no-`status`-template fallback) and keeps what is stored, which is what stops
|
|
66
|
+
// a poll erasing the teardown state the create response supplied. See
|
|
67
|
+
// {@link ProvisionedEnvironment.fields}.
|
|
68
|
+
...(provisioned.fields
|
|
69
|
+
? { provisionFieldsCipher: await deps.sealFields(workspaceId, provisioned.fields) }
|
|
70
|
+
: {}),
|
|
71
|
+
reachability: serializeReachability(await foldRoute(record, provisioned)),
|
|
72
|
+
// Persist the provider's failure reason on a poll-time transition to `failed` (cleared once
|
|
73
|
+
// not failed), mirroring the provisionSync path. WITHOUT this, a reconcile that flips an env
|
|
74
|
+
// to `failed` (a provider reporting the verdict on `provisioned.error` rather than throwing)
|
|
75
|
+
// left `lastError` stale/empty, so the env-detail surface and the env self-test showed a
|
|
76
|
+
// generic "provisioning failed" instead of the real cause (e.g. a "404 No commit found
|
|
77
|
+
// for the ref …" pointing at a project↔repo mismatch).
|
|
78
|
+
lastError: provisioned.status === 'failed' ? provisioned.error?.trim() || 'Provisioning failed' : null,
|
|
79
|
+
// Rewritten from THIS poll on every poll, whatever the status: it is the provider's current
|
|
80
|
+
// account of where the environment is, so a note it has stopped saying stops being stored
|
|
81
|
+
// (the same clear-unless-restated rule as `lastError`, applied to every status rather than
|
|
82
|
+
// to `failed` alone). This is the write that makes the readiness ceiling able to name the
|
|
83
|
+
// state a run was stuck in, because every poll that KEEPS a readiness wait alive lands here.
|
|
84
|
+
statusNote: boundStatusNote(provisioned.statusNote),
|
|
85
|
+
// The trail a poll the provider ANSWERED leaves. Everything else on this path records only a
|
|
86
|
+
// poll that threw or one that transitioned the environment to `failed`, so a readiness wait
|
|
87
|
+
// that polled cleanly for four minutes left two log rows a second apart at the create and
|
|
88
|
+
// nothing after them; an investigation then read that absence as the absence of polling and
|
|
89
|
+
// stated it as fact. A row per poll is the wrong shape at a ten-second cadence, and this pair
|
|
90
|
+
// is enough to tell a four-minute wait from no wait at all.
|
|
91
|
+
//
|
|
92
|
+
// Stamped for an answer of ANY status, `failed` included: the pair says how much polling
|
|
93
|
+
// happened, never how much of it went well, and the two readings are not interchangeable
|
|
94
|
+
// (see {@link EnvironmentRecord.lastPolledAt}, and `describePollMarker`, which renders it).
|
|
95
|
+
// Whoever polls and gets a verdict has polled. A poll that THREW never reaches here, having
|
|
96
|
+
// a provisioning-log row of its own naming the cause.
|
|
97
|
+
lastPolledAt: deps.clock.now(),
|
|
98
|
+
pollCount: record.pollCount + 1,
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Re-read the provider's stated addresses, keep the proof beside them for as long as it still
|
|
103
|
+
* establishes something (see `foldStatedAddresses`), and RE-TAKE one the fold had to drop.
|
|
104
|
+
*
|
|
105
|
+
* The re-take is what stops this being a silent regression. `proveEnvironmentRoute` is otherwise
|
|
106
|
+
* reached from exactly one place, the deployer's frame settle, which will not run again for a
|
|
107
|
+
* frame that already settled; a dropped proof and a proof never taken are the same value, so
|
|
108
|
+
* everything built on it (the note an agent is handed, the address a container bridge is built
|
|
109
|
+
* from) would just stop, with nothing to say it had.
|
|
110
|
+
*
|
|
111
|
+
* WHEN it re-takes is `routeReproveDecision`, which also bounds how often: this runs on the
|
|
112
|
+
* ten-second cadence of a readiness wait, and an unbounded re-take is up to twenty seconds of
|
|
113
|
+
* sequential dialling on every one of them.
|
|
114
|
+
*/
|
|
115
|
+
async function foldRoute(record, provisioned) {
|
|
116
|
+
const stored = parseReachability(record.reachability);
|
|
117
|
+
const folded = foldStatedAddresses(stored, record.url, provisioned.addresses, provisioned.url);
|
|
118
|
+
if (!deps.probe)
|
|
119
|
+
return folded;
|
|
120
|
+
const now = deps.clock.now();
|
|
121
|
+
const decision = routeReproveDecision({
|
|
122
|
+
stored,
|
|
123
|
+
folded,
|
|
124
|
+
ready: provisioned.status === 'ready',
|
|
125
|
+
now,
|
|
126
|
+
});
|
|
127
|
+
if (decision === 'keep')
|
|
128
|
+
return folded;
|
|
129
|
+
if (decision === 'held') {
|
|
130
|
+
// SAID rather than skipped silently: a poll that was due a probe and did not take one is
|
|
131
|
+
// otherwise indistinguishable from one with nothing to prove, and this is the state an
|
|
132
|
+
// environment whose candidate set moves on every answer sits in.
|
|
133
|
+
log.debug('held off re-proving an environment route: a probe ran too recently', {
|
|
134
|
+
workspaceId: record.workspaceId,
|
|
135
|
+
environmentId: record.id,
|
|
136
|
+
// The value the DECISION measured, read through its own accessor rather than re-derived:
|
|
137
|
+
// a log line naming a different date than the one that held the probe off is a line that
|
|
138
|
+
// sends the next reader looking in the wrong place.
|
|
139
|
+
lastLookedAt: lastLookedAt(stored),
|
|
140
|
+
});
|
|
141
|
+
return folded;
|
|
142
|
+
}
|
|
143
|
+
const candidates = folded?.candidates ?? [];
|
|
144
|
+
const proof = await proveEnvironmentRoute(provisioned.url, candidates, {
|
|
145
|
+
probe: deps.probe,
|
|
146
|
+
clock: deps.clock,
|
|
147
|
+
});
|
|
148
|
+
log.debug('re-proved an environment route the status poll invalidated', {
|
|
149
|
+
workspaceId: record.workspaceId,
|
|
150
|
+
environmentId: record.id,
|
|
151
|
+
state: proof.state,
|
|
152
|
+
...(proof.reason ? { reason: proof.reason } : {}),
|
|
153
|
+
});
|
|
154
|
+
// `probedAt` is stamped from the proof rather than from `now`: they are the same instant, and
|
|
155
|
+
// taking it from the proof keeps the two dates on one row unable to disagree.
|
|
156
|
+
return { candidates, proof, probedAt: proof.checkedAt };
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* A reconciliation that flips the env to `failed` (e.g. a rollout that exceeded its progress
|
|
160
|
+
* deadline, or a vanished namespace: the cases the provider maps to `failed` WITHOUT throwing)
|
|
161
|
+
* records a provisioning-log failure on the TRANSITION, so the run's "Infrastructure attempts"
|
|
162
|
+
* shows the env stopped spinning up instead of leaving it silently stuck. Repeated polls of an
|
|
163
|
+
* already-failed env don't re-log. (A read that THROWS is logged in `readStatus`; this covers
|
|
164
|
+
* the non-throwing failed verdict.)
|
|
165
|
+
*
|
|
166
|
+
* Runs AFTER the status patch is persisted and is best-effort: a logging hiccup must not throw
|
|
167
|
+
* back through the poll and leave the env stuck at `provisioning` again, the exact bug this
|
|
168
|
+
* surfacing is meant to fix.
|
|
169
|
+
*/
|
|
170
|
+
async function logFailedTransition(workspaceId, record, resolved, provisioned) {
|
|
171
|
+
if (provisioned.status !== 'failed' || record.status === 'failed')
|
|
172
|
+
return;
|
|
173
|
+
// The swallow stays (the env is already persisted as `failed` and the row is advisory), but it
|
|
174
|
+
// is a swallow that SAYS SO: a recorder that starts failing would otherwise silently stop
|
|
175
|
+
// recording every failed transition, which is the one surfacing this block exists to
|
|
176
|
+
// guarantee, with nothing anywhere to say it had stopped.
|
|
177
|
+
await runBestEffort(log, 'environmentStatusPoll.recordFailedTransition', () => deps.provisioningLog?.record({
|
|
178
|
+
workspaceId,
|
|
179
|
+
subsystem: 'environment',
|
|
180
|
+
operation: 'status',
|
|
181
|
+
targetId: record.id,
|
|
182
|
+
providerId: resolved.manifest.providerId,
|
|
183
|
+
blockId: record.blockId,
|
|
184
|
+
executionId: record.executionId,
|
|
185
|
+
outcome: 'failure',
|
|
186
|
+
error: provisioned.error?.trim() ||
|
|
187
|
+
'Environment provisioning did not complete (it never became ready).',
|
|
188
|
+
detail: null,
|
|
189
|
+
}), { workspaceId, environmentId: record.id });
|
|
190
|
+
}
|
|
191
|
+
return { refresh };
|
|
192
|
+
}
|
|
193
|
+
//# sourceMappingURL=environmentStatusPoll.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environmentStatusPoll.js","sourceRoot":"","sources":["../../../src/modules/environments/environmentStatusPoll.ts"],"names":[],"mappings":"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"}
|
|
@@ -203,7 +203,15 @@ export declare function extractAddresses(json: unknown, path: string | undefined
|
|
|
203
203
|
* fact to every reader (nothing has been shown to carry).
|
|
204
204
|
*/
|
|
205
205
|
export declare function parseReachability(raw: string | null): EnvironmentReachability | null;
|
|
206
|
-
/**
|
|
206
|
+
/**
|
|
207
|
+
* Serialize reachability for the row, or null when there is nothing worth a column.
|
|
208
|
+
*
|
|
209
|
+
* `probedAt` alone is worth one. It is the record that the platform has LOOKED at reaching this
|
|
210
|
+
* environment, which outlives both halves it sits beside (a proof about an address the provider
|
|
211
|
+
* has stopped stating is dropped, and the candidate list with it), and it is what the status
|
|
212
|
+
* poll's re-prove paces itself against. Dropping the value for want of the other two would make
|
|
213
|
+
* the first held re-prove permanent.
|
|
214
|
+
*/
|
|
207
215
|
export declare function serializeReachability(value: EnvironmentReachability | null): string | null;
|
|
208
216
|
/** Project a stored record onto the wire handle, optionally with decrypted access. */
|
|
209
217
|
export declare function recordToHandle(record: EnvironmentRecord, access?: EnvironmentAccessHandle | null): EnvironmentHandle;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environments.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/environments/environments.logic.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"environments.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/environments/environments.logic.ts"],"names":[],"mappings":"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"}
|
|
@@ -398,9 +398,19 @@ export function parseReachability(raw) {
|
|
|
398
398
|
return null;
|
|
399
399
|
}
|
|
400
400
|
}
|
|
401
|
-
/**
|
|
401
|
+
/**
|
|
402
|
+
* Serialize reachability for the row, or null when there is nothing worth a column.
|
|
403
|
+
*
|
|
404
|
+
* `probedAt` alone is worth one. It is the record that the platform has LOOKED at reaching this
|
|
405
|
+
* environment, which outlives both halves it sits beside (a proof about an address the provider
|
|
406
|
+
* has stopped stating is dropped, and the candidate list with it), and it is what the status
|
|
407
|
+
* poll's re-prove paces itself against. Dropping the value for want of the other two would make
|
|
408
|
+
* the first held re-prove permanent.
|
|
409
|
+
*/
|
|
402
410
|
export function serializeReachability(value) {
|
|
403
|
-
if (!value
|
|
411
|
+
if (!value)
|
|
412
|
+
return null;
|
|
413
|
+
if (value.candidates.length === 0 && !value.proof && value.probedAt === undefined)
|
|
404
414
|
return null;
|
|
405
415
|
return JSON.stringify(value);
|
|
406
416
|
}
|
|
@@ -422,6 +432,8 @@ export function recordToHandle(record, access) {
|
|
|
422
432
|
expiresAt: record.expiresAt,
|
|
423
433
|
lastError: record.lastError,
|
|
424
434
|
statusNote: record.statusNote,
|
|
435
|
+
lastPolledAt: record.lastPolledAt,
|
|
436
|
+
pollCount: record.pollCount,
|
|
425
437
|
provisionType: record.provisionType,
|
|
426
438
|
engine: record.engine,
|
|
427
439
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environments.logic.js","sourceRoot":"","sources":["../../../src/modules/environments/environments.logic.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"environments.logic.js","sourceRoot":"","sources":["../../../src/modules/environments/environments.logic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KubernetesEnvironmentProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/kubernetes/KubernetesEnvironmentProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,oBAAoB,EAEpB,gCAAgC,EAChC,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EAEpB,6BAA6B,EAC7B,6BAA6B,EAC7B,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAE1B,yBAAyB,EACzB,mBAAmB,EACnB,2BAA2B,EAC3B,sBAAsB,EAItB,cAAc,EACd,aAAa,EACd,MAAM,qBAAqB,CAAA;AAS5B,OAAO,EAAE,mBAAmB,EAAY,MAAM,0BAA0B,CAAA;AA6ExE;;;;GAIG;AACH,eAAO,MAAM,aAAa,gBAAgB,CAAA;AAmB1C,MAAM,WAAW,oCAAoC;IACnD,oEAAoE;IACpE,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,qBAAa,6BAA8B,YAAW,mBAAmB;IAE3D,OAAO,CAAC,QAAQ,CAAC,OAAO;IAApC,YAA6B,OAAO,GAAE,oCAAyC,EAAI;IAEnF;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,mBAAmB,GAAG,yBAAyB,CAE9E;IAED;;;;;;;;OAQG;IACH,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,mBAAmB,GAAG,0BAA0B,CAEnF;IAED;;;;;;;OAOG;IACH,SAAS,CAAC,UAAU,CAClB,MAAM,EAAE,0BAA0B,EAClC,aAAa,EAAE,cAAc,GAC5B,mBAAmB,CAErB;IAED;;;;OAIG;IACH,QAAQ,CAAC,cAAc,EAAE,wBAAwB,CAGhD;IAED;;;;;;;;;OASG;IACH,QAAQ,CAAC,WAAW;wBACI,wBAAwB,KAAG,OAAO,CAAC,oBAAoB,CAAC;;yBA8BvE,6BAA6B,KACjC,OAAO,CAAC,6BAA6B,CAAC;MAcC;IAEtC,SAAS,CAAC,GAAG,EAAE,2BAA2B,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAmDjF;IAEK,MAAM,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,sBAAsB,CAAC,
|
|
1
|
+
{"version":3,"file":"KubernetesEnvironmentProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/kubernetes/KubernetesEnvironmentProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,oBAAoB,EAEpB,gCAAgC,EAChC,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EAEpB,6BAA6B,EAC7B,6BAA6B,EAC7B,wBAAwB,EACxB,0BAA0B,EAC1B,0BAA0B,EAE1B,yBAAyB,EACzB,mBAAmB,EACnB,2BAA2B,EAC3B,sBAAsB,EAItB,cAAc,EACd,aAAa,EACd,MAAM,qBAAqB,CAAA;AAS5B,OAAO,EAAE,mBAAmB,EAAY,MAAM,0BAA0B,CAAA;AA6ExE;;;;GAIG;AACH,eAAO,MAAM,aAAa,gBAAgB,CAAA;AAmB1C,MAAM,WAAW,oCAAoC;IACnD,oEAAoE;IACpE,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,qBAAa,6BAA8B,YAAW,mBAAmB;IAE3D,OAAO,CAAC,QAAQ,CAAC,OAAO;IAApC,YAA6B,OAAO,GAAE,oCAAyC,EAAI;IAEnF;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,mBAAmB,GAAG,yBAAyB,CAE9E;IAED;;;;;;;;OAQG;IACH,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,mBAAmB,GAAG,0BAA0B,CAEnF;IAED;;;;;;;OAOG;IACH,SAAS,CAAC,UAAU,CAClB,MAAM,EAAE,0BAA0B,EAClC,aAAa,EAAE,cAAc,GAC5B,mBAAmB,CAErB;IAED;;;;OAIG;IACH,QAAQ,CAAC,cAAc,EAAE,wBAAwB,CAGhD;IAED;;;;;;;;;OASG;IACH,QAAQ,CAAC,WAAW;wBACI,wBAAwB,KAAG,OAAO,CAAC,oBAAoB,CAAC;;yBA8BvE,6BAA6B,KACjC,OAAO,CAAC,6BAA6B,CAAC;MAcC;IAEtC,SAAS,CAAC,GAAG,EAAE,2BAA2B,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAmDjF;IAEK,MAAM,CAAC,GAAG,EAAE,wBAAwB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAsF3E;IAEK,QAAQ,CAAC,GAAG,EAAE,0BAA0B,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,iBAAiB,CAAA;KAAE,CAAC,CAoBtF;IAED;;;;;;;;;OASG;IACG,eAAe,CAAC,GAAG,EAAE,0BAA0B,GAAG,OAAO,CAAC,aAAa,CAAC,CAyD7E;IAEK,cAAc,CAAC,GAAG,EAAE,gCAAgC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAgCzF;IAED,cAAc,IAAI,mBAAmB,EAAE,CAKtC;IAID;;;;OAIG;YACW,iBAAiB;IAwC/B,uEAAuE;IACvE,OAAO,CAAC,iBAAiB;IAQzB;;;;OAIG;IACH;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,gBAAgB;YASV,eAAe;IAqB7B;;;;;;;;;;;;;;;OAeG;YACW,mBAAmB;IAmBjC;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;YACW,kBAAkB;IAgFhC,sFAAsF;YACxE,kBAAkB;YAclB,KAAK;IASnB;;;;;OAKG;YACW,aAAa;IAmC3B;;;;;;;;OAQG;YACW,gBAAgB;IAgD9B;;;;;;;;;OASG;YACW,gBAAgB;IAoB9B,uFAAuF;YACzE,cAAc;IAa5B;;;;;;;OAOG;YACW,cAAc;IAiC5B;;;OAGG;YACW,eAAe;IAmB7B;;;;OAIG;YACW,iBAAiB;IA+B/B,iFAAiF;YACnE,OAAO;IAKrB;;;OAGG;YACW,gBAAgB;IAa9B,0FAA0F;YAC5E,aAAa;IAwB3B,0EAA0E;YAC5D,QAAQ;CAevB"}
|
|
@@ -206,7 +206,10 @@ export class KubernetesEnvironmentProvider {
|
|
|
206
206
|
status: 'failed',
|
|
207
207
|
expiresAt: null,
|
|
208
208
|
access: null,
|
|
209
|
-
|
|
209
|
+
// `null` rather than an empty bag: nothing in the cluster was read, so this answer states
|
|
210
|
+
// nothing about the captured fields, and an empty statement would REPLACE (erase) whatever
|
|
211
|
+
// the provision managed to capture about a namespace that is already unfindable.
|
|
212
|
+
fields: null,
|
|
210
213
|
error: 'this environment record carries no namespace, so there is nothing in the cluster to ' +
|
|
211
214
|
'read its status from: the provision never got as far as creating one.',
|
|
212
215
|
};
|