claude-dev-env 1.57.2 → 1.59.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 (77) hide show
  1. package/CLAUDE.md +2 -2
  2. package/_shared/pr-loop/scripts/code_rules_gate.py +36 -3
  3. package/_shared/pr-loop/scripts/pr_loop_shared_constants/code_rules_gate_constants.py +6 -0
  4. package/_shared/pr-loop/scripts/pr_loop_shared_constants/reviews_disabled_constants.py +1 -0
  5. package/_shared/pr-loop/scripts/reviews_disabled.py +12 -0
  6. package/_shared/pr-loop/scripts/tests/test_code_rules_gate.py +265 -0
  7. package/_shared/pr-loop/scripts/tests/test_reviews_disabled.py +29 -0
  8. package/audit-rubrics/category_rubrics/category-o-docstring-vs-impl-drift.md +1 -1
  9. package/bin/install.mjs +317 -54
  10. package/bin/install.test.mjs +478 -3
  11. package/docs/CODE_RULES.md +3 -3
  12. package/hooks/blocking/code_rules_annotations_length.py +153 -0
  13. package/hooks/blocking/code_rules_dead_dataclass_field.py +319 -0
  14. package/hooks/blocking/code_rules_duplicate_body.py +287 -0
  15. package/hooks/blocking/code_rules_enforcer.py +175 -21
  16. package/hooks/blocking/code_rules_magic_values.py +98 -0
  17. package/hooks/blocking/code_rules_shared.py +41 -0
  18. package/hooks/blocking/destructive_command_blocker.py +1027 -12
  19. package/hooks/blocking/hook_prose_detector_consistency.py +150 -0
  20. package/hooks/blocking/intent_only_ending_blocker.py +155 -0
  21. package/hooks/blocking/session_handoff_blocker.py +190 -0
  22. package/hooks/blocking/subprocess_budget_completeness.py +380 -0
  23. package/hooks/blocking/test_code_rules_enforcer_annotations.py +225 -0
  24. package/hooks/blocking/test_code_rules_enforcer_cap_meta.py +1 -0
  25. package/hooks/blocking/test_code_rules_enforcer_dead_dataclass_field.py +467 -0
  26. package/hooks/blocking/test_code_rules_enforcer_duplicate_body.py +330 -0
  27. package/hooks/blocking/test_code_rules_enforcer_duplicate_body_hook_routing.py +179 -0
  28. package/hooks/blocking/test_code_rules_enforcer_magic_slice_bounds.py +133 -0
  29. package/hooks/blocking/test_destructive_command_blocker.py +622 -3
  30. package/hooks/blocking/test_hook_prose_detector_consistency.py +265 -0
  31. package/hooks/blocking/test_intent_only_ending_blocker.py +175 -0
  32. package/hooks/blocking/test_session_handoff_blocker.py +312 -0
  33. package/hooks/blocking/test_subprocess_budget_completeness.py +588 -0
  34. package/hooks/blocking/test_workflow_substitution_slot_blocker.py +242 -0
  35. package/hooks/blocking/workflow_substitution_slot_blocker.py +159 -0
  36. package/hooks/hooks.json +25 -0
  37. package/hooks/hooks_constants/code_rules_enforcer_constants.py +16 -0
  38. package/hooks/hooks_constants/dead_dataclass_field_constants.py +25 -0
  39. package/hooks/hooks_constants/destructive_command_segment_constants.py +178 -0
  40. package/hooks/hooks_constants/duplicate_function_body_constants.py +17 -0
  41. package/hooks/hooks_constants/hook_prose_detector_consistency_constants.py +30 -0
  42. package/hooks/hooks_constants/messages.py +4 -0
  43. package/hooks/hooks_constants/session_handoff_blocker_constants.py +10 -0
  44. package/hooks/hooks_constants/subprocess_budget_completeness_constants.py +5 -0
  45. package/hooks/hooks_constants/workflow_substitution_slot_blocker_constants.py +22 -0
  46. package/hooks/workflow/auto_formatter.py +26 -1
  47. package/hooks/workflow/test_auto_formatter.py +134 -0
  48. package/package.json +1 -1
  49. package/rules/conservative-action.md +1 -0
  50. package/rules/docstring-prose-matches-implementation.md +43 -0
  51. package/rules/hook-prose-matches-detector.md +26 -0
  52. package/rules/long-horizon-autonomy.md +43 -0
  53. package/rules/no-inline-destructive-literals.md +11 -0
  54. package/rules/workflow-substitution-slots.md +7 -0
  55. package/skills/autoconverge/SKILL.md +68 -6
  56. package/skills/autoconverge/reference/closing-report.md +44 -0
  57. package/skills/autoconverge/reference/convergence.md +7 -3
  58. package/skills/autoconverge/reference/stop-conditions.md +7 -2
  59. package/skills/autoconverge/workflow/autoconverge_report_constants/__init__.py +0 -0
  60. package/skills/autoconverge/workflow/autoconverge_report_constants/render_report_constants.py +105 -0
  61. package/skills/autoconverge/workflow/converge.contract.test.mjs +30 -1
  62. package/skills/autoconverge/workflow/converge.copilot-gate.test.mjs +265 -0
  63. package/skills/autoconverge/workflow/converge.mjs +106 -38
  64. package/skills/autoconverge/workflow/fixtures/wf_run/subagents/workflows/wf_881252e6-700/agent-a11d903476b803493.jsonl +2 -0
  65. package/skills/autoconverge/workflow/fixtures/wf_run/subagents/workflows/wf_881252e6-700/agent-a26213978adeef6fb.jsonl +2 -0
  66. package/skills/autoconverge/workflow/fixtures/wf_run/subagents/workflows/wf_881252e6-700/agent-a3def0d15ed9d9110.jsonl +2 -0
  67. package/skills/autoconverge/workflow/fixtures/wf_run/subagents/workflows/wf_881252e6-700/agent-a41f41b1b708ee3b7.jsonl +2 -0
  68. package/skills/autoconverge/workflow/fixtures/wf_run/subagents/workflows/wf_881252e6-700/agent-a758b880abecc3ff7.jsonl +2 -0
  69. package/skills/autoconverge/workflow/fixtures/wf_run/subagents/workflows/wf_881252e6-700/agent-a8897b89656b1bd16.jsonl +2 -0
  70. package/skills/autoconverge/workflow/fixtures/wf_run/subagents/workflows/wf_881252e6-700/agent-abd463d744a1437bc.jsonl +2 -0
  71. package/skills/autoconverge/workflow/fixtures/wf_run/subagents/workflows/wf_881252e6-700/agent-ad19d027ae8ee1816.jsonl +2 -0
  72. package/skills/autoconverge/workflow/fixtures/wf_run/workflows/wf_881252e6-700.json +259 -0
  73. package/skills/autoconverge/workflow/render_report.py +903 -0
  74. package/skills/autoconverge/workflow/test_render_report.py +484 -0
  75. package/skills/pr-converge/scripts/check_convergence.py +195 -64
  76. package/skills/pr-converge/scripts/test_check_convergence.py +173 -2
  77. package/skills/update/SKILL.md +37 -5
@@ -0,0 +1,259 @@
1
+ {
2
+ "runId": "wf_881252e6-700",
3
+ "timestamp": "2026-06-13T12:21:55.114Z",
4
+ "workflowName": "autoconverge",
5
+ "args": "{\"owner\": \"example-owner\", \"repo\": \"example-repo\", \"prNumber\": 211, \"bugbotDisabled\": false}",
6
+ "result": {
7
+ "converged": true,
8
+ "rounds": 4,
9
+ "finalSha": "7c2f420c4d5b7c83aa47f93d99a0f1420e3373c4",
10
+ "blocker": null
11
+ },
12
+ "agentCount": 33,
13
+ "logs": [
14
+ "Round 1: parallel Bugbot + code-review + bug-audit on 6a5169e",
15
+ "Round 1: all lenses clean on 6a5169e \u2014 posting clean audit artifact",
16
+ "Copilot raised 11 finding(s) \u2014 fixing and re-converging",
17
+ "Round 2: parallel Bugbot + code-review + bug-audit on 620382f",
18
+ "Round 2: all lenses clean on 620382f \u2014 posting clean audit artifact",
19
+ "Copilot raised 2 finding(s) \u2014 fixing and re-converging",
20
+ "Round 3: parallel Bugbot + code-review + bug-audit on 7c2f420",
21
+ "Round 3: all lenses clean on 7c2f420 \u2014 posting clean audit artifact",
22
+ "Copilot raised 2 finding(s) \u2014 fixing and re-converging",
23
+ "Round 4: parallel Bugbot + code-review + bug-audit on 7c2f420",
24
+ "Round 4: all lenses clean on 7c2f420 \u2014 posting clean audit artifact"
25
+ ],
26
+ "workflowProgress": [
27
+ {
28
+ "index": 1,
29
+ "label": "resolve-head",
30
+ "phaseTitle": "Converge",
31
+ "agentId": "a5fe69b589d8d7fbb",
32
+ "state": "done"
33
+ },
34
+ {
35
+ "index": 2,
36
+ "label": "prefetch-main",
37
+ "phaseTitle": "Converge",
38
+ "agentId": "ac31351235aa865f1",
39
+ "state": "done"
40
+ },
41
+ {
42
+ "index": 3,
43
+ "label": "lens:bugbot",
44
+ "phaseTitle": "Converge",
45
+ "agentId": "a62ab69718928660b",
46
+ "state": "done"
47
+ },
48
+ {
49
+ "index": 4,
50
+ "label": "lens:code-review",
51
+ "phaseTitle": "Converge",
52
+ "agentId": "abd463d744a1437bc",
53
+ "state": "done"
54
+ },
55
+ {
56
+ "index": 5,
57
+ "label": "lens:bug-audit",
58
+ "phaseTitle": "Converge",
59
+ "agentId": "ab84b5cb3e6362e6b",
60
+ "state": "done"
61
+ },
62
+ {
63
+ "index": 6,
64
+ "label": "post-clean-audit",
65
+ "phaseTitle": "Converge",
66
+ "agentId": "aee38021859a3de55",
67
+ "state": "done"
68
+ },
69
+ {
70
+ "index": 7,
71
+ "label": "copilot-gate",
72
+ "phaseTitle": "Copilot gate",
73
+ "agentId": "a3def0d15ed9d9110",
74
+ "state": "done"
75
+ },
76
+ {
77
+ "index": 8,
78
+ "label": "fix:copilot",
79
+ "phaseTitle": "Converge",
80
+ "agentId": "a26213978adeef6fb",
81
+ "state": "done"
82
+ },
83
+ {
84
+ "index": 9,
85
+ "label": "resolve-head",
86
+ "phaseTitle": "Converge",
87
+ "agentId": "a88f58b25c2721e0a",
88
+ "state": "done"
89
+ },
90
+ {
91
+ "index": 10,
92
+ "label": "prefetch-main",
93
+ "phaseTitle": "Converge",
94
+ "agentId": "aabb9c42f62fefa4e",
95
+ "state": "done"
96
+ },
97
+ {
98
+ "index": 11,
99
+ "label": "lens:bugbot",
100
+ "phaseTitle": "Converge",
101
+ "agentId": "aaba3804f6e7ecdb9",
102
+ "state": "done"
103
+ },
104
+ {
105
+ "index": 12,
106
+ "label": "lens:code-review",
107
+ "phaseTitle": "Converge",
108
+ "agentId": "a7e434e6ea14aa176",
109
+ "state": "done"
110
+ },
111
+ {
112
+ "index": 13,
113
+ "label": "lens:bug-audit",
114
+ "phaseTitle": "Converge",
115
+ "agentId": "a46f6274a36a1db05",
116
+ "state": "done"
117
+ },
118
+ {
119
+ "index": 14,
120
+ "label": "post-clean-audit",
121
+ "phaseTitle": "Converge",
122
+ "agentId": "a3da3394c6ff72250",
123
+ "state": "done"
124
+ },
125
+ {
126
+ "index": 15,
127
+ "label": "copilot-gate",
128
+ "phaseTitle": "Copilot gate",
129
+ "agentId": "ad19d027ae8ee1816",
130
+ "state": "done"
131
+ },
132
+ {
133
+ "index": 16,
134
+ "label": "fix:copilot",
135
+ "phaseTitle": "Converge",
136
+ "agentId": "a8897b89656b1bd16",
137
+ "state": "done"
138
+ },
139
+ {
140
+ "index": 17,
141
+ "label": "resolve-head",
142
+ "phaseTitle": "Converge",
143
+ "agentId": "a196c9a85c88db8a7",
144
+ "state": "done"
145
+ },
146
+ {
147
+ "index": 18,
148
+ "label": "prefetch-main",
149
+ "phaseTitle": "Converge",
150
+ "agentId": "a3154efa58640a34e",
151
+ "state": "done"
152
+ },
153
+ {
154
+ "index": 19,
155
+ "label": "lens:bugbot",
156
+ "phaseTitle": "Converge",
157
+ "agentId": "a1f2a12f1470d7c7b",
158
+ "state": "done"
159
+ },
160
+ {
161
+ "index": 20,
162
+ "label": "lens:code-review",
163
+ "phaseTitle": "Converge",
164
+ "agentId": "a6754f2df6e70aa7c",
165
+ "state": "done"
166
+ },
167
+ {
168
+ "index": 21,
169
+ "label": "lens:bug-audit",
170
+ "phaseTitle": "Converge",
171
+ "agentId": "aabdfb7eba8ff036e",
172
+ "state": "done"
173
+ },
174
+ {
175
+ "index": 22,
176
+ "label": "post-clean-audit",
177
+ "phaseTitle": "Converge",
178
+ "agentId": "aa3438f61bdd9129e",
179
+ "state": "done"
180
+ },
181
+ {
182
+ "index": 23,
183
+ "label": "copilot-gate",
184
+ "phaseTitle": "Copilot gate",
185
+ "agentId": "a11d903476b803493",
186
+ "state": "done"
187
+ },
188
+ {
189
+ "index": 24,
190
+ "label": "fix:copilot",
191
+ "phaseTitle": "Converge",
192
+ "agentId": "a758b880abecc3ff7",
193
+ "state": "done"
194
+ },
195
+ {
196
+ "index": 25,
197
+ "label": "resolve-head",
198
+ "phaseTitle": "Converge",
199
+ "agentId": "a536d1ed4bb9ad0de",
200
+ "state": "done"
201
+ },
202
+ {
203
+ "index": 26,
204
+ "label": "prefetch-main",
205
+ "phaseTitle": "Converge",
206
+ "agentId": "a89686ea20e9224e2",
207
+ "state": "done"
208
+ },
209
+ {
210
+ "index": 27,
211
+ "label": "lens:bugbot",
212
+ "phaseTitle": "Converge",
213
+ "agentId": "a82b70fdc78fe7c3a",
214
+ "state": "done"
215
+ },
216
+ {
217
+ "index": 28,
218
+ "label": "lens:code-review",
219
+ "phaseTitle": "Converge",
220
+ "agentId": "a00c5df83283e9cf6",
221
+ "state": "done"
222
+ },
223
+ {
224
+ "index": 29,
225
+ "label": "lens:bug-audit",
226
+ "phaseTitle": "Converge",
227
+ "agentId": "a89412c46f53a3218",
228
+ "state": "done"
229
+ },
230
+ {
231
+ "index": 30,
232
+ "label": "post-clean-audit",
233
+ "phaseTitle": "Converge",
234
+ "agentId": "add6f0d13e1911d87",
235
+ "state": "done"
236
+ },
237
+ {
238
+ "index": 31,
239
+ "label": "copilot-gate",
240
+ "phaseTitle": "Copilot gate",
241
+ "agentId": "a41f41b1b708ee3b7",
242
+ "state": "done"
243
+ },
244
+ {
245
+ "index": 32,
246
+ "label": "check-convergence",
247
+ "phaseTitle": "Finalize",
248
+ "agentId": "a3338954faed1eb55",
249
+ "state": "done"
250
+ },
251
+ {
252
+ "index": 33,
253
+ "label": "mark-ready",
254
+ "phaseTitle": "Finalize",
255
+ "agentId": "add93d458ce4da043",
256
+ "state": "done"
257
+ }
258
+ ]
259
+ }