prizmkit 1.1.99 → 1.1.101

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 (321) 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 +345 -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 +147 -0
  26. package/bundled/dev-pipeline/prizmkit_runtime/runners.py +422 -0
  27. package/bundled/dev-pipeline/prizmkit_runtime/sessions.py +552 -0
  28. package/bundled/dev-pipeline/prizmkit_runtime/status.py +71 -0
  29. package/bundled/dev-pipeline/scripts/check-session-status.py +74 -1
  30. package/bundled/dev-pipeline/scripts/continuation.py +374 -0
  31. package/bundled/dev-pipeline/scripts/generate-bootstrap-prompt.py +64 -52
  32. package/bundled/dev-pipeline/scripts/generate-bugfix-prompt.py +35 -25
  33. package/bundled/dev-pipeline/scripts/generate-recovery-prompt.py +2 -2
  34. package/bundled/dev-pipeline/scripts/generate-refactor-prompt.py +15 -20
  35. package/bundled/dev-pipeline/scripts/parse-stream-progress.py +185 -16
  36. package/bundled/dev-pipeline/scripts/update-bug-status.py +214 -6
  37. package/bundled/dev-pipeline/scripts/update-feature-status.py +237 -6
  38. package/bundled/dev-pipeline/scripts/update-refactor-status.py +214 -6
  39. package/bundled/dev-pipeline/templates/agent-prompts/dev-implement.md +8 -2
  40. package/bundled/dev-pipeline/templates/bootstrap-prompt.md +4 -0
  41. package/bundled/dev-pipeline/templates/bootstrap-tier1.md +14 -5
  42. package/bundled/dev-pipeline/templates/bootstrap-tier2.md +16 -6
  43. package/bundled/dev-pipeline/templates/bootstrap-tier3.md +16 -6
  44. package/bundled/dev-pipeline/templates/bugfix-bootstrap-prompt.md +1 -1
  45. package/bundled/dev-pipeline/templates/refactor-bootstrap-prompt.md +3 -3
  46. package/bundled/dev-pipeline/templates/sections/context-budget-rules.md +2 -0
  47. package/bundled/dev-pipeline/templates/sections/log-size-awareness.md +13 -69
  48. package/bundled/dev-pipeline/templates/sections/phase-context-snapshot-agent-suffix.md +15 -7
  49. package/bundled/dev-pipeline/templates/sections/phase-implement-agent.md +42 -29
  50. package/bundled/dev-pipeline/templates/sections/phase-implement-full.md +41 -39
  51. package/bundled/dev-pipeline/templates/sections/test-failure-recovery-agent.md +4 -0
  52. package/bundled/dev-pipeline/templates/sections/test-failure-recovery-lite.md +4 -0
  53. package/bundled/dev-pipeline/templates/session-status-schema.json +1 -1
  54. package/bundled/dev-pipeline/tests/conftest.py +1 -0
  55. package/bundled/dev-pipeline/tests/test_auto_skip.py +932 -0
  56. package/bundled/dev-pipeline/tests/test_generate_bootstrap_prompt.py +207 -0
  57. package/bundled/dev-pipeline/tests/test_generate_bugfix_prompt.py +100 -0
  58. package/bundled/dev-pipeline/tests/test_generate_refactor_prompt.py +43 -0
  59. package/bundled/dev-pipeline/tests/test_python_runner_parity.py +1138 -0
  60. package/bundled/dev-pipeline/tests/test_unified_cli.py +1045 -0
  61. package/bundled/skills/_metadata.json +1 -1
  62. package/bundled/skills/bugfix-pipeline-launcher/SKILL.md +29 -34
  63. package/bundled/skills/bugfix-pipeline-launcher/references/configuration.md +6 -5
  64. package/bundled/skills/feature-pipeline-launcher/SKILL.md +29 -35
  65. package/bundled/skills/feature-pipeline-launcher/references/configuration.md +7 -6
  66. package/bundled/skills/feature-workflow/SKILL.md +3 -6
  67. package/bundled/skills/recovery-workflow/SKILL.md +23 -32
  68. package/bundled/skills/refactor-pipeline-launcher/SKILL.md +29 -35
  69. package/bundled/skills/refactor-pipeline-launcher/references/configuration.md +7 -6
  70. package/bundled/skills/refactor-workflow/SKILL.md +3 -6
  71. package/bundled/templates/hooks/commit-intent.json +2 -2
  72. package/bundled/templates/hooks/diff-prizm-docs.py +226 -0
  73. package/bundled/templates/hooks/prizm-pre-commit.py +45 -0
  74. package/bundled/templates/hooks/validate-prizm-docs.py +240 -0
  75. package/package.json +1 -1
  76. package/src/config.js +33 -12
  77. package/src/index.js +3 -6
  78. package/src/manifest.js +3 -2
  79. package/src/metadata.js +7 -18
  80. package/src/prompts.js +0 -12
  81. package/src/runtimes.js +18 -11
  82. package/src/scaffold.js +133 -116
  83. package/src/upgrade.js +1 -1
  84. package/bundled/dev-pipeline/launch-bugfix-daemon.sh +0 -500
  85. package/bundled/dev-pipeline/launch-feature-daemon.sh +0 -657
  86. package/bundled/dev-pipeline/launch-refactor-daemon.sh +0 -502
  87. package/bundled/dev-pipeline/lib/branch.sh +0 -326
  88. package/bundled/dev-pipeline/lib/common.sh +0 -1257
  89. package/bundled/dev-pipeline/lib/heartbeat.sh +0 -469
  90. package/bundled/dev-pipeline/reset-bug.sh +0 -395
  91. package/bundled/dev-pipeline/reset-feature.sh +0 -406
  92. package/bundled/dev-pipeline/reset-refactor.sh +0 -393
  93. package/bundled/dev-pipeline/run-bugfix.sh +0 -1315
  94. package/bundled/dev-pipeline/run-feature.sh +0 -1602
  95. package/bundled/dev-pipeline/run-recovery.sh +0 -648
  96. package/bundled/dev-pipeline/run-refactor.sh +0 -1348
  97. package/bundled/dev-pipeline/scripts/monitor-log.sh +0 -104
  98. package/bundled/dev-pipeline/tests/test-path-resolution.sh +0 -100
  99. package/bundled/dev-pipeline-windows/.env.example +0 -36
  100. package/bundled/dev-pipeline-windows/README.md +0 -30
  101. package/bundled/dev-pipeline-windows/SCHEMA_ANALYSIS.md +0 -533
  102. package/bundled/dev-pipeline-windows/assets/feature-list-example.json +0 -146
  103. package/bundled/dev-pipeline-windows/assets/prizm-dev-team-integration.md +0 -137
  104. package/bundled/dev-pipeline-windows/launch-bugfix-daemon.ps1 +0 -9
  105. package/bundled/dev-pipeline-windows/launch-feature-daemon.ps1 +0 -9
  106. package/bundled/dev-pipeline-windows/launch-refactor-daemon.ps1 +0 -9
  107. package/bundled/dev-pipeline-windows/lib/branch.ps1 +0 -235
  108. package/bundled/dev-pipeline-windows/lib/common.ps1 +0 -829
  109. package/bundled/dev-pipeline-windows/lib/daemon.ps1 +0 -140
  110. package/bundled/dev-pipeline-windows/lib/pipeline.ps1 +0 -967
  111. package/bundled/dev-pipeline-windows/lib/reset.ps1 +0 -87
  112. package/bundled/dev-pipeline-windows/reset-bug.ps1 +0 -9
  113. package/bundled/dev-pipeline-windows/reset-feature.ps1 +0 -9
  114. package/bundled/dev-pipeline-windows/reset-refactor.ps1 +0 -9
  115. package/bundled/dev-pipeline-windows/run-bugfix.ps1 +0 -9
  116. package/bundled/dev-pipeline-windows/run-feature.ps1 +0 -9
  117. package/bundled/dev-pipeline-windows/run-recovery.ps1 +0 -179
  118. package/bundled/dev-pipeline-windows/run-refactor.ps1 +0 -9
  119. package/bundled/dev-pipeline-windows/scripts/check-session-status.py +0 -228
  120. package/bundled/dev-pipeline-windows/scripts/detect-stuck.py +0 -530
  121. package/bundled/dev-pipeline-windows/scripts/generate-bootstrap-prompt.py +0 -2282
  122. package/bundled/dev-pipeline-windows/scripts/generate-bugfix-prompt.py +0 -767
  123. package/bundled/dev-pipeline-windows/scripts/generate-recovery-prompt.py +0 -805
  124. package/bundled/dev-pipeline-windows/scripts/generate-refactor-prompt.py +0 -845
  125. package/bundled/dev-pipeline-windows/scripts/init-bugfix-pipeline.py +0 -316
  126. package/bundled/dev-pipeline-windows/scripts/init-dev-team.py +0 -134
  127. package/bundled/dev-pipeline-windows/scripts/init-pipeline.py +0 -382
  128. package/bundled/dev-pipeline-windows/scripts/init-refactor-pipeline.py +0 -399
  129. package/bundled/dev-pipeline-windows/scripts/monitor-log.ps1 +0 -102
  130. package/bundled/dev-pipeline-windows/scripts/parse-stream-progress.py +0 -1232
  131. package/bundled/dev-pipeline-windows/scripts/patch-completion-notes.py +0 -191
  132. package/bundled/dev-pipeline-windows/scripts/prizmkit-test-gate.py +0 -446
  133. package/bundled/dev-pipeline-windows/scripts/update-bug-status.py +0 -913
  134. package/bundled/dev-pipeline-windows/scripts/update-checkpoint.py +0 -173
  135. package/bundled/dev-pipeline-windows/scripts/update-feature-status.py +0 -1558
  136. package/bundled/dev-pipeline-windows/scripts/update-refactor-status.py +0 -1119
  137. package/bundled/dev-pipeline-windows/scripts/utils.py +0 -542
  138. package/bundled/dev-pipeline-windows/templates/agent-prompts/critic-plan-challenge.md +0 -7
  139. package/bundled/dev-pipeline-windows/templates/agent-prompts/dev-fix.md +0 -7
  140. package/bundled/dev-pipeline-windows/templates/agent-prompts/dev-implement.md +0 -65
  141. package/bundled/dev-pipeline-windows/templates/agent-prompts/dev-resume.md +0 -5
  142. package/bundled/dev-pipeline-windows/templates/agent-prompts/reviewer-review.md +0 -7
  143. package/bundled/dev-pipeline-windows/templates/bootstrap-prompt.md +0 -73
  144. package/bundled/dev-pipeline-windows/templates/bootstrap-tier1.md +0 -589
  145. package/bundled/dev-pipeline-windows/templates/bootstrap-tier2.md +0 -710
  146. package/bundled/dev-pipeline-windows/templates/bootstrap-tier3.md +0 -791
  147. package/bundled/dev-pipeline-windows/templates/bug-fix-list-schema.json +0 -263
  148. package/bundled/dev-pipeline-windows/templates/bugfix-bootstrap-prompt.md +0 -326
  149. package/bundled/dev-pipeline-windows/templates/feature-list-schema.json +0 -237
  150. package/bundled/dev-pipeline-windows/templates/refactor-bootstrap-prompt.md +0 -340
  151. package/bundled/dev-pipeline-windows/templates/refactor-list-schema.json +0 -270
  152. package/bundled/dev-pipeline-windows/templates/sections/ac-verification-checklist.md +0 -7
  153. package/bundled/dev-pipeline-windows/templates/sections/checkpoint-system.md +0 -91
  154. package/bundled/dev-pipeline-windows/templates/sections/context-budget-rules.md +0 -34
  155. package/bundled/dev-pipeline-windows/templates/sections/critical-paths-agent.md +0 -10
  156. package/bundled/dev-pipeline-windows/templates/sections/critical-paths-full.md +0 -12
  157. package/bundled/dev-pipeline-windows/templates/sections/critical-paths-lite.md +0 -7
  158. package/bundled/dev-pipeline-windows/templates/sections/directory-convention-agent.md +0 -8
  159. package/bundled/dev-pipeline-windows/templates/sections/directory-convention-full.md +0 -9
  160. package/bundled/dev-pipeline-windows/templates/sections/directory-convention-lite.md +0 -6
  161. package/bundled/dev-pipeline-windows/templates/sections/failure-capture.md +0 -21
  162. package/bundled/dev-pipeline-windows/templates/sections/feature-context.md +0 -21
  163. package/bundled/dev-pipeline-windows/templates/sections/log-size-awareness.md +0 -78
  164. package/bundled/dev-pipeline-windows/templates/sections/phase-browser-verification-auto.md +0 -283
  165. package/bundled/dev-pipeline-windows/templates/sections/phase-browser-verification-opencli.md +0 -112
  166. package/bundled/dev-pipeline-windows/templates/sections/phase-browser-verification.md +0 -168
  167. package/bundled/dev-pipeline-windows/templates/sections/phase-commit-full.md +0 -82
  168. package/bundled/dev-pipeline-windows/templates/sections/phase-commit.md +0 -75
  169. package/bundled/dev-pipeline-windows/templates/sections/phase-context-snapshot-agent-suffix.md +0 -23
  170. package/bundled/dev-pipeline-windows/templates/sections/phase-context-snapshot-base.md +0 -14
  171. package/bundled/dev-pipeline-windows/templates/sections/phase-context-snapshot-lite-suffix.md +0 -19
  172. package/bundled/dev-pipeline-windows/templates/sections/phase-critic-plan-full.md +0 -63
  173. package/bundled/dev-pipeline-windows/templates/sections/phase-critic-plan.md +0 -42
  174. package/bundled/dev-pipeline-windows/templates/sections/phase-implement-agent.md +0 -44
  175. package/bundled/dev-pipeline-windows/templates/sections/phase-implement-full.md +0 -59
  176. package/bundled/dev-pipeline-windows/templates/sections/phase-implement-lite.md +0 -39
  177. package/bundled/dev-pipeline-windows/templates/sections/phase-plan-agent.md +0 -27
  178. package/bundled/dev-pipeline-windows/templates/sections/phase-plan-lite.md +0 -27
  179. package/bundled/dev-pipeline-windows/templates/sections/phase-prizmkit-test.md +0 -39
  180. package/bundled/dev-pipeline-windows/templates/sections/phase-review-agent.md +0 -35
  181. package/bundled/dev-pipeline-windows/templates/sections/phase-review-full.md +0 -35
  182. package/bundled/dev-pipeline-windows/templates/sections/phase-specify-plan-full.md +0 -73
  183. package/bundled/dev-pipeline-windows/templates/sections/phase0-init.md +0 -13
  184. package/bundled/dev-pipeline-windows/templates/sections/phase0-test-baseline.md +0 -21
  185. package/bundled/dev-pipeline-windows/templates/sections/session-context.md +0 -5
  186. package/bundled/dev-pipeline-windows/templates/sections/subagent-timeout-recovery.md +0 -6
  187. package/bundled/dev-pipeline-windows/templates/sections/task-contract.md +0 -34
  188. package/bundled/dev-pipeline-windows/templates/sections/test-failure-recovery-agent.md +0 -48
  189. package/bundled/dev-pipeline-windows/templates/sections/test-failure-recovery-lite.md +0 -48
  190. package/bundled/dev-pipeline-windows/templates/session-status-schema.json +0 -83
  191. package/bundled/skills-windows/app-planner/SKILL.md +0 -296
  192. package/bundled/skills-windows/app-planner/assets/app-design-guide.md +0 -101
  193. package/bundled/skills-windows/app-planner/references/architecture-decisions.md +0 -52
  194. package/bundled/skills-windows/app-planner/references/brainstorm-guide.md +0 -101
  195. package/bundled/skills-windows/app-planner/references/frontend-design-guide.md +0 -71
  196. package/bundled/skills-windows/app-planner/references/infrastructure-convention-discovery.md +0 -108
  197. package/bundled/skills-windows/app-planner/references/project-brief-guide.md +0 -82
  198. package/bundled/skills-windows/app-planner/references/project-conventions-discovery.md +0 -59
  199. package/bundled/skills-windows/app-planner/references/project-state-detection.md +0 -90
  200. package/bundled/skills-windows/app-planner/references/red-team-checklist.md +0 -40
  201. package/bundled/skills-windows/app-planner/references/rules/backend/derivation-rules.md +0 -619
  202. package/bundled/skills-windows/app-planner/references/rules/backend/fixed-rules.md +0 -285
  203. package/bundled/skills-windows/app-planner/references/rules/backend/question-bank.md +0 -249
  204. package/bundled/skills-windows/app-planner/references/rules/backend/question-manifest.json +0 -46
  205. package/bundled/skills-windows/app-planner/references/rules/backend/template.md +0 -173
  206. package/bundled/skills-windows/app-planner/references/rules/database/derivation-rules.md +0 -382
  207. package/bundled/skills-windows/app-planner/references/rules/database/fixed-rules.md +0 -211
  208. package/bundled/skills-windows/app-planner/references/rules/database/question-bank.md +0 -184
  209. package/bundled/skills-windows/app-planner/references/rules/database/question-manifest.json +0 -39
  210. package/bundled/skills-windows/app-planner/references/rules/database/template.md +0 -158
  211. package/bundled/skills-windows/app-planner/references/rules/frontend/derivation-rules.md +0 -820
  212. package/bundled/skills-windows/app-planner/references/rules/frontend/fixed-rules.md +0 -188
  213. package/bundled/skills-windows/app-planner/references/rules/frontend/question-bank.md +0 -319
  214. package/bundled/skills-windows/app-planner/references/rules/frontend/question-manifest.json +0 -51
  215. package/bundled/skills-windows/app-planner/references/rules/frontend/template.md +0 -339
  216. package/bundled/skills-windows/app-planner/references/rules/mobile/derivation-rules.md +0 -649
  217. package/bundled/skills-windows/app-planner/references/rules/mobile/fixed-rules.md +0 -290
  218. package/bundled/skills-windows/app-planner/references/rules/mobile/question-bank.md +0 -232
  219. package/bundled/skills-windows/app-planner/references/rules/mobile/question-manifest.json +0 -47
  220. package/bundled/skills-windows/app-planner/references/rules/mobile/template.md +0 -175
  221. package/bundled/skills-windows/app-planner/references/rules-configuration.md +0 -46
  222. package/bundled/skills-windows/bug-fix-workflow/SKILL.md +0 -379
  223. package/bundled/skills-windows/bug-fix-workflow/references/bug-diagnosis.md +0 -41
  224. package/bundled/skills-windows/bug-planner/SKILL.md +0 -402
  225. package/bundled/skills-windows/bug-planner/assets/bug-confirmation-template.md +0 -43
  226. package/bundled/skills-windows/bug-planner/references/critic-and-verification.md +0 -44
  227. package/bundled/skills-windows/bug-planner/references/error-recovery.md +0 -73
  228. package/bundled/skills-windows/bug-planner/references/input-formats.md +0 -53
  229. package/bundled/skills-windows/bug-planner/references/schema-validation.md +0 -25
  230. package/bundled/skills-windows/bug-planner/references/severity-rules.md +0 -16
  231. package/bundled/skills-windows/bug-planner/scripts/validate-bug-list.py +0 -322
  232. package/bundled/skills-windows/bugfix-pipeline-launcher/SKILL.md +0 -304
  233. package/bundled/skills-windows/bugfix-pipeline-launcher/references/configuration.md +0 -84
  234. package/bundled/skills-windows/feature-pipeline-launcher/SKILL.md +0 -381
  235. package/bundled/skills-windows/feature-pipeline-launcher/references/configuration.md +0 -67
  236. package/bundled/skills-windows/feature-pipeline-launcher/scripts/preflight-check.py +0 -462
  237. package/bundled/skills-windows/feature-planner/SKILL.md +0 -397
  238. package/bundled/skills-windows/feature-planner/assets/evaluation-guide.md +0 -64
  239. package/bundled/skills-windows/feature-planner/assets/planning-guide.md +0 -214
  240. package/bundled/skills-windows/feature-planner/references/browser-interaction.md +0 -59
  241. package/bundled/skills-windows/feature-planner/references/completeness-review.md +0 -57
  242. package/bundled/skills-windows/feature-planner/references/decomposition-patterns.md +0 -75
  243. package/bundled/skills-windows/feature-planner/references/error-recovery.md +0 -90
  244. package/bundled/skills-windows/feature-planner/references/incremental-feature-planning.md +0 -112
  245. package/bundled/skills-windows/feature-planner/references/new-project-planning.md +0 -85
  246. package/bundled/skills-windows/feature-planner/scripts/validate-and-generate.py +0 -1020
  247. package/bundled/skills-windows/feature-workflow/SKILL.md +0 -374
  248. package/bundled/skills-windows/feature-workflow/references/brainstorm-guide.md +0 -137
  249. package/bundled/skills-windows/prizm-kit/SKILL.md +0 -93
  250. package/bundled/skills-windows/prizmkit-code-review/SKILL.md +0 -161
  251. package/bundled/skills-windows/prizmkit-code-review/references/dev-agent-prompt.md +0 -30
  252. package/bundled/skills-windows/prizmkit-code-review/references/review-report-template.md +0 -31
  253. package/bundled/skills-windows/prizmkit-code-review/references/reviewer-agent-prompt.md +0 -66
  254. package/bundled/skills-windows/prizmkit-code-review/scripts/check_loop.py +0 -186
  255. package/bundled/skills-windows/prizmkit-committer/SKILL.md +0 -89
  256. package/bundled/skills-windows/prizmkit-deploy/SKILL.md +0 -444
  257. package/bundled/skills-windows/prizmkit-deploy/references/ci-cd-workflows.md +0 -115
  258. package/bundled/skills-windows/prizmkit-deploy/references/cloud-platform-deploy.md +0 -93
  259. package/bundled/skills-windows/prizmkit-deploy/references/data-safety-examples.md +0 -120
  260. package/bundled/skills-windows/prizmkit-deploy/references/database-setup.md +0 -46
  261. package/bundled/skills-windows/prizmkit-deploy/references/deploy-config-schema.md +0 -148
  262. package/bundled/skills-windows/prizmkit-deploy/references/deploy-history-schema.md +0 -62
  263. package/bundled/skills-windows/prizmkit-deploy/references/deployment-modes.md +0 -50
  264. package/bundled/skills-windows/prizmkit-deploy/references/direct-upload.md +0 -26
  265. package/bundled/skills-windows/prizmkit-deploy/references/dns-setup.md +0 -42
  266. package/bundled/skills-windows/prizmkit-deploy/references/docker-deploy.md +0 -31
  267. package/bundled/skills-windows/prizmkit-deploy/references/firewall-setup.md +0 -37
  268. package/bundled/skills-windows/prizmkit-deploy/references/live-validation-notes.md +0 -21
  269. package/bundled/skills-windows/prizmkit-deploy/references/nginx-blue-green.md +0 -59
  270. package/bundled/skills-windows/prizmkit-deploy/references/ssh-bootstrap-flow.md +0 -49
  271. package/bundled/skills-windows/prizmkit-deploy/references/ssh-execution-flow.md +0 -41
  272. package/bundled/skills-windows/prizmkit-deploy/references/ssh-takeover.md +0 -20
  273. package/bundled/skills-windows/prizmkit-deploy/references/ssl-setup.md +0 -56
  274. package/bundled/skills-windows/prizmkit-implement/SKILL.md +0 -71
  275. package/bundled/skills-windows/prizmkit-init/SKILL.md +0 -356
  276. package/bundled/skills-windows/prizmkit-init/assets/project-brief-template.md +0 -82
  277. package/bundled/skills-windows/prizmkit-init/references/config-schema.md +0 -70
  278. package/bundled/skills-windows/prizmkit-init/references/rules/layer-detection.md +0 -41
  279. package/bundled/skills-windows/prizmkit-init/references/tech-stack-catalog.md +0 -13
  280. package/bundled/skills-windows/prizmkit-init/references/update-supplement.md +0 -9
  281. package/bundled/skills-windows/prizmkit-plan/SKILL.md +0 -102
  282. package/bundled/skills-windows/prizmkit-plan/assets/plan-template.md +0 -115
  283. package/bundled/skills-windows/prizmkit-plan/assets/spec-template.md +0 -73
  284. package/bundled/skills-windows/prizmkit-plan/references/clarify-guide.md +0 -67
  285. package/bundled/skills-windows/prizmkit-plan/references/examples.md +0 -85
  286. package/bundled/skills-windows/prizmkit-plan/references/verification-checklist.md +0 -60
  287. package/bundled/skills-windows/prizmkit-prizm-docs/SKILL.md +0 -129
  288. package/bundled/skills-windows/prizmkit-prizm-docs/assets/prizm-docs-format.md +0 -613
  289. package/bundled/skills-windows/prizmkit-prizm-docs/references/op-init.md +0 -45
  290. package/bundled/skills-windows/prizmkit-prizm-docs/references/op-rebuild.md +0 -15
  291. package/bundled/skills-windows/prizmkit-prizm-docs/references/op-status.md +0 -14
  292. package/bundled/skills-windows/prizmkit-prizm-docs/references/op-update.md +0 -19
  293. package/bundled/skills-windows/prizmkit-prizm-docs/references/op-validate.md +0 -17
  294. package/bundled/skills-windows/prizmkit-retrospective/SKILL.md +0 -87
  295. package/bundled/skills-windows/prizmkit-retrospective/references/knowledge-injection-steps.md +0 -50
  296. package/bundled/skills-windows/prizmkit-retrospective/references/structural-sync-steps.md +0 -43
  297. package/bundled/skills-windows/prizmkit-test/SKILL.md +0 -227
  298. package/bundled/skills-windows/prizmkit-test/references/boundary-coverage-protocol.md +0 -220
  299. package/bundled/skills-windows/prizmkit-test/references/examples.md +0 -143
  300. package/bundled/skills-windows/prizmkit-test/references/service-boundary-test-catalog.md +0 -225
  301. package/bundled/skills-windows/prizmkit-test/references/test-generation-steps.md +0 -109
  302. package/bundled/skills-windows/prizmkit-test/references/test-report-template.md +0 -111
  303. package/bundled/skills-windows/prizmkit-test/scripts/validate_boundary_report.py +0 -347
  304. package/bundled/skills-windows/recovery-workflow/SKILL.md +0 -355
  305. package/bundled/skills-windows/recovery-workflow/evals/evals.json +0 -46
  306. package/bundled/skills-windows/recovery-workflow/references/detection.md +0 -58
  307. package/bundled/skills-windows/recovery-workflow/scripts/detect-recovery-state.py +0 -544
  308. package/bundled/skills-windows/refactor-pipeline-launcher/SKILL.md +0 -346
  309. package/bundled/skills-windows/refactor-pipeline-launcher/references/configuration.md +0 -72
  310. package/bundled/skills-windows/refactor-planner/SKILL.md +0 -398
  311. package/bundled/skills-windows/refactor-planner/assets/planning-guide.md +0 -292
  312. package/bundled/skills-windows/refactor-planner/references/behavior-preservation.md +0 -301
  313. package/bundled/skills-windows/refactor-planner/references/fast-path.md +0 -59
  314. package/bundled/skills-windows/refactor-planner/references/planning-phases.md +0 -135
  315. package/bundled/skills-windows/refactor-planner/references/refactor-scoping-guide.md +0 -221
  316. package/bundled/skills-windows/refactor-planner/scripts/validate-and-generate-refactor.py +0 -858
  317. package/bundled/skills-windows/refactor-workflow/SKILL.md +0 -343
  318. package/bundled/skills-windows/refactor-workflow/references/brainstorm-guide.md +0 -116
  319. package/bundled/templates/hooks/diff-prizm-docs.sh +0 -158
  320. package/bundled/templates/hooks/prizm-pre-commit.sh +0 -108
  321. package/bundled/templates/hooks/validate-prizm-docs.sh +0 -139
