@kitman-sh/loops 0.0.0-stage → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1066 -0
- package/package.json +19 -4
- package/types/packages/core/src/agent-environment.d.ts +2429 -0
- package/types/packages/core/src/agent-sandbox-policy.d.ts +31 -0
- package/types/packages/core/src/common.d.ts +6 -0
- package/types/packages/core/src/context-pack.d.ts +182 -0
- package/types/packages/core/src/extension.d.ts +35 -0
- package/types/packages/core/src/kit.d.ts +1489 -0
- package/types/packages/core/src/loop-layers.d.ts +59 -0
- package/types/packages/core/src/loop-version.d.ts +59 -0
- package/types/packages/core/src/loop.d.ts +3076 -0
- package/types/packages/core/src/package-declarations.d.ts +427 -0
- package/types/packages/core/src/proposal.d.ts +292 -0
- package/types/packages/core/src/redaction.d.ts +73 -0
- package/types/packages/core/src/run.d.ts +566 -0
- package/types/packages/core/src/runtime-type.d.ts +36 -0
- package/types/packages/core/src/schedule.d.ts +136 -0
- package/types/packages/core/src/schema.d.ts +89 -0
- package/types/packages/core/src/trigger-dispatch.d.ts +421 -0
- package/types/packages/loops/src/build.d.ts +33 -0
- package/types/packages/loops/src/change-request-body.d.ts +14 -0
- package/types/packages/loops/src/code-quality-pass.d.ts +50 -0
- package/types/packages/loops/src/code-quality.d.ts +26 -0
- package/types/packages/loops/src/hello.d.ts +9 -0
- package/types/packages/loops/src/incident.d.ts +13 -0
- package/types/packages/loops/src/index.d.ts +172 -0
- package/types/packages/loops/src/plan.d.ts +37 -0
- package/types/packages/loops/src/release.d.ts +21 -0
- package/types/packages/loops/src/research.d.ts +8 -0
- package/types/packages/loops/src/review.d.ts +38 -0
- package/types/packages/sdk/src/loop/activities.d.ts +187 -0
- package/types/packages/sdk/src/loop/check.d.ts +39 -0
- package/types/packages/sdk/src/loop/config.d.ts +68 -0
- package/types/packages/sdk/src/loop/define.d.ts +69 -0
- package/types/packages/sdk/src/loop/evidence.d.ts +66 -0
- package/types/packages/sdk/src/loop/index.d.ts +9 -0
- package/types/packages/sdk/src/loop/plan.d.ts +43 -0
- package/types/packages/sdk/src/loop/review.d.ts +86 -0
- package/types/packages/sdk/src/loop/steps.d.ts +224 -0
- package/types/packages/sdk/src/loop/test-loop.d.ts +112 -0
- package/README.md +0 -3
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import * as Schema from 'effect/Schema';
|
|
2
|
+
declare const BuildTargetMissing_base: Schema.Class<BuildTargetMissing, Schema.TaggedStruct<"BuildTargetMissing", {
|
|
3
|
+
readonly message: Schema.String;
|
|
4
|
+
}>, import("effect/Cause").YieldableError>;
|
|
5
|
+
export declare class BuildTargetMissing extends BuildTargetMissing_base {
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Implements a Task or words, reviews and fixes until the rally stops, gates on the evidence for the head, and opens
|
|
9
|
+
* the Run's ChangeRequest with the evidence, the claims and whatever it could not settle (ADR-0051). It writes the
|
|
10
|
+
* Run's milestones to its Task: started, ChangeRequest opened, and failed.
|
|
11
|
+
*/
|
|
12
|
+
declare const _default: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
13
|
+
readonly words?: string | undefined;
|
|
14
|
+
readonly taskId?: string | undefined;
|
|
15
|
+
readonly repoBindingId?: string | undefined;
|
|
16
|
+
readonly branch?: string | undefined;
|
|
17
|
+
readonly revision?: string | undefined;
|
|
18
|
+
readonly outcome?: "bug" | "docs" | "feature" | "investigation" | "migration" | "refactor" | undefined;
|
|
19
|
+
readonly maxRounds?: number | undefined;
|
|
20
|
+
}, {
|
|
21
|
+
readonly changeRequest: {
|
|
22
|
+
readonly id: string;
|
|
23
|
+
readonly number: string;
|
|
24
|
+
readonly url: string;
|
|
25
|
+
};
|
|
26
|
+
readonly revision: string;
|
|
27
|
+
readonly tree: string;
|
|
28
|
+
readonly settled: boolean;
|
|
29
|
+
readonly unsettled: readonly string[];
|
|
30
|
+
readonly rounds: number;
|
|
31
|
+
readonly stopped: "dispute_stands" | "findings_returned" | "round_cap" | "settled";
|
|
32
|
+
}, BuildTargetMissing | import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").ChildFailed | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
33
|
+
export default _default;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { RallyDecision, SettledRound, VerifyResult } from '@kitman-sh/sdk/loop';
|
|
2
|
+
/** Why each item the rally could not settle is still open. */
|
|
3
|
+
export declare const unsettledItems: (settled: SettledRound, decision: RallyDecision & {
|
|
4
|
+
readonly stop: true;
|
|
5
|
+
}) => string[];
|
|
6
|
+
/** A ChangeRequest's description: the summary, the head's evidence, the claims and what was left unsettled. */
|
|
7
|
+
export declare const changeRequestBody: (build: {
|
|
8
|
+
readonly summary: string;
|
|
9
|
+
readonly head: VerifyResult;
|
|
10
|
+
readonly claims: readonly string[];
|
|
11
|
+
readonly unsettled: readonly string[];
|
|
12
|
+
readonly rounds: number;
|
|
13
|
+
readonly stopped: string;
|
|
14
|
+
}) => string;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import * as Schema from 'effect/Schema';
|
|
2
|
+
export declare const CodeQualityPasses: readonly ['architecture', 'simplification'];
|
|
3
|
+
export declare const PassInput: Schema.Struct<{
|
|
4
|
+
readonly pass: Schema.Literals<readonly ["architecture", "simplification"]>;
|
|
5
|
+
/** The revision to improve; the head of `branch` when left out. */
|
|
6
|
+
readonly revision: Schema.optional<Schema.String>;
|
|
7
|
+
/** The branch the ChangeRequest targets; the repository's default branch when left out. */
|
|
8
|
+
readonly branch: Schema.optional<Schema.String>;
|
|
9
|
+
readonly repoBindingId: Schema.optional<Schema.String>;
|
|
10
|
+
/** Where to look, in a few words. */
|
|
11
|
+
readonly words: Schema.optional<Schema.String>;
|
|
12
|
+
}>;
|
|
13
|
+
export declare const PassOutput: Schema.Struct<{
|
|
14
|
+
readonly pass: Schema.Literals<readonly ["architecture", "simplification"]>;
|
|
15
|
+
readonly improved: Schema.Boolean;
|
|
16
|
+
readonly changeRequest: Schema.optional<Schema.Struct<{
|
|
17
|
+
readonly id: Schema.String;
|
|
18
|
+
readonly number: Schema.String;
|
|
19
|
+
readonly url: Schema.String;
|
|
20
|
+
}>>;
|
|
21
|
+
readonly revision: Schema.optional<Schema.String>;
|
|
22
|
+
readonly tree: Schema.optional<Schema.String>;
|
|
23
|
+
readonly settled: Schema.optional<Schema.Boolean>;
|
|
24
|
+
readonly unsettled: Schema.optional<Schema.$Array<Schema.String>>;
|
|
25
|
+
}>;
|
|
26
|
+
/**
|
|
27
|
+
* One Code Quality pass: the agent makes one improvement, the approved verifications run on the starting revision and
|
|
28
|
+
* on the result, the Review Loop reviews it once, and it ships as its own ChangeRequest with whatever is unsettled.
|
|
29
|
+
* Nothing changes code after the review, so the reviewed diff is the diff that ships.
|
|
30
|
+
*/
|
|
31
|
+
declare const _default: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
32
|
+
readonly pass: "architecture" | "simplification";
|
|
33
|
+
readonly revision?: string | undefined;
|
|
34
|
+
readonly branch?: string | undefined;
|
|
35
|
+
readonly repoBindingId?: string | undefined;
|
|
36
|
+
readonly words?: string | undefined;
|
|
37
|
+
}, {
|
|
38
|
+
readonly pass: "architecture" | "simplification";
|
|
39
|
+
readonly improved: boolean;
|
|
40
|
+
readonly changeRequest?: {
|
|
41
|
+
readonly id: string;
|
|
42
|
+
readonly number: string;
|
|
43
|
+
readonly url: string;
|
|
44
|
+
} | undefined;
|
|
45
|
+
readonly revision?: string | undefined;
|
|
46
|
+
readonly tree?: string | undefined;
|
|
47
|
+
readonly settled?: boolean | undefined;
|
|
48
|
+
readonly unsettled?: readonly string[] | undefined;
|
|
49
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").ChildFailed | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
50
|
+
export default _default;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runs an architecture pass and a simplification pass on a revision or the default branch. Each is a Child Run on a
|
|
3
|
+
* branch of its own, so each improvement is reviewed, gated and delivered as its own ChangeRequest (ADR-0051).
|
|
4
|
+
* Build never runs these passes; a person chooses Code Quality from a Build's offer, the CLI or a Schedule.
|
|
5
|
+
*/
|
|
6
|
+
declare const _default: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
7
|
+
readonly revision?: string | undefined;
|
|
8
|
+
readonly branch?: string | undefined;
|
|
9
|
+
readonly repoBindingId?: string | undefined;
|
|
10
|
+
readonly words?: string | undefined;
|
|
11
|
+
}, {
|
|
12
|
+
readonly improvements: readonly {
|
|
13
|
+
readonly pass: "architecture" | "simplification";
|
|
14
|
+
readonly improved: boolean;
|
|
15
|
+
readonly changeRequest?: {
|
|
16
|
+
readonly id: string;
|
|
17
|
+
readonly number: string;
|
|
18
|
+
readonly url: string;
|
|
19
|
+
} | undefined;
|
|
20
|
+
readonly revision?: string | undefined;
|
|
21
|
+
readonly tree?: string | undefined;
|
|
22
|
+
readonly settled?: boolean | undefined;
|
|
23
|
+
readonly unsettled?: readonly string[] | undefined;
|
|
24
|
+
}[];
|
|
25
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").ChildFailed | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
26
|
+
export default _default;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** The smallest program Loop: an Activity of its own, a Question and a durable sleep. */
|
|
2
|
+
declare const _default: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
3
|
+
readonly name: string;
|
|
4
|
+
readonly napSeconds?: number | undefined;
|
|
5
|
+
}, {
|
|
6
|
+
readonly greeting: string;
|
|
7
|
+
readonly mood: string;
|
|
8
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").QuestionRefused | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
9
|
+
export default _default;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as Schema from 'effect/Schema';
|
|
2
|
+
/** Investigates an alert to a supported conclusion, then offers to start a Build that fixes it as a bug. */
|
|
3
|
+
declare const _default: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
4
|
+
readonly alert: {
|
|
5
|
+
readonly [x: string]: Schema.Json;
|
|
6
|
+
};
|
|
7
|
+
readonly repoBindingId?: string | undefined;
|
|
8
|
+
}, {
|
|
9
|
+
readonly conclusionArtifactId: string;
|
|
10
|
+
readonly fix: "declined" | "none" | "started";
|
|
11
|
+
readonly changeRequestUrl?: string | undefined;
|
|
12
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").ChildFailed | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("@kitman-sh/sdk/loop").QuestionRefused | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
13
|
+
export default _default;
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import build from './build';
|
|
2
|
+
import codeQuality from './code-quality';
|
|
3
|
+
import codeQualityPass from './code-quality-pass';
|
|
4
|
+
import hello from './hello';
|
|
5
|
+
import incident from './incident';
|
|
6
|
+
import plan from './plan';
|
|
7
|
+
import release from './release';
|
|
8
|
+
import research from './research';
|
|
9
|
+
import review from './review';
|
|
10
|
+
/** Kitman's shipped Loops, by id; a fork spreads the one it replaces. */
|
|
11
|
+
export declare const shippedLoops: {
|
|
12
|
+
readonly build: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
13
|
+
readonly words?: string | undefined;
|
|
14
|
+
readonly taskId?: string | undefined;
|
|
15
|
+
readonly repoBindingId?: string | undefined;
|
|
16
|
+
readonly branch?: string | undefined;
|
|
17
|
+
readonly revision?: string | undefined;
|
|
18
|
+
readonly outcome?: "bug" | "docs" | "feature" | "investigation" | "migration" | "refactor" | undefined;
|
|
19
|
+
readonly maxRounds?: number | undefined;
|
|
20
|
+
}, {
|
|
21
|
+
readonly changeRequest: {
|
|
22
|
+
readonly id: string;
|
|
23
|
+
readonly number: string;
|
|
24
|
+
readonly url: string;
|
|
25
|
+
};
|
|
26
|
+
readonly revision: string;
|
|
27
|
+
readonly tree: string;
|
|
28
|
+
readonly settled: boolean;
|
|
29
|
+
readonly unsettled: readonly string[];
|
|
30
|
+
readonly rounds: number;
|
|
31
|
+
readonly stopped: "dispute_stands" | "findings_returned" | "round_cap" | "settled";
|
|
32
|
+
}, import("./build").BuildTargetMissing | import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").ChildFailed | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
33
|
+
readonly 'code-quality': import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
34
|
+
readonly revision?: string | undefined;
|
|
35
|
+
readonly branch?: string | undefined;
|
|
36
|
+
readonly repoBindingId?: string | undefined;
|
|
37
|
+
readonly words?: string | undefined;
|
|
38
|
+
}, {
|
|
39
|
+
readonly improvements: readonly {
|
|
40
|
+
readonly pass: "architecture" | "simplification";
|
|
41
|
+
readonly improved: boolean;
|
|
42
|
+
readonly changeRequest?: {
|
|
43
|
+
readonly id: string;
|
|
44
|
+
readonly number: string;
|
|
45
|
+
readonly url: string;
|
|
46
|
+
} | undefined;
|
|
47
|
+
readonly revision?: string | undefined;
|
|
48
|
+
readonly tree?: string | undefined;
|
|
49
|
+
readonly settled?: boolean | undefined;
|
|
50
|
+
readonly unsettled?: readonly string[] | undefined;
|
|
51
|
+
}[];
|
|
52
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").ChildFailed | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
53
|
+
readonly 'code-quality-pass': import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
54
|
+
readonly pass: "architecture" | "simplification";
|
|
55
|
+
readonly revision?: string | undefined;
|
|
56
|
+
readonly branch?: string | undefined;
|
|
57
|
+
readonly repoBindingId?: string | undefined;
|
|
58
|
+
readonly words?: string | undefined;
|
|
59
|
+
}, {
|
|
60
|
+
readonly pass: "architecture" | "simplification";
|
|
61
|
+
readonly improved: boolean;
|
|
62
|
+
readonly changeRequest?: {
|
|
63
|
+
readonly id: string;
|
|
64
|
+
readonly number: string;
|
|
65
|
+
readonly url: string;
|
|
66
|
+
} | undefined;
|
|
67
|
+
readonly revision?: string | undefined;
|
|
68
|
+
readonly tree?: string | undefined;
|
|
69
|
+
readonly settled?: boolean | undefined;
|
|
70
|
+
readonly unsettled?: readonly string[] | undefined;
|
|
71
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").ChildFailed | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
72
|
+
readonly hello: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
73
|
+
readonly name: string;
|
|
74
|
+
readonly napSeconds?: number | undefined;
|
|
75
|
+
}, {
|
|
76
|
+
readonly greeting: string;
|
|
77
|
+
readonly mood: string;
|
|
78
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").QuestionRefused | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
79
|
+
readonly incident: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
80
|
+
readonly alert: {
|
|
81
|
+
readonly [x: string]: import("effect/Schema").Json;
|
|
82
|
+
};
|
|
83
|
+
readonly repoBindingId?: string | undefined;
|
|
84
|
+
}, {
|
|
85
|
+
readonly conclusionArtifactId: string;
|
|
86
|
+
readonly fix: "declined" | "none" | "started";
|
|
87
|
+
readonly changeRequestUrl?: string | undefined;
|
|
88
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").ChildFailed | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("@kitman-sh/sdk/loop").QuestionRefused | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
89
|
+
readonly plan: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
90
|
+
readonly words: string;
|
|
91
|
+
readonly repoBindingId?: string | undefined;
|
|
92
|
+
readonly branch?: string | undefined;
|
|
93
|
+
}, {
|
|
94
|
+
readonly title: string;
|
|
95
|
+
readonly outOfScope: readonly string[];
|
|
96
|
+
readonly implemented: boolean;
|
|
97
|
+
readonly tickets: readonly {
|
|
98
|
+
readonly key: string;
|
|
99
|
+
readonly title: string;
|
|
100
|
+
readonly status: "failed" | "merged" | "skipped";
|
|
101
|
+
readonly repoBindingId?: string | undefined;
|
|
102
|
+
readonly changeRequest?: {
|
|
103
|
+
readonly id: string;
|
|
104
|
+
readonly number: string;
|
|
105
|
+
readonly url: string;
|
|
106
|
+
} | undefined;
|
|
107
|
+
readonly reason?: string | undefined;
|
|
108
|
+
}[];
|
|
109
|
+
readonly deliveries: readonly {
|
|
110
|
+
readonly id: string;
|
|
111
|
+
readonly number: string;
|
|
112
|
+
readonly url: string;
|
|
113
|
+
}[];
|
|
114
|
+
readonly tasks?: readonly {
|
|
115
|
+
readonly key: string;
|
|
116
|
+
readonly taskId: string;
|
|
117
|
+
}[] | undefined;
|
|
118
|
+
}, import("@kitman-sh/sdk/loop").BlockingCycle | import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("@kitman-sh/sdk/loop").QuestionRefused | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
119
|
+
readonly release: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
120
|
+
readonly tag?: string | undefined;
|
|
121
|
+
readonly revision?: string | undefined;
|
|
122
|
+
readonly deployEvent?: string | undefined;
|
|
123
|
+
readonly deployTimeoutMinutes?: number | undefined;
|
|
124
|
+
}, {
|
|
125
|
+
readonly status: "rejected";
|
|
126
|
+
readonly tag: string;
|
|
127
|
+
readonly notesArtifactId: string;
|
|
128
|
+
} | {
|
|
129
|
+
readonly status: "deploy_failed" | "deployed" | "timed_out";
|
|
130
|
+
readonly tag: string;
|
|
131
|
+
readonly notesArtifactId: string;
|
|
132
|
+
readonly revision: string;
|
|
133
|
+
readonly url: string;
|
|
134
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("@kitman-sh/sdk/loop").QuestionRefused | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
135
|
+
readonly research: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
136
|
+
readonly taskId: string;
|
|
137
|
+
readonly repoBindingId?: string | undefined;
|
|
138
|
+
}, {
|
|
139
|
+
readonly reportArtifactId: string;
|
|
140
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
141
|
+
readonly review: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
142
|
+
readonly changeRequestId?: string | undefined;
|
|
143
|
+
readonly base?: string | undefined;
|
|
144
|
+
readonly head?: string | undefined;
|
|
145
|
+
readonly rebuttals?: readonly {
|
|
146
|
+
readonly findingId: string;
|
|
147
|
+
readonly reason: string;
|
|
148
|
+
}[] | undefined;
|
|
149
|
+
readonly outcome?: "bug" | "docs" | "feature" | "investigation" | "migration" | "refactor" | undefined;
|
|
150
|
+
readonly claims?: readonly string[] | undefined;
|
|
151
|
+
}, {
|
|
152
|
+
readonly findings: readonly {
|
|
153
|
+
readonly severity: "blocker" | "major" | "minor";
|
|
154
|
+
readonly file: string;
|
|
155
|
+
readonly line: number;
|
|
156
|
+
readonly detail: string;
|
|
157
|
+
readonly id: string;
|
|
158
|
+
readonly seats: readonly string[];
|
|
159
|
+
}[];
|
|
160
|
+
readonly verdicts: readonly {
|
|
161
|
+
readonly findingId: string;
|
|
162
|
+
readonly accepted: boolean;
|
|
163
|
+
}[];
|
|
164
|
+
readonly blocking: boolean;
|
|
165
|
+
readonly artifactId: string;
|
|
166
|
+
readonly scope?: {
|
|
167
|
+
readonly met: boolean;
|
|
168
|
+
readonly unmet: readonly string[];
|
|
169
|
+
} | undefined;
|
|
170
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("./review").ReviewTargetMissing | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
171
|
+
};
|
|
172
|
+
export { build, codeQuality, codeQualityPass, hello, incident, plan, release, research, review };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interviews the user through Questions, stores a spec and tickets as Run artifacts, and then asks what next:
|
|
3
|
+
* build the tickets, file them as Tasks to build later, ask another Agent's opinion, refine the plan from the user's
|
|
4
|
+
* words, or finish (ADR-0051).
|
|
5
|
+
* Nothing is written to a repository or a Runner but what the Builds deliver.
|
|
6
|
+
*/
|
|
7
|
+
declare const _default: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
8
|
+
readonly words: string;
|
|
9
|
+
readonly repoBindingId?: string | undefined;
|
|
10
|
+
readonly branch?: string | undefined;
|
|
11
|
+
}, {
|
|
12
|
+
readonly title: string;
|
|
13
|
+
readonly outOfScope: readonly string[];
|
|
14
|
+
readonly implemented: boolean;
|
|
15
|
+
readonly tickets: readonly {
|
|
16
|
+
readonly key: string;
|
|
17
|
+
readonly title: string;
|
|
18
|
+
readonly status: "failed" | "merged" | "skipped";
|
|
19
|
+
readonly repoBindingId?: string | undefined;
|
|
20
|
+
readonly changeRequest?: {
|
|
21
|
+
readonly id: string;
|
|
22
|
+
readonly number: string;
|
|
23
|
+
readonly url: string;
|
|
24
|
+
} | undefined;
|
|
25
|
+
readonly reason?: string | undefined;
|
|
26
|
+
}[];
|
|
27
|
+
readonly deliveries: readonly {
|
|
28
|
+
readonly id: string;
|
|
29
|
+
readonly number: string;
|
|
30
|
+
readonly url: string;
|
|
31
|
+
}[];
|
|
32
|
+
readonly tasks?: readonly {
|
|
33
|
+
readonly key: string;
|
|
34
|
+
readonly taskId: string;
|
|
35
|
+
}[] | undefined;
|
|
36
|
+
}, import("@kitman-sh/sdk/loop").BlockingCycle | import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("@kitman-sh/sdk/loop").QuestionRefused | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
37
|
+
export default _default;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Drafts notes from the ChangeRequests merged since the last release and asks for approval, then tags and publishes
|
|
3
|
+
* the release once and waits for its deploy Event.
|
|
4
|
+
*/
|
|
5
|
+
declare const _default: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
6
|
+
readonly tag?: string | undefined;
|
|
7
|
+
readonly revision?: string | undefined;
|
|
8
|
+
readonly deployEvent?: string | undefined;
|
|
9
|
+
readonly deployTimeoutMinutes?: number | undefined;
|
|
10
|
+
}, {
|
|
11
|
+
readonly status: "rejected";
|
|
12
|
+
readonly tag: string;
|
|
13
|
+
readonly notesArtifactId: string;
|
|
14
|
+
} | {
|
|
15
|
+
readonly status: "deploy_failed" | "deployed" | "timed_out";
|
|
16
|
+
readonly tag: string;
|
|
17
|
+
readonly notesArtifactId: string;
|
|
18
|
+
readonly revision: string;
|
|
19
|
+
readonly url: string;
|
|
20
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("@kitman-sh/sdk/loop").QuestionRefused | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
21
|
+
export default _default;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** Researches the question a Task asks against primary sources, and attaches a report that cites them. */
|
|
2
|
+
declare const _default: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
3
|
+
readonly taskId: string;
|
|
4
|
+
readonly repoBindingId?: string | undefined;
|
|
5
|
+
}, {
|
|
6
|
+
readonly reportArtifactId: string;
|
|
7
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
8
|
+
export default _default;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as Schema from 'effect/Schema';
|
|
2
|
+
declare const ReviewTargetMissing_base: Schema.Class<ReviewTargetMissing, Schema.TaggedStruct<"ReviewTargetMissing", {
|
|
3
|
+
readonly message: Schema.String;
|
|
4
|
+
}>, import("effect/Cause").YieldableError>;
|
|
5
|
+
export declare class ReviewTargetMissing extends ReviewTargetMissing_base {
|
|
6
|
+
}
|
|
7
|
+
/** Reviews a ChangeRequest or a revision range with a panel of reviewer Agents, and merges their findings. */
|
|
8
|
+
declare const _default: import("@kitman-sh/sdk/loop").LoopDefinition<{
|
|
9
|
+
readonly changeRequestId?: string | undefined;
|
|
10
|
+
readonly base?: string | undefined;
|
|
11
|
+
readonly head?: string | undefined;
|
|
12
|
+
readonly rebuttals?: readonly {
|
|
13
|
+
readonly findingId: string;
|
|
14
|
+
readonly reason: string;
|
|
15
|
+
}[] | undefined;
|
|
16
|
+
readonly outcome?: "bug" | "docs" | "feature" | "investigation" | "migration" | "refactor" | undefined;
|
|
17
|
+
readonly claims?: readonly string[] | undefined;
|
|
18
|
+
}, {
|
|
19
|
+
readonly findings: readonly {
|
|
20
|
+
readonly severity: "blocker" | "major" | "minor";
|
|
21
|
+
readonly file: string;
|
|
22
|
+
readonly line: number;
|
|
23
|
+
readonly detail: string;
|
|
24
|
+
readonly id: string;
|
|
25
|
+
readonly seats: readonly string[];
|
|
26
|
+
}[];
|
|
27
|
+
readonly verdicts: readonly {
|
|
28
|
+
readonly findingId: string;
|
|
29
|
+
readonly accepted: boolean;
|
|
30
|
+
}[];
|
|
31
|
+
readonly blocking: boolean;
|
|
32
|
+
readonly artifactId: string;
|
|
33
|
+
readonly scope?: {
|
|
34
|
+
readonly met: boolean;
|
|
35
|
+
readonly unmet: readonly string[];
|
|
36
|
+
} | undefined;
|
|
37
|
+
}, import("@kitman-sh/sdk/loop").CapabilityDenied | import("@kitman-sh/sdk/loop").DuplicateStep | import("@kitman-sh/sdk/loop").OutputInvalid | ReviewTargetMissing | import("@kitman-sh/sdk/loop").StepFailed>;
|
|
38
|
+
export default _default;
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import * as Context from 'effect/Context';
|
|
2
|
+
import * as Effect from 'effect/Effect';
|
|
3
|
+
import * as Schema from 'effect/Schema';
|
|
4
|
+
import { StepFailed } from './steps';
|
|
5
|
+
/** The Run's ChangeRequest, from its branch to its base branch. */
|
|
6
|
+
export declare const ChangeRequestRequest: Schema.Struct<{
|
|
7
|
+
readonly title: Schema.String;
|
|
8
|
+
readonly body: Schema.String;
|
|
9
|
+
/** A RepoBinding: opens from the Run's integration branch on it, into its base branch, instead. */
|
|
10
|
+
readonly integration: Schema.optional<Schema.String>;
|
|
11
|
+
}>;
|
|
12
|
+
export declare const ChangeRequestResult: Schema.Struct<{
|
|
13
|
+
readonly id: Schema.String;
|
|
14
|
+
readonly number: Schema.String;
|
|
15
|
+
readonly url: Schema.String;
|
|
16
|
+
}>;
|
|
17
|
+
export type ChangeRequestResult = typeof ChangeRequestResult.Type;
|
|
18
|
+
export declare const WriteBackMilestones: readonly ['started', 'change_request_opened', 'merged', 'failed'];
|
|
19
|
+
/** A Run milestone for the Run's Task, which moves it to the state its Team maps the milestone to. */
|
|
20
|
+
export declare const WriteBackRequest: Schema.Struct<{
|
|
21
|
+
readonly milestone: Schema.optional<Schema.Literals<readonly ["started", "change_request_opened", "merged", "failed"]>>;
|
|
22
|
+
readonly changeRequestUrl: Schema.optional<Schema.String>;
|
|
23
|
+
}>;
|
|
24
|
+
/** A document stored in Kitman with the Run, such as a plan, findings or a conclusion; later Runs retrieve it. */
|
|
25
|
+
export declare const ArtifactRequest: Schema.Struct<{
|
|
26
|
+
readonly kind: Schema.String;
|
|
27
|
+
readonly title: Schema.String;
|
|
28
|
+
readonly text: Schema.String;
|
|
29
|
+
readonly data: Schema.optional<Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
30
|
+
}>;
|
|
31
|
+
export declare const ArtifactResult: Schema.Struct<{
|
|
32
|
+
readonly artifactId: Schema.String;
|
|
33
|
+
}>;
|
|
34
|
+
/** A thread entry on the Run's Task; given an artifact, it links to it. */
|
|
35
|
+
export declare const NoteRequest: Schema.Struct<{
|
|
36
|
+
readonly text: Schema.String;
|
|
37
|
+
readonly artifactId: Schema.optional<Schema.String>;
|
|
38
|
+
}>;
|
|
39
|
+
export declare const CreateTasksRequest: Schema.Struct<{
|
|
40
|
+
readonly tickets: Schema.$Array<Schema.Struct<{
|
|
41
|
+
readonly key: Schema.String;
|
|
42
|
+
readonly title: Schema.String;
|
|
43
|
+
readonly body: Schema.String;
|
|
44
|
+
readonly acceptanceCriteria: Schema.$Array<Schema.String>;
|
|
45
|
+
readonly repoBindingId: Schema.optional<Schema.String>;
|
|
46
|
+
readonly blockedBy: Schema.$Array<Schema.String>;
|
|
47
|
+
readonly outcome: Schema.optional<Schema.Literals<readonly ["feature", "bug", "refactor", "investigation", "docs", "migration"]>>;
|
|
48
|
+
}>>;
|
|
49
|
+
}>;
|
|
50
|
+
/** The Task made for each ticket, by ticket key. */
|
|
51
|
+
export declare const CreateTasksResult: Schema.Struct<{
|
|
52
|
+
readonly tasks: Schema.$Array<Schema.Struct<{
|
|
53
|
+
readonly key: Schema.String;
|
|
54
|
+
readonly taskId: Schema.String;
|
|
55
|
+
}>>;
|
|
56
|
+
}>;
|
|
57
|
+
/** The Project's default RepoBinding when left out. */
|
|
58
|
+
export declare const IntegrationBranchRequest: Schema.Struct<{
|
|
59
|
+
readonly repoBindingId: Schema.optional<Schema.String>;
|
|
60
|
+
}>;
|
|
61
|
+
export declare const IntegrationBranch: Schema.Struct<{
|
|
62
|
+
readonly repoBindingId: Schema.String;
|
|
63
|
+
readonly branch: Schema.String;
|
|
64
|
+
/** The branch head now. */
|
|
65
|
+
readonly revision: Schema.String;
|
|
66
|
+
}>;
|
|
67
|
+
export type IntegrationBranch = typeof IntegrationBranch.Type;
|
|
68
|
+
export declare const MergeChangeRequestRequest: Schema.Struct<{
|
|
69
|
+
readonly changeRequestId: Schema.String;
|
|
70
|
+
}>;
|
|
71
|
+
export declare const MergeResult: Schema.Union<readonly [Schema.Struct<{
|
|
72
|
+
readonly status: Schema.Literal<"merged">;
|
|
73
|
+
readonly revision: Schema.String;
|
|
74
|
+
}>, Schema.Struct<{
|
|
75
|
+
readonly status: Schema.Literal<"conflict">;
|
|
76
|
+
}>]>;
|
|
77
|
+
export type MergeResult = typeof MergeResult.Type;
|
|
78
|
+
/** A comment on a ChangeRequest, which need not be the Run's own. */
|
|
79
|
+
export declare const CommentRequest: Schema.Struct<{
|
|
80
|
+
readonly changeRequestId: Schema.String;
|
|
81
|
+
readonly body: Schema.String;
|
|
82
|
+
}>;
|
|
83
|
+
/** Tags `revision`, the Run's base branch head when left out, and publishes the release with its notes. */
|
|
84
|
+
export declare const ReleaseRequest: Schema.Struct<{
|
|
85
|
+
readonly tag: Schema.String;
|
|
86
|
+
readonly revision: Schema.optional<Schema.String>;
|
|
87
|
+
readonly title: Schema.String;
|
|
88
|
+
readonly notes: Schema.String;
|
|
89
|
+
}>;
|
|
90
|
+
export declare const ReleaseResult: Schema.Struct<{
|
|
91
|
+
readonly tag: Schema.String;
|
|
92
|
+
readonly revision: Schema.String;
|
|
93
|
+
readonly url: Schema.String;
|
|
94
|
+
}>;
|
|
95
|
+
export type ReleaseResult = typeof ReleaseResult.Type;
|
|
96
|
+
declare const ChangeRequestActivity_base: Context.ServiceClass<ChangeRequestActivity, "@kitman-sh/sdk/loop/ChangeRequestActivity", {
|
|
97
|
+
/** A Run has one ChangeRequest: it opens once, and a later Step updates it. */
|
|
98
|
+
readonly run: (request: typeof ChangeRequestRequest.Type, step: string) => Effect.Effect<ChangeRequestResult, StepFailed>;
|
|
99
|
+
}>;
|
|
100
|
+
/** Opens or updates the Run's ChangeRequest. */
|
|
101
|
+
export declare class ChangeRequestActivity extends ChangeRequestActivity_base {
|
|
102
|
+
}
|
|
103
|
+
declare const WriteBackActivity_base: Context.ServiceClass<WriteBackActivity, "@kitman-sh/sdk/loop/WriteBackActivity", {
|
|
104
|
+
readonly run: (request: typeof WriteBackRequest.Type, step: string) => Effect.Effect<void, StepFailed>;
|
|
105
|
+
}>;
|
|
106
|
+
/** Gives the Run's Task a milestone of the Run's. */
|
|
107
|
+
export declare class WriteBackActivity extends WriteBackActivity_base {
|
|
108
|
+
}
|
|
109
|
+
declare const ArtifactActivity_base: Context.ServiceClass<ArtifactActivity, "@kitman-sh/sdk/loop/ArtifactActivity", {
|
|
110
|
+
/** `step` names the Step storing it; a Step stores one artifact, however often it runs. */
|
|
111
|
+
readonly run: (request: typeof ArtifactRequest.Type, step: string) => Effect.Effect<typeof ArtifactResult.Type, StepFailed>;
|
|
112
|
+
}>;
|
|
113
|
+
/** Stores a Run artifact in Kitman, indexed for later Runs' ContextPacks and search. */
|
|
114
|
+
export declare class ArtifactActivity extends ArtifactActivity_base {
|
|
115
|
+
}
|
|
116
|
+
declare const NoteActivity_base: Context.ServiceClass<NoteActivity, "@kitman-sh/sdk/loop/NoteActivity", {
|
|
117
|
+
readonly run: (request: typeof NoteRequest.Type, step: string) => Effect.Effect<void, StepFailed>;
|
|
118
|
+
}>;
|
|
119
|
+
/** Adds an entry to the thread of the Run's Task. */
|
|
120
|
+
export declare class NoteActivity extends NoteActivity_base {
|
|
121
|
+
}
|
|
122
|
+
declare const CommentActivity_base: Context.ServiceClass<CommentActivity, "@kitman-sh/sdk/loop/CommentActivity", {
|
|
123
|
+
readonly run: (request: typeof CommentRequest.Type, step: string) => Effect.Effect<void, StepFailed>;
|
|
124
|
+
}>;
|
|
125
|
+
/** Posts a comment on a ChangeRequest through Kitman's external-effect ledger; a Step posts once. */
|
|
126
|
+
export declare class CommentActivity extends CommentActivity_base {
|
|
127
|
+
}
|
|
128
|
+
declare const CreateTasksActivity_base: Context.ServiceClass<CreateTasksActivity, "@kitman-sh/sdk/loop/CreateTasksActivity", {
|
|
129
|
+
/** A Step makes each ticket's Task once. */
|
|
130
|
+
readonly run: (request: typeof CreateTasksRequest.Type, step: string) => Effect.Effect<typeof CreateTasksResult.Type, StepFailed>;
|
|
131
|
+
}>;
|
|
132
|
+
/** Makes a Task for each plan ticket, with the plan ticket as its origin and its blockers as TaskDependencies. */
|
|
133
|
+
export declare class CreateTasksActivity extends CreateTasksActivity_base {
|
|
134
|
+
}
|
|
135
|
+
declare const IntegrationBranchActivity_base: Context.ServiceClass<IntegrationBranchActivity, "@kitman-sh/sdk/loop/IntegrationBranchActivity", {
|
|
136
|
+
readonly run: (request: typeof IntegrationBranchRequest.Type, step: string) => Effect.Effect<IntegrationBranch, StepFailed>;
|
|
137
|
+
}>;
|
|
138
|
+
/** The Run's integration branch on a repository, made from its base branch the first time. */
|
|
139
|
+
export declare class IntegrationBranchActivity extends IntegrationBranchActivity_base {
|
|
140
|
+
}
|
|
141
|
+
declare const MergeChangeRequestActivity_base: Context.ServiceClass<MergeChangeRequestActivity, "@kitman-sh/sdk/loop/MergeChangeRequestActivity", {
|
|
142
|
+
readonly run: (request: typeof MergeChangeRequestRequest.Type, step: string) => Effect.Effect<MergeResult, StepFailed>;
|
|
143
|
+
}>;
|
|
144
|
+
/** Merges a ChangeRequest into its target branch through the external-effect ledger; a Step merges once. */
|
|
145
|
+
export declare class MergeChangeRequestActivity extends MergeChangeRequestActivity_base {
|
|
146
|
+
}
|
|
147
|
+
declare const ReleaseActivity_base: Context.ServiceClass<ReleaseActivity, "@kitman-sh/sdk/loop/ReleaseActivity", {
|
|
148
|
+
readonly run: (request: typeof ReleaseRequest.Type, step: string) => Effect.Effect<ReleaseResult, StepFailed>;
|
|
149
|
+
}>;
|
|
150
|
+
/** Tags and publishes a release on the Run's repository through the external-effect ledger; a Step releases once. */
|
|
151
|
+
export declare class ReleaseActivity extends ReleaseActivity_base {
|
|
152
|
+
}
|
|
153
|
+
export declare const changeRequest: (name: string, request: typeof ChangeRequestRequest.Type) => Effect.Effect<{
|
|
154
|
+
readonly id: string;
|
|
155
|
+
readonly number: string;
|
|
156
|
+
readonly url: string;
|
|
157
|
+
}, import("./steps").CapabilityDenied | import("./steps").DuplicateStep | StepFailed, ChangeRequestActivity | import("./steps").LoopRun | import("effect/workflow/WorkflowEngine").WorkflowEngine | import("effect/workflow/WorkflowEngine").WorkflowInstance>;
|
|
158
|
+
export declare const writeBack: (name: string, request: typeof WriteBackRequest.Type) => Effect.Effect<void, import("./steps").CapabilityDenied | import("./steps").DuplicateStep | StepFailed, import("./steps").LoopRun | import("effect/workflow/WorkflowEngine").WorkflowEngine | import("effect/workflow/WorkflowEngine").WorkflowInstance | WriteBackActivity>;
|
|
159
|
+
export declare const artifact: (name: string, request: typeof ArtifactRequest.Type) => Effect.Effect<{
|
|
160
|
+
readonly artifactId: string;
|
|
161
|
+
}, import("./steps").CapabilityDenied | import("./steps").DuplicateStep | StepFailed, ArtifactActivity | import("./steps").LoopRun | import("effect/workflow/WorkflowEngine").WorkflowEngine | import("effect/workflow/WorkflowEngine").WorkflowInstance>;
|
|
162
|
+
export declare const note: (name: string, request: typeof NoteRequest.Type) => Effect.Effect<void, import("./steps").CapabilityDenied | import("./steps").DuplicateStep | StepFailed, import("./steps").LoopRun | NoteActivity | import("effect/workflow/WorkflowEngine").WorkflowEngine | import("effect/workflow/WorkflowEngine").WorkflowInstance>;
|
|
163
|
+
export declare const comment: (name: string, request: typeof CommentRequest.Type) => Effect.Effect<void, import("./steps").CapabilityDenied | import("./steps").DuplicateStep | StepFailed, CommentActivity | import("./steps").LoopRun | import("effect/workflow/WorkflowEngine").WorkflowEngine | import("effect/workflow/WorkflowEngine").WorkflowInstance>;
|
|
164
|
+
export declare const createTasks: (name: string, request: typeof CreateTasksRequest.Type) => Effect.Effect<{
|
|
165
|
+
readonly tasks: readonly {
|
|
166
|
+
readonly key: string;
|
|
167
|
+
readonly taskId: string;
|
|
168
|
+
}[];
|
|
169
|
+
}, import("./steps").CapabilityDenied | import("./steps").DuplicateStep | StepFailed, CreateTasksActivity | import("./steps").LoopRun | import("effect/workflow/WorkflowEngine").WorkflowEngine | import("effect/workflow/WorkflowEngine").WorkflowInstance>;
|
|
170
|
+
/** Its head is read when the Step runs, so a later Step with another name sees what was merged since. */
|
|
171
|
+
export declare const integrationBranch: (name: string, request: typeof IntegrationBranchRequest.Type) => Effect.Effect<{
|
|
172
|
+
readonly repoBindingId: string;
|
|
173
|
+
readonly branch: string;
|
|
174
|
+
readonly revision: string;
|
|
175
|
+
}, import("./steps").CapabilityDenied | import("./steps").DuplicateStep | StepFailed, IntegrationBranchActivity | import("./steps").LoopRun | import("effect/workflow/WorkflowEngine").WorkflowEngine | import("effect/workflow/WorkflowEngine").WorkflowInstance>;
|
|
176
|
+
export declare const mergeChangeRequest: (name: string, request: typeof MergeChangeRequestRequest.Type) => Effect.Effect<{
|
|
177
|
+
readonly status: "merged";
|
|
178
|
+
readonly revision: string;
|
|
179
|
+
} | {
|
|
180
|
+
readonly status: "conflict";
|
|
181
|
+
}, import("./steps").CapabilityDenied | import("./steps").DuplicateStep | StepFailed, import("./steps").LoopRun | MergeChangeRequestActivity | import("effect/workflow/WorkflowEngine").WorkflowEngine | import("effect/workflow/WorkflowEngine").WorkflowInstance>;
|
|
182
|
+
export declare const release: (name: string, request: typeof ReleaseRequest.Type) => Effect.Effect<{
|
|
183
|
+
readonly tag: string;
|
|
184
|
+
readonly revision: string;
|
|
185
|
+
readonly url: string;
|
|
186
|
+
}, import("./steps").CapabilityDenied | import("./steps").DuplicateStep | StepFailed, import("./steps").LoopRun | ReleaseActivity | import("effect/workflow/WorkflowEngine").WorkflowEngine | import("effect/workflow/WorkflowEngine").WorkflowInstance>;
|
|
187
|
+
export {};
|