@shapeshift-labs/frontier-swarm-codex 0.5.136 → 0.5.138
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 +6 -2
- package/dist/apply-admission.d.ts +23 -0
- package/dist/apply-admission.d.ts.map +1 -0
- package/dist/apply-admission.js +187 -0
- package/dist/apply-admission.js.map +1 -0
- package/dist/apply-evidence.d.ts +3 -0
- package/dist/apply-evidence.d.ts.map +1 -0
- package/dist/apply-evidence.js +266 -0
- package/dist/apply-evidence.js.map +1 -0
- package/dist/apply.d.ts +1 -1
- package/dist/apply.d.ts.map +1 -1
- package/dist/apply.js +37 -276
- package/dist/apply.js.map +1 -1
- package/dist/cli-args.d.ts +4 -1
- package/dist/cli-args.d.ts.map +1 -1
- package/dist/cli-args.js +4 -2
- package/dist/cli-args.js.map +1 -1
- package/dist/cli-help.d.ts.map +1 -1
- package/dist/cli-help.js +5 -0
- package/dist/cli-help.js.map +1 -1
- package/dist/cli-run-events-args.d.ts +1 -0
- package/dist/cli-run-events-args.d.ts.map +1 -1
- package/dist/cli-run-events-args.js +26 -0
- package/dist/cli-run-events-args.js.map +1 -1
- package/dist/cli.js +15 -2
- package/dist/cli.js.map +1 -1
- package/dist/codex-run-metadata.d.ts +1 -0
- package/dist/codex-run-metadata.d.ts.map +1 -1
- package/dist/codex-run-metadata.js +2 -1
- package/dist/codex-run-metadata.js.map +1 -1
- package/dist/codex-run-swarm.d.ts.map +1 -1
- package/dist/codex-run-swarm.js +65 -25
- package/dist/codex-run-swarm.js.map +1 -1
- package/dist/codex-run-timeline.d.ts +5 -2
- package/dist/codex-run-timeline.d.ts.map +1 -1
- package/dist/codex-run-timeline.js +119 -10
- package/dist/codex-run-timeline.js.map +1 -1
- package/dist/codex-run.d.ts.map +1 -1
- package/dist/codex-run.js +6 -2
- package/dist/codex-run.js.map +1 -1
- package/dist/collect.d.ts.map +1 -1
- package/dist/collect.js +6 -1
- package/dist/collect.js.map +1 -1
- package/dist/continuation-run-events.d.ts +36 -0
- package/dist/continuation-run-events.d.ts.map +1 -0
- package/dist/continuation-run-events.js +264 -0
- package/dist/continuation-run-events.js.map +1 -0
- package/dist/continuation.d.ts.map +1 -1
- package/dist/continuation.js +38 -8
- package/dist/continuation.js.map +1 -1
- package/dist/distributed-run-proof.d.ts +18 -0
- package/dist/distributed-run-proof.d.ts.map +1 -0
- package/dist/distributed-run-proof.js +54 -0
- package/dist/distributed-run-proof.js.map +1 -0
- package/dist/distributed-run.d.ts +37 -0
- package/dist/distributed-run.d.ts.map +1 -0
- package/dist/distributed-run.js +206 -0
- package/dist/distributed-run.js.map +1 -0
- package/dist/human-actions.js +3 -3
- package/dist/human-actions.js.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/proof-route-tasks.d.ts +37 -0
- package/dist/proof-route-tasks.d.ts.map +1 -0
- package/dist/proof-route-tasks.js +239 -0
- package/dist/proof-route-tasks.js.map +1 -0
- package/dist/types-apply.d.ts +114 -0
- package/dist/types-apply.d.ts.map +1 -0
- package/dist/types-apply.js +2 -0
- package/dist/types-apply.js.map +1 -0
- package/dist/types-collection.d.ts +4 -85
- package/dist/types-collection.d.ts.map +1 -1
- package/dist/types-continuation.d.ts +14 -0
- package/dist/types-continuation.d.ts.map +1 -1
- package/dist/types-distributed-run.d.ts +116 -0
- package/dist/types-distributed-run.d.ts.map +1 -0
- package/dist/types-distributed-run.js +2 -0
- package/dist/types-distributed-run.js.map +1 -0
- package/dist/types-run.d.ts +3 -0
- package/dist/types-run.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -48,10 +48,12 @@ The published Frontier package family is generated from one shared package catal
|
|
|
48
48
|
- [`@shapeshift-labs/frontier-lang-checker`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-checker): Checker and diagnostics for Frontier Lang semantic documents, including type symbols, effects, regions, lattice laws, CRDT metadata, and patch evidence.
|
|
49
49
|
- [`@shapeshift-labs/frontier-lang-typescript`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-typescript): TypeScript projection adapter for Frontier Lang semantic documents, including type/entity/state/action/extern declarations and CRDT lattice descriptors.
|
|
50
50
|
- [`@shapeshift-labs/frontier-lang-javascript`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-javascript): JavaScript projection adapter for Frontier Lang semantic documents, including ESM action stubs and schema/lattice descriptors.
|
|
51
|
+
- [`@shapeshift-labs/frontier-lang-html`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-html): HTML semantic merge evidence and projection adapter for Frontier Lang semantic documents, including element tree identity, attributes, text/comment spans, source maps, and fail-closed browser/runtime proof gaps.
|
|
52
|
+
- [`@shapeshift-labs/frontier-lang-css`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-css): CSS semantic merge evidence and projection adapter for Frontier Lang semantic documents, including selector specificity, declaration/cascade keys, custom properties, `@property` and `@page` descriptor evidence, CSS Modules/ICSS export and composition evidence, source maps, and fail-closed browser cascade/render proof gaps.
|
|
51
53
|
- [`@shapeshift-labs/frontier-lang-rust`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-rust): Rust projection adapter for Frontier Lang semantic documents, including structs, aliases, and action stubs.
|
|
52
54
|
- [`@shapeshift-labs/frontier-lang-python`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-python): Python projection adapter for Frontier Lang semantic documents, including dataclasses, typed patch records, and action stubs.
|
|
53
55
|
- [`@shapeshift-labs/frontier-lang-c`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-c): C header projection adapter for Frontier Lang semantic documents, including structs and action prototypes.
|
|
54
|
-
- [`@shapeshift-labs/frontier-lang-compiler`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-compiler): Compiler facade for Frontier Lang source documents, including parse, check, hash, diagnostics, universal AST envelopes, proof/paradigm semantic summaries, projection to TypeScript, JavaScript, Rust, Python, and C, and native source-import adapters for semantic merge evidence.
|
|
56
|
+
- [`@shapeshift-labs/frontier-lang-compiler`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-compiler): Compiler facade for Frontier Lang source documents, including parse, check, hash, diagnostics, universal AST envelopes, proof/paradigm semantic summaries, projection to TypeScript, JavaScript, HTML, CSS, Rust, Python, and C, and native source-import adapters for semantic merge evidence.
|
|
55
57
|
- [`@shapeshift-labs/frontier-lang-swift`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-swift): Swift source-language importer package for Frontier Lang semantic documents, including package-level metadata, SwiftSyntax adapter helpers, native import results, and semantic sidecar generation for SwiftSyntax/SwiftParser-shaped syntax trees.
|
|
56
58
|
- [`@shapeshift-labs/frontier-lang-kotlin`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-kotlin): Kotlin PSI source-language importer package for Frontier Lang semantic documents, including package-level metadata, Kotlin PSI adapter helpers, native import results, and semantic sidecar generation for Kotlin PSI/KtFile-shaped syntax trees.
|
|
57
59
|
- [`@shapeshift-labs/frontier-lang-java`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-java): Java source-language importer package for Frontier Lang semantic documents, including package-level metadata, Java AST adapter helpers, native import results, and semantic sidecar generation for javac/JDT/JavaParser-shaped ASTs.
|
|
@@ -59,7 +61,7 @@ The published Frontier package family is generated from one shared package catal
|
|
|
59
61
|
- [`@shapeshift-labs/frontier-lang-csharp`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-csharp): C# Roslyn source-language importer package for Frontier Lang semantic documents, including package-level metadata, Roslyn adapter helpers, native import results, and semantic sidecar generation for SyntaxTree/SyntaxNode-shaped ASTs.
|
|
60
62
|
- [`@shapeshift-labs/frontier-lang-clang`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-clang): Clang AST source-language importer package for Frontier Lang semantic documents, including package-level metadata, Clang AST JSON adapter helpers, native import results, and semantic sidecar generation for C/C++ translation units.
|
|
61
63
|
- [`@shapeshift-labs/frontier-lang-cli`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang-cli): Command line interface for parsing, checking, hashing, emitting, native source import/projection, semantic slicing, and corpus roundtrip evidence for Frontier Lang projects.
|
|
62
|
-
- [`@shapeshift-labs/frontier-lang`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang): Umbrella package for Frontier Lang kernel, parser, checker, compiler facade, universal AST helpers, projection adapters, and source-language importer adapters.
|
|
64
|
+
- [`@shapeshift-labs/frontier-lang`](https://www.npmjs.com/package/@shapeshift-labs/frontier-lang): Umbrella package for Frontier Lang kernel, parser, checker, compiler facade, universal AST helpers, projection adapters, HTML/CSS semantic merge evidence adapters, and source-language importer adapters.
|
|
63
65
|
- [`@shapeshift-labs/frontier-kv`](https://www.npmjs.com/package/@shapeshift-labs/frontier-kv): Serializable in-memory key/value state for Frontier apps, including TTL, versioned compare-and-set, batched patch mutations, scans, watchers, snapshots, JSONL event evidence, and replay verification.
|
|
64
66
|
- [`@shapeshift-labs/frontier-kv-locks`](https://www.npmjs.com/package/@shapeshift-labs/frontier-kv-locks): Lease-style lock records on top of Frontier KV, including acquire, renew, release, fencing tokens, expiration, owner evidence, and replayable lock events.
|
|
65
67
|
- [`@shapeshift-labs/frontier-kv-rate-limit`](https://www.npmjs.com/package/@shapeshift-labs/frontier-kv-rate-limit): Patch-native rate limit buckets for Frontier KV, including fixed windows, sliding windows, token buckets, deterministic refill, consume evidence, and reset records.
|
|
@@ -146,6 +148,8 @@ Package source repositories:
|
|
|
146
148
|
- [`siliconjungle/-shapeshift-labs-frontier-lang-checker`](https://github.com/siliconjungle/-shapeshift-labs-frontier-lang-checker)
|
|
147
149
|
- [`siliconjungle/-shapeshift-labs-frontier-lang-typescript`](https://github.com/siliconjungle/-shapeshift-labs-frontier-lang-typescript)
|
|
148
150
|
- [`siliconjungle/-shapeshift-labs-frontier-lang-javascript`](https://github.com/siliconjungle/-shapeshift-labs-frontier-lang-javascript)
|
|
151
|
+
- [`siliconjungle/-shapeshift-labs-frontier-lang-html`](https://github.com/siliconjungle/-shapeshift-labs-frontier-lang-html)
|
|
152
|
+
- [`siliconjungle/-shapeshift-labs-frontier-lang-css`](https://github.com/siliconjungle/-shapeshift-labs-frontier-lang-css)
|
|
149
153
|
- [`siliconjungle/-shapeshift-labs-frontier-lang-rust`](https://github.com/siliconjungle/-shapeshift-labs-frontier-lang-rust)
|
|
150
154
|
- [`siliconjungle/-shapeshift-labs-frontier-lang-python`](https://github.com/siliconjungle/-shapeshift-labs-frontier-lang-python)
|
|
151
155
|
- [`siliconjungle/-shapeshift-labs-frontier-lang-c`](https://github.com/siliconjungle/-shapeshift-labs-frontier-lang-c)
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { FrontierCodexApplyInput, FrontierCodexApplyResult } from './types-collection.js';
|
|
2
|
+
export interface FrontierCodexApplyAdmissionResult {
|
|
3
|
+
mode: NonNullable<FrontierCodexApplyInput['admission']>;
|
|
4
|
+
acceptedJobIds: string[];
|
|
5
|
+
entries: NonNullable<FrontierCodexApplyResult['admission']>['entries'];
|
|
6
|
+
rejected: NonNullable<FrontierCodexApplyResult['admission']>['entries'];
|
|
7
|
+
}
|
|
8
|
+
export declare function createCodexApplyAdmission(input: {
|
|
9
|
+
cwd: string;
|
|
10
|
+
collectionDir: string;
|
|
11
|
+
bucket?: FrontierCodexApplyInput['bucket'];
|
|
12
|
+
jobIds?: readonly string[];
|
|
13
|
+
limit?: number;
|
|
14
|
+
mode: NonNullable<FrontierCodexApplyInput['admission']>;
|
|
15
|
+
}): Promise<FrontierCodexApplyAdmissionResult>;
|
|
16
|
+
export declare function attachCodexApplyAdmission(result: FrontierCodexApplyResult, admission: FrontierCodexApplyAdmissionResult): FrontierCodexApplyResult;
|
|
17
|
+
export declare function createEmptyApplyResult(input: {
|
|
18
|
+
cwd: string;
|
|
19
|
+
collectionDir: string;
|
|
20
|
+
outDir?: string;
|
|
21
|
+
dryRun: boolean;
|
|
22
|
+
}): FrontierCodexApplyResult;
|
|
23
|
+
//# sourceMappingURL=apply-admission.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apply-admission.d.ts","sourceRoot":"","sources":["../src/apply-admission.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAE/F,MAAM,WAAW,iCAAiC;IAChD,IAAI,EAAE,WAAW,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC,CAAC;IACxD,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,OAAO,EAAE,WAAW,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACvE,QAAQ,EAAE,WAAW,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;CACzE;AAED,wBAAsB,yBAAyB,CAAC,KAAK,EAAE;IACrD,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,WAAW,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC,CAAC;CACzD,GAAG,OAAO,CAAC,iCAAiC,CAAC,CA2C7C;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,wBAAwB,EAChC,SAAS,EAAE,iCAAiC,GAC3C,wBAAwB,CAyC1B;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;CACjB,GAAG,wBAAwB,CAoB3B"}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import fs from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { FRONTIER_SWARM_GIT_APPLY_LEDGER_KIND, FRONTIER_SWARM_GIT_APPLY_LEDGER_VERSION } from '@shapeshift-labs/frontier-swarm-git';
|
|
4
|
+
import { findFilesByName, isObject, pathExists, uniqueStrings } from './common.js';
|
|
5
|
+
export async function createCodexApplyAdmission(input) {
|
|
6
|
+
const bundles = await readCodexApplyCandidateBundles(input);
|
|
7
|
+
if (input.mode === 'off') {
|
|
8
|
+
return {
|
|
9
|
+
mode: input.mode,
|
|
10
|
+
acceptedJobIds: input.jobIds ? [...input.jobIds] : bundles.map((entry) => entry.bundle.jobId),
|
|
11
|
+
entries: bundles.map(({ bundle, bundlePath }) => ({
|
|
12
|
+
jobId: bundle.jobId,
|
|
13
|
+
bundlePath,
|
|
14
|
+
status: 'accepted',
|
|
15
|
+
reasons: ['admission disabled'],
|
|
16
|
+
queueOutcomeDecisionIds: [],
|
|
17
|
+
gateEvidence: gateEvidenceForBundle(bundle)
|
|
18
|
+
})),
|
|
19
|
+
rejected: []
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
const queueOutcomeModel = await readCodexApplyQueueOutcomeModel(input.collectionDir);
|
|
23
|
+
const entries = bundles.map(({ bundle, bundlePath }) => {
|
|
24
|
+
const queueDecisions = queueOutcomeDecisionsForBundle(queueOutcomeModel, bundle);
|
|
25
|
+
const gateEvidence = gateEvidenceForBundle(bundle);
|
|
26
|
+
const reasons = [];
|
|
27
|
+
if (!queueOutcomeModel)
|
|
28
|
+
reasons.push('missing queue outcome model');
|
|
29
|
+
if (bundle.queueItemIds.length === 0)
|
|
30
|
+
reasons.push('missing queue item ids');
|
|
31
|
+
if (queueOutcomeModel && queueDecisions.length === 0)
|
|
32
|
+
reasons.push('missing ready queue outcome');
|
|
33
|
+
if (!bundleHasGateEvidence(bundle, gateEvidence))
|
|
34
|
+
reasons.push('missing worker gate evidence');
|
|
35
|
+
return {
|
|
36
|
+
jobId: bundle.jobId,
|
|
37
|
+
bundlePath,
|
|
38
|
+
status: reasons.length === 0 ? 'accepted' : input.mode === 'warn' ? 'warn' : 'rejected',
|
|
39
|
+
reasons: reasons.length ? reasons : ['admission passed'],
|
|
40
|
+
queueOutcomeDecisionIds: queueDecisions.map((decision) => decision.id),
|
|
41
|
+
gateEvidence
|
|
42
|
+
};
|
|
43
|
+
});
|
|
44
|
+
return {
|
|
45
|
+
mode: input.mode,
|
|
46
|
+
acceptedJobIds: input.mode === 'strict'
|
|
47
|
+
? entries.filter((entry) => entry.status === 'accepted').map((entry) => entry.jobId)
|
|
48
|
+
: input.jobIds ? [...input.jobIds] : bundles.map((entry) => entry.bundle.jobId),
|
|
49
|
+
entries,
|
|
50
|
+
rejected: entries.filter((entry) => entry.status === 'rejected')
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
export function attachCodexApplyAdmission(result, admission) {
|
|
54
|
+
const admissionByJob = new Map(admission.entries.map((entry) => [entry.jobId, entry]));
|
|
55
|
+
const existingEntries = result.entries.map((entry) => ({
|
|
56
|
+
...entry,
|
|
57
|
+
...(admissionByJob.has(entry.jobId) ? { admission: admissionByJob.get(entry.jobId) } : {})
|
|
58
|
+
}));
|
|
59
|
+
const existingJobIds = new Set(existingEntries.map((entry) => entry.jobId));
|
|
60
|
+
const rejectedEntries = admission.rejected
|
|
61
|
+
.filter((entry) => !existingJobIds.has(entry.jobId))
|
|
62
|
+
.map((entry) => ({
|
|
63
|
+
jobId: entry.jobId,
|
|
64
|
+
status: 'failed',
|
|
65
|
+
bundlePath: entry.bundlePath,
|
|
66
|
+
dryRun: result.dryRun,
|
|
67
|
+
commands: [],
|
|
68
|
+
admission: entry,
|
|
69
|
+
error: `apply admission rejected: ${entry.reasons.join(', ')}`
|
|
70
|
+
}));
|
|
71
|
+
const entries = [...existingEntries, ...rejectedEntries];
|
|
72
|
+
const summary = {
|
|
73
|
+
total: entries.length,
|
|
74
|
+
checked: entries.filter((entry) => entry.status === 'checked').length,
|
|
75
|
+
applied: entries.filter((entry) => entry.status === 'applied').length,
|
|
76
|
+
committed: entries.filter((entry) => entry.status === 'committed').length,
|
|
77
|
+
skipped: entries.filter((entry) => entry.status === 'skipped').length,
|
|
78
|
+
failed: entries.filter((entry) => entry.status === 'failed').length
|
|
79
|
+
};
|
|
80
|
+
return {
|
|
81
|
+
...result,
|
|
82
|
+
ok: summary.failed === 0 && result.ok,
|
|
83
|
+
entries,
|
|
84
|
+
admission: {
|
|
85
|
+
mode: admission.mode,
|
|
86
|
+
total: admission.entries.length,
|
|
87
|
+
accepted: admission.entries.filter((entry) => entry.status === 'accepted').length,
|
|
88
|
+
rejected: admission.entries.filter((entry) => entry.status === 'rejected').length,
|
|
89
|
+
warned: admission.entries.filter((entry) => entry.status === 'warn').length,
|
|
90
|
+
entries: admission.entries
|
|
91
|
+
},
|
|
92
|
+
summary
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
export function createEmptyApplyResult(input) {
|
|
96
|
+
return {
|
|
97
|
+
kind: FRONTIER_SWARM_GIT_APPLY_LEDGER_KIND,
|
|
98
|
+
version: FRONTIER_SWARM_GIT_APPLY_LEDGER_VERSION,
|
|
99
|
+
ok: true,
|
|
100
|
+
cwd: input.cwd,
|
|
101
|
+
collectionDir: input.collectionDir,
|
|
102
|
+
outDir: path.resolve(input.cwd, input.outDir ?? path.join(input.collectionDir, 'apply-ledger')),
|
|
103
|
+
generatedAt: Date.now(),
|
|
104
|
+
dryRun: input.dryRun,
|
|
105
|
+
entries: [],
|
|
106
|
+
summary: {
|
|
107
|
+
total: 0,
|
|
108
|
+
checked: 0,
|
|
109
|
+
applied: 0,
|
|
110
|
+
committed: 0,
|
|
111
|
+
skipped: 0,
|
|
112
|
+
failed: 0
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
async function readCodexApplyCandidateBundles(input) {
|
|
117
|
+
const bucket = input.bucket ?? 'ready-to-apply';
|
|
118
|
+
const bucketNames = ['ready-to-apply', 'research-complete', 'needs-human-port', 'rerun-work', 'failed-evidence', 'stale-against-head'];
|
|
119
|
+
const roots = bucket === 'all' ? bucketNames.map((entry) => path.join(input.collectionDir, entry)) : [path.join(input.collectionDir, bucket)];
|
|
120
|
+
const wanted = new Set(input.jobIds ?? []);
|
|
121
|
+
const mergePaths = (await Promise.all(roots.map((root) => findFilesByName(root, 'merge.json')))).flat().sort();
|
|
122
|
+
const selected = input.limit ? mergePaths.slice(0, Math.max(0, Math.floor(input.limit))) : mergePaths;
|
|
123
|
+
const bundles = [];
|
|
124
|
+
for (const bundlePath of selected) {
|
|
125
|
+
const bundle = JSON.parse(await fs.readFile(bundlePath, 'utf8'));
|
|
126
|
+
if (wanted.size && !wanted.has(bundle.jobId))
|
|
127
|
+
continue;
|
|
128
|
+
bundles.push({ bundlePath, bundle });
|
|
129
|
+
}
|
|
130
|
+
return bundles;
|
|
131
|
+
}
|
|
132
|
+
async function readCodexApplyQueueOutcomeModel(collectionDir) {
|
|
133
|
+
const collectionPath = path.join(collectionDir, 'collection.json');
|
|
134
|
+
if (await pathExists(collectionPath)) {
|
|
135
|
+
const parsed = JSON.parse(await fs.readFile(collectionPath, 'utf8'));
|
|
136
|
+
if (isObject(parsed.queueOutcomeModel) && Array.isArray(parsed.queueOutcomeModel.decisions))
|
|
137
|
+
return parsed.queueOutcomeModel;
|
|
138
|
+
}
|
|
139
|
+
const modelPath = path.join(collectionDir, 'queue-outcome-model.json');
|
|
140
|
+
if (!await pathExists(modelPath))
|
|
141
|
+
return undefined;
|
|
142
|
+
const parsed = JSON.parse(await fs.readFile(modelPath, 'utf8'));
|
|
143
|
+
return isObject(parsed) && Array.isArray(parsed.decisions) ? parsed : undefined;
|
|
144
|
+
}
|
|
145
|
+
function queueOutcomeDecisionsForBundle(model, bundle) {
|
|
146
|
+
if (!model)
|
|
147
|
+
return [];
|
|
148
|
+
const aliases = new Set(uniqueStrings([
|
|
149
|
+
bundle.jobId,
|
|
150
|
+
`job:${bundle.jobId}`,
|
|
151
|
+
bundle.taskId,
|
|
152
|
+
bundle.taskId ? `task:${bundle.taskId}` : undefined,
|
|
153
|
+
...bundle.queueItemIds,
|
|
154
|
+
...bundle.queueItemIds.map((id) => `queue:${id}`)
|
|
155
|
+
].filter((entry) => !!entry)));
|
|
156
|
+
return model.decisions.filter((decision) => {
|
|
157
|
+
if (decision.outcome !== 'ready' && decision.decision !== 'ready')
|
|
158
|
+
return false;
|
|
159
|
+
if (decision.jobId && aliases.has(decision.jobId))
|
|
160
|
+
return true;
|
|
161
|
+
if (decision.taskId && aliases.has(decision.taskId))
|
|
162
|
+
return true;
|
|
163
|
+
if (decision.subjectId && aliases.has(decision.subjectId))
|
|
164
|
+
return true;
|
|
165
|
+
return decision.subjectAliases.some((alias) => aliases.has(alias))
|
|
166
|
+
|| decision.queueItemIds.some((id) => aliases.has(id) || aliases.has(`queue:${id}`));
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
function gateEvidenceForBundle(bundle) {
|
|
170
|
+
return {
|
|
171
|
+
passedCommandCount: bundle.commandsPassed.length,
|
|
172
|
+
failedCommandCount: bundle.commandsFailed.length,
|
|
173
|
+
status: bundle.status,
|
|
174
|
+
mergeReadiness: bundle.mergeReadiness
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
function bundleHasGateEvidence(bundle, evidence) {
|
|
178
|
+
if (evidence.passedCommandCount > 0 && evidence.failedCommandCount === 0)
|
|
179
|
+
return true;
|
|
180
|
+
if (bundle.status === 'verified')
|
|
181
|
+
return true;
|
|
182
|
+
if (bundle.mergeReadiness === 'verified-patch')
|
|
183
|
+
return true;
|
|
184
|
+
const metadata = isObject(bundle.metadata) ? bundle.metadata : {};
|
|
185
|
+
return isObject(metadata.verificationGateEvidence);
|
|
186
|
+
}
|
|
187
|
+
//# sourceMappingURL=apply-admission.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apply-admission.js","sourceRoot":"","sources":["../src/apply-admission.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { FrontierCodexApplyResult } from './types-collection.js';
|
|
2
|
+
export declare function writeCodexApplyEvidence(result: FrontierCodexApplyResult): Promise<Pick<FrontierCodexApplyResult, 'gateExecutionsPath' | 'gateSummaryPath' | 'runEventsPath' | 'runDashboardPath' | 'evidence'>>;
|
|
3
|
+
//# sourceMappingURL=apply-evidence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apply-evidence.d.ts","sourceRoot":"","sources":["../src/apply-evidence.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAStE,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,IAAI,CAAC,wBAAwB,EAAE,oBAAoB,GAAG,iBAAiB,GAAG,eAAe,GAAG,kBAAkB,GAAG,UAAU,CAAC,CAAC,CAwCvI"}
|
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
import fs from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { createRunEvent, createRunNodeEvent, defineRunDecision, defineRunVerification } from '@shapeshift-labs/frontier-run';
|
|
4
|
+
import { recordTestGateExecution, summarizeTestGateExecutions } from '@shapeshift-labs/frontier-test';
|
|
5
|
+
import { writeCodexRunDashboard, writeCodexRunEvents } from './run-events.js';
|
|
6
|
+
const APPLY_GATE_EXECUTIONS_FILE = 'gate-executions.jsonl';
|
|
7
|
+
const APPLY_GATE_SUMMARY_FILE = 'gate-summary.json';
|
|
8
|
+
const APPLY_RUN_EVENTS_FILE = 'run-events.jsonl';
|
|
9
|
+
const APPLY_RUN_DASHBOARD_FILE = 'run-dashboard.json';
|
|
10
|
+
export async function writeCodexApplyEvidence(result) {
|
|
11
|
+
await fs.mkdir(result.outDir, { recursive: true });
|
|
12
|
+
const applyLedgerPath = path.join(result.outDir, 'apply-ledger.json');
|
|
13
|
+
const gateExecutionsPath = path.join(result.outDir, APPLY_GATE_EXECUTIONS_FILE);
|
|
14
|
+
const gateSummaryPath = path.join(result.outDir, APPLY_GATE_SUMMARY_FILE);
|
|
15
|
+
const runEventsPath = path.join(result.outDir, APPLY_RUN_EVENTS_FILE);
|
|
16
|
+
const runDashboardPath = path.join(result.outDir, APPLY_RUN_DASHBOARD_FILE);
|
|
17
|
+
const gateExecutions = createCodexApplyGateExecutions(result, applyLedgerPath);
|
|
18
|
+
await fs.writeFile(gateExecutionsPath, gateExecutions.map((record) => JSON.stringify(record)).join('\n') + (gateExecutions.length ? '\n' : ''));
|
|
19
|
+
await fs.writeFile(gateSummaryPath, JSON.stringify(summarizeTestGateExecutions({
|
|
20
|
+
executions: gateExecutions,
|
|
21
|
+
packageScope: ['@shapeshift-labs/frontier-swarm-codex'],
|
|
22
|
+
artifacts: [relativePath(result.cwd, applyLedgerPath)]
|
|
23
|
+
}), null, 2) + '\n');
|
|
24
|
+
const runEvents = createCodexApplyRunEvents(result, gateExecutions, {
|
|
25
|
+
applyLedgerPath,
|
|
26
|
+
gateExecutionsPath,
|
|
27
|
+
gateSummaryPath
|
|
28
|
+
});
|
|
29
|
+
await writeCodexRunEvents(runEventsPath, runEvents);
|
|
30
|
+
await writeCodexRunDashboard(runDashboardPath, runEvents, {
|
|
31
|
+
runId: codexApplyRunId(result),
|
|
32
|
+
goal: `Apply Frontier swarm collection ${relativePath(result.cwd, result.collectionDir)}`,
|
|
33
|
+
metadata: {
|
|
34
|
+
source: 'frontier-swarm-codex.apply',
|
|
35
|
+
collectionDir: relativePath(result.cwd, result.collectionDir),
|
|
36
|
+
applyLedgerPath: relativePath(result.cwd, applyLedgerPath),
|
|
37
|
+
gateExecutionsPath: relativePath(result.cwd, gateExecutionsPath)
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
return {
|
|
41
|
+
gateExecutionsPath,
|
|
42
|
+
gateSummaryPath,
|
|
43
|
+
runEventsPath,
|
|
44
|
+
runDashboardPath,
|
|
45
|
+
evidence: {
|
|
46
|
+
gateExecutionCount: gateExecutions.length,
|
|
47
|
+
runEventCount: runEvents.length
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
function createCodexApplyGateExecutions(result, applyLedgerPath) {
|
|
52
|
+
const artifact = relativePath(result.cwd, applyLedgerPath);
|
|
53
|
+
const records = [];
|
|
54
|
+
for (const entry of result.entries) {
|
|
55
|
+
if (!entry.commands.length) {
|
|
56
|
+
records.push(recordTestGateExecution({
|
|
57
|
+
id: `gate.apply.${slug(entry.jobId)}.admission`,
|
|
58
|
+
kind: 'apply-admission',
|
|
59
|
+
status: entry.status === 'skipped' ? 'skipped' : entry.status === 'failed' ? 'failed' : 'unknown',
|
|
60
|
+
required: entry.status !== 'skipped',
|
|
61
|
+
startedAt: result.generatedAt,
|
|
62
|
+
finishedAt: result.generatedAt,
|
|
63
|
+
command: ['frontier-swarm-codex', 'apply'],
|
|
64
|
+
artifacts: [artifact],
|
|
65
|
+
package: '@shapeshift-labs/frontier-swarm-codex',
|
|
66
|
+
packageScope: ['@shapeshift-labs/frontier-swarm-codex'],
|
|
67
|
+
message: entry.error ?? `apply ${entry.status}`,
|
|
68
|
+
metadata: applyGateMetadata(result, entry, applyLedgerPath, 0)
|
|
69
|
+
}));
|
|
70
|
+
continue;
|
|
71
|
+
}
|
|
72
|
+
entry.commands.forEach((command, index) => {
|
|
73
|
+
records.push(recordTestGateExecution({
|
|
74
|
+
id: `gate.apply.${slug(entry.jobId)}.${index + 1}.${slug(command.command.join('-'))}`,
|
|
75
|
+
kind: applyGateKind(command.command),
|
|
76
|
+
status: command.status === 0 ? 'passed' : 'failed',
|
|
77
|
+
required: true,
|
|
78
|
+
startedAt: result.generatedAt,
|
|
79
|
+
finishedAt: result.generatedAt,
|
|
80
|
+
command: command.command,
|
|
81
|
+
exitCode: command.status,
|
|
82
|
+
stdoutTail: command.stdoutTail,
|
|
83
|
+
stderrTail: command.stderrTail,
|
|
84
|
+
failureTail: command.status === 0 ? [] : command.stderrTail,
|
|
85
|
+
artifacts: [artifact],
|
|
86
|
+
package: '@shapeshift-labs/frontier-swarm-codex',
|
|
87
|
+
packageScope: ['@shapeshift-labs/frontier-swarm-codex'],
|
|
88
|
+
message: command.status === 0 ? `apply command passed for ${entry.jobId}` : entry.error ?? `apply command failed for ${entry.jobId}`,
|
|
89
|
+
metadata: applyGateMetadata(result, entry, applyLedgerPath, index)
|
|
90
|
+
}));
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
return records;
|
|
94
|
+
}
|
|
95
|
+
function createCodexApplyRunEvents(result, gateExecutions, paths) {
|
|
96
|
+
const runId = codexApplyRunId(result);
|
|
97
|
+
const actorId = 'coordinator:apply';
|
|
98
|
+
const events = [];
|
|
99
|
+
let actorSeq = 1;
|
|
100
|
+
const push = (event) => {
|
|
101
|
+
events.push(event);
|
|
102
|
+
return event;
|
|
103
|
+
};
|
|
104
|
+
const created = push(createRunEvent({
|
|
105
|
+
runId,
|
|
106
|
+
actorId,
|
|
107
|
+
actorSeq: actorSeq++,
|
|
108
|
+
time: new Date(result.generatedAt).toISOString(),
|
|
109
|
+
type: 'run.created',
|
|
110
|
+
payload: {
|
|
111
|
+
goal: `Apply Frontier swarm collection ${relativePath(result.cwd, result.collectionDir)}`,
|
|
112
|
+
metadata: {
|
|
113
|
+
source: 'frontier-swarm-codex.apply',
|
|
114
|
+
dryRun: result.dryRun,
|
|
115
|
+
collectionDir: relativePath(result.cwd, result.collectionDir),
|
|
116
|
+
applyLedgerPath: relativePath(result.cwd, paths.applyLedgerPath),
|
|
117
|
+
gateExecutionsPath: relativePath(result.cwd, paths.gateExecutionsPath),
|
|
118
|
+
gateSummaryPath: relativePath(result.cwd, paths.gateSummaryPath),
|
|
119
|
+
summary: result.summary
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}));
|
|
123
|
+
let parentId = created.id;
|
|
124
|
+
for (const gate of gateExecutions) {
|
|
125
|
+
const verification = defineRunVerification({
|
|
126
|
+
id: `verification:${gate.id}`,
|
|
127
|
+
title: gate.command.join(' ') || gate.gateKind,
|
|
128
|
+
status: runVerificationStatus(gate.status),
|
|
129
|
+
command: gate.command[0],
|
|
130
|
+
args: gate.command.slice(1),
|
|
131
|
+
cwd: gate.cwd,
|
|
132
|
+
exitCode: gate.exitCode,
|
|
133
|
+
startedAt: new Date(gate.startedAt).toISOString(),
|
|
134
|
+
endedAt: new Date(gate.finishedAt).toISOString(),
|
|
135
|
+
required: gate.required,
|
|
136
|
+
summary: gate.message,
|
|
137
|
+
metadata: {
|
|
138
|
+
gateExecutionId: gate.id,
|
|
139
|
+
gateKind: gate.gateKind,
|
|
140
|
+
gateExecutionsPath: relativePath(result.cwd, paths.gateExecutionsPath),
|
|
141
|
+
applyLedgerPath: relativePath(result.cwd, paths.applyLedgerPath),
|
|
142
|
+
...(gate.metadata ?? {})
|
|
143
|
+
}
|
|
144
|
+
});
|
|
145
|
+
parentId = push(createRunNodeEvent(runId, actorId, actorSeq++, verification, {
|
|
146
|
+
parents: [parentId],
|
|
147
|
+
time: new Date(gate.finishedAt).toISOString()
|
|
148
|
+
})).id;
|
|
149
|
+
}
|
|
150
|
+
for (const entry of result.entries) {
|
|
151
|
+
const gateIds = gateExecutions
|
|
152
|
+
.filter((gate) => String(gate.metadata?.jobId ?? '') === entry.jobId)
|
|
153
|
+
.map((gate) => gate.id);
|
|
154
|
+
const decision = defineRunDecision({
|
|
155
|
+
id: `decision:apply:${slug(entry.jobId)}`,
|
|
156
|
+
title: `Apply ${entry.jobId}`,
|
|
157
|
+
decision: applyDecisionKind(entry.status),
|
|
158
|
+
subjectIds: [`job:${entry.jobId}`, ...gateIds.map((id) => `verification:${id}`), ...(entry.patchPath ? [`patch:${entry.jobId}`] : [])],
|
|
159
|
+
actorId,
|
|
160
|
+
reason: entry.error ?? applyDecisionReason(entry.status, result.dryRun),
|
|
161
|
+
requiredActions: applyDecisionRequiredActions(entry.status, entry.error),
|
|
162
|
+
metadata: jsonObject({
|
|
163
|
+
source: 'frontier-swarm-codex.apply',
|
|
164
|
+
jobId: entry.jobId,
|
|
165
|
+
applyStatus: entry.status,
|
|
166
|
+
dryRun: entry.dryRun,
|
|
167
|
+
bundlePath: relativePath(result.cwd, entry.bundlePath),
|
|
168
|
+
...(entry.patchPath ? { patchPath: relativePath(result.cwd, entry.patchPath) } : {}),
|
|
169
|
+
...(entry.commit ? { commit: entry.commit } : {}),
|
|
170
|
+
applyLedgerPath: relativePath(result.cwd, paths.applyLedgerPath),
|
|
171
|
+
gateExecutionsPath: relativePath(result.cwd, paths.gateExecutionsPath),
|
|
172
|
+
gateExecutionIds: gateIds,
|
|
173
|
+
...(entry.semanticLease ? { semanticLease: entry.semanticLease } : {}),
|
|
174
|
+
...(entry.admission ? { admission: entry.admission } : {})
|
|
175
|
+
})
|
|
176
|
+
});
|
|
177
|
+
parentId = push(createRunEvent({
|
|
178
|
+
runId,
|
|
179
|
+
actorId,
|
|
180
|
+
actorSeq: actorSeq++,
|
|
181
|
+
parents: [parentId],
|
|
182
|
+
time: new Date(result.generatedAt).toISOString(),
|
|
183
|
+
type: 'decision.recorded',
|
|
184
|
+
payload: { decision: decision }
|
|
185
|
+
})).id;
|
|
186
|
+
}
|
|
187
|
+
return events;
|
|
188
|
+
}
|
|
189
|
+
function applyGateMetadata(result, entry, applyLedgerPath, commandIndex) {
|
|
190
|
+
return {
|
|
191
|
+
source: 'frontier-swarm-codex.apply',
|
|
192
|
+
jobId: entry.jobId,
|
|
193
|
+
applyStatus: entry.status,
|
|
194
|
+
dryRun: entry.dryRun,
|
|
195
|
+
commandIndex,
|
|
196
|
+
collectionDir: relativePath(result.cwd, result.collectionDir),
|
|
197
|
+
bundlePath: relativePath(result.cwd, entry.bundlePath),
|
|
198
|
+
...(entry.patchPath ? { patchPath: relativePath(result.cwd, entry.patchPath) } : {}),
|
|
199
|
+
applyLedgerPath: relativePath(result.cwd, applyLedgerPath),
|
|
200
|
+
semanticLease: entry.semanticLease,
|
|
201
|
+
admission: entry.admission
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
function applyGateKind(command) {
|
|
205
|
+
const normalized = command.map((part) => part.toLowerCase());
|
|
206
|
+
if (normalized[0] === 'git' && normalized[1] === 'apply' && normalized.includes('--check'))
|
|
207
|
+
return 'git-apply-check';
|
|
208
|
+
if (normalized[0] === 'git' && normalized[1] === 'apply')
|
|
209
|
+
return 'git-apply';
|
|
210
|
+
if (normalized[0] === 'git' && normalized[1] === 'commit')
|
|
211
|
+
return 'git-commit';
|
|
212
|
+
if (normalized[0] === 'git' && normalized[1] === 'add')
|
|
213
|
+
return 'git-add';
|
|
214
|
+
if (normalized[0] === 'git' && normalized[1] === 'switch')
|
|
215
|
+
return 'git-branch';
|
|
216
|
+
return normalized.filter(Boolean).slice(0, 2).join('-') || 'apply-command';
|
|
217
|
+
}
|
|
218
|
+
function applyDecisionKind(status) {
|
|
219
|
+
if (status === 'applied' || status === 'committed')
|
|
220
|
+
return 'apply';
|
|
221
|
+
if (status === 'failed')
|
|
222
|
+
return 'rerun';
|
|
223
|
+
return 'record-only';
|
|
224
|
+
}
|
|
225
|
+
function applyDecisionReason(status, dryRun) {
|
|
226
|
+
if (status === 'checked')
|
|
227
|
+
return dryRun ? 'Patch passed apply check in dry run.' : 'Patch was checked.';
|
|
228
|
+
if (status === 'applied')
|
|
229
|
+
return 'Patch applied.';
|
|
230
|
+
if (status === 'committed')
|
|
231
|
+
return 'Patch applied and committed.';
|
|
232
|
+
if (status === 'skipped')
|
|
233
|
+
return 'Apply skipped for record-only bundle.';
|
|
234
|
+
return 'Apply failed; rerun or rebase is required.';
|
|
235
|
+
}
|
|
236
|
+
function applyDecisionRequiredActions(status, error) {
|
|
237
|
+
if (status !== 'failed')
|
|
238
|
+
return [];
|
|
239
|
+
if (error?.includes('semantic lease'))
|
|
240
|
+
return ['resolve-lease'];
|
|
241
|
+
if (error?.includes('git apply'))
|
|
242
|
+
return ['rerun-or-rebase'];
|
|
243
|
+
return ['coordinator-review'];
|
|
244
|
+
}
|
|
245
|
+
function runVerificationStatus(status) {
|
|
246
|
+
if (status === 'passed')
|
|
247
|
+
return 'passed';
|
|
248
|
+
if (status === 'failed' || status === 'blocked')
|
|
249
|
+
return 'failed';
|
|
250
|
+
if (status === 'skipped')
|
|
251
|
+
return 'skipped';
|
|
252
|
+
return 'pending';
|
|
253
|
+
}
|
|
254
|
+
function codexApplyRunId(result) {
|
|
255
|
+
return `frontier-swarm-codex:apply:${relativePath(result.cwd, result.collectionDir)}`;
|
|
256
|
+
}
|
|
257
|
+
function relativePath(cwd, file) {
|
|
258
|
+
return path.relative(cwd, file).replaceAll(path.sep, '/') || '.';
|
|
259
|
+
}
|
|
260
|
+
function slug(value) {
|
|
261
|
+
return value.toLowerCase().replace(/[^a-z0-9._-]+/g, '-').replace(/^-+|-+$/g, '') || 'item';
|
|
262
|
+
}
|
|
263
|
+
function jsonObject(value) {
|
|
264
|
+
return JSON.parse(JSON.stringify(value));
|
|
265
|
+
}
|
|
266
|
+
//# sourceMappingURL=apply-evidence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apply-evidence.js","sourceRoot":"","sources":["../src/apply-evidence.ts"],"names":[],"mappings":"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"}
|
package/dist/apply.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { FrontierCodexApplyInput, FrontierCodexApplyResult } from './
|
|
1
|
+
import type { FrontierCodexApplyInput, FrontierCodexApplyResult } from './types-collection.js';
|
|
2
2
|
export declare function applyCodexSwarmCollection(input: FrontierCodexApplyInput): Promise<FrontierCodexApplyResult>;
|
|
3
3
|
//# sourceMappingURL=apply.d.ts.map
|
package/dist/apply.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAS/F,wBAAsB,yBAAyB,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CA8CjH"}
|