@mannyc1/ts-release 0.0.6 → 0.0.7
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/ARCHITECTURE.md +13 -8
- package/README.md +226 -448
- package/SPEC.md +48 -43
- package/dist/artifacts/adapter.d.ts +39 -0
- package/dist/artifacts/adapter.d.ts.map +1 -0
- package/dist/artifacts/adapter.js +23 -0
- package/dist/artifacts/adapter.js.map +1 -0
- package/dist/artifacts/registry.d.ts +21 -0
- package/dist/artifacts/registry.d.ts.map +1 -0
- package/dist/artifacts/registry.js +21 -0
- package/dist/artifacts/registry.js.map +1 -0
- package/dist/config/schema.js +1 -1
- package/dist/config/schema.js.map +1 -1
- package/dist/domain/artifact.d.ts +85 -3
- package/dist/domain/artifact.d.ts.map +1 -1
- package/dist/domain/artifact.js +171 -3
- package/dist/domain/artifact.js.map +1 -1
- package/dist/domain/evidence.d.ts +16 -65
- package/dist/domain/evidence.d.ts.map +1 -1
- package/dist/domain/evidence.js +15 -60
- package/dist/domain/evidence.js.map +1 -1
- package/dist/domain/operation.d.ts +7 -17
- package/dist/domain/operation.d.ts.map +1 -1
- package/dist/domain/operation.js +22 -144
- package/dist/domain/operation.js.map +1 -1
- package/dist/domain/release.d.ts +1 -49
- package/dist/domain/release.d.ts.map +1 -1
- package/dist/domain/release.js +2 -47
- package/dist/domain/release.js.map +1 -1
- package/dist/domain/remote-state.d.ts +0 -27
- package/dist/domain/remote-state.d.ts.map +1 -1
- package/dist/domain/remote-state.js +1 -23
- package/dist/domain/remote-state.js.map +1 -1
- package/dist/domain/target.d.ts +14 -1
- package/dist/domain/target.d.ts.map +1 -1
- package/dist/domain/target.js +17 -3
- package/dist/domain/target.js.map +1 -1
- package/dist/planner/artifact-inventory.d.ts.map +1 -1
- package/dist/planner/artifact-inventory.js +3 -1
- package/dist/planner/artifact-inventory.js.map +1 -1
- package/dist/planner/errors.d.ts +2 -16
- package/dist/planner/errors.d.ts.map +1 -1
- package/dist/planner/errors.js +2 -14
- package/dist/planner/errors.js.map +1 -1
- package/dist/planner/evidence-recorder.d.ts +8 -6
- package/dist/planner/evidence-recorder.d.ts.map +1 -1
- package/dist/planner/evidence-recorder.js +50 -18
- package/dist/planner/evidence-recorder.js.map +1 -1
- package/dist/planner/executor.d.ts +12 -12
- package/dist/planner/executor.d.ts.map +1 -1
- package/dist/planner/executor.js +43 -55
- package/dist/planner/executor.js.map +1 -1
- package/dist/planner/normalize-release.d.ts +3 -0
- package/dist/planner/normalize-release.d.ts.map +1 -1
- package/dist/planner/normalize-release.js +128 -4
- package/dist/planner/normalize-release.js.map +1 -1
- package/dist/planner/reconcile.d.ts.map +1 -1
- package/dist/planner/reconcile.js +2 -4
- package/dist/planner/reconcile.js.map +1 -1
- package/dist/planner/render-plan.d.ts.map +1 -1
- package/dist/planner/render-plan.js +12 -19
- package/dist/planner/render-plan.js.map +1 -1
- package/dist/targets/adapter-helpers.d.ts +20 -5
- package/dist/targets/adapter-helpers.d.ts.map +1 -1
- package/dist/targets/adapter-helpers.js +77 -7
- package/dist/targets/adapter-helpers.js.map +1 -1
- package/dist/targets/github.d.ts.map +1 -1
- package/dist/targets/github.js +1 -9
- package/dist/targets/github.js.map +1 -1
- package/dist/targets/homebrew.d.ts.map +1 -1
- package/dist/targets/homebrew.js +131 -18
- package/dist/targets/homebrew.js.map +1 -1
- package/dist/targets/npm.d.ts.map +1 -1
- package/dist/targets/npm.js +1 -7
- package/dist/targets/npm.js.map +1 -1
- package/dist/targets/pypi.d.ts.map +1 -1
- package/dist/targets/pypi.js +50 -12
- package/dist/targets/pypi.js.map +1 -1
- package/dist/targets/scoop.d.ts.map +1 -1
- package/dist/targets/scoop.js +18 -8
- package/dist/targets/scoop.js.map +1 -1
- package/dist/workflows/config.d.ts +69 -119
- package/dist/workflows/config.d.ts.map +1 -1
- package/dist/workflows/config.js +80 -125
- package/dist/workflows/config.js.map +1 -1
- package/dist/workflows/diagnostics.d.ts.map +1 -1
- package/dist/workflows/diagnostics.js +6 -3
- package/dist/workflows/diagnostics.js.map +1 -1
- package/dist/workflows/distribution.d.ts +25 -0
- package/dist/workflows/distribution.d.ts.map +1 -0
- package/dist/workflows/distribution.js +24 -0
- package/dist/workflows/distribution.js.map +1 -0
- package/dist/workflows/evidence.d.ts +4 -13
- package/dist/workflows/evidence.d.ts.map +1 -1
- package/dist/workflows/evidence.js +15 -27
- package/dist/workflows/evidence.js.map +1 -1
- package/dist/workflows/index.d.ts +1 -0
- package/dist/workflows/index.d.ts.map +1 -1
- package/dist/workflows/index.js +1 -0
- package/dist/workflows/index.js.map +1 -1
- package/dist/workflows/init.d.ts +3 -3
- package/dist/workflows/init.d.ts.map +1 -1
- package/dist/workflows/init.js +46 -0
- package/dist/workflows/init.js.map +1 -1
- package/examples/README.md +4 -4
- package/package.json +18 -15
- package/templates/README.md +15 -2
- package/templates/bun-cli-github/README.md +14 -0
- package/templates/bun-cli-github/release.config.json +89 -0
- package/dist/domain/status.d.ts +0 -43
- package/dist/domain/status.d.ts.map +0 -1
- package/dist/domain/status.js +0 -51
- package/dist/domain/status.js.map +0 -1
- package/dist/internal/workflow-phases.d.ts +0 -3
- package/dist/internal/workflow-phases.d.ts.map +0 -1
- package/dist/internal/workflow-phases.js +0 -2
- package/dist/internal/workflow-phases.js.map +0 -1
- package/dist/planner/release-eligibility.d.ts +0 -39
- package/dist/planner/release-eligibility.d.ts.map +0 -1
- package/dist/planner/release-eligibility.js +0 -578
- package/dist/planner/release-eligibility.js.map +0 -1
- package/dist/planner/status.d.ts +0 -40
- package/dist/planner/status.d.ts.map +0 -1
- package/dist/planner/status.js +0 -313
- package/dist/planner/status.js.map +0 -1
package/dist/domain/artifact.js
CHANGED
|
@@ -1,29 +1,197 @@
|
|
|
1
1
|
import * as Schema from "effect/Schema";
|
|
2
2
|
export const ArtifactId = Schema.NonEmptyString;
|
|
3
|
-
export const ArtifactFormat = Schema.Literals(["tarball", "zip", "file", "directory", "oci-image"]);
|
|
3
|
+
export const ArtifactFormat = Schema.Literals(["tarball", "zip", "file", "directory", "oci-image", "executable"]);
|
|
4
4
|
export const ChecksumAlgorithm = Schema.Literals(["sha256", "sha512"]);
|
|
5
|
+
export const ArtifactRecipeId = Schema.NonEmptyString;
|
|
6
|
+
export const ArtifactOperatingSystem = Schema.Literals(["linux", "darwin", "windows"]);
|
|
7
|
+
export const ArtifactArchitecture = Schema.Literals(["x64", "arm64"]);
|
|
8
|
+
export const ArtifactLibc = Schema.Literals(["glibc", "musl"]);
|
|
9
|
+
export const BunExecutableCompileTarget = Schema.Literals([
|
|
10
|
+
"bun-linux-x64",
|
|
11
|
+
"bun-linux-x64-baseline",
|
|
12
|
+
"bun-linux-x64-modern",
|
|
13
|
+
"bun-linux-arm64",
|
|
14
|
+
"bun-windows-x64",
|
|
15
|
+
"bun-windows-x64-baseline",
|
|
16
|
+
"bun-windows-x64-modern",
|
|
17
|
+
"bun-windows-arm64",
|
|
18
|
+
"bun-darwin-x64",
|
|
19
|
+
"bun-darwin-x64-baseline",
|
|
20
|
+
"bun-darwin-x64-modern",
|
|
21
|
+
"bun-darwin-arm64",
|
|
22
|
+
"bun-linux-x64-musl",
|
|
23
|
+
"bun-linux-x64-baseline-musl",
|
|
24
|
+
"bun-linux-x64-modern-musl",
|
|
25
|
+
"bun-linux-arm64-musl"
|
|
26
|
+
]);
|
|
5
27
|
export class Checksum extends Schema.Class("Checksum")({
|
|
6
28
|
algorithm: ChecksumAlgorithm,
|
|
7
29
|
value: Schema.String
|
|
8
30
|
}) {
|
|
9
31
|
}
|
|
32
|
+
export class InstallableArtifactVariant extends Schema.Class("InstallableArtifactVariant")({
|
|
33
|
+
os: ArtifactOperatingSystem,
|
|
34
|
+
arch: ArtifactArchitecture,
|
|
35
|
+
libc: Schema.optionalKey(ArtifactLibc),
|
|
36
|
+
binaryName: Schema.optionalKey(Schema.NonEmptyString),
|
|
37
|
+
executableExtension: Schema.optionalKey(Schema.NonEmptyString),
|
|
38
|
+
installPath: Schema.optionalKey(Schema.NonEmptyString),
|
|
39
|
+
targetTriple: Schema.optionalKey(Schema.NonEmptyString)
|
|
40
|
+
}) {
|
|
41
|
+
}
|
|
42
|
+
export class InstallableArtifactVariantOverride extends Schema.Class("InstallableArtifactVariantOverride")({
|
|
43
|
+
os: Schema.optionalKey(ArtifactOperatingSystem),
|
|
44
|
+
arch: Schema.optionalKey(ArtifactArchitecture),
|
|
45
|
+
libc: Schema.optionalKey(ArtifactLibc),
|
|
46
|
+
binaryName: Schema.optionalKey(Schema.NonEmptyString),
|
|
47
|
+
executableExtension: Schema.optionalKey(Schema.NonEmptyString),
|
|
48
|
+
installPath: Schema.optionalKey(Schema.NonEmptyString),
|
|
49
|
+
targetTriple: Schema.optionalKey(Schema.NonEmptyString)
|
|
50
|
+
}) {
|
|
51
|
+
}
|
|
10
52
|
export class ArtifactIntent extends Schema.Class("ArtifactIntent")({
|
|
11
53
|
id: ArtifactId,
|
|
12
54
|
path: Schema.String,
|
|
55
|
+
downloadUrl: Schema.optionalKey(Schema.String),
|
|
13
56
|
format: ArtifactFormat,
|
|
14
57
|
consumers: Schema.Array(Schema.String),
|
|
15
|
-
checksum: Schema.optionalKey(Checksum)
|
|
58
|
+
checksum: Schema.optionalKey(Checksum),
|
|
59
|
+
variant: Schema.optionalKey(InstallableArtifactVariant)
|
|
60
|
+
}) {
|
|
61
|
+
}
|
|
62
|
+
export class BunExecutableArtifactOutput extends Schema.Class("BunExecutableArtifactOutput")({
|
|
63
|
+
id: ArtifactId,
|
|
64
|
+
target: BunExecutableCompileTarget,
|
|
65
|
+
path: Schema.String,
|
|
66
|
+
downloadUrl: Schema.optionalKey(Schema.String),
|
|
67
|
+
consumers: Schema.Array(Schema.String),
|
|
68
|
+
variant: Schema.optionalKey(InstallableArtifactVariantOverride)
|
|
69
|
+
}) {
|
|
70
|
+
}
|
|
71
|
+
export class BunExecutableArtifactRecipe extends Schema.TaggedClass()("BunExecutableArtifactRecipe", {
|
|
72
|
+
id: ArtifactRecipeId,
|
|
73
|
+
entrypoint: Schema.String,
|
|
74
|
+
outputs: Schema.Array(BunExecutableArtifactOutput),
|
|
75
|
+
minify: Schema.optionalKey(Schema.Boolean)
|
|
76
|
+
}) {
|
|
77
|
+
}
|
|
78
|
+
export class PyPiWheelBinaryArtifact extends Schema.Class("PyPiWheelBinaryArtifact")({
|
|
79
|
+
os: ArtifactOperatingSystem,
|
|
80
|
+
arch: ArtifactArchitecture,
|
|
81
|
+
sourcePath: Schema.String,
|
|
82
|
+
wheelPath: Schema.String
|
|
83
|
+
}) {
|
|
84
|
+
}
|
|
85
|
+
export class PyPiWheelArtifactRecipe extends Schema.TaggedClass()("PyPiWheelArtifactRecipe", {
|
|
86
|
+
id: ArtifactId,
|
|
87
|
+
path: Schema.String,
|
|
88
|
+
wheelTag: Schema.String,
|
|
89
|
+
packageName: Schema.String,
|
|
90
|
+
moduleName: Schema.String,
|
|
91
|
+
consoleScript: Schema.String,
|
|
92
|
+
summary: Schema.String,
|
|
93
|
+
homepage: Schema.String,
|
|
94
|
+
license: Schema.String,
|
|
95
|
+
requiresPython: Schema.String,
|
|
96
|
+
binaries: Schema.Array(PyPiWheelBinaryArtifact),
|
|
97
|
+
consumers: Schema.Array(Schema.String)
|
|
16
98
|
}) {
|
|
17
99
|
}
|
|
100
|
+
export const ArtifactRecipe = Schema.Union([BunExecutableArtifactRecipe, PyPiWheelArtifactRecipe]);
|
|
18
101
|
export class ArtifactInventoryItem extends Schema.Class("ArtifactInventoryItem")({
|
|
19
102
|
id: ArtifactId,
|
|
20
103
|
path: Schema.String,
|
|
104
|
+
downloadUrl: Schema.optionalKey(Schema.String),
|
|
21
105
|
format: ArtifactFormat,
|
|
22
106
|
consumers: Schema.Array(Schema.String),
|
|
23
107
|
sizeBytes: Schema.Number,
|
|
24
|
-
checksum: Schema.optionalKey(Checksum)
|
|
108
|
+
checksum: Schema.optionalKey(Checksum),
|
|
109
|
+
variant: Schema.optionalKey(InstallableArtifactVariant)
|
|
25
110
|
}) {
|
|
26
111
|
}
|
|
112
|
+
export const bunExecutableCompileTargetVariant = (target) => {
|
|
113
|
+
switch (target) {
|
|
114
|
+
case "bun-linux-x64":
|
|
115
|
+
case "bun-linux-x64-baseline":
|
|
116
|
+
case "bun-linux-x64-modern":
|
|
117
|
+
return InstallableArtifactVariant.make({
|
|
118
|
+
os: "linux",
|
|
119
|
+
arch: "x64",
|
|
120
|
+
libc: "glibc",
|
|
121
|
+
targetTriple: target
|
|
122
|
+
});
|
|
123
|
+
case "bun-linux-arm64":
|
|
124
|
+
return InstallableArtifactVariant.make({
|
|
125
|
+
os: "linux",
|
|
126
|
+
arch: "arm64",
|
|
127
|
+
libc: "glibc",
|
|
128
|
+
targetTriple: target
|
|
129
|
+
});
|
|
130
|
+
case "bun-linux-x64-musl":
|
|
131
|
+
case "bun-linux-x64-baseline-musl":
|
|
132
|
+
case "bun-linux-x64-modern-musl":
|
|
133
|
+
return InstallableArtifactVariant.make({
|
|
134
|
+
os: "linux",
|
|
135
|
+
arch: "x64",
|
|
136
|
+
libc: "musl",
|
|
137
|
+
targetTriple: target
|
|
138
|
+
});
|
|
139
|
+
case "bun-linux-arm64-musl":
|
|
140
|
+
return InstallableArtifactVariant.make({
|
|
141
|
+
os: "linux",
|
|
142
|
+
arch: "arm64",
|
|
143
|
+
libc: "musl",
|
|
144
|
+
targetTriple: target
|
|
145
|
+
});
|
|
146
|
+
case "bun-darwin-x64":
|
|
147
|
+
case "bun-darwin-x64-baseline":
|
|
148
|
+
case "bun-darwin-x64-modern":
|
|
149
|
+
return InstallableArtifactVariant.make({
|
|
150
|
+
os: "darwin",
|
|
151
|
+
arch: "x64",
|
|
152
|
+
targetTriple: target
|
|
153
|
+
});
|
|
154
|
+
case "bun-darwin-arm64":
|
|
155
|
+
return InstallableArtifactVariant.make({
|
|
156
|
+
os: "darwin",
|
|
157
|
+
arch: "arm64",
|
|
158
|
+
targetTriple: target
|
|
159
|
+
});
|
|
160
|
+
case "bun-windows-x64":
|
|
161
|
+
case "bun-windows-x64-baseline":
|
|
162
|
+
case "bun-windows-x64-modern":
|
|
163
|
+
return InstallableArtifactVariant.make({
|
|
164
|
+
os: "windows",
|
|
165
|
+
arch: "x64",
|
|
166
|
+
executableExtension: ".exe",
|
|
167
|
+
targetTriple: target
|
|
168
|
+
});
|
|
169
|
+
case "bun-windows-arm64":
|
|
170
|
+
return InstallableArtifactVariant.make({
|
|
171
|
+
os: "windows",
|
|
172
|
+
arch: "arm64",
|
|
173
|
+
executableExtension: ".exe",
|
|
174
|
+
targetTriple: target
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
export const bunExecutableOutputVariant = (target, override) => {
|
|
179
|
+
const derived = bunExecutableCompileTargetVariant(target);
|
|
180
|
+
const fields = {
|
|
181
|
+
os: override?.os ?? derived.os,
|
|
182
|
+
arch: override?.arch ?? derived.arch,
|
|
183
|
+
...(override?.libc !== undefined
|
|
184
|
+
? { libc: override.libc }
|
|
185
|
+
: derived.libc === undefined ? {} : { libc: derived.libc }),
|
|
186
|
+
...(override?.binaryName === undefined ? {} : { binaryName: override.binaryName }),
|
|
187
|
+
...(override?.executableExtension !== undefined
|
|
188
|
+
? { executableExtension: override.executableExtension }
|
|
189
|
+
: derived.executableExtension === undefined ? {} : { executableExtension: derived.executableExtension }),
|
|
190
|
+
...(override?.installPath === undefined ? {} : { installPath: override.installPath }),
|
|
191
|
+
targetTriple: override?.targetTriple ?? derived.targetTriple ?? target
|
|
192
|
+
};
|
|
193
|
+
return InstallableArtifactVariant.make(fields);
|
|
194
|
+
};
|
|
27
195
|
export const artifactIntentOrder = (left, right) => left.id.localeCompare(right.id);
|
|
28
196
|
export const artifactInventoryOrder = (left, right) => left.id.localeCompare(right.id);
|
|
29
197
|
//# sourceMappingURL=artifact.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../src/domain/artifact.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAIvC,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAA;AAG/C,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../src/domain/artifact.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,23 +7,8 @@ export declare const EvidenceSeverity: Schema.Literals<readonly ["info", "warnin
|
|
|
7
7
|
export type EvidenceSeverity = typeof EvidenceSeverity.Type;
|
|
8
8
|
export declare const EvidenceStatus: Schema.Literals<readonly ["passed", "failed", "skipped", "warning"]>;
|
|
9
9
|
export type EvidenceStatus = typeof EvidenceStatus.Type;
|
|
10
|
-
declare const
|
|
11
|
-
|
|
12
|
-
readonly operationId: Schema.NonEmptyString;
|
|
13
|
-
readonly operationFingerprint: Schema.String;
|
|
14
|
-
readonly targetId: Schema.optionalKey<Schema.NonEmptyString>;
|
|
15
|
-
readonly status: Schema.Literals<readonly ["passed", "failed", "skipped", "warning"]>;
|
|
16
|
-
readonly severity: Schema.Literals<readonly ["info", "warning", "error"]>;
|
|
17
|
-
readonly command: typeof CommandSpec;
|
|
18
|
-
readonly exitCode: Schema.Number;
|
|
19
|
-
readonly stdout: Schema.String;
|
|
20
|
-
readonly stderr: Schema.String;
|
|
21
|
-
readonly startedAt: Schema.String;
|
|
22
|
-
readonly endedAt: Schema.String;
|
|
23
|
-
readonly durationMillis: Schema.Number;
|
|
24
|
-
}>, {}>;
|
|
25
|
-
export declare class CommandEvidence extends CommandEvidence_base {
|
|
26
|
-
}
|
|
10
|
+
export declare const EvidencePhase: Schema.Literals<readonly ["render", "validation", "execution", "verification", "reconciliation"]>;
|
|
11
|
+
export type EvidencePhase = typeof EvidencePhase.Type;
|
|
27
12
|
declare const HttpRequestEvidence_base: Schema.Class<HttpRequestEvidence, Schema.Struct<{
|
|
28
13
|
readonly method: Schema.Literals<readonly ["GET", "HEAD"]>;
|
|
29
14
|
readonly url: Schema.String;
|
|
@@ -38,71 +23,37 @@ declare const HttpCheckEvidence_base: Schema.Class<HttpCheckEvidence, Schema.Str
|
|
|
38
23
|
}>, {}>;
|
|
39
24
|
export declare class HttpCheckEvidence extends HttpCheckEvidence_base {
|
|
40
25
|
}
|
|
41
|
-
declare const
|
|
26
|
+
declare const OperationEvidenceRecord_base: Schema.Class<OperationEvidenceRecord, Schema.Struct<{
|
|
42
27
|
readonly id: Schema.NonEmptyString;
|
|
43
28
|
readonly operationId: Schema.NonEmptyString;
|
|
44
|
-
readonly
|
|
29
|
+
readonly phase: Schema.Literals<readonly ["render", "validation", "execution", "verification", "reconciliation"]>;
|
|
45
30
|
readonly targetId: Schema.optionalKey<Schema.NonEmptyString>;
|
|
31
|
+
readonly risk: Schema.Literals<readonly ["read-only", "writes-local", "externally-visible", "irreversible"]>;
|
|
46
32
|
readonly status: Schema.Literals<readonly ["passed", "failed", "skipped", "warning"]>;
|
|
47
33
|
readonly severity: Schema.Literals<readonly ["info", "warning", "error"]>;
|
|
48
|
-
readonly request: typeof HttpRequestEvidence;
|
|
49
|
-
readonly responseStatus: Schema.optionalKey<Schema.Number>;
|
|
50
|
-
readonly checks: Schema.$Array<typeof HttpCheckEvidence>;
|
|
51
34
|
readonly message: Schema.String;
|
|
52
35
|
readonly startedAt: Schema.String;
|
|
53
36
|
readonly endedAt: Schema.String;
|
|
54
37
|
readonly durationMillis: Schema.Number;
|
|
38
|
+
readonly command: Schema.optionalKey<typeof CommandSpec>;
|
|
39
|
+
readonly exitCode: Schema.optionalKey<Schema.Number>;
|
|
40
|
+
readonly stdout: Schema.optionalKey<Schema.String>;
|
|
41
|
+
readonly stderr: Schema.optionalKey<Schema.String>;
|
|
42
|
+
readonly request: Schema.optionalKey<typeof HttpRequestEvidence>;
|
|
43
|
+
readonly responseStatus: Schema.optionalKey<Schema.Number>;
|
|
44
|
+
readonly checks: Schema.optionalKey<Schema.$Array<typeof HttpCheckEvidence>>;
|
|
45
|
+
readonly skipped: Schema.optionalKey<Schema.Boolean>;
|
|
55
46
|
}>, {}>;
|
|
56
|
-
export declare class
|
|
57
|
-
}
|
|
58
|
-
declare const ValidationEvidence_base: Schema.Class<ValidationEvidence, Schema.Struct<{
|
|
59
|
-
readonly id: Schema.NonEmptyString;
|
|
60
|
-
readonly operationFingerprint: Schema.String;
|
|
61
|
-
readonly targetId: Schema.optionalKey<Schema.NonEmptyString>;
|
|
62
|
-
readonly status: Schema.Literals<readonly ["passed", "failed", "skipped", "warning"]>;
|
|
63
|
-
readonly severity: Schema.Literals<readonly ["info", "warning", "error"]>;
|
|
64
|
-
readonly message: Schema.String;
|
|
65
|
-
readonly timestamp: Schema.String;
|
|
66
|
-
readonly skipped: Schema.Boolean;
|
|
67
|
-
}>, {}>;
|
|
68
|
-
export declare class ValidationEvidence extends ValidationEvidence_base {
|
|
69
|
-
}
|
|
70
|
-
declare const ExecutionEvidence_base: Schema.Class<ExecutionEvidence, Schema.Struct<{
|
|
71
|
-
readonly id: Schema.NonEmptyString;
|
|
72
|
-
readonly operationId: Schema.NonEmptyString;
|
|
73
|
-
readonly operationFingerprint: Schema.String;
|
|
74
|
-
readonly targetId: Schema.optionalKey<Schema.NonEmptyString>;
|
|
75
|
-
readonly status: Schema.Literals<readonly ["passed", "failed", "skipped", "warning"]>;
|
|
76
|
-
readonly severity: Schema.Literals<readonly ["info", "warning", "error"]>;
|
|
77
|
-
readonly message: Schema.String;
|
|
78
|
-
readonly timestamp: Schema.String;
|
|
79
|
-
}>, {}>;
|
|
80
|
-
export declare class ExecutionEvidence extends ExecutionEvidence_base {
|
|
47
|
+
export declare class OperationEvidenceRecord extends OperationEvidenceRecord_base {
|
|
81
48
|
}
|
|
82
|
-
export declare const EvidenceRecord:
|
|
49
|
+
export declare const EvidenceRecord: typeof OperationEvidenceRecord;
|
|
83
50
|
export type EvidenceRecord = typeof EvidenceRecord.Type;
|
|
84
51
|
declare const EvidenceBundle_base: Schema.Class<EvidenceBundle, Schema.Struct<{
|
|
85
52
|
readonly schemaVersion: Schema.Literal<"release-evidence/v1">;
|
|
86
53
|
readonly releaseName: Schema.NonEmptyString;
|
|
87
54
|
readonly releaseVersion: Schema.NonEmptyString;
|
|
88
|
-
readonly records: Schema.$Array<
|
|
55
|
+
readonly records: Schema.$Array<typeof OperationEvidenceRecord>;
|
|
89
56
|
}>, {}>;
|
|
90
57
|
export declare class EvidenceBundle extends EvidenceBundle_base {
|
|
91
58
|
}
|
|
92
|
-
declare const ReleaseWorkflowEvidence_base: Schema.Class<ReleaseWorkflowEvidence, Schema.Struct<{
|
|
93
|
-
readonly render: typeof EvidenceBundle;
|
|
94
|
-
readonly validation: typeof EvidenceBundle;
|
|
95
|
-
readonly execution: typeof EvidenceBundle;
|
|
96
|
-
readonly verification: typeof EvidenceBundle;
|
|
97
|
-
}>, {}>;
|
|
98
|
-
export declare class ReleaseWorkflowEvidence extends ReleaseWorkflowEvidence_base {
|
|
99
|
-
}
|
|
100
|
-
declare const ReleaseWorkflowFailureEvidence_base: Schema.Class<ReleaseWorkflowFailureEvidence, Schema.Struct<{
|
|
101
|
-
readonly render: Schema.optionalKey<typeof EvidenceBundle>;
|
|
102
|
-
readonly validation: Schema.optionalKey<typeof EvidenceBundle>;
|
|
103
|
-
readonly execution: Schema.optionalKey<typeof EvidenceBundle>;
|
|
104
|
-
readonly verification: Schema.optionalKey<typeof EvidenceBundle>;
|
|
105
|
-
}>, {}>;
|
|
106
|
-
export declare class ReleaseWorkflowFailureEvidence extends ReleaseWorkflowFailureEvidence_base {
|
|
107
|
-
}
|
|
108
59
|
//# sourceMappingURL=evidence.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidence.d.ts","sourceRoot":"","sources":["../../src/domain/evidence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"evidence.d.ts","sourceRoot":"","sources":["../../src/domain/evidence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAA0C,MAAM,gBAAgB,CAAA;AAI/G,mBAAmB,6BAA6B,CAAA;AAEhD,eAAO,MAAM,UAAU,uBAAwB,CAAA;AAC/C,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,IAAI,CAAA;AAE/C,eAAO,MAAM,gBAAgB,wDAAgD,CAAA;AAC7E,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,IAAI,CAAA;AAE3D,eAAO,MAAM,cAAc,sEAA8D,CAAA;AACzF,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC,IAAI,CAAA;AAEvD,eAAO,MAAM,aAAa,mGAA2F,CAAA;AACrH,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,IAAI,CAAA;;;;;;;AAErD,qBAAa,mBAAoB,SAAQ,wBAKvC;CAAG;;;;;AAEL,qBAAa,iBAAkB,SAAQ,sBAGrC;CAAG;;;;;;;;;;;;;;;;;;;;;;AAEL,qBAAa,uBAAwB,SAAQ,4BAoB3C;CAAG;AAEL,eAAO,MAAM,cAAc,gCAA0B,CAAA;AACrD,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC,IAAI,CAAA;;;;;;;AAEvD,qBAAa,cAAe,SAAQ,mBAKlC;CAAG"}
|
package/dist/domain/evidence.js
CHANGED
|
@@ -1,26 +1,11 @@
|
|
|
1
1
|
import * as Schema from "effect/Schema";
|
|
2
|
-
import { CommandSpec, HttpEnvHeader, HttpHeader, HttpMethod, OperationId } from "./operation.js";
|
|
2
|
+
import { CommandSpec, HttpEnvHeader, HttpHeader, HttpMethod, OperationId, OperationRisk } from "./operation.js";
|
|
3
3
|
import { ReleaseName, ReleaseVersion } from "./release.js";
|
|
4
4
|
import { TargetId } from "./target.js";
|
|
5
5
|
export const EvidenceId = Schema.NonEmptyString;
|
|
6
6
|
export const EvidenceSeverity = Schema.Literals(["info", "warning", "error"]);
|
|
7
7
|
export const EvidenceStatus = Schema.Literals(["passed", "failed", "skipped", "warning"]);
|
|
8
|
-
export
|
|
9
|
-
id: EvidenceId,
|
|
10
|
-
operationId: OperationId,
|
|
11
|
-
operationFingerprint: Schema.String,
|
|
12
|
-
targetId: Schema.optionalKey(TargetId),
|
|
13
|
-
status: EvidenceStatus,
|
|
14
|
-
severity: EvidenceSeverity,
|
|
15
|
-
command: CommandSpec,
|
|
16
|
-
exitCode: Schema.Number,
|
|
17
|
-
stdout: Schema.String,
|
|
18
|
-
stderr: Schema.String,
|
|
19
|
-
startedAt: Schema.String,
|
|
20
|
-
endedAt: Schema.String,
|
|
21
|
-
durationMillis: Schema.Number
|
|
22
|
-
}) {
|
|
23
|
-
}
|
|
8
|
+
export const EvidencePhase = Schema.Literals(["render", "validation", "execution", "verification", "reconciliation"]);
|
|
24
9
|
export class HttpRequestEvidence extends Schema.Class("HttpRequestEvidence")({
|
|
25
10
|
method: HttpMethod,
|
|
26
11
|
url: Schema.String,
|
|
@@ -33,45 +18,29 @@ export class HttpCheckEvidence extends Schema.Class("HttpCheckEvidence")({
|
|
|
33
18
|
passed: Schema.Boolean
|
|
34
19
|
}) {
|
|
35
20
|
}
|
|
36
|
-
export class
|
|
21
|
+
export class OperationEvidenceRecord extends Schema.Class("OperationEvidenceRecord")({
|
|
37
22
|
id: EvidenceId,
|
|
38
23
|
operationId: OperationId,
|
|
39
|
-
|
|
24
|
+
phase: EvidencePhase,
|
|
40
25
|
targetId: Schema.optionalKey(TargetId),
|
|
26
|
+
risk: OperationRisk,
|
|
41
27
|
status: EvidenceStatus,
|
|
42
28
|
severity: EvidenceSeverity,
|
|
43
|
-
request: HttpRequestEvidence,
|
|
44
|
-
responseStatus: Schema.optionalKey(Schema.Number),
|
|
45
|
-
checks: Schema.Array(HttpCheckEvidence),
|
|
46
29
|
message: Schema.String,
|
|
47
30
|
startedAt: Schema.String,
|
|
48
31
|
endedAt: Schema.String,
|
|
49
|
-
durationMillis: Schema.Number
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
message: Schema.String,
|
|
59
|
-
timestamp: Schema.String,
|
|
60
|
-
skipped: Schema.Boolean
|
|
61
|
-
}) {
|
|
62
|
-
}
|
|
63
|
-
export class ExecutionEvidence extends Schema.Class("ExecutionEvidence")({
|
|
64
|
-
id: EvidenceId,
|
|
65
|
-
operationId: OperationId,
|
|
66
|
-
operationFingerprint: Schema.String,
|
|
67
|
-
targetId: Schema.optionalKey(TargetId),
|
|
68
|
-
status: EvidenceStatus,
|
|
69
|
-
severity: EvidenceSeverity,
|
|
70
|
-
message: Schema.String,
|
|
71
|
-
timestamp: Schema.String
|
|
32
|
+
durationMillis: Schema.Number,
|
|
33
|
+
command: Schema.optionalKey(CommandSpec),
|
|
34
|
+
exitCode: Schema.optionalKey(Schema.Number),
|
|
35
|
+
stdout: Schema.optionalKey(Schema.String),
|
|
36
|
+
stderr: Schema.optionalKey(Schema.String),
|
|
37
|
+
request: Schema.optionalKey(HttpRequestEvidence),
|
|
38
|
+
responseStatus: Schema.optionalKey(Schema.Number),
|
|
39
|
+
checks: Schema.optionalKey(Schema.Array(HttpCheckEvidence)),
|
|
40
|
+
skipped: Schema.optionalKey(Schema.Boolean)
|
|
72
41
|
}) {
|
|
73
42
|
}
|
|
74
|
-
export const EvidenceRecord =
|
|
43
|
+
export const EvidenceRecord = OperationEvidenceRecord;
|
|
75
44
|
export class EvidenceBundle extends Schema.Class("EvidenceBundle")({
|
|
76
45
|
schemaVersion: Schema.Literal("release-evidence/v1"),
|
|
77
46
|
releaseName: ReleaseName,
|
|
@@ -79,18 +48,4 @@ export class EvidenceBundle extends Schema.Class("EvidenceBundle")({
|
|
|
79
48
|
records: Schema.Array(EvidenceRecord)
|
|
80
49
|
}) {
|
|
81
50
|
}
|
|
82
|
-
export class ReleaseWorkflowEvidence extends Schema.Class("ReleaseWorkflowEvidence")({
|
|
83
|
-
render: EvidenceBundle,
|
|
84
|
-
validation: EvidenceBundle,
|
|
85
|
-
execution: EvidenceBundle,
|
|
86
|
-
verification: EvidenceBundle
|
|
87
|
-
}) {
|
|
88
|
-
}
|
|
89
|
-
export class ReleaseWorkflowFailureEvidence extends Schema.Class("ReleaseWorkflowFailureEvidence")({
|
|
90
|
-
render: Schema.optionalKey(EvidenceBundle),
|
|
91
|
-
validation: Schema.optionalKey(EvidenceBundle),
|
|
92
|
-
execution: Schema.optionalKey(EvidenceBundle),
|
|
93
|
-
verification: Schema.optionalKey(EvidenceBundle)
|
|
94
|
-
}) {
|
|
95
|
-
}
|
|
96
51
|
//# sourceMappingURL=evidence.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidence.js","sourceRoot":"","sources":["../../src/domain/evidence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"evidence.js","sourceRoot":"","sources":["../../src/domain/evidence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC/G,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAItC,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAA;AAG/C,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;AAG7E,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAA;AAGzF,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAC,CAAA;AAGrH,MAAM,OAAO,mBAAoB,SAAQ,MAAM,CAAC,KAAK,CAAsB,qBAAqB,CAAC,CAAC;IAChG,MAAM,EAAE,UAAU;IAClB,GAAG,EAAE,MAAM,CAAC,MAAM;IAClB,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC;CACxC,CAAC;CAAG;AAEL,MAAM,OAAO,iBAAkB,SAAQ,MAAM,CAAC,KAAK,CAAoB,mBAAmB,CAAC,CAAC;IAC1F,WAAW,EAAE,MAAM,CAAC,MAAM;IAC1B,MAAM,EAAE,MAAM,CAAC,OAAO;CACvB,CAAC;CAAG;AAEL,MAAM,OAAO,uBAAwB,SAAQ,MAAM,CAAC,KAAK,CAA0B,yBAAyB,CAAC,CAAC;IAC5G,EAAE,EAAE,UAAU;IACd,WAAW,EAAE,WAAW;IACxB,KAAK,EAAE,aAAa;IACpB,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC;IACtC,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE,cAAc;IACtB,QAAQ,EAAE,gBAAgB;IAC1B,OAAO,EAAE,MAAM,CAAC,MAAM;IACtB,SAAS,EAAE,MAAM,CAAC,MAAM;IACxB,OAAO,EAAE,MAAM,CAAC,MAAM;IACtB,cAAc,EAAE,MAAM,CAAC,MAAM;IAC7B,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;IAC3C,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;IACzC,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,mBAAmB,CAAC;IAChD,cAAc,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC3D,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC;CAC5C,CAAC;CAAG;AAEL,MAAM,CAAC,MAAM,cAAc,GAAG,uBAAuB,CAAA;AAGrD,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC,KAAK,CAAiB,gBAAgB,CAAC,CAAC;IACjF,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC;IACpD,WAAW,EAAE,WAAW;IACxB,cAAc,EAAE,cAAc;IAC9B,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC;CACtC,CAAC;CAAG"}
|
|
@@ -5,13 +5,6 @@ export declare const OperationId: Schema.NonEmptyString;
|
|
|
5
5
|
export type OperationId = typeof OperationId.Type;
|
|
6
6
|
export declare const OperationRisk: Schema.Literals<readonly ["read-only", "writes-local", "externally-visible", "irreversible"]>;
|
|
7
7
|
export type OperationRisk = typeof OperationRisk.Type;
|
|
8
|
-
declare const ExecutionGate_base: Schema.Class<ExecutionGate, Schema.Struct<{
|
|
9
|
-
readonly requiresExecute: Schema.Boolean;
|
|
10
|
-
readonly requiresIrreversibleApproval: Schema.Boolean;
|
|
11
|
-
readonly reason: Schema.String;
|
|
12
|
-
}>, {}>;
|
|
13
|
-
export declare class ExecutionGate extends ExecutionGate_base {
|
|
14
|
-
}
|
|
15
8
|
declare const CommandSpec_base: Schema.Class<CommandSpec, Schema.Struct<{
|
|
16
9
|
readonly executable: Schema.String;
|
|
17
10
|
readonly args: Schema.$Array<Schema.String>;
|
|
@@ -68,7 +61,6 @@ declare const RenderFileOperation_base: Schema.Class<RenderFileOperation, Schema
|
|
|
68
61
|
readonly targetId: Schema.optionalKey<Schema.NonEmptyString>;
|
|
69
62
|
readonly description: Schema.String;
|
|
70
63
|
readonly risk: Schema.Literals<readonly ["read-only", "writes-local", "externally-visible", "irreversible"]>;
|
|
71
|
-
readonly gate: typeof ExecutionGate;
|
|
72
64
|
readonly path: Schema.String;
|
|
73
65
|
readonly contents: Schema.String;
|
|
74
66
|
}>, {}>;
|
|
@@ -79,7 +71,6 @@ declare const ValidateCommandOperation_base: Schema.Class<ValidateCommandOperati
|
|
|
79
71
|
readonly targetId: Schema.optionalKey<Schema.NonEmptyString>;
|
|
80
72
|
readonly description: Schema.String;
|
|
81
73
|
readonly risk: Schema.Literals<readonly ["read-only", "writes-local", "externally-visible", "irreversible"]>;
|
|
82
|
-
readonly gate: typeof ExecutionGate;
|
|
83
74
|
readonly command: typeof CommandSpec;
|
|
84
75
|
}>, {}>;
|
|
85
76
|
export declare class ValidateCommandOperation extends ValidateCommandOperation_base {
|
|
@@ -89,7 +80,6 @@ declare const ValidationNoteOperation_base: Schema.Class<ValidationNoteOperation
|
|
|
89
80
|
readonly targetId: Schema.optionalKey<Schema.NonEmptyString>;
|
|
90
81
|
readonly description: Schema.String;
|
|
91
82
|
readonly risk: Schema.Literals<readonly ["read-only", "writes-local", "externally-visible", "irreversible"]>;
|
|
92
|
-
readonly gate: typeof ExecutionGate;
|
|
93
83
|
readonly message: Schema.String;
|
|
94
84
|
readonly skipped: Schema.Boolean;
|
|
95
85
|
readonly severity: Schema.Literals<readonly ["info", "warning"]>;
|
|
@@ -101,7 +91,6 @@ declare const PublishCommandOperation_base: Schema.Class<PublishCommandOperation
|
|
|
101
91
|
readonly targetId: Schema.NonEmptyString;
|
|
102
92
|
readonly description: Schema.String;
|
|
103
93
|
readonly risk: Schema.Literals<readonly ["read-only", "writes-local", "externally-visible", "irreversible"]>;
|
|
104
|
-
readonly gate: typeof ExecutionGate;
|
|
105
94
|
readonly command: typeof CommandSpec;
|
|
106
95
|
}>, {}>;
|
|
107
96
|
export declare class PublishCommandOperation extends PublishCommandOperation_base {
|
|
@@ -111,7 +100,6 @@ declare const VerifyRemoteOperation_base: Schema.Class<VerifyRemoteOperation, Sc
|
|
|
111
100
|
readonly targetId: Schema.NonEmptyString;
|
|
112
101
|
readonly description: Schema.String;
|
|
113
102
|
readonly risk: Schema.Literals<readonly ["read-only", "writes-local", "externally-visible", "irreversible"]>;
|
|
114
|
-
readonly gate: typeof ExecutionGate;
|
|
115
103
|
readonly command: typeof CommandSpec;
|
|
116
104
|
}>, {}>;
|
|
117
105
|
export declare class VerifyRemoteOperation extends VerifyRemoteOperation_base {
|
|
@@ -121,7 +109,6 @@ declare const VerifyHttpOperation_base: Schema.Class<VerifyHttpOperation, Schema
|
|
|
121
109
|
readonly targetId: Schema.NonEmptyString;
|
|
122
110
|
readonly description: Schema.String;
|
|
123
111
|
readonly risk: Schema.Literals<readonly ["read-only", "writes-local", "externally-visible", "irreversible"]>;
|
|
124
|
-
readonly gate: typeof ExecutionGate;
|
|
125
112
|
readonly request: typeof HttpRequestSpec;
|
|
126
113
|
readonly expectedStatus: Schema.Number;
|
|
127
114
|
readonly checks: Schema.$Array<Schema.Union<readonly [typeof HttpJsonEqualsCheck, typeof HttpJsonArrayObjectFieldEqualsCheck]>>;
|
|
@@ -130,7 +117,6 @@ export declare class VerifyHttpOperation extends VerifyHttpOperation_base {
|
|
|
130
117
|
}
|
|
131
118
|
export declare const Operation: Schema.Union<readonly [typeof RenderFileOperation, typeof ValidateCommandOperation, typeof ValidationNoteOperation, typeof PublishCommandOperation, typeof VerifyRemoteOperation, typeof VerifyHttpOperation]>;
|
|
132
119
|
export type Operation = typeof Operation.Type;
|
|
133
|
-
export declare const operationFingerprint: (operation: Operation) => string;
|
|
134
120
|
declare const ExecutionApproval_base: Schema.Class<ExecutionApproval, Schema.Struct<{
|
|
135
121
|
readonly execute: Schema.Boolean;
|
|
136
122
|
readonly approveIrreversible: Schema.Boolean;
|
|
@@ -144,9 +130,13 @@ declare const ExecutionApprovalError_base: Schema.Class<ExecutionApprovalError,
|
|
|
144
130
|
}>, import("effect/Cause").YieldableError>;
|
|
145
131
|
export declare class ExecutionApprovalError extends ExecutionApprovalError_base {
|
|
146
132
|
}
|
|
147
|
-
export declare const
|
|
148
|
-
|
|
149
|
-
|
|
133
|
+
export declare const operationApprovalRequirements: (operation: Operation) => {
|
|
134
|
+
requiresExecute: boolean;
|
|
135
|
+
requiresIrreversibleApproval: boolean;
|
|
136
|
+
};
|
|
137
|
+
export declare const operationRequiresExecute: (operation: Operation) => boolean;
|
|
138
|
+
export declare const operationRequiresIrreversibleApproval: (operation: Operation) => boolean;
|
|
139
|
+
export declare const operationApprovalLabel: (operation: Operation) => string;
|
|
150
140
|
export declare const canExecuteOperation: (operation: Operation, approval: ExecutionApproval) => boolean;
|
|
151
141
|
export declare const requireExecutionApproval: (operation: RenderFileOperation | ValidateCommandOperation | ValidationNoteOperation | PublishCommandOperation | VerifyRemoteOperation | VerifyHttpOperation, approval: ExecutionApproval) => Effect.Effect<undefined, ExecutionApprovalError, never>;
|
|
152
142
|
export declare const operationOrder: (left: Operation, right: Operation) => number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../src/domain/operation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,mBAAmB,6BAA6B,CAAA;AAEhD,eAAO,MAAM,WAAW,uBAAwB,CAAA;AAChD,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAA;AAEjD,eAAO,MAAM,aAAa,+FAAuF,CAAA;AACjH,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,IAAI,CAAA
|
|
1
|
+
{"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../../src/domain/operation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,mBAAmB,6BAA6B,CAAA;AAEhD,eAAO,MAAM,WAAW,uBAAwB,CAAA;AAChD,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAA;AAEjD,eAAO,MAAM,aAAa,+FAAuF,CAAA;AACjH,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,IAAI,CAAA;;;;;;;;AAErD,qBAAa,WAAY,SAAQ,gBAM/B;CAAG;AAEL,eAAO,MAAM,UAAU,2CAAmC,CAAA;AAC1D,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,IAAI,CAAA;;;;;AAE/C,qBAAa,UAAW,SAAQ,eAG9B;CAAG;;;;;;AAEL,qBAAa,aAAc,SAAQ,kBAIjC;CAAG;;;;;;;;;AAEL,qBAAa,eAAgB,SAAQ,oBAOnC;CAAG;AAEL,eAAO,MAAM,eAAe,uDAA+C,CAAA;AAC3E,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC,IAAI,CAAA;;;;;AAEzD,qBAAa,mBAAoB,SAAQ,wBAGvC;CAAG;;;;;;AAEL,qBAAa,mCAAoC,SAAQ,wCAOxD;CAAG;AAEJ,eAAO,MAAM,aAAa,iGAA2E,CAAA;AACrG,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,IAAI,CAAA;;;;;;;;;AAErD,qBAAa,mBAAoB,SAAQ,wBAOvC;CAAG;;;;;;;;AAEL,qBAAa,wBAAyB,SAAQ,6BAM5C;CAAG;;;;;;;;;;AAEL,qBAAa,uBAAwB,SAAQ,4BAQ3C;CAAG;;;;;;;;AAEL,qBAAa,uBAAwB,SAAQ,4BAM3C;CAAG;;;;;;;;AAEL,qBAAa,qBAAsB,SAAQ,0BAMzC;CAAG;;;;;;;;;;AAEL,qBAAa,mBAAoB,SAAQ,wBAQvC;CAAG;AAEL,eAAO,MAAM,SAAS,gNAOpB,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAA;;;;;AAE7C,qBAAa,iBAAkB,SAAQ,sBAGrC;IACA,MAAM,CAAC,QAAQ,CAAC,IAAI,oBAGlB;CACH;;;;;AAED,qBAAa,sBAAuB,SAAQ,2BAM3C;CAAG;AAEJ,eAAO,MAAM,6BAA6B,GAAI,WAAW,SAAS;;;CAGhE,CAAA;AAEF,eAAO,MAAM,wBAAwB,GAAI,WAAW,SAAS,KAAG,OACN,CAAA;AAE1D,eAAO,MAAM,qCAAqC,GAAI,WAAW,SAAS,KAAG,OACN,CAAA;AAEvE,eAAO,MAAM,sBAAsB,GAAI,WAAW,SAAS,KAAG,MAQ7D,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,WAAW,SAAS,EAAE,UAAU,iBAAiB,KAAG,OAUvF,CAAA;AAED,eAAO,MAAM,wBAAwB,uPAmBnC,CAAA;AAoCF,eAAO,MAAM,cAAc,GAAI,MAAM,SAAS,EAAE,OAAO,SAAS,KAAG,MAKlC,CAAA"}
|