@structured-world/gitlab-mcp 4.0.0 → 4.1.1
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 +90 -4
- package/dist/entities/core/registry.js +162 -70
- package/dist/entities/core/registry.js.map +1 -1
- package/dist/entities/core/schema-readonly.d.ts +421 -199
- package/dist/entities/core/schema-readonly.js +222 -131
- package/dist/entities/core/schema-readonly.js.map +1 -1
- package/dist/entities/core/schema.d.ts +152 -61
- package/dist/entities/core/schema.js +111 -55
- package/dist/entities/core/schema.js.map +1 -1
- package/dist/entities/files/registry.js +5 -5
- package/dist/entities/files/registry.js.map +1 -1
- package/dist/entities/files/schema-readonly.d.ts +124 -24
- package/dist/entities/files/schema.d.ts +82 -17
- package/dist/entities/labels/registry.js +23 -34
- package/dist/entities/labels/registry.js.map +1 -1
- package/dist/entities/labels/schema-readonly.d.ts +26 -10
- package/dist/entities/labels/schema-readonly.js +5 -15
- package/dist/entities/labels/schema-readonly.js.map +1 -1
- package/dist/entities/labels/schema.d.ts +40 -11
- package/dist/entities/labels/schema.js +8 -23
- package/dist/entities/labels/schema.js.map +1 -1
- package/dist/entities/milestones/registry.js +44 -61
- package/dist/entities/milestones/registry.js.map +1 -1
- package/dist/entities/milestones/schema-readonly.d.ts +105 -30
- package/dist/entities/milestones/schema-readonly.js +7 -15
- package/dist/entities/milestones/schema-readonly.js.map +1 -1
- package/dist/entities/milestones/schema.d.ts +52 -19
- package/dist/entities/milestones/schema.js +8 -28
- package/dist/entities/milestones/schema.js.map +1 -1
- package/dist/entities/mrs/registry.js +20 -20
- package/dist/entities/mrs/registry.js.map +1 -1
- package/dist/entities/mrs/schema-readonly.d.ts +243 -68
- package/dist/entities/mrs/schema-readonly.js +83 -54
- package/dist/entities/mrs/schema-readonly.js.map +1 -1
- package/dist/entities/mrs/schema.d.ts +885 -142
- package/dist/entities/mrs/schema.js +113 -37
- package/dist/entities/mrs/schema.js.map +1 -1
- package/dist/entities/pipelines/registry.js +12 -12
- package/dist/entities/pipelines/registry.js.map +1 -1
- package/dist/entities/pipelines/schema-readonly.d.ts +525 -115
- package/dist/entities/pipelines/schema.d.ts +104 -30
- package/dist/entities/shared.d.ts +787 -110
- package/dist/entities/utils.d.ts +2 -2
- package/dist/entities/variables/registry.js +23 -33
- package/dist/entities/variables/registry.js.map +1 -1
- package/dist/entities/variables/schema-readonly.d.ts +30 -7
- package/dist/entities/variables/schema-readonly.js +4 -13
- package/dist/entities/variables/schema-readonly.js.map +1 -1
- package/dist/entities/variables/schema.d.ts +83 -26
- package/dist/entities/variables/schema.js +6 -21
- package/dist/entities/variables/schema.js.map +1 -1
- package/dist/entities/wiki/registry.js +25 -42
- package/dist/entities/wiki/registry.js.map +1 -1
- package/dist/entities/wiki/schema-readonly.d.ts +37 -8
- package/dist/entities/wiki/schema-readonly.js +4 -13
- package/dist/entities/wiki/schema-readonly.js.map +1 -1
- package/dist/entities/wiki/schema.d.ts +34 -9
- package/dist/entities/wiki/schema.js +6 -21
- package/dist/entities/wiki/schema.js.map +1 -1
- package/dist/entities/workitems/registry.js +94 -13
- package/dist/entities/workitems/registry.js.map +1 -1
- package/dist/entities/workitems/schema-readonly.d.ts +29 -32
- package/dist/entities/workitems/schema-readonly.js +7 -2
- package/dist/entities/workitems/schema-readonly.js.map +1 -1
- package/dist/entities/workitems/schema.d.ts +45 -21
- package/dist/graphql/workItems.d.ts +34 -1
- package/dist/graphql/workItems.js +349 -2
- package/dist/graphql/workItems.js.map +1 -1
- package/dist/handlers.js +44 -0
- package/dist/handlers.js.map +1 -1
- package/dist/registry-manager.d.ts +1 -0
- package/dist/registry-manager.js +54 -0
- package/dist/registry-manager.js.map +1 -1
- package/dist/services/ConnectionManager.js +3 -3
- package/dist/services/ConnectionManager.js.map +1 -1
- package/dist/services/SchemaIntrospector.js +3 -3
- package/dist/services/SchemaIntrospector.js.map +1 -1
- package/dist/services/ToolAvailability.js +30 -1
- package/dist/services/ToolAvailability.js.map +1 -1
- package/dist/structured-world-gitlab-mcp-4.1.1.tgz +0 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utils/namespace.d.ts +6 -0
- package/dist/utils/namespace.js +52 -0
- package/dist/utils/namespace.js.map +1 -0
- package/package.json +5 -3
- package/dist/structured-world-gitlab-mcp-4.0.0.tgz +0 -0
|
@@ -2,36 +2,60 @@ import { z } from 'zod';
|
|
|
2
2
|
export declare const CreateWorkItemSchema: z.ZodObject<{
|
|
3
3
|
namespacePath: z.ZodString;
|
|
4
4
|
title: z.ZodString;
|
|
5
|
-
workItemType: z.ZodEnum<
|
|
6
|
-
OBJECTIVE: "OBJECTIVE";
|
|
7
|
-
KEY_RESULT: "KEY_RESULT";
|
|
8
|
-
REQUIREMENT: "REQUIREMENT";
|
|
9
|
-
ISSUE: "ISSUE";
|
|
10
|
-
INCIDENT: "INCIDENT";
|
|
11
|
-
TEST_CASE: "TEST_CASE";
|
|
12
|
-
TASK: "TASK";
|
|
13
|
-
EPIC: "EPIC";
|
|
14
|
-
}>;
|
|
5
|
+
workItemType: z.ZodEnum<["EPIC", "ISSUE", "TASK", "INCIDENT", "TEST_CASE", "REQUIREMENT", "OBJECTIVE", "KEY_RESULT"]>;
|
|
15
6
|
description: z.ZodOptional<z.ZodString>;
|
|
16
|
-
assigneeIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
17
|
-
labelIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
7
|
+
assigneeIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
8
|
+
labelIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
18
9
|
milestoneId: z.ZodOptional<z.ZodString>;
|
|
19
|
-
}, z.
|
|
10
|
+
}, "strip", z.ZodTypeAny, {
|
|
11
|
+
title: string;
|
|
12
|
+
namespacePath: string;
|
|
13
|
+
workItemType: "OBJECTIVE" | "KEY_RESULT" | "REQUIREMENT" | "ISSUE" | "INCIDENT" | "TEST_CASE" | "TASK" | "EPIC";
|
|
14
|
+
description?: string | undefined;
|
|
15
|
+
assigneeIds?: string[] | undefined;
|
|
16
|
+
labelIds?: string[] | undefined;
|
|
17
|
+
milestoneId?: string | undefined;
|
|
18
|
+
}, {
|
|
19
|
+
title: string;
|
|
20
|
+
namespacePath: string;
|
|
21
|
+
workItemType: "OBJECTIVE" | "KEY_RESULT" | "REQUIREMENT" | "ISSUE" | "INCIDENT" | "TEST_CASE" | "TASK" | "EPIC";
|
|
22
|
+
description?: string | undefined;
|
|
23
|
+
assigneeIds?: string[] | undefined;
|
|
24
|
+
labelIds?: string[] | undefined;
|
|
25
|
+
milestoneId?: string | undefined;
|
|
26
|
+
}>;
|
|
20
27
|
export declare const UpdateWorkItemSchema: z.ZodObject<{
|
|
21
28
|
id: z.ZodString;
|
|
22
29
|
title: z.ZodOptional<z.ZodString>;
|
|
23
30
|
description: z.ZodOptional<z.ZodString>;
|
|
24
|
-
state: z.ZodOptional<z.ZodEnum<
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}>>;
|
|
28
|
-
assigneeIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
29
|
-
labelIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
31
|
+
state: z.ZodOptional<z.ZodEnum<["CLOSE", "REOPEN"]>>;
|
|
32
|
+
assigneeIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
33
|
+
labelIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
30
34
|
milestoneId: z.ZodOptional<z.ZodString>;
|
|
31
|
-
}, z.
|
|
35
|
+
}, "strip", z.ZodTypeAny, {
|
|
36
|
+
id: string;
|
|
37
|
+
title?: string | undefined;
|
|
38
|
+
description?: string | undefined;
|
|
39
|
+
state?: "CLOSE" | "REOPEN" | undefined;
|
|
40
|
+
assigneeIds?: string[] | undefined;
|
|
41
|
+
labelIds?: string[] | undefined;
|
|
42
|
+
milestoneId?: string | undefined;
|
|
43
|
+
}, {
|
|
44
|
+
id: string;
|
|
45
|
+
title?: string | undefined;
|
|
46
|
+
description?: string | undefined;
|
|
47
|
+
state?: "CLOSE" | "REOPEN" | undefined;
|
|
48
|
+
assigneeIds?: string[] | undefined;
|
|
49
|
+
labelIds?: string[] | undefined;
|
|
50
|
+
milestoneId?: string | undefined;
|
|
51
|
+
}>;
|
|
32
52
|
export declare const DeleteWorkItemSchema: z.ZodObject<{
|
|
33
53
|
id: z.ZodString;
|
|
34
|
-
}, z.
|
|
54
|
+
}, "strip", z.ZodTypeAny, {
|
|
55
|
+
id: string;
|
|
56
|
+
}, {
|
|
57
|
+
id: string;
|
|
58
|
+
}>;
|
|
35
59
|
export type CreateWorkItemOptions = z.infer<typeof CreateWorkItemSchema>;
|
|
36
60
|
export type UpdateWorkItemOptions = z.infer<typeof UpdateWorkItemSchema>;
|
|
37
61
|
export type DeleteWorkItemOptions = z.infer<typeof DeleteWorkItemSchema>;
|
|
@@ -363,6 +363,27 @@ export interface Vulnerability {
|
|
|
363
363
|
name: string;
|
|
364
364
|
webUrl: string;
|
|
365
365
|
}
|
|
366
|
+
export declare const GET_GROUP_PROJECTS: TypedDocumentNode<{
|
|
367
|
+
group: {
|
|
368
|
+
projects: {
|
|
369
|
+
nodes: Array<{
|
|
370
|
+
id: string;
|
|
371
|
+
fullPath: string;
|
|
372
|
+
}>;
|
|
373
|
+
};
|
|
374
|
+
};
|
|
375
|
+
}, {
|
|
376
|
+
groupPath: string;
|
|
377
|
+
includeSubgroups?: boolean;
|
|
378
|
+
}>;
|
|
379
|
+
export declare const GET_NAMESPACE_TYPE: TypedDocumentNode<{
|
|
380
|
+
namespace: {
|
|
381
|
+
__typename: string;
|
|
382
|
+
fullPath: string;
|
|
383
|
+
};
|
|
384
|
+
}, {
|
|
385
|
+
namespacePath: string;
|
|
386
|
+
}>;
|
|
366
387
|
export declare const GET_WORK_ITEMS: TypedDocumentNode<{
|
|
367
388
|
group: {
|
|
368
389
|
workItems: {
|
|
@@ -371,7 +392,19 @@ export declare const GET_WORK_ITEMS: TypedDocumentNode<{
|
|
|
371
392
|
};
|
|
372
393
|
}, {
|
|
373
394
|
groupPath: string;
|
|
374
|
-
types?:
|
|
395
|
+
types?: string[];
|
|
396
|
+
first?: number;
|
|
397
|
+
after?: string;
|
|
398
|
+
}>;
|
|
399
|
+
export declare const GET_PROJECT_WORK_ITEMS: TypedDocumentNode<{
|
|
400
|
+
project: {
|
|
401
|
+
workItems: {
|
|
402
|
+
nodes: WorkItem[];
|
|
403
|
+
};
|
|
404
|
+
};
|
|
405
|
+
}, {
|
|
406
|
+
projectPath: string;
|
|
407
|
+
types?: string[];
|
|
375
408
|
first?: number;
|
|
376
409
|
after?: string;
|
|
377
410
|
}>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GET_WORK_ITEM_TYPES = exports.DELETE_WORK_ITEM = exports.UPDATE_WORK_ITEM = exports.CREATE_WORK_ITEM_WITH_DESCRIPTION = exports.CREATE_WORK_ITEM = exports.GET_WORK_ITEM = exports.GET_WORK_ITEMS = exports.WorkItemWidgetTypes = void 0;
|
|
3
|
+
exports.GET_WORK_ITEM_TYPES = exports.DELETE_WORK_ITEM = exports.UPDATE_WORK_ITEM = exports.CREATE_WORK_ITEM_WITH_DESCRIPTION = exports.CREATE_WORK_ITEM = exports.GET_WORK_ITEM = exports.GET_PROJECT_WORK_ITEMS = exports.GET_WORK_ITEMS = exports.GET_NAMESPACE_TYPE = exports.GET_GROUP_PROJECTS = exports.WorkItemWidgetTypes = void 0;
|
|
4
4
|
const graphql_tag_1 = require("graphql-tag");
|
|
5
5
|
exports.WorkItemWidgetTypes = {
|
|
6
6
|
ASSIGNEES: 'ASSIGNEES',
|
|
@@ -33,6 +33,26 @@ exports.WorkItemWidgetTypes = {
|
|
|
33
33
|
LINKED_RESOURCES: 'LINKED_RESOURCES',
|
|
34
34
|
VULNERABILITIES: 'VULNERABILITIES',
|
|
35
35
|
};
|
|
36
|
+
exports.GET_GROUP_PROJECTS = (0, graphql_tag_1.gql) `
|
|
37
|
+
query GetGroupProjects($groupPath: ID!, $includeSubgroups: Boolean) {
|
|
38
|
+
group(fullPath: $groupPath) {
|
|
39
|
+
projects(includeSubgroups: $includeSubgroups) {
|
|
40
|
+
nodes {
|
|
41
|
+
id
|
|
42
|
+
fullPath
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
`;
|
|
48
|
+
exports.GET_NAMESPACE_TYPE = (0, graphql_tag_1.gql) `
|
|
49
|
+
query GetNamespaceType($namespacePath: ID!) {
|
|
50
|
+
namespace(fullPath: $namespacePath) {
|
|
51
|
+
__typename
|
|
52
|
+
fullPath
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
`;
|
|
36
56
|
exports.GET_WORK_ITEMS = (0, graphql_tag_1.gql) `
|
|
37
57
|
query GetWorkItems($groupPath: ID!, $types: [IssueType!], $first: Int, $after: String) {
|
|
38
58
|
group(fullPath: $groupPath) {
|
|
@@ -239,7 +259,6 @@ exports.GET_WORK_ITEMS = (0, graphql_tag_1.gql) `
|
|
|
239
259
|
... on WorkItemWidgetLinkedItems {
|
|
240
260
|
linkedItems {
|
|
241
261
|
nodes {
|
|
242
|
-
linkId
|
|
243
262
|
linkType
|
|
244
263
|
workItem {
|
|
245
264
|
id
|
|
@@ -352,6 +371,334 @@ exports.GET_WORK_ITEMS = (0, graphql_tag_1.gql) `
|
|
|
352
371
|
}
|
|
353
372
|
}
|
|
354
373
|
`;
|
|
374
|
+
exports.GET_PROJECT_WORK_ITEMS = (0, graphql_tag_1.gql) `
|
|
375
|
+
query GetProjectWorkItems($projectPath: ID!, $types: [IssueType!], $first: Int, $after: String) {
|
|
376
|
+
project(fullPath: $projectPath) {
|
|
377
|
+
workItems(types: $types, first: $first, after: $after) {
|
|
378
|
+
nodes {
|
|
379
|
+
id
|
|
380
|
+
iid
|
|
381
|
+
title
|
|
382
|
+
description
|
|
383
|
+
state
|
|
384
|
+
workItemType {
|
|
385
|
+
id
|
|
386
|
+
name
|
|
387
|
+
}
|
|
388
|
+
createdAt
|
|
389
|
+
updatedAt
|
|
390
|
+
closedAt
|
|
391
|
+
webUrl
|
|
392
|
+
widgets {
|
|
393
|
+
type
|
|
394
|
+
... on WorkItemWidgetAssignees {
|
|
395
|
+
allowsMultipleAssignees
|
|
396
|
+
canInviteMembers
|
|
397
|
+
assignees {
|
|
398
|
+
nodes {
|
|
399
|
+
id
|
|
400
|
+
username
|
|
401
|
+
name
|
|
402
|
+
avatarUrl
|
|
403
|
+
webUrl
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
... on WorkItemWidgetDescription {
|
|
408
|
+
description
|
|
409
|
+
descriptionHtml
|
|
410
|
+
edited
|
|
411
|
+
lastEditedAt
|
|
412
|
+
lastEditedBy {
|
|
413
|
+
id
|
|
414
|
+
username
|
|
415
|
+
name
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
... on WorkItemWidgetHierarchy {
|
|
419
|
+
parent {
|
|
420
|
+
id
|
|
421
|
+
iid
|
|
422
|
+
title
|
|
423
|
+
workItemType {
|
|
424
|
+
name
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
children {
|
|
428
|
+
nodes {
|
|
429
|
+
id
|
|
430
|
+
iid
|
|
431
|
+
title
|
|
432
|
+
state
|
|
433
|
+
workItemType {
|
|
434
|
+
name
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
}
|
|
439
|
+
... on WorkItemWidgetLabels {
|
|
440
|
+
allowsScopedLabels
|
|
441
|
+
labels {
|
|
442
|
+
nodes {
|
|
443
|
+
id
|
|
444
|
+
title
|
|
445
|
+
description
|
|
446
|
+
color
|
|
447
|
+
textColor
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
}
|
|
451
|
+
... on WorkItemWidgetMilestone {
|
|
452
|
+
milestone {
|
|
453
|
+
id
|
|
454
|
+
title
|
|
455
|
+
state
|
|
456
|
+
dueDate
|
|
457
|
+
startDate
|
|
458
|
+
webPath
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
... on WorkItemWidgetNotes {
|
|
462
|
+
discussions {
|
|
463
|
+
nodes {
|
|
464
|
+
id
|
|
465
|
+
resolvable
|
|
466
|
+
resolved
|
|
467
|
+
notes {
|
|
468
|
+
nodes {
|
|
469
|
+
id
|
|
470
|
+
body
|
|
471
|
+
author {
|
|
472
|
+
id
|
|
473
|
+
username
|
|
474
|
+
name
|
|
475
|
+
avatarUrl
|
|
476
|
+
}
|
|
477
|
+
createdAt
|
|
478
|
+
updatedAt
|
|
479
|
+
system
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
}
|
|
485
|
+
... on WorkItemWidgetStartAndDueDate {
|
|
486
|
+
startDate
|
|
487
|
+
dueDate
|
|
488
|
+
isFixed
|
|
489
|
+
}
|
|
490
|
+
... on WorkItemWidgetHealthStatus {
|
|
491
|
+
healthStatus
|
|
492
|
+
}
|
|
493
|
+
... on WorkItemWidgetWeight {
|
|
494
|
+
weight
|
|
495
|
+
}
|
|
496
|
+
... on WorkItemWidgetIteration {
|
|
497
|
+
iteration {
|
|
498
|
+
id
|
|
499
|
+
title
|
|
500
|
+
startDate
|
|
501
|
+
dueDate
|
|
502
|
+
webUrl
|
|
503
|
+
iterationCadence {
|
|
504
|
+
id
|
|
505
|
+
title
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
}
|
|
509
|
+
... on WorkItemWidgetProgress {
|
|
510
|
+
currentValue
|
|
511
|
+
endValue
|
|
512
|
+
progress
|
|
513
|
+
startValue
|
|
514
|
+
}
|
|
515
|
+
... on WorkItemWidgetRequirementLegacy {
|
|
516
|
+
type
|
|
517
|
+
}
|
|
518
|
+
... on WorkItemWidgetTestReports {
|
|
519
|
+
testReports {
|
|
520
|
+
nodes {
|
|
521
|
+
id
|
|
522
|
+
state
|
|
523
|
+
createdAt
|
|
524
|
+
author {
|
|
525
|
+
id
|
|
526
|
+
username
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
... on WorkItemWidgetNotifications {
|
|
532
|
+
subscribed
|
|
533
|
+
}
|
|
534
|
+
... on WorkItemWidgetCurrentUserTodos {
|
|
535
|
+
currentUserTodos {
|
|
536
|
+
nodes {
|
|
537
|
+
id
|
|
538
|
+
action
|
|
539
|
+
author {
|
|
540
|
+
id
|
|
541
|
+
username
|
|
542
|
+
}
|
|
543
|
+
createdAt
|
|
544
|
+
state
|
|
545
|
+
}
|
|
546
|
+
}
|
|
547
|
+
}
|
|
548
|
+
... on WorkItemWidgetAwardEmoji {
|
|
549
|
+
awardEmoji {
|
|
550
|
+
nodes {
|
|
551
|
+
name
|
|
552
|
+
emoji
|
|
553
|
+
description
|
|
554
|
+
user {
|
|
555
|
+
id
|
|
556
|
+
username
|
|
557
|
+
}
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
downvotes
|
|
561
|
+
upvotes
|
|
562
|
+
}
|
|
563
|
+
... on WorkItemWidgetLinkedItems {
|
|
564
|
+
linkedItems {
|
|
565
|
+
nodes {
|
|
566
|
+
linkType
|
|
567
|
+
workItem {
|
|
568
|
+
id
|
|
569
|
+
iid
|
|
570
|
+
title
|
|
571
|
+
state
|
|
572
|
+
workItemType {
|
|
573
|
+
name
|
|
574
|
+
}
|
|
575
|
+
}
|
|
576
|
+
}
|
|
577
|
+
}
|
|
578
|
+
}
|
|
579
|
+
... on WorkItemWidgetColor {
|
|
580
|
+
color
|
|
581
|
+
textColor
|
|
582
|
+
}
|
|
583
|
+
... on WorkItemWidgetParticipants {
|
|
584
|
+
participants {
|
|
585
|
+
nodes {
|
|
586
|
+
id
|
|
587
|
+
username
|
|
588
|
+
name
|
|
589
|
+
avatarUrl
|
|
590
|
+
}
|
|
591
|
+
}
|
|
592
|
+
}
|
|
593
|
+
... on WorkItemWidgetDesigns {
|
|
594
|
+
designCollection {
|
|
595
|
+
designs {
|
|
596
|
+
nodes {
|
|
597
|
+
id
|
|
598
|
+
filename
|
|
599
|
+
fullPath
|
|
600
|
+
image
|
|
601
|
+
imageV432x230
|
|
602
|
+
}
|
|
603
|
+
}
|
|
604
|
+
}
|
|
605
|
+
}
|
|
606
|
+
... on WorkItemWidgetDevelopment {
|
|
607
|
+
featureFlags {
|
|
608
|
+
nodes {
|
|
609
|
+
id
|
|
610
|
+
name
|
|
611
|
+
active
|
|
612
|
+
}
|
|
613
|
+
}
|
|
614
|
+
closingMergeRequests {
|
|
615
|
+
nodes {
|
|
616
|
+
id
|
|
617
|
+
mergeRequest {
|
|
618
|
+
id
|
|
619
|
+
iid
|
|
620
|
+
title
|
|
621
|
+
state
|
|
622
|
+
webUrl
|
|
623
|
+
}
|
|
624
|
+
}
|
|
625
|
+
}
|
|
626
|
+
}
|
|
627
|
+
... on WorkItemWidgetCrmContacts {
|
|
628
|
+
contacts {
|
|
629
|
+
nodes {
|
|
630
|
+
id
|
|
631
|
+
firstName
|
|
632
|
+
lastName
|
|
633
|
+
email
|
|
634
|
+
organization {
|
|
635
|
+
id
|
|
636
|
+
name
|
|
637
|
+
}
|
|
638
|
+
}
|
|
639
|
+
}
|
|
640
|
+
}
|
|
641
|
+
... on WorkItemWidgetTimeTracking {
|
|
642
|
+
timeEstimate
|
|
643
|
+
totalTimeSpent
|
|
644
|
+
timelogs {
|
|
645
|
+
nodes {
|
|
646
|
+
id
|
|
647
|
+
timeSpent
|
|
648
|
+
note {
|
|
649
|
+
body
|
|
650
|
+
}
|
|
651
|
+
spentAt
|
|
652
|
+
user {
|
|
653
|
+
id
|
|
654
|
+
username
|
|
655
|
+
}
|
|
656
|
+
}
|
|
657
|
+
}
|
|
658
|
+
}
|
|
659
|
+
... on WorkItemWidgetEmailParticipants {
|
|
660
|
+
emailParticipants {
|
|
661
|
+
nodes {
|
|
662
|
+
email
|
|
663
|
+
}
|
|
664
|
+
}
|
|
665
|
+
}
|
|
666
|
+
... on WorkItemWidgetCustomFields {
|
|
667
|
+
type
|
|
668
|
+
}
|
|
669
|
+
... on WorkItemWidgetErrorTracking {
|
|
670
|
+
identifier
|
|
671
|
+
status
|
|
672
|
+
}
|
|
673
|
+
... on WorkItemWidgetLinkedResources {
|
|
674
|
+
linkedResources {
|
|
675
|
+
nodes {
|
|
676
|
+
url
|
|
677
|
+
}
|
|
678
|
+
}
|
|
679
|
+
}
|
|
680
|
+
... on WorkItemWidgetVulnerabilities {
|
|
681
|
+
relatedVulnerabilities {
|
|
682
|
+
nodes {
|
|
683
|
+
id
|
|
684
|
+
state
|
|
685
|
+
severity
|
|
686
|
+
name
|
|
687
|
+
webUrl
|
|
688
|
+
}
|
|
689
|
+
pageInfo {
|
|
690
|
+
hasNextPage
|
|
691
|
+
endCursor
|
|
692
|
+
}
|
|
693
|
+
count
|
|
694
|
+
}
|
|
695
|
+
}
|
|
696
|
+
}
|
|
697
|
+
}
|
|
698
|
+
}
|
|
699
|
+
}
|
|
700
|
+
}
|
|
701
|
+
`;
|
|
355
702
|
exports.GET_WORK_ITEM = (0, graphql_tag_1.gql) `
|
|
356
703
|
query GetWorkItem($id: WorkItemID!) {
|
|
357
704
|
workItem(id: $id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workItems.js","sourceRoot":"","sources":["../../src/graphql/workItems.ts"],"names":[],"mappings":";;;AAAA,6CAAkC;AAuDrB,QAAA,mBAAmB,GAAG;IACjC,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,KAAK,EAAE,OAAO;IACd,kBAAkB,EAAE,oBAAoB;IACxC,aAAa,EAAE,eAAe;IAC9B,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,kBAAkB,EAAE,oBAAoB;IACxC,YAAY,EAAE,cAAc;IAC5B,aAAa,EAAE,eAAe;IAC9B,kBAAkB,EAAE,oBAAoB;IACxC,WAAW,EAAE,aAAa;IAC1B,YAAY,EAAE,cAAc;IAC5B,KAAK,EAAE,OAAO;IAEd,YAAY,EAAE,cAAc;IAC5B,OAAO,EAAE,SAAS;IAClB,WAAW,EAAE,aAAa;IAC1B,YAAY,EAAE,cAAc;IAC5B,aAAa,EAAE,eAAe;IAC9B,kBAAkB,EAAE,oBAAoB;IACxC,aAAa,EAAE,eAAe;IAC9B,cAAc,EAAE,gBAAgB;IAChC,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;CAC1B,CAAC;AAgWE,QAAA,cAAc,GAGvB,IAAA,iBAAG,EAAA
|
|
1
|
+
{"version":3,"file":"workItems.js","sourceRoot":"","sources":["../../src/graphql/workItems.ts"],"names":[],"mappings":"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"}
|
package/dist/handlers.js
CHANGED
|
@@ -50,11 +50,55 @@ async function setupHandlers(server) {
|
|
|
50
50
|
const { RegistryManager } = await Promise.resolve().then(() => __importStar(require('./registry-manager')));
|
|
51
51
|
const registryManager = RegistryManager.getInstance();
|
|
52
52
|
const tools = registryManager.getAllToolDefinitions();
|
|
53
|
+
function resolveRefs(schema, rootSchema) {
|
|
54
|
+
if (!schema || typeof schema !== 'object')
|
|
55
|
+
return schema;
|
|
56
|
+
rootSchema ??= schema;
|
|
57
|
+
if (Array.isArray(schema)) {
|
|
58
|
+
return schema.map((item) => resolveRefs(item, rootSchema));
|
|
59
|
+
}
|
|
60
|
+
if (schema.$ref && typeof schema.$ref === 'string') {
|
|
61
|
+
const refPath = schema.$ref.replace('#/properties/', '');
|
|
62
|
+
const referencedProperty = rootSchema.properties?.[refPath];
|
|
63
|
+
if (referencedProperty) {
|
|
64
|
+
const resolvedRef = resolveRefs(referencedProperty, rootSchema);
|
|
65
|
+
const schemaWithoutRef = { ...schema };
|
|
66
|
+
delete schemaWithoutRef.$ref;
|
|
67
|
+
return { ...resolvedRef, ...schemaWithoutRef };
|
|
68
|
+
}
|
|
69
|
+
const schemaWithoutRef = { ...schema };
|
|
70
|
+
delete schemaWithoutRef.$ref;
|
|
71
|
+
return schemaWithoutRef;
|
|
72
|
+
}
|
|
73
|
+
const result = {};
|
|
74
|
+
for (const [key, value] of Object.entries(schema)) {
|
|
75
|
+
if (key === 'properties' && typeof value === 'object' && value !== null) {
|
|
76
|
+
const resolvedProperties = {};
|
|
77
|
+
for (const [propKey, propValue] of Object.entries(value)) {
|
|
78
|
+
resolvedProperties[propKey] = resolveRefs(propValue, rootSchema);
|
|
79
|
+
}
|
|
80
|
+
result[key] = resolvedProperties;
|
|
81
|
+
}
|
|
82
|
+
else if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
|
|
83
|
+
result[key] = resolveRefs(value, rootSchema);
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
result[key] = value;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return result;
|
|
90
|
+
}
|
|
53
91
|
const modifiedTools = tools.map((tool) => {
|
|
54
92
|
let inputSchema = tool.inputSchema;
|
|
55
93
|
if (inputSchema && typeof inputSchema === 'object') {
|
|
56
94
|
inputSchema = { ...inputSchema, type: 'object' };
|
|
57
95
|
}
|
|
96
|
+
if (inputSchema && typeof inputSchema === 'object') {
|
|
97
|
+
const resolved = resolveRefs(inputSchema);
|
|
98
|
+
if (resolved && typeof resolved === 'object' && !Array.isArray(resolved)) {
|
|
99
|
+
inputSchema = resolved;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
58
102
|
if (inputSchema && typeof inputSchema === 'object' && '$schema' in inputSchema) {
|
|
59
103
|
const cleanedSchema = { ...inputSchema };
|
|
60
104
|
delete cleanedSchema.$schema;
|
package/dist/handlers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../src/handlers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../src/handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,7 @@ declare class RegistryManager {
|
|
|
19
19
|
executeTool(toolName: string, args: unknown): Promise<unknown>;
|
|
20
20
|
refreshCache(): void;
|
|
21
21
|
getAllToolDefinitions(): ToolDefinition[];
|
|
22
|
+
getAllToolDefinitionsTierless(): EnhancedToolDefinition[];
|
|
22
23
|
hasToolHandler(toolName: string): boolean;
|
|
23
24
|
getAvailableToolNames(): string[];
|
|
24
25
|
}
|
package/dist/registry-manager.js
CHANGED
|
@@ -164,6 +164,60 @@ class RegistryManager {
|
|
|
164
164
|
}
|
|
165
165
|
return this.toolDefinitionsCache;
|
|
166
166
|
}
|
|
167
|
+
getAllToolDefinitionsTierless() {
|
|
168
|
+
const allTools = [];
|
|
169
|
+
const isReadOnly = process.env.GITLAB_READ_ONLY_MODE === 'true';
|
|
170
|
+
const deniedRegex = process.env.GITLAB_DENIED_TOOLS_REGEX
|
|
171
|
+
? new RegExp(process.env.GITLAB_DENIED_TOOLS_REGEX)
|
|
172
|
+
: undefined;
|
|
173
|
+
const useLabels = process.env.USE_LABELS !== 'false';
|
|
174
|
+
const useMrs = process.env.USE_MRS !== 'false';
|
|
175
|
+
const useFiles = process.env.USE_FILES !== 'false';
|
|
176
|
+
const useMilestone = process.env.USE_MILESTONE !== 'false';
|
|
177
|
+
const usePipeline = process.env.USE_PIPELINE !== 'false';
|
|
178
|
+
const useVariables = process.env.USE_VARIABLES !== 'false';
|
|
179
|
+
const useWiki = process.env.USE_GITLAB_WIKI !== 'false';
|
|
180
|
+
const useWorkitems = process.env.USE_WORKITEMS !== 'false';
|
|
181
|
+
const registriesToUse = new Map();
|
|
182
|
+
registriesToUse.set('core', registry_1.coreToolRegistry);
|
|
183
|
+
if (useLabels)
|
|
184
|
+
registriesToUse.set('labels', registry_2.labelsToolRegistry);
|
|
185
|
+
if (useMrs)
|
|
186
|
+
registriesToUse.set('mrs', registry_3.mrsToolRegistry);
|
|
187
|
+
if (useFiles)
|
|
188
|
+
registriesToUse.set('files', registry_4.filesToolRegistry);
|
|
189
|
+
if (useMilestone)
|
|
190
|
+
registriesToUse.set('milestones', registry_5.milestonesToolRegistry);
|
|
191
|
+
if (usePipeline)
|
|
192
|
+
registriesToUse.set('pipelines', registry_6.pipelinesToolRegistry);
|
|
193
|
+
if (useVariables)
|
|
194
|
+
registriesToUse.set('variables', registry_7.variablesToolRegistry);
|
|
195
|
+
if (useWiki)
|
|
196
|
+
registriesToUse.set('wiki', registry_8.wikiToolRegistry);
|
|
197
|
+
if (useWorkitems)
|
|
198
|
+
registriesToUse.set('workitems', registry_9.workitemsToolRegistry);
|
|
199
|
+
const descOverrides = (0, config_1.getToolDescriptionOverrides)();
|
|
200
|
+
for (const registry of registriesToUse.values()) {
|
|
201
|
+
for (const [toolName, tool] of registry) {
|
|
202
|
+
if (isReadOnly && !this.getReadOnlyTools().includes(toolName)) {
|
|
203
|
+
continue;
|
|
204
|
+
}
|
|
205
|
+
if (deniedRegex?.test(toolName)) {
|
|
206
|
+
continue;
|
|
207
|
+
}
|
|
208
|
+
let finalTool = tool;
|
|
209
|
+
const customDescription = descOverrides.get(toolName);
|
|
210
|
+
if (customDescription) {
|
|
211
|
+
finalTool = {
|
|
212
|
+
...tool,
|
|
213
|
+
description: customDescription,
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
allTools.push(finalTool);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
return allTools;
|
|
220
|
+
}
|
|
167
221
|
hasToolHandler(toolName) {
|
|
168
222
|
return this.toolLookupCache.has(toolName);
|
|
169
223
|
}
|