@tlog/mcp 0.1.3

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.
@@ -0,0 +1,439 @@
1
+ import { ISSUE_STATUSES, TEST_RESULT_STATUSES, TESTCASE_STATUSES } from "@tlog/shared";
2
+ const schemaUpdatedAt = new Date().toISOString();
3
+ const requiredFields = {
4
+ suite: ["id", "title", "tags", "description", "scoped", "owners", "duration", "related", "remarks"],
5
+ case: [
6
+ "id",
7
+ "title",
8
+ "tags",
9
+ "description",
10
+ "scoped",
11
+ "status",
12
+ "operations",
13
+ "related",
14
+ "remarks",
15
+ "completedDay",
16
+ "tests",
17
+ "issues"
18
+ ],
19
+ issue: ["incident", "owners", "causes", "solutions", "status", "detectedDay", "completedDay", "related", "remarks"]
20
+ };
21
+ const suiteJsonSchema = {
22
+ type: "object",
23
+ required: [...requiredFields.suite],
24
+ additionalProperties: false,
25
+ properties: {
26
+ id: { type: "string" },
27
+ title: { type: "string" },
28
+ tags: { type: "array", items: { type: "string" } },
29
+ description: { type: "string" },
30
+ scoped: { type: "boolean" },
31
+ owners: { type: "array", items: { type: "string" } },
32
+ duration: {
33
+ type: "object",
34
+ properties: {
35
+ scheduled: { type: "object" },
36
+ actual: { type: "object" }
37
+ }
38
+ },
39
+ related: { type: "array", items: { type: "string" } },
40
+ remarks: { type: "array", items: { type: "string" } }
41
+ }
42
+ };
43
+ const issueJsonSchema = {
44
+ type: "object",
45
+ required: [...requiredFields.issue],
46
+ additionalProperties: false,
47
+ properties: {
48
+ incident: { type: "string" },
49
+ owners: { type: "array", items: { type: "string" } },
50
+ causes: { type: "array", items: { type: "string" } },
51
+ solutions: { type: "array", items: { type: "string" } },
52
+ status: { type: "string", enum: ISSUE_STATUSES },
53
+ detectedDay: { type: ["string", "null"], format: "date" },
54
+ completedDay: { type: ["string", "null"], format: "date" },
55
+ related: { type: "array", items: { type: "string" } },
56
+ remarks: { type: "array", items: { type: "string" } }
57
+ }
58
+ };
59
+ const caseJsonSchema = {
60
+ type: "object",
61
+ required: [...requiredFields.case],
62
+ additionalProperties: false,
63
+ properties: {
64
+ id: { type: "string" },
65
+ title: { type: "string" },
66
+ tags: { type: "array", items: { type: "string" } },
67
+ description: { type: "string" },
68
+ scoped: { type: "boolean" },
69
+ status: {
70
+ oneOf: [
71
+ { type: "null" },
72
+ {
73
+ type: "string",
74
+ enum: TESTCASE_STATUSES.filter((value) => value !== null)
75
+ }
76
+ ]
77
+ },
78
+ operations: { type: "array", items: { type: "string" } },
79
+ related: { type: "array", items: { type: "string" } },
80
+ remarks: { type: "array", items: { type: "string" } },
81
+ completedDay: { type: ["string", "null"], format: "date" },
82
+ tests: { type: "array", items: { type: "object" } },
83
+ issues: { type: "array", items: issueJsonSchema }
84
+ }
85
+ };
86
+ const enumValues = {
87
+ testcaseStatus: TESTCASE_STATUSES.filter((value) => value !== null),
88
+ testResultStatus: TEST_RESULT_STATUSES.filter((value) => value !== null),
89
+ issueStatus: ISSUE_STATUSES,
90
+ legacy: {
91
+ issueDetectedAt: "normalized to detectedDay"
92
+ }
93
+ };
94
+ const suiteExampleMinimal = {
95
+ id: "suite-login",
96
+ title: "Login Suite",
97
+ tags: ["auth"],
98
+ description: "Login flow regression",
99
+ scoped: true,
100
+ owners: ["qa"],
101
+ duration: {
102
+ scheduled: { start: "2026-02-01", end: "2026-02-10" },
103
+ actual: { start: "2026-02-01", end: "2026-02-10" }
104
+ },
105
+ related: [],
106
+ remarks: []
107
+ };
108
+ const caseExampleMinimal = {
109
+ id: "case-login-001",
110
+ title: "Valid credential login",
111
+ tags: ["auth"],
112
+ description: "Login with valid user and password",
113
+ scoped: true,
114
+ status: "todo",
115
+ operations: ["Open login page", "Enter credentials", "Submit"],
116
+ related: [],
117
+ remarks: [],
118
+ completedDay: null,
119
+ tests: [
120
+ {
121
+ name: "main-path",
122
+ expected: "user is redirected to dashboard",
123
+ actual: "",
124
+ trails: [],
125
+ status: null
126
+ }
127
+ ],
128
+ issues: []
129
+ };
130
+ const issueExampleMinimal = {
131
+ incident: "Cannot login with valid credentials",
132
+ owners: ["qa"],
133
+ causes: ["auth service timeout"],
134
+ solutions: ["increase timeout and retry"],
135
+ status: "open",
136
+ detectedDay: "2026-02-20",
137
+ completedDay: null,
138
+ related: [],
139
+ remarks: []
140
+ };
141
+ export function buildTlogSchemaPayload() {
142
+ return {
143
+ version: "1.0.0",
144
+ updatedAt: schemaUpdatedAt,
145
+ suite: suiteJsonSchema,
146
+ case: caseJsonSchema,
147
+ issue: issueJsonSchema,
148
+ enum: enumValues,
149
+ required: requiredFields,
150
+ format: {
151
+ json: true,
152
+ text: true
153
+ }
154
+ };
155
+ }
156
+ export function buildTlogSchemaExamplesPayload() {
157
+ return {
158
+ version: "1.0.0",
159
+ updatedAt: schemaUpdatedAt,
160
+ minimal: {
161
+ suite: suiteExampleMinimal,
162
+ case: caseExampleMinimal,
163
+ issue: issueExampleMinimal
164
+ },
165
+ recommended: {
166
+ suite: { ...suiteExampleMinimal, tags: ["auth", "smoke"], remarks: ["priority:high"] },
167
+ case: {
168
+ ...caseExampleMinimal,
169
+ status: "doing",
170
+ issues: [issueExampleMinimal],
171
+ remarks: ["verify on staging first"]
172
+ }
173
+ }
174
+ };
175
+ }
176
+ function getTopicNotes(topic) {
177
+ if (topic === "suite") {
178
+ return ["Use create_suite_from_prompt or create_suite_file to create suites."];
179
+ }
180
+ if (topic === "case") {
181
+ return ["Use create_testcase_from_prompt or create_case_file to create cases.", "Use detectedDay for issue detection date."];
182
+ }
183
+ if (topic === "issue") {
184
+ return ["Issue date fields are detectedDay/completedDay.", "Legacy detectedAt/completedAt are normalized."];
185
+ }
186
+ if (topic === "enum") {
187
+ return ["Enum values are strict and case-sensitive."];
188
+ }
189
+ return ["Use this payload to prepare inputs before calling mutation tools."];
190
+ }
191
+ export function getSchemaByTopic(topic) {
192
+ const payload = buildTlogSchemaPayload();
193
+ if (topic === "all") {
194
+ return {
195
+ topic,
196
+ schema: payload,
197
+ requiredFields: requiredFields,
198
+ enumValues,
199
+ notes: getTopicNotes(topic)
200
+ };
201
+ }
202
+ if (topic === "enum") {
203
+ return {
204
+ topic,
205
+ schema: { enum: enumValues },
206
+ requiredFields: {},
207
+ enumValues,
208
+ notes: getTopicNotes(topic)
209
+ };
210
+ }
211
+ return {
212
+ topic,
213
+ schema: payload[topic],
214
+ requiredFields: requiredFields[topic],
215
+ enumValues,
216
+ notes: getTopicNotes(topic)
217
+ };
218
+ }
219
+ export function getSchemaExamplesByTopic(topic) {
220
+ const examples = buildTlogSchemaExamplesPayload();
221
+ const minimal = examples.minimal;
222
+ const recommended = examples.recommended;
223
+ if (topic === "all" || topic === "enum") {
224
+ return {
225
+ topic,
226
+ schema: examples,
227
+ requiredFields: requiredFields,
228
+ enumValues,
229
+ notes: getTopicNotes(topic)
230
+ };
231
+ }
232
+ return {
233
+ topic,
234
+ schema: {
235
+ minimal: minimal[topic],
236
+ recommended: recommended[topic]
237
+ },
238
+ requiredFields: requiredFields[topic],
239
+ enumValues,
240
+ notes: getTopicNotes(topic)
241
+ };
242
+ }
243
+ export function getSchemaHints(entityType) {
244
+ return {
245
+ entityType,
246
+ requiredFields: requiredFields[entityType],
247
+ enumValues,
248
+ notes: [
249
+ "Do not add undefined fields.",
250
+ "Use enum values exactly as defined.",
251
+ "Run validate_tests_directory after write=true operations."
252
+ ]
253
+ };
254
+ }
255
+ export function collectMissingContext(operation, draft) {
256
+ const missingFields = [];
257
+ if (operation === "create_suite_from_prompt") {
258
+ if (typeof draft.instruction !== "string" || draft.instruction.trim().length === 0) {
259
+ missingFields.push("instruction");
260
+ }
261
+ if (typeof draft.targetDir !== "string" || draft.targetDir.trim().length === 0) {
262
+ missingFields.push("targetDir");
263
+ }
264
+ }
265
+ if (operation === "create_testcase_from_prompt") {
266
+ if (typeof draft.instruction !== "string" || draft.instruction.trim().length === 0) {
267
+ missingFields.push("instruction");
268
+ }
269
+ if (typeof draft.suiteDir !== "string" || draft.suiteDir.trim().length === 0) {
270
+ missingFields.push("suiteDir");
271
+ }
272
+ const context = asRecord(draft.context);
273
+ const operations = Array.isArray(context.operations)
274
+ ? context.operations.filter((item) => typeof item === "string" && item.trim().length > 0)
275
+ : [];
276
+ if (operations.length === 0) {
277
+ missingFields.push("context.operations");
278
+ }
279
+ const tests = Array.isArray(context.tests) ? context.tests : [];
280
+ const hasExpected = tests.some((item) => {
281
+ const test = asRecord(item);
282
+ return typeof test.expected === "string" && test.expected.trim().length > 0;
283
+ });
284
+ const expectedRaw = context.expected;
285
+ const hasContextExpected = (typeof expectedRaw === "string" && expectedRaw.trim().length > 0) ||
286
+ (Array.isArray(expectedRaw) &&
287
+ expectedRaw.some((item) => typeof item === "string" && item.trim().length > 0));
288
+ if (!hasExpected && !hasContextExpected) {
289
+ missingFields.push("context.tests[].expected");
290
+ }
291
+ }
292
+ if (operation === "update_suite") {
293
+ if (typeof draft.id !== "string" || draft.id.trim().length === 0) {
294
+ missingFields.push("id");
295
+ }
296
+ if (!draft.patch || typeof draft.patch !== "object") {
297
+ missingFields.push("patch");
298
+ }
299
+ }
300
+ if (operation === "update_case") {
301
+ if (typeof draft.id !== "string" || draft.id.trim().length === 0) {
302
+ missingFields.push("id");
303
+ }
304
+ if (!draft.patch || typeof draft.patch !== "object") {
305
+ missingFields.push("patch");
306
+ }
307
+ }
308
+ const questions = missingFields.map((field) => toQuestion(field));
309
+ return {
310
+ missingFields,
311
+ questions,
312
+ nextAction: missingFields.length > 0
313
+ ? `Fill missing fields and call ${operation} again.`
314
+ : `Context is sufficient. Continue with ${operation}.`
315
+ };
316
+ }
317
+ export function buildMissingContextGuidance(operation, draft) {
318
+ const workspaceRoot = typeof draft.workspaceRoot === "string" && draft.workspaceRoot.trim().length > 0
319
+ ? draft.workspaceRoot
320
+ : "/absolute/workspace/path";
321
+ if (operation === "create_testcase_from_prompt") {
322
+ const suiteDir = typeof draft.suiteDir === "string" && draft.suiteDir.trim().length > 0 ? draft.suiteDir : "tests/mcp";
323
+ const instruction = typeof draft.instruction === "string" && draft.instruction.trim().length > 0
324
+ ? draft.instruction
325
+ : "作成したいテストケースの目的を記述";
326
+ return {
327
+ why: "create_testcase_from_prompt では、生成品質を上げるため context.operations と期待結果(context.tests[].expected または context.expected)を必須にしています。",
328
+ contextTemplate: {
329
+ operations: ["事前条件を確認する", "対象コマンドを実行する", "終了コードと出力を確認する"],
330
+ tests: [
331
+ {
332
+ name: "happy-path",
333
+ expected: "期待する出力形式と終了コードが得られる"
334
+ },
335
+ {
336
+ name: "error-path",
337
+ expected: "異常系で適切なエラーと非0終了コードが得られる"
338
+ }
339
+ ],
340
+ expected: ["期待する出力形式と終了コードが得られる"]
341
+ },
342
+ retryExample: {
343
+ workspaceRoot,
344
+ suiteDir,
345
+ instruction,
346
+ context: {
347
+ operations: ["事前条件を確認する", "対象コマンドを実行する", "終了コードと出力を確認する"],
348
+ tests: [{ name: "happy-path", expected: "期待する出力形式と終了コードが得られる" }]
349
+ },
350
+ write: false
351
+ }
352
+ };
353
+ }
354
+ if (operation === "create_suite_from_prompt") {
355
+ const targetDir = typeof draft.targetDir === "string" && draft.targetDir.trim().length > 0 ? draft.targetDir : "tests/mcp";
356
+ const instruction = typeof draft.instruction === "string" && draft.instruction.trim().length > 0
357
+ ? draft.instruction
358
+ : "id: suite-sample; title: Sample Suite";
359
+ return {
360
+ why: "create_suite_from_prompt では instruction と targetDir が必要です。",
361
+ retryExample: {
362
+ workspaceRoot,
363
+ targetDir,
364
+ instruction,
365
+ write: false
366
+ }
367
+ };
368
+ }
369
+ return {
370
+ why: "不足項目を埋めて再実行してください。"
371
+ };
372
+ }
373
+ function asRecord(value) {
374
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
375
+ return {};
376
+ }
377
+ return value;
378
+ }
379
+ function toQuestion(field) {
380
+ if (field === "context.operations") {
381
+ return "実施手順を 3-7 個の箇条書きで教えてください(例: 事前条件確認、コマンド実行、結果確認)。";
382
+ }
383
+ if (field === "context.tests[].expected") {
384
+ return "各テスト観点の期待結果を教えてください(例: 出力形式、終了コード、エラーメッセージ)。context.expected で共通期待をまとめて渡しても構いません。";
385
+ }
386
+ if (field === "suiteDir") {
387
+ return "作成先ディレクトリ(例: tests/mcp)を教えてください。";
388
+ }
389
+ return `Please provide ${field}.`;
390
+ }
391
+ export function getSchemaUsageTemplate(useCase) {
392
+ const common = [
393
+ "Goal: generate schema-safe tool input for TLog.",
394
+ "Step 1: Call get_tlog_schema(topic) and get_tlog_schema_examples(topic).",
395
+ "Step 2: Build input using only schema-defined fields.",
396
+ "Step 3: Use enum values exactly as declared (case-sensitive).",
397
+ "Step 4: Call collect_missing_context(operation, draft) before mutation calls.",
398
+ "Step 5: If missingFields is non-empty, ask user questions and retry.",
399
+ "Step 6: Run mutation tool with write=false first, then write=true after review."
400
+ ];
401
+ if (useCase === "create_suite") {
402
+ return [
403
+ ...common,
404
+ "",
405
+ "Use case: create_suite",
406
+ "Tool: create_suite_from_prompt",
407
+ "Input template:",
408
+ "{ workspaceRoot, targetDir, instruction, defaults?, write }",
409
+ "Instruction recommendation: include id and title explicitly.",
410
+ "Expected helper fields in response: schemaHints, warnings, diffSummary."
411
+ ].join("\n");
412
+ }
413
+ if (useCase === "create_case") {
414
+ return [
415
+ ...common,
416
+ "",
417
+ "Use case: create_case",
418
+ "Tool: create_testcase_from_prompt",
419
+ "Input template:",
420
+ "{ workspaceRoot, suiteDir, instruction, context?, write }",
421
+ "Recommended context (preferred):",
422
+ "{ operations: string[], tests: [{ name, expected }], tags?: string[], description?: string }",
423
+ "Fallback context (only if tests is hard to construct):",
424
+ "{ operations: string[], expected: string|string[], tags?: string[], description?: string }",
425
+ "Issue date fields: detectedDay/completedDay (legacy detectedAt/completedAt are normalized).",
426
+ "Expected helper fields in response: schemaHints, warnings, diffSummary."
427
+ ].join("\n");
428
+ }
429
+ return [
430
+ ...common,
431
+ "",
432
+ "Use case: update_case",
433
+ "Tool: update_case",
434
+ "Input template:",
435
+ "{ workspaceRoot, dir, id, patch, write }",
436
+ "Patch rule: do not include unknown keys; id is immutable."
437
+ ].join("\n");
438
+ }
439
+ //# sourceMappingURL=schema-contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-contract.js","sourceRoot":"","sources":["../src/schema-contract.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,172 @@
1
+ import { z } from "zod";
2
+ export declare const createSuiteInputSchema: {
3
+ workspaceRoot: z.ZodString;
4
+ targetDir: z.ZodString;
5
+ instruction: z.ZodString;
6
+ defaults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
7
+ write: z.ZodDefault<z.ZodBoolean>;
8
+ };
9
+ export declare const createCaseInputSchema: {
10
+ workspaceRoot: z.ZodString;
11
+ suiteDir: z.ZodString;
12
+ instruction: z.ZodString;
13
+ context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
14
+ write: z.ZodDefault<z.ZodBoolean>;
15
+ };
16
+ export declare const expandCaseInputSchema: {
17
+ workspaceRoot: z.ZodString;
18
+ testcasePath: z.ZodString;
19
+ instruction: z.ZodString;
20
+ preserveFields: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
21
+ write: z.ZodDefault<z.ZodBoolean>;
22
+ };
23
+ export declare const organizeInputSchema: {
24
+ workspaceRoot: z.ZodString;
25
+ testcasePath: z.ZodOptional<z.ZodString>;
26
+ testcase: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
27
+ strategy: z.ZodDefault<z.ZodEnum<["risk-based", "flow-based", "component-based"]>>;
28
+ mode: z.ZodDefault<z.ZodEnum<["replace", "append", "auto"]>>;
29
+ write: z.ZodDefault<z.ZodBoolean>;
30
+ };
31
+ export declare const initTestsDirectoryInputSchema: {
32
+ workspaceRoot: z.ZodString;
33
+ outputDir: z.ZodOptional<z.ZodString>;
34
+ templateDir: z.ZodOptional<z.ZodNullable<z.ZodString>>;
35
+ write: z.ZodDefault<z.ZodBoolean>;
36
+ };
37
+ export declare const createTemplateDirectoryInputSchema: {
38
+ workspaceRoot: z.ZodString;
39
+ outputDir: z.ZodString;
40
+ fromDir: z.ZodOptional<z.ZodNullable<z.ZodString>>;
41
+ write: z.ZodDefault<z.ZodBoolean>;
42
+ };
43
+ export declare const createSuiteFileInputSchema: {
44
+ workspaceRoot: z.ZodString;
45
+ dir: z.ZodString;
46
+ id: z.ZodString;
47
+ title: z.ZodString;
48
+ fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
49
+ write: z.ZodDefault<z.ZodBoolean>;
50
+ };
51
+ export declare const createCaseFileInputSchema: {
52
+ workspaceRoot: z.ZodString;
53
+ dir: z.ZodString;
54
+ id: z.ZodString;
55
+ title: z.ZodString;
56
+ fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
57
+ write: z.ZodDefault<z.ZodBoolean>;
58
+ };
59
+ export declare const validateTestsDirectoryInputSchema: {
60
+ workspaceRoot: z.ZodString;
61
+ dir: z.ZodString;
62
+ };
63
+ export declare const listTemplatesInputSchema: {
64
+ workspaceRoot: z.ZodString;
65
+ dir: z.ZodString;
66
+ };
67
+ export declare const listSuitesInputSchema: {
68
+ workspaceRoot: z.ZodString;
69
+ dir: z.ZodString;
70
+ filters: z.ZodOptional<z.ZodObject<{
71
+ id: z.ZodOptional<z.ZodString>;
72
+ tag: z.ZodOptional<z.ZodString>;
73
+ }, "strip", z.ZodTypeAny, {
74
+ id?: string | undefined;
75
+ tag?: string | undefined;
76
+ }, {
77
+ id?: string | undefined;
78
+ tag?: string | undefined;
79
+ }>>;
80
+ };
81
+ export declare const listCasesInputSchema: {
82
+ workspaceRoot: z.ZodString;
83
+ dir: z.ZodString;
84
+ filters: z.ZodOptional<z.ZodObject<{
85
+ id: z.ZodOptional<z.ZodString>;
86
+ status: z.ZodOptional<z.ZodString>;
87
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
88
+ owners: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
89
+ scopedOnly: z.ZodOptional<z.ZodBoolean>;
90
+ issueHas: z.ZodOptional<z.ZodString>;
91
+ issueStatus: z.ZodOptional<z.ZodString>;
92
+ }, "strip", z.ZodTypeAny, {
93
+ id?: string | undefined;
94
+ tags?: string[] | undefined;
95
+ owners?: string[] | undefined;
96
+ status?: string | undefined;
97
+ scopedOnly?: boolean | undefined;
98
+ issueStatus?: string | undefined;
99
+ issueHas?: string | undefined;
100
+ }, {
101
+ id?: string | undefined;
102
+ tags?: string[] | undefined;
103
+ owners?: string[] | undefined;
104
+ status?: string | undefined;
105
+ scopedOnly?: boolean | undefined;
106
+ issueStatus?: string | undefined;
107
+ issueHas?: string | undefined;
108
+ }>>;
109
+ };
110
+ export declare const resolveEntityPathByIdInputSchema: {
111
+ workspaceRoot: z.ZodString;
112
+ dir: z.ZodString;
113
+ id: z.ZodString;
114
+ };
115
+ export declare const updateSuiteInputSchema: {
116
+ workspaceRoot: z.ZodString;
117
+ dir: z.ZodString;
118
+ id: z.ZodString;
119
+ patch: z.ZodRecord<z.ZodString, z.ZodUnknown>;
120
+ write: z.ZodDefault<z.ZodBoolean>;
121
+ };
122
+ export declare const updateCaseInputSchema: {
123
+ workspaceRoot: z.ZodString;
124
+ dir: z.ZodString;
125
+ id: z.ZodString;
126
+ patch: z.ZodRecord<z.ZodString, z.ZodUnknown>;
127
+ write: z.ZodDefault<z.ZodBoolean>;
128
+ };
129
+ export declare const getTlogSchemaInputSchema: {
130
+ topic: z.ZodDefault<z.ZodEnum<["suite", "case", "enum", "issue", "all"]>>;
131
+ };
132
+ export declare const schemaUsagePromptArgsSchema: {
133
+ useCase: z.ZodDefault<z.ZodEnum<["create_suite", "create_case", "update_case"]>>;
134
+ };
135
+ export declare const collectMissingContextInputSchema: {
136
+ operation: z.ZodEnum<["create_suite_from_prompt", "create_testcase_from_prompt", "update_suite", "update_case"]>;
137
+ draft: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
138
+ requestElicitation: z.ZodDefault<z.ZodBoolean>;
139
+ };
140
+ export declare const resolveRelatedTargetsInputSchema: {
141
+ workspaceRoot: z.ZodString;
142
+ dir: z.ZodString;
143
+ sourceId: z.ZodString;
144
+ relatedIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
145
+ };
146
+ export declare const syncRelatedInputSchema: {
147
+ workspaceRoot: z.ZodString;
148
+ dir: z.ZodString;
149
+ sourceId: z.ZodString;
150
+ relatedIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
151
+ mode: z.ZodDefault<z.ZodEnum<["one-way", "two-way"]>>;
152
+ write: z.ZodDefault<z.ZodBoolean>;
153
+ };
154
+ export declare const getWorkspaceSnapshotInputSchema: {
155
+ workspaceRoot: z.ZodString;
156
+ dir: z.ZodString;
157
+ excludeUnscoped: z.ZodDefault<z.ZodBoolean>;
158
+ };
159
+ export declare const suiteStatsInputSchema: {
160
+ workspaceRoot: z.ZodString;
161
+ dir: z.ZodString;
162
+ suiteId: z.ZodString;
163
+ excludeUnscoped: z.ZodDefault<z.ZodBoolean>;
164
+ };
165
+ export declare const deleteEntityInputSchema: {
166
+ workspaceRoot: z.ZodString;
167
+ dir: z.ZodString;
168
+ id: z.ZodString;
169
+ dryRun: z.ZodBoolean;
170
+ confirm: z.ZodOptional<z.ZodBoolean>;
171
+ };
172
+ //# sourceMappingURL=schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,sBAAsB;;;;;;CAMlC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;CAMjC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;CAMjC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;CAO/B,CAAC;AAEF,eAAO,MAAM,6BAA6B;;;;;CAKzC,CAAC;AAEF,eAAO,MAAM,kCAAkC;;;;;CAK9C,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;;;;CAOtC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;CAOrC,CAAC;AAEF,eAAO,MAAM,iCAAiC;;;CAG7C,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;CAGpC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;CASjC,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAchC,CAAC;AAEF,eAAO,MAAM,gCAAgC;;;;CAI5C,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;CAMlC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;CAMjC,CAAC;AAEF,eAAO,MAAM,wBAAwB;;CAEpC,CAAC;AAEF,eAAO,MAAM,2BAA2B;;CAEvC,CAAC;AAEF,eAAO,MAAM,gCAAgC;;;;CAI5C,CAAC;AAEF,eAAO,MAAM,gCAAgC;;;;;CAK5C,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;CAOlC,CAAC;AAEF,eAAO,MAAM,+BAA+B;;;;CAI3C,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;CAKjC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;CAMnC,CAAC"}