@cat-factory/orchestration 0.251.1 → 0.254.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/execution/AgentDispatchController.d.ts +9 -0
- package/dist/modules/execution/AgentDispatchController.d.ts.map +1 -1
- package/dist/modules/execution/AgentDispatchController.js +25 -1
- package/dist/modules/execution/AgentDispatchController.js.map +1 -1
- package/dist/modules/execution/CompanionController.d.ts +2 -0
- package/dist/modules/execution/CompanionController.d.ts.map +1 -1
- package/dist/modules/execution/CompanionController.js +13 -0
- package/dist/modules/execution/CompanionController.js.map +1 -1
- package/dist/modules/execution/DeployerStepController.d.ts.map +1 -1
- package/dist/modules/execution/DeployerStepController.js +12 -2
- package/dist/modules/execution/DeployerStepController.js.map +1 -1
- package/dist/modules/execution/DisposerStepController.d.ts.map +1 -1
- package/dist/modules/execution/DisposerStepController.js +15 -17
- package/dist/modules/execution/DisposerStepController.js.map +1 -1
- package/dist/modules/execution/ExecutionService.d.ts.map +1 -1
- package/dist/modules/execution/ExecutionService.js +1 -0
- package/dist/modules/execution/ExecutionService.js.map +1 -1
- package/dist/modules/execution/RunAdmission.js +5 -0
- package/dist/modules/execution/RunAdmission.js.map +1 -1
- package/dist/modules/execution/RunDispatcher.d.ts +3 -1
- package/dist/modules/execution/RunDispatcher.d.ts.map +1 -1
- package/dist/modules/execution/RunDispatcher.js +4 -0
- package/dist/modules/execution/RunDispatcher.js.map +1 -1
- package/dist/modules/execution/prReport.environments.d.ts +8 -3
- package/dist/modules/execution/prReport.environments.d.ts.map +1 -1
- package/dist/modules/execution/prReport.environments.js +25 -40
- package/dist/modules/execution/prReport.environments.js.map +1 -1
- package/dist/modules/execution/runOutcome.boundary.d.ts.map +1 -1
- package/dist/modules/execution/runOutcome.boundary.js +29 -0
- package/dist/modules/execution/runOutcome.boundary.js.map +1 -1
- package/dist/modules/execution/step-fold.logic.d.ts +20 -0
- package/dist/modules/execution/step-fold.logic.d.ts.map +1 -1
- package/dist/modules/execution/step-fold.logic.js +34 -1
- package/dist/modules/execution/step-fold.logic.js.map +1 -1
- package/dist/validation/validateBinaryGenerators.d.ts +24 -0
- package/dist/validation/validateBinaryGenerators.d.ts.map +1 -0
- package/dist/validation/validateBinaryGenerators.js +152 -0
- package/dist/validation/validateBinaryGenerators.js.map +1 -0
- package/dist/validation/validateRegistrations.d.ts.map +1 -1
- package/dist/validation/validateRegistrations.js +4 -78
- package/dist/validation/validateRegistrations.js.map +1 -1
- package/package.json +11 -11
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { hostMarkdown, redactSecrets } from '@cat-factory/kernel';
|
|
2
|
-
import {
|
|
2
|
+
import { declaresRetainedEnvironment, deployedFrames, deployerSteps, isObservedEnvironmentGone, runEnvironmentObservations, } from '@cat-factory/contracts';
|
|
3
3
|
import { isTesterKind } from './ci.logic.js';
|
|
4
4
|
import { absentNote, findStep } from './prReport.steps.js';
|
|
5
5
|
/** Scrub credentials out of an optional free-text value, preserving `null`/`undefined`. */
|
|
6
6
|
function scrub(value) {
|
|
7
7
|
return value == null ? null : (redactSecrets(value) ?? null);
|
|
8
8
|
}
|
|
9
|
-
/** The lifecycle states that mean an environment is no longer standing. */
|
|
10
|
-
const GONE_STATUSES = new Set(['torn_down', 'expired', 'failed']);
|
|
11
9
|
/** The human-readable rendering of each way the timeline can come back empty. */
|
|
12
10
|
const TIMELINE_GAP_NOTES = {
|
|
13
11
|
unwired: 'This deployment retains no provisioning event log, so the environment lifecycle could not be dated.',
|
|
@@ -123,19 +121,19 @@ function foldLifecycle(read) {
|
|
|
123
121
|
};
|
|
124
122
|
}
|
|
125
123
|
/**
|
|
126
|
-
* Whether the run's
|
|
127
|
-
*
|
|
128
|
-
*
|
|
129
|
-
*
|
|
130
|
-
*
|
|
124
|
+
* Whether the run's OWN observations POSITIVELY show every environment gone. This is the WEAKER
|
|
125
|
+
* of the two teardown signals and is only consulted when there is no log to read: the run's steps
|
|
126
|
+
* write what they see and never refresh it once the run settles, so an environment reclaimed by
|
|
127
|
+
* the TTL sweep afterwards keeps a stale `ready` observation forever. The log is what turns "we
|
|
128
|
+
* stopped watching" into "it was torn down at a time".
|
|
131
129
|
*
|
|
132
130
|
* Phrased POSITIVELY (`every`, over a non-empty set) rather than as "nothing looks live",
|
|
133
|
-
* because a run that
|
|
134
|
-
*
|
|
131
|
+
* because a run that observed no environment at all would satisfy the negative form and confirm
|
|
132
|
+
* a teardown nobody observed.
|
|
135
133
|
*/
|
|
136
|
-
function
|
|
137
|
-
const
|
|
138
|
-
return
|
|
134
|
+
function observationsAllGone(instance) {
|
|
135
|
+
const observations = runEnvironmentObservations(instance.steps);
|
|
136
|
+
return observations.length > 0 && observations.every(isObservedEnvironmentGone);
|
|
139
137
|
}
|
|
140
138
|
/**
|
|
141
139
|
* Whether the environments a run stood up are gone again.
|
|
@@ -167,18 +165,18 @@ function teardownState(instance, entries, logged) {
|
|
|
167
165
|
// that would answer `pending` answers `retained` instead when the deployer said so, and only
|
|
168
166
|
// those: a DECLARED retention says nothing about a teardown that was attempted and failed, or
|
|
169
167
|
// one that ran and could not be verified. Those are still the facts they always were.
|
|
170
|
-
const standing = declaresRetainedEnvironment(instance) ? 'retained' : 'pending';
|
|
168
|
+
const standing = declaresRetainedEnvironment(instance.steps) ? 'retained' : 'pending';
|
|
171
169
|
// No log to read: fall back to the run's own step projections, the weaker signal. This one
|
|
172
170
|
// still yields `confirmed`, because with no log there is no verify row to be missing — the
|
|
173
171
|
// projection is the only evidence there is, and it is the evidence this branch is for.
|
|
174
172
|
if (!logged)
|
|
175
|
-
return
|
|
173
|
+
return observationsAllGone(instance) ? 'confirmed' : standing;
|
|
176
174
|
if (logged.stuck.size > 0)
|
|
177
175
|
return 'failed';
|
|
178
176
|
// A log that records no bring-up at all cannot speak to the teardown either way, so the
|
|
179
177
|
// projection is consulted rather than concluding from the log's silence.
|
|
180
178
|
if (logged.provisioned.size === 0)
|
|
181
|
-
return
|
|
179
|
+
return observationsAllGone(instance) ? 'confirmed' : standing;
|
|
182
180
|
const outstanding = [...logged.provisioned].filter((id) => !logged.reclaimed.has(id) && !logged.unconfirmed.has(id));
|
|
183
181
|
// Something the run stood up has no teardown on record at all: it is still live as far as
|
|
184
182
|
// anyone knows. That outranks an unconfirmed one, because "nobody has asked yet" is a
|
|
@@ -189,28 +187,10 @@ function teardownState(instance, entries, logged) {
|
|
|
189
187
|
? 'confirmed'
|
|
190
188
|
: 'unconfirmed';
|
|
191
189
|
}
|
|
192
|
-
/**
|
|
193
|
-
* Whether the run's deployer step DECLARED that the environments it provisions outlive the run
|
|
194
|
-
* ({@link StepOptions.retainEnvironment}). Read off the step the run actually dispatched, not off
|
|
195
|
-
* the pipeline definition, because the definition can be edited after the run started and the
|
|
196
|
-
* report is about what THIS run did.
|
|
197
|
-
*
|
|
198
|
-
* It is deliberately the same fact the save boundary reads: an environment left standing with no
|
|
199
|
-
* declaration is refused at authoring time, so on a pipeline saved since that rule the two states
|
|
200
|
-
* this splits are "declared retained" and "the reclaim did not happen", which is exactly the
|
|
201
|
-
* distinction a reviewer needs and the one `pending` alone could not make.
|
|
202
|
-
*/
|
|
203
|
-
function declaresRetainedEnvironment(instance) {
|
|
204
|
-
return instance.steps.some((s) => s.agentKind === DEPLOYER_AGENT_KIND && s.stepOptions?.retainEnvironment === true);
|
|
205
|
-
}
|
|
206
190
|
/** The tester step whose report the evidence leg reads. */
|
|
207
191
|
function testerStep(instance) {
|
|
208
192
|
return findStep(instance, (s) => isTesterKind(s.agentKind), (s) => s.test?.lastReport != null);
|
|
209
193
|
}
|
|
210
|
-
/** The deployer step whose per-frame outcomes the "up" leg reads. */
|
|
211
|
-
function deployerStep(instance) {
|
|
212
|
-
return findStep(instance, (s) => s.agentKind === DEPLOYER_AGENT_KIND, (s) => Object.keys(s.deployEnvs ?? {}).length > 0);
|
|
213
|
-
}
|
|
214
194
|
/** The empty evidence leg, carrying the reason it is empty. */
|
|
215
195
|
function noEvidence(note) {
|
|
216
196
|
return {
|
|
@@ -345,14 +325,19 @@ function composeProof(entries, teardown, timeline, evidence, logged) {
|
|
|
345
325
|
return { proof: gaps.length === 0 ? 'complete' : 'incomplete', gaps };
|
|
346
326
|
}
|
|
347
327
|
/**
|
|
348
|
-
* Compose the test-environment lifecycle section. Reads the
|
|
349
|
-
*
|
|
350
|
-
*
|
|
328
|
+
* Compose the test-environment lifecycle section. Reads the run's per-frame deploy outcomes, its
|
|
329
|
+
* provisioning-log rows and the tester's report, all already resolved by the caller, so nothing
|
|
330
|
+
* here re-probes a provider.
|
|
331
|
+
*
|
|
332
|
+
* The frames are folded over EVERY deploy the run made rather than read off one step, which is
|
|
333
|
+
* the same rule the disposer reclaims by and the outcome summary reports: a re-deploy supersedes
|
|
334
|
+
* the frame's earlier environment, and a section built from one step's map omits every frame the
|
|
335
|
+
* other deploys settled.
|
|
351
336
|
*/
|
|
352
337
|
export function composeEnvironments(instance, inputs, cap) {
|
|
353
338
|
const { timeline, logged } = foldLifecycle(inputs.provisioning);
|
|
354
339
|
const evidence = composeEvidence(instance, inputs, cap);
|
|
355
|
-
const
|
|
340
|
+
const frames = deployedFrames(instance.steps);
|
|
356
341
|
const absent = (note) => ({
|
|
357
342
|
status: 'absent',
|
|
358
343
|
note,
|
|
@@ -363,10 +348,10 @@ export function composeEnvironments(instance, inputs, cap) {
|
|
|
363
348
|
proof: 'not_applicable',
|
|
364
349
|
gaps: [],
|
|
365
350
|
});
|
|
366
|
-
if (
|
|
351
|
+
if (deployerSteps(instance.steps).length === 0) {
|
|
367
352
|
return absent('No deployer step in this pipeline, so no ephemeral environment was provisioned.');
|
|
368
353
|
}
|
|
369
|
-
const entries = cap(
|
|
354
|
+
const entries = cap([...frames], 'environments.entries').map(([frameId, state]) => ({
|
|
370
355
|
frameId,
|
|
371
356
|
status: state.status,
|
|
372
357
|
url: state.url ?? null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prReport.environments.js","sourceRoot":"","sources":["../../../src/modules/execution/prReport.environments.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"prReport.environments.js","sourceRoot":"","sources":["../../../src/modules/execution/prReport.environments.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runOutcome.boundary.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/runOutcome.boundary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"runOutcome.boundary.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/runOutcome.boundary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAQV,UAAU,EACX,MAAM,wBAAwB,CAAA;AA4N/B;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,UAAU,GAAG,UAAU,CA0BlE"}
|
|
@@ -41,6 +41,12 @@ const MAX_TEXT_CHARS = 2_000;
|
|
|
41
41
|
const MAX_REQUIREMENT_ENTRIES = 500;
|
|
42
42
|
/** How many tester areas and concerns one response carries. Same reasoning as the rows. */
|
|
43
43
|
const MAX_TESTER_LIST = 200;
|
|
44
|
+
/**
|
|
45
|
+
* How many environment rows one response carries. A run stands one up per involved service
|
|
46
|
+
* frame, so this is the same pathological ceiling as the rows above, and the run's own frame
|
|
47
|
+
* order is what a cap keeps.
|
|
48
|
+
*/
|
|
49
|
+
const MAX_ENVIRONMENT_ROWS = 50;
|
|
44
50
|
/**
|
|
45
51
|
* How many linked-source rows one response carries. A task links a handful of pages; the cap is
|
|
46
52
|
* the same pathological ceiling the rows above are, and the run's own reading ORDER is what a cap
|
|
@@ -133,6 +139,28 @@ function boundVisuals(visuals) {
|
|
|
133
139
|
})),
|
|
134
140
|
};
|
|
135
141
|
}
|
|
142
|
+
function boundEnvironments(environments, truncations) {
|
|
143
|
+
if (environments.status === 'absent')
|
|
144
|
+
return environments;
|
|
145
|
+
return {
|
|
146
|
+
status: 'reported',
|
|
147
|
+
entries: cap(environments.entries, 'environments', truncations, MAX_ENVIRONMENT_ROWS).map((entry) => ({
|
|
148
|
+
// The URL is supplied by the org's own provisioning API through the manifest's response
|
|
149
|
+
// mapping, and an environment handed out with a token in its query string is a shape that
|
|
150
|
+
// API is free to have. Scrubbed like any other provider-supplied string.
|
|
151
|
+
url: text(entry.url),
|
|
152
|
+
state: entry.state,
|
|
153
|
+
origin: entry.origin,
|
|
154
|
+
expiresAt: entry.expiresAt,
|
|
155
|
+
retained: entry.retained,
|
|
156
|
+
// Ids the platform minted, not authored text.
|
|
157
|
+
frameId: entry.frameId,
|
|
158
|
+
environmentId: entry.environmentId,
|
|
159
|
+
// The provider's verbatim stderr, which is where a leaked credential comes from.
|
|
160
|
+
detail: text(entry.detail),
|
|
161
|
+
})),
|
|
162
|
+
};
|
|
163
|
+
}
|
|
136
164
|
function boundSources(sources, truncations) {
|
|
137
165
|
if (sources.status === 'absent')
|
|
138
166
|
return sources;
|
|
@@ -180,6 +208,7 @@ export function boundOutcomeForApi(outcome) {
|
|
|
180
208
|
requirements: boundRequirements(outcome.requirements, truncations),
|
|
181
209
|
tests: boundTests(outcome.tests, truncations),
|
|
182
210
|
visuals: boundVisuals(outcome.visuals),
|
|
211
|
+
environments: boundEnvironments(outcome.environments, truncations),
|
|
183
212
|
sources: boundSources(outcome.sources, truncations),
|
|
184
213
|
// A closed vocabulary of enum members and one nullable enum: nothing here is authored text.
|
|
185
214
|
checks: outcome.checks.map((check) => ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runOutcome.boundary.js","sourceRoot":"","sources":["../../../src/modules/execution/runOutcome.boundary.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runOutcome.boundary.js","sourceRoot":"","sources":["../../../src/modules/execution/runOutcome.boundary.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type AgentJobHandle, type PipelineStep } from '@cat-factory/kernel';
|
|
2
|
+
import type { DispatchToolServers } from '@cat-factory/contracts';
|
|
2
3
|
/**
|
|
3
4
|
* Rebuild the job handle a settled/running POLL addresses, from the step alone.
|
|
4
5
|
*
|
|
@@ -41,6 +42,25 @@ export declare function pollHandleFor(step: PipelineStep, workspaceId: string, e
|
|
|
41
42
|
* function exists at all.
|
|
42
43
|
*/
|
|
43
44
|
export declare function recordDispatchAttribution(step: PipelineStep, handle: AgentJobHandle, dispatchedKind: string): void;
|
|
45
|
+
/**
|
|
46
|
+
* Record what an INLINE dispatch will do with the running kind's tool servers (MCP).
|
|
47
|
+
*
|
|
48
|
+
* The counterpart of the `handle.toolServers` fold above on the path that returns a RESULT instead
|
|
49
|
+
* of a job handle. Its one producer today is a consensus-diverted step: the panel runs as inline
|
|
50
|
+
* model calls with no agent CLI, so every server the kind declared is withheld, and without this
|
|
51
|
+
* the step would carry no record at all and read exactly like a kind that declared none.
|
|
52
|
+
*
|
|
53
|
+
* Called BEFORE the inline call, off `AgentExecutor.previewToolServers`, so the two paths record on
|
|
54
|
+
* the same terms: the container path stamps off the handle at dispatch, and a job that later fails
|
|
55
|
+
* keeps its record. Folding an inline resolution off the RESULT instead would drop it on exactly
|
|
56
|
+
* the runs a reader most needs it for, since a failed step returns no result to carry it.
|
|
57
|
+
*
|
|
58
|
+
* `dispatchedKind` is a parameter here for the same reason it is there, and it is what keeps the
|
|
59
|
+
* stamp out of the executor's hands: the engine names the kind it dispatched, so a resolution can
|
|
60
|
+
* never be labelled with another one. Guarded on presence, so an inline executor with nothing to
|
|
61
|
+
* report never erases a record an earlier container round on this step wrote.
|
|
62
|
+
*/
|
|
63
|
+
export declare function recordInlineToolServers(step: PipelineStep, resolved: DispatchToolServers | undefined, dispatchedKind: string): void;
|
|
44
64
|
/**
|
|
45
65
|
* Record an ACCEPTED container dispatch on the step: the job handle to poll, the attribution
|
|
46
66
|
* only the dispatch site can resolve ({@link recordDispatchAttribution}), and the container
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-fold.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/step-fold.logic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"step-fold.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/step-fold.logic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAC1F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAYjE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,YAAY,EAClB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,GAClB,cAAc,CAUhB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,cAAc,EACtB,cAAc,EAAE,MAAM,GACrB,IAAI,CAwBN;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,mBAAmB,GAAG,SAAS,EACzC,cAAc,EAAE,MAAM,GACrB,IAAI,CAEN;AAkBD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,cAAc,EACtB,cAAc,EAAE,MAAM,GACrB,MAAM,CAKR;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACpE,OAAO,CAkBT;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,YAAY,CAAC,UAAU,CAAC,GAC/B,OAAO,CAKT;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAI3F"}
|
|
@@ -79,7 +79,7 @@ export function recordDispatchAttribution(step, handle, dispatchedKind) {
|
|
|
79
79
|
// re-dispatch by an executor that wires no tool servers (the inline path picking up a step a
|
|
80
80
|
// container path started) never erases the container round's record.
|
|
81
81
|
if (handle.toolServers)
|
|
82
|
-
step
|
|
82
|
+
stampToolServers(step, handle.toolServers, dispatchedKind);
|
|
83
83
|
// Order-preserving by FIRST dispatch, counting every one after it: the count is what makes a
|
|
84
84
|
// gate's fourth fixer round visible, so a re-dispatch increments rather than deduplicating.
|
|
85
85
|
const dispatches = step.dispatches ?? [];
|
|
@@ -88,6 +88,39 @@ export function recordDispatchAttribution(step, handle, dispatchedKind) {
|
|
|
88
88
|
? dispatches.map((d) => (d === existing ? { ...d, count: d.count + 1 } : d))
|
|
89
89
|
: [...dispatches, { agentKind: dispatchedKind, count: 1 }];
|
|
90
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* Record what an INLINE dispatch will do with the running kind's tool servers (MCP).
|
|
93
|
+
*
|
|
94
|
+
* The counterpart of the `handle.toolServers` fold above on the path that returns a RESULT instead
|
|
95
|
+
* of a job handle. Its one producer today is a consensus-diverted step: the panel runs as inline
|
|
96
|
+
* model calls with no agent CLI, so every server the kind declared is withheld, and without this
|
|
97
|
+
* the step would carry no record at all and read exactly like a kind that declared none.
|
|
98
|
+
*
|
|
99
|
+
* Called BEFORE the inline call, off `AgentExecutor.previewToolServers`, so the two paths record on
|
|
100
|
+
* the same terms: the container path stamps off the handle at dispatch, and a job that later fails
|
|
101
|
+
* keeps its record. Folding an inline resolution off the RESULT instead would drop it on exactly
|
|
102
|
+
* the runs a reader most needs it for, since a failed step returns no result to carry it.
|
|
103
|
+
*
|
|
104
|
+
* `dispatchedKind` is a parameter here for the same reason it is there, and it is what keeps the
|
|
105
|
+
* stamp out of the executor's hands: the engine names the kind it dispatched, so a resolution can
|
|
106
|
+
* never be labelled with another one. Guarded on presence, so an inline executor with nothing to
|
|
107
|
+
* report never erases a record an earlier container round on this step wrote.
|
|
108
|
+
*/
|
|
109
|
+
export function recordInlineToolServers(step, resolved, dispatchedKind) {
|
|
110
|
+
if (resolved)
|
|
111
|
+
stampToolServers(step, resolved, dispatchedKind);
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Put one dispatch's tool-server resolution on the step under the kind that ran.
|
|
115
|
+
*
|
|
116
|
+
* Shared by the container and inline folds rather than spelled out at each, because the STAMP is
|
|
117
|
+
* the invariant: the executor reports two lists and the engine alone says whose they are (see
|
|
118
|
+
* `DispatchToolServers`). Two spellings of it is two places for an executor-supplied kind to creep
|
|
119
|
+
* back in.
|
|
120
|
+
*/
|
|
121
|
+
function stampToolServers(step, resolved, dispatchedKind) {
|
|
122
|
+
step.toolServers = { ...resolved, agentKind: dispatchedKind };
|
|
123
|
+
}
|
|
91
124
|
/**
|
|
92
125
|
* Record an ACCEPTED container dispatch on the step: the job handle to poll, the attribution
|
|
93
126
|
* only the dispatch site can resolve ({@link recordDispatchAttribution}), and the container
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-fold.logic.js","sourceRoot":"","sources":["../../../src/modules/execution/step-fold.logic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA0C,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"step-fold.logic.js","sourceRoot":"","sources":["../../../src/modules/execution/step-fold.logic.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { BinaryGeneratorRegistry } from '@cat-factory/kernel';
|
|
2
|
+
import type { RegistrationProblem } from './validateRegistrations.js';
|
|
3
|
+
/**
|
|
4
|
+
* Section 9 of `collectRegistrationProblems`: every generative binary integration a deployment
|
|
5
|
+
* registers must be a definition the platform can actually dispatch against.
|
|
6
|
+
*
|
|
7
|
+
* Its own module rather than more of `validateRegistrations.ts` because the section is a cohesive
|
|
8
|
+
* concern with a growing rule set, and its host had reached the file-size ratchet.
|
|
9
|
+
*
|
|
10
|
+
* Boot is the only place these can be caught. There is no write boundary that ever refused them
|
|
11
|
+
* (they are code), and every failure below is silent at run time in the same expensive way: a
|
|
12
|
+
* malformed definition or an unparseable contract becomes an integration the brief describes with
|
|
13
|
+
* no operations, a credential key that is not a valid environment-variable name is dropped by the
|
|
14
|
+
* harness's env validation and reappears as an unexplained 401 mid-run, and a cleartext endpoint
|
|
15
|
+
* puts that credential on the wire from inside the run container. Each of those costs a run to
|
|
16
|
+
* discover and names nothing that points back at the registration.
|
|
17
|
+
*
|
|
18
|
+
* A declared MEDIA TYPE that contradicts the declared modalities is an error too, not a warning:
|
|
19
|
+
* both halves drive selection (a step's content-type coverage is checked against `modalities`,
|
|
20
|
+
* while the brief tells the agent the `mediaTypes`), so an integration claiming `audio` while
|
|
21
|
+
* listing `image/png` will be picked for one job and asked to do the other.
|
|
22
|
+
*/
|
|
23
|
+
export declare function checkBinaryGenerators(registry: BinaryGeneratorRegistry | undefined): RegistrationProblem[];
|
|
24
|
+
//# sourceMappingURL=validateBinaryGenerators.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateBinaryGenerators.d.ts","sourceRoot":"","sources":["../../src/validation/validateBinaryGenerators.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAgBlE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAErE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,uBAAuB,GAAG,SAAS,GAC5C,mBAAmB,EAAE,CAqBvB"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { describeFoundationalProblem, isAllowedMcpHttpUrl, validateFoundationalDefinition, } from '@cat-factory/kernel';
|
|
2
|
+
import { binaryAcceptsWithoutCapability, binaryCredentialInjectionName, binaryGeneratorDefinitionIssues, comparableCredentialInjectionName, modalitiesOfMediaType, } from '@cat-factory/contracts';
|
|
3
|
+
/**
|
|
4
|
+
* Section 9 of `collectRegistrationProblems`: every generative binary integration a deployment
|
|
5
|
+
* registers must be a definition the platform can actually dispatch against.
|
|
6
|
+
*
|
|
7
|
+
* Its own module rather than more of `validateRegistrations.ts` because the section is a cohesive
|
|
8
|
+
* concern with a growing rule set, and its host had reached the file-size ratchet.
|
|
9
|
+
*
|
|
10
|
+
* Boot is the only place these can be caught. There is no write boundary that ever refused them
|
|
11
|
+
* (they are code), and every failure below is silent at run time in the same expensive way: a
|
|
12
|
+
* malformed definition or an unparseable contract becomes an integration the brief describes with
|
|
13
|
+
* no operations, a credential key that is not a valid environment-variable name is dropped by the
|
|
14
|
+
* harness's env validation and reappears as an unexplained 401 mid-run, and a cleartext endpoint
|
|
15
|
+
* puts that credential on the wire from inside the run container. Each of those costs a run to
|
|
16
|
+
* discover and names nothing that points back at the registration.
|
|
17
|
+
*
|
|
18
|
+
* A declared MEDIA TYPE that contradicts the declared modalities is an error too, not a warning:
|
|
19
|
+
* both halves drive selection (a step's content-type coverage is checked against `modalities`,
|
|
20
|
+
* while the brief tells the agent the `mediaTypes`), so an integration claiming `audio` while
|
|
21
|
+
* listing `image/png` will be picked for one job and asked to do the other.
|
|
22
|
+
*/
|
|
23
|
+
export function checkBinaryGenerators(registry) {
|
|
24
|
+
const problems = [];
|
|
25
|
+
if (!registry)
|
|
26
|
+
return problems;
|
|
27
|
+
const valid = [];
|
|
28
|
+
for (const definition of registry.all()) {
|
|
29
|
+
const issues = binaryGeneratorDefinitionIssues(definition);
|
|
30
|
+
if (issues.length > 0) {
|
|
31
|
+
problems.push({
|
|
32
|
+
severity: 'error',
|
|
33
|
+
code: 'binary_generator_invalid',
|
|
34
|
+
message: `Generative binary integration "${definition.id}" is not a valid definition: ${issues.join('; ')}`,
|
|
35
|
+
});
|
|
36
|
+
// The checks below read fields this parse just called malformed, so reporting them too
|
|
37
|
+
// would restate one fault as several.
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
40
|
+
valid.push(definition);
|
|
41
|
+
problems.push(...checkBinaryGeneratorDetails(definition));
|
|
42
|
+
}
|
|
43
|
+
problems.push(...checkInjectionNameCollisions(valid));
|
|
44
|
+
return problems;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* The one check that spans DEFINITIONS: two integrations may not inject different values into one
|
|
48
|
+
* environment variable.
|
|
49
|
+
*
|
|
50
|
+
* Within a definition the schema already refuses a repeated injection name. Across definitions the
|
|
51
|
+
* same name is legitimate and common, because one vendor behind an image endpoint and a music
|
|
52
|
+
* endpoint is one account: what makes that case safe is that both look the value up under the SAME
|
|
53
|
+
* key, so whichever integration is resolved first sets the variable to exactly what the other
|
|
54
|
+
* wanted. Different keys behind one name is the opposite, and there is no arbitration that makes
|
|
55
|
+
* it right. Serving the first claimant sets the variable the second integration's brief tells the
|
|
56
|
+
* agent to read, so the agent authenticates one vendor with another's key; withholding it (what
|
|
57
|
+
* dispatch does, since a mothership node validates nothing) costs both integrations every run.
|
|
58
|
+
*
|
|
59
|
+
* Neither outcome is what the deployment meant, and the remedy is one `envName` on one definition,
|
|
60
|
+
* which is why this is an error at boot rather than a warning nobody acts on. Only definitions
|
|
61
|
+
* that PARSED are compared: a malformed one has already been reported, and reading its credentials
|
|
62
|
+
* here would restate that fault as a second, more confusing one.
|
|
63
|
+
*/
|
|
64
|
+
function checkInjectionNameCollisions(definitions) {
|
|
65
|
+
// Grouped by the COMPARABLE (case-folded) name and reported under the spelling the deployment
|
|
66
|
+
// wrote, because `ACME_KEY` and `acme_key` are one variable wherever the environment is
|
|
67
|
+
// case-insensitive and two everywhere else: the pair collides on exactly the platform where the
|
|
68
|
+
// operator has the least chance of noticing.
|
|
69
|
+
const claims = new Map();
|
|
70
|
+
for (const definition of definitions) {
|
|
71
|
+
for (const credential of definition.credentials ?? []) {
|
|
72
|
+
const claim = claims.get(comparableCredentialInjectionName(credential)) ?? {
|
|
73
|
+
spelling: binaryCredentialInjectionName(credential),
|
|
74
|
+
byKey: new Map(),
|
|
75
|
+
};
|
|
76
|
+
claim.byKey.set(credential.key, [...(claim.byKey.get(credential.key) ?? []), definition.id]);
|
|
77
|
+
claims.set(comparableCredentialInjectionName(credential), claim);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
const problems = [];
|
|
81
|
+
for (const [, { spelling: envName, byKey }] of claims) {
|
|
82
|
+
if (byKey.size < 2)
|
|
83
|
+
continue;
|
|
84
|
+
const described = [...byKey]
|
|
85
|
+
.map(([key, ids]) => `"${key}" (${ids.join(', ')})`)
|
|
86
|
+
.sort()
|
|
87
|
+
.join(' and ');
|
|
88
|
+
problems.push({
|
|
89
|
+
severity: 'error',
|
|
90
|
+
code: 'binary_generator_injection_name_collision',
|
|
91
|
+
message: `Generative binary integrations disagree about environment variable "${envName}": it is ` +
|
|
92
|
+
`declared for lookup keys ${described}. One variable cannot hold both values, so an agent ` +
|
|
93
|
+
`told to read it for one integration would authenticate with the other's credential. Give ` +
|
|
94
|
+
`one of them a distinct \`envName\`, or point both at the same lookup key if they really ` +
|
|
95
|
+
`share an account.`,
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
return problems;
|
|
99
|
+
}
|
|
100
|
+
/** The per-definition checks a valid PARSE cannot make: the endpoint, contracts, media types. */
|
|
101
|
+
function checkBinaryGeneratorDetails(definition) {
|
|
102
|
+
const problems = [];
|
|
103
|
+
const invalid = (code, message) => {
|
|
104
|
+
problems.push({ severity: 'error', code, message });
|
|
105
|
+
};
|
|
106
|
+
// The same rule an HTTP tool server's URL is held to, and for the same reason the helper
|
|
107
|
+
// states: a declared credential rides this request, so cleartext off loopback puts it on the
|
|
108
|
+
// wire. (The helper is MCP-named because that was its first caller; the rule is not.)
|
|
109
|
+
if (definition.endpoint && !isAllowedMcpHttpUrl(definition.endpoint)) {
|
|
110
|
+
invalid('insecure_binary_generator_endpoint', `Generative binary integration "${definition.id}" has endpoint "${definition.endpoint}". Its ` +
|
|
111
|
+
`credential is sent with every request, so the endpoint must be https (plain http is ` +
|
|
112
|
+
`accepted only on loopback).`);
|
|
113
|
+
}
|
|
114
|
+
for (const problem of validateFoundationalDefinition({ contracts: definition.contracts })) {
|
|
115
|
+
invalid('binary_generator_invalid', `Generative binary integration "${definition.id}": ${describeFoundationalProblem(problem)}`);
|
|
116
|
+
}
|
|
117
|
+
const declared = new Set(definition.modalities);
|
|
118
|
+
for (const mediaType of definition.mediaTypes ?? []) {
|
|
119
|
+
const consistent = modalitiesOfMediaType(mediaType);
|
|
120
|
+
// An UNRECOGNISED media type is not a fault: the platform's classifier is not a registry of
|
|
121
|
+
// every format that exists, and refusing one would make registering a new codec impossible.
|
|
122
|
+
// A recognised one that CONTRADICTS the declaration is, because both drive selection.
|
|
123
|
+
//
|
|
124
|
+
// Contradiction is an empty INTERSECTION, not an absent member, and for 3D that is the whole
|
|
125
|
+
// difference: a `.glb` is consistent with both `3d-model` and `3d-scene` because the container
|
|
126
|
+
// does not record which it holds, so requiring every member would refuse a scene generator
|
|
127
|
+
// for declaring the only format it can emit.
|
|
128
|
+
if (consistent.length > 0 && !consistent.some((modality) => declared.has(modality))) {
|
|
129
|
+
const names = consistent.join('/');
|
|
130
|
+
invalid('binary_generator_modality_mismatch', `Generative binary integration "${definition.id}" declares media type "${mediaType}" ` +
|
|
131
|
+
`(${names}) but lists none of those among its modalities ` +
|
|
132
|
+
`(${definition.modalities.join(', ')}). A step selecting it for ${names} would be ` +
|
|
133
|
+
`refused, and one selecting it for the listed modalities would be told it can emit this.`);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
// The same fault one axis finer: a declaration whose two halves contradict each other, where
|
|
137
|
+
// every reader believes a different half. An `accepts` set states which values the endpoint
|
|
138
|
+
// takes for an option its `capabilities` say it cannot be asked for at all, so the brief
|
|
139
|
+
// renders the set as fact while admission refuses every step that asks, and the value rule
|
|
140
|
+
// (judged over the capability's declarers) never sees the set at all. The accurate half is
|
|
141
|
+
// unreachable, which makes this an error rather than a warning: the remedy is one capability
|
|
142
|
+
// on one definition, and the deployment has already written down that the endpoint has it.
|
|
143
|
+
for (const { option, capability } of binaryAcceptsWithoutCapability(definition)) {
|
|
144
|
+
invalid('binary_generator_accepts_without_capability', `Generative binary integration "${definition.id}" states the values it accepts for ` +
|
|
145
|
+
`\`${option}\` but does not declare the "${capability}" capability that option needs. ` +
|
|
146
|
+
`A step asking for it is refused as unsupported, so the accepted set is never consulted ` +
|
|
147
|
+
`while the agent's brief states it. Declare "${capability}", or drop the set if the ` +
|
|
148
|
+
`endpoint genuinely takes no such parameter.`);
|
|
149
|
+
}
|
|
150
|
+
return problems;
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=validateBinaryGenerators.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateBinaryGenerators.js","sourceRoot":"","sources":["../../src/validation/validateBinaryGenerators.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateRegistrations.d.ts","sourceRoot":"","sources":["../../src/validation/validateRegistrations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"validateRegistrations.d.ts","sourceRoot":"","sources":["../../src/validation/validateRegistrations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAG5D,OAAO,KAAK,EAEV,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,YAAY,EACZ,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,qBAAqB,CAAA;AAiD5B,4FAA4F;AAC5F,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,iBAAiB,EAAE,iBAAiB,CAAA;IACpC;;;;OAIG;IACH,YAAY,EAAE,YAAY,CAAA;IAC1B;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;IACnD;;;;;;OAMG;IACH,2BAA2B,CAAC,EAAE,2BAA2B,CAAA;IACzD;;;;;;OAMG;IACH,uBAAuB,CAAC,EAAE,uBAAuB,CAAA;IACjD;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,sBAAsB,CAAA;IAC/C;;;;;;;;;OASG;IACH,eAAe,CAAC,EAAE,oBAAoB,CAAA;IACtC;;;;;;;OAOG;IACH,0BAA0B,CAAC,EAAE,0BAA0B,CAAA;CACxD;AAED,uFAAuF;AACvF,MAAM,WAAW,4BAA4B;IAC3C,+EAA+E;IAC/E,UAAU,EAAE,mBAAmB,CAAA;IAC/B,qGAAqG;IACrG,kBAAkB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IACxC,qGAAqG;IACrG,kBAAkB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IACxC;;;;;OAKG;IACH,eAAe,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IACrC;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,IAAI,CAAA;IAC/C;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,OAAO,CAAA;CAC5D;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,4BAA4B,GACjC,mBAAmB,EAAE,CA4FvB;AA6sBD;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,4BAA4B,GAAG,IAAI,CAuB9E;AAOD,yGAAyG;AACzG,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,4BAA4B,GAAG,IAAI,CASlF;AAED,uFAAuF;AACvF,wBAAgB,gCAAgC,IAAI,IAAI,CAEvD"}
|