@lovrozagar/oat 0.6.2 → 0.7.2
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/README.md +443 -146
- package/dist/cli.js +35 -29
- package/dist/config/define-config.d.ts +125 -3
- package/dist/config/define-config.d.ts.map +1 -1
- package/dist/config/define-config.js +6 -0
- package/dist/config/define-config.js.map +1 -1
- package/dist/index.d.ts +7 -2
- package/dist/index.js +4 -1
- package/dist/reference/defects.d.ts +16 -0
- package/dist/reference/defects.d.ts.map +1 -1
- package/dist/reference/defects.js +16 -0
- package/dist/reference/defects.js.map +1 -1
- package/dist/reference/model.d.ts +9 -0
- package/dist/reference/model.d.ts.map +1 -1
- package/dist/reference/model.js +20 -0
- package/dist/reference/model.js.map +1 -1
- package/dist/reference/query.d.ts +5 -0
- package/dist/reference/query.d.ts.map +1 -1
- package/dist/reference/query.js +87 -21
- package/dist/reference/query.js.map +1 -1
- package/dist/reference/spec.d.ts.map +1 -1
- package/dist/reference/spec.js +47 -2
- package/dist/reference/spec.js.map +1 -1
- package/dist/reference/store-api.d.ts +5 -1
- package/dist/reference/store-api.d.ts.map +1 -1
- package/dist/reference/store-api.js +9 -1
- package/dist/reference/store-api.js.map +1 -1
- package/dist/reference/stores/memory.d.ts.map +1 -1
- package/dist/reference/stores/memory.js +11 -0
- package/dist/reference/stores/memory.js.map +1 -1
- package/dist/reference/stores/postgres.d.ts.map +1 -1
- package/dist/reference/stores/postgres.js +75 -19
- package/dist/reference/stores/postgres.js.map +1 -1
- package/dist/reference/stores/sqlite-driver.d.ts.map +1 -1
- package/dist/reference/stores/sqlite-driver.js +3 -0
- package/dist/reference/stores/sqlite-driver.js.map +1 -1
- package/dist/reference/stores/sqlite.d.ts.map +1 -1
- package/dist/reference/stores/sqlite.js +78 -17
- package/dist/reference/stores/sqlite.js.map +1 -1
- package/dist/report/console.d.ts +7 -1
- package/dist/report/console.d.ts.map +1 -1
- package/dist/report/console.js +210 -1
- package/dist/report/console.js.map +1 -1
- package/dist/report/render.d.ts.map +1 -1
- package/dist/report/render.js +4 -2
- package/dist/report/render.js.map +1 -1
- package/dist/runtime/auth.d.ts +22 -2
- package/dist/runtime/auth.d.ts.map +1 -1
- package/dist/runtime/auth.js +129 -16
- package/dist/runtime/auth.js.map +1 -1
- package/dist/runtime/body.d.ts.map +1 -1
- package/dist/runtime/body.js +6 -3
- package/dist/runtime/body.js.map +1 -1
- package/dist/runtime/checks.d.ts +9 -0
- package/dist/runtime/checks.d.ts.map +1 -1
- package/dist/runtime/checks.js +1414 -18
- package/dist/runtime/checks.js.map +1 -1
- package/dist/runtime/client.d.ts +23 -1
- package/dist/runtime/client.d.ts.map +1 -1
- package/dist/runtime/client.js +35 -5
- package/dist/runtime/client.js.map +1 -1
- package/dist/runtime/finding.d.ts +2 -0
- package/dist/runtime/finding.d.ts.map +1 -1
- package/dist/runtime/finding.js.map +1 -1
- package/dist/runtime/input.d.ts +7 -0
- package/dist/runtime/input.d.ts.map +1 -0
- package/dist/runtime/input.js +46 -0
- package/dist/runtime/input.js.map +1 -0
- package/dist/runtime/poll.d.ts +29 -0
- package/dist/runtime/poll.d.ts.map +1 -0
- package/dist/runtime/poll.js +59 -0
- package/dist/runtime/poll.js.map +1 -0
- package/dist/runtime/principals.d.ts +29 -0
- package/dist/runtime/principals.d.ts.map +1 -0
- package/dist/runtime/principals.js +97 -0
- package/dist/runtime/principals.js.map +1 -0
- package/dist/runtime/progress.d.ts +21 -0
- package/dist/runtime/progress.d.ts.map +1 -1
- package/dist/runtime/progress.js +63 -21
- package/dist/runtime/progress.js.map +1 -1
- package/dist/runtime/query-capabilities.d.ts +24 -0
- package/dist/runtime/query-capabilities.d.ts.map +1 -0
- package/dist/runtime/query-capabilities.js +66 -0
- package/dist/runtime/query-capabilities.js.map +1 -0
- package/dist/runtime/run.d.ts +14 -1
- package/dist/runtime/run.d.ts.map +1 -1
- package/dist/runtime/run.js +198 -39
- package/dist/runtime/run.js.map +1 -1
- package/dist/runtime/runs.d.ts +23 -0
- package/dist/runtime/runs.d.ts.map +1 -0
- package/dist/runtime/runs.js +53 -0
- package/dist/runtime/runs.js.map +1 -0
- package/dist/runtime/upload.d.ts +1 -0
- package/dist/runtime/upload.d.ts.map +1 -1
- package/dist/runtime/upload.js.map +1 -1
- package/dist/runtime/wait.d.ts +32 -0
- package/dist/runtime/wait.d.ts.map +1 -0
- package/dist/runtime/wait.js +125 -0
- package/dist/runtime/wait.js.map +1 -0
- package/dist/runtime/world.d.ts.map +1 -1
- package/dist/runtime/world.js +2 -0
- package/dist/runtime/world.js.map +1 -1
- package/dist/spec/conventions.d.ts +10 -2
- package/dist/spec/conventions.d.ts.map +1 -1
- package/dist/spec/conventions.js +61 -7
- package/dist/spec/conventions.js.map +1 -1
- package/dist/spec/extensions.d.ts +27 -0
- package/dist/spec/extensions.d.ts.map +1 -1
- package/dist/spec/extensions.js +40 -5
- package/dist/spec/extensions.js.map +1 -1
- package/dist/spec/graph.d.ts +2 -1
- package/dist/spec/graph.d.ts.map +1 -1
- package/dist/spec/graph.js +2 -1
- package/dist/spec/graph.js.map +1 -1
- package/dist/spec/query-capabilities.d.ts +154 -0
- package/dist/spec/query-capabilities.d.ts.map +1 -0
- package/dist/spec/query-capabilities.js +734 -0
- package/dist/spec/query-capabilities.js.map +1 -0
- package/labs/annotated-openapi.yaml +21 -2
- package/labs/demo.mjs +4 -2
- package/package.json +4 -2
package/dist/runtime/run.js
CHANGED
|
@@ -7,13 +7,17 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { buildModel } from "../spec/graph.js";
|
|
9
9
|
import { dereference, loadSpec } from "../spec/load.js";
|
|
10
|
+
import { isAuthFlow } from "../config/define-config.js";
|
|
10
11
|
import { createPrincipal } from "./auth.js";
|
|
12
|
+
import { resolveBackoff } from "./poll.js";
|
|
13
|
+
import { persistedToPrincipal, snapshotPrincipal } from "./principals.js";
|
|
11
14
|
import { CHECKS } from "./checks.js";
|
|
12
15
|
import { Client } from "./client.js";
|
|
13
16
|
import { FindingCollector } from "./finding.js";
|
|
14
17
|
import { reportFeatureGateSchemaDrift } from "./feature-gate.js";
|
|
15
18
|
import { excludedByProfile, resolveProfile } from "./profile.js";
|
|
16
19
|
import { buildRateLimitRules, RateLimiter } from "./rate-limit.js";
|
|
20
|
+
import { resolveEntityCapabilities } from "./query-capabilities.js";
|
|
17
21
|
import { Ledger } from "./teardown.js";
|
|
18
22
|
import { SchemaValidator } from "./validate.js";
|
|
19
23
|
import { isOverflowError, overflowFrom } from "./fixture.js";
|
|
@@ -103,7 +107,7 @@ function reportRateLimitViolations(client, findings) {
|
|
|
103
107
|
* rather than a snapshot is what lets a long run outlive a short-lived token — a five-minute TTL
|
|
104
108
|
* would otherwise turn the back half of every run into spurious 401s.
|
|
105
109
|
*/
|
|
106
|
-
async function resolvePrincipal(principal, model, client, hooks) {
|
|
110
|
+
async function resolvePrincipal(principal, model, client, hooks, outOfBand, originClients) {
|
|
107
111
|
const configured = principal.roots ?? {};
|
|
108
112
|
/* A principal without a flow authenticates by static header — a long-lived API key needs no
|
|
109
113
|
* acquisition at all, and forcing one would be ceremony. */
|
|
@@ -121,7 +125,9 @@ async function resolvePrincipal(principal, model, client, hooks) {
|
|
|
121
125
|
client,
|
|
122
126
|
hooks,
|
|
123
127
|
model,
|
|
128
|
+
outOfBand,
|
|
124
129
|
principalId: principal.id,
|
|
130
|
+
...(originClients === undefined ? {} : { originClients }),
|
|
125
131
|
});
|
|
126
132
|
/* A flow that provisions a tenant produces its own roots — the run then needs no fixture
|
|
127
133
|
* identifiers configured at all. */
|
|
@@ -164,7 +170,10 @@ async function readExisting(listOp, client, headers, roots) {
|
|
|
164
170
|
function authStepOperationIds(principals) {
|
|
165
171
|
const ids = new Set();
|
|
166
172
|
for (const principal of principals) {
|
|
167
|
-
|
|
173
|
+
const auth = principal.auth;
|
|
174
|
+
if (auth === undefined || !isAuthFlow(auth))
|
|
175
|
+
continue;
|
|
176
|
+
for (const step of auth.steps) {
|
|
168
177
|
if ("operationId" in step)
|
|
169
178
|
ids.add(step.operationId);
|
|
170
179
|
}
|
|
@@ -196,36 +205,72 @@ export async function run(options) {
|
|
|
196
205
|
const profile = resolveProfile(options.profile, options.profiles);
|
|
197
206
|
const profileExclusions = [];
|
|
198
207
|
let last;
|
|
208
|
+
const inflight = new Set();
|
|
199
209
|
let currentPhase = "load";
|
|
200
210
|
let currentEntity;
|
|
201
211
|
let currentCheck;
|
|
202
212
|
let currentEntityIndex;
|
|
203
213
|
let entityTotal;
|
|
204
214
|
const defectCount = () => findings.findings.filter((f) => f.verdict !== "BLOCKED" && f.verdict !== "COVERAGE_GAP").length;
|
|
205
|
-
const
|
|
206
|
-
|
|
215
|
+
const oldestInflight = () => {
|
|
216
|
+
let oldest;
|
|
217
|
+
for (const probe of inflight) {
|
|
218
|
+
if (oldest === undefined || probe.at < oldest.at)
|
|
219
|
+
oldest = probe;
|
|
220
|
+
}
|
|
221
|
+
if (oldest === undefined)
|
|
222
|
+
return undefined;
|
|
223
|
+
const displayed = { at: oldest.at, method: oldest.method, url: oldest.url };
|
|
224
|
+
if (oldest.requestId !== "")
|
|
225
|
+
displayed.requestId = oldest.requestId;
|
|
226
|
+
displayed.requestBytes = oldest.requestBytes;
|
|
227
|
+
return displayed;
|
|
207
228
|
};
|
|
208
|
-
|
|
209
|
-
|
|
229
|
+
let client;
|
|
230
|
+
const requestCount = () => client.transcript.length;
|
|
231
|
+
const snapshot = (extra) => {
|
|
210
232
|
const snap = {
|
|
211
233
|
elapsedMs: Date.now() - startedAt,
|
|
212
234
|
findings: defectCount(),
|
|
213
|
-
phase:
|
|
214
|
-
requests:
|
|
235
|
+
phase: currentPhase,
|
|
236
|
+
requests: extra?.requests ?? requestCount(),
|
|
215
237
|
};
|
|
238
|
+
if (currentCheck !== undefined)
|
|
239
|
+
snap.check = currentCheck;
|
|
240
|
+
if (currentEntity !== undefined)
|
|
241
|
+
snap.entity = currentEntity;
|
|
242
|
+
if (currentEntityIndex !== undefined)
|
|
243
|
+
snap.entityIndex = currentEntityIndex;
|
|
244
|
+
if (entityTotal !== undefined)
|
|
245
|
+
snap.entityTotal = entityTotal;
|
|
246
|
+
if (extra?.message !== undefined)
|
|
247
|
+
snap.message = extra.message;
|
|
248
|
+
if (last !== undefined)
|
|
249
|
+
snap.last = last;
|
|
250
|
+
if (extra?.omitInflight !== true) {
|
|
251
|
+
const live = extra?.inflight ?? oldestInflight();
|
|
252
|
+
if (live !== undefined)
|
|
253
|
+
snap.inflight = live;
|
|
254
|
+
}
|
|
255
|
+
return snap;
|
|
256
|
+
};
|
|
257
|
+
const publish = (snap) => {
|
|
258
|
+
options.onProgress?.(snap);
|
|
259
|
+
};
|
|
260
|
+
const tick = (partial) => {
|
|
261
|
+
currentPhase = partial.phase;
|
|
216
262
|
if (partial.entity !== undefined)
|
|
217
|
-
|
|
263
|
+
currentEntity = partial.entity;
|
|
218
264
|
if (partial.entityIndex !== undefined)
|
|
219
|
-
|
|
265
|
+
currentEntityIndex = partial.entityIndex;
|
|
220
266
|
if (partial.entityTotal !== undefined)
|
|
221
|
-
|
|
267
|
+
entityTotal = partial.entityTotal;
|
|
222
268
|
if (partial.check !== undefined)
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
publish(snap);
|
|
269
|
+
currentCheck = partial.check;
|
|
270
|
+
publish(snapshot({
|
|
271
|
+
...(partial.message === undefined ? {} : { message: partial.message }),
|
|
272
|
+
...(partial.requests === undefined ? {} : { requests: partial.requests }),
|
|
273
|
+
}));
|
|
229
274
|
};
|
|
230
275
|
tick({ message: options.spec, phase: "load", requests: 0 });
|
|
231
276
|
const raw = await loadSpec(options.spec, options.baseUrl);
|
|
@@ -238,9 +283,10 @@ export async function run(options) {
|
|
|
238
283
|
if (!isOverflowError(error))
|
|
239
284
|
throw error;
|
|
240
285
|
}
|
|
286
|
+
const hooks = options.hooks ?? {};
|
|
241
287
|
const authCreates = authStepOperationIds(options.principals);
|
|
242
288
|
const rateLimiter = new RateLimiter(buildRateLimitRules(model, options.rateLimits));
|
|
243
|
-
const
|
|
289
|
+
const remember = (exchange) => {
|
|
244
290
|
last = {
|
|
245
291
|
at: exchange.at,
|
|
246
292
|
durationMs: exchange.durationMs,
|
|
@@ -251,39 +297,48 @@ export async function run(options) {
|
|
|
251
297
|
status: exchange.status,
|
|
252
298
|
url: exchange.url,
|
|
253
299
|
};
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
300
|
+
};
|
|
301
|
+
const onExchange = (exchange) => {
|
|
302
|
+
remember(exchange);
|
|
303
|
+
publish(snapshot({ omitInflight: true }));
|
|
304
|
+
const remaining = oldestInflight();
|
|
305
|
+
if (remaining !== undefined)
|
|
306
|
+
publish(snapshot({ inflight: remaining }));
|
|
307
|
+
};
|
|
308
|
+
const httpHooks = {
|
|
309
|
+
end(probe) {
|
|
310
|
+
inflight.delete(probe);
|
|
311
|
+
},
|
|
312
|
+
start(probe) {
|
|
313
|
+
inflight.add(probe);
|
|
314
|
+
const displayed = { at: probe.at, method: probe.method, url: probe.url };
|
|
315
|
+
if (probe.requestId !== "")
|
|
316
|
+
displayed.requestId = probe.requestId;
|
|
317
|
+
displayed.requestBytes = probe.requestBytes;
|
|
318
|
+
publish(snapshot({ inflight: displayed }));
|
|
319
|
+
},
|
|
320
|
+
};
|
|
321
|
+
client = new Client(options.baseUrl, options.globalHeaders ?? {}, options.maxInFlight ?? 4, onExchange, rateLimiter, httpHooks);
|
|
322
|
+
if (hooks.resolveHeaders !== undefined)
|
|
323
|
+
client.setResolveHeaders(hooks.resolveHeaders);
|
|
271
324
|
const validator = new SchemaValidator();
|
|
272
325
|
const ledger = new Ledger();
|
|
273
326
|
const seed = options.seed ?? 1;
|
|
327
|
+
const outOfBand = resolveBackoff(options.outOfBand);
|
|
274
328
|
if (options.principals[0] === undefined)
|
|
275
329
|
throw new Error("oat: at least one principal is required");
|
|
276
|
-
const
|
|
330
|
+
const originClients = await loadOriginClients(options.origins ?? [], hooks, options.maxInFlight ?? 4, options.globalHeaders ?? {}, onExchange, httpHooks);
|
|
277
331
|
const uploads = {
|
|
278
332
|
seed,
|
|
279
333
|
...(options.uploads === undefined ? {} : { uploads: options.uploads }),
|
|
280
334
|
...(options.configDir === undefined ? {} : { configDir: options.configDir }),
|
|
281
335
|
...(hooks.resolveUpload === undefined ? {} : { resolveUpload: hooks.resolveUpload }),
|
|
336
|
+
...(hooks.resolveInput === undefined ? {} : { resolveInput: hooks.resolveInput }),
|
|
282
337
|
};
|
|
283
338
|
const worldUploads = (seedOffset = 0) => seedOffset === 0 ? uploads : { ...uploads, seed: seed + seedOffset };
|
|
284
339
|
const resolved = [];
|
|
285
340
|
for (const principal of options.principals) {
|
|
286
|
-
resolved.push(await resolvePrincipal(principal, model, client, hooks));
|
|
341
|
+
resolved.push(await resolvePrincipal(principal, model, client, hooks, outOfBand, originClients.size === 0 ? undefined : originClients));
|
|
287
342
|
}
|
|
288
343
|
tick({
|
|
289
344
|
message: `${resolved.length} principal(s)`,
|
|
@@ -582,12 +637,38 @@ export async function run(options) {
|
|
|
582
637
|
const inviteOp = entity.invite === null ? undefined : model.byOperationId.get(entity.invite.invite);
|
|
583
638
|
const inviteExcluded = excludeOp(entity, inviteOp);
|
|
584
639
|
const invocable = (op) => !excludeOp(entity, op);
|
|
640
|
+
const entityQuery = options.entities?.[entity.name]?.query;
|
|
641
|
+
const capabilities = await resolveEntityCapabilities({
|
|
642
|
+
tag: listOp.query,
|
|
643
|
+
itemSchema: listOp.collection?.itemSchema ?? null,
|
|
644
|
+
entityName: entity.name,
|
|
645
|
+
scope: scope.values,
|
|
646
|
+
model,
|
|
647
|
+
client,
|
|
648
|
+
auth: alpha.headers,
|
|
649
|
+
...(options.query === undefined ? {} : { global: options.query }),
|
|
650
|
+
...(entityQuery === undefined ? {} : { entity: entityQuery }),
|
|
651
|
+
...(hooks.resolveQueryCapabilities === undefined ? {} : { hook: hooks.resolveQueryCapabilities }),
|
|
652
|
+
});
|
|
653
|
+
const query = listOp.query;
|
|
654
|
+
const queryForChecks = query === null
|
|
655
|
+
? null
|
|
656
|
+
: {
|
|
657
|
+
...query,
|
|
658
|
+
filterable: capabilities.filterable.map((field) => field.field),
|
|
659
|
+
searchable: capabilities.searchable,
|
|
660
|
+
selectable: capabilities.selectable,
|
|
661
|
+
sortable: capabilities.sortable.map((field) => field.field),
|
|
662
|
+
};
|
|
585
663
|
const ctx = {
|
|
586
664
|
actors,
|
|
587
665
|
altAuth,
|
|
588
666
|
altScope,
|
|
589
667
|
asyncOps: model.operations.filter((op) => op.entity === entity.name && op.async !== null && invocable(op)),
|
|
590
668
|
effectOps: model.operations.filter((op) => op.entity === entity.name && op.effects.length > 0 && invocable(op)),
|
|
669
|
+
waitOps: model.operations.filter((op) => op.entity === entity.name && op.wait !== null && invocable(op)),
|
|
670
|
+
hooks,
|
|
671
|
+
outOfBand,
|
|
591
672
|
auth: alpha.headers,
|
|
592
673
|
...(alpha.runtime === undefined ? {} : { refreshIfStale: alpha.runtime.refreshIfStale }),
|
|
593
674
|
client: trackingClient,
|
|
@@ -601,9 +682,10 @@ export async function run(options) {
|
|
|
601
682
|
findings,
|
|
602
683
|
identity: entity.identity ?? "id",
|
|
603
684
|
invite: inviteExcluded ? null : entity.invite,
|
|
685
|
+
capabilities,
|
|
604
686
|
listOp,
|
|
605
687
|
model,
|
|
606
|
-
query:
|
|
688
|
+
query: queryForChecks,
|
|
607
689
|
readOp: readExcluded ? undefined : readOpModel,
|
|
608
690
|
records,
|
|
609
691
|
scope: scope.values,
|
|
@@ -747,8 +829,23 @@ export async function run(options) {
|
|
|
747
829
|
findings.gap("world.teardown", teardown.unsupported.join(", "), "records created during the run could not be removed", `no delete operation is reachable for ${teardown.unsupported.join(", ")}, so this run left ` +
|
|
748
830
|
"fixtures behind. Declare x-cleanup to name the route that removes them.");
|
|
749
831
|
}
|
|
750
|
-
await teardownPrincipals(resolved, hooks, findings);
|
|
751
832
|
reportRateLimitViolations(client, findings);
|
|
833
|
+
for (const principal of resolved)
|
|
834
|
+
await principal.runtime?.refreshIfStale();
|
|
835
|
+
const persisted = resolved.map((principal) => snapshotPrincipal({
|
|
836
|
+
headers: principal.headers,
|
|
837
|
+
id: principal.id,
|
|
838
|
+
roots: principal.roots,
|
|
839
|
+
...(principal.role === undefined ? {} : { role: principal.role }),
|
|
840
|
+
rank: principal.rank,
|
|
841
|
+
...(principal.inviteAs === undefined ? {} : { inviteAs: principal.inviteAs }),
|
|
842
|
+
}));
|
|
843
|
+
if ((options.origins ?? []).length > 0 && options.skipPrincipalTeardown !== true) {
|
|
844
|
+
await runSecondaryOrigins(options, persisted, findings, checksRun, checksSkipped, checksSuppressed, entitiesTested);
|
|
845
|
+
}
|
|
846
|
+
if (options.skipPrincipalTeardown !== true) {
|
|
847
|
+
await teardownPrincipals(resolved, hooks, findings);
|
|
848
|
+
}
|
|
752
849
|
tick({
|
|
753
850
|
message: "done",
|
|
754
851
|
phase: "done",
|
|
@@ -764,9 +861,71 @@ export async function run(options) {
|
|
|
764
861
|
entitiesTested,
|
|
765
862
|
findings: findings.findings,
|
|
766
863
|
model,
|
|
864
|
+
principals: persisted,
|
|
767
865
|
profile: profile.name,
|
|
768
866
|
profileExclusions,
|
|
769
867
|
teardown,
|
|
770
868
|
};
|
|
771
869
|
}
|
|
870
|
+
async function loadOriginClients(origins, hooks, maxInFlight, globalHeaders, onExchange, httpHooks) {
|
|
871
|
+
const map = new Map();
|
|
872
|
+
for (const origin of origins) {
|
|
873
|
+
const raw = await loadSpec(origin.spec, origin.baseUrl);
|
|
874
|
+
const { doc } = dereference(raw);
|
|
875
|
+
const originModel = buildModel(doc);
|
|
876
|
+
const originClient = new Client(origin.baseUrl, globalHeaders, maxInFlight, onExchange, undefined, httpHooks);
|
|
877
|
+
if (hooks.resolveHeaders !== undefined)
|
|
878
|
+
originClient.setResolveHeaders(hooks.resolveHeaders);
|
|
879
|
+
map.set(origin.id, { client: originClient, model: originModel });
|
|
880
|
+
}
|
|
881
|
+
return map;
|
|
882
|
+
}
|
|
883
|
+
async function runSecondaryOrigins(options, persisted, findings, checksRun, checksSkipped, checksSuppressed, entitiesTested) {
|
|
884
|
+
for (const origin of options.origins ?? []) {
|
|
885
|
+
const originHooks = options.hooks === undefined
|
|
886
|
+
? undefined
|
|
887
|
+
: (() => {
|
|
888
|
+
const { teardownPrincipal: _removed, ...rest } = options.hooks;
|
|
889
|
+
return rest;
|
|
890
|
+
})();
|
|
891
|
+
const result = await run({
|
|
892
|
+
baseUrl: origin.baseUrl,
|
|
893
|
+
principals: persisted.map(persistedToPrincipal),
|
|
894
|
+
spec: origin.spec,
|
|
895
|
+
skipPrincipalTeardown: true,
|
|
896
|
+
...(originHooks === undefined ? {} : { hooks: originHooks }),
|
|
897
|
+
...(options.uploads === undefined ? {} : { uploads: options.uploads }),
|
|
898
|
+
...(options.configDir === undefined ? {} : { configDir: options.configDir }),
|
|
899
|
+
...(options.globalHeaders === undefined ? {} : { globalHeaders: options.globalHeaders }),
|
|
900
|
+
...(options.roots === undefined ? {} : { roots: options.roots }),
|
|
901
|
+
...(options.seed === undefined ? {} : { seed: options.seed }),
|
|
902
|
+
...(options.cohortSize === undefined ? {} : { cohortSize: options.cohortSize }),
|
|
903
|
+
...(options.only === undefined ? {} : { only: options.only }),
|
|
904
|
+
...(options.profiles === undefined ? {} : { profiles: options.profiles }),
|
|
905
|
+
...(options.profile === undefined ? {} : { profile: options.profile }),
|
|
906
|
+
...(options.rateLimits === undefined ? {} : { rateLimits: options.rateLimits }),
|
|
907
|
+
...(options.keepFixtures === undefined ? {} : { keepFixtures: options.keepFixtures }),
|
|
908
|
+
...(options.maxInFlight === undefined ? {} : { maxInFlight: options.maxInFlight }),
|
|
909
|
+
...(options.outOfBand === undefined ? {} : { outOfBand: options.outOfBand }),
|
|
910
|
+
...(options.onProgress === undefined ? {} : { onProgress: options.onProgress }),
|
|
911
|
+
...(options.query === undefined ? {} : { query: options.query }),
|
|
912
|
+
...(options.entities === undefined ? {} : { entities: options.entities }),
|
|
913
|
+
});
|
|
914
|
+
for (const finding of result.findings) {
|
|
915
|
+
findings.report({ ...finding, origin: origin.id });
|
|
916
|
+
}
|
|
917
|
+
for (const check of result.checksRun)
|
|
918
|
+
checksRun.add(check);
|
|
919
|
+
for (const skip of result.checksSkipped)
|
|
920
|
+
checksSkipped.push({ ...skip, entity: `${origin.id}:${skip.entity}` });
|
|
921
|
+
for (const suppressed of result.checksSuppressed) {
|
|
922
|
+
checksSuppressed.push({ ...suppressed, entity: `${origin.id}:${suppressed.entity}` });
|
|
923
|
+
}
|
|
924
|
+
for (const entity of result.entitiesTested)
|
|
925
|
+
entitiesTested.push(`${origin.id}:${entity}`);
|
|
926
|
+
for (const item of result.inconclusive) {
|
|
927
|
+
findings.unresolved(item.check, `${origin.id}:${item.entity}`, item.reason);
|
|
928
|
+
}
|
|
929
|
+
}
|
|
930
|
+
}
|
|
772
931
|
//# sourceMappingURL=run.js.map
|
package/dist/runtime/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/runtime/run.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/runtime/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Each `oat run` writes into a fresh timestamped folder so a later run does not
|
|
3
|
+
* overwrite the last report.
|
|
4
|
+
*
|
|
5
|
+
* Default root is `.oat/runs`. `--out` / `outDir` replace that root; the leaf is
|
|
6
|
+
* always `<root>/<datetime>/`. `latest` is a relative symlink at the root.
|
|
7
|
+
*/
|
|
8
|
+
export declare const DEFAULT_RUNS_ROOT = ".oat/runs";
|
|
9
|
+
export declare const LATEST_LINK = "latest";
|
|
10
|
+
/** UTC, filesystem-safe. `2026-08-18T14:30:05.123Z` → `2026-08-18T14-30-05Z`. */
|
|
11
|
+
export declare function formatRunStamp(at: Date): string;
|
|
12
|
+
export interface AllocatedRunDir {
|
|
13
|
+
/** Resolved history root (`--out` / `outDir` / default). */
|
|
14
|
+
root: string;
|
|
15
|
+
/** Fresh directory for this invocation's artifacts. */
|
|
16
|
+
runDir: string;
|
|
17
|
+
/** Folder name under `root` — the stamp, plus `-2` / `-3` on collision. */
|
|
18
|
+
stamp: string;
|
|
19
|
+
/** Path of the `latest` symlink (always `<root>/latest`). */
|
|
20
|
+
latest: string;
|
|
21
|
+
}
|
|
22
|
+
export declare function allocateRunDir(root?: string, at?: Date): Promise<AllocatedRunDir>;
|
|
23
|
+
//# sourceMappingURL=runs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runs.d.ts","sourceRoot":"","sources":["../../src/runtime/runs.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,eAAO,MAAM,iBAAiB,cAAc,CAAA;AAC5C,eAAO,MAAM,WAAW,WAAW,CAAA;AAEnC,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,EAAE,EAAE,IAAI,GAAG,MAAM,CAK/C;AAED,MAAM,WAAW,eAAe;IAC/B,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAA;IACZ,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAA;IACd,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAA;IACb,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAA;CACd;AAED,wBAAsB,cAAc,CAAC,IAAI,SAAoB,EAAE,EAAE,OAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CAOxG"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Each `oat run` writes into a fresh timestamped folder so a later run does not
|
|
3
|
+
* overwrite the last report.
|
|
4
|
+
*
|
|
5
|
+
* Default root is `.oat/runs`. `--out` / `outDir` replace that root; the leaf is
|
|
6
|
+
* always `<root>/<datetime>/`. `latest` is a relative symlink at the root.
|
|
7
|
+
*/
|
|
8
|
+
import { mkdir, rm, symlink } from "node:fs/promises";
|
|
9
|
+
import { join, resolve } from "node:path";
|
|
10
|
+
export const DEFAULT_RUNS_ROOT = ".oat/runs";
|
|
11
|
+
export const LATEST_LINK = "latest";
|
|
12
|
+
/** UTC, filesystem-safe. `2026-08-18T14:30:05.123Z` → `2026-08-18T14-30-05Z`. */
|
|
13
|
+
export function formatRunStamp(at) {
|
|
14
|
+
return at
|
|
15
|
+
.toISOString()
|
|
16
|
+
.replaceAll(":", "-")
|
|
17
|
+
.replace(/\.\d{3}Z$/, "Z");
|
|
18
|
+
}
|
|
19
|
+
export async function allocateRunDir(root = DEFAULT_RUNS_ROOT, at = new Date()) {
|
|
20
|
+
const resolvedRoot = resolve(root);
|
|
21
|
+
await mkdir(resolvedRoot, { recursive: true });
|
|
22
|
+
const { dir: runDir, stamp } = await mkdirUnique(resolvedRoot, formatRunStamp(at));
|
|
23
|
+
const latest = join(resolvedRoot, LATEST_LINK);
|
|
24
|
+
await pointLatest(resolvedRoot, stamp);
|
|
25
|
+
return { latest, root: resolvedRoot, runDir, stamp };
|
|
26
|
+
}
|
|
27
|
+
async function mkdirUnique(root, base) {
|
|
28
|
+
let stamp = base;
|
|
29
|
+
let n = 2;
|
|
30
|
+
for (;;) {
|
|
31
|
+
const dir = join(root, stamp);
|
|
32
|
+
try {
|
|
33
|
+
await mkdir(dir);
|
|
34
|
+
return { dir, stamp };
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
if (!isAlreadyExists(error))
|
|
38
|
+
throw error;
|
|
39
|
+
stamp = `${base}-${n}`;
|
|
40
|
+
n += 1;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
async function pointLatest(root, stamp) {
|
|
45
|
+
const latest = join(root, LATEST_LINK);
|
|
46
|
+
await rm(latest, { force: true, recursive: true });
|
|
47
|
+
/* Junctions work without admin on Windows; `dir` is the Unix equivalent. */
|
|
48
|
+
await symlink(stamp, latest, process.platform === "win32" ? "junction" : "dir");
|
|
49
|
+
}
|
|
50
|
+
function isAlreadyExists(error) {
|
|
51
|
+
return (typeof error === "object" && error !== null && "code" in error && error.code === "EEXIST");
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=runs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runs.js","sourceRoot":"","sources":["../../src/runtime/runs.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAAA;AAC5C,MAAM,CAAC,MAAM,WAAW,GAAG,QAAQ,CAAA;AAEnC,iFAAiF;AACjF,MAAM,UAAU,cAAc,CAAC,EAAQ;IACtC,OAAO,EAAE;SACP,WAAW,EAAE;SACb,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;SACpB,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;AAC5B,CAAC;AAaD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAI,GAAG,iBAAiB,EAAE,EAAE,GAAG,IAAI,IAAI,EAAE;IAC7E,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,MAAM,KAAK,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC9C,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC,CAAA;IAClF,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAA;IAC9C,MAAM,WAAW,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;IACtC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;AACrD,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,IAAY,EAAE,IAAY;IACpD,IAAI,KAAK,GAAG,IAAI,CAAA;IAChB,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,SAAS,CAAC;QACT,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC7B,IAAI,CAAC;YACJ,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;YAChB,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAA;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;gBAAE,MAAM,KAAK,CAAA;YACxC,KAAK,GAAG,GAAG,IAAI,IAAI,CAAC,EAAE,CAAA;YACtB,CAAC,IAAI,CAAC,CAAA;QACP,CAAC;IACF,CAAC;AACF,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,IAAY,EAAE,KAAa;IACrD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;IACtC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAClD,4EAA4E;IAC5E,MAAM,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;AAChF,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACtC,OAAO,CACN,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK,IAAK,KAA2B,CAAC,IAAI,KAAK,QAAQ,CAChH,CAAA;AACF,CAAC"}
|
package/dist/runtime/upload.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export interface UploadContext {
|
|
|
8
8
|
uploads?: Uploads;
|
|
9
9
|
configDir?: string;
|
|
10
10
|
resolveUpload?: Hooks["resolveUpload"];
|
|
11
|
+
resolveInput?: Hooks["resolveInput"];
|
|
11
12
|
warn?: (message: string) => void;
|
|
12
13
|
}
|
|
13
14
|
export declare function resolveUploadFile(request: UploadRequest, context: UploadContext): Promise<UploadFile>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../src/runtime/upload.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAI7G,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAA;IACtC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAChC;AAID,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CAoB3G;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAGrH;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAMhE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,CAAA;CAAE,CAOxG;AAsFD,4DAA4D;AAC5D,wBAAgB,eAAe,IAAI,IAAI,CAGtC"}
|
|
1
|
+
{"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../src/runtime/upload.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAI7G,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAA;IACtC,YAAY,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,CAAA;IACpC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAChC;AAID,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CAoB3G;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAGrH;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAMhE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,CAAA;CAAE,CAOxG;AAsFD,4DAA4D;AAC5D,wBAAgB,eAAe,IAAI,IAAI,CAGtC"}
|