prizmkit 1.1.100 → 1.1.102

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 (317) hide show
  1. package/bin/create-prizmkit.js +4 -4
  2. package/bundled/VERSION.json +3 -3
  3. package/bundled/dev-pipeline/.env.example +3 -3
  4. package/bundled/dev-pipeline/README.md +110 -90
  5. package/bundled/dev-pipeline/assets/prizm-dev-team-integration.md +1 -1
  6. package/bundled/dev-pipeline/cli.py +27 -0
  7. package/bundled/dev-pipeline/prizmkit_runtime/__init__.py +13 -0
  8. package/bundled/dev-pipeline/prizmkit_runtime/__main__.py +9 -0
  9. package/bundled/dev-pipeline/prizmkit_runtime/cli.py +193 -0
  10. package/bundled/dev-pipeline/prizmkit_runtime/commands.py +313 -0
  11. package/bundled/dev-pipeline/prizmkit_runtime/compat.py +32 -0
  12. package/bundled/dev-pipeline/prizmkit_runtime/config.py +410 -0
  13. package/bundled/dev-pipeline/prizmkit_runtime/daemon.py +478 -0
  14. package/bundled/dev-pipeline/prizmkit_runtime/gitops.py +734 -0
  15. package/bundled/dev-pipeline/prizmkit_runtime/heartbeat.py +256 -0
  16. package/bundled/dev-pipeline/prizmkit_runtime/interoperability.py +109 -0
  17. package/bundled/dev-pipeline/prizmkit_runtime/paths.py +110 -0
  18. package/bundled/dev-pipeline/prizmkit_runtime/processes.py +373 -0
  19. package/bundled/dev-pipeline/prizmkit_runtime/reset.py +389 -0
  20. package/bundled/dev-pipeline/prizmkit_runtime/runner_bookkeeping.py +51 -0
  21. package/bundled/dev-pipeline/prizmkit_runtime/runner_classification.py +179 -0
  22. package/bundled/dev-pipeline/prizmkit_runtime/runner_models.py +355 -0
  23. package/bundled/dev-pipeline/prizmkit_runtime/runner_prompts.py +118 -0
  24. package/bundled/dev-pipeline/prizmkit_runtime/runner_recovery.py +187 -0
  25. package/bundled/dev-pipeline/prizmkit_runtime/runner_status.py +153 -0
  26. package/bundled/dev-pipeline/prizmkit_runtime/runners.py +425 -0
  27. package/bundled/dev-pipeline/prizmkit_runtime/sessions.py +560 -0
  28. package/bundled/dev-pipeline/prizmkit_runtime/status.py +71 -0
  29. package/bundled/dev-pipeline/scripts/generate-bootstrap-prompt.py +51 -36
  30. package/bundled/dev-pipeline/scripts/generate-bugfix-prompt.py +20 -5
  31. package/bundled/dev-pipeline/scripts/generate-recovery-prompt.py +2 -2
  32. package/bundled/dev-pipeline/scripts/parse-stream-progress.py +39 -0
  33. package/bundled/dev-pipeline/templates/agent-prompts/dev-implement.md +8 -2
  34. package/bundled/dev-pipeline/templates/agent-prompts/reviewer-review.md +1 -1
  35. package/bundled/dev-pipeline/templates/bootstrap-prompt.md +6 -2
  36. package/bundled/dev-pipeline/templates/bootstrap-tier1.md +14 -6
  37. package/bundled/dev-pipeline/templates/bootstrap-tier2.md +14 -4
  38. package/bundled/dev-pipeline/templates/bootstrap-tier3.md +14 -4
  39. package/bundled/dev-pipeline/templates/sections/context-budget-rules.md +2 -0
  40. package/bundled/dev-pipeline/templates/sections/log-size-awareness.md +9 -30
  41. package/bundled/dev-pipeline/templates/sections/phase-context-snapshot-agent-suffix.md +15 -7
  42. package/bundled/dev-pipeline/templates/sections/phase-implement-agent.md +42 -29
  43. package/bundled/dev-pipeline/templates/sections/phase-implement-full.md +41 -39
  44. package/bundled/dev-pipeline/templates/sections/phase-implement-lite.md +8 -17
  45. package/bundled/dev-pipeline/templates/sections/phase-prizmkit-test.md +2 -2
  46. package/bundled/dev-pipeline/templates/sections/phase-review-agent.md +1 -3
  47. package/bundled/dev-pipeline/templates/sections/phase-review-full.md +1 -3
  48. package/bundled/dev-pipeline/templates/sections/phase0-test-baseline.md +3 -8
  49. package/bundled/dev-pipeline/templates/sections/test-failure-recovery-agent.md +6 -2
  50. package/bundled/dev-pipeline/templates/sections/test-failure-recovery-lite.md +5 -1
  51. package/bundled/dev-pipeline/tests/test_auto_skip.py +436 -14
  52. package/bundled/dev-pipeline/tests/test_generate_bootstrap_prompt.py +115 -7
  53. package/bundled/dev-pipeline/tests/test_generate_bugfix_prompt.py +40 -0
  54. package/bundled/dev-pipeline/tests/test_python_runner_parity.py +1226 -0
  55. package/bundled/dev-pipeline/tests/test_unified_cli.py +1045 -0
  56. package/bundled/skills/_metadata.json +1 -1
  57. package/bundled/skills/bugfix-pipeline-launcher/SKILL.md +29 -34
  58. package/bundled/skills/bugfix-pipeline-launcher/references/configuration.md +6 -5
  59. package/bundled/skills/feature-pipeline-launcher/SKILL.md +29 -35
  60. package/bundled/skills/feature-pipeline-launcher/references/configuration.md +7 -6
  61. package/bundled/skills/feature-workflow/SKILL.md +3 -6
  62. package/bundled/skills/recovery-workflow/SKILL.md +23 -32
  63. package/bundled/skills/refactor-pipeline-launcher/SKILL.md +29 -35
  64. package/bundled/skills/refactor-pipeline-launcher/references/configuration.md +7 -6
  65. package/bundled/skills/refactor-workflow/SKILL.md +3 -6
  66. package/bundled/templates/hooks/commit-intent.json +2 -2
  67. package/bundled/templates/hooks/diff-prizm-docs.py +226 -0
  68. package/bundled/templates/hooks/prizm-pre-commit.py +45 -0
  69. package/bundled/templates/hooks/validate-prizm-docs.py +240 -0
  70. package/package.json +1 -1
  71. package/src/config.js +42 -19
  72. package/src/external-skills.js +14 -14
  73. package/src/index.js +3 -6
  74. package/src/manifest.js +11 -5
  75. package/src/metadata.js +7 -18
  76. package/src/platforms.js +25 -0
  77. package/src/prompts.js +0 -12
  78. package/src/runtimes.js +18 -11
  79. package/src/scaffold.js +144 -122
  80. package/src/upgrade.js +12 -3
  81. package/bundled/dev-pipeline/launch-bugfix-daemon.sh +0 -500
  82. package/bundled/dev-pipeline/launch-feature-daemon.sh +0 -657
  83. package/bundled/dev-pipeline/launch-refactor-daemon.sh +0 -502
  84. package/bundled/dev-pipeline/lib/branch.sh +0 -326
  85. package/bundled/dev-pipeline/lib/common.sh +0 -1476
  86. package/bundled/dev-pipeline/lib/heartbeat.sh +0 -469
  87. package/bundled/dev-pipeline/reset-bug.sh +0 -425
  88. package/bundled/dev-pipeline/reset-feature.sh +0 -436
  89. package/bundled/dev-pipeline/reset-refactor.sh +0 -423
  90. package/bundled/dev-pipeline/run-bugfix.sh +0 -1430
  91. package/bundled/dev-pipeline/run-feature.sh +0 -1718
  92. package/bundled/dev-pipeline/run-recovery.sh +0 -648
  93. package/bundled/dev-pipeline/run-refactor.sh +0 -1463
  94. package/bundled/dev-pipeline/tests/test-path-resolution.sh +0 -100
  95. package/bundled/dev-pipeline-windows/.env.example +0 -36
  96. package/bundled/dev-pipeline-windows/README.md +0 -30
  97. package/bundled/dev-pipeline-windows/SCHEMA_ANALYSIS.md +0 -533
  98. package/bundled/dev-pipeline-windows/assets/feature-list-example.json +0 -146
  99. package/bundled/dev-pipeline-windows/assets/prizm-dev-team-integration.md +0 -137
  100. package/bundled/dev-pipeline-windows/launch-bugfix-daemon.ps1 +0 -9
  101. package/bundled/dev-pipeline-windows/launch-feature-daemon.ps1 +0 -9
  102. package/bundled/dev-pipeline-windows/launch-refactor-daemon.ps1 +0 -9
  103. package/bundled/dev-pipeline-windows/lib/branch.ps1 +0 -235
  104. package/bundled/dev-pipeline-windows/lib/common.ps1 +0 -991
  105. package/bundled/dev-pipeline-windows/lib/daemon.ps1 +0 -140
  106. package/bundled/dev-pipeline-windows/lib/pipeline.ps1 +0 -1051
  107. package/bundled/dev-pipeline-windows/lib/reset.ps1 +0 -121
  108. package/bundled/dev-pipeline-windows/reset-bug.ps1 +0 -10
  109. package/bundled/dev-pipeline-windows/reset-feature.ps1 +0 -10
  110. package/bundled/dev-pipeline-windows/reset-refactor.ps1 +0 -10
  111. package/bundled/dev-pipeline-windows/run-bugfix.ps1 +0 -9
  112. package/bundled/dev-pipeline-windows/run-feature.ps1 +0 -9
  113. package/bundled/dev-pipeline-windows/run-recovery.ps1 +0 -179
  114. package/bundled/dev-pipeline-windows/run-refactor.ps1 +0 -9
  115. package/bundled/dev-pipeline-windows/scripts/check-session-status.py +0 -301
  116. package/bundled/dev-pipeline-windows/scripts/continuation.py +0 -374
  117. package/bundled/dev-pipeline-windows/scripts/detect-stuck.py +0 -530
  118. package/bundled/dev-pipeline-windows/scripts/generate-bootstrap-prompt.py +0 -2279
  119. package/bundled/dev-pipeline-windows/scripts/generate-bugfix-prompt.py +0 -763
  120. package/bundled/dev-pipeline-windows/scripts/generate-recovery-prompt.py +0 -805
  121. package/bundled/dev-pipeline-windows/scripts/generate-refactor-prompt.py +0 -841
  122. package/bundled/dev-pipeline-windows/scripts/init-bugfix-pipeline.py +0 -316
  123. package/bundled/dev-pipeline-windows/scripts/init-dev-team.py +0 -134
  124. package/bundled/dev-pipeline-windows/scripts/init-pipeline.py +0 -382
  125. package/bundled/dev-pipeline-windows/scripts/init-refactor-pipeline.py +0 -399
  126. package/bundled/dev-pipeline-windows/scripts/parse-stream-progress.py +0 -1362
  127. package/bundled/dev-pipeline-windows/scripts/patch-completion-notes.py +0 -191
  128. package/bundled/dev-pipeline-windows/scripts/prizmkit-test-gate.py +0 -446
  129. package/bundled/dev-pipeline-windows/scripts/update-bug-status.py +0 -1121
  130. package/bundled/dev-pipeline-windows/scripts/update-checkpoint.py +0 -173
  131. package/bundled/dev-pipeline-windows/scripts/update-feature-status.py +0 -1789
  132. package/bundled/dev-pipeline-windows/scripts/update-refactor-status.py +0 -1327
  133. package/bundled/dev-pipeline-windows/scripts/utils.py +0 -542
  134. package/bundled/dev-pipeline-windows/templates/agent-prompts/critic-plan-challenge.md +0 -7
  135. package/bundled/dev-pipeline-windows/templates/agent-prompts/dev-fix.md +0 -7
  136. package/bundled/dev-pipeline-windows/templates/agent-prompts/dev-implement.md +0 -65
  137. package/bundled/dev-pipeline-windows/templates/agent-prompts/dev-resume.md +0 -5
  138. package/bundled/dev-pipeline-windows/templates/agent-prompts/reviewer-review.md +0 -7
  139. package/bundled/dev-pipeline-windows/templates/bootstrap-prompt.md +0 -73
  140. package/bundled/dev-pipeline-windows/templates/bootstrap-tier1.md +0 -589
  141. package/bundled/dev-pipeline-windows/templates/bootstrap-tier2.md +0 -710
  142. package/bundled/dev-pipeline-windows/templates/bootstrap-tier3.md +0 -791
  143. package/bundled/dev-pipeline-windows/templates/bug-fix-list-schema.json +0 -263
  144. package/bundled/dev-pipeline-windows/templates/bugfix-bootstrap-prompt.md +0 -326
  145. package/bundled/dev-pipeline-windows/templates/feature-list-schema.json +0 -237
  146. package/bundled/dev-pipeline-windows/templates/refactor-bootstrap-prompt.md +0 -340
  147. package/bundled/dev-pipeline-windows/templates/refactor-list-schema.json +0 -270
  148. package/bundled/dev-pipeline-windows/templates/sections/ac-verification-checklist.md +0 -7
  149. package/bundled/dev-pipeline-windows/templates/sections/checkpoint-system.md +0 -91
  150. package/bundled/dev-pipeline-windows/templates/sections/context-budget-rules.md +0 -34
  151. package/bundled/dev-pipeline-windows/templates/sections/critical-paths-agent.md +0 -10
  152. package/bundled/dev-pipeline-windows/templates/sections/critical-paths-full.md +0 -12
  153. package/bundled/dev-pipeline-windows/templates/sections/critical-paths-lite.md +0 -7
  154. package/bundled/dev-pipeline-windows/templates/sections/directory-convention-agent.md +0 -8
  155. package/bundled/dev-pipeline-windows/templates/sections/directory-convention-full.md +0 -9
  156. package/bundled/dev-pipeline-windows/templates/sections/directory-convention-lite.md +0 -6
  157. package/bundled/dev-pipeline-windows/templates/sections/failure-capture.md +0 -21
  158. package/bundled/dev-pipeline-windows/templates/sections/feature-context.md +0 -21
  159. package/bundled/dev-pipeline-windows/templates/sections/log-size-awareness.md +0 -41
  160. package/bundled/dev-pipeline-windows/templates/sections/phase-browser-verification-auto.md +0 -283
  161. package/bundled/dev-pipeline-windows/templates/sections/phase-browser-verification-opencli.md +0 -112
  162. package/bundled/dev-pipeline-windows/templates/sections/phase-browser-verification.md +0 -168
  163. package/bundled/dev-pipeline-windows/templates/sections/phase-commit-full.md +0 -82
  164. package/bundled/dev-pipeline-windows/templates/sections/phase-commit.md +0 -75
  165. package/bundled/dev-pipeline-windows/templates/sections/phase-context-snapshot-agent-suffix.md +0 -23
  166. package/bundled/dev-pipeline-windows/templates/sections/phase-context-snapshot-base.md +0 -14
  167. package/bundled/dev-pipeline-windows/templates/sections/phase-context-snapshot-lite-suffix.md +0 -19
  168. package/bundled/dev-pipeline-windows/templates/sections/phase-critic-plan-full.md +0 -63
  169. package/bundled/dev-pipeline-windows/templates/sections/phase-critic-plan.md +0 -42
  170. package/bundled/dev-pipeline-windows/templates/sections/phase-implement-agent.md +0 -44
  171. package/bundled/dev-pipeline-windows/templates/sections/phase-implement-full.md +0 -59
  172. package/bundled/dev-pipeline-windows/templates/sections/phase-implement-lite.md +0 -39
  173. package/bundled/dev-pipeline-windows/templates/sections/phase-plan-agent.md +0 -27
  174. package/bundled/dev-pipeline-windows/templates/sections/phase-plan-lite.md +0 -27
  175. package/bundled/dev-pipeline-windows/templates/sections/phase-prizmkit-test.md +0 -39
  176. package/bundled/dev-pipeline-windows/templates/sections/phase-review-agent.md +0 -35
  177. package/bundled/dev-pipeline-windows/templates/sections/phase-review-full.md +0 -35
  178. package/bundled/dev-pipeline-windows/templates/sections/phase-specify-plan-full.md +0 -73
  179. package/bundled/dev-pipeline-windows/templates/sections/phase0-init.md +0 -13
  180. package/bundled/dev-pipeline-windows/templates/sections/phase0-test-baseline.md +0 -21
  181. package/bundled/dev-pipeline-windows/templates/sections/session-context.md +0 -5
  182. package/bundled/dev-pipeline-windows/templates/sections/subagent-timeout-recovery.md +0 -6
  183. package/bundled/dev-pipeline-windows/templates/sections/task-contract.md +0 -34
  184. package/bundled/dev-pipeline-windows/templates/sections/test-failure-recovery-agent.md +0 -48
  185. package/bundled/dev-pipeline-windows/templates/sections/test-failure-recovery-lite.md +0 -48
  186. package/bundled/dev-pipeline-windows/templates/session-status-schema.json +0 -83
  187. package/bundled/skills-windows/app-planner/SKILL.md +0 -296
  188. package/bundled/skills-windows/app-planner/assets/app-design-guide.md +0 -101
  189. package/bundled/skills-windows/app-planner/references/architecture-decisions.md +0 -52
  190. package/bundled/skills-windows/app-planner/references/brainstorm-guide.md +0 -101
  191. package/bundled/skills-windows/app-planner/references/frontend-design-guide.md +0 -71
  192. package/bundled/skills-windows/app-planner/references/infrastructure-convention-discovery.md +0 -108
  193. package/bundled/skills-windows/app-planner/references/project-brief-guide.md +0 -82
  194. package/bundled/skills-windows/app-planner/references/project-conventions-discovery.md +0 -59
  195. package/bundled/skills-windows/app-planner/references/project-state-detection.md +0 -90
  196. package/bundled/skills-windows/app-planner/references/red-team-checklist.md +0 -40
  197. package/bundled/skills-windows/app-planner/references/rules/backend/derivation-rules.md +0 -619
  198. package/bundled/skills-windows/app-planner/references/rules/backend/fixed-rules.md +0 -285
  199. package/bundled/skills-windows/app-planner/references/rules/backend/question-bank.md +0 -249
  200. package/bundled/skills-windows/app-planner/references/rules/backend/question-manifest.json +0 -46
  201. package/bundled/skills-windows/app-planner/references/rules/backend/template.md +0 -173
  202. package/bundled/skills-windows/app-planner/references/rules/database/derivation-rules.md +0 -382
  203. package/bundled/skills-windows/app-planner/references/rules/database/fixed-rules.md +0 -211
  204. package/bundled/skills-windows/app-planner/references/rules/database/question-bank.md +0 -184
  205. package/bundled/skills-windows/app-planner/references/rules/database/question-manifest.json +0 -39
  206. package/bundled/skills-windows/app-planner/references/rules/database/template.md +0 -158
  207. package/bundled/skills-windows/app-planner/references/rules/frontend/derivation-rules.md +0 -820
  208. package/bundled/skills-windows/app-planner/references/rules/frontend/fixed-rules.md +0 -188
  209. package/bundled/skills-windows/app-planner/references/rules/frontend/question-bank.md +0 -319
  210. package/bundled/skills-windows/app-planner/references/rules/frontend/question-manifest.json +0 -51
  211. package/bundled/skills-windows/app-planner/references/rules/frontend/template.md +0 -339
  212. package/bundled/skills-windows/app-planner/references/rules/mobile/derivation-rules.md +0 -649
  213. package/bundled/skills-windows/app-planner/references/rules/mobile/fixed-rules.md +0 -290
  214. package/bundled/skills-windows/app-planner/references/rules/mobile/question-bank.md +0 -232
  215. package/bundled/skills-windows/app-planner/references/rules/mobile/question-manifest.json +0 -47
  216. package/bundled/skills-windows/app-planner/references/rules/mobile/template.md +0 -175
  217. package/bundled/skills-windows/app-planner/references/rules-configuration.md +0 -46
  218. package/bundled/skills-windows/bug-fix-workflow/SKILL.md +0 -379
  219. package/bundled/skills-windows/bug-fix-workflow/references/bug-diagnosis.md +0 -41
  220. package/bundled/skills-windows/bug-planner/SKILL.md +0 -402
  221. package/bundled/skills-windows/bug-planner/assets/bug-confirmation-template.md +0 -43
  222. package/bundled/skills-windows/bug-planner/references/critic-and-verification.md +0 -44
  223. package/bundled/skills-windows/bug-planner/references/error-recovery.md +0 -73
  224. package/bundled/skills-windows/bug-planner/references/input-formats.md +0 -53
  225. package/bundled/skills-windows/bug-planner/references/schema-validation.md +0 -25
  226. package/bundled/skills-windows/bug-planner/references/severity-rules.md +0 -16
  227. package/bundled/skills-windows/bug-planner/scripts/validate-bug-list.py +0 -322
  228. package/bundled/skills-windows/bugfix-pipeline-launcher/SKILL.md +0 -304
  229. package/bundled/skills-windows/bugfix-pipeline-launcher/references/configuration.md +0 -84
  230. package/bundled/skills-windows/feature-pipeline-launcher/SKILL.md +0 -381
  231. package/bundled/skills-windows/feature-pipeline-launcher/references/configuration.md +0 -67
  232. package/bundled/skills-windows/feature-pipeline-launcher/scripts/preflight-check.py +0 -462
  233. package/bundled/skills-windows/feature-planner/SKILL.md +0 -397
  234. package/bundled/skills-windows/feature-planner/assets/evaluation-guide.md +0 -64
  235. package/bundled/skills-windows/feature-planner/assets/planning-guide.md +0 -214
  236. package/bundled/skills-windows/feature-planner/references/browser-interaction.md +0 -59
  237. package/bundled/skills-windows/feature-planner/references/completeness-review.md +0 -57
  238. package/bundled/skills-windows/feature-planner/references/decomposition-patterns.md +0 -75
  239. package/bundled/skills-windows/feature-planner/references/error-recovery.md +0 -90
  240. package/bundled/skills-windows/feature-planner/references/incremental-feature-planning.md +0 -112
  241. package/bundled/skills-windows/feature-planner/references/new-project-planning.md +0 -85
  242. package/bundled/skills-windows/feature-planner/scripts/validate-and-generate.py +0 -1020
  243. package/bundled/skills-windows/feature-workflow/SKILL.md +0 -374
  244. package/bundled/skills-windows/feature-workflow/references/brainstorm-guide.md +0 -137
  245. package/bundled/skills-windows/prizm-kit/SKILL.md +0 -93
  246. package/bundled/skills-windows/prizmkit-code-review/SKILL.md +0 -161
  247. package/bundled/skills-windows/prizmkit-code-review/references/dev-agent-prompt.md +0 -30
  248. package/bundled/skills-windows/prizmkit-code-review/references/review-report-template.md +0 -31
  249. package/bundled/skills-windows/prizmkit-code-review/references/reviewer-agent-prompt.md +0 -66
  250. package/bundled/skills-windows/prizmkit-code-review/scripts/check_loop.py +0 -186
  251. package/bundled/skills-windows/prizmkit-committer/SKILL.md +0 -89
  252. package/bundled/skills-windows/prizmkit-deploy/SKILL.md +0 -444
  253. package/bundled/skills-windows/prizmkit-deploy/references/ci-cd-workflows.md +0 -115
  254. package/bundled/skills-windows/prizmkit-deploy/references/cloud-platform-deploy.md +0 -93
  255. package/bundled/skills-windows/prizmkit-deploy/references/data-safety-examples.md +0 -120
  256. package/bundled/skills-windows/prizmkit-deploy/references/database-setup.md +0 -46
  257. package/bundled/skills-windows/prizmkit-deploy/references/deploy-config-schema.md +0 -148
  258. package/bundled/skills-windows/prizmkit-deploy/references/deploy-history-schema.md +0 -62
  259. package/bundled/skills-windows/prizmkit-deploy/references/deployment-modes.md +0 -50
  260. package/bundled/skills-windows/prizmkit-deploy/references/direct-upload.md +0 -26
  261. package/bundled/skills-windows/prizmkit-deploy/references/dns-setup.md +0 -42
  262. package/bundled/skills-windows/prizmkit-deploy/references/docker-deploy.md +0 -31
  263. package/bundled/skills-windows/prizmkit-deploy/references/firewall-setup.md +0 -37
  264. package/bundled/skills-windows/prizmkit-deploy/references/live-validation-notes.md +0 -21
  265. package/bundled/skills-windows/prizmkit-deploy/references/nginx-blue-green.md +0 -59
  266. package/bundled/skills-windows/prizmkit-deploy/references/ssh-bootstrap-flow.md +0 -49
  267. package/bundled/skills-windows/prizmkit-deploy/references/ssh-execution-flow.md +0 -41
  268. package/bundled/skills-windows/prizmkit-deploy/references/ssh-takeover.md +0 -20
  269. package/bundled/skills-windows/prizmkit-deploy/references/ssl-setup.md +0 -56
  270. package/bundled/skills-windows/prizmkit-implement/SKILL.md +0 -71
  271. package/bundled/skills-windows/prizmkit-init/SKILL.md +0 -356
  272. package/bundled/skills-windows/prizmkit-init/assets/project-brief-template.md +0 -82
  273. package/bundled/skills-windows/prizmkit-init/references/config-schema.md +0 -70
  274. package/bundled/skills-windows/prizmkit-init/references/rules/layer-detection.md +0 -41
  275. package/bundled/skills-windows/prizmkit-init/references/tech-stack-catalog.md +0 -13
  276. package/bundled/skills-windows/prizmkit-init/references/update-supplement.md +0 -9
  277. package/bundled/skills-windows/prizmkit-plan/SKILL.md +0 -102
  278. package/bundled/skills-windows/prizmkit-plan/assets/plan-template.md +0 -115
  279. package/bundled/skills-windows/prizmkit-plan/assets/spec-template.md +0 -73
  280. package/bundled/skills-windows/prizmkit-plan/references/clarify-guide.md +0 -67
  281. package/bundled/skills-windows/prizmkit-plan/references/examples.md +0 -85
  282. package/bundled/skills-windows/prizmkit-plan/references/verification-checklist.md +0 -60
  283. package/bundled/skills-windows/prizmkit-prizm-docs/SKILL.md +0 -129
  284. package/bundled/skills-windows/prizmkit-prizm-docs/assets/prizm-docs-format.md +0 -613
  285. package/bundled/skills-windows/prizmkit-prizm-docs/references/op-init.md +0 -45
  286. package/bundled/skills-windows/prizmkit-prizm-docs/references/op-rebuild.md +0 -15
  287. package/bundled/skills-windows/prizmkit-prizm-docs/references/op-status.md +0 -14
  288. package/bundled/skills-windows/prizmkit-prizm-docs/references/op-update.md +0 -19
  289. package/bundled/skills-windows/prizmkit-prizm-docs/references/op-validate.md +0 -17
  290. package/bundled/skills-windows/prizmkit-retrospective/SKILL.md +0 -87
  291. package/bundled/skills-windows/prizmkit-retrospective/references/knowledge-injection-steps.md +0 -50
  292. package/bundled/skills-windows/prizmkit-retrospective/references/structural-sync-steps.md +0 -43
  293. package/bundled/skills-windows/prizmkit-test/SKILL.md +0 -227
  294. package/bundled/skills-windows/prizmkit-test/references/boundary-coverage-protocol.md +0 -220
  295. package/bundled/skills-windows/prizmkit-test/references/examples.md +0 -143
  296. package/bundled/skills-windows/prizmkit-test/references/service-boundary-test-catalog.md +0 -225
  297. package/bundled/skills-windows/prizmkit-test/references/test-generation-steps.md +0 -109
  298. package/bundled/skills-windows/prizmkit-test/references/test-report-template.md +0 -111
  299. package/bundled/skills-windows/prizmkit-test/scripts/validate_boundary_report.py +0 -347
  300. package/bundled/skills-windows/recovery-workflow/SKILL.md +0 -355
  301. package/bundled/skills-windows/recovery-workflow/evals/evals.json +0 -46
  302. package/bundled/skills-windows/recovery-workflow/references/detection.md +0 -58
  303. package/bundled/skills-windows/recovery-workflow/scripts/detect-recovery-state.py +0 -544
  304. package/bundled/skills-windows/refactor-pipeline-launcher/SKILL.md +0 -346
  305. package/bundled/skills-windows/refactor-pipeline-launcher/references/configuration.md +0 -72
  306. package/bundled/skills-windows/refactor-planner/SKILL.md +0 -398
  307. package/bundled/skills-windows/refactor-planner/assets/planning-guide.md +0 -292
  308. package/bundled/skills-windows/refactor-planner/references/behavior-preservation.md +0 -301
  309. package/bundled/skills-windows/refactor-planner/references/fast-path.md +0 -59
  310. package/bundled/skills-windows/refactor-planner/references/planning-phases.md +0 -135
  311. package/bundled/skills-windows/refactor-planner/references/refactor-scoping-guide.md +0 -221
  312. package/bundled/skills-windows/refactor-planner/scripts/validate-and-generate-refactor.py +0 -858
  313. package/bundled/skills-windows/refactor-workflow/SKILL.md +0 -343
  314. package/bundled/skills-windows/refactor-workflow/references/brainstorm-guide.md +0 -116
  315. package/bundled/templates/hooks/diff-prizm-docs.sh +0 -158
  316. package/bundled/templates/hooks/prizm-pre-commit.sh +0 -108
  317. package/bundled/templates/hooks/validate-prizm-docs.sh +0 -139
