Skip to content

Commit 2abed90

Browse files
Merge branch 'main' into dependabot/github_actions/docker/build-push-action-7.3.0
2 parents d9d4b07 + b7bc3dc commit 2abed90

11 files changed

Lines changed: 1388 additions & 100 deletions

README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -891,7 +891,7 @@ The following sets of tools are available:
891891
- `issue_number`: The number of the issue (number, required)
892892
- `method`: The read operation to perform on a single issue.
893893
Options are:
894-
1. get - Get details of a specific issue.
894+
1. get - Get issue details. Also returns best-effort hierarchy flags (`has_parent`, `has_children`); `parent` and `sub_issues_summary` are optional relationship summaries.
895895
2. get_comments - Get issue comments.
896896
3. get_sub_issues - Get sub-issues (children) of the issue.
897897
4. get_parent - Get the parent issue, if this issue is a sub-issue of another.
@@ -968,7 +968,8 @@ The following sets of tools are available:
968968
- 'add' - add a sub-issue to a parent issue in a GitHub repository.
969969
- 'remove' - remove a sub-issue from a parent issue in a GitHub repository.
970970
- 'reprioritize' - change the order of sub-issues within a parent issue in a GitHub repository. Use either 'after_id' or 'before_id' to specify the new position.
971-
(string, required)
971+
Writes issue hierarchy. To move a sub-issue to a new parent, use `add` with `replace_parent=true`; there is no writable parent field.
972+
(string, required)
972973
- `owner`: Repository owner (string, required)
973974
- `replace_parent`: When true, replaces the sub-issue's current parent issue. Use with 'add' method only. (boolean, optional)
974975
- `repo`: Repository name (string, required)

docs/feature-flags.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ runtime behavior (such as output formatting) won't appear here.
150150

151151
- **update_issue_assignees** - Update Issue Assignees
152152
- **Required OAuth Scopes**: `repo`
153-
- `assignees`: GitHub usernames to assign to this issue (string[], required)
153+
- `assignees`: GitHub usernames to assign to this issue. ([], required)
154154
- `issue_number`: The issue number to update (number, required)
155155
- `owner`: Repository owner (username or organization) (string, required)
156156
- `repo`: Repository name (string, required)
@@ -178,8 +178,12 @@ runtime behavior (such as output formatting) won't appear here.
178178

179179
- **update_issue_state** - Update Issue State
180180
- **Required OAuth Scopes**: `repo`
181+
- `confidence`: How confident you are in this choice. Use 'HIGH' for clear signal or explicit user request, 'MEDIUM' for reasonable inference with some ambiguity, 'LOW' for best guess with limited signal. (string, optional)
182+
- `duplicate_of`: The issue number of the canonical issue this issue duplicates. Only valid when state_reason is 'duplicate'. Required when is_suggestion is true and state_reason is 'duplicate'. The issue number is resolved to a database ID before being sent to the API. (number, optional)
183+
- `is_suggestion`: If true, this state change is sent to the API as a suggestion (suggest:true) rather than an applied change. Whether the change is applied or recorded as a proposal is determined by the API. (boolean, optional)
181184
- `issue_number`: The issue number to update (number, required)
182185
- `owner`: Repository owner (username or organization) (string, required)
186+
- `rationale`: One concise sentence explaining what specifically about the issue led you to choose this state. State the concrete signal (e.g. 'The reported crash is fixed in v2.1' → completed). (string, optional)
183187
- `repo`: Repository name (string, required)
184188
- `state`: The new state for the issue (string, required)
185189
- `state_reason`: The reason for the state change (only for closed state) (string, optional)

pkg/github/__toolsnaps__/issue_read.snap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"type": "number"
1313
},
1414
"method": {
15-
"description": "The read operation to perform on a single issue.\nOptions are:\n1. get - Get details of a specific issue.\n2. get_comments - Get issue comments.\n3. get_sub_issues - Get sub-issues (children) of the issue.\n4. get_parent - Get the parent issue, if this issue is a sub-issue of another.\n5. get_labels - Get labels assigned to the issue.\n",
15+
"description": "The read operation to perform on a single issue.\nOptions are:\n1. get - Get issue details. Also returns best-effort hierarchy flags (`has_parent`, `has_children`); `parent` and `sub_issues_summary` are optional relationship summaries.\n2. get_comments - Get issue comments.\n3. get_sub_issues - Get sub-issues (children) of the issue.\n4. get_parent - Get the parent issue, if this issue is a sub-issue of another.\n5. get_labels - Get labels assigned to the issue.\n",
1616
"enum": [
1717
"get",
1818
"get_comments",

pkg/github/__toolsnaps__/sub_issue_write.snap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
"type": "number"
2121
},
2222
"method": {
23-
"description": "The action to perform on a single sub-issue\nOptions are:\n- 'add' - add a sub-issue to a parent issue in a GitHub repository.\n- 'remove' - remove a sub-issue from a parent issue in a GitHub repository.\n- 'reprioritize' - change the order of sub-issues within a parent issue in a GitHub repository. Use either 'after_id' or 'before_id' to specify the new position.\n\t\t\t\t",
23+
"description": "The action to perform on a single sub-issue\nOptions are:\n- 'add' - add a sub-issue to a parent issue in a GitHub repository.\n- 'remove' - remove a sub-issue from a parent issue in a GitHub repository.\n- 'reprioritize' - change the order of sub-issues within a parent issue in a GitHub repository. Use either 'after_id' or 'before_id' to specify the new position.\nWrites issue hierarchy. To move a sub-issue to a new parent, use `add` with `replace_parent=true`; there is no writable parent field.\n",
2424
"type": "string"
2525
},
2626
"owner": {

pkg/github/__toolsnaps__/update_issue_assignees.snap

Lines changed: 38 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,48 @@
66
"readOnlyHint": false,
77
"title": "Update Issue Assignees"
88
},
9-
"description": "Update the assignees of an existing issue. This replaces the current assignees with the provided list.",
9+
"description": "Update the assignees of an existing issue. This replaces the current assignees with the provided list. When setting values, include a confidence level (LOW, MEDIUM, or HIGH) reflecting how certain you are about the choice.",
1010
"inputSchema": {
1111
"properties": {
1212
"assignees": {
13-
"description": "GitHub usernames to assign to this issue",
13+
"description": "GitHub usernames to assign to this issue.",
1414
"items": {
15-
"type": "string"
15+
"oneOf": [
16+
{
17+
"description": "GitHub username",
18+
"type": "string"
19+
},
20+
{
21+
"properties": {
22+
"confidence": {
23+
"description": "How confident you are in this choice. Use 'HIGH' for clear signal or explicit user request, 'MEDIUM' for reasonable inference with some ambiguity, 'LOW' for best guess with limited signal.",
24+
"enum": [
25+
"LOW",
26+
"MEDIUM",
27+
"HIGH"
28+
],
29+
"type": "string"
30+
},
31+
"is_suggestion": {
32+
"description": "If true, this assignee is sent to the API as a suggestion (suggest:true) rather than an applied assignee. Whether the assignee is applied or recorded as a proposal is determined by the API.",
33+
"type": "boolean"
34+
},
35+
"login": {
36+
"description": "GitHub username",
37+
"type": "string"
38+
},
39+
"rationale": {
40+
"description": "One concise sentence explaining what specifically about the issue led you to choose this assignee. State the concrete signal (e.g. 'Authored the file the crash originates in').",
41+
"maxLength": 280,
42+
"type": "string"
43+
}
44+
},
45+
"required": [
46+
"login"
47+
],
48+
"type": "object"
49+
}
50+
]
1651
},
1752
"type": "array"
1853
},

pkg/github/__toolsnaps__/update_issue_state.snap

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,27 @@
66
"readOnlyHint": false,
77
"title": "Update Issue State"
88
},
9-
"description": "Update the state of an existing issue (open or closed), with an optional state reason.",
9+
"description": "Update the state of an existing issue (open or closed), with an optional state reason. When closing, include a confidence level (LOW, MEDIUM, or HIGH) reflecting how certain you are about the decision. Use is_suggestion to propose the change without applying it directly.",
1010
"inputSchema": {
1111
"properties": {
12+
"confidence": {
13+
"description": "How confident you are in this choice. Use 'HIGH' for clear signal or explicit user request, 'MEDIUM' for reasonable inference with some ambiguity, 'LOW' for best guess with limited signal.",
14+
"enum": [
15+
"LOW",
16+
"MEDIUM",
17+
"HIGH"
18+
],
19+
"type": "string"
20+
},
21+
"duplicate_of": {
22+
"description": "The issue number of the canonical issue this issue duplicates. Only valid when state_reason is 'duplicate'. Required when is_suggestion is true and state_reason is 'duplicate'. The issue number is resolved to a database ID before being sent to the API.",
23+
"minimum": 1,
24+
"type": "number"
25+
},
26+
"is_suggestion": {
27+
"description": "If true, this state change is sent to the API as a suggestion (suggest:true) rather than an applied change. Whether the change is applied or recorded as a proposal is determined by the API.",
28+
"type": "boolean"
29+
},
1230
"issue_number": {
1331
"description": "The issue number to update",
1432
"minimum": 1,
@@ -18,6 +36,11 @@
1836
"description": "Repository owner (username or organization)",
1937
"type": "string"
2038
},
39+
"rationale": {
40+
"description": "One concise sentence explaining what specifically about the issue led you to choose this state. State the concrete signal (e.g. 'The reported crash is fixed in v2.1' → completed).",
41+
"maxLength": 280,
42+
"type": "string"
43+
},
2144
"repo": {
2245
"description": "Repository name",
2346
"type": "string"

0 commit comments

Comments
 (0)