@mgiles/perk 1.0.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/README.md +67 -57
  2. package/extension/adapters/planAdapterPlannotator.ts +27 -41
  3. package/extension/adapters/planAdapterTombell.ts +15 -28
  4. package/extension/adapters/todoAdapterJuicesharp.ts +10 -13
  5. package/extension/checkpoints/checkpoints.ts +21 -13
  6. package/extension/doors/address.ts +6 -5
  7. package/extension/doors/askUser.ts +12 -8
  8. package/extension/doors/ciExecutor.ts +23 -15
  9. package/extension/doors/hunkHandoff.ts +202 -0
  10. package/extension/doors/land.ts +33 -10
  11. package/extension/doors/learn.ts +240 -34
  12. package/extension/doors/learnFactory.ts +144 -0
  13. package/extension/doors/lifecycleGates.ts +2 -1
  14. package/extension/doors/plannotatorHandoff.ts +509 -0
  15. package/extension/doors/prReview.ts +22 -37
  16. package/extension/doors/prReviewBrowser.ts +341 -0
  17. package/extension/doors/prReviewTerminal.ts +267 -0
  18. package/extension/doors/ready.ts +2 -1
  19. package/extension/doors/selfcheck.ts +240 -6
  20. package/extension/doors/submit.ts +37 -19
  21. package/extension/doors/submitPrReview.ts +408 -0
  22. package/extension/factories/implementHere.ts +116 -0
  23. package/extension/factories/objective.ts +17 -6
  24. package/extension/factories/objectiveAuthor.ts +15 -32
  25. package/extension/factories/objectiveDraft.ts +1 -1
  26. package/extension/factories/objectivePlan.ts +16 -34
  27. package/extension/factories/objectiveSave.ts +7 -17
  28. package/extension/factories/planMode.ts +24 -38
  29. package/extension/factories/planReview.ts +291 -177
  30. package/extension/factories/planSave.ts +23 -8
  31. package/extension/index.ts +117 -20
  32. package/extension/substrate/bindingDelivery.ts +32 -10
  33. package/extension/substrate/bindings.ts +4 -2
  34. package/extension/substrate/cache.ts +36 -9
  35. package/extension/substrate/clipboard.ts +81 -0
  36. package/extension/substrate/command.ts +25 -0
  37. package/extension/substrate/config.ts +98 -76
  38. package/extension/substrate/consoleCapture.ts +90 -0
  39. package/extension/substrate/git.ts +77 -0
  40. package/extension/substrate/miniJinja.ts +480 -0
  41. package/extension/substrate/paths.ts +38 -0
  42. package/extension/substrate/prompts.ts +15 -24
  43. package/extension/substrate/providers.ts +62 -8
  44. package/extension/substrate/sessionData.ts +1 -1
  45. package/extension/substrate/sessionPointers.ts +184 -0
  46. package/extension/substrate/structuredOutput.ts +3 -1
  47. package/extension/substrate/terminalLaunch.ts +178 -0
  48. package/extension/substrate/toolGating.ts +332 -73
  49. package/extension/substrate/toolParams.ts +7 -0
  50. package/extension/substrate/workflowState.ts +54 -2
  51. package/extension/surfaces/footerProvider.ts +8 -4
  52. package/extension/surfaces/surfaces.ts +338 -13
  53. package/extension/vendor/btw/btw.ts +10 -0
  54. package/extension/worker/readOnlySession.ts +19 -6
  55. package/extension/worker/worker.ts +187 -31
  56. package/extension/workerMain.ts +14 -13
  57. package/package.json +3 -7
  58. package/prompts/README.md +56 -5
  59. package/prompts/_fixtures/cases.yaml +52 -131
  60. package/prompts/_fixtures/golden/cond_elif-a.txt +3 -0
  61. package/prompts/_fixtures/golden/cond_elif-b.txt +3 -0
  62. package/prompts/_fixtures/golden/cond_elif-c.txt +3 -0
  63. package/prompts/_fixtures/golden/cond_if-false.txt +3 -0
  64. package/prompts/_fixtures/golden/cond_if-true.txt +3 -0
  65. package/prompts/_fixtures/golden/cond_ops-1.txt +3 -0
  66. package/prompts/_fixtures/golden/cond_ops-2.txt +3 -0
  67. package/prompts/_fixtures/golden/no_trailing_nl.txt +2 -0
  68. package/prompts/_fixtures/golden/trailing_nl.txt +2 -0
  69. package/prompts/_fixtures/golden/trim_block.txt +3 -0
  70. package/prompts/_fixtures/golden/trim_inline.txt +1 -0
  71. package/prompts/_fixtures/live.yaml +396 -0
  72. package/prompts/_fixtures/templates/cond_elif.md +9 -0
  73. package/prompts/_fixtures/templates/cond_if.md +7 -0
  74. package/prompts/_fixtures/templates/cond_ops.md +3 -0
  75. package/prompts/_fixtures/templates/no_trailing_nl.md +2 -0
  76. package/prompts/_fixtures/templates/trailing_nl.md +2 -0
  77. package/prompts/_fixtures/templates/trim_block.md +5 -0
  78. package/prompts/_fixtures/templates/trim_inline.md +1 -0
  79. package/prompts/contexts/adapters/juicesharp-todo.md +7 -0
  80. package/prompts/contexts/adapters/plannotator-objective.md +7 -0
  81. package/prompts/contexts/adapters/plannotator-plan.md +6 -0
  82. package/prompts/contexts/adapters/tombell-plan.md +17 -0
  83. package/prompts/contexts/objective-authoring.md +20 -0
  84. package/prompts/contexts/plan-authoring.md +24 -0
  85. package/prompts/contexts/read-only.md +10 -0
  86. package/prompts/stages/conflict-resolution.md +4 -0
  87. package/prompts/stages/learn-code.md +8 -0
  88. package/prompts/stages/learn-docs.md +7 -6
  89. package/prompts/stages/learn-orchestrate.md +6 -0
  90. package/prompts/stages/learn.md +1 -1
  91. package/prompts/stages/objective-author/adopt.md +12 -0
  92. package/prompts/stages/objective-author/file.md +9 -0
  93. package/prompts/stages/objective-author/seed.md +9 -0
  94. package/prompts/stages/objective-plan/guidance.md +1 -1
  95. package/prompts/stages/objective-plan/seed.md +3 -2
  96. package/prompts/stages/objective-reconcile.md +7 -0
  97. package/prompts/stages/objective-replan.md +14 -0
  98. package/prompts/stages/objective-save.md +9 -0
  99. package/prompts/stages/plan-from/adopt.md +10 -0
  100. package/prompts/stages/plan-from/file.md +9 -0
  101. package/prompts/stages/pr-review-browser/active.md +11 -0
  102. package/prompts/stages/pr-review-browser/foreign.md +11 -0
  103. package/prompts/stages/pr-review-terminal/active.md +12 -0
  104. package/prompts/stages/pr-review-terminal/foreign.md +13 -0
  105. package/prompts/stages/pr-review-terminal/local.md +4 -0
  106. package/prompts/stages/pr-review.md +6 -0
  107. package/prompts/stages/replan.md +13 -0
  108. package/prompts/stages/skills/create-from.md +15 -0
  109. package/prompts/stages/skills/create.md +9 -0
  110. package/prompts/stages/skills/refine.md +9 -0
  111. package/shared/README.md +23 -13
  112. package/shared/bindings.yaml +22 -2
  113. package/shared/contracts-history.md +191 -0
  114. package/shared/contracts.md +2258 -1638
  115. package/shared/providers.yaml +8 -1
  116. package/shared/registry.yaml +10 -11
  117. package/shared/schemas/contracts/bindings.schema.json +38 -0
  118. package/shared/schemas/contracts/providers.schema.json +89 -0
  119. package/shared/schemas/contracts/registry.schema.json +98 -0
  120. package/shared/schemas/inputs/handoff-arg.schema.json +6 -0
  121. package/shared/schemas/inputs/resolve-threads-batch.schema.json +37 -0
  122. package/shared/schemas/inputs/review-post-batch.schema.json +84 -0
  123. package/shared/schemas/inputs/review-submit-batch.schema.json +66 -0
  124. package/shared/schemas/inputs/structured-roadmap-node.schema.json +102 -0
  125. package/shared/schemas/outputs/doctor-report.schema.json +236 -0
  126. package/shared/schemas/outputs/init-report.schema.json +419 -0
  127. package/shared/schemas/outputs/learn-capture.schema.json +90 -0
  128. package/shared/schemas/outputs/learn-skip.schema.json +59 -0
  129. package/shared/schemas/outputs/plan-save.schema.json +209 -0
  130. package/shared/schemas/outputs/pr-feedback.schema.json +334 -0
  131. package/shared/schemas/outputs/pr-land.schema.json +187 -0
  132. package/shared/schemas/outputs/pr-ready.schema.json +75 -0
  133. package/shared/schemas/outputs/pr-review-checkout.schema.json +69 -0
  134. package/shared/schemas/outputs/pr-review-cleanup.schema.json +54 -0
  135. package/shared/schemas/outputs/pr-review-context.schema.json +86 -0
  136. package/shared/schemas/outputs/pr-review-submit.schema.json +64 -0
  137. package/shared/schemas/outputs/pr-submit.schema.json +147 -0
  138. package/extension/doors/learnDocs.ts +0 -99
  139. package/prompts/_fixtures/golden/address-action-model.txt +0 -10
  140. package/prompts/_fixtures/golden/address-action.txt +0 -10
  141. package/prompts/_fixtures/golden/address-preview-model.txt +0 -6
  142. package/prompts/_fixtures/golden/address-preview.txt +0 -6
  143. package/prompts/_fixtures/golden/implement-github.txt +0 -8
  144. package/prompts/_fixtures/golden/learn-docs.txt +0 -8
  145. package/prompts/_fixtures/golden/learn-github.txt +0 -11
  146. package/prompts/_fixtures/golden/learn-linear.txt +0 -11
  147. package/prompts/_fixtures/golden/learn-no-ref.txt +0 -8
  148. package/prompts/_fixtures/golden/learn-other.txt +0 -8
  149. package/prompts/_fixtures/golden/objective-plan-guidance-linear.txt +0 -8
  150. package/prompts/_fixtures/golden/objective-plan-guidance.txt +0 -8
  151. package/prompts/_fixtures/golden/objective-plan-seed-linear.txt +0 -20
  152. package/prompts/_fixtures/golden/objective-plan-seed.txt +0 -15
  153. package/prompts/_fixtures/golden/objective-read-linear-nourl.txt +0 -1
  154. package/prompts/_fixtures/golden/objective-read-linear.txt +0 -1
  155. package/prompts/_fixtures/golden/plan-read-github.txt +0 -1
  156. package/prompts/_fixtures/golden/plan-read-linear.txt +0 -1
  157. package/prompts/_fixtures/golden/plan-read-other.txt +0 -1