@@ -1,73 +0,0 @@
1
- # Dev-Pipeline Fallback Bootstrap Prompt
2
-
3
- > **Note**: This is an emergency fallback template. Normally, `generate-bootstrap-prompt.py`
4
- > selects a tier-specific template (`bootstrap-tier1.md`, `bootstrap-tier2.md`, or `bootstrap-tier3.md`).
5
- > If you are seeing this prompt, the tier-specific templates were not found.
6
-
7
- ## Feature Context
8
-
9
- - **Feature ID**: {{FEATURE_ID}}
10
- - **Title**: {{FEATURE_TITLE}}
11
- - **Description**: {{FEATURE_DESCRIPTION}}
12
- - **Slug**: {{FEATURE_SLUG}}
13
-
14
- {{USER_CONTEXT}}
15
-
16
- ### Acceptance Criteria
17
-
18
- {{ACCEPTANCE_CRITERIA}}
19
-
20
- ## Your Mission
21
-
22
- You are the **session orchestrator**. Implement Feature {{FEATURE_ID}}: "{{FEATURE_TITLE}}".
23
-
24
- **CRITICAL**: You MUST NOT exit until ALL work is complete and committed.
25
-
26
- ## Instructions
27
-
28
- You are running in **headless non-interactive mode** — no human is available for input.
29
- Infer what needs to be done from the feature context above and follow the standard dev loop.
30
-
31
- ### Execution Steps
32
-
33
- 1. **Read context**: Read `.prizmkit/prizm-docs/root.prizm` and relevant L1/L2 docs to understand the codebase.
34
-
35
- 2. **Plan**: Run `/prizmkit-plan` with `artifact_dir=.prizmkit/specs/{{FEATURE_SLUG}}/` to produce `spec.md` and `plan.md`.
36
-
37
- 3. **Implement**: Run `/prizmkit-implement` with `artifact_dir=.prizmkit/specs/{{FEATURE_SLUG}}/` to execute the plan using TDD (write tests first, then implement).
38
-
39
- 4. **Test**: Run `/prizmkit-test scope=this-change artifact_dir=.prizmkit/specs/{{FEATURE_SLUG}}/` to generate and verify tests only for this feature's changed scope. Do not use bugfix/refactor artifact directories for this gate.
40
-
41
- 5. **Review**: Run `/prizmkit-code-review` with `artifact_dir=.prizmkit/specs/{{FEATURE_SLUG}}/` to review and auto-fix changes against the spec (internal review-fix loop, max 3 rounds).
42
-
43
- 6. **Retrospective**: Run `/prizmkit-retrospective` to sync `.prizmkit/prizm-docs/` with code changes.
44
-
45
- 7. **Commit**: Run `/prizmkit-committer --headless` to commit all changes. Do NOT push.
46
-
47
- ### Critical Rules
48
-
49
- - Do NOT ask for user input — decide autonomously.
50
- - Do NOT push to remote — the user will push manually.
51
- - Write all artifacts to `.prizmkit/specs/{{FEATURE_SLUG}}/`.
52
- - If a step fails after 3 attempts, write a status report and stop.
53
-
54
-
55
- ## Failure Capture Protocol
56
-
57
- If you encounter an unrecoverable error, context overflow, or are about to exit without completing all steps:
58
-
59
- 1. Write `.prizmkit/specs/{{FEATURE_SLUG}}/failure-log.md` BEFORE exiting:
60
- ```
61
- FAILURE_TYPE: timeout | test_failure | review_rejected | context_overflow | unknown
62
- PHASE: <failed phase>
63
- ROOT_CAUSE: <1-2 sentence explanation>
64
- ATTEMPTED: <approaches already tried>
65
- SUGGESTION: <what the next session should try differently>
66
- ```
67
-
68
- 2. This file is intentionally lightweight — write it BEFORE context runs out.
69
-
70
- After a successful session (all steps complete + commit done), delete it:
71
- ```powershell
72
- Remove-Item -Force -ErrorAction SilentlyContinue .prizmkit/specs/{{FEATURE_SLUG}}/failure-log.md
73
- ```
@@ -1,589 +0,0 @@
1
- # Dev-Pipeline Session Bootstrap — Tier 1 (Single Agent)
2
-
3
- ## Session Context
4
-
5
- - **Feature ID**: {{FEATURE_ID}} | **Session**: {{SESSION_ID}} | **Run**: {{RUN_ID}}
6
- - **Complexity**: {{COMPLEXITY}}
7
- - **Init**: {{INIT_DONE}} | Artifacts: spec={{HAS_SPEC}} plan={{HAS_PLAN}}
8
-
9
- ## Your Mission
10
-
11
- You are the **session orchestrator**. Implement Feature {{FEATURE_ID}}: "{{FEATURE_TITLE}}".
12
-
13
- **CRITICAL**: You MUST NOT exit until ALL work is complete and committed.
14
-
15
- **Tier 1 — Single Agent**: You handle everything directly. No normal work subagents; the log-size monitor is the only allowed persistent background subagent. No TeamCreate.
16
-
17
- ### Feature Description
18
-
19
- {{FEATURE_DESCRIPTION}}
20
-
21
- {{USER_CONTEXT}}
22
-
23
- ### Acceptance Criteria
24
-
25
- {{ACCEPTANCE_CRITERIA}}
26
-
27
- ### Project Brief
28
-
29
- > Product ideas checklist from planning. Lines marked [x] are already implemented. When your feature touches any [ ] item, ensure alignment. After implementation, mark relevant items [x] and append the key file/directory paths.
30
-
31
- {{PROJECT_BRIEF}}
32
-
33
- ### Dependencies (Already Completed)
34
-
35
- {{COMPLETED_DEPENDENCIES}}
36
-
37
- ### App Global Context
38
-
39
- {{GLOBAL_CONTEXT}}
40
-
41
- ## ⚠️ Context Budget Rules (CRITICAL — read before any phase)
42
-
43
- You are running in **headless non-interactive mode** with a FINITE context window. Exceeding it will crash the session and lose all work. Follow these rules strictly:
44
-
45
- 0. **NON-INTERACTIVE MODE** — There is NO human on the other end. NEVER ask for user confirmation, NEVER wait for user input, NEVER use interactive prompts (e.g. "Would you like me to…"). If a skill has an interactive step (e.g. offer remediation, ask for approval), skip it and proceed autonomously. Make decisions based on the data available and move forward.
46
-
47
- 1. **context-snapshot.md is your single source of truth** — After Phase 1 builds it, ALWAYS read context-snapshot.md instead of re-reading individual source files
48
- 2. **Never re-read your own writes** — After you create/modify a file, do NOT read it back to verify. Trust your write was correct.
49
- 3. **Stay focused** — Do NOT explore code unrelated to this feature. No curiosity-driven reads.
50
- 4. **One task at a time** — In Phase 3 (implement), complete and test one task before starting the next.
51
- 5. **Minimize tool output** — Never load full command output into context. First capture to a temp file (`& { <command> } 2>&1 | Tee-Object (Join-Path $env:TEMP "out.txt") | Select-Object -Last 20`), then scan the first/last lines to identify relevant fields, and use targeted filtering (`Select-String`, regex matching, PowerShell object filtering) to extract only the information needed for the current task. Only read the filtered result — never the raw full output.
52
- 6. **No intermediate commits** — Do NOT run `git add`/`git commit` during Phase 1-3. All changes are committed once at the end in Phase 4 via `/prizmkit-committer`.
53
- 7. **Capture test output once** — When running test suites, always use `& { {{TEST_CMD}} } 2>&1 | Tee-Object (Join-Path $env:TEMP "test-out.txt") | Select-Object -Last 20`. Then Select-String `(Join-Path $env:TEMP "test-out.txt")` for details. Never re-run the suite just to apply a different filter.
54
-
55
- ---
56
-
57
- {{LOG_SIZE_AWARENESS}}
58
- ---
59
-
60
- ## PrizmKit Directory Convention
61
-
62
- ```
63
- .prizmkit/specs/{{FEATURE_SLUG}}/context-snapshot.md
64
- .prizmkit/specs/{{FEATURE_SLUG}}/plan.md ← includes Tasks section
65
- ```
66
-
67
- ---
68
-
69
- ## Execution
70
-
71
- ### PowerShell Python Helper
72
-
73
- Define this helper once in the active PowerShell session before running PrizmKit Python scripts:
74
-
75
- ```powershell
76
- function Invoke-PrizmPython {
77
- param([Parameter(ValueFromRemainingArguments = $true)][string[]]$Arguments)
78
- $python = Get-Command python -ErrorAction SilentlyContinue
79
- if ($python) {
80
- & $python.Source -c 'import sys; raise SystemExit(0 if sys.version_info[0] == 3 else 1)' *> $null
81
- if ($LASTEXITCODE -eq 0) {
82
- & $python.Source @Arguments
83
- return
84
- }
85
- }
86
- $py = Get-Command py -ErrorAction SilentlyContinue
87
- if ($py) {
88
- & $py.Source -3 -c 'import sys; raise SystemExit(0 if sys.version_info[0] == 3 else 1)' *> $null
89
- if ($LASTEXITCODE -eq 0) {
90
- & $py.Source -3 @Arguments
91
- return
92
- }
93
- }
94
- throw "Python 3 is required. Install Python and ensure python or py is in PATH."
95
- }
96
- ```
97
-
98
-
99
- {{IF_INIT_NEEDED}}
100
- ### Phase 0: Project Bootstrap
101
- - Run `/prizmkit-init` (invoke the prizmkit-init skill)
102
- - Run `Invoke-PrizmPython {{INIT_SCRIPT_PATH}} --project-root {{PROJECT_ROOT}} --feature-id {{FEATURE_ID}} --feature-slug {{FEATURE_SLUG}}`
103
- - **CP-0**: Verify `.prizmkit/prizm-docs/root.prizm`, `.prizmkit/config.json` exist
104
- {{END_IF_INIT_NEEDED}}
105
- {{IF_INIT_DONE}}
106
- ### Phase 0: SKIP (already initialized)
107
- {{END_IF_INIT_DONE}}
108
-
109
- ### Phase 1: Build Context Snapshot
110
-
111
- ```powershell
112
- if (Test-Path -LiteralPath ".prizmkit/specs/{{FEATURE_SLUG}}/context-snapshot.md") { "EXISTS" } else { "MISSING" }
113
- ```
114
-
115
- If MISSING — build it now:
116
- 1. Read `.prizmkit/prizm-docs/root.prizm` and relevant L1 prizm docs
117
- 2. Detect source code directories: read KEY_FILES and STRUCTURE sections from `root.prizm` to identify where source code lives (e.g. `src/`, `app/`, `lib/`, `cmd/`, `packages/`, or project root). If `root.prizm` is missing, scan the project tree:
118
- ```powershell
119
- Get-ChildItem -Path . -Recurse -File -Depth 2 -Include *.js,*.ts,*.py,*.go,*.java,*.rb,*.rs -ErrorAction SilentlyContinue |
120
- Where-Object { $_.FullName -notmatch '\\(node_modules|\.git|dist|build|vendor)\\' } |
121
- Select-Object -First 30 -ExpandProperty FullName
122
- ```
123
- Identify the top-level source directories from the results.
124
- 3. Scan the detected source directories for files related to this feature; read each one
125
- 4. Write `.prizmkit/specs/{{FEATURE_SLUG}}/context-snapshot.md`:
126
- - **Section 1 — Feature Brief**: feature description + acceptance criteria (copy from above)
127
- - **Section 2 — Project Structure**: run the following to get a visual directory tree, then paste output:
128
- ```powershell
129
- Get-ChildItem -Path . -Directory -Recurse -Depth 2 -ErrorAction SilentlyContinue |
130
- Where-Object { $_.FullName -notmatch '\\(node_modules|\.git|dist|build|__pycache__|vendor)\\' } |
131
- Select-Object -ExpandProperty FullName
132
- ```
133
- - **Section 3 — Prizm Context**: content of root.prizm and relevant L1/L2 docs
134
- - **Section 4 — Existing Source Files**: **full verbatim content** of each related file in fenced code blocks (with `### path/to/file` heading and line count). Include ALL files needed for implementation and review — downstream phases read this section instead of re-reading individual source files
135
- - **Section 5 — Existing Tests**: full content of related test files as code block
136
-
137
- ### Phase 2: Plan & Tasks
138
-
139
- ```powershell
140
- Get-ChildItem -LiteralPath ".prizmkit/specs/{{FEATURE_SLUG}}/" -ErrorAction SilentlyContinue
141
- ```
142
-
143
- If plan.md missing, run `/prizmkit-plan` with `artifact_dir=.prizmkit/specs/{{FEATURE_SLUG}}/` to generate `plan.md`:
144
- - The plan.md should include: key components, data flow, files to create/modify, and a Tasks section with `[ ]` checkboxes (each task = one implementable unit). Keep under 80 lines.
145
- - Resolve any `[NEEDS CLARIFICATION]` markers using the feature description — do NOT pause for interactive input.
146
-
147
- **Database Design Gate** (if feature involves data persistence — new tables, schema changes, new entities):
148
- Before proceeding past CP-1:
149
- 1. Scan for existing schema files (`*.prisma`, `*.sql`, `migrations/`, `models/`, `*.entity.*`) and read them
150
- 2. Ensure new tables/fields follow existing naming conventions and constraint patterns
151
- 3. Resolve all uncertain DB design decisions before writing Tasks — document choices in plan.md
152
-
153
- **CP-1**: plan.md exists with Tasks section.
154
-
155
- ### Phase 3: Implement + Test
156
-
157
- **Build artifacts**: After any build/compile command (`go build`, `npm run build`, `tsc`, etc.), ensure the output binary or build directory is in `.gitignore`:
158
- ```powershell
159
- # Example for Go
160
- if (-not (Select-String -Path .gitignore -Pattern '^/binary-name$' -Quiet -ErrorAction SilentlyContinue)) {
161
- Add-Content -Path .gitignore -Value '/binary-name'
162
- }
163
- ```
164
- Never commit compiled binaries, build output, or generated artifacts.
165
-
166
- **3a.** Detect test commands and record baseline:
167
-
168
- You know this project's tech stack. Identify ALL test commands that apply (e.g., `go test ./...`, `npm test`, `cargo test`, `pytest`, `make test`, etc.). Record them as `TEST_CMDS` (one or more commands). Then record baseline:
169
- ```powershell
170
- # Run each test command, capture output
171
- & { {{TEST_CMD}} } 2>&1 | Tee-Object (Join-Path $env:TEMP "test-baseline.txt") | Select-Object -Last 20
172
- ```
173
-
174
- **3b.** Run `/prizmkit-implement` — this handles the full implementation cycle:
175
- - Reads plan.md Tasks section from `.prizmkit/specs/{{FEATURE_SLUG}}/`
176
- - Reads context from `context-snapshot.md` (Prizm docs, TRAPS, file manifest)
177
- - Implements task-by-task with TDD, marking each `[x]` immediately
178
- - Creates/updates L2 `.prizm` docs when creating new modules or significantly modifying existing ones — AI selectively decides the modules that warrant L2 based on complexity and importance
179
- - Runs tests using `TEST_CMD` after each task
180
- - Writes '## Implementation Log' to `context-snapshot.md`
181
-
182
- **3b-compact.** Context management — if plan.md has more than 5 tasks, run `/compact` after completing every 3 tasks during implementation. This prevents context window exhaustion in long sessions. If `/compact` is not available (non-Claude CLI), skip this step.
183
-
184
- **3c.** After implement completes, verify:
185
- 1. All tasks in plan.md are `[x]`
186
- 2. Run the full test suite to ensure nothing is broken
187
- 3. Verify each acceptance criterion from Section 1 of context-snapshot.md is met — check mentally, do NOT re-read files you already wrote
188
- 4. If any criterion is not met, fix it now using the convergence-based recovery loop below
189
-
190
- **CP-2**: All acceptance criteria met, all tests pass.
191
-
192
- ### Test Failure Recovery (Convergence-Based)
193
-
194
- When tests fail, use convergence recovery — keep fixing while progress is being made:
195
-
196
- 1. **Run tests, record results**: count failures, exclude baseline failures
197
- 2. **Check termination**: All pass → done | Plateau (same failures 3 rounds) → stop | Failures decreased → continue
198
- 3. **Fix and iterate**: analyze, fix, re-run `({{TEST_CMD}})`, go back to step 1
199
-
200
- **Key rule**: If failures decrease (even by 1), plateau counter resets. Do NOT block commit for unresolved failures — document and defer to next session.
201
-
202
-
203
- ### Scoped Feature Test Gate — PrizmKit Test
204
-
205
- Run `/prizmkit-test scope=this-change artifact_dir=.prizmkit/specs/{{FEATURE_SLUG}}/` after implementation and before review/commit.
206
-
207
- Before invoking the skill, create `.prizmkit/specs/{{FEATURE_SLUG}}/.prizmkit-test-started` so stale reports are ignored.
208
-
209
- Gate requirements:
210
- - Generate or update tests only for this feature's changed files, changed public interfaces, and acceptance criteria.
211
- - Do NOT use `.prizmkit/bugfix/` or `.prizmkit/refactor/` artifact directories.
212
- - Record unrelated historical gaps under `Out of Scope Gaps`; do not generate tests for them and do not fail this feature because of them.
213
- - Accept only a current-run `.prizmkit/test/*/test-report.md` whose `Scope` mode is `this-change`, whose `Artifact Dir` matches `.prizmkit/specs/{{FEATURE_SLUG}}/`, whose `Verdict` is `PASS`, whose `Boundary Completion Gate` reports `Completion gate passed: yes` with zero `Boundary-missing` and zero `Happy-path-only`, and whose `Boundary Validation` result is `passed`.
214
- - Only after a valid `PASS`, write the report path to `.prizmkit/specs/{{FEATURE_SLUG}}/test-report-path.txt` and append a 3-5 bullet `## PrizmKit Test Gate` summary to `context-snapshot.md`.
215
- - If the report verdict is `NEEDS_FIXES`, fix in-scope implementation/test issues and rerun `/prizmkit-test`. If the report is `BLOCKED`, missing, stale, or for the wrong scope/artifact dir, write `failure-log.md` and stop for recovery.
216
-
217
- {{IF_BROWSER_INTERACTION}}
218
- ### Phase 3.5: Browser Verification — MANDATORY
219
-
220
- You MUST execute this phase. Do NOT skip it.
221
-
222
- **Browser Tool**: {{BROWSER_TOOL}}
223
-
224
- {{IF_BROWSER_TOOL_PLAYWRIGHT}}
225
- **Using: playwright-cli**
226
-
227
- **CRITICAL CONSTRAINT — playwright-cli ONLY, NO Playwright MCP**:
228
- - You MUST use `playwright-cli` (the CLI tool) for ALL browser interactions in this phase
229
- - **NEVER** use Playwright MCP server, Playwright MCP tools, or any MCP-based browser automation
230
- - If you have Playwright MCP configured, IGNORE it entirely — use the CLI command `playwright-cli` exclusively
231
- - All browser actions go through `playwright-cli <command>` in the PowerShell tool, not through any MCP tool call
232
-
233
- **Step 0 — Playwright CLI Readiness Check (BLOCKING — must pass before any browser action)**:
234
-
235
- 0a. Check if `playwright-cli` is installed:
236
- ```powershell
237
- $playwright = Get-Command playwright-cli -ErrorAction SilentlyContinue
238
- if ($playwright) { playwright-cli --version } else { "NOT_INSTALLED" }
239
- ```
240
- If output is `NOT_INSTALLED`, install it:
241
- ```powershell
242
- npm install -g @playwright/cli@latest
243
- ```
244
- Then verify installation succeeded:
245
- ```powershell
246
- playwright-cli --version
247
- ```
248
- If installation fails, log the error in context-snapshot.md under `## Browser Verification: SKIPPED — playwright-cli installation failed` and proceed to the next phase. Do NOT attempt browser verification without playwright-cli.
249
-
250
- 0b. Learn playwright-cli usage (run once per session to understand available commands):
251
- ```powershell
252
- playwright-cli --help
253
- ```
254
- Use this output to determine the correct commands for your verification steps. Do NOT guess command syntax — refer to the help output.
255
-
256
- 0c. Check if playwright-cli skill is installed for the current AI platform:
257
- ```powershell
258
- $currentPlatform = "unknown"
259
- $skillDir = $null
260
- if (Get-Command claude -ErrorAction SilentlyContinue) {
261
- $currentPlatform = "claude"
262
- $skillDir = Join-Path $HOME ".claude\skills"
263
- } elseif (Get-Command cbc -ErrorAction SilentlyContinue) {
264
- $currentPlatform = "codebuddy"
265
- $skillDir = Join-Path $HOME ".cbc\skills"
266
- }
267
-
268
- $skillExists = $false
269
- if ($skillDir) {
270
- $directSkill = Join-Path $skillDir "playwright-cli"
271
- $matchingSkills = Get-ChildItem -Path $skillDir -Filter "playwright*" -ErrorAction SilentlyContinue
272
- $skillExists = (Test-Path -LiteralPath $directSkill) -or [bool]$matchingSkills
273
- }
274
- if ($skillExists) { "SKILL_EXISTS" } else { "SKILL_MISSING" }
275
- ```
276
- If `SKILL_MISSING`:
277
- ```powershell
278
- playwright-cli install --skills
279
- ```
280
- If the current platform is NOT claude, move the installed skill files to the correct location:
281
- ```powershell
282
- $claudeSkillDir = Join-Path $HOME ".claude\skills"
283
- $sourceSkill = Join-Path $claudeSkillDir "playwright-cli"
284
- if ($currentPlatform -ne "claude" -and $currentPlatform -ne "unknown" -and $skillDir -and (Test-Path -LiteralPath $sourceSkill)) {
285
- New-Item -ItemType Directory -Force -Path $skillDir | Out-Null
286
- Copy-Item -Recurse -Force -Path $sourceSkill -Destination $skillDir
287
- "Moved playwright-cli skill from claude to $currentPlatform"
288
- }
289
- ```
290
-
291
- 0d. Read the installed playwright-cli skill for workflow guidance:
292
- After skill installation, read the skill's SKILL.md to understand recommended workflows and patterns. Use these patterns to construct your verification flow — do NOT invent your own patterns if the skill provides them.
293
-
294
- **Step 1 — Start Dev Server**:
295
-
296
- You know this project's tech stack. Detect and start the dev server yourself:
297
-
298
- 1. Identify the dev server start command from project config (`package.json` scripts, `Makefile`, `docker-compose.yml`, etc.)
299
- 2. **Detect the dev server port** — use the pre-detected port from pipeline if available, otherwise extract from project config. Do NOT hardcode or guess the port:
300
- ```powershell
301
- $DEV_PORT = "{{DEV_PORT}}"
302
- if ($DEV_PORT -eq "{{DEV_PORT}}" -or [string]::IsNullOrWhiteSpace($DEV_PORT)) {
303
- $detectedPort = ""
304
- if (Test-Path -LiteralPath "package.json") {
305
- $detectedPort = node -e "const p=require('./package.json'); const s=(p.scripts?.dev) || ''; const m=s.match(/-p\s+(\d+)/); console.log(m?m[1]:'')"
306
- }
307
- if (-not $detectedPort -and $env:NEXT_PUBLIC_SITE_URL -match ':([0-9]+)') {
308
- $detectedPort = $Matches[1]
309
- }
310
- if ($detectedPort) { $DEV_PORT = $detectedPort } else { $DEV_PORT = "3000" }
311
- }
312
- "Detected DEV_PORT=$DEV_PORT"
313
- ```
314
- 3. Verify the port is available and start the dev server in the background, capturing its process id:
315
- ```powershell
316
- $portBusy = Get-NetTCPConnection -LocalPort ([int]$DEV_PORT) -ErrorAction SilentlyContinue
317
- if ($portBusy) { "PORT_IN_USE" } else { "PORT_FREE" }
318
- $devServerCommand = "<start-command>"
319
- $server = Start-Process -FilePath "powershell" -ArgumentList @("-NoProfile", "-Command", $devServerCommand) -PassThru
320
- $DEV_SERVER_PID = $server.Id
321
- ```
322
-
323
- Wait for server to be ready: poll `http://localhost:$DEV_PORT` until it returns 200 or 302 (max 30 seconds, 2s interval):
324
- ```powershell
325
- $ready = $false
326
- for ($i = 0; $i -lt 15; $i++) {
327
- try {
328
- $response = Invoke-WebRequest -Uri "http://localhost:$DEV_PORT" -UseBasicParsing -TimeoutSec 2
329
- if ($response.StatusCode -in @(200, 302)) { $ready = $true; break }
330
- } catch {
331
- Start-Sleep -Seconds 2
332
- }
333
- }
334
- if (-not $ready) { "DEV_SERVER_NOT_READY" }
335
- ```
336
- 4. Open the app in playwright-cli: `playwright-cli open "http://localhost:$DEV_PORT"`
337
- 5. If the page requires authentication, use playwright-cli to register a test user and log in first
338
-
339
- **Step 2 — Verification**:
340
-
341
- Use `playwright-cli snapshot` on the running app to discover actual element refs, then verify these goals:
342
- {{BROWSER_VERIFY_STEPS}}
343
-
344
- Construct your verification workflow based on:
345
- 1. The playwright-cli skill documentation (read in Step 0d)
346
- 2. The `playwright-cli --help` output (captured in Step 0b)
347
- 3. The current task's Verification Gates and implemented features
348
-
349
- Decide the concrete playwright-cli actions (click, fill, snapshot, screenshot, etc.) yourself based on the snapshot output and your knowledge of the implemented code. The goals above describe WHAT to verify — you determine HOW using playwright-cli commands.
350
-
351
- Take a final screenshot for evidence: `playwright-cli screenshot`
352
-
353
- **Step 3 — Cleanup (REQUIRED — you started it, you stop it)**:
354
-
355
- 1. Close the playwright-cli browser: `playwright-cli close`
356
- 2. Stop the dev server process and any remaining process bound to the dev server port:
357
- ```powershell
358
- if ($DEV_SERVER_PID) { Stop-Process -Id $DEV_SERVER_PID -Force -ErrorAction SilentlyContinue }
359
- Get-NetTCPConnection -LocalPort ([int]$DEV_PORT) -ErrorAction SilentlyContinue |
360
- Select-Object -ExpandProperty OwningProcess -Unique |
361
- ForEach-Object { Stop-Process -Id $_ -Force -ErrorAction SilentlyContinue }
362
- ```
363
-
364
- {{END_IF_BROWSER_TOOL_PLAYWRIGHT}}
365
- {{IF_BROWSER_TOOL_OPENCLI}}
366
- **Using: opencli** (reuses Chrome logged-in sessions)
367
-
368
- **CRITICAL CONSTRAINT — opencli browser ONLY**:
369
- - You MUST use `opencli browser` for ALL browser interactions in this phase
370
- - All browser actions go through `opencli browser <command>` in the PowerShell tool
371
-
372
- **Step 0 — OpenCLI Readiness Check (BLOCKING)**:
373
-
374
- 0a. Check if `opencli` is installed:
375
- ```powershell
376
- $opencli = Get-Command opencli -ErrorAction SilentlyContinue
377
- if ($opencli) { opencli --version } else { "NOT_INSTALLED" }
378
- ```
379
- If `NOT_INSTALLED`: `npm install -g @jackwener/opencli@latest`. If installation fails, log `## Browser Verification: SKIPPED — opencli installation failed` and proceed.
380
-
381
- 0b. Verify Browser Bridge: `opencli doctor`. If fails, log skip and proceed.
382
-
383
- 0c. Learn usage:
384
- ```powershell
385
- opencli browser --help 2>$null
386
- if ($LASTEXITCODE -ne 0) { opencli --help }
387
- ```
388
-
389
- **Step 1 — Start Dev Server**: use the same port detection and server lifecycle pattern as the playwright-cli path:
390
- ```powershell
391
- $DEV_PORT = "{{DEV_PORT}}"
392
- if ($DEV_PORT -eq "{{DEV_PORT}}" -or [string]::IsNullOrWhiteSpace($DEV_PORT)) {
393
- $detectedPort = ""
394
- if (Test-Path -LiteralPath "package.json") {
395
- $detectedPort = node -e "const p=require('./package.json'); const s=(p.scripts?.dev) || ''; const m=s.match(/-p\s+(\d+)/); console.log(m?m[1]:'')"
396
- }
397
- if (-not $detectedPort -and $env:NEXT_PUBLIC_SITE_URL -match ':([0-9]+)') {
398
- $detectedPort = $Matches[1]
399
- }
400
- if ($detectedPort) { $DEV_PORT = $detectedPort } else { $DEV_PORT = "3000" }
401
- }
402
- "Detected DEV_PORT=$DEV_PORT"
403
- ```
404
- ```powershell
405
- $portBusy = Get-NetTCPConnection -LocalPort ([int]$DEV_PORT) -ErrorAction SilentlyContinue
406
- if ($portBusy) { "PORT_IN_USE" } else { "PORT_FREE" }
407
- $devServerCommand = "<start-command>"
408
- $server = Start-Process -FilePath "powershell" -ArgumentList @("-NoProfile", "-Command", $devServerCommand) -PassThru
409
- $DEV_SERVER_PID = $server.Id
410
- ```
411
-
412
- Wait for server to be ready: poll `http://localhost:$DEV_PORT` until it returns 200 or 302 (max 30 seconds, 2s interval):
413
- ```powershell
414
- $ready = $false
415
- for ($i = 0; $i -lt 15; $i++) {
416
- try {
417
- $response = Invoke-WebRequest -Uri "http://localhost:$DEV_PORT" -UseBasicParsing -TimeoutSec 2
418
- if ($response.StatusCode -in @(200, 302)) { $ready = $true; break }
419
- } catch {
420
- Start-Sleep -Seconds 2
421
- }
422
- }
423
- if (-not $ready) { "DEV_SERVER_NOT_READY" }
424
- ```
425
-
426
- Start server, wait for ready, then:
427
- ```powershell
428
- opencli browser open "http://localhost:$DEV_PORT"
429
- if ($LASTEXITCODE -eq 0) { opencli browser state }
430
- ```
431
-
432
- **Step 2 — Verification**:
433
-
434
- Use `opencli browser state` to discover elements with `[N]` indices, then verify:
435
- {{BROWSER_VERIFY_STEPS}}
436
-
437
- Chain commands in PowerShell with semicolons and inspect each result, for example: `opencli browser click <N>; opencli browser wait time 1; opencli browser state`
438
-
439
- **Step 3 — Cleanup**:
440
- 1. `opencli browser close`
441
- 2. Stop the dev server process and any remaining process bound to the dev server port:
442
- ```powershell
443
- if ($DEV_SERVER_PID) { Stop-Process -Id $DEV_SERVER_PID -Force -ErrorAction SilentlyContinue }
444
- Get-NetTCPConnection -LocalPort ([int]$DEV_PORT) -ErrorAction SilentlyContinue |
445
- Select-Object -ExpandProperty OwningProcess -Unique |
446
- ForEach-Object { Stop-Process -Id $_ -Force -ErrorAction SilentlyContinue }
447
- ```
448
-
449
- {{END_IF_BROWSER_TOOL_OPENCLI}}
450
- {{IF_BROWSER_TOOL_AUTO}}
451
- **Tool Selection**: Choose the best browser tool at runtime.
452
-
453
- **Step 0 — Detect available tools**:
454
- ```powershell
455
- "=== playwright-cli ==="
456
- $playwright = Get-Command playwright-cli -ErrorAction SilentlyContinue
457
- if ($playwright) { playwright-cli --version } else { "NOT_INSTALLED" }
458
- "=== opencli ==="
459
- $opencli = Get-Command opencli -ErrorAction SilentlyContinue
460
- if ($opencli) { opencli --version } else { "NOT_INSTALLED" }
461
- if ($opencli) {
462
- opencli doctor 2>$null
463
- if ($LASTEXITCODE -ne 0) { "OPENCLI_BRIDGE_FAILED" }
464
- }
465
- ```
466
-
467
- **Decision table**:
468
- | Condition | Tool |
469
- |-----------|------|
470
- | Only playwright-cli available | playwright-cli |
471
- | Only opencli available (doctor passes) | opencli |
472
- | Both — local dev server, forms, components | playwright-cli |
473
- | Both — needs real login state (OAuth/SSO) | opencli |
474
- | Both — third-party integration verification | opencli |
475
- | Neither available | Install playwright-cli as default |
476
-
477
- Then follow the corresponding tool's workflow above (Steps 1-3).
478
-
479
- {{END_IF_BROWSER_TOOL_AUTO}}
480
-
481
- **Step 4 — Reporting**:
482
-
483
- Append results to `context-snapshot.md`:
484
- ```
485
- ## Browser Verification
486
- Tool: <playwright-cli or opencli>
487
- URL: http://localhost:$DEV_PORT
488
- Dev Server Command: <actual command used>
489
- Tool version: <version>
490
- Steps executed: [list of commands used]
491
- Screenshot: [path]
492
- Result: PASS / FAIL (reason)
493
- Server cleanup: confirmed
494
- Browser cleanup: confirmed
495
- ```
496
-
497
- If verification fails, log the failure details but continue to commit. Failures do NOT block the commit, but you MUST attempt verification and MUST clean up the dev server.
498
- {{END_IF_BROWSER_INTERACTION}}
499
-
500
- ### Phase 4: Architecture Sync & Commit (SINGLE COMMIT)
501
-
502
- **4a.** Run `/prizmkit-retrospective` — maintains `.prizmkit/prizm-docs/` (architecture index):
503
- 1. **Structural sync**: Use `git diff --cached --name-status` to locate changed modules, update KEY_FILES/INTERFACES/DEPENDENCIES/file counts in affected `.prizmkit/prizm-docs/` files
504
- 2. **Architecture knowledge** (feature sessions only): Extract TRAPS/RULES/DECISIONS from completed work into `.prizmkit/prizm-docs/`
505
- 3. **L2 coverage check**: For any module/sub-module with source files created or significantly modified in this session but no L2 `.prizm` doc — evaluate whether L2 is warranted and create if so. The current session has the best context for accurate KEY_FILES, TRAPS, and DECISIONS.
506
- 4. Stage doc changes: `git add .prizmkit/prizm-docs/`
507
- ⚠️ Do NOT commit here. Only stage.
508
-
509
- **4b.** Stage all feature code explicitly (NEVER use `git add -A` or `git add .`):
510
- ```powershell
511
- git add <specific-files-created-or-modified>
512
- git add .prizmkit/prizm-docs/
513
- ```
514
-
515
- **4c.** Run `/prizmkit-committer` → THE ONLY commit for this feature:
516
- `feat({{FEATURE_ID}}): {{FEATURE_TITLE}}`
517
- This single commit includes: feature code + tests + .prizmkit/prizm-docs/ updates. Do NOT push.
518
- - MANDATORY: commit must be done via `/prizmkit-committer` skill. Do NOT run manual `git add`/`git commit` as a substitute.
519
- - Do NOT run `update-feature-status.py` here — the pipeline runner handles feature-list.json updates automatically after session exit.
520
-
521
- **4d.** Final verification:
522
- ```powershell
523
- git status --short
524
- ```
525
- Working tree MUST be clean after this step. If any feature-related files remain, stage them into the SAME commit via `git add <file>; if ($LASTEXITCODE -eq 0) { git commit --amend --no-edit }`, do NOT create a separate commit.
526
-
527
- **Exception**: `session-summary.md` in the artifact directory is a local cross-session artifact generated by `/prizmkit-committer` — it is NOT committed to git. Ignore it in the clean-tree check.
528
-
529
- **4e.** Write completion summary for downstream dependency context:
530
-
531
- Write `.prizmkit/specs/{{FEATURE_SLUG}}/completion-summary.json` with the key changes from this session. This file is NOT committed to git — the pipeline runner reads it to propagate context to dependent features.
532
-
533
- ```json
534
- {
535
- "completion_notes": [
536
- "<each item: one key change, API, model, or integration point that downstream features may need>",
537
- "Example: Added User model (id, email, password_hash, display_name) in prisma/schema.prisma",
538
- "Example: POST /api/auth/register and POST /api/auth/login endpoints in src/api/auth.ts",
539
- "Example: Auth middleware in src/middleware/auth.ts — validates JWT on protected routes"
540
- ]
541
- }
542
- ```
543
-
544
- Rules for writing completion notes:
545
- - Focus on **what downstream features need to know**: new APIs, models, exported functions, key file paths
546
- - Each note should be self-contained and concise (one line, under 120 characters preferred)
547
- - Include 3-8 notes covering the most important changes
548
- - Do NOT include test files, config changes, or internal implementation details unless they affect other features
549
- - If this feature has no downstream dependents, still write the summary (it serves as documentation)
550
-
551
- ## Critical Paths
552
-
553
- | Resource | Path |
554
- |----------|------|
555
- | Feature Artifacts Dir | `.prizmkit/specs/{{FEATURE_SLUG}}/` |
556
- | Context Snapshot | `.prizmkit/specs/{{FEATURE_SLUG}}/context-snapshot.md` |
557
- | Project Root | {{PROJECT_ROOT}} |
558
-
559
- ## Failure Capture Protocol
560
-
561
- If you encounter an unrecoverable error, context overflow, or are about to exit without completing all phases:
562
-
563
- 1. Write `.prizmkit/specs/{{FEATURE_SLUG}}/failure-log.md` BEFORE exiting:
564
- ```
565
- FAILURE_TYPE: timeout | test_failure | review_rejected | context_overflow | unknown
566
- PHASE: <Get-Command phase failed>
567
- ROOT_CAUSE: <1-2 sentence explanation>
568
- ATTEMPTED: <approaches already tried>
569
- SUGGESTION: <what the next session should try differently>
570
- DISCOVERED_TRAPS:
571
- - [CRITICAL|HIGH|LOW] <gotcha discovered during this failed session> | FIX: <approach>
572
- ```
573
-
574
- 2. This file is intentionally lightweight — write it BEFORE context runs out.
575
-
576
- **Lifecycle**: failure-log.md is a temporary cross-session artifact. Do NOT commit it to git. After a successful session (all phases complete + commit done), delete it:
577
- ```powershell
578
- Remove-Item -Force -ErrorAction SilentlyContinue .prizmkit/specs/{{FEATURE_SLUG}}/failure-log.md
579
- ```
580
-
581
- ## Reminders
582
-
583
- - Tier 1: you handle everything directly — no subagents needed
584
- - MANDATORY skills: `/prizmkit-retrospective`, `/prizmkit-committer` — never skip these
585
- - Build context-snapshot.md FIRST; use it throughout instead of re-reading files
586
- - `/prizmkit-committer` is mandatory — do NOT skip the commit phase, and do NOT replace it with manual git commit commands
587
- - Do NOT run `git add`/`git commit` during Phase 1-3 — all changes are committed once in Phase 4
588
- - If any files remain after the commit, amend the existing commit — do NOT create a follow-up commit
589
- - When staging files, always use explicit file names — NEVER use `git add -A` or `git add .`