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,382 +0,0 @@
1
- #!/usr/bin/env python3
2
- """Initialize the dev-pipeline state directory from a .prizmkit/plans/feature-list.json file.
3
-
4
- Validates the feature list schema, checks dependency DAG for cycles,
5
- and creates the state directory structure with pipeline and feature status files.
6
-
7
- Usage:
8
- python3 init-pipeline.py --feature-list <path> --state-dir <path>
9
- """
10
-
11
- import argparse
12
- import json
13
- import os
14
- import re
15
- import sys
16
- from collections import deque
17
- from datetime import datetime, timezone
18
-
19
-
20
- EXPECTED_SCHEMA = "dev-pipeline-feature-list-v1"
21
- FEATURE_ID_PATTERN = re.compile(r"^F-\d{3}(-[A-Z])?$")
22
- TERMINAL_STATUSES = {"completed", "failed", "skipped", "split", "auto_skipped"}
23
- VALID_PRIORITIES = {"critical", "high", "medium", "low"}
24
-
25
- REQUIRED_FEATURE_FIELDS = [
26
- "id",
27
- "title",
28
- "description",
29
- "priority",
30
- "dependencies",
31
- "acceptance_criteria",
32
- "status",
33
- ]
34
-
35
-
36
- def parse_args():
37
- parser = argparse.ArgumentParser(
38
- description="Initialize dev-pipeline state from a .prizmkit/plans/feature-list.json file."
39
- )
40
- parser.add_argument(
41
- "--feature-list",
42
- required=True,
43
- help="Path to the .prizmkit/plans/feature-list.json file",
44
- )
45
- parser.add_argument(
46
- "--state-dir",
47
- required=True,
48
- help="Path to the state directory (default: .prizmkit/state/features)",
49
- )
50
- return parser.parse_args()
51
-
52
-
53
- def load_feature_list(path):
54
- """Load and return the parsed JSON from the feature list file."""
55
- abs_path = os.path.abspath(path)
56
- if not os.path.isfile(abs_path):
57
- return None, ["Feature list file not found: {}".format(abs_path)]
58
- try:
59
- with open(abs_path, "r", encoding="utf-8") as f:
60
- data = json.load(f)
61
- except json.JSONDecodeError as e:
62
- return None, ["Invalid JSON in feature list: {}".format(str(e))]
63
- except IOError as e:
64
- return None, ["Cannot read feature list file: {}".format(str(e))]
65
- return data, []
66
-
67
-
68
- def validate_schema(data):
69
- """Validate the top-level schema and structure of the feature list."""
70
- errors = []
71
-
72
- # Check $schema
73
- schema = data.get("$schema")
74
- if schema != EXPECTED_SCHEMA:
75
- errors.append(
76
- "Invalid $schema: expected '{}', got '{}'".format(EXPECTED_SCHEMA, schema)
77
- )
78
-
79
- # Check project_name (supports legacy app_name for backward compatibility)
80
- project_name = data.get("project_name", data.get("app_name"))
81
- if project_name is None:
82
- errors.append("Missing required field: project_name")
83
- elif not isinstance(project_name, str) or not project_name.strip():
84
- errors.append("project_name must be a non-empty string")
85
-
86
- # Check features array
87
- if "features" not in data:
88
- errors.append("Missing required field: features")
89
- elif not isinstance(data["features"], list):
90
- errors.append("features must be an array")
91
-
92
- return errors
93
-
94
-
95
- def validate_features(features):
96
- """Validate each feature object and cross-reference dependencies."""
97
- errors = []
98
- feature_ids = set()
99
- seen_ids = set()
100
-
101
- # First pass: collect all feature IDs and validate structure
102
- for i, feature in enumerate(features):
103
- if not isinstance(feature, dict):
104
- errors.append("Feature at index {} is not an object".format(i))
105
- continue
106
-
107
- # Check required fields
108
- for field in REQUIRED_FEATURE_FIELDS:
109
- if field not in feature:
110
- errors.append(
111
- "Feature at index {} missing required field: {}".format(i, field)
112
- )
113
-
114
- # Validate feature ID format
115
- fid = feature.get("id")
116
- if fid is not None:
117
- if not isinstance(fid, str) or not FEATURE_ID_PATTERN.match(fid):
118
- errors.append(
119
- "Feature at index {} has invalid id '{}' "
120
- "(must match F-NNN pattern)".format(i, fid)
121
- )
122
- elif fid in seen_ids:
123
- errors.append("Duplicate feature id: {}".format(fid))
124
- else:
125
- seen_ids.add(fid)
126
- feature_ids.add(fid)
127
-
128
- # Validate dependencies is a list
129
- deps = feature.get("dependencies")
130
- if deps is not None and not isinstance(deps, list):
131
- errors.append(
132
- "Feature '{}' dependencies must be an array".format(
133
- fid if fid else "index {}".format(i)
134
- )
135
- )
136
-
137
- # Validate priority enum
138
- priority = feature.get("priority")
139
- if priority is not None and priority not in VALID_PRIORITIES:
140
- errors.append(
141
- "Feature '{}' has invalid priority '{}' "
142
- "(must be one of: {})".format(
143
- fid if fid else "index {}".format(i),
144
- priority,
145
- ", ".join(sorted(VALID_PRIORITIES)),
146
- )
147
- )
148
-
149
- # Validate acceptance_criteria is a list
150
- ac = feature.get("acceptance_criteria")
151
- if ac is not None and not isinstance(ac, list):
152
- errors.append(
153
- "Feature '{}' acceptance_criteria must be an array".format(
154
- fid if fid else "index {}".format(i)
155
- )
156
- )
157
-
158
- # Second pass: validate dependency references
159
- for feature in features:
160
- if not isinstance(feature, dict):
161
- continue
162
- fid = feature.get("id", "unknown")
163
- deps = feature.get("dependencies", [])
164
- if not isinstance(deps, list):
165
- continue
166
- for dep in deps:
167
- if dep not in feature_ids:
168
- errors.append(
169
- "Feature '{}' depends on unknown feature '{}'".format(fid, dep)
170
- )
171
-
172
- return errors, feature_ids
173
-
174
-
175
- def check_dag(features):
176
- """Check that feature dependencies form a DAG (no cycles) using topological sort.
177
-
178
- Uses Kahn's algorithm. Returns a list of errors if cycles are detected.
179
- """
180
- # Build adjacency list and in-degree count
181
- adj = {} # feature_id -> list of features that depend on it
182
- in_degree = {}
183
- feature_map = {}
184
-
185
- for feature in features:
186
- if not isinstance(feature, dict):
187
- continue
188
- fid = feature.get("id")
189
- if fid is None:
190
- continue
191
- feature_map[fid] = feature
192
- if fid not in adj:
193
- adj[fid] = []
194
- if fid not in in_degree:
195
- in_degree[fid] = 0
196
-
197
- for feature in features:
198
- if not isinstance(feature, dict):
199
- continue
200
- fid = feature.get("id")
201
- deps = feature.get("dependencies", [])
202
- if not isinstance(deps, list) or fid is None:
203
- continue
204
- for dep in deps:
205
- if dep in adj:
206
- # dep -> fid (fid depends on dep, so dep must come first)
207
- adj[dep].append(fid)
208
- in_degree[fid] = in_degree.get(fid, 0) + 1
209
-
210
- # Kahn's algorithm
211
- queue = deque()
212
- for fid in in_degree:
213
- if in_degree[fid] == 0:
214
- queue.append(fid)
215
-
216
- sorted_count = 0
217
- while queue:
218
- node = queue.popleft()
219
- sorted_count += 1
220
- for neighbor in adj.get(node, []):
221
- in_degree[neighbor] -= 1
222
- if in_degree[neighbor] == 0:
223
- queue.append(neighbor)
224
-
225
- if sorted_count != len(feature_map):
226
- # Find which features are part of cycles
227
- cycle_members = [
228
- fid for fid, deg in in_degree.items() if deg > 0
229
- ]
230
- return [
231
- "Dependency cycle detected involving features: {}".format(
232
- ", ".join(sorted(cycle_members))
233
- )
234
- ]
235
-
236
- return []
237
-
238
-
239
- def create_state_directory(state_dir, feature_list_path, features):
240
- """Create the state directory structure with pipeline.json and per-feature status files."""
241
- abs_state_dir = os.path.abspath(state_dir)
242
- abs_feature_list_path = os.path.abspath(feature_list_path)
243
- # Store as relative path from state_dir so pipeline.json is portable across machines
244
- rel_feature_list_path = os.path.relpath(abs_feature_list_path, abs_state_dir)
245
- features_dir = abs_state_dir
246
-
247
- now = datetime.now(timezone.utc).strftime("%Y-%m-%dT%H:%M:%SZ")
248
- run_id = "run-" + datetime.now(timezone.utc).strftime("%Y%m%d%H%M%S")
249
-
250
- # Create top-level state directory
251
- os.makedirs(abs_state_dir, exist_ok=True)
252
- os.makedirs(features_dir, exist_ok=True)
253
-
254
- # Count features already in terminal status at init time
255
- completed_count = sum(
256
- 1 for f in features
257
- if isinstance(f, dict) and f.get("status") in TERMINAL_STATUSES
258
- )
259
-
260
- # Write pipeline.json
261
- pipeline_state = {
262
- "run_id": run_id,
263
- "status": "initialized",
264
- "feature_list_path": rel_feature_list_path,
265
- "created_at": now,
266
- "total_features": len(features),
267
- "completed_features": completed_count,
268
- }
269
- pipeline_path = os.path.join(abs_state_dir, "pipeline.json")
270
- with open(pipeline_path, "w", encoding="utf-8") as f:
271
- json.dump(pipeline_state, f, indent=2, ensure_ascii=False)
272
- f.write("\n")
273
-
274
- # Write per-feature status.json and create sessions directory
275
- for feature in features:
276
- if not isinstance(feature, dict):
277
- continue
278
- fid = feature.get("id")
279
- if fid is None:
280
- continue
281
-
282
- feature_dir = os.path.join(features_dir, fid)
283
- sessions_dir = os.path.join(feature_dir, "sessions")
284
- os.makedirs(sessions_dir, exist_ok=True)
285
-
286
- feature_status = {
287
- "feature_id": fid,
288
- "retry_count": 0,
289
- "max_retries": 3,
290
- "sessions": [],
291
- "last_session_id": None,
292
- "resume_from_phase": None,
293
- "created_at": now,
294
- "updated_at": now,
295
- }
296
- status_path = os.path.join(feature_dir, "status.json")
297
- if os.path.exists(status_path):
298
- continue
299
- with open(status_path, "w", encoding="utf-8") as f:
300
- json.dump(feature_status, f, indent=2, ensure_ascii=False)
301
- f.write("\n")
302
-
303
- return abs_state_dir
304
-
305
-
306
- def main():
307
- args = parse_args()
308
-
309
- # Load feature list
310
- data, load_errors = load_feature_list(args.feature_list)
311
- if load_errors:
312
- output = {"valid": False, "errors": load_errors}
313
- print(json.dumps(output, indent=2, ensure_ascii=False))
314
- sys.exit(1)
315
-
316
- # Warn if feature-list.json is not under a recognizable project root.
317
- # Walk up from the feature list directory to find a project root indicator.
318
- feature_list_dir = os.path.dirname(os.path.abspath(args.feature_list))
319
- indicators = ['.git', 'package.json', '.prizmkit']
320
-
321
- def _find_project_root(start_dir):
322
- d = start_dir
323
- while True:
324
- if any(os.path.exists(os.path.join(d, ind)) for ind in indicators):
325
- return d
326
- parent = os.path.dirname(d)
327
- if parent == d:
328
- return None
329
- d = parent
330
-
331
- project_root = _find_project_root(feature_list_dir)
332
- if project_root is None:
333
- sys.stderr.write(
334
- "Warning: Could not find project root (no .git, package.json, or .prizmkit) above: {}\n".format(
335
- feature_list_dir
336
- )
337
- )
338
-
339
- # Validate schema
340
- schema_errors = validate_schema(data)
341
- if schema_errors:
342
- output = {"valid": False, "errors": schema_errors}
343
- print(json.dumps(output, indent=2, ensure_ascii=False))
344
- sys.exit(1)
345
-
346
- # Validate features
347
- features = data["features"]
348
- feature_errors, feature_ids = validate_features(features)
349
- if feature_errors:
350
- output = {"valid": False, "errors": feature_errors}
351
- print(json.dumps(output, indent=2, ensure_ascii=False))
352
- sys.exit(1)
353
-
354
- # Check DAG (no cycles)
355
- dag_errors = check_dag(features)
356
- if dag_errors:
357
- output = {"valid": False, "errors": dag_errors}
358
- print(json.dumps(output, indent=2, ensure_ascii=False))
359
- sys.exit(1)
360
-
361
- # Create state directory
362
- try:
363
- abs_state_dir = create_state_directory(
364
- args.state_dir, args.feature_list, features
365
- )
366
- except (IOError, OSError) as e:
367
- output = {"valid": False, "errors": ["Failed to create state directory: {}".format(str(e))]}
368
- print(json.dumps(output, indent=2, ensure_ascii=False))
369
- sys.exit(1)
370
-
371
- # Success output
372
- output = {
373
- "valid": True,
374
- "features_count": len(features),
375
- "state_dir": abs_state_dir,
376
- }
377
- print(json.dumps(output, indent=2, ensure_ascii=False))
378
- sys.exit(0)
379
-
380
-
381
- if __name__ == "__main__":
382
- main()