@@ -0,0 +1,187 @@
1
+ {
2
+ "$defs": {
3
+ "LandPrOut": {
4
+ "additionalProperties": false,
5
+ "description": "The serialization boundary of the picked :class:`github.PullRequest` subset\n(field order load-bearing).",
6
+ "properties": {
7
+ "number": {
8
+ "title": "Number",
9
+ "type": "integer"
10
+ },
11
+ "state": {
12
+ "title": "State",
13
+ "type": "string"
14
+ }
15
+ },
16
+ "required": [
17
+ "number",
18
+ "state"
19
+ ],
20
+ "title": "LandPrOut",
21
+ "type": "object"
22
+ },
23
+ "LearnConsumeOut": {
24
+ "additionalProperties": false,
25
+ "description": "The serialization boundary of :class:`LearnConsumeUpdate` (field order load-bearing).",
26
+ "properties": {
27
+ "closed": {
28
+ "items": {
29
+ "type": "string"
30
+ },
31
+ "title": "Closed",
32
+ "type": "array"
33
+ },
34
+ "skipped_reason": {
35
+ "anyOf": [
36
+ {
37
+ "type": "string"
38
+ },
39
+ {
40
+ "type": "null"
41
+ }
42
+ ],
43
+ "title": "Skipped Reason"
44
+ }
45
+ },
46
+ "required": [
47
+ "closed",
48
+ "skipped_reason"
49
+ ],
50
+ "title": "LearnConsumeOut",
51
+ "type": "object"
52
+ },
53
+ "ObjectiveLandOut": {
54
+ "additionalProperties": false,
55
+ "description": "The serialization boundary of :class:`ObjectiveLandUpdate` (field order load-bearing).\n\n``id`` maps from the domain ``objective`` field (the linked objective id).",
56
+ "properties": {
57
+ "id": {
58
+ "anyOf": [
59
+ {
60
+ "type": "string"
61
+ },
62
+ {
63
+ "type": "null"
64
+ }
65
+ ],
66
+ "title": "Id"
67
+ },
68
+ "nodes_marked": {
69
+ "items": {
70
+ "type": "string"
71
+ },
72
+ "title": "Nodes Marked",
73
+ "type": "array"
74
+ },
75
+ "skipped_reason": {
76
+ "anyOf": [
77
+ {
78
+ "type": "string"
79
+ },
80
+ {
81
+ "type": "null"
82
+ }
83
+ ],
84
+ "title": "Skipped Reason"
85
+ },
86
+ "closed": {
87
+ "title": "Closed",
88
+ "type": "boolean"
89
+ }
90
+ },
91
+ "required": [
92
+ "id",
93
+ "nodes_marked",
94
+ "skipped_reason",
95
+ "closed"
96
+ ],
97
+ "title": "ObjectiveLandOut",
98
+ "type": "object"
99
+ }
100
+ },
101
+ "additionalProperties": false,
102
+ "description": "The ``--json`` serialization boundary of :class:`PrLandResult` (field order load-bearing).",
103
+ "properties": {
104
+ "success": {
105
+ "title": "Success",
106
+ "type": "boolean"
107
+ },
108
+ "error_type": {
109
+ "anyOf": [
110
+ {
111
+ "type": "string"
112
+ },
113
+ {
114
+ "type": "null"
115
+ }
116
+ ],
117
+ "title": "Error Type"
118
+ },
119
+ "message": {
120
+ "anyOf": [
121
+ {
122
+ "type": "string"
123
+ },
124
+ {
125
+ "type": "null"
126
+ }
127
+ ],
128
+ "title": "Message"
129
+ },
130
+ "pr": {
131
+ "$ref": "#/$defs/LandPrOut"
132
+ },
133
+ "branch": {
134
+ "title": "Branch",
135
+ "type": "string"
136
+ },
137
+ "issue": {
138
+ "title": "Issue",
139
+ "type": "string"
140
+ },
141
+ "pending_learn": {
142
+ "title": "Pending Learn",
143
+ "type": "boolean"
144
+ },
145
+ "plan_issue_closed": {
146
+ "title": "Plan Issue Closed",
147
+ "type": "boolean"
148
+ },
149
+ "dry_run": {
150
+ "title": "Dry Run",
151
+ "type": "boolean"
152
+ },
153
+ "objective": {
154
+ "$ref": "#/$defs/ObjectiveLandOut"
155
+ },
156
+ "learn": {
157
+ "$ref": "#/$defs/LearnConsumeOut"
158
+ },
159
+ "learn_state": {
160
+ "anyOf": [
161
+ {
162
+ "type": "string"
163
+ },
164
+ {
165
+ "type": "null"
166
+ }
167
+ ],
168
+ "default": null,
169
+ "title": "Learn State"
170
+ }
171
+ },
172
+ "required": [
173
+ "success",
174
+ "error_type",
175
+ "message",
176
+ "pr",
177
+ "branch",
178
+ "issue",
179
+ "pending_learn",
180
+ "plan_issue_closed",
181
+ "dry_run",
182
+ "objective",
183
+ "learn"
184
+ ],
185
+ "title": "PrLandOut",
186
+ "type": "object"
187
+ }
@@ -0,0 +1,75 @@
1
+ {
2
+ "$defs": {
3
+ "ReadyPrOut": {
4
+ "additionalProperties": false,
5
+ "description": "The serialization boundary of the picked :class:`github.PullRequest` subset\n(field order load-bearing).",
6
+ "properties": {
7
+ "number": {
8
+ "title": "Number",
9
+ "type": "integer"
10
+ },
11
+ "url": {
12
+ "title": "Url",
13
+ "type": "string"
14
+ }
15
+ },
16
+ "required": [
17
+ "number",
18
+ "url"
19
+ ],
20
+ "title": "ReadyPrOut",
21
+ "type": "object"
22
+ }
23
+ },
24
+ "additionalProperties": false,
25
+ "description": "The ``--json`` serialization boundary of :class:`PrReadyResult` (order load-bearing).",
26
+ "properties": {
27
+ "success": {
28
+ "title": "Success",
29
+ "type": "boolean"
30
+ },
31
+ "error_type": {
32
+ "anyOf": [
33
+ {
34
+ "type": "string"
35
+ },
36
+ {
37
+ "type": "null"
38
+ }
39
+ ],
40
+ "title": "Error Type"
41
+ },
42
+ "message": {
43
+ "anyOf": [
44
+ {
45
+ "type": "string"
46
+ },
47
+ {
48
+ "type": "null"
49
+ }
50
+ ],
51
+ "title": "Message"
52
+ },
53
+ "pr": {
54
+ "$ref": "#/$defs/ReadyPrOut"
55
+ },
56
+ "was_draft": {
57
+ "title": "Was Draft",
58
+ "type": "boolean"
59
+ },
60
+ "dry_run": {
61
+ "title": "Dry Run",
62
+ "type": "boolean"
63
+ }
64
+ },
65
+ "required": [
66
+ "success",
67
+ "error_type",
68
+ "message",
69
+ "pr",
70
+ "was_draft",
71
+ "dry_run"
72
+ ],
73
+ "title": "PrReadyOut",
74
+ "type": "object"
75
+ }
@@ -0,0 +1,69 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "description": "The ``--json`` serialization boundary of :class:`ReviewCheckoutResult` (flat; envelope\nkeys first). ``path`` is absolute; the SHAs are full 40-char.",
4
+ "properties": {
5
+ "success": {
6
+ "title": "Success",
7
+ "type": "boolean"
8
+ },
9
+ "error_type": {
10
+ "anyOf": [
11
+ {
12
+ "type": "string"
13
+ },
14
+ {
15
+ "type": "null"
16
+ }
17
+ ],
18
+ "title": "Error Type"
19
+ },
20
+ "message": {
21
+ "anyOf": [
22
+ {
23
+ "type": "string"
24
+ },
25
+ {
26
+ "type": "null"
27
+ }
28
+ ],
29
+ "title": "Message"
30
+ },
31
+ "path": {
32
+ "title": "Path",
33
+ "type": "string"
34
+ },
35
+ "pr": {
36
+ "title": "Pr",
37
+ "type": "integer"
38
+ },
39
+ "url": {
40
+ "title": "Url",
41
+ "type": "string"
42
+ },
43
+ "head_sha": {
44
+ "title": "Head Sha",
45
+ "type": "string"
46
+ },
47
+ "base_sha": {
48
+ "title": "Base Sha",
49
+ "type": "string"
50
+ },
51
+ "base_ref": {
52
+ "title": "Base Ref",
53
+ "type": "string"
54
+ }
55
+ },
56
+ "required": [
57
+ "success",
58
+ "error_type",
59
+ "message",
60
+ "path",
61
+ "pr",
62
+ "url",
63
+ "head_sha",
64
+ "base_sha",
65
+ "base_ref"
66
+ ],
67
+ "title": "PrReviewCheckoutOut",
68
+ "type": "object"
69
+ }
@@ -0,0 +1,54 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "description": "The ``--json`` serialization boundary of :class:`ReviewCleanupResult` (flat; envelope\nkeys first). ``path`` is absolute.",
4
+ "properties": {
5
+ "success": {
6
+ "title": "Success",
7
+ "type": "boolean"
8
+ },
9
+ "error_type": {
10
+ "anyOf": [
11
+ {
12
+ "type": "string"
13
+ },
14
+ {
15
+ "type": "null"
16
+ }
17
+ ],
18
+ "title": "Error Type"
19
+ },
20
+ "message": {
21
+ "anyOf": [
22
+ {
23
+ "type": "string"
24
+ },
25
+ {
26
+ "type": "null"
27
+ }
28
+ ],
29
+ "title": "Message"
30
+ },
31
+ "pr": {
32
+ "title": "Pr",
33
+ "type": "integer"
34
+ },
35
+ "path": {
36
+ "title": "Path",
37
+ "type": "string"
38
+ },
39
+ "removed": {
40
+ "title": "Removed",
41
+ "type": "boolean"
42
+ }
43
+ },
44
+ "required": [
45
+ "success",
46
+ "error_type",
47
+ "message",
48
+ "pr",
49
+ "path",
50
+ "removed"
51
+ ],
52
+ "title": "PrReviewCleanupOut",
53
+ "type": "object"
54
+ }
@@ -0,0 +1,86 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "description": "The ``--json`` serialization boundary of :class:`PrReviewContextResult`\n(flat; field order load-bearing). ``pr`` maps from the domain ``pr_number``.",
4
+ "properties": {
5
+ "success": {
6
+ "title": "Success",
7
+ "type": "boolean"
8
+ },
9
+ "error_type": {
10
+ "anyOf": [
11
+ {
12
+ "type": "string"
13
+ },
14
+ {
15
+ "type": "null"
16
+ }
17
+ ],
18
+ "title": "Error Type"
19
+ },
20
+ "message": {
21
+ "anyOf": [
22
+ {
23
+ "type": "string"
24
+ },
25
+ {
26
+ "type": "null"
27
+ }
28
+ ],
29
+ "title": "Message"
30
+ },
31
+ "branch": {
32
+ "title": "Branch",
33
+ "type": "string"
34
+ },
35
+ "pr": {
36
+ "title": "Pr",
37
+ "type": "integer"
38
+ },
39
+ "base_ref": {
40
+ "title": "Base Ref",
41
+ "type": "string"
42
+ },
43
+ "head_ref": {
44
+ "title": "Head Ref",
45
+ "type": "string"
46
+ },
47
+ "title": {
48
+ "title": "Title",
49
+ "type": "string"
50
+ },
51
+ "body": {
52
+ "title": "Body",
53
+ "type": "string"
54
+ },
55
+ "diff": {
56
+ "title": "Diff",
57
+ "type": "string"
58
+ },
59
+ "plan_body": {
60
+ "anyOf": [
61
+ {
62
+ "type": "string"
63
+ },
64
+ {
65
+ "type": "null"
66
+ }
67
+ ],
68
+ "title": "Plan Body"
69
+ }
70
+ },
71
+ "required": [
72
+ "success",
73
+ "error_type",
74
+ "message",
75
+ "branch",
76
+ "pr",
77
+ "base_ref",
78
+ "head_ref",
79
+ "title",
80
+ "body",
81
+ "diff",
82
+ "plan_body"
83
+ ],
84
+ "title": "PrReviewContextOut",
85
+ "type": "object"
86
+ }
@@ -0,0 +1,64 @@
1
+ {
2
+ "additionalProperties": false,
3
+ "description": "The ``--json`` serialization boundary of the submission result (flat; envelope keys\nfirst). ``event`` is the flag spelling; ``mode`` \u2208\n``validated | review | review_folded | comment_fallback``.",
4
+ "properties": {
5
+ "success": {
6
+ "title": "Success",
7
+ "type": "boolean"
8
+ },
9
+ "error_type": {
10
+ "anyOf": [
11
+ {
12
+ "type": "string"
13
+ },
14
+ {
15
+ "type": "null"
16
+ }
17
+ ],
18
+ "title": "Error Type"
19
+ },
20
+ "message": {
21
+ "anyOf": [
22
+ {
23
+ "type": "string"
24
+ },
25
+ {
26
+ "type": "null"
27
+ }
28
+ ],
29
+ "title": "Message"
30
+ },
31
+ "dry_run": {
32
+ "title": "Dry Run",
33
+ "type": "boolean"
34
+ },
35
+ "pr": {
36
+ "title": "Pr",
37
+ "type": "integer"
38
+ },
39
+ "event": {
40
+ "title": "Event",
41
+ "type": "string"
42
+ },
43
+ "mode": {
44
+ "title": "Mode",
45
+ "type": "string"
46
+ },
47
+ "comment_count": {
48
+ "title": "Comment Count",
49
+ "type": "integer"
50
+ }
51
+ },
52
+ "required": [
53
+ "success",
54
+ "error_type",
55
+ "message",
56
+ "dry_run",
57
+ "pr",
58
+ "event",
59
+ "mode",
60
+ "comment_count"
61
+ ],
62
+ "title": "PrReviewSubmitOut",
63
+ "type": "object"
64
+ }
@@ -0,0 +1,147 @@
1
+ {
2
+ "$defs": {
3
+ "PlanHeaderUpdateOut": {
4
+ "additionalProperties": false,
5
+ "description": "The serialization boundary of the picked :class:`issue_backend.PlanHeaderUpdate` subset\n(field order load-bearing).",
6
+ "properties": {
7
+ "fields_updated": {
8
+ "items": {
9
+ "type": "string"
10
+ },
11
+ "title": "Fields Updated",
12
+ "type": "array"
13
+ }
14
+ },
15
+ "required": [
16
+ "fields_updated"
17
+ ],
18
+ "title": "PlanHeaderUpdateOut",
19
+ "type": "object"
20
+ },
21
+ "SubmitPrOut": {
22
+ "additionalProperties": false,
23
+ "description": "The serialization boundary of the picked :class:`github.PullRequest` subset\n(field order load-bearing).",
24
+ "properties": {
25
+ "number": {
26
+ "title": "Number",
27
+ "type": "integer"
28
+ },
29
+ "url": {
30
+ "title": "Url",
31
+ "type": "string"
32
+ },
33
+ "is_draft": {
34
+ "title": "Is Draft",
35
+ "type": "boolean"
36
+ },
37
+ "existed": {
38
+ "title": "Existed",
39
+ "type": "boolean"
40
+ }
41
+ },
42
+ "required": [
43
+ "number",
44
+ "url",
45
+ "is_draft",
46
+ "existed"
47
+ ],
48
+ "title": "SubmitPrOut",
49
+ "type": "object"
50
+ }
51
+ },
52
+ "additionalProperties": false,
53
+ "description": "The ``--json`` serialization boundary of :class:`PrSubmitResult` (order load-bearing).",
54
+ "properties": {
55
+ "success": {
56
+ "title": "Success",
57
+ "type": "boolean"
58
+ },
59
+ "error_type": {
60
+ "anyOf": [
61
+ {
62
+ "type": "string"
63
+ },
64
+ {
65
+ "type": "null"
66
+ }
67
+ ],
68
+ "title": "Error Type"
69
+ },
70
+ "message": {
71
+ "anyOf": [
72
+ {
73
+ "type": "string"
74
+ },
75
+ {
76
+ "type": "null"
77
+ }
78
+ ],
79
+ "title": "Message"
80
+ },
81
+ "pr": {
82
+ "$ref": "#/$defs/SubmitPrOut"
83
+ },
84
+ "branch": {
85
+ "title": "Branch",
86
+ "type": "string"
87
+ },
88
+ "issue": {
89
+ "title": "Issue",
90
+ "type": "string"
91
+ },
92
+ "plan_header": {
93
+ "$ref": "#/$defs/PlanHeaderUpdateOut"
94
+ },
95
+ "plan_embedded": {
96
+ "title": "Plan Embedded",
97
+ "type": "boolean"
98
+ },
99
+ "pr_checked": {
100
+ "title": "Pr Checked",
101
+ "type": "boolean"
102
+ },
103
+ "dry_run": {
104
+ "title": "Dry Run",
105
+ "type": "boolean"
106
+ },
107
+ "base": {
108
+ "title": "Base",
109
+ "type": "string"
110
+ },
111
+ "mergeable": {
112
+ "anyOf": [
113
+ {
114
+ "type": "boolean"
115
+ },
116
+ {
117
+ "type": "null"
118
+ }
119
+ ],
120
+ "title": "Mergeable"
121
+ },
122
+ "conflicts": {
123
+ "items": {
124
+ "type": "string"
125
+ },
126
+ "title": "Conflicts",
127
+ "type": "array"
128
+ }
129
+ },
130
+ "required": [
131
+ "success",
132
+ "error_type",
133
+ "message",
134
+ "pr",
135
+ "branch",
136
+ "issue",
137
+ "plan_header",
138
+ "plan_embedded",
139
+ "pr_checked",
140
+ "dry_run",
141
+ "base",
142
+ "mergeable",
143
+ "conflicts"
144
+ ],
145
+ "title": "PrSubmitOut",
146
+ "type": "object"
147
+ }