@cat-factory/contracts 0.83.0 → 0.85.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/entities.d.ts +150 -0
- package/dist/entities.d.ts.map +1 -1
- package/dist/entities.js +45 -1
- package/dist/entities.js.map +1 -1
- package/dist/frontend.d.ts +55 -0
- package/dist/frontend.d.ts.map +1 -1
- package/dist/frontend.js +114 -0
- package/dist/frontend.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/package-registries.d.ts +71 -0
- package/dist/package-registries.d.ts.map +1 -0
- package/dist/package-registries.js +96 -0
- package/dist/package-registries.js.map +1 -0
- package/dist/routes/agent-runs.d.ts +24 -0
- package/dist/routes/agent-runs.d.ts.map +1 -1
- package/dist/routes/execution.d.ts +96 -0
- package/dist/routes/execution.d.ts.map +1 -1
- package/dist/routes/human-review.d.ts +12 -0
- package/dist/routes/human-review.d.ts.map +1 -1
- package/dist/routes/human-test.d.ts +60 -0
- package/dist/routes/human-test.d.ts.map +1 -1
- package/dist/routes/index.d.ts +1 -0
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +1 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/package-registries.d.ts +116 -0
- package/dist/routes/package-registries.d.ts.map +1 -0
- package/dist/routes/package-registries.js +29 -0
- package/dist/routes/package-registries.js.map +1 -0
- package/dist/routes/visual-confirm.d.ts +36 -0
- package/dist/routes/visual-confirm.d.ts.map +1 -1
- package/dist/routes/workspaces.d.ts +24 -0
- package/dist/routes/workspaces.d.ts.map +1 -1
- package/dist/snapshot.d.ts +12 -0
- package/dist/snapshot.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/frontend.js
CHANGED
|
@@ -188,6 +188,120 @@ export const frontendConfigSchema = v.object({
|
|
|
188
188
|
backendBindings: v.array(frontendBackendBindingSchema),
|
|
189
189
|
});
|
|
190
190
|
// ---------------------------------------------------------------------------
|
|
191
|
+
// Frontend backend-binding RESOLUTION (pure, shared by the backend + the SPA).
|
|
192
|
+
//
|
|
193
|
+
// A frontend declares backend BINDINGS (env-var name → where its URL resolves). At UI-test /
|
|
194
|
+
// preview time each `service` binding whose bound service has a LIVE ephemeral env resolves to
|
|
195
|
+
// that env's real URL (a "service under test"); every `mock` binding — and every `service` with
|
|
196
|
+
// no live env — is left for WireMock. These helpers do that resolution with NO IO, so the exact
|
|
197
|
+
// same rule drives the run-start gate (orchestration), the reverse-origin CORS injection, the
|
|
198
|
+
// inspector's resolved-binding view, and the run-detail projection — they can't drift. (They
|
|
199
|
+
// live here, next to `frontendOriginsForService`, for the same reason: one source of truth the
|
|
200
|
+
// backend and the SPA both import.)
|
|
201
|
+
// ---------------------------------------------------------------------------
|
|
202
|
+
/** A frontend backend binding resolved to a concrete upstream for a UI-test / preview run. */
|
|
203
|
+
export const resolvedFrontendBindingSchema = v.object({
|
|
204
|
+
/** The frontend's env var for this upstream URL (e.g. `PUB_BACKEND_URL`). */
|
|
205
|
+
envVar: v.string(),
|
|
206
|
+
/** The bound service's live ephemeral env URL (the service under test); absent ⇒ mocked. */
|
|
207
|
+
serviceUrl: v.optional(v.string()),
|
|
208
|
+
});
|
|
209
|
+
/** The distinct service FRAME ids a frontend config binds via a `service` source. */
|
|
210
|
+
export function boundServiceFrameIds(config) {
|
|
211
|
+
return new Set(config.backendBindings
|
|
212
|
+
.filter((b) => b.source.kind === 'service')
|
|
213
|
+
.map((b) => b.source.serviceBlockId));
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Index live-environment handles to a `serviceFrameId → url` map for the service FRAMES a
|
|
217
|
+
* frontend binds. A binding's `serviceBlockId` names a service FRAME, so we match on the handle's
|
|
218
|
+
* `frameId` (the deployer's block walked up to its frame), NOT `blockId` (the task the deployer
|
|
219
|
+
* ran on). A frame can hold more than one live env (two tasks under it each ran a deployer, since
|
|
220
|
+
* supersede is per-task `blockId`), so keep the NEWEST by `createdAt` — the "current env wins"
|
|
221
|
+
* rule the tester point-read applies via `ORDER BY created_at DESC`. Shared by the backend
|
|
222
|
+
* (AgentContextBuilder / the preview job builder) and the SPA's live-binding view so the two
|
|
223
|
+
* can't drift on which env a live `service` binding resolves to.
|
|
224
|
+
*/
|
|
225
|
+
export function indexLiveServiceEnvUrls(handles, serviceFrameIds) {
|
|
226
|
+
const liveServiceEnvUrls = new Map();
|
|
227
|
+
if (serviceFrameIds.size === 0)
|
|
228
|
+
return liveServiceEnvUrls;
|
|
229
|
+
const newestAt = new Map();
|
|
230
|
+
for (const handle of handles) {
|
|
231
|
+
if (handle.frameId &&
|
|
232
|
+
handle.url &&
|
|
233
|
+
handle.status === 'ready' &&
|
|
234
|
+
serviceFrameIds.has(handle.frameId) &&
|
|
235
|
+
handle.createdAt >= (newestAt.get(handle.frameId) ?? Number.NEGATIVE_INFINITY)) {
|
|
236
|
+
newestAt.set(handle.frameId, handle.createdAt);
|
|
237
|
+
liveServiceEnvUrls.set(handle.frameId, handle.url);
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
return liveServiceEnvUrls;
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Resolve a frontend frame's backend bindings to concrete upstreams. Each `service` binding whose
|
|
244
|
+
* service FRAME id is in `liveServiceEnvUrls` becomes the service under test (its real URL); every
|
|
245
|
+
* `mock` source — and every `service` with no live env — is left for the harness to mock (no
|
|
246
|
+
* `serviceUrl`). Empty env-var bindings (an unfinished inspector row, allowed by the schema) are
|
|
247
|
+
* dropped so nothing inert is ever injected.
|
|
248
|
+
*
|
|
249
|
+
* The injected env is a MAP keyed by `envVar`, so two bindings sharing a (non-empty) `envVar`
|
|
250
|
+
* can't both survive — we keep the LAST (deterministic: whatever the operator sees at the bottom
|
|
251
|
+
* of the inspector list wins) rather than letting Map insertion order decide silently. The
|
|
252
|
+
* duplicate names are surfaced by {@link duplicateBindingEnvVars} (inspector warning) and the
|
|
253
|
+
* run-start soft note ({@link buildFrontendRunNotes}); this just makes the resolved result match
|
|
254
|
+
* that "last wins" rule.
|
|
255
|
+
*/
|
|
256
|
+
export function resolveFrontendBindings(config, liveServiceEnvUrls) {
|
|
257
|
+
const byEnvVar = new Map();
|
|
258
|
+
for (const binding of config.backendBindings) {
|
|
259
|
+
const envVar = binding.envVar.trim();
|
|
260
|
+
if (!envVar)
|
|
261
|
+
continue;
|
|
262
|
+
const serviceUrl = binding.source.kind === 'service'
|
|
263
|
+
? liveServiceEnvUrls.get(binding.source.serviceBlockId)
|
|
264
|
+
: undefined;
|
|
265
|
+
byEnvVar.set(envVar, serviceUrl ? { envVar, serviceUrl } : { envVar });
|
|
266
|
+
}
|
|
267
|
+
return [...byEnvVar.values()];
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Non-fatal advisories about a frontend UI-test / preview run's resolved backend bindings — the
|
|
271
|
+
* SPA-visible mirror of the harness's own `buildInfraNotes`. Two cases, both a misconfiguration
|
|
272
|
+
* the run tolerates rather than a failure:
|
|
273
|
+
* - **duplicate env vars** — more than one binding names the same env var; only the last takes
|
|
274
|
+
* effect (see {@link resolveFrontendBindings}), so the others silently do nothing.
|
|
275
|
+
* - **partial-live** — at least one bound service resolved to a live env (so the run started),
|
|
276
|
+
* but another bound service has no live env and falls back to WireMock. (A frontend where NO
|
|
277
|
+
* bound service is live is refused at the start gate, so that case never reaches here.)
|
|
278
|
+
* Pure + no IO so the wording/ordering is unit-tested; empty array ⇒ nothing to flag.
|
|
279
|
+
*/
|
|
280
|
+
export function buildFrontendRunNotes(config, liveServiceEnvUrls) {
|
|
281
|
+
const notes = [];
|
|
282
|
+
const duplicates = duplicateBindingEnvVars(config);
|
|
283
|
+
if (duplicates.length > 0) {
|
|
284
|
+
notes.push(`More than one backend binding uses the env var${duplicates.length === 1 ? '' : 's'} ` +
|
|
285
|
+
`${duplicates.join(', ')}; only the last binding for each takes effect and the earlier ` +
|
|
286
|
+
`ones are ignored. Give each upstream a distinct env var.`);
|
|
287
|
+
}
|
|
288
|
+
const serviceBindings = config.backendBindings.filter((b) => b.source.kind === 'service' && b.envVar.trim().length > 0);
|
|
289
|
+
const serviceFrameId = (b) => b.source.serviceBlockId;
|
|
290
|
+
const anyLive = serviceBindings.some((b) => liveServiceEnvUrls.has(serviceFrameId(b)));
|
|
291
|
+
const mocked = [
|
|
292
|
+
...new Set(serviceBindings
|
|
293
|
+
.filter((b) => !liveServiceEnvUrls.has(serviceFrameId(b)))
|
|
294
|
+
.map((b) => b.envVar.trim())),
|
|
295
|
+
].sort();
|
|
296
|
+
if (anyLive && mocked.length > 0) {
|
|
297
|
+
notes.push(`${mocked.length === 1 ? 'A bound service has' : 'Some bound services have'} no live ` +
|
|
298
|
+
`environment, so ${mocked.join(', ')} ${mocked.length === 1 ? 'is' : 'are'} served by ` +
|
|
299
|
+
`WireMock instead of the real backend. Provision ${mocked.length === 1 ? 'it' : 'them'} ` +
|
|
300
|
+
`to exercise the live service.`);
|
|
301
|
+
}
|
|
302
|
+
return notes;
|
|
303
|
+
}
|
|
304
|
+
// ---------------------------------------------------------------------------
|
|
191
305
|
// Frontend config AUTO-DETECTION (the "Detect from repo" affordance): a deterministic,
|
|
192
306
|
// checkout-free heuristic reads the frontend repo and proposes a NON-BINDING recommended
|
|
193
307
|
// {@link FrontendConfig} — the package manager (from the lockfile), install command, build
|
package/dist/frontend.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend.js","sourceRoot":"","sources":["../src/frontend.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"frontend.js","sourceRoot":"","sources":["../src/frontend.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -36,6 +36,7 @@ export * from './companion.js';
|
|
|
36
36
|
export * from './merge.js';
|
|
37
37
|
export * from './consensus.js';
|
|
38
38
|
export * from './release.js';
|
|
39
|
+
export * from './package-registries.js';
|
|
39
40
|
export * from './agent-config.js';
|
|
40
41
|
export * from './result-views.js';
|
|
41
42
|
export * from './agent-presentation.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,0BAA0B,CAAA;AACxC,cAAc,cAAc,CAAA;AAC5B,cAAc,sBAAsB,CAAA;AACpC,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AACvC,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AACtC,cAAc,oBAAoB,CAAA;AAClC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,yBAAyB,CAAA;AACvC,cAAc,eAAe,CAAA;AAC7B,cAAc,6BAA6B,CAAA;AAC3C,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,yBAAyB,CAAA;AACvC,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,0BAA0B,CAAA;AACxC,cAAc,cAAc,CAAA;AAC5B,cAAc,sBAAsB,CAAA;AACpC,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,yBAAyB,CAAA;AACvC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AACvC,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AACtC,cAAc,oBAAoB,CAAA;AAClC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,yBAAyB,CAAA;AACvC,cAAc,eAAe,CAAA;AAC7B,cAAc,6BAA6B,CAAA;AAC3C,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,yBAAyB,CAAA;AACvC,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -36,6 +36,7 @@ export * from './companion.js';
|
|
|
36
36
|
export * from './merge.js';
|
|
37
37
|
export * from './consensus.js';
|
|
38
38
|
export * from './release.js';
|
|
39
|
+
export * from './package-registries.js';
|
|
39
40
|
export * from './agent-config.js';
|
|
40
41
|
export * from './result-views.js';
|
|
41
42
|
export * from './agent-presentation.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,0BAA0B,CAAA;AACxC,cAAc,cAAc,CAAA;AAC5B,cAAc,sBAAsB,CAAA;AACpC,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AACvC,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AACtC,cAAc,oBAAoB,CAAA;AAClC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,yBAAyB,CAAA;AACvC,cAAc,eAAe,CAAA;AAC7B,cAAc,6BAA6B,CAAA;AAC3C,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,yBAAyB,CAAA;AACvC,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,0BAA0B,CAAA;AACxC,cAAc,cAAc,CAAA;AAC5B,cAAc,sBAAsB,CAAA;AACpC,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,yBAAyB,CAAA;AACvC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AACvC,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AACtC,cAAc,oBAAoB,CAAA;AAClC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,yBAAyB,CAAA;AACvC,cAAc,eAAe,CAAA;AAC7B,cAAc,6BAA6B,CAAA;AAC3C,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,yBAAyB,CAAA;AACvC,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import * as v from 'valibot';
|
|
2
|
+
/** Package ecosystems a registry entry can serve (npm-only today, extensible). */
|
|
3
|
+
export declare const packageEcosystemSchema: v.PicklistSchema<["npm"], undefined>;
|
|
4
|
+
export type PackageEcosystem = v.InferOutput<typeof packageEcosystemSchema>;
|
|
5
|
+
/** Registry vendors a workspace can connect (fixed set — the host derives from it). */
|
|
6
|
+
export declare const packageRegistryVendorSchema: v.PicklistSchema<["npmjs", "github-packages"], undefined>;
|
|
7
|
+
export type PackageRegistryVendor = v.InferOutput<typeof packageRegistryVendorSchema>;
|
|
8
|
+
/** The registry host each vendor resolves to. Never user-supplied. */
|
|
9
|
+
export declare function packageRegistryHost(vendor: PackageRegistryVendor): string;
|
|
10
|
+
/** An npm package scope (`@org`), the granularity private registries key on. */
|
|
11
|
+
export declare const npmScopeSchema: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 2, undefined>, v.MaxLengthAction<string, 215, undefined>, v.RegexAction<string, "scope must look like @org (letters, digits and ._~- after the @)">]>;
|
|
12
|
+
/**
|
|
13
|
+
* A registry auth token. Constrained to printable ASCII with no whitespace: a
|
|
14
|
+
* registry credential is a single opaque string, and rejecting control characters
|
|
15
|
+
* (newline/CR/tab) at the write boundary stops a token from injecting extra lines
|
|
16
|
+
* into the `~/.npmrc` the harness renders it into. The min length keeps the
|
|
17
|
+
* non-secret `tokenTail` (last 4 chars) from ever revealing the whole token.
|
|
18
|
+
*/
|
|
19
|
+
export declare const packageRegistryTokenSchema: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 8, undefined>, v.MaxLengthAction<string, 4096, undefined>, v.RegexAction<string, "token must be a single opaque string with no spaces or control characters">]>;
|
|
20
|
+
/** Add one registry entry to the workspace (token write-only, never read back). */
|
|
21
|
+
export declare const addPackageRegistrySchema: v.ObjectSchema<{
|
|
22
|
+
readonly ecosystem: v.PicklistSchema<["npm"], undefined>;
|
|
23
|
+
readonly vendor: v.PicklistSchema<["npmjs", "github-packages"], undefined>;
|
|
24
|
+
readonly scopes: v.SchemaWithPipe<readonly [v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 2, undefined>, v.MaxLengthAction<string, 215, undefined>, v.RegexAction<string, "scope must look like @org (letters, digits and ._~- after the @)">]>, undefined>, v.MinLengthAction<string[], 1, undefined>, v.MaxLengthAction<string[], 50, undefined>]>;
|
|
25
|
+
readonly token: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 8, undefined>, v.MaxLengthAction<string, 4096, undefined>, v.RegexAction<string, "token must be a single opaque string with no spaces or control characters">]>;
|
|
26
|
+
}, undefined>;
|
|
27
|
+
export type AddPackageRegistryInput = v.InferOutput<typeof addPackageRegistrySchema>;
|
|
28
|
+
/** A stored registry entry — the decrypted-blob shape (token included). */
|
|
29
|
+
export declare const packageRegistryEntrySchema: v.ObjectSchema<{
|
|
30
|
+
readonly id: v.StringSchema<undefined>;
|
|
31
|
+
readonly ecosystem: v.PicklistSchema<["npm"], undefined>;
|
|
32
|
+
readonly vendor: v.PicklistSchema<["npmjs", "github-packages"], undefined>;
|
|
33
|
+
readonly scopes: v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 2, undefined>, v.MaxLengthAction<string, 215, undefined>, v.RegexAction<string, "scope must look like @org (letters, digits and ._~- after the @)">]>, undefined>;
|
|
34
|
+
readonly token: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
|
|
35
|
+
}, undefined>;
|
|
36
|
+
export type PackageRegistryEntry = v.InferOutput<typeof packageRegistryEntrySchema>;
|
|
37
|
+
/**
|
|
38
|
+
* Validate a decrypted registry-entries blob at the read boundary, so a
|
|
39
|
+
* drifted/corrupted/hand-edited row fails with a clear schema error here
|
|
40
|
+
* rather than as a malformed `.npmrc` deep inside a container install.
|
|
41
|
+
*/
|
|
42
|
+
export declare function parsePackageRegistryEntries(raw: unknown): PackageRegistryEntry[];
|
|
43
|
+
/** What `GET /package-registries` returns per entry — never the token. */
|
|
44
|
+
export declare const packageRegistryEntryViewSchema: v.ObjectSchema<{
|
|
45
|
+
readonly id: v.StringSchema<undefined>;
|
|
46
|
+
readonly ecosystem: v.PicklistSchema<["npm"], undefined>;
|
|
47
|
+
readonly vendor: v.PicklistSchema<["npmjs", "github-packages"], undefined>;
|
|
48
|
+
readonly scopes: v.ArraySchema<v.StringSchema<undefined>, undefined>;
|
|
49
|
+
/** Last characters of the token, for recognition in the UI. */
|
|
50
|
+
readonly tokenTail: v.StringSchema<undefined>;
|
|
51
|
+
}, undefined>;
|
|
52
|
+
export type PackageRegistryEntryView = v.InferOutput<typeof packageRegistryEntryViewSchema>;
|
|
53
|
+
export declare const packageRegistryListSchema: v.ObjectSchema<{
|
|
54
|
+
readonly entries: v.ArraySchema<v.ObjectSchema<{
|
|
55
|
+
readonly id: v.StringSchema<undefined>;
|
|
56
|
+
readonly ecosystem: v.PicklistSchema<["npm"], undefined>;
|
|
57
|
+
readonly vendor: v.PicklistSchema<["npmjs", "github-packages"], undefined>;
|
|
58
|
+
readonly scopes: v.ArraySchema<v.StringSchema<undefined>, undefined>;
|
|
59
|
+
/** Last characters of the token, for recognition in the UI. */
|
|
60
|
+
readonly tokenTail: v.StringSchema<undefined>;
|
|
61
|
+
}, undefined>, undefined>;
|
|
62
|
+
}, undefined>;
|
|
63
|
+
export type PackageRegistryListView = v.InferOutput<typeof packageRegistryListSchema>;
|
|
64
|
+
/**
|
|
65
|
+
* The non-secret display summary persisted alongside the sealed entries, so the
|
|
66
|
+
* list view renders without ever decrypting the tokens.
|
|
67
|
+
*/
|
|
68
|
+
export declare function packageRegistrySummary(entries: PackageRegistryEntry[]): PackageRegistryEntryView[];
|
|
69
|
+
/** Validate a persisted summary blob at the read boundary. */
|
|
70
|
+
export declare function parsePackageRegistrySummary(raw: unknown): PackageRegistryEntryView[];
|
|
71
|
+
//# sourceMappingURL=package-registries.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-registries.d.ts","sourceRoot":"","sources":["../src/package-registries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAsB5B,kFAAkF;AAClF,eAAO,MAAM,sBAAsB,sCAAsB,CAAA;AACzD,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE3E,uFAAuF;AACvF,eAAO,MAAM,2BAA2B,2DAA2C,CAAA;AACnF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAErF,sEAAsE;AACtE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,CAOzE;AAED,gFAAgF;AAChF,eAAO,MAAM,cAAc,qPAS1B,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,+PAStC,CAAA;AAED,mFAAmF;AACnF,eAAO,MAAM,wBAAwB;;;;;aAKnC,CAAA;AACF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEpF,2EAA2E;AAC3E,eAAO,MAAM,0BAA0B;;;;;;aAMrC,CAAA;AACF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAEnF;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,GAAG,oBAAoB,EAAE,CAEhF;AAED,0EAA0E;AAC1E,eAAO,MAAM,8BAA8B;;;;;IAKzC,+DAA+D;;aAE/D,CAAA;AACF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,8BAA8B,CAAC,CAAA;AAE3F,eAAO,MAAM,yBAAyB;;;;;;QALpC,+DAA+D;;;aAO/D,CAAA;AACF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAErF;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,oBAAoB,EAAE,GAC9B,wBAAwB,EAAE,CAQ5B;AAED,8DAA8D;AAC9D,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,OAAO,GAAG,wBAAwB,EAAE,CAEpF"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import * as v from 'valibot';
|
|
2
|
+
// ---------------------------------------------------------------------------
|
|
3
|
+
// Private package registry wire contracts. A workspace connects the private
|
|
4
|
+
// registries its repos install from (npm private orgs, GitHub Packages) so
|
|
5
|
+
// agent containers (coder, tester, ci-fixer, preview, bootstrap, …) can
|
|
6
|
+
// resolve private dependencies on checkout: the entries ride the container
|
|
7
|
+
// job body and the harness renders them into `~/.npmrc` before the agent runs.
|
|
8
|
+
//
|
|
9
|
+
// The shape is ecosystem-discriminated (`ecosystem: 'npm'`) so pip/maven/cargo
|
|
10
|
+
// are later additive entries, not a reshape. The registry HOST is derived from
|
|
11
|
+
// the fixed vendor set — never user-supplied — so the harness can hard-allowlist
|
|
12
|
+
// where a token may be sent. Tokens are write-only: the list view carries only
|
|
13
|
+
// a non-secret summary (vendor + scopes + token tail).
|
|
14
|
+
//
|
|
15
|
+
// GitHub Packages uses an explicit token rather than reusing the GitHub App
|
|
16
|
+
// installation token: adding `packages:read` to the App would force every
|
|
17
|
+
// installation to re-approve, installation tokens expire in ~60 minutes (too
|
|
18
|
+
// short for a long run), and the npm scope's owner org can differ from the
|
|
19
|
+
// App's installation org. Reusing the App token stays a future option.
|
|
20
|
+
// ---------------------------------------------------------------------------
|
|
21
|
+
/** Package ecosystems a registry entry can serve (npm-only today, extensible). */
|
|
22
|
+
export const packageEcosystemSchema = v.picklist(['npm']);
|
|
23
|
+
/** Registry vendors a workspace can connect (fixed set — the host derives from it). */
|
|
24
|
+
export const packageRegistryVendorSchema = v.picklist(['npmjs', 'github-packages']);
|
|
25
|
+
/** The registry host each vendor resolves to. Never user-supplied. */
|
|
26
|
+
export function packageRegistryHost(vendor) {
|
|
27
|
+
switch (vendor) {
|
|
28
|
+
case 'npmjs':
|
|
29
|
+
return 'registry.npmjs.org';
|
|
30
|
+
case 'github-packages':
|
|
31
|
+
return 'npm.pkg.github.com';
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
/** An npm package scope (`@org`), the granularity private registries key on. */
|
|
35
|
+
export const npmScopeSchema = v.pipe(v.string(), v.trim(), v.minLength(2), v.maxLength(215), v.regex(/^@[a-z0-9~-][a-z0-9._~-]*$/i, 'scope must look like @org (letters, digits and ._~- after the @)'));
|
|
36
|
+
/**
|
|
37
|
+
* A registry auth token. Constrained to printable ASCII with no whitespace: a
|
|
38
|
+
* registry credential is a single opaque string, and rejecting control characters
|
|
39
|
+
* (newline/CR/tab) at the write boundary stops a token from injecting extra lines
|
|
40
|
+
* into the `~/.npmrc` the harness renders it into. The min length keeps the
|
|
41
|
+
* non-secret `tokenTail` (last 4 chars) from ever revealing the whole token.
|
|
42
|
+
*/
|
|
43
|
+
export const packageRegistryTokenSchema = v.pipe(v.string(), v.trim(), v.minLength(8), v.maxLength(4096), v.regex(/^[\x21-\x7e]+$/, 'token must be a single opaque string with no spaces or control characters'));
|
|
44
|
+
/** Add one registry entry to the workspace (token write-only, never read back). */
|
|
45
|
+
export const addPackageRegistrySchema = v.object({
|
|
46
|
+
ecosystem: packageEcosystemSchema,
|
|
47
|
+
vendor: packageRegistryVendorSchema,
|
|
48
|
+
scopes: v.pipe(v.array(npmScopeSchema), v.minLength(1), v.maxLength(50)),
|
|
49
|
+
token: packageRegistryTokenSchema,
|
|
50
|
+
});
|
|
51
|
+
/** A stored registry entry — the decrypted-blob shape (token included). */
|
|
52
|
+
export const packageRegistryEntrySchema = v.object({
|
|
53
|
+
id: v.string(),
|
|
54
|
+
ecosystem: packageEcosystemSchema,
|
|
55
|
+
vendor: packageRegistryVendorSchema,
|
|
56
|
+
scopes: v.array(npmScopeSchema),
|
|
57
|
+
token: v.pipe(v.string(), v.minLength(1)),
|
|
58
|
+
});
|
|
59
|
+
/**
|
|
60
|
+
* Validate a decrypted registry-entries blob at the read boundary, so a
|
|
61
|
+
* drifted/corrupted/hand-edited row fails with a clear schema error here
|
|
62
|
+
* rather than as a malformed `.npmrc` deep inside a container install.
|
|
63
|
+
*/
|
|
64
|
+
export function parsePackageRegistryEntries(raw) {
|
|
65
|
+
return v.parse(v.array(packageRegistryEntrySchema), raw);
|
|
66
|
+
}
|
|
67
|
+
/** What `GET /package-registries` returns per entry — never the token. */
|
|
68
|
+
export const packageRegistryEntryViewSchema = v.object({
|
|
69
|
+
id: v.string(),
|
|
70
|
+
ecosystem: packageEcosystemSchema,
|
|
71
|
+
vendor: packageRegistryVendorSchema,
|
|
72
|
+
scopes: v.array(v.string()),
|
|
73
|
+
/** Last characters of the token, for recognition in the UI. */
|
|
74
|
+
tokenTail: v.string(),
|
|
75
|
+
});
|
|
76
|
+
export const packageRegistryListSchema = v.object({
|
|
77
|
+
entries: v.array(packageRegistryEntryViewSchema),
|
|
78
|
+
});
|
|
79
|
+
/**
|
|
80
|
+
* The non-secret display summary persisted alongside the sealed entries, so the
|
|
81
|
+
* list view renders without ever decrypting the tokens.
|
|
82
|
+
*/
|
|
83
|
+
export function packageRegistrySummary(entries) {
|
|
84
|
+
return entries.map((entry) => ({
|
|
85
|
+
id: entry.id,
|
|
86
|
+
ecosystem: entry.ecosystem,
|
|
87
|
+
vendor: entry.vendor,
|
|
88
|
+
scopes: [...entry.scopes],
|
|
89
|
+
tokenTail: entry.token.slice(-4),
|
|
90
|
+
}));
|
|
91
|
+
}
|
|
92
|
+
/** Validate a persisted summary blob at the read boundary. */
|
|
93
|
+
export function parsePackageRegistrySummary(raw) {
|
|
94
|
+
return v.parse(v.array(packageRegistryEntryViewSchema), raw);
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=package-registries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-registries.js","sourceRoot":"","sources":["../src/package-registries.ts"],"names":[],"mappings":"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"}
|
|
@@ -108,6 +108,7 @@ export declare const retryAgentRunContract: {
|
|
|
108
108
|
readonly conclusion: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
109
109
|
readonly url: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
110
110
|
}, undefined>, undefined>, undefined>, undefined>;
|
|
111
|
+
readonly lastDispatchedInstructions: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
111
112
|
readonly watchSince: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
|
|
112
113
|
readonly watchWindowMinutes: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
|
|
113
114
|
readonly regressedSignals: v.OptionalSchema<v.NullableSchema<v.ArraySchema<v.ObjectSchema<{
|
|
@@ -122,6 +123,12 @@ export declare const retryAgentRunContract: {
|
|
|
122
123
|
readonly at: v.NumberSchema<undefined>;
|
|
123
124
|
readonly outcome: v.PicklistSchema<["completed", "failed"], undefined>;
|
|
124
125
|
readonly headSha: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
126
|
+
readonly instructions: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
127
|
+
readonly failingChecks: v.OptionalSchema<v.NullableSchema<v.ArraySchema<v.ObjectSchema<{
|
|
128
|
+
readonly name: v.StringSchema<undefined>;
|
|
129
|
+
readonly conclusion: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
130
|
+
readonly url: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
131
|
+
}, undefined>, undefined>, undefined>, undefined>;
|
|
125
132
|
readonly summary: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
126
133
|
}, undefined>, undefined>, undefined>, undefined>;
|
|
127
134
|
readonly lastApprovals: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
|
|
@@ -558,6 +565,11 @@ export declare const retryAgentRunContract: {
|
|
|
558
565
|
}, undefined>, undefined>, undefined>;
|
|
559
566
|
}, undefined>, undefined>;
|
|
560
567
|
}, undefined>, undefined>, undefined>;
|
|
568
|
+
readonly notes: v.OptionalSchema<v.ArraySchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
569
|
+
readonly frontendBindings: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
570
|
+
readonly envVar: v.StringSchema<undefined>;
|
|
571
|
+
readonly serviceUrl: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
572
|
+
}, undefined>, undefined>, undefined>;
|
|
561
573
|
readonly initiatedBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
562
574
|
readonly rev: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
563
575
|
}, undefined>, v.ObjectSchema<{
|
|
@@ -713,6 +725,7 @@ export declare const stopAgentRunContract: {
|
|
|
713
725
|
readonly conclusion: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
714
726
|
readonly url: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
715
727
|
}, undefined>, undefined>, undefined>, undefined>;
|
|
728
|
+
readonly lastDispatchedInstructions: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
716
729
|
readonly watchSince: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
|
|
717
730
|
readonly watchWindowMinutes: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
|
|
718
731
|
readonly regressedSignals: v.OptionalSchema<v.NullableSchema<v.ArraySchema<v.ObjectSchema<{
|
|
@@ -727,6 +740,12 @@ export declare const stopAgentRunContract: {
|
|
|
727
740
|
readonly at: v.NumberSchema<undefined>;
|
|
728
741
|
readonly outcome: v.PicklistSchema<["completed", "failed"], undefined>;
|
|
729
742
|
readonly headSha: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
743
|
+
readonly instructions: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
744
|
+
readonly failingChecks: v.OptionalSchema<v.NullableSchema<v.ArraySchema<v.ObjectSchema<{
|
|
745
|
+
readonly name: v.StringSchema<undefined>;
|
|
746
|
+
readonly conclusion: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
747
|
+
readonly url: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
748
|
+
}, undefined>, undefined>, undefined>, undefined>;
|
|
730
749
|
readonly summary: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
731
750
|
}, undefined>, undefined>, undefined>, undefined>;
|
|
732
751
|
readonly lastApprovals: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
|
|
@@ -1163,6 +1182,11 @@ export declare const stopAgentRunContract: {
|
|
|
1163
1182
|
}, undefined>, undefined>, undefined>;
|
|
1164
1183
|
}, undefined>, undefined>;
|
|
1165
1184
|
}, undefined>, undefined>, undefined>;
|
|
1185
|
+
readonly notes: v.OptionalSchema<v.ArraySchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
1186
|
+
readonly frontendBindings: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
1187
|
+
readonly envVar: v.StringSchema<undefined>;
|
|
1188
|
+
readonly serviceUrl: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
1189
|
+
}, undefined>, undefined>, undefined>;
|
|
1166
1190
|
readonly initiatedBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
1167
1191
|
readonly rev: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
1168
1192
|
}, undefined>, v.ObjectSchema<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-runs.d.ts","sourceRoot":"","sources":["../../src/routes/agent-runs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAsB5B,eAAO,MAAM,qBAAqB
|
|
1
|
+
{"version":3,"file":"agent-runs.d.ts","sourceRoot":"","sources":["../../src/routes/agent-runs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAsB5B,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMhC,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM/B,CAAA"}
|