@@ -1,423 +0,0 @@
1
- #!/usr/bin/env bash
2
- set -euo pipefail
3
-
4
- # ============================================================
5
- # dev-pipeline/reset-refactor.sh - Reset a failed/stuck refactor
6
- #
7
- # Clears all state and artifacts for a refactor so it can be
8
- # re-executed from scratch by the pipeline.
9
- #
10
- # Usage:
11
- # ./reset-refactor.sh <refactor-id|range> [options] [.prizmkit/plans/refactor-list.json]
12
- #
13
- # Refactor selection:
14
- # R-007 Single refactor
15
- # R-008:R-013 Range of refactors (inclusive)
16
- # --auto-skipped All refactors with auto_skipped status
17
- # --failed All refactors with failed status
18
- # --stalled All non-completed refactors (failed + auto_skipped)
19
- #
20
- # Options:
21
- # --clean Also delete session history and .prizmkit/specs/{slug}/ artifacts
22
- # --run After reset, immediately retry via pipeline (only with single refactor)
23
- #
24
- # Examples:
25
- # ./reset-refactor.sh R-007 # Reset status only
26
- # ./reset-refactor.sh R-007 --clean # Reset + delete artifacts
27
- # ./reset-refactor.sh R-008:R-013 --clean # Reset range
28
- # ./reset-refactor.sh --auto-skipped # Reset all auto_skipped
29
- # ./reset-refactor.sh --failed --clean # Reset all failed + clean
30
- # ./reset-refactor.sh --stalled --clean # Reset all non-completed
31
- # ./reset-refactor.sh R-007 --clean --run # Reset + delete + retry
32
- # ./reset-refactor.sh R-007 --clean my-refactors.json # Custom refactor list
33
- # ============================================================
34
-
35
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
36
-
37
- # Source shared common helpers (exports PIPELINE_DIR/PRIZMKIT_DIR/PROJECT_ROOT)
38
- source "$SCRIPT_DIR/lib/common.sh"
39
-
40
- STATE_DIR="${PRIZMKIT_DIR}/state/refactor"
41
- SCRIPTS_DIR="$SCRIPT_DIR/scripts"
42
-
43
- # Colors
44
- RED='\033[0;31m'
45
- GREEN='\033[0;32m'
46
- YELLOW='\033[1;33m'
47
- BLUE='\033[0;34m'
48
- BOLD='\033[1m'
49
- NC='\033[0m'
50
-
51
- log_info() { echo -e "${BLUE}[INFO]${NC} $*"; }
52
- log_warn() { echo -e "${YELLOW}[WARN]${NC} $*"; }
53
- log_error() { echo -e "${RED}[ERROR]${NC} $*"; }
54
- log_success() { echo -e "${GREEN}[OK]${NC} $*"; }
55
-
56
- warn_if_continuation_pending() {
57
- local status_file="$1"
58
- local item_id="$2"
59
- local item_label="$3"
60
- [[ -f "$status_file" ]] || return 0
61
-
62
- local info continuation_pending active_dev_branch continuation_reason
63
- info=$(python3 - "$status_file" <<'PY' 2>/dev/null || true
64
- import json
65
- import sys
66
- with open(sys.argv[1], encoding="utf-8") as fh:
67
- data = json.load(fh)
68
- pending = data.get("continuation_pending") is True
69
- print("{}\t{}\t{}".format(
70
- "true" if pending else "false",
71
- data.get("active_dev_branch") or "",
72
- data.get("continuation_reason") or "context_overflow",
73
- ))
74
- PY
75
- )
76
- IFS=$'\t' read -r continuation_pending active_dev_branch continuation_reason <<< "$info"
77
- if [[ "$continuation_pending" == "true" ]]; then
78
- log_warn "Continuation pending for $item_label $item_id (${continuation_reason:-context_overflow}). Manual reset will abandon automatic continuation progress."
79
- if [[ -n "$active_dev_branch" ]]; then
80
- log_warn "Pending continuation branch: $active_dev_branch"
81
- fi
82
- fi
83
- }
84
-
85
- # ============================================================
86
- # Parse args
87
- # ============================================================
88
-
89
- REFACTOR_ID=""
90
- REFACTOR_RANGE=""
91
- REFACTOR_LIST=""
92
- DO_CLEAN=false
93
- DO_RUN=false
94
- FILTER_MODE=""
95
-
96
- for arg in "$@"; do
97
- case "$arg" in
98
- --clean) DO_CLEAN=true ;;
99
- --run) DO_RUN=true ;;
100
- --auto-skipped) FILTER_MODE="auto_skipped" ;;
101
- --failed) FILTER_MODE="failed" ;;
102
- --stalled) FILTER_MODE="stalled" ;;
103
- -h|--help)
104
- echo "Usage: $0 <refactor-id|range> [--clean] [--run] [--auto-skipped|--failed|--stalled] [.prizmkit/plans/refactor-list.json]"
105
- echo ""
106
- echo " refactor-id Single refactor (e.g. R-007)"
107
- echo " R-008:R-013 Range of refactors (inclusive)"
108
- echo " --auto-skipped Reset all auto_skipped refactors"
109
- echo " --failed Reset all failed refactors"
110
- echo " --stalled Reset all non-completed (failed + auto_skipped)"
111
- echo " --clean Delete session history and .prizmkit artifacts"
112
- echo " --run Retry immediately after reset (single refactor only)"
113
- echo " .prizmkit/plans/refactor-list.json Path to refactor list (default: .prizmkit/plans/refactor-list.json)"
114
- exit 0
115
- ;;
116
- R-*:R-*|r-*:r-*) REFACTOR_RANGE="$arg" ;;
117
- R-*|r-*) REFACTOR_ID="$arg" ;;
118
- *) REFACTOR_LIST="$arg" ;;
119
- esac
120
- done
121
-
122
- if [[ -z "$REFACTOR_ID" && -z "$REFACTOR_RANGE" && -z "$FILTER_MODE" ]]; then
123
- echo "Usage: $0 <refactor-id|range> [--clean] [--run] [--auto-skipped|--failed|--stalled] [.prizmkit/plans/refactor-list.json]"
124
- echo ""
125
- echo " refactor-id Single refactor (e.g. R-007)"
126
- echo " R-008:R-013 Range of refactors (inclusive)"
127
- echo " --auto-skipped Reset all auto_skipped refactors"
128
- echo " --failed Reset all failed refactors"
129
- echo " --stalled Reset all non-completed (failed + auto_skipped)"
130
- echo " --clean Delete session history and .prizmkit artifacts"
131
- echo " --run Retry immediately after reset (single refactor only)"
132
- echo " .prizmkit/plans/refactor-list.json Path to refactor list (default: .prizmkit/plans/refactor-list.json)"
133
- exit 1
134
- fi
135
-
136
- REFACTOR_LIST="${REFACTOR_LIST:-$PRIZMKIT_DIR/plans/refactor-list.json}"
137
-
138
- # Resolve absolute path
139
- if [[ ! "$REFACTOR_LIST" = /* ]]; then
140
- REFACTOR_LIST="$(pwd)/$REFACTOR_LIST"
141
- fi
142
-
143
- # ============================================================
144
- # Validation
145
- # ============================================================
146
-
147
- if [[ ! -f "$REFACTOR_LIST" ]]; then
148
- log_error "Refactor list not found: $REFACTOR_LIST"
149
- exit 1
150
- fi
151
-
152
- if [[ ! -f "$STATE_DIR/pipeline.json" ]]; then
153
- log_error "No pipeline state found. Run './run-refactor.sh run' first to initialize."
154
- exit 1
155
- fi
156
-
157
- # ============================================================
158
- # Resolve refactor IDs to process
159
- # ============================================================
160
-
161
- REFACTOR_IDS=()
162
-
163
- if [[ -n "$FILTER_MODE" ]]; then
164
- # Filter by status from refactor-list.json (single source of truth)
165
- while IFS= read -r rid; do
166
- [[ -n "$rid" ]] && REFACTOR_IDS+=("$rid")
167
- done < <(python3 -c "
168
- import json, sys
169
- filter_mode = '$FILTER_MODE'
170
- refactor_list = '$REFACTOR_LIST'
171
- with open(refactor_list) as f:
172
- data = json.load(f)
173
- for r in data.get('refactors', []):
174
- if not isinstance(r, dict):
175
- continue
176
- rid = r.get('id', '')
177
- status = r.get('status', '')
178
- if filter_mode == 'auto_skipped' and status == 'auto_skipped':
179
- print(rid)
180
- elif filter_mode == 'failed' and status == 'failed':
181
- print(rid)
182
- elif filter_mode == 'stalled' and status in ('failed', 'auto_skipped'):
183
- print(rid)
184
- " 2>/dev/null)
185
-
186
- if [[ ${#REFACTOR_IDS[@]} -eq 0 ]]; then
187
- log_info "No refactors found with status: $FILTER_MODE"
188
- exit 0
189
- fi
190
- log_info "Found ${#REFACTOR_IDS[@]} refactor(s) matching --$FILTER_MODE: ${REFACTOR_IDS[*]}"
191
-
192
- elif [[ -n "$REFACTOR_RANGE" ]]; then
193
- # Parse range R-NNN:R-MMM
194
- RANGE_START="${REFACTOR_RANGE%%:*}"
195
- RANGE_END="${REFACTOR_RANGE##*:}"
196
- START_NUM=$(echo "$RANGE_START" | sed 's/[Rr]-//' | sed 's/^0*//')
197
- END_NUM=$(echo "$RANGE_END" | sed 's/[Rr]-//' | sed 's/^0*//')
198
-
199
- if [[ -z "$START_NUM" || -z "$END_NUM" || "$START_NUM" -gt "$END_NUM" ]]; then
200
- log_error "Invalid range: $REFACTOR_RANGE (start must be <= end)"
201
- exit 1
202
- fi
203
-
204
- for ((i=START_NUM; i<=END_NUM; i++)); do
205
- REFACTOR_IDS+=("R-$(printf '%03d' "$i")")
206
- done
207
- log_info "Range $REFACTOR_RANGE -> ${REFACTOR_IDS[*]}"
208
-
209
- else
210
- REFACTOR_IDS=("$REFACTOR_ID")
211
- fi
212
-
213
- # --run only works with single refactor
214
- if [[ "$DO_RUN" == true && ${#REFACTOR_IDS[@]} -gt 1 ]]; then
215
- log_warn "--run is only supported for single refactor reset. Use './run-refactor.sh run' to resume pipeline after batch reset."
216
- DO_RUN=false
217
- fi
218
-
219
- # ============================================================
220
- # Process each refactor
221
- # ============================================================
222
-
223
- RESET_COUNT=0
224
- FAIL_COUNT=0
225
-
226
- # Detect default branch (main or master)
227
- DEFAULT_BRANCH=$(git -C "$PROJECT_ROOT" symbolic-ref refs/remotes/origin/HEAD 2>/dev/null | sed 's@^refs/remotes/origin/@@' || echo "")
228
- if [[ -z "$DEFAULT_BRANCH" ]]; then
229
- if git -C "$PROJECT_ROOT" rev-parse --verify main >/dev/null 2>&1; then
230
- DEFAULT_BRANCH="main"
231
- elif git -C "$PROJECT_ROOT" rev-parse --verify master >/dev/null 2>&1; then
232
- DEFAULT_BRANCH="master"
233
- else
234
- DEFAULT_BRANCH=$(git -C "$PROJECT_ROOT" rev-parse --abbrev-ref HEAD 2>/dev/null || echo "main")
235
- fi
236
- fi
237
-
238
- for CUR_REFACTOR_ID in "${REFACTOR_IDS[@]}"; do
239
-
240
- # Get refactor info from refactor list
241
- REFACTOR_INFO=$(python3 -c "
242
- import json, sys, re
243
- with open('$REFACTOR_LIST') as f:
244
- data = json.load(f)
245
- for item in data.get('refactors', []):
246
- if item.get('id') == '$CUR_REFACTOR_ID':
247
- title = item.get('title', '')
248
- # Compute slug
249
- numeric = '$CUR_REFACTOR_ID'.replace('R-', '').replace('r-', '').zfill(3)
250
- slug = title.lower()
251
- slug = re.sub(r'[^a-z0-9\s-]', '', slug)
252
- slug = re.sub(r'[\s]+', '-', slug.strip())
253
- slug = re.sub(r'-+', '-', slug).strip('-')
254
- slug = '{}-{}'.format(numeric, slug)
255
- print(json.dumps({'title': title, 'slug': slug, 'status': item.get('status', 'unknown')}))
256
- sys.exit(0)
257
- sys.exit(1)
258
- " 2>/dev/null) || {
259
- log_warn "Refactor $CUR_REFACTOR_ID not found in $REFACTOR_LIST -- skipping"
260
- FAIL_COUNT=$((FAIL_COUNT + 1))
261
- continue
262
- }
263
-
264
- REFACTOR_TITLE=$(echo "$REFACTOR_INFO" | python3 -c "import sys,json; print(json.load(sys.stdin)['title'])")
265
- REFACTOR_SLUG=$(echo "$REFACTOR_INFO" | python3 -c "import sys,json; print(json.load(sys.stdin)['slug'])")
266
-
267
- # -- Show current state --
268
- echo ""
269
- echo -e "${BOLD}════════════════════════════════════════════════════${NC}"
270
- echo -e "${BOLD} Reset: $CUR_REFACTOR_ID — $REFACTOR_TITLE${NC}"
271
- echo -e "${BOLD}════════════════════════════════════════════════════${NC}"
272
-
273
- STATUS_FILE="$STATE_DIR/$CUR_REFACTOR_ID/status.json"
274
- # Read status from refactor-list.json (single source of truth)
275
- CURRENT_STATUS=$(python3 -c "
276
- import json, sys
277
- with open('$REFACTOR_LIST') as f:
278
- data = json.load(f)
279
- for r in data.get('refactors', []):
280
- if isinstance(r, dict) and r.get('id') == '$CUR_REFACTOR_ID':
281
- print(r.get('status', '?'))
282
- sys.exit(0)
283
- print('?')
284
- " 2>/dev/null || echo "?")
285
- if [[ -f "$STATUS_FILE" ]]; then
286
- CURRENT_RETRY=$(python3 -c "import json; d=json.load(open('$STATUS_FILE')); print(d.get('retry_count',0))")
287
- SESSION_COUNT=$(python3 -c "import json; d=json.load(open('$STATUS_FILE')); print(len(d.get('sessions',[])))")
288
- log_info "Current status: $CURRENT_STATUS (retry $CURRENT_RETRY, $SESSION_COUNT sessions)"
289
- warn_if_continuation_pending "$STATUS_FILE" "$CUR_REFACTOR_ID" "refactor"
290
- else
291
- log_info "Current status: $CURRENT_STATUS (no runtime state file)"
292
- fi
293
-
294
- SPECS_DIR="$PRIZMKIT_DIR/specs/$REFACTOR_SLUG"
295
- SPECS_COUNT=0
296
- if [[ -d "$SPECS_DIR" ]]; then
297
- SPECS_COUNT=$(find "$SPECS_DIR" -type f 2>/dev/null | wc -l | tr -d ' ')
298
- log_info "PrizmKit artifacts: $SPECS_COUNT files in .prizmkit/specs/$REFACTOR_SLUG/"
299
- fi
300
-
301
- SESSIONS_DIR="$STATE_DIR/$CUR_REFACTOR_ID/sessions"
302
- SESSIONS_COUNT=0
303
- if [[ -d "$SESSIONS_DIR" ]]; then
304
- SESSIONS_COUNT=$(find "$SESSIONS_DIR" -mindepth 1 -maxdepth 1 -type d 2>/dev/null | wc -l | tr -d ' ')
305
- log_info "Session history: $SESSIONS_COUNT session(s)"
306
- fi
307
-
308
- echo -e "${BOLD}════════════════════════════════════════════════════${NC}"
309
-
310
- # ── Git cleanup: discard dev branch changes ──
311
- # Find dev branches matching this refactor (pattern: refactor/{REFACTOR_ID}-*)
312
- DEV_BRANCHES=$(git -C "$PROJECT_ROOT" branch --list "refactor/${CUR_REFACTOR_ID}-*" 2>/dev/null | sed 's/^[* ]*//')
313
- CURRENT_BRANCH=$(git -C "$PROJECT_ROOT" rev-parse --abbrev-ref HEAD 2>/dev/null || echo "")
314
-
315
- if [[ -n "$DEV_BRANCHES" ]]; then
316
- while IFS= read -r branch; do
317
- [[ -z "$branch" ]] && continue
318
- if [[ "$CURRENT_BRANCH" == "$branch" ]]; then
319
- # We're on the dev branch — discard uncommitted changes and return to default
320
- log_info "Discarding uncommitted changes on dev branch: $branch"
321
- git -C "$PROJECT_ROOT" reset HEAD 2>/dev/null || true
322
- git -C "$PROJECT_ROOT" checkout -- . 2>/dev/null || true
323
- git -C "$PROJECT_ROOT" clean -fd 2>/dev/null || true
324
- log_info "Switching to $DEFAULT_BRANCH..."
325
- if ! git -C "$PROJECT_ROOT" checkout "$DEFAULT_BRANCH" 2>/dev/null; then
326
- log_warn "Failed to checkout $DEFAULT_BRANCH — staying on $branch"
327
- else
328
- CURRENT_BRANCH="$DEFAULT_BRANCH"
329
- fi
330
- else
331
- # Not on the dev branch — discard its uncommitted changes
332
- _stashed=false
333
- _dirty=""
334
- _dirty=$(git -C "$PROJECT_ROOT" status --porcelain 2>/dev/null || true)
335
- if [[ -n "$_dirty" ]]; then
336
- git -C "$PROJECT_ROOT" stash push --include-untracked -m "reset-refactor-temp" 2>/dev/null && _stashed=true
337
- fi
338
- if git -C "$PROJECT_ROOT" checkout "$branch" 2>/dev/null; then
339
- log_info "Discarding uncommitted changes on dev branch: $branch"
340
- git -C "$PROJECT_ROOT" reset HEAD 2>/dev/null || true
341
- git -C "$PROJECT_ROOT" checkout -- . 2>/dev/null || true
342
- git -C "$PROJECT_ROOT" clean -fd 2>/dev/null || true
343
- git -C "$PROJECT_ROOT" checkout "$CURRENT_BRANCH" 2>/dev/null || true
344
- else
345
- log_warn "Could not checkout $branch to discard changes"
346
- fi
347
- [[ "$_stashed" == true ]] && git -C "$PROJECT_ROOT" stash pop 2>/dev/null || true
348
- fi
349
- # Only delete the dev branch in --clean mode
350
- if [[ "$DO_CLEAN" == true ]]; then
351
- if git -C "$PROJECT_ROOT" branch -D "$branch" 2>/dev/null; then
352
- log_success "Deleted dev branch: $branch"
353
- else
354
- log_warn "Failed to delete branch: $branch"
355
- fi
356
- else
357
- log_info "Dev branch preserved for debugging: $branch"
358
- fi
359
- done <<< "$DEV_BRANCHES"
360
- fi
361
-
362
- # -- Execute reset --
363
- _reset_tmpstderr=$(mktemp)
364
- if [[ "$DO_CLEAN" == true ]]; then
365
- log_info "Cleaning $CUR_REFACTOR_ID (reset + delete artifacts)..."
366
- RESULT=$(python3 "$SCRIPTS_DIR/update-refactor-status.py" \
367
- --refactor-list "$REFACTOR_LIST" \
368
- --state-dir "$STATE_DIR" \
369
- --refactor-id "$CUR_REFACTOR_ID" \
370
- --project-root "$PROJECT_ROOT" \
371
- --action clean 2>"$_reset_tmpstderr")
372
- else
373
- log_info "Resetting $CUR_REFACTOR_ID status..."
374
- RESULT=$(python3 "$SCRIPTS_DIR/update-refactor-status.py" \
375
- --refactor-list "$REFACTOR_LIST" \
376
- --state-dir "$STATE_DIR" \
377
- --refactor-id "$CUR_REFACTOR_ID" \
378
- --action reset 2>"$_reset_tmpstderr")
379
- fi
380
- _reset_stderr=$(cat "$_reset_tmpstderr" 2>/dev/null || true)
381
- rm -f "$_reset_tmpstderr"
382
- if [[ -n "$_reset_stderr" ]]; then
383
- log_warn "$_reset_stderr"
384
- fi
385
-
386
- # Check for errors
387
- if echo "$RESULT" | python3 -c "import sys,json; d=json.load(sys.stdin); sys.exit(0 if 'error' not in d else 1)" 2>/dev/null; then
388
- RESET_COUNT=$((RESET_COUNT + 1))
389
- if [[ "$DO_CLEAN" == true ]]; then
390
- log_success "$CUR_REFACTOR_ID cleaned: status -> pending, $SESSIONS_COUNT session(s) deleted, $SPECS_COUNT artifact(s) deleted, dev branch deleted"
391
- else
392
- log_success "$CUR_REFACTOR_ID reset: status -> pending, retry count -> 0, dev branch discarded"
393
- fi
394
- else
395
- ERROR_MSG=$(echo "$RESULT" | python3 -c "import sys,json; print(json.load(sys.stdin).get('error','unknown'))" 2>/dev/null || echo "$RESULT")
396
- log_error "Reset $CUR_REFACTOR_ID failed: $ERROR_MSG"
397
- FAIL_COUNT=$((FAIL_COUNT + 1))
398
- fi
399
-
400
- done
401
-
402
- # ============================================================
403
- # Summary
404
- # ============================================================
405
-
406
- echo ""
407
- echo -e "${BOLD}════════════════════════════════════════════════════${NC}"
408
- echo -e "${BOLD} Reset complete: $RESET_COUNT succeeded, $FAIL_COUNT failed${NC}"
409
- echo -e "${BOLD}════════════════════════════════════════════════════${NC}"
410
-
411
- echo ""
412
- echo -e "${BOLD}Next steps:${NC}"
413
- if [[ "$DO_RUN" == true && ${#REFACTOR_IDS[@]} -eq 1 ]]; then
414
- log_info "Auto-retrying ${REFACTOR_IDS[0]}..."
415
- echo ""
416
- exec "$SCRIPT_DIR/run-refactor.sh" run "${REFACTOR_IDS[0]}" "$REFACTOR_LIST"
417
- else
418
- log_info " ./.prizmkit/dev-pipeline/run-refactor.sh run .prizmkit/plans/refactor-list.json # Resume pipeline from first pending"
419
- if [[ ${#REFACTOR_IDS[@]} -eq 1 ]]; then
420
- log_info " ./.prizmkit/dev-pipeline/run-refactor.sh run ${REFACTOR_IDS[0]} # Run single refactor"
421
- fi
422
- fi
423
- echo ""