@owlmeans/viable-sdk 0.1.19-rc.0 → 0.1.19
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 +1 -1
- package/agent-meta/manifest.json +2 -2
- package/agent-meta/skills/viable-sdk/SKILL.md +123 -13
- package/build/api/collect/types.d.ts +12 -1
- package/build/api/collect/types.d.ts.map +1 -1
- package/build/api/collect.d.ts.map +1 -1
- package/build/api/collect.js +18 -1
- package/build/api/collect.js.map +1 -1
- package/build/api/consts.local.d.ts +2 -0
- package/build/api/consts.local.d.ts.map +1 -1
- package/build/api/consts.local.js +2 -0
- package/build/api/consts.local.js.map +1 -1
- package/build/api/remote.d.ts.map +1 -1
- package/build/api/remote.js +13 -0
- package/build/api/remote.js.map +1 -1
- package/build/context/index.d.ts.map +1 -1
- package/build/context/index.js +7 -3
- package/build/context/index.js.map +1 -1
- package/build/context/types.d.ts +7 -1
- package/build/context/types.d.ts.map +1 -1
- package/build/session/consts.local.d.ts +2 -0
- package/build/session/consts.local.d.ts.map +1 -1
- package/build/session/consts.local.js +2 -0
- package/build/session/consts.local.js.map +1 -1
- package/build/session/index.d.ts.map +1 -1
- package/build/session/index.js +18 -1
- package/build/session/index.js.map +1 -1
- package/build/session/types.d.ts +7 -0
- package/build/session/types.d.ts.map +1 -1
- package/build/tools/catalogue.d.ts.map +1 -1
- package/build/tools/catalogue.js +13 -2
- package/build/tools/catalogue.js.map +1 -1
- package/build/tools/consts.d.ts +9 -1
- package/build/tools/consts.d.ts.map +1 -1
- package/build/tools/consts.js +16 -0
- package/build/tools/consts.js.map +1 -1
- package/build/tools/consts.local.d.ts +1 -9
- package/build/tools/consts.local.d.ts.map +1 -1
- package/build/tools/consts.local.js +2 -16
- package/build/tools/consts.local.js.map +1 -1
- package/build/tools/index.d.ts +6 -0
- package/build/tools/index.d.ts.map +1 -1
- package/build/tools/index.js +4 -0
- package/build/tools/index.js.map +1 -1
- package/build/tools/instructions/types.d.ts +21 -0
- package/build/tools/instructions/types.d.ts.map +1 -0
- package/build/tools/instructions/types.js +2 -0
- package/build/tools/instructions/types.js.map +1 -0
- package/build/tools/instructions.d.ts +4 -0
- package/build/tools/instructions.d.ts.map +1 -0
- package/build/tools/instructions.js +143 -0
- package/build/tools/instructions.js.map +1 -0
- package/build/tools/mcp.d.ts +2 -6
- package/build/tools/mcp.d.ts.map +1 -1
- package/build/tools/mcp.js +36 -122
- package/build/tools/mcp.js.map +1 -1
- package/build/tools/platform.d.ts.map +1 -1
- package/build/tools/platform.js +13 -4
- package/build/tools/platform.js.map +1 -1
- package/build/tools/profile/consts.d.ts +8 -0
- package/build/tools/profile/consts.d.ts.map +1 -0
- package/build/tools/profile/consts.js +10 -0
- package/build/tools/profile/consts.js.map +1 -0
- package/build/tools/profile/listing/consts.local.d.ts +44 -0
- package/build/tools/profile/listing/consts.local.d.ts.map +1 -0
- package/build/tools/profile/listing/consts.local.js +612 -0
- package/build/tools/profile/listing/consts.local.js.map +1 -0
- package/build/tools/profile/listing/presentation.d.ts +12 -0
- package/build/tools/profile/listing/presentation.d.ts.map +1 -0
- package/build/tools/profile/listing/presentation.js +38 -0
- package/build/tools/profile/listing/presentation.js.map +1 -0
- package/build/tools/profile/listing/text.d.ts +13 -0
- package/build/tools/profile/listing/text.d.ts.map +1 -0
- package/build/tools/profile/listing/text.js +51 -0
- package/build/tools/profile/listing/text.js.map +1 -0
- package/build/tools/profile/listing/types.d.ts +18 -0
- package/build/tools/profile/listing/types.d.ts.map +1 -0
- package/build/tools/profile/listing/types.js +2 -0
- package/build/tools/profile/listing/types.js.map +1 -0
- package/build/tools/profile/listing.d.ts +18 -0
- package/build/tools/profile/listing.d.ts.map +1 -0
- package/build/tools/profile/listing.js +66 -0
- package/build/tools/profile/listing.js.map +1 -0
- package/build/tools/profile/presentation/platform/account.d.ts +4 -0
- package/build/tools/profile/presentation/platform/account.d.ts.map +1 -0
- package/build/tools/profile/presentation/platform/account.js +46 -0
- package/build/tools/profile/presentation/platform/account.js.map +1 -0
- package/build/tools/profile/presentation/platform/consts.d.ts +541 -0
- package/build/tools/profile/presentation/platform/consts.d.ts.map +1 -0
- package/build/tools/profile/presentation/platform/consts.js +335 -0
- package/build/tools/profile/presentation/platform/consts.js.map +1 -0
- package/build/tools/profile/presentation/platform/git.d.ts +4 -0
- package/build/tools/profile/presentation/platform/git.d.ts.map +1 -0
- package/build/tools/profile/presentation/platform/git.js +123 -0
- package/build/tools/profile/presentation/platform/git.js.map +1 -0
- package/build/tools/profile/presentation/platform/iam.d.ts +4 -0
- package/build/tools/profile/presentation/platform/iam.d.ts.map +1 -0
- package/build/tools/profile/presentation/platform/iam.js +202 -0
- package/build/tools/profile/presentation/platform/iam.js.map +1 -0
- package/build/tools/profile/presentation/platform/production.d.ts +4 -0
- package/build/tools/profile/presentation/platform/production.d.ts.map +1 -0
- package/build/tools/profile/presentation/platform/production.js +73 -0
- package/build/tools/profile/presentation/platform/production.js.map +1 -0
- package/build/tools/profile/presentation/platform/read.d.ts +4 -0
- package/build/tools/profile/presentation/platform/read.d.ts.map +1 -0
- package/build/tools/profile/presentation/platform/read.js +68 -0
- package/build/tools/profile/presentation/platform/read.js.map +1 -0
- package/build/tools/profile/presentation/platform/settings.d.ts +4 -0
- package/build/tools/profile/presentation/platform/settings.d.ts.map +1 -0
- package/build/tools/profile/presentation/platform/settings.js +48 -0
- package/build/tools/profile/presentation/platform/settings.js.map +1 -0
- package/build/tools/profile/presentation/platform/types.d.ts +174 -0
- package/build/tools/profile/presentation/platform/types.d.ts.map +1 -0
- package/build/tools/profile/presentation/platform/types.js +2 -0
- package/build/tools/profile/presentation/platform/types.js.map +1 -0
- package/build/tools/profile/presentation/platform/workspace.d.ts +4 -0
- package/build/tools/profile/presentation/platform/workspace.d.ts.map +1 -0
- package/build/tools/profile/presentation/platform/workspace.js +37 -0
- package/build/tools/profile/presentation/platform/workspace.js.map +1 -0
- package/build/tools/profile/presentation/platform.d.ts +11 -0
- package/build/tools/profile/presentation/platform.d.ts.map +1 -0
- package/build/tools/profile/presentation/platform.js +64 -0
- package/build/tools/profile/presentation/platform.js.map +1 -0
- package/build/tools/profile/presentation/work/consts.d.ts +22 -0
- package/build/tools/profile/presentation/work/consts.d.ts.map +1 -0
- package/build/tools/profile/presentation/work/consts.js +22 -0
- package/build/tools/profile/presentation/work/consts.js.map +1 -0
- package/build/tools/profile/presentation/work/presenters.d.ts +4 -0
- package/build/tools/profile/presentation/work/presenters.d.ts.map +1 -0
- package/build/tools/profile/presentation/work/presenters.js +502 -0
- package/build/tools/profile/presentation/work/presenters.js.map +1 -0
- package/build/tools/profile/presentation/work/schemas.d.ts +496 -0
- package/build/tools/profile/presentation/work/schemas.d.ts.map +1 -0
- package/build/tools/profile/presentation/work/schemas.js +358 -0
- package/build/tools/profile/presentation/work/schemas.js.map +1 -0
- package/build/tools/profile/presentation/work/shape.d.ts +4 -0
- package/build/tools/profile/presentation/work/shape.d.ts.map +1 -0
- package/build/tools/profile/presentation/work/shape.js +35 -0
- package/build/tools/profile/presentation/work/shape.js.map +1 -0
- package/build/tools/profile/presentation/work/types.d.ts +109 -0
- package/build/tools/profile/presentation/work/types.d.ts.map +1 -0
- package/build/tools/profile/presentation/work/types.js +2 -0
- package/build/tools/profile/presentation/work/types.js.map +1 -0
- package/build/tools/profile/presentation/work.d.ts +13 -0
- package/build/tools/profile/presentation/work.d.ts.map +1 -0
- package/build/tools/profile/presentation/work.js +66 -0
- package/build/tools/profile/presentation/work.js.map +1 -0
- package/build/tools/profile/types.d.ts +125 -0
- package/build/tools/profile/types.d.ts.map +1 -0
- package/build/tools/profile/types.js +2 -0
- package/build/tools/profile/types.js.map +1 -0
- package/build/tools/profile.d.ts +9 -0
- package/build/tools/profile.d.ts.map +1 -0
- package/build/tools/profile.js +114 -0
- package/build/tools/profile.js.map +1 -0
- package/build/tools/status/types.d.ts +7 -1
- package/build/tools/status/types.d.ts.map +1 -1
- package/build/tools/status.d.ts.map +1 -1
- package/build/tools/status.js +5 -1
- package/build/tools/status.js.map +1 -1
- package/build/tools/types.d.ts +12 -1
- package/build/tools/types.d.ts.map +1 -1
- package/build/types.d.ts +7 -1
- package/build/types.d.ts.map +1 -1
- package/package.json +25 -25
|
@@ -0,0 +1,358 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* The structured results of the work-domain tools under a listing profile.
|
|
4
|
+
*
|
|
5
|
+
* Every status, kind and stage is a plain string: these views cross a version skew, and a newer
|
|
6
|
+
* platform may answer with a value an older connector has never heard of — a schema that enumerated
|
|
7
|
+
* them would turn that into a failed call. Ids are kept only where a follow-up call takes them
|
|
8
|
+
* (a project, a story, a run, a question, a feed cursor); timestamps, session, entity and record ids
|
|
9
|
+
* never appear.
|
|
10
|
+
*/
|
|
11
|
+
/** A question the platform puts to the person; `answer_question` takes its `questionId`. */
|
|
12
|
+
const Question = z.object({
|
|
13
|
+
questionId: z.string(),
|
|
14
|
+
kind: z.string(),
|
|
15
|
+
question: z.string(),
|
|
16
|
+
context: z.string().optional(),
|
|
17
|
+
options: z.array(z.object({
|
|
18
|
+
value: z.string(),
|
|
19
|
+
label: z.string(),
|
|
20
|
+
description: z.string().optional(),
|
|
21
|
+
})).optional(),
|
|
22
|
+
multiple: z.boolean().optional(),
|
|
23
|
+
allowText: z.boolean().optional(),
|
|
24
|
+
default: z.union([z.string(), z.array(z.string())]).optional(),
|
|
25
|
+
});
|
|
26
|
+
/** A run of a pipeline; `pipeline_status` and `resume_pipeline` take its `runId`. */
|
|
27
|
+
const Run = z.object({
|
|
28
|
+
runId: z.string(),
|
|
29
|
+
pipeline: z.string(),
|
|
30
|
+
status: z.string(),
|
|
31
|
+
step: z.string().optional(),
|
|
32
|
+
completed: z.array(z.string()),
|
|
33
|
+
pending: z.array(z.string()),
|
|
34
|
+
warnings: z.array(z.string()).optional(),
|
|
35
|
+
error: z.string().optional(),
|
|
36
|
+
});
|
|
37
|
+
/** A workload: a preview, a production site or a local target. */
|
|
38
|
+
const Slot = z.object({
|
|
39
|
+
projectId: z.string().optional(),
|
|
40
|
+
kind: z.string(),
|
|
41
|
+
status: z.string(),
|
|
42
|
+
slug: z.string().optional(),
|
|
43
|
+
host: z.string().optional(),
|
|
44
|
+
initialized: z.boolean().optional(),
|
|
45
|
+
warnings: z.array(z.string()).optional(),
|
|
46
|
+
});
|
|
47
|
+
/** The project's agent: busy or idle, and the controls a person has over what it runs. */
|
|
48
|
+
const Agent = z.object({
|
|
49
|
+
locked: z.boolean(),
|
|
50
|
+
task: z.string().optional(),
|
|
51
|
+
stopping: z.boolean().optional(),
|
|
52
|
+
stopScope: z.string().optional(),
|
|
53
|
+
steerable: z.boolean().optional(),
|
|
54
|
+
});
|
|
55
|
+
/** The project card and the drafted brief `confirm_project` accepts edits to. */
|
|
56
|
+
const Project = z.object({
|
|
57
|
+
id: z.string(),
|
|
58
|
+
name: z.string(),
|
|
59
|
+
slug: z.string(),
|
|
60
|
+
status: z.string().optional(),
|
|
61
|
+
intrinsic: z.string().optional(),
|
|
62
|
+
description: z.string().optional(),
|
|
63
|
+
specification: z.string().optional(),
|
|
64
|
+
vision: z.string().optional(),
|
|
65
|
+
designSystem: z.string().optional(),
|
|
66
|
+
});
|
|
67
|
+
/** A project as a list names it. */
|
|
68
|
+
const ProjectRef = z.object({
|
|
69
|
+
id: z.string(),
|
|
70
|
+
name: z.string(),
|
|
71
|
+
slug: z.string(),
|
|
72
|
+
status: z.string().optional(),
|
|
73
|
+
});
|
|
74
|
+
/** A user story; every story tool takes its `id` or its `code`. */
|
|
75
|
+
const Story = z.object({
|
|
76
|
+
id: z.string(),
|
|
77
|
+
code: z.string().optional(),
|
|
78
|
+
title: z.string(),
|
|
79
|
+
status: z.string().optional(),
|
|
80
|
+
intrinsic: z.string().optional(),
|
|
81
|
+
area: z.string().optional(),
|
|
82
|
+
primary: z.boolean().optional(),
|
|
83
|
+
landing: z.boolean().optional(),
|
|
84
|
+
warning: z.string().optional(),
|
|
85
|
+
});
|
|
86
|
+
const StoryRef = z.object({
|
|
87
|
+
id: z.string(),
|
|
88
|
+
code: z.string().optional(),
|
|
89
|
+
});
|
|
90
|
+
/** A story batch in implementation order. */
|
|
91
|
+
const Batch = z.object({
|
|
92
|
+
kind: z.string(),
|
|
93
|
+
status: z.string(),
|
|
94
|
+
orderedBy: z.string().optional(),
|
|
95
|
+
stories: z.array(z.object({
|
|
96
|
+
id: z.string(),
|
|
97
|
+
code: z.string().optional(),
|
|
98
|
+
state: z.string(),
|
|
99
|
+
reason: z.string().optional(),
|
|
100
|
+
})),
|
|
101
|
+
current: StoryRef.optional(),
|
|
102
|
+
finished: z.number(),
|
|
103
|
+
total: z.number(),
|
|
104
|
+
halted: z.string().optional(),
|
|
105
|
+
});
|
|
106
|
+
/** What an origin is built with, or what a conversion rebuilds it onto. */
|
|
107
|
+
const Stack = z.object({
|
|
108
|
+
label: z.string(),
|
|
109
|
+
language: z.string().optional(),
|
|
110
|
+
framework: z.string().optional(),
|
|
111
|
+
});
|
|
112
|
+
/** A conversion stage's cost estimate. */
|
|
113
|
+
const Estimate = z.object({
|
|
114
|
+
stage: z.string(),
|
|
115
|
+
usd: z.number(),
|
|
116
|
+
delegated: z.boolean(),
|
|
117
|
+
});
|
|
118
|
+
/** One entry of a cursor feed, as one line a person reads. */
|
|
119
|
+
const FeedEntry = z.object({
|
|
120
|
+
kind: z.string(),
|
|
121
|
+
summary: z.string(),
|
|
122
|
+
projectId: z.string().optional(),
|
|
123
|
+
storyId: z.string().optional(),
|
|
124
|
+
code: z.string().optional(),
|
|
125
|
+
status: z.string().optional(),
|
|
126
|
+
path: z.string().optional(),
|
|
127
|
+
event: z.string().optional(),
|
|
128
|
+
});
|
|
129
|
+
/** A local service the generated application needs, as this machine has it. */
|
|
130
|
+
const LocalService = z.object({
|
|
131
|
+
configured: z.boolean(),
|
|
132
|
+
reachable: z.boolean(),
|
|
133
|
+
address: z.string().optional(),
|
|
134
|
+
});
|
|
135
|
+
const Ports = z.object({
|
|
136
|
+
api: z.number().optional(),
|
|
137
|
+
web: z.number().optional(),
|
|
138
|
+
worker: z.number().optional(),
|
|
139
|
+
});
|
|
140
|
+
const Kit = z.object({
|
|
141
|
+
id: z.string(),
|
|
142
|
+
kind: z.string(),
|
|
143
|
+
title: z.string(),
|
|
144
|
+
purpose: z.string(),
|
|
145
|
+
container: z.object({ key: z.string(), label: z.string() }),
|
|
146
|
+
types: z.array(z.object({ key: z.string(), label: z.string(), flow: z.string() })),
|
|
147
|
+
flows: z.array(z.object({
|
|
148
|
+
key: z.string(),
|
|
149
|
+
label: z.string(),
|
|
150
|
+
statuses: z.array(z.object({ key: z.string(), label: z.string(), intrinsic: z.string() })),
|
|
151
|
+
})),
|
|
152
|
+
});
|
|
153
|
+
const Capabilities = z.record(z.string(), z.boolean());
|
|
154
|
+
const Blueprint = z.object({
|
|
155
|
+
id: z.string(),
|
|
156
|
+
title: z.string(),
|
|
157
|
+
language: z.string(),
|
|
158
|
+
runtime: z.string(),
|
|
159
|
+
framework: z.string(),
|
|
160
|
+
capabilities: Capabilities,
|
|
161
|
+
cases: z.array(z.object({
|
|
162
|
+
id: z.string(),
|
|
163
|
+
title: z.string(),
|
|
164
|
+
description: z.string(),
|
|
165
|
+
tenancy: z.string(),
|
|
166
|
+
capabilities: Capabilities,
|
|
167
|
+
categoryKind: z.string().optional(),
|
|
168
|
+
categories: z.array(z.object({
|
|
169
|
+
id: z.string(),
|
|
170
|
+
title: z.string(),
|
|
171
|
+
description: z.string(),
|
|
172
|
+
aliases: z.array(z.string()).optional(),
|
|
173
|
+
records: z.array(z.string()).optional(),
|
|
174
|
+
})),
|
|
175
|
+
planningResources: z.array(z.string()).optional(),
|
|
176
|
+
botPlatforms: z.array(z.string()).optional(),
|
|
177
|
+
})),
|
|
178
|
+
});
|
|
179
|
+
export const BlueprintsOutput = {
|
|
180
|
+
defaultBlueprintId: z.string(),
|
|
181
|
+
blueprints: z.array(Blueprint),
|
|
182
|
+
};
|
|
183
|
+
export const ProjectStatusOutput = {
|
|
184
|
+
project: Project,
|
|
185
|
+
slot: Slot.optional(),
|
|
186
|
+
production: z.object({ status: z.string(), host: z.string().optional() }).optional(),
|
|
187
|
+
agent: Agent,
|
|
188
|
+
run: Run.optional(),
|
|
189
|
+
waitingFor: z.string().optional(),
|
|
190
|
+
question: Question.optional(),
|
|
191
|
+
local: z.boolean().optional(),
|
|
192
|
+
};
|
|
193
|
+
export const ProjectListOutput = {
|
|
194
|
+
total: z.number(),
|
|
195
|
+
projects: z.array(ProjectRef),
|
|
196
|
+
};
|
|
197
|
+
export const ProjectDeletedOutput = {
|
|
198
|
+
deleted: z.boolean(),
|
|
199
|
+
project: ProjectRef,
|
|
200
|
+
};
|
|
201
|
+
export const KitsOutput = {
|
|
202
|
+
projectId: z.string(),
|
|
203
|
+
kits: z.array(Kit),
|
|
204
|
+
};
|
|
205
|
+
export const KitApplyOutput = {
|
|
206
|
+
projectId: z.string(),
|
|
207
|
+
kit: z.string(),
|
|
208
|
+
applied: z.array(z.string()),
|
|
209
|
+
skipped: z.array(z.string()),
|
|
210
|
+
warnings: z.array(z.string()),
|
|
211
|
+
};
|
|
212
|
+
export const StoryPageOutput = {
|
|
213
|
+
total: z.number(),
|
|
214
|
+
page: z.number(),
|
|
215
|
+
/** The page `list_stories` answers next, while there is one. */
|
|
216
|
+
nextPage: z.number().optional(),
|
|
217
|
+
stories: z.array(Story),
|
|
218
|
+
};
|
|
219
|
+
export const StoryCardOutput = {
|
|
220
|
+
story: Story,
|
|
221
|
+
};
|
|
222
|
+
export const StoryStatusOutput = {
|
|
223
|
+
projectId: z.string(),
|
|
224
|
+
story: Story,
|
|
225
|
+
run: Run.optional(),
|
|
226
|
+
waitingFor: z.string().optional(),
|
|
227
|
+
question: Question.optional(),
|
|
228
|
+
};
|
|
229
|
+
export const StoryBatchOutput = {
|
|
230
|
+
projectId: z.string(),
|
|
231
|
+
/** Absent: no batch has run on the project. */
|
|
232
|
+
batch: Batch.optional(),
|
|
233
|
+
};
|
|
234
|
+
export const StoryBatchCancelOutput = {
|
|
235
|
+
...StoryBatchOutput,
|
|
236
|
+
/** The story in progress the cancel also stopped, rolled back to planned. */
|
|
237
|
+
stopped: StoryRef.optional(),
|
|
238
|
+
};
|
|
239
|
+
export const SteerOutput = {
|
|
240
|
+
projectId: z.string(),
|
|
241
|
+
queued: z.boolean(),
|
|
242
|
+
};
|
|
243
|
+
export const StopOutput = {
|
|
244
|
+
projectId: z.string(),
|
|
245
|
+
agent: Agent,
|
|
246
|
+
};
|
|
247
|
+
export const PipelineOutput = {
|
|
248
|
+
run: z.object({
|
|
249
|
+
runId: z.string(),
|
|
250
|
+
pipeline: z.string(),
|
|
251
|
+
status: z.string(),
|
|
252
|
+
step: z.string().optional(),
|
|
253
|
+
completed: z.array(z.string()),
|
|
254
|
+
pending: z.array(z.string()),
|
|
255
|
+
warnings: z.array(z.string()),
|
|
256
|
+
/** The step the run failed at. */
|
|
257
|
+
failedAt: z.string().optional(),
|
|
258
|
+
error: z.string().optional(),
|
|
259
|
+
note: z.string().optional(),
|
|
260
|
+
attempts: z.number().optional(),
|
|
261
|
+
}),
|
|
262
|
+
waitingFor: z.string().optional(),
|
|
263
|
+
question: Question.optional(),
|
|
264
|
+
};
|
|
265
|
+
export const ConvertCheckOutput = {
|
|
266
|
+
projectId: z.string(),
|
|
267
|
+
verdict: z.string(),
|
|
268
|
+
reasons: z.array(z.string()),
|
|
269
|
+
stack: Stack.optional(),
|
|
270
|
+
architecture: z.string().optional(),
|
|
271
|
+
shape: z.string(),
|
|
272
|
+
monorepo: z.boolean(),
|
|
273
|
+
unlinked: z.array(z.string()),
|
|
274
|
+
files: z.number(),
|
|
275
|
+
bytes: z.number(),
|
|
276
|
+
bulk: z.number(),
|
|
277
|
+
estimate: Estimate.optional(),
|
|
278
|
+
};
|
|
279
|
+
export const ConversionOutput = {
|
|
280
|
+
projectId: z.string(),
|
|
281
|
+
stage: z.string(),
|
|
282
|
+
status: z.string(),
|
|
283
|
+
decision: z.string().optional(),
|
|
284
|
+
/** The decision `proceed_conversion` takes to continue, while the conversion awaits one. */
|
|
285
|
+
nextDecision: z.string().optional(),
|
|
286
|
+
verdict: z.string().optional(),
|
|
287
|
+
stack: Stack.optional(),
|
|
288
|
+
targetStack: Stack.optional(),
|
|
289
|
+
architecture: z.string().optional(),
|
|
290
|
+
estimate: Estimate.optional(),
|
|
291
|
+
storyEstimate: z.object({ minUsd: z.number(), maxUsd: z.number(), stories: z.number() }).optional(),
|
|
292
|
+
originState: z.string().optional(),
|
|
293
|
+
assumptions: z.number(),
|
|
294
|
+
runId: z.string().optional(),
|
|
295
|
+
waitingFor: z.string().optional(),
|
|
296
|
+
question: Question.optional(),
|
|
297
|
+
error: z.string().optional(),
|
|
298
|
+
};
|
|
299
|
+
export const QuestionOutput = {
|
|
300
|
+
/** Whether this call handed over a question; false when none is waiting. */
|
|
301
|
+
asked: z.boolean(),
|
|
302
|
+
questionId: z.string().optional(),
|
|
303
|
+
};
|
|
304
|
+
export const ActivityOutput = {
|
|
305
|
+
projectId: z.string(),
|
|
306
|
+
/** Pass back as `after` to read what comes next. */
|
|
307
|
+
cursor: z.string(),
|
|
308
|
+
/** Entries after the given cursor were dropped before this read. */
|
|
309
|
+
gap: z.boolean(),
|
|
310
|
+
entries: z.array(FeedEntry),
|
|
311
|
+
};
|
|
312
|
+
export const NotificationsOutput = {
|
|
313
|
+
cursor: z.string(),
|
|
314
|
+
gap: z.boolean(),
|
|
315
|
+
entries: z.array(FeedEntry),
|
|
316
|
+
};
|
|
317
|
+
export const FileChangesOutput = {
|
|
318
|
+
...ActivityOutput,
|
|
319
|
+
/** The preview's watcher runs; while it does not, no change is recorded. */
|
|
320
|
+
watching: z.boolean(),
|
|
321
|
+
};
|
|
322
|
+
export const IntentOutput = {
|
|
323
|
+
prompt: z.string(),
|
|
324
|
+
};
|
|
325
|
+
export const LocalStatusOutput = {
|
|
326
|
+
configured: z.boolean(),
|
|
327
|
+
missing: z.array(z.string()),
|
|
328
|
+
services: z.object({ database: z.boolean(), queue: z.boolean() }).optional(),
|
|
329
|
+
running: z.boolean(),
|
|
330
|
+
ready: z.boolean().optional(),
|
|
331
|
+
phase: z.string().optional(),
|
|
332
|
+
reason: z.string().optional(),
|
|
333
|
+
appUrl: z.string().optional(),
|
|
334
|
+
apiUrl: z.string().optional(),
|
|
335
|
+
ports: Ports.optional(),
|
|
336
|
+
};
|
|
337
|
+
export const RunLocalOutput = {
|
|
338
|
+
appUrl: z.string().optional(),
|
|
339
|
+
apiUrl: z.string().optional(),
|
|
340
|
+
ports: Ports,
|
|
341
|
+
error: z.string().optional(),
|
|
342
|
+
buildError: z.string().optional(),
|
|
343
|
+
};
|
|
344
|
+
export const SetupReportOutput = {
|
|
345
|
+
needsWorker: z.boolean(),
|
|
346
|
+
database: LocalService,
|
|
347
|
+
queue: LocalService,
|
|
348
|
+
tools: z.object({ bun: z.boolean(), git: z.boolean(), docker: z.boolean() }),
|
|
349
|
+
platform: z.string(),
|
|
350
|
+
envIgnored: z.boolean(),
|
|
351
|
+
/** The services the application still waits for: `database`, `queue`. */
|
|
352
|
+
missing: z.array(z.string()),
|
|
353
|
+
};
|
|
354
|
+
export const SlotListOutput = {
|
|
355
|
+
total: z.number(),
|
|
356
|
+
slots: z.array(Slot),
|
|
357
|
+
};
|
|
358
|
+
//# sourceMappingURL=schemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../../../src/tools/profile/presentation/work/schemas.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shape.d.ts","sourceRoot":"","sources":["../../../../../src/tools/profile/presentation/work/shape.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C,eAAO,MAAM,iBAAiB,QAAO,WAmDpC,CAAA;AAED,eAAO,MAAM,WAAW,aAAsB,CAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { refusalHelper } from '../../../refusal.js';
|
|
2
|
+
import { STACK_FRAME, WARNING_CAP } from './consts.js';
|
|
3
|
+
export const createShapeHelper = () => {
|
|
4
|
+
const cut = (value, cap) => cap != null && value.length > cap ? `${value.slice(0, cap - 1)}…` : value;
|
|
5
|
+
const isRecord = (value) => value != null && typeof value === 'object' && !Array.isArray(value);
|
|
6
|
+
const record = (value) => isRecord(value) ? value : {};
|
|
7
|
+
const records = (value) => Array.isArray(value) ? value.filter(isRecord) : [];
|
|
8
|
+
const text = (value, cap) => typeof value === 'string' && value.trim() !== '' ? cut(value, cap) : undefined;
|
|
9
|
+
const required = (value) => typeof value === 'string' ? value : '';
|
|
10
|
+
const texts = (value) => Array.isArray(value) ? value.filter((item) => typeof item === 'string' && item !== '') : [];
|
|
11
|
+
const textOrTexts = (value) => typeof value === 'string' ? value : Array.isArray(value) ? texts(value) : undefined;
|
|
12
|
+
const number = (value) => typeof value === 'number' && Number.isFinite(value) ? value : undefined;
|
|
13
|
+
const flag = (value) => typeof value === 'boolean' ? value : undefined;
|
|
14
|
+
const phrase = (value) => {
|
|
15
|
+
if (typeof value !== 'string' || value.trim() === '')
|
|
16
|
+
return undefined;
|
|
17
|
+
// The same sentence the text result says for a stored marker; anything that is not one (build
|
|
18
|
+
// diagnostics somebody asked for) stands as it is, minus the frames of a stack.
|
|
19
|
+
let phrased;
|
|
20
|
+
try {
|
|
21
|
+
phrased = refusalHelper.refusalPhrase(value);
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
phrased = value;
|
|
25
|
+
}
|
|
26
|
+
const kept = phrased.split('\n').filter(line => !STACK_FRAME.test(line)).join('\n').trim();
|
|
27
|
+
return kept !== '' ? cut(kept, WARNING_CAP) : undefined;
|
|
28
|
+
};
|
|
29
|
+
const phrases = (values) => Array.isArray(values) ? values.map(phrase).filter((item) => item != null) : [];
|
|
30
|
+
const nonEmpty = (values) => values.length > 0 ? values : undefined;
|
|
31
|
+
const compact = (value) => Object.fromEntries(Object.entries(value).filter(([, item]) => item !== undefined));
|
|
32
|
+
return { isRecord, record, records, text, required, texts, textOrTexts, number, flag, phrase, phrases, nonEmpty, compact };
|
|
33
|
+
};
|
|
34
|
+
export const shapeHelper = createShapeHelper();
|
|
35
|
+
//# sourceMappingURL=shape.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shape.js","sourceRoot":"","sources":["../../../../../src/tools/profile/presentation/work/shape.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAGtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAgB,EAAE;IACjD,MAAM,GAAG,GAAG,CAAC,KAAa,EAAE,GAAY,EAAU,EAAE,CAClD,GAAG,IAAI,IAAI,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAA;IAE3E,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAoC,EAAE,CACpE,KAAK,IAAI,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAErE,MAAM,MAAM,GAAG,CAAC,KAAc,EAA2B,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IAExF,MAAM,OAAO,GAAG,CAAC,KAAc,EAA6B,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAEjH,MAAM,IAAI,GAAG,CAAC,KAAc,EAAE,GAAY,EAAsB,EAAE,CAChE,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEhF,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAU,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IAEnF,MAAM,KAAK,GAAG,CAAC,KAAc,EAAY,EAAE,CACzC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAE7G,MAAM,WAAW,GAAG,CAAC,KAAc,EAAiC,EAAE,CACpE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAErF,MAAM,MAAM,GAAG,CAAC,KAAc,EAAsB,EAAE,CACpD,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;IAEzE,MAAM,IAAI,GAAG,CAAC,KAAc,EAAuB,EAAE,CAAC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;IAEpG,MAAM,MAAM,GAAG,CAAC,KAAc,EAAsB,EAAE;QACpD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,SAAS,CAAA;QACtE,8FAA8F;QAC9F,gFAAgF;QAChF,IAAI,OAAe,CAAA;QACnB,IAAI,CAAC;YACH,OAAO,GAAG,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAC9C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,KAAK,CAAA;QACjB,CAAC;QACD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QAE1F,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACzD,CAAC,CAAA;IAED,MAAM,OAAO,GAAG,CAAC,MAAe,EAAY,EAAE,CAC5C,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAEhG,MAAM,QAAQ,GAAG,CAAI,MAAW,EAAmB,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;IAE5F,MAAM,OAAO,GAAG,CAAmB,KAAQ,EAAK,EAAE,CAChD,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAM,CAAA;IAEzF,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAA;AAC5H,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,iBAAiB,EAAE,CAAA"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import type { ToolPresentation } from '../../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* The coercions every presenter reads a wire record through.
|
|
4
|
+
*
|
|
5
|
+
* A presenter is TOTAL: whatever a platform of any version answered — a field missing, a status
|
|
6
|
+
* nobody has heard of, a value of the wrong type — it still yields a value its schema accepts,
|
|
7
|
+
* because the MCP server validates the structured result and fails the whole call when it does not
|
|
8
|
+
* fit. So nothing is read off a record directly: every member answers a well-typed value or
|
|
9
|
+
* `undefined`, and {@link ShapeHelper.compact} drops the `undefined`s an optional field leaves.
|
|
10
|
+
*/
|
|
11
|
+
export interface ShapeHelper {
|
|
12
|
+
/** Whether a value is a plain object — not an array, a primitive or null. */
|
|
13
|
+
isRecord: (value: unknown) => value is Record<string, unknown>;
|
|
14
|
+
/** A plain object; an empty one for anything else (an array, a primitive, null). */
|
|
15
|
+
record: (value: unknown) => Record<string, unknown>;
|
|
16
|
+
/** The plain objects of an array; none for anything that is not one. */
|
|
17
|
+
records: (value: unknown) => Record<string, unknown>[];
|
|
18
|
+
/** A non-empty string, cut at `cap` when one is given; `undefined` for anything else. */
|
|
19
|
+
text: (value: unknown, cap?: number) => string | undefined;
|
|
20
|
+
/** A string a schema requires: the value when it is a string, `''` when it is not. */
|
|
21
|
+
required: (value: unknown) => string;
|
|
22
|
+
/** The non-empty strings of an array; none for anything that is not one. */
|
|
23
|
+
texts: (value: unknown) => string[];
|
|
24
|
+
/** A string, or the non-empty strings of an array; `undefined` for anything else. */
|
|
25
|
+
textOrTexts: (value: unknown) => string | string[] | undefined;
|
|
26
|
+
/** A finite number; `undefined` for anything else. */
|
|
27
|
+
number: (value: unknown) => number | undefined;
|
|
28
|
+
/** A boolean; `undefined` for anything else. */
|
|
29
|
+
flag: (value: unknown) => boolean | undefined;
|
|
30
|
+
/**
|
|
31
|
+
* A stored or thrown refusal as a person reads it — the marker phrased exactly as the text result
|
|
32
|
+
* phrases it, stack frames dropped, cut at `WARNING_CAP`. `undefined` for nothing to say.
|
|
33
|
+
*/
|
|
34
|
+
phrase: (value: unknown) => string | undefined;
|
|
35
|
+
/** The phrased warnings of an array, the empty ones left out; none for anything that is not one. */
|
|
36
|
+
phrases: (values: unknown) => string[];
|
|
37
|
+
/** The array, or `undefined` when it is empty — an optional list is left out rather than sent empty. */
|
|
38
|
+
nonEmpty: <T>(values: T[]) => T[] | undefined;
|
|
39
|
+
/** The object without its `undefined` members, so no optional field crosses as one. */
|
|
40
|
+
compact: <T extends object>(value: T) => T;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* One tool's structured result as a listing profile presents it: the base result and the call's
|
|
44
|
+
* arguments in, the declared shape out — never throwing, whatever came in.
|
|
45
|
+
*/
|
|
46
|
+
export interface Presenter {
|
|
47
|
+
(structured: object, args: Record<string, unknown>): Record<string, unknown>;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* The presenters of the work-domain tools — projects, stories, batches, runs, conversions, the
|
|
51
|
+
* question loop, the feeds and the local target. One member per result shape; several tools share
|
|
52
|
+
* one where their results do (every tool answering a project status presents it the same way).
|
|
53
|
+
*/
|
|
54
|
+
export interface WorkPresenters {
|
|
55
|
+
/** `describe_blueprints`: the installed registry, its cases and categories. */
|
|
56
|
+
blueprints: Presenter;
|
|
57
|
+
/** A project status, as `project_status` answers it or wrapped (`{ project }`) as a write does. */
|
|
58
|
+
projectStatus: Presenter;
|
|
59
|
+
/** `list_projects`. */
|
|
60
|
+
projectList: Presenter;
|
|
61
|
+
/** `delete_project`. */
|
|
62
|
+
projectDeleted: Presenter;
|
|
63
|
+
/** `describe_planning_kits`. */
|
|
64
|
+
kits: Presenter;
|
|
65
|
+
/** `apply_planning_kit`. */
|
|
66
|
+
kitApply: Presenter;
|
|
67
|
+
/** One page of `list_stories`, and the next page while there is one. */
|
|
68
|
+
storyPage: Presenter;
|
|
69
|
+
/** The matches of `search_stories` — one page, and no next one: the search takes no page. */
|
|
70
|
+
storySearch: Presenter;
|
|
71
|
+
/** One story card, or what a create committed before its card landed. */
|
|
72
|
+
storyCard: Presenter;
|
|
73
|
+
/** A story's domain status, wrapped (`{ story, landing? }`) as the story tools answer it. */
|
|
74
|
+
storyStatus: Presenter;
|
|
75
|
+
/** A story batch (`{ projectId?, batch }`), `null` when none has run, a cancel's stopped story. */
|
|
76
|
+
storyBatch: Presenter;
|
|
77
|
+
/** `steer_agent`. */
|
|
78
|
+
steer: Presenter;
|
|
79
|
+
/** `stop_agent`. */
|
|
80
|
+
stop: Presenter;
|
|
81
|
+
/** A pipeline run's state (`{ pipeline }`). */
|
|
82
|
+
pipeline: Presenter;
|
|
83
|
+
/** `check_convertible`. */
|
|
84
|
+
convertCheck: Presenter;
|
|
85
|
+
/** A conversion's status, as `conversion_status` answers it or wrapped (`{ conversion }`). */
|
|
86
|
+
conversion: Presenter;
|
|
87
|
+
/** `next_question`: whether a question was handed over, and its id. */
|
|
88
|
+
question: Presenter;
|
|
89
|
+
/** `project_activity`. */
|
|
90
|
+
activity: Presenter;
|
|
91
|
+
/** `notifications`. */
|
|
92
|
+
notifications: Presenter;
|
|
93
|
+
/** `file_changes`. */
|
|
94
|
+
fileChanges: Presenter;
|
|
95
|
+
/** `pickup_intent`. */
|
|
96
|
+
intent: Presenter;
|
|
97
|
+
/** `local_status`. */
|
|
98
|
+
localStatus: Presenter;
|
|
99
|
+
/** `run_local`. */
|
|
100
|
+
runLocal: Presenter;
|
|
101
|
+
/** `local_setup_guide`, `set_local_service`. */
|
|
102
|
+
setupReport: Presenter;
|
|
103
|
+
/** `list_slots`. */
|
|
104
|
+
slots: Presenter;
|
|
105
|
+
}
|
|
106
|
+
/** The structured output and presenter of every work-domain tool, keyed by tool name. */
|
|
107
|
+
export interface WorkPresentation extends Readonly<Record<string, ToolPresentation>> {
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/tools/profile/presentation/work/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/tools/profile/presentation/work/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ToolPresentation } from '../types.js';
|
|
2
|
+
import type { WorkPresentation } from './work/types.js';
|
|
3
|
+
/**
|
|
4
|
+
* The declared structured output of every work-domain tool that answers one, and the presenter that
|
|
5
|
+
* turns its base result into that shape.
|
|
6
|
+
*
|
|
7
|
+
* A tool absent here answers text alone under a listing profile — `describe_platform`,
|
|
8
|
+
* `session_status`, `delete_story`, `answer_question` and `stop_local` never carry a structured
|
|
9
|
+
* part. Titles, descriptions and annotations are the profile's, not this table's.
|
|
10
|
+
*/
|
|
11
|
+
export declare const createWorkPresentation: () => WorkPresentation;
|
|
12
|
+
export declare const workPresentation: Readonly<Record<string, ToolPresentation>>;
|
|
13
|
+
//# sourceMappingURL=work.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"work.d.ts","sourceRoot":"","sources":["../../../../src/tools/profile/presentation/work.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAQnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAEvD;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,QAAO,gBAkEzC,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAA4B,CAAA"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { workPresenters } from './work/presenters.js';
|
|
2
|
+
import { ActivityOutput, BlueprintsOutput, ConversionOutput, ConvertCheckOutput, FileChangesOutput, IntentOutput, KitApplyOutput, KitsOutput, LocalStatusOutput, NotificationsOutput, PipelineOutput, ProjectDeletedOutput, ProjectListOutput, ProjectStatusOutput, QuestionOutput, RunLocalOutput, SetupReportOutput, SlotListOutput, SteerOutput, StopOutput, StoryBatchCancelOutput, StoryBatchOutput, StoryCardOutput, StoryPageOutput, StoryStatusOutput, } from './work/schemas.js';
|
|
3
|
+
/**
|
|
4
|
+
* The declared structured output of every work-domain tool that answers one, and the presenter that
|
|
5
|
+
* turns its base result into that shape.
|
|
6
|
+
*
|
|
7
|
+
* A tool absent here answers text alone under a listing profile — `describe_platform`,
|
|
8
|
+
* `session_status`, `delete_story`, `answer_question` and `stop_local` never carry a structured
|
|
9
|
+
* part. Titles, descriptions and annotations are the profile's, not this table's.
|
|
10
|
+
*/
|
|
11
|
+
export const createWorkPresentation = () => {
|
|
12
|
+
const p = workPresenters;
|
|
13
|
+
const projectStatus = { output: ProjectStatusOutput, present: p.projectStatus };
|
|
14
|
+
const storyStatus = { output: StoryStatusOutput, present: p.storyStatus };
|
|
15
|
+
const storyCard = { output: StoryCardOutput, present: p.storyCard };
|
|
16
|
+
const storyBatch = { output: StoryBatchOutput, present: p.storyBatch };
|
|
17
|
+
const pipeline = { output: PipelineOutput, present: p.pipeline };
|
|
18
|
+
const conversion = { output: ConversionOutput, present: p.conversion };
|
|
19
|
+
const setupReport = { output: SetupReportOutput, present: p.setupReport };
|
|
20
|
+
return Object.freeze({
|
|
21
|
+
describe_blueprints: { output: BlueprintsOutput, present: p.blueprints },
|
|
22
|
+
create_project: projectStatus,
|
|
23
|
+
confirm_project: projectStatus,
|
|
24
|
+
project_status: projectStatus,
|
|
25
|
+
attach_project: projectStatus,
|
|
26
|
+
reinitialize_project: projectStatus,
|
|
27
|
+
modify_project: projectStatus,
|
|
28
|
+
rename_project: projectStatus,
|
|
29
|
+
list_projects: { output: ProjectListOutput, present: p.projectList },
|
|
30
|
+
delete_project: { output: ProjectDeletedOutput, present: p.projectDeleted },
|
|
31
|
+
describe_planning_kits: { output: KitsOutput, present: p.kits },
|
|
32
|
+
apply_planning_kit: { output: KitApplyOutput, present: p.kitApply },
|
|
33
|
+
list_stories: { output: StoryPageOutput, present: p.storyPage },
|
|
34
|
+
search_stories: { output: StoryPageOutput, present: p.storySearch },
|
|
35
|
+
create_story: storyCard,
|
|
36
|
+
update_story: storyCard,
|
|
37
|
+
develop_story: storyStatus,
|
|
38
|
+
reset_story: storyStatus,
|
|
39
|
+
complete_story: storyStatus,
|
|
40
|
+
story_status: storyStatus,
|
|
41
|
+
start_story_batch: storyBatch,
|
|
42
|
+
story_batch_status: storyBatch,
|
|
43
|
+
cancel_story_batch: { output: StoryBatchCancelOutput, present: p.storyBatch },
|
|
44
|
+
steer_agent: { output: SteerOutput, present: p.steer },
|
|
45
|
+
stop_agent: { output: StopOutput, present: p.stop },
|
|
46
|
+
pipeline_status: pipeline,
|
|
47
|
+
resume_pipeline: pipeline,
|
|
48
|
+
check_convertible: { output: ConvertCheckOutput, present: p.convertCheck },
|
|
49
|
+
convert_project: conversion,
|
|
50
|
+
proceed_conversion: conversion,
|
|
51
|
+
conversion_status: conversion,
|
|
52
|
+
purge_origin: conversion,
|
|
53
|
+
next_question: { output: QuestionOutput, present: p.question },
|
|
54
|
+
project_activity: { output: ActivityOutput, present: p.activity },
|
|
55
|
+
notifications: { output: NotificationsOutput, present: p.notifications },
|
|
56
|
+
file_changes: { output: FileChangesOutput, present: p.fileChanges },
|
|
57
|
+
pickup_intent: { output: IntentOutput, present: p.intent },
|
|
58
|
+
local_status: { output: LocalStatusOutput, present: p.localStatus },
|
|
59
|
+
run_local: { output: RunLocalOutput, present: p.runLocal },
|
|
60
|
+
local_setup_guide: setupReport,
|
|
61
|
+
set_local_service: setupReport,
|
|
62
|
+
list_slots: { output: SlotListOutput, present: p.slots },
|
|
63
|
+
});
|
|
64
|
+
};
|
|
65
|
+
export const workPresentation = createWorkPresentation();
|
|
66
|
+
//# sourceMappingURL=work.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"work.js","sourceRoot":"","sources":["../../../../src/tools/profile/presentation/work.ts"],"names":[],"mappings":"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"}
|