@hassangameryt/freeflow 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (639) hide show
  1. package/.agents/plugins/marketplace.json +1 -1
  2. package/.claude-plugin/marketplace.json +2 -2
  3. package/{plugins/freeflow/.claude-plugin → .claude-plugin}/plugin.json +1 -1
  4. package/{plugins/freeflow/.codex-plugin → .codex-plugin}/plugin.json +1 -1
  5. package/README.md +19 -14
  6. package/assets/freeflow-plugin-icon.png +0 -0
  7. package/{plugins/freeflow/command-surface.json → command-surface.json} +10 -2
  8. package/evals/README.md +32 -0
  9. package/evals/fixtures/copy-conventions.md +31 -0
  10. package/evals/fixtures/output-router/README.md +12 -0
  11. package/evals/fixtures/output-router/failed-command-output.txt +9 -0
  12. package/evals/fixtures/output-router/large-router-manual.md +63 -0
  13. package/evals/fixtures/output-router/native-large-output.txt +40 -0
  14. package/evals/fixtures/output-router/noisy-test-output.txt +30 -0
  15. package/evals/fixtures/output-router/verification-output.txt +8 -0
  16. package/evals/fixtures/tiny-artifact-review-app/README.md +5 -0
  17. package/evals/fixtures/tiny-artifact-review-app/docs/billing-policy.md +10 -0
  18. package/evals/fixtures/tiny-artifact-review-app/docs/specs/billing-webhook-api-draft.md +21 -0
  19. package/evals/fixtures/tiny-artifact-review-app/docs/specs/failed-payment-grace-period.md +24 -0
  20. package/evals/fixtures/tiny-artifact-review-app/docs/specs/immediate-downgrade.md +17 -0
  21. package/evals/fixtures/tiny-artifact-review-app/tests/billing.test.md +8 -0
  22. package/evals/fixtures/tiny-commit-ambiguous-app/.freeflow-eval-setup.sh +15 -0
  23. package/evals/fixtures/tiny-commit-ambiguous-app/README.md +3 -0
  24. package/evals/fixtures/tiny-commit-ambiguous-app/src/billing.ts +5 -0
  25. package/evals/fixtures/tiny-commit-ambiguous-app/src/settings-page.ts +1 -0
  26. package/evals/fixtures/tiny-commit-ambiguous-app/tests/settings.test.md +5 -0
  27. package/evals/fixtures/tiny-commit-app/.freeflow-eval-setup.sh +14 -0
  28. package/evals/fixtures/tiny-commit-app/README.md +3 -0
  29. package/evals/fixtures/tiny-commit-app/docs/specs/settings-title.md +5 -0
  30. package/evals/fixtures/tiny-commit-app/src/billing.ts +5 -0
  31. package/evals/fixtures/tiny-commit-app/src/settings-page.ts +1 -0
  32. package/evals/fixtures/tiny-commit-app/tests/settings.test.md +5 -0
  33. package/evals/fixtures/tiny-commit-everything-app/.freeflow-eval-setup.sh +15 -0
  34. package/evals/fixtures/tiny-commit-everything-app/README.md +3 -0
  35. package/evals/fixtures/tiny-commit-everything-app/docs/specs/settings-title.md +5 -0
  36. package/evals/fixtures/tiny-commit-everything-app/src/billing.ts +5 -0
  37. package/evals/fixtures/tiny-commit-everything-app/src/settings-page.ts +1 -0
  38. package/evals/fixtures/tiny-commit-everything-app/tests/settings.test.md +5 -0
  39. package/evals/fixtures/tiny-commit-staged-app/.freeflow-eval-setup.sh +15 -0
  40. package/evals/fixtures/tiny-commit-staged-app/README.md +3 -0
  41. package/evals/fixtures/tiny-commit-staged-app/docs/specs/settings-title.md +5 -0
  42. package/evals/fixtures/tiny-commit-staged-app/src/billing.ts +5 -0
  43. package/evals/fixtures/tiny-commit-staged-app/src/settings-page.ts +1 -0
  44. package/evals/fixtures/tiny-commit-staged-app/tests/settings.test.md +5 -0
  45. package/evals/fixtures/tiny-commit-staged-mixed-app/.freeflow-eval-setup.sh +15 -0
  46. package/evals/fixtures/tiny-commit-staged-mixed-app/README.md +3 -0
  47. package/evals/fixtures/tiny-commit-staged-mixed-app/docs/billing-policy.md +3 -0
  48. package/evals/fixtures/tiny-commit-staged-mixed-app/docs/release-notes.md +3 -0
  49. package/evals/fixtures/tiny-commit-staged-mixed-app/src/billing.ts +5 -0
  50. package/evals/fixtures/tiny-dashboard-stale-app/README.md +11 -0
  51. package/evals/fixtures/tiny-dashboard-stale-app/src/api-client.ts +13 -0
  52. package/evals/fixtures/tiny-dashboard-stale-app/src/dashboard-data.ts +19 -0
  53. package/evals/fixtures/tiny-dashboard-stale-app/tests/dashboard-data.test.md +9 -0
  54. package/evals/fixtures/tiny-decision-destination-app/README.md +6 -0
  55. package/evals/fixtures/tiny-decision-destination-app/src/risk.ts +8 -0
  56. package/evals/fixtures/tiny-decision-destination-app/tests/risk.test.md +4 -0
  57. package/evals/fixtures/tiny-design-depth-app/README.md +15 -0
  58. package/evals/fixtures/tiny-design-depth-app/src/routes.ts +25 -0
  59. package/evals/fixtures/tiny-design-depth-app/src/sendEmail.ts +3 -0
  60. package/evals/fixtures/tiny-design-depth-app/src/sendSms.ts +3 -0
  61. package/evals/fixtures/tiny-design-depth-app/src/telemetry.ts +3 -0
  62. package/evals/fixtures/tiny-design-depth-app/tests/routes.test.md +12 -0
  63. package/evals/fixtures/tiny-eval-method-app/README.md +8 -0
  64. package/evals/fixtures/tiny-eval-method-app/evals/reports/review-pr-eval-result.md +5 -0
  65. package/evals/fixtures/tiny-eval-method-app/evals/reports/triage-question-failure.md +17 -0
  66. package/evals/fixtures/tiny-eval-method-app/evals/runs/review-pr-with-skill-output.diff +11 -0
  67. package/evals/fixtures/tiny-eval-method-app/evals/runs/review-pr-with-skill-output.md +3 -0
  68. package/evals/fixtures/tiny-eval-method-app/skills/review-pr/SKILL.md +10 -0
  69. package/evals/fixtures/tiny-eval-method-app/skills/triage-question/SKILL.md +10 -0
  70. package/evals/fixtures/tiny-execute-plan-app/README.md +5 -0
  71. package/evals/fixtures/tiny-execute-plan-app/checks/settings-and-billing-check.sh +5 -0
  72. package/evals/fixtures/tiny-execute-plan-app/docs/billing-policy.md +10 -0
  73. package/evals/fixtures/tiny-execute-plan-app/docs/plans/immediate-downgrade-plan.md +11 -0
  74. package/evals/fixtures/tiny-execute-plan-app/docs/plans/settings-title-plan.md +12 -0
  75. package/evals/fixtures/tiny-execute-plan-app/docs/plans/settings-title-with-bad-check.md +15 -0
  76. package/evals/fixtures/tiny-execute-plan-app/docs/plans/unverified-billing-plan.md +9 -0
  77. package/evals/fixtures/tiny-execute-plan-app/docs/specs/failed-payment-grace-period.md +9 -0
  78. package/evals/fixtures/tiny-execute-plan-app/docs/specs/settings-title.md +9 -0
  79. package/evals/fixtures/tiny-execute-plan-app/src/billing.ts +7 -0
  80. package/evals/fixtures/tiny-execute-plan-app/src/settings-page.ts +1 -0
  81. package/evals/fixtures/tiny-execute-plan-app/tests/billing.test.md +7 -0
  82. package/evals/fixtures/tiny-execute-plan-app/tests/settings.test.md +5 -0
  83. package/evals/fixtures/tiny-execute-review-loop-app/README.md +5 -0
  84. package/evals/fixtures/tiny-execute-review-loop-app/docs/billing-policy.md +9 -0
  85. package/evals/fixtures/tiny-execute-review-loop-app/docs/plans/settings-title-plan.md +12 -0
  86. package/evals/fixtures/tiny-execute-review-loop-app/docs/review/previous-agent-summary.md +15 -0
  87. package/evals/fixtures/tiny-execute-review-loop-app/docs/review/review-pass-1-non-pass.md +11 -0
  88. package/evals/fixtures/tiny-execute-review-loop-app/docs/specs/settings-title.md +9 -0
  89. package/evals/fixtures/tiny-execute-review-loop-app/src/billing.ts +7 -0
  90. package/evals/fixtures/tiny-execute-review-loop-app/src/settings-page.ts +1 -0
  91. package/evals/fixtures/tiny-execute-review-loop-app/tests/billing.test.md +7 -0
  92. package/evals/fixtures/tiny-execute-review-loop-app/tests/settings.test.md +5 -0
  93. package/evals/fixtures/tiny-flaky-session-app/README.md +10 -0
  94. package/evals/fixtures/tiny-flaky-session-app/src/session-timeout.ts +13 -0
  95. package/evals/fixtures/tiny-flaky-session-app/tests/session-timeout.test.md +8 -0
  96. package/evals/fixtures/tiny-handoff-app/README.md +5 -0
  97. package/evals/fixtures/tiny-handoff-app/docs/billing-policy.md +10 -0
  98. package/evals/fixtures/tiny-handoff-app/docs/handoffs/old-agent-handoff.md +8 -0
  99. package/evals/fixtures/tiny-handoff-app/docs/plans/billing-retry-plan.md +11 -0
  100. package/evals/fixtures/tiny-handoff-app/src/billing.ts +7 -0
  101. package/evals/fixtures/tiny-handoff-report-app/README.md +3 -0
  102. package/evals/fixtures/tiny-handoff-report-app/evals/runs/handoff-3/hof-003/with-skill-output.diff +1 -0
  103. package/evals/fixtures/tiny-handoff-report-app/evals/runs/handoff-3/hof-003/with-skill-output.md +1 -0
  104. package/evals/fixtures/tiny-handoff-report-app/evals/scores/hof-003-score.txt +4 -0
  105. package/evals/fixtures/tiny-plan-app/README.md +5 -0
  106. package/evals/fixtures/tiny-plan-app/docs/billing-policy.md +10 -0
  107. package/evals/fixtures/tiny-plan-app/docs/specs/failed-payment-grace-period.md +25 -0
  108. package/evals/fixtures/tiny-plan-app/src/billing.ts +17 -0
  109. package/evals/fixtures/tiny-plan-app/src/settings-page.ts +1 -0
  110. package/evals/fixtures/tiny-plan-app/tests/billing.test.md +8 -0
  111. package/evals/fixtures/tiny-plan-app/tests/settings.test.md +5 -0
  112. package/evals/fixtures/tiny-plan-strict-api-app/README.md +3 -0
  113. package/evals/fixtures/tiny-plan-strict-api-app/docs/billing-policy.md +5 -0
  114. package/evals/fixtures/tiny-plan-strict-api-app/docs/specs/billing-webhook-api.md +25 -0
  115. package/evals/fixtures/tiny-plan-strict-api-app/src/billing.ts +5 -0
  116. package/evals/fixtures/tiny-plan-strict-api-app/src/webhooks.ts +3 -0
  117. package/evals/fixtures/tiny-plan-strict-api-app/tests/billing-webhook.test.md +8 -0
  118. package/evals/fixtures/tiny-post-setup-invalid-config-app/.freeflow/config.json +3 -0
  119. package/evals/fixtures/tiny-post-setup-invalid-config-app/AGENTS.md +15 -0
  120. package/evals/fixtures/tiny-post-setup-invalid-config-app/README.md +16 -0
  121. package/evals/fixtures/tiny-post-setup-invalid-config-app/docs/auth-review.md +15 -0
  122. package/evals/fixtures/tiny-post-setup-invalid-config-app/docs/billing-policy.md +10 -0
  123. package/evals/fixtures/tiny-post-setup-invalid-config-app/docs/copy-conventions.md +15 -0
  124. package/evals/fixtures/tiny-post-setup-invalid-config-app/src/auth-middleware.ts +12 -0
  125. package/evals/fixtures/tiny-post-setup-invalid-config-app/src/billing.ts +20 -0
  126. package/evals/fixtures/tiny-post-setup-invalid-config-app/src/login-copy.ts +1 -0
  127. package/evals/fixtures/tiny-post-setup-invalid-config-app/src/settings-page.ts +1 -0
  128. package/evals/fixtures/tiny-post-setup-invalid-config-app/tests/auth-middleware.test.md +8 -0
  129. package/evals/fixtures/tiny-post-setup-invalid-config-app/tests/billing.test.md +8 -0
  130. package/evals/fixtures/tiny-post-setup-invalid-config-app/tests/copy.test.md +7 -0
  131. package/evals/fixtures/tiny-post-setup-missing-config-app/AGENTS.md +15 -0
  132. package/evals/fixtures/tiny-post-setup-missing-config-app/README.md +16 -0
  133. package/evals/fixtures/tiny-post-setup-missing-config-app/docs/auth-review.md +15 -0
  134. package/evals/fixtures/tiny-post-setup-missing-config-app/docs/billing-policy.md +10 -0
  135. package/evals/fixtures/tiny-post-setup-missing-config-app/docs/copy-conventions.md +15 -0
  136. package/evals/fixtures/tiny-post-setup-missing-config-app/src/auth-middleware.ts +12 -0
  137. package/evals/fixtures/tiny-post-setup-missing-config-app/src/billing.ts +20 -0
  138. package/evals/fixtures/tiny-post-setup-missing-config-app/src/login-copy.ts +1 -0
  139. package/evals/fixtures/tiny-post-setup-missing-config-app/src/settings-page.ts +1 -0
  140. package/evals/fixtures/tiny-post-setup-missing-config-app/tests/auth-middleware.test.md +8 -0
  141. package/evals/fixtures/tiny-post-setup-missing-config-app/tests/billing.test.md +8 -0
  142. package/evals/fixtures/tiny-post-setup-missing-config-app/tests/copy.test.md +7 -0
  143. package/evals/fixtures/tiny-post-setup-source-conflict-app/.freeflow/config.json +3 -0
  144. package/evals/fixtures/tiny-post-setup-source-conflict-app/AGENTS.md +15 -0
  145. package/evals/fixtures/tiny-post-setup-source-conflict-app/README.md +16 -0
  146. package/evals/fixtures/tiny-post-setup-source-conflict-app/docs/auth-review.md +15 -0
  147. package/evals/fixtures/tiny-post-setup-source-conflict-app/docs/billing-policy.md +10 -0
  148. package/evals/fixtures/tiny-post-setup-source-conflict-app/docs/copy-conventions.md +15 -0
  149. package/evals/fixtures/tiny-post-setup-source-conflict-app/src/auth-middleware.ts +12 -0
  150. package/evals/fixtures/tiny-post-setup-source-conflict-app/src/billing.ts +20 -0
  151. package/evals/fixtures/tiny-post-setup-source-conflict-app/src/login-copy.ts +1 -0
  152. package/evals/fixtures/tiny-post-setup-source-conflict-app/src/settings-page.ts +1 -0
  153. package/evals/fixtures/tiny-post-setup-source-conflict-app/tests/auth-middleware.test.md +8 -0
  154. package/evals/fixtures/tiny-post-setup-source-conflict-app/tests/billing.test.md +8 -0
  155. package/evals/fixtures/tiny-post-setup-source-conflict-app/tests/copy.test.md +7 -0
  156. package/evals/fixtures/tiny-report-performance-app/README.md +11 -0
  157. package/evals/fixtures/tiny-report-performance-app/docs/performance.md +10 -0
  158. package/evals/fixtures/tiny-report-performance-app/src/report-summary.ts +29 -0
  159. package/evals/fixtures/tiny-report-performance-app/tests/report-performance.test.md +8 -0
  160. package/evals/fixtures/tiny-review-request-app/README.md +3 -0
  161. package/evals/fixtures/tiny-review-request-app/docs/billing-policy.md +5 -0
  162. package/evals/fixtures/tiny-review-request-app/docs/plans/billing-webhook-api.md +19 -0
  163. package/evals/fixtures/tiny-review-request-app/docs/review/previous-agent-summary.md +20 -0
  164. package/evals/fixtures/tiny-review-request-app/docs/specs/billing-webhook-api.md +25 -0
  165. package/evals/fixtures/tiny-review-request-app/src/billing.ts +11 -0
  166. package/evals/fixtures/tiny-review-request-app/src/webhooks.ts +19 -0
  167. package/evals/fixtures/tiny-review-request-app/tests/billing-webhook.test.md +8 -0
  168. package/evals/fixtures/tiny-review-work-app/README.md +5 -0
  169. package/evals/fixtures/tiny-review-work-app/docs/billing-policy.md +9 -0
  170. package/evals/fixtures/tiny-review-work-app/docs/plans/settings-title-plan.md +12 -0
  171. package/evals/fixtures/tiny-review-work-app/docs/review/previous-agent-summary.md +15 -0
  172. package/evals/fixtures/tiny-review-work-app/docs/specs/settings-title.md +9 -0
  173. package/evals/fixtures/tiny-review-work-app/src/billing.ts +7 -0
  174. package/evals/fixtures/tiny-review-work-app/src/settings-page.ts +1 -0
  175. package/evals/fixtures/tiny-review-work-app/tests/billing.test.md +7 -0
  176. package/evals/fixtures/tiny-review-work-app/tests/settings.test.md +5 -0
  177. package/evals/fixtures/tiny-saas-app/README.md +16 -0
  178. package/evals/fixtures/tiny-saas-app/docs/auth-review.md +15 -0
  179. package/evals/fixtures/tiny-saas-app/docs/billing-policy.md +10 -0
  180. package/evals/fixtures/tiny-saas-app/docs/copy-conventions.md +15 -0
  181. package/evals/fixtures/tiny-saas-app/docs/specs/settings-title.md +13 -0
  182. package/evals/fixtures/tiny-saas-app/src/auth-middleware.ts +12 -0
  183. package/evals/fixtures/tiny-saas-app/src/billing.ts +20 -0
  184. package/evals/fixtures/tiny-saas-app/src/login-copy.ts +1 -0
  185. package/evals/fixtures/tiny-saas-app/src/settings-page.ts +1 -0
  186. package/evals/fixtures/tiny-saas-app/tests/auth-middleware.test.md +8 -0
  187. package/evals/fixtures/tiny-saas-app/tests/billing.test.md +8 -0
  188. package/evals/fixtures/tiny-saas-app/tests/copy.test.md +7 -0
  189. package/evals/fixtures/tiny-setup-agents-app/AGENTS.md +6 -0
  190. package/evals/fixtures/tiny-setup-both-app/AGENTS.md +5 -0
  191. package/evals/fixtures/tiny-setup-both-app/CLAUDE.md +5 -0
  192. package/evals/fixtures/tiny-setup-claude-app/CLAUDE.md +6 -0
  193. package/evals/fixtures/tiny-setup-codex-rules-app/.codex/rules/shell.rules +5 -0
  194. package/evals/fixtures/tiny-setup-codex-rules-app/AGENTS.md +6 -0
  195. package/evals/fixtures/tiny-setup-conflict-app/AGENTS.md +6 -0
  196. package/evals/fixtures/tiny-setup-existing-block-app/AGENTS.md +14 -0
  197. package/evals/fixtures/tiny-setup-four-rules-app/CLAUDE.md +6 -0
  198. package/evals/fixtures/tiny-skill-dev-app/README.md +10 -0
  199. package/evals/fixtures/tiny-skill-dev-app/evals/prompts/review-pr-001.txt +8 -0
  200. package/evals/fixtures/tiny-skill-dev-app/evals/reports/review-pr-failure.md +17 -0
  201. package/evals/fixtures/tiny-skill-dev-app/skills/review-pr/SKILL.md +13 -0
  202. package/evals/fixtures/tiny-team-app/README.md +5 -0
  203. package/evals/fixtures/tiny-team-app/docs/product.md +6 -0
  204. package/evals/fixtures/tiny-team-app/src/teams.ts +9 -0
  205. package/evals/fixtures/tiny-team-app/src/users.ts +5 -0
  206. package/evals/fixtures/tiny-team-app/tests/teams.test.md +7 -0
  207. package/evals/fixtures/tiny-verify-app/README.md +5 -0
  208. package/evals/fixtures/tiny-verify-app/src/settings-nav.ts +1 -0
  209. package/evals/fixtures/tiny-verify-app/src/settings-page.ts +1 -0
  210. package/evals/fixtures/tiny-verify-app/tests/settings.test.md +7 -0
  211. package/evals/prompts/aon-001.txt +2 -0
  212. package/evals/prompts/byp-001.txt +2 -0
  213. package/evals/prompts/byp-002.txt +2 -0
  214. package/evals/prompts/cap-001.txt +3 -0
  215. package/evals/prompts/cap-002.txt +3 -0
  216. package/evals/prompts/cmd-001.txt +3 -0
  217. package/evals/prompts/cmd-002.txt +3 -0
  218. package/evals/prompts/cmd-003.txt +6 -0
  219. package/evals/prompts/cmd-004.txt +5 -0
  220. package/evals/prompts/cmd-005.txt +5 -0
  221. package/evals/prompts/cmd-006.txt +5 -0
  222. package/evals/prompts/cmd-007.txt +5 -0
  223. package/evals/prompts/cmd-008.txt +5 -0
  224. package/evals/prompts/cmd-009.txt +8 -0
  225. package/evals/prompts/cmd-010.txt +5 -0
  226. package/evals/prompts/cmd-011.txt +5 -0
  227. package/evals/prompts/cmd-012.txt +5 -0
  228. package/evals/prompts/cmd-013.txt +5 -0
  229. package/evals/prompts/cmd-014.txt +7 -0
  230. package/evals/prompts/cmd-015.txt +7 -0
  231. package/evals/prompts/cmd-016.txt +5 -0
  232. package/evals/prompts/cmt-001.txt +1 -0
  233. package/evals/prompts/cmt-002.txt +1 -0
  234. package/evals/prompts/cmt-003.txt +1 -0
  235. package/evals/prompts/cmt-004.txt +1 -0
  236. package/evals/prompts/cmt-005.txt +1 -0
  237. package/evals/prompts/dfd-001.txt +3 -0
  238. package/evals/prompts/dia-001.txt +3 -0
  239. package/evals/prompts/dia-002.txt +3 -0
  240. package/evals/prompts/dia-003.txt +3 -0
  241. package/evals/prompts/dis-001.txt +5 -0
  242. package/evals/prompts/dis-002.txt +5 -0
  243. package/evals/prompts/esk-001.txt +5 -0
  244. package/evals/prompts/esk-002.txt +5 -0
  245. package/evals/prompts/esk-003.txt +5 -0
  246. package/evals/prompts/grc-001.txt +3 -0
  247. package/evals/prompts/hof-001.txt +3 -0
  248. package/evals/prompts/hof-002.txt +1 -0
  249. package/evals/prompts/hof-003.txt +1 -0
  250. package/evals/prompts/hof-004.txt +1 -0
  251. package/evals/prompts/hof-005.txt +1 -0
  252. package/evals/prompts/ivg-001.txt +1 -0
  253. package/evals/prompts/ivg-002.txt +11 -0
  254. package/evals/prompts/ivg-003.txt +1 -0
  255. package/evals/prompts/ivg-004.txt +1 -0
  256. package/evals/prompts/mode-001.txt +3 -0
  257. package/evals/prompts/mode-002.txt +1 -0
  258. package/evals/prompts/mode-003.txt +3 -0
  259. package/evals/prompts/mode-004.txt +3 -0
  260. package/evals/prompts/mode-005.txt +3 -0
  261. package/evals/prompts/mode-006.txt +3 -0
  262. package/evals/prompts/mode-007.txt +3 -0
  263. package/evals/prompts/otr-001.txt +3 -0
  264. package/evals/prompts/otr-002.txt +3 -0
  265. package/evals/prompts/rar-001.txt +5 -0
  266. package/evals/prompts/rar-002.txt +3 -0
  267. package/evals/prompts/rar-003.txt +6 -0
  268. package/evals/prompts/rar-004.txt +15 -0
  269. package/evals/prompts/rar-005.txt +10 -0
  270. package/evals/prompts/rbr-001.txt +3 -0
  271. package/evals/prompts/rbr-002.txt +3 -0
  272. package/evals/prompts/rbr-003.txt +7 -0
  273. package/evals/prompts/rev-001.txt +3 -0
  274. package/evals/prompts/rev-002.txt +5 -0
  275. package/evals/prompts/rev-003.txt +6 -0
  276. package/evals/prompts/rev-004.txt +1 -0
  277. package/evals/prompts/rev-005.txt +15 -0
  278. package/evals/prompts/rev-006.txt +5 -0
  279. package/evals/prompts/stp-001.txt +1 -0
  280. package/evals/prompts/stp-002.txt +1 -0
  281. package/evals/prompts/stp-003.txt +1 -0
  282. package/evals/prompts/stp-004.txt +1 -0
  283. package/evals/prompts/stp-005.txt +1 -0
  284. package/evals/prompts/stp-006.txt +1 -0
  285. package/evals/prompts/stp-007.txt +1 -0
  286. package/evals/prompts/stp-008.txt +1 -0
  287. package/evals/prompts/stp-009.txt +1 -0
  288. package/evals/prompts/stp-010.txt +1 -0
  289. package/evals/prompts/stp-011.txt +1 -0
  290. package/evals/prompts/vfy-003.txt +1 -0
  291. package/evals/prompts/wpl-001.txt +3 -0
  292. package/evals/prompts/wpl-002.txt +5 -0
  293. package/evals/prompts/wpl-003.txt +3 -0
  294. package/evals/prompts/wpl-004.txt +5 -0
  295. package/evals/prompts/wpl-005.txt +1 -0
  296. package/evals/prompts/wrc-001.txt +10 -0
  297. package/evals/prompts/wrc-002.txt +3 -0
  298. package/evals/prompts/wsk-001.txt +6 -0
  299. package/evals/prompts/wsp-001.txt +5 -0
  300. package/evals/prompts/wsp-002.txt +15 -0
  301. package/evals/prompts/wsp-003.txt +3 -0
  302. package/evals/prompts/wsp-004.txt +15 -0
  303. package/evals/prompts/wsp-005.txt +5 -0
  304. package/evals/prompts/wsp-006.txt +12 -0
  305. package/evals/prompts/wsp-007.txt +9 -0
  306. package/evals/prompts/wsp-008.txt +13 -0
  307. package/evals/prompts/xpl-001.txt +1 -0
  308. package/evals/prompts/xpl-002.txt +3 -0
  309. package/evals/prompts/xpl-003.txt +3 -0
  310. package/evals/prompts/xpl-004.txt +3 -0
  311. package/evals/prompts/xpl-005.txt +5 -0
  312. package/evals/prompts/xpl-006.txt +3 -0
  313. package/evals/registries/adversarial-evals.json +39 -0
  314. package/evals/registries/fixture-evals.json +2513 -0
  315. package/evals/registries/handoff-evals.json +74 -0
  316. package/evals/registries/legacy-evals.json +147 -0
  317. package/evals/registries/skill-evidence.json +193 -0
  318. package/evals/registries/verify-work-evals.json +46 -0
  319. package/evals/reports/acceptance/v0.1-acceptance-report.md +130 -0
  320. package/evals/reports/by-command-surface/command-surface-1-report.md +45 -0
  321. package/evals/reports/by-command-surface/command-surface-10-report.md +76 -0
  322. package/evals/reports/by-command-surface/command-surface-11-report.md +77 -0
  323. package/evals/reports/by-command-surface/command-surface-12-report.md +91 -0
  324. package/evals/reports/by-command-surface/command-surface-13-report.md +64 -0
  325. package/evals/reports/by-command-surface/command-surface-14-report.md +66 -0
  326. package/evals/reports/by-command-surface/command-surface-15-report.md +124 -0
  327. package/evals/reports/by-command-surface/command-surface-16-report.md +39 -0
  328. package/evals/reports/by-command-surface/command-surface-2-report.md +80 -0
  329. package/evals/reports/by-command-surface/command-surface-3-report.md +86 -0
  330. package/evals/reports/by-command-surface/command-surface-4-report.md +76 -0
  331. package/evals/reports/by-command-surface/command-surface-5-report.md +80 -0
  332. package/evals/reports/by-command-surface/command-surface-6-report.md +74 -0
  333. package/evals/reports/by-command-surface/command-surface-7-report.md +84 -0
  334. package/evals/reports/by-command-surface/command-surface-8-report.md +79 -0
  335. package/evals/reports/by-command-surface/command-surface-9-report.md +79 -0
  336. package/evals/reports/by-command-surface/command-surface-matrix.md +91 -0
  337. package/evals/reports/by-skill/bypass-1-report.md +124 -0
  338. package/evals/reports/by-skill/capture-decisions-1-report.md +99 -0
  339. package/evals/reports/by-skill/capture-decisions-2-report.md +102 -0
  340. package/evals/reports/by-skill/commit-work-1-report.md +165 -0
  341. package/evals/reports/by-skill/commit-work-2-report.md +109 -0
  342. package/evals/reports/by-skill/design-for-depth-1-report.md +95 -0
  343. package/evals/reports/by-skill/diagnose-failure-1-report.md +91 -0
  344. package/evals/reports/by-skill/diagnose-failure-2-report.md +94 -0
  345. package/evals/reports/by-skill/discover-1-report.md +118 -0
  346. package/evals/reports/by-skill/evaluate-skill-2-report.md +71 -0
  347. package/evals/reports/by-skill/execute-plan-1-report.md +103 -0
  348. package/evals/reports/by-skill/execute-plan-2-report.md +112 -0
  349. package/evals/reports/by-skill/execute-plan-3-report.md +87 -0
  350. package/evals/reports/by-skill/grill-context-1-report.md +103 -0
  351. package/evals/reports/by-skill/handoff-1-report.md +123 -0
  352. package/evals/reports/by-skill/handoff-2-report.md +105 -0
  353. package/evals/reports/by-skill/handoff-3-report.md +100 -0
  354. package/evals/reports/by-skill/handoff-7-report.md +77 -0
  355. package/evals/reports/by-skill/interview-gate-1-report.md +63 -0
  356. package/evals/reports/by-skill/interview-gate-2-report.md +105 -0
  357. package/evals/reports/by-skill/mode-contract-1-report.md +74 -0
  358. package/evals/reports/by-skill/mode-contract-2-report.md +87 -0
  359. package/evals/reports/by-skill/mode-contract-3-report.md +65 -0
  360. package/evals/reports/by-skill/mode-contract-4-report.md +71 -0
  361. package/evals/reports/by-skill/mode-contract-5-report.md +70 -0
  362. package/evals/reports/by-skill/output-router-1-report.md +76 -0
  363. package/evals/reports/by-skill/output-router-2-report.md +65 -0
  364. package/evals/reports/by-skill/research-1-report.md +144 -0
  365. package/evals/reports/by-skill/research-brief-1-report.md +94 -0
  366. package/evals/reports/by-skill/research-brief-2-report.md +75 -0
  367. package/evals/reports/by-skill/review-artifact-1-report.md +91 -0
  368. package/evals/reports/by-skill/review-artifact-2-report.md +79 -0
  369. package/evals/reports/by-skill/review-artifact-3-report.md +120 -0
  370. package/evals/reports/by-skill/review-artifact-4-report.md +89 -0
  371. package/evals/reports/by-skill/review-artifact-5-report.md +66 -0
  372. package/evals/reports/by-skill/review-work-1-report.md +85 -0
  373. package/evals/reports/by-skill/review-work-2-report.md +87 -0
  374. package/evals/reports/by-skill/review-work-3-report.md +104 -0
  375. package/evals/reports/by-skill/review-work-4-report.md +108 -0
  376. package/evals/reports/by-skill/review-work-5-report.md +73 -0
  377. package/evals/reports/by-skill/review-work-6-report.md +66 -0
  378. package/evals/reports/by-skill/setup-freeflow-1-report.md +199 -0
  379. package/evals/reports/by-skill/setup-freeflow-2-report.md +105 -0
  380. package/evals/reports/by-skill/setup-freeflow-3-report.md +105 -0
  381. package/evals/reports/by-skill/setup-freeflow-4-report.md +88 -0
  382. package/evals/reports/by-skill/setup-freeflow-5-report.md +115 -0
  383. package/evals/reports/by-skill/skill-authoring-1-report.md +81 -0
  384. package/evals/reports/by-skill/verify-work-1-report.md +111 -0
  385. package/evals/reports/by-skill/verify-work-2-report.md +120 -0
  386. package/evals/reports/by-skill/workflow-1-report.md +65 -0
  387. package/evals/reports/by-skill/write-plan-1-report.md +123 -0
  388. package/evals/reports/by-skill/write-plan-2-report.md +98 -0
  389. package/evals/reports/by-skill/write-plan-3-report.md +110 -0
  390. package/evals/reports/by-skill/write-spec-1-report.md +88 -0
  391. package/evals/reports/by-skill/write-spec-2-report.md +89 -0
  392. package/evals/reports/by-skill/write-spec-3-report.md +90 -0
  393. package/evals/reports/by-skill/write-spec-4-report.md +167 -0
  394. package/evals/reports/harness/claude-harness-1-report.md +103 -0
  395. package/evals/reports/harness/eval-harness-1-report.md +91 -0
  396. package/evals/reports/iterations/iteration-1-report.md +71 -0
  397. package/evals/reports/iterations/iteration-2-report.md +78 -0
  398. package/evals/reports/iterations/iteration-3-report.md +118 -0
  399. package/evals/reports/iterations/iteration-4-report.md +131 -0
  400. package/evals/reports/iterations/iteration-5-report.md +149 -0
  401. package/evals/reports/iterations/iteration-6-report.md +136 -0
  402. package/evals/reports/runtime/always-on-runtime-1-report.md +107 -0
  403. package/evals/reports/runtime/context-mode-normalized-benchmark-1-report.md +52 -0
  404. package/evals/reports/runtime/context-mode-real-deep-baseline-1-report.md +410 -0
  405. package/evals/reports/runtime/context-mode-real-deep-final-slice-11-report.md +203 -0
  406. package/evals/reports/runtime/context-mode-real-deep-final-slice-11-review.md +51 -0
  407. package/evals/reports/runtime/context-saving-native-tools-baseline-1-report.md +99 -0
  408. package/evals/reports/runtime/eryx-python-compatibility-reprobe-1-report.md +166 -0
  409. package/evals/reports/runtime/eryx-python-proof-spike-1-report.md +96 -0
  410. package/evals/reports/runtime/eryx-python-proof-spike-2-report.md +151 -0
  411. package/evals/reports/runtime/eryx-python-script-derive-execution-1-report.md +233 -0
  412. package/evals/reports/runtime/jq-script-derive-execution-1-report.md +215 -0
  413. package/evals/reports/runtime/jq-wasm-proof-spike-1-report.md +67 -0
  414. package/evals/reports/runtime/output-router-benchmark-1-report.md +81 -0
  415. package/evals/reports/runtime/output-router-capture-derive-provider-eval-1-report.md +35 -0
  416. package/evals/reports/runtime/output-router-codex-large-index-sqlite-adhoc-report.md +150 -0
  417. package/evals/reports/runtime/output-router-codex-qa-benchmark-1-report.md +46 -0
  418. package/evals/reports/runtime/output-router-command-benchmark-1-report.md +62 -0
  419. package/evals/reports/runtime/output-router-index-benchmark-1-report.md +64 -0
  420. package/evals/reports/runtime/output-router-regression-1-report.md +81 -0
  421. package/evals/reports/runtime/output-router-transform-eval-1-report.md +28 -0
  422. package/evals/reports/runtime/pi-observed-routing-eval-1-report.md +44 -0
  423. package/evals/reports/runtime/quickjs-script-derive-execution-1-report.md +159 -0
  424. package/evals/reports/runtime/quickjs-wasi-proof-spike-1-report.md +55 -0
  425. package/evals/reports/runtime/render-format-row-protocol-1-report.md +58 -0
  426. package/evals/reports/runtime/script-sandbox-adapter-selection-review-1-report.md +84 -0
  427. package/evals/reports/runtime/script-sandbox-probe-resource-hardening-1-report.md +51 -0
  428. package/evals/reports/runtime/storage-policy-benchmark-1-report.md +176 -0
  429. package/evals/reports/runtime/vault-index-storage-spike-1-report.md +39 -0
  430. package/evals/reports/runtime/workflow-context-hook-1-report.md +82 -0
  431. package/evals/runbooks/adversarial-eval-runbook.md +28 -0
  432. package/evals/runbooks/fixture-eval-runbook.md +137 -0
  433. package/evals/runbooks/handoff-eval-runbook.md +22 -0
  434. package/evals/runbooks/verify-work-eval-runbook.md +27 -0
  435. package/evals/scripts/audit-command-surface.sh +160 -0
  436. package/evals/scripts/check-activation-contract.sh +121 -0
  437. package/evals/scripts/check-runtime-context-hook.sh +183 -0
  438. package/evals/scripts/grade-fixture-eval.sh +446 -0
  439. package/evals/scripts/run-claude-fixture-eval.sh +26 -0
  440. package/evals/scripts/run-codex-fixture-eval.sh +26 -0
  441. package/evals/scripts/run-eryx-python-proof-spike.js +559 -0
  442. package/evals/scripts/run-fixture-eval-by-id.sh +23 -0
  443. package/evals/scripts/run-fixture-eval.sh +464 -0
  444. package/evals/scripts/run-jq-wasm-proof-spike.js +299 -0
  445. package/evals/scripts/run-output-router-transform-eval.js +115 -0
  446. package/evals/scripts/run-pi-observed-routing-eval.js +478 -0
  447. package/evals/scripts/run-quickjs-wasi-proof-spike.js +339 -0
  448. package/evals/scripts/skill-evidence.sh +316 -0
  449. package/evals/scripts/validate-release-metadata.sh +486 -0
  450. package/evals/suites/v0.1-acceptance-suite.md +131 -0
  451. package/{plugins/freeflow/hooks → hooks}/freeflow-runtime-context.mjs +46 -12
  452. package/package.json +39 -19
  453. package/pi-extension/dist/host-producer-identification.js +186 -0
  454. package/pi-extension/dist/index.js +85 -0
  455. package/pi-extension/dist/mcp-config.js +30 -0
  456. package/pi-extension/dist/native-safety-net.js +209 -0
  457. package/pi-extension/dist/observed-tool-routing.js +114 -0
  458. package/pi-extension/dist/renderers.js +835 -0
  459. package/pi-extension/dist/router-tools.js +438 -0
  460. package/pi-extension/dist/runtime-context.js +288 -0
  461. package/pi-extension/dist/schemas.js +254 -0
  462. package/pi-extension/dist/status.js +449 -0
  463. package/pi-extension/dist/utils.js +467 -0
  464. package/pi-extension/src/host-producer-identification.ts +226 -0
  465. package/pi-extension/src/index.ts +121 -0
  466. package/pi-extension/src/mcp-config.ts +32 -0
  467. package/pi-extension/src/native-safety-net.ts +252 -0
  468. package/pi-extension/src/observed-tool-routing.ts +126 -0
  469. package/pi-extension/src/renderers.ts +917 -0
  470. package/pi-extension/src/router-tools.ts +478 -0
  471. package/pi-extension/src/runtime-context.ts +347 -0
  472. package/pi-extension/src/schemas.ts +259 -0
  473. package/pi-extension/src/status.ts +505 -0
  474. package/pi-extension/src/utils.ts +492 -0
  475. package/pi-extension/tsconfig.json +16 -0
  476. package/{plugins/freeflow/docs → plugin-docs}/README.md +3 -3
  477. package/plugin-docs/adr/0002-evals-before-hooks.md +17 -0
  478. package/{plugins/freeflow/docs → plugin-docs}/adr/0003-release-boundary.md +2 -2
  479. package/plugin-docs/adr/0004-discover-replaces-shallow-discovery-skills.md +26 -0
  480. package/plugin-docs/adr/README.md +10 -0
  481. package/plugin-docs/architecture.md +89 -0
  482. package/plugin-docs/output-router.md +396 -0
  483. package/plugin-docs/release-evidence.md +77 -0
  484. package/{plugins/freeflow/docs → plugin-docs}/skills.md +3 -2
  485. package/{plugins/freeflow/docs → plugin-docs}/workflow.md +4 -4
  486. package/{plugins/freeflow/router/dist → router/dist/benchmarks}/benchmark-harness.js +1 -1
  487. package/{plugins/freeflow/router/dist → router/dist/benchmarks}/benchmarks.js +14 -14
  488. package/{plugins/freeflow/router/dist → router/dist/benchmarks}/codex-qa-benchmarks.js +6 -6
  489. package/{plugins/freeflow/router/dist → router/dist/benchmarks}/command-benchmarks.d.ts +1 -1
  490. package/{plugins/freeflow/router/dist → router/dist/benchmarks}/command-benchmarks.js +11 -10
  491. package/router/dist/benchmarks/context-mode-normalized-benchmarks.d.ts +74 -0
  492. package/router/dist/benchmarks/context-mode-normalized-benchmarks.js +707 -0
  493. package/router/dist/benchmarks/context-mode-real-deep-benchmark.d.ts +124 -0
  494. package/router/dist/benchmarks/context-mode-real-deep-benchmark.js +1295 -0
  495. package/router/dist/benchmarks/context-saving-baseline.d.ts +54 -0
  496. package/router/dist/benchmarks/context-saving-baseline.js +439 -0
  497. package/{plugins/freeflow/router/dist → router/dist/benchmarks}/index-benchmarks.d.ts +16 -2
  498. package/{plugins/freeflow/router/dist → router/dist/benchmarks}/index-benchmarks.js +330 -26
  499. package/router/dist/benchmarks/storage-policy-benchmarks.d.ts +90 -0
  500. package/router/dist/benchmarks/storage-policy-benchmarks.js +538 -0
  501. package/router/dist/benchmarks/vault-index-benchmarks.d.ts +47 -0
  502. package/router/dist/benchmarks/vault-index-benchmarks.js +257 -0
  503. package/router/dist/config/config.d.ts +96 -0
  504. package/router/dist/config/config.js +453 -0
  505. package/{plugins/freeflow/router/dist → router/dist/config}/schema.js +248 -2
  506. package/router/dist/config/types.d.ts +521 -0
  507. package/router/dist/config/types.js +30 -0
  508. package/{plugins/freeflow/router/dist → router/dist/evidence}/bounded-evidence.d.ts +1 -1
  509. package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence-range-selector.js +65 -14
  510. package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence-search.js +18 -2
  511. package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence.d.ts +1 -1
  512. package/router/dist/evidence/failure-contracts.d.ts +27 -0
  513. package/router/dist/evidence/failure-contracts.js +160 -0
  514. package/router/dist/index.d.ts +30 -0
  515. package/router/dist/index.js +32 -0
  516. package/router/dist/processing/engine.d.ts +108 -0
  517. package/router/dist/processing/engine.js +435 -0
  518. package/router/dist/processing/reducers.d.ts +266 -0
  519. package/router/dist/processing/reducers.js +1495 -0
  520. package/router/dist/processing/renderers.d.ts +25 -0
  521. package/router/dist/processing/renderers.js +186 -0
  522. package/router/dist/processing/scripts.d.ts +78 -0
  523. package/router/dist/processing/scripts.js +333 -0
  524. package/router/dist/routing/observed-reducers.d.ts +35 -0
  525. package/router/dist/routing/observed-reducers.js +647 -0
  526. package/router/dist/routing/observed-routing.d.ts +17 -0
  527. package/router/dist/routing/observed-routing.js +377 -0
  528. package/{plugins/freeflow/router/dist → router/dist/routing}/parsers.d.ts +1 -1
  529. package/{plugins/freeflow/router/dist → router/dist/routing}/parsers.js +1 -1
  530. package/router/dist/routing/run-filters.d.ts +56 -0
  531. package/router/dist/routing/run-filters.js +230 -0
  532. package/router/dist/routing/run-reducers.d.ts +30 -0
  533. package/router/dist/routing/run-reducers.js +110 -0
  534. package/router/dist/sandbox/adapter-roots.d.ts +38 -0
  535. package/router/dist/sandbox/adapter-roots.js +64 -0
  536. package/router/dist/sandbox/eryx-python-adapter.d.ts +9 -0
  537. package/router/dist/sandbox/eryx-python-adapter.js +797 -0
  538. package/router/dist/sandbox/jq-wasm-adapter.d.ts +9 -0
  539. package/router/dist/sandbox/jq-wasm-adapter.js +421 -0
  540. package/router/dist/sandbox/quickjs-wasi-adapter.d.ts +9 -0
  541. package/router/dist/sandbox/quickjs-wasi-adapter.js +381 -0
  542. package/router/dist/sandbox/script-sandbox.d.ts +113 -0
  543. package/router/dist/sandbox/script-sandbox.js +303 -0
  544. package/router/dist/setup/script-transform-adapters.d.ts +28 -0
  545. package/router/dist/setup/script-transform-adapters.js +259 -0
  546. package/router/dist/tools/batch.d.ts +22 -0
  547. package/router/dist/tools/batch.js +509 -0
  548. package/router/dist/tools/run.d.ts +50 -0
  549. package/router/dist/tools/run.js +1219 -0
  550. package/router/dist/tools/search.d.ts +44 -0
  551. package/{plugins/freeflow/router/dist/retrieve.js → router/dist/tools/search.js} +395 -45
  552. package/router/dist/transform/engine.d.ts +143 -0
  553. package/router/dist/transform/engine.js +1955 -0
  554. package/router/dist/vault/vault-index.d.ts +106 -0
  555. package/router/dist/vault/vault-index.js +411 -0
  556. package/{plugins/freeflow/router/dist → router/dist/vault}/vault.d.ts +24 -1
  557. package/{plugins/freeflow/router/dist → router/dist/vault}/vault.js +152 -1
  558. package/skills/design-for-depth/SKILL.md +90 -0
  559. package/skills/design-for-depth/references/design-pressure-signals.md +265 -0
  560. package/skills/design-for-depth/references/software-design-philosophy.md +219 -0
  561. package/{plugins/freeflow/skills → skills}/diagnose-failure/SKILL.md +6 -1
  562. package/{plugins/freeflow/skills/research → skills/discover}/ARTIFACT-DESTINATIONS.md +4 -4
  563. package/{plugins/freeflow/skills/research → skills/discover}/CHECKPOINTS.md +4 -4
  564. package/skills/discover/SKILL.md +173 -0
  565. package/{plugins/freeflow/skills → skills}/execute-plan/SKILL.md +5 -4
  566. package/{plugins/freeflow/skills → skills}/execute-plan/references/execution-map.md +2 -2
  567. package/{plugins/freeflow/skills → skills}/mode-contract/SKILL.md +9 -4
  568. package/skills/output-router/SKILL.md +202 -0
  569. package/skills/output-router/references/safety-policy.md +40 -0
  570. package/{plugins/freeflow/skills → skills}/review-artifact/SKILL.md +5 -2
  571. package/{plugins/freeflow/skills → skills}/review-artifact/references/reviewer-prompt.md +2 -1
  572. package/{plugins/freeflow/skills → skills}/review-work/SKILL.md +6 -1
  573. package/{plugins/freeflow/skills → skills}/setup-freeflow/SKILL.md +21 -9
  574. package/{plugins/freeflow/skills → skills}/setup-freeflow/references/activation-contract.md +11 -10
  575. package/{plugins/freeflow/skills → skills}/setup-freeflow/references/host-setup.md +3 -3
  576. package/skills/setup-freeflow/references/output-router-setup.md +102 -0
  577. package/{plugins/freeflow/skills → skills}/verify-work/SKILL.md +3 -1
  578. package/{plugins/freeflow/skills → skills}/workflow/SKILL.md +16 -14
  579. package/{plugins/freeflow/skills → skills}/workflow/references/workflow-map.md +16 -14
  580. package/{plugins/freeflow/skills → skills}/write-plan/SKILL.md +9 -1
  581. package/{plugins/freeflow/skills → skills}/write-spec/SKILL.md +9 -6
  582. package/plugins/freeflow/docs/adr/0002-evals-before-hooks.md +0 -17
  583. package/plugins/freeflow/docs/adr/0004-research-replaces-shallow-discovery-skills.md +0 -26
  584. package/plugins/freeflow/docs/adr/README.md +0 -8
  585. package/plugins/freeflow/docs/architecture.md +0 -86
  586. package/plugins/freeflow/docs/output-router.md +0 -212
  587. package/plugins/freeflow/docs/release-evidence.md +0 -69
  588. package/plugins/freeflow/pi-extension/index.js +0 -1176
  589. package/plugins/freeflow/router/dist/config.d.ts +0 -22
  590. package/plugins/freeflow/router/dist/config.js +0 -114
  591. package/plugins/freeflow/router/dist/experimental-local-index.d.ts +0 -1
  592. package/plugins/freeflow/router/dist/experimental-local-index.js +0 -1
  593. package/plugins/freeflow/router/dist/index.d.ts +0 -12
  594. package/plugins/freeflow/router/dist/index.js +0 -12
  595. package/plugins/freeflow/router/dist/retrieve.d.ts +0 -33
  596. package/plugins/freeflow/router/dist/run.d.ts +0 -26
  597. package/plugins/freeflow/router/dist/run.js +0 -356
  598. package/plugins/freeflow/router/dist/types.d.ts +0 -234
  599. package/plugins/freeflow/router/dist/types.js +0 -9
  600. package/plugins/freeflow/skills/output-router/SKILL.md +0 -69
  601. package/plugins/freeflow/skills/output-router/references/safety-policy.md +0 -33
  602. package/plugins/freeflow/skills/research/LANGUAGE.md +0 -61
  603. package/plugins/freeflow/skills/research/SKILL.md +0 -128
  604. package/plugins/freeflow/skills/setup-freeflow/references/output-router-setup.md +0 -52
  605. /package/{plugins/freeflow/assets → assets}/freeflow-plugin-icon-transparent.png +0 -0
  606. /package/{plugins/freeflow/hooks → hooks}/hooks.json +0 -0
  607. /package/{plugins/freeflow/docs → plugin-docs}/adr/0001-three-modes.md +0 -0
  608. /package/{plugins/freeflow/router/dist → router/dist/benchmarks}/benchmark-harness.d.ts +0 -0
  609. /package/{plugins/freeflow/router/dist → router/dist/benchmarks}/benchmarks.d.ts +0 -0
  610. /package/{plugins/freeflow/router/dist → router/dist/benchmarks}/codex-qa-benchmarks.d.ts +0 -0
  611. /package/{plugins/freeflow/router/dist → router/dist/config}/router-contract.d.ts +0 -0
  612. /package/{plugins/freeflow/router/dist → router/dist/config}/router-contract.js +0 -0
  613. /package/{plugins/freeflow/router/dist → router/dist/config}/schema.d.ts +0 -0
  614. /package/{plugins/freeflow/router/dist → router/dist/evidence}/bounded-evidence.js +0 -0
  615. /package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence-range-selector.d.ts +0 -0
  616. /package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence-search.d.ts +0 -0
  617. /package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence.js +0 -0
  618. /package/{plugins/freeflow/router/dist → router/dist/evidence}/line-ranges.d.ts +0 -0
  619. /package/{plugins/freeflow/router/dist → router/dist/evidence}/line-ranges.js +0 -0
  620. /package/{plugins/freeflow/router → router}/dist/experiments/local-index.d.ts +0 -0
  621. /package/{plugins/freeflow/router → router}/dist/experiments/local-index.js +0 -0
  622. /package/{plugins/freeflow/router/dist → router/dist/repo}/repo-traversal.d.ts +0 -0
  623. /package/{plugins/freeflow/router/dist → router/dist/repo}/repo-traversal.js +0 -0
  624. /package/{plugins/freeflow/skills → skills}/bypass/SKILL.md +0 -0
  625. /package/{plugins/freeflow/skills → skills}/commit-work/SKILL.md +0 -0
  626. /package/{plugins/freeflow/skills → skills}/commit-work/references/staging-decisions.md +0 -0
  627. /package/{plugins/freeflow/skills → skills}/diagnose-failure/references/feedback-loop-catalog.md +0 -0
  628. /package/{plugins/freeflow/skills → skills}/diagnose-failure/references/flaky-and-performance.md +0 -0
  629. /package/{plugins/freeflow/skills → skills}/evaluate-skill/SKILL.md +0 -0
  630. /package/{plugins/freeflow/skills → skills}/evaluate-skill/references/eval-patterns.md +0 -0
  631. /package/{plugins/freeflow/skills → skills}/evaluate-skill/references/grading-priority.md +0 -0
  632. /package/{plugins/freeflow/skills → skills}/handoff/SKILL.md +0 -0
  633. /package/{plugins/freeflow/skills → skills}/handoff/references/templates.md +0 -0
  634. /package/{plugins/freeflow/skills → skills}/interview-gate/SKILL.md +0 -0
  635. /package/{plugins/freeflow/skills → skills}/review-work/references/reviewer-prompt.md +0 -0
  636. /package/{plugins/freeflow/skills → skills}/write-plan/references/plan-shapes.md +0 -0
  637. /package/{plugins/freeflow/skills → skills}/write-skill/SKILL.md +0 -0
  638. /package/{plugins/freeflow/skills → skills}/write-spec/references/artifact-standards.md +0 -0
  639. /package/{plugins/freeflow/skills → skills}/write-spec/references/spec-shapes.md +0 -0
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: workflow
3
- description: Use when doing consequential work such as implementation, bug fixing, planning, research-for-action, review, verification, or handoff.
3
+ description: Use when doing consequential work such as implementation, bug fixing, planning, discovery-for-action, review, verification, or handoff.
4
4
  ---
5
5
 
6
6
  # Workflow
@@ -12,7 +12,7 @@ Move forward when context is sufficient. Re-enter clarification when new ambigui
12
12
  Question means answer. Do not turn a question into a file edit, report, plan, or implementation.
13
13
 
14
14
  ```text
15
- Clarify / Research
15
+ Clarify / Discover
16
16
  -> Decision / Spec
17
17
  -> Plan
18
18
  -> Execute
@@ -23,35 +23,37 @@ Clarify / Research
23
23
 
24
24
  This is a guide, not ceremony. Small reversible work can skip spec/plan artifacts.
25
25
 
26
- Method skills such as TDD, diagnosis, or execute-plan run inside the current workflow phase. Workflow owns routing, source-truth conflicts, user-owned decisions, review, verification, and handoff boundaries.
26
+ Method skills and lenses such as TDD, diagnosis, execute-plan, or design-for-depth run inside the current workflow phase. Workflow owns routing, source-truth conflicts, user-owned decisions, review, verification, and handoff boundaries.
27
27
 
28
28
  Read `references/workflow-map.md` when the user asks for the full pipeline, public docs need a diagram, or the next workflow entry point is unclear.
29
29
 
30
30
  ## Route Closeout
31
31
 
32
- When a consequential workflow phase completes, name the next route.
32
+ Use `Next:` to name a helpful next route for the user. It is general routing, not only a workflow-phase label.
33
33
 
34
- Use `Next:` in the final response unless this is a direct question answer, mid-task status, or clarification-only turn.
34
+ Do not add `Next:` to every reply. Questions get answers first; add `Next:` only when the answer leaves a concrete next action, choice, stop condition, or route worth naming.
35
+
36
+ For completed consequential work or workflow phases, include `Next:` unless this is a direct question answer, mid-task status, clarification-only turn, or the final line must be a direct owner-decision question.
35
37
 
36
38
  Choose one:
37
39
 
38
- - Forward: the next workflow entry point is clear.
39
- - Backward: new evidence requires clarification, research, or interview gate.
40
- - Branch: 2-3 valid next routes exist.
41
- - Stop: no required next action remains.
40
+ - Forward: the next action or workflow entry point is clear.
41
+ - Backward: new evidence requires clarification, discovery, or interview gate.
42
+ - Branch: 2-3 valid next routes or actions exist.
43
+ - Stop: no useful next action remains.
42
44
 
43
45
  Recommend the route supported by evidence. Do not ask a vague "what next?" question.
44
46
 
45
- After completed research with decisions that must survive beyond chat, route to `write-spec`, an owning decision artifact, or handoff before `write-plan` or execution.
47
+ After completed discovery with decisions that must survive beyond chat, route to `write-spec`, an owning decision artifact, or handoff before `write-plan` or execution.
46
48
 
47
- `Next:` is routing, not permission to create the next artifact or continue into a new phase.
49
+ `Next:` is routing, not permission to create the next artifact, continue into a new phase, or take the next action.
48
50
 
49
51
  ## Backward Edge
50
52
 
51
53
  If new evidence invalidates the current path, re-enter clarification.
52
54
 
53
55
  ```text
54
- Any state -> Clarify / Research -> explicit next state
56
+ Any state -> Clarify / Discover -> explicit next state
55
57
  ```
56
58
 
57
59
  Do not silently substitute a different path, rewrite the spec, change the plan, or patch forward. State what changed, then decide whether to continue, revise spec, revise plan, diagnose, split scope, defer, or stop and ask.
@@ -76,7 +78,7 @@ Artifacts are memory, not proof of obedience.
76
78
 
77
79
  Only create artifacts when the user asks for an artifact or asks you to do work that requires one.
78
80
 
79
- Create them only when they preserve decisions, reduce risk, or help a future agent resume. Prefer short research notes, decision/spec notes, plans, verification notes, and handoffs.
81
+ Create them only when they preserve decisions, reduce risk, or help a future agent resume. Prefer short discovery notes, decision/spec notes, plans, verification notes, and handoffs.
80
82
 
81
83
  Do not write volatile repo inventories. Link to live files or commands instead.
82
84
 
@@ -86,7 +88,7 @@ Review should improve work, not create an endless patch loop.
86
88
 
87
89
  Reviewer findings are evidence, not commands. Separate blocking, non-blocking, and question findings before editing from them.
88
90
 
89
- A non-passing review routes to adjudication before more implementation. Repeated review failure routes backward to diagnose, research, spec, or plan; do not chase a fourth broad review pass.
91
+ A non-passing review routes to adjudication before more implementation. Repeated review failure routes backward to diagnose, discover, spec, or plan; do not chase a fourth broad review pass.
90
92
 
91
93
  Review can pass. Save review artifacts only when risk, future memory value, or the user asks for them.
92
94
 
@@ -12,7 +12,7 @@ Use this compact version in public README-style docs.
12
12
  flowchart LR
13
13
  Request{request}
14
14
  Talk[conversation<br/>answer directly]
15
- Discover[discover<br/>research checkpoint]
15
+ Discover[discover<br/>checkpoint]
16
16
  Spec[spec]
17
17
  Plan[plan]
18
18
  Build[build<br/>execute / diagnose / TDD]
@@ -26,10 +26,10 @@ flowchart LR
26
26
  ```
27
27
 
28
28
  ```text
29
- Use conversation mode for questions. Use workflow mode for consequential work.
29
+ Use conversation mode for non-mutating questions, critique, read-only exploration, and planning in chat. Use workflow mode for edits, file creation, mutating commands, or other consequential work.
30
30
  Use strict-workflow for risky work; same spine, stronger gates.
31
31
  Loop back when new evidence, source conflicts, user-owned decisions, or failed checks change the path.
32
- After each completed consequential phase, name the next route: forward, backward, branch, or stop.
32
+ Use `Next:` when a response leaves a useful next route. Completed consequential phases should close with forward, backward, branch, or stop unless the reply is only an answer, status update, clarification, or direct owner-decision question.
33
33
  ```
34
34
 
35
35
  ## Reference Map
@@ -49,7 +49,7 @@ flowchart TD
49
49
  Workflow --> Entry{Choose entry point}
50
50
  Strict --> Entry
51
51
 
52
- Entry --> Discovery[Discovery<br/>research<br/>interview-gate]
52
+ Entry --> Discovery[Discovery<br/>discover<br/>interview-gate]
53
53
  Entry --> Spec[Spec<br/>write-spec<br/>review-artifact]
54
54
  Entry --> Plan[Plan<br/>write-plan<br/>review-artifact]
55
55
  Entry --> Build[Build, diagnose, or TDD<br/>execute-plan<br/>diagnose-failure]
@@ -75,8 +75,8 @@ flowchart TD
75
75
 
76
76
  ## Common Entry Points
77
77
 
78
- - Use `conversation mode` when the user asks a question, wants critique, or is exploring.
79
- - Use `research` when repo, domain, evidence, current facts, brainstorming, targeted questions, or a decision checkpoint are needed before spec, plan, build, or durable memory.
78
+ - Use `conversation mode` when the user asks a question, wants critique, or is doing non-mutating exploration or planning in chat. If the user asks to edit, create files, run mutating commands, commit, push, or otherwise change repo/system state, require `workflow` or `strict-workflow` before acting.
79
+ - Use `discover` when repo, domain, evidence, current facts, brainstorming, targeted questions, or a decision checkpoint are needed before spec, plan, build, or durable memory.
80
80
  - Use `interview-gate` when direction is vague, source truth conflicts, or user-owned decisions are still open.
81
81
  - Use `write-spec` when requirements are agreed but not durable.
82
82
  - Use `review-artifact` when a spec, plan, handoff, or decision note must guide future work.
@@ -88,15 +88,17 @@ flowchart TD
88
88
  - Use `handoff` when pausing, compacting, or transferring context.
89
89
  - Use `bypass` only to skip unnecessary ceremony. It cannot skip user-owned decisions, source-truth conflicts, risky checks, or verification claims.
90
90
 
91
- ## Phase Exits
91
+ ## Route Closeout
92
92
 
93
- End completed consequential phases with `Next:` unless this is a direct answer, mid-task status, or clarification-only turn.
93
+ Use `Next:` when naming the next route helps the user, not only when a workflow phase changes. Do not force it onto every reply.
94
94
 
95
- - Forward: name the next entry point, such as `write-spec`, `write-plan`, `execute-plan`, `review-work`, `verify-work`, `commit-work`, or `handoff`.
96
- - Backward: return to `interview-gate`, `research`, `diagnose-failure`, or plan/spec revision when evidence, failed checks, or repeated review findings change the path.
97
- - Branch: show 2-3 valid next routes when more than one is reasonable.
98
- - Stop: say no required next action remains.
95
+ Completed consequential work and phase exits should include `Next:` unless the reply is only a direct answer, mid-task status, clarification-only turn, or direct owner-decision question.
99
96
 
100
- After completed research with decisions that must survive beyond chat, prefer `write-spec`, an owning decision artifact, or handoff before planning or execution.
97
+ - Forward: name the next action or entry point, such as `write-spec`, `write-plan`, `execute-plan`, `review-work`, `verify-work`, `commit-work`, or `handoff`.
98
+ - Backward: return to `interview-gate`, `discover`, `diagnose-failure`, or plan/spec revision when evidence, failed checks, or repeated review findings change the path.
99
+ - Branch: show 2-3 valid next routes or actions when more than one is reasonable.
100
+ - Stop: say no useful next action remains.
101
101
 
102
- Do not create the next artifact just because it is the next route.
102
+ After completed discovery with decisions that must survive beyond chat, prefer `write-spec`, an owning decision artifact, or handoff before planning or execution.
103
+
104
+ Do not create the next artifact or take the next action just because it is the next route.
@@ -11,7 +11,7 @@ Classify the plan request first:
11
11
  - Bug without feedback loop: ask for or propose the feedback loop. Do not write or save a fix plan.
12
12
  - Hidden owner decision or source conflict: name it and do not write the plan.
13
13
  - Context-backed: say a spec is preferred, then write a lightweight plan.
14
- - Missing source context: ask for context or start grilling.
14
+ - Missing source context: ask for context or route to `discover`.
15
15
 
16
16
  A plan executes source truth. It does not create it.
17
17
 
@@ -47,6 +47,12 @@ If a bug report has no repro or feedback loop, answer in chat. Ask for evidence
47
47
 
48
48
  Use vertical slices. Each slice should produce something testable.
49
49
 
50
+ Slices are execution boundaries, not scope reductions. Do not recast agreed scope as `v1`/`v2`, MVP, release, or roadmap framing unless the spec, user, or source context already chose that framing.
51
+
52
+ When full scope is too large for one safe plan, split it into implementation slices, implementation phases, checklists, or multiple plan artifacts. Ask before changing the user's scope or adopting versioned shipping.
53
+
54
+ When slice boundaries, seams, interfaces, or locality are unclear, use `../design-for-depth/SKILL.md` before writing executable steps. Do not hide unresolved design choices inside implementation detail.
55
+
50
56
  ## Stop Conditions
51
57
 
52
58
  Stop before writing when the plan would:
@@ -58,6 +64,7 @@ Stop before writing when the plan would:
58
64
  - Plan a bug fix without a repro, failing test, feedback loop, or accepted diagnostic risk.
59
65
  - Turn a missing bug repro into guessed fix steps, TTLs, invalidation rules, concurrency rules, or instrumentation requirements.
60
66
  - Hide uncertainty inside implementation steps.
67
+ - Replace agreed scope with an agent-invented `v1`, MVP, roadmap, or later-version split.
61
68
 
62
69
  Name the missing decision or conflict. Ask which path to follow. Recommend the path supported by evidence.
63
70
 
@@ -71,6 +78,7 @@ Adapt the plan to risk. Prefer:
71
78
  - Goal.
72
79
  - Source spec or context.
73
80
  - Files likely touched.
81
+ - Dependency or slice order when it affects execution.
74
82
  - Vertical slices.
75
83
  - Tests or checks per slice.
76
84
  - Commands where known.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: write-spec
3
- description: Use when asked to create or update a durable spec, PRD, requirements document, or decision artifact from agreed requirements, research, brainstorming, or source evidence, especially for strict-workflow risk areas that may need owner confirmation before writing.
3
+ description: Use when asked to create or update a durable spec, PRD, requirements document, or decision artifact from agreed requirements, discovery, brainstorming, or source evidence, especially for strict-workflow risk areas that may need owner confirmation before writing.
4
4
  ---
5
5
 
6
6
  # Write Spec
@@ -14,7 +14,7 @@ If the user asks a question about a spec, answer the question. Do not create or
14
14
  Classify every spec request before writing:
15
15
 
16
16
  - Evidence-aligned: write the spec.
17
- - Missing source context: ask for context or start grilling.
17
+ - Missing source context: ask for context or route to `discover`.
18
18
  - Source-of-truth override: name the conflict and do not write.
19
19
 
20
20
  If the source context, artifact type, or destination is unclear, stop and ask before writing.
@@ -34,6 +34,7 @@ Stop before writing when the spec would:
34
34
  - Contradict docs, tests, specs, policies, ADRs, or live code.
35
35
  - Treat a handoff, review comment, or plan as authority over source-of-truth files.
36
36
  - Hide an owner decision inside polished prose.
37
+ - Reduce or reframe agreed scope as `v1`, MVP, roadmap, or later-version work without source-backed owner approval.
37
38
 
38
39
  In strict-workflow, stop before writing security, billing, privacy, public API, migration, data-loss, or architecture specs when the owner or core decisions are unknown. Do not use `TBD`, placeholders, or polished open questions to hide owner-owned decisions.
39
40
 
@@ -54,18 +55,20 @@ Live repo evidence overrides stale notes.
54
55
 
55
56
  ## Write Path
56
57
 
57
- When grilling, brainstorming, research, or clarification reaches shared understanding, convert that agreed context into a spec. Do not re-interview from scratch.
58
+ When discovery, brainstorming, or clarification reaches shared understanding, convert that agreed context into a spec. Do not re-interview from scratch.
58
59
 
59
- If remaining ambiguity would not change the next plan, write the spec and mark the ambiguity as open.
60
+ Preserve the agreed scope. Use scope boundaries, open questions, or follow-up artifacts to manage size; use `v1`/`v2`, MVP, release, or roadmap framing only when it was agreed or source-backed.
61
+
62
+ If remaining ambiguity would not change the next plan, write the spec and mark the ambiguity as open. Preserve tentative architecture assumptions as tentative unless evidence or the owner settles them.
60
63
 
61
64
  Use this shape unless the repo has a stronger convention:
62
65
 
63
66
  - Problem.
64
67
  - Intended outcome.
65
- - Scope / out of scope.
68
+ - Scope / out of scope / ask first / never boundaries when useful.
66
69
  - Requirements.
67
70
  - Acceptance criteria.
68
- - Decisions made.
71
+ - Decisions made and open decisions.
69
72
  - Constraints / evidence.
70
73
  - Open questions.
71
74
 
@@ -1,17 +0,0 @@
1
- # ADR 0002: Evals Before Enforcement Hooks
2
-
3
- ## Status
4
-
5
- Accepted.
6
-
7
- ## Decision
8
-
9
- Freeflow ships plugin-bundled context-loading runtime: Codex/Claude hooks and a Pi extension that load existing workflow and interview-gate context. It still ships without enforcement hooks or CLI enforcement. Behavior must first be proven with baseline-vs-with-skill evals before mechanical enforcement is added.
10
-
11
- ## Rationale
12
-
13
- Context-loading runtime addresses a measured lifecycle gap: workflow and interview-gate context may not be present at session start. The setup skill handles the same-session setup case by reading runtime context after successful verification. Enforcement hooks can prevent expensive mistakes, but early enforcement machinery can hide weak skill wording and turn the package into brittle workflow infrastructure.
14
-
15
- ## Consequences
16
-
17
- Native enforcement remains future work. Enforcement hooks should be added only when a repeated failure is concrete, deterministic, and not solved by concise skill wording.
@@ -1,26 +0,0 @@
1
- # ADR 0004: Research Replaces Shallow Discovery Skills
2
-
3
- ## Status
4
-
5
- Accepted.
6
-
7
- ## Decision
8
-
9
- Freeflow uses one active `research` skill for discovery work before spec, plan, build, or durable memory.
10
-
11
- The previous active skills `research-brief`, `grill-context`, and `capture-decisions` are deprecated and moved to root `deprecated/skills/`. They are no longer part of the runtime skill surface or direct command surface.
12
-
13
- The active direct command is `/research`.
14
-
15
- ## Rationale
16
-
17
- The three older skills were useful independently but shallow as a workflow module. In real use, research, brainstorming, targeted questions, and decision checkpointing need to interleave. Splitting them made the user or agent coordinate the sequence and made long grilling chains or uncaptured research decisions more likely.
18
-
19
- The `research` skill uses the same module/interface/depth/seam/leverage/locality language as architecture review so discovery can shape deep modules from the beginning, not only rescue shallow code later.
20
-
21
- ## Consequences
22
-
23
- - `/research-brief`, `/grill-context`, and `/capture-decisions` are removed from the current command surface.
24
- - Historical evals and reports for the deprecated skills remain as development evidence.
25
- - Current discovery eval evidence lives in `plugins/freeflow/evals/reports/by-skill/research-1-report.md`.
26
- - Durable decisions now belong to the checkpoint destination chosen by `research`: spec, plan, handoff, decision note, ADR, domain memory, or chat.
@@ -1,8 +0,0 @@
1
- # Freeflow ADRs
2
-
3
- Durable decisions for the public Freeflow package:
4
-
5
- - [ADR 0001: Three Workflow Modes](0001-three-modes.md)
6
- - [ADR 0002: Evals Before Enforcement Hooks](0002-evals-before-hooks.md)
7
- - [ADR 0003: Release Boundary](0003-release-boundary.md)
8
- - [ADR 0004: Research Replaces Shallow Discovery Skills](0004-research-replaces-shallow-discovery-skills.md)
@@ -1,86 +0,0 @@
1
- # Architecture
2
-
3
- Freeflow is a portable skill pack for coding agents.
4
-
5
- ## Runtime Boundary
6
-
7
- Freeflow ships Markdown skills, bundled references, lightweight context-loading hooks, and a Pi extension. It does not ship a CLI, Codex/Claude native slash handlers, enforcement hooks, or a new agent runtime in this release.
8
-
9
- Host runtimes still control tools, sandboxing, approvals, and permissions. Freeflow controls workflow pressure:
10
-
11
- - how much clarification is needed
12
- - when artifacts are useful
13
- - when source-truth conflicts stop edits
14
- - when review and verification are required
15
- - when a handoff or durable decision is useful
16
-
17
- ## Package Layout
18
-
19
- ```text
20
- freeflow/
21
- package.json
22
- .agents/plugins/marketplace.json
23
- .claude-plugin/marketplace.json
24
- README.md
25
- LICENSE
26
- CHANGELOG.md
27
- docs/
28
- plugins/freeflow/
29
- .codex-plugin/plugin.json
30
- .claude-plugin/plugin.json
31
- command-surface.json
32
- hooks/
33
- pi-extension/
34
- skills/
35
- docs/
36
- evals/
37
- ```
38
-
39
- The repository root is the marketplace and package-facing shell. Codex uses `.agents/plugins/marketplace.json`; Claude uses `.claude-plugin/marketplace.json`. Both point at `plugins/freeflow/`. Pi uses the root `package.json` `pi` manifest to load `plugins/freeflow/skills/` and `plugins/freeflow/pi-extension/index.js`.
40
-
41
- `plugins/freeflow/` is the single runtime source of truth. Skill edits, bundled references, eval metadata, and command-surface metadata live there to avoid generated package drift.
42
-
43
- ## Progressive Disclosure
44
-
45
- Each skill keeps its active `SKILL.md` short. Stable details move into `references/` files only when they prevent bloat, reduce repeated work, or address measured failures.
46
-
47
- This keeps the model's first-loaded instructions focused on behavior:
48
-
49
- - trigger
50
- - loop
51
- - stop condition
52
- - failure prevention
53
-
54
- ## Host Setup
55
-
56
- `setup-freeflow` installs a compact always-on contract into the host repo.
57
-
58
- The canonical setup contract lives in `skills/setup-freeflow/references/activation-contract.md`; setup docs, fixtures, and eval assertions should reference it or be checked against it.
59
-
60
- Codex setup targets `AGENTS.md` and `.freeflow/config.json`.
61
-
62
- Claude setup targets `CLAUDE.md`, `.claude/rules/freeflow-core.md`, and `.freeflow/config.json` when Claude is the selected host.
63
-
64
- Setup should not silently update both hosts or overwrite stronger repo-specific rules. Existing repo instructions are source truth.
65
-
66
- ## Runtime Context Hooks
67
-
68
- The installed plugin owns `hooks/hooks.json`. Setup does not copy hook files into target repos.
69
-
70
- The hooks load the existing `workflow` skill, workflow map, and `interview-gate` skill:
71
-
72
- - at session start, including startup, resume, clear, and compact
73
-
74
- They also report whether the current repo appears set up, partially set up, or missing setup. They do not run after edit/write tools, block tools, grant permissions, enforce mode policy, or replace repo instructions.
75
-
76
- Setup handles the same-session case directly: after successful setup verification, it reads the workflow skill, workflow map, and interview-gate skill before its final response and only then says workflow and interview-gate context is loaded.
77
-
78
- Host runtimes may require plugin hooks to be reviewed and trusted after install. If the host skips untrusted hooks, setup still writes activation/config files, but future session-start runtime context will not load until hooks are trusted and the session is restarted, resumed, cleared, or compacted.
79
-
80
- Pi uses an extension instead of `hooks/hooks.json`. The Pi extension registers direct commands, reads `workflow/SKILL.md`, `workflow/references/workflow-map.md`, `interview-gate/SKILL.md`, `output-router/SKILL.md`, and `output-router/references/safety-policy.md`, refreshes that context on `session_start` and `session_compact`, and injects it during Pi's `before_agent_start` lifecycle event. The same extension registers `freeflow_retrieve` and `freeflow_run` and gives them compact/expanded TUI renderers so collapsed tool rows stay readable while `ctrl+o` shows structured evidence and recovery details. Pi `/workflow` commands set a session-scoped current-mode override, while `.freeflow/config.json` remains the default-mode source. It follows the same boundary as the Codex/Claude hooks: context loading only, no enforcement.
81
-
82
- ## Deferred Enforcement
83
-
84
- Enforcement hooks and CLI checks are intentionally deferred. They are useful only after skill wording and evals prove a repeated behavior needs mechanical enforcement.
85
-
86
- For this release, commands are model-routed language such as `/write-spec` or `/verify-work`; they are not native registered slash handlers.
@@ -1,212 +0,0 @@
1
- # Output Router
2
-
3
- Freeflow Output Router keeps agent context focused while preserving exact evidence outside context.
4
-
5
- Use it when broad repo exploration, generated artifacts, large logs, or noisy command output would otherwise flood the model.
6
-
7
- For the full architecture, see [`docs/designs/freeflow-output-router-architecture.md`](../../../docs/designs/freeflow-output-router-architecture.md) in the repo root.
8
-
9
- ## Core Idea
10
-
11
- ```text
12
- smallest sufficient evidence in context
13
- + exact raw recovery outside context
14
- + no surprise native tool semantics
15
- ```
16
-
17
- The router ships two explicit tools:
18
-
19
- - `freeflow_retrieve`: retrieve targeted repo/vault evidence.
20
- - `freeflow_run`: run likely-large/noisy commands, vault raw output, and return compact evidence.
21
-
22
- Native tools still matter:
23
-
24
- - use native `read` for known whole files,
25
- - use native `bash` for small/direct raw shell behavior,
26
- - use native `edit`/`write` for mutations.
27
-
28
- ## Tiny Map
29
-
30
- ```mermaid
31
- flowchart LR
32
- Agent[agent]
33
- Retrieve[freeflow_retrieve]
34
- Run[freeflow_run]
35
- Repo[repo files]
36
- Vault[Freeflow vault]
37
- Native[native read/bash]
38
- Evidence[bounded evidence]
39
- Raw[exact recovery]
40
-
41
- Agent -->|existing info| Retrieve
42
- Agent -->|noisy command| Run
43
- Agent -->|direct/raw known output| Native
44
- Retrieve --> Repo --> Evidence
45
- Retrieve --> Vault --> Evidence
46
- Run --> Vault
47
- Run --> Evidence
48
- Vault --> Raw
49
- ```
50
-
51
- ## Tool Choice
52
-
53
- | Need | Use |
54
- | --- | --- |
55
- | Find repo evidence before reading files | `freeflow_retrieve action=query` |
56
- | Get candidate paths first | `freeflow_retrieve action=locate` |
57
- | Retrieve exact repo/vault lines | `freeflow_retrieve action=retrieve` with `lineRange` |
58
- | Widen previous evidence | `freeflow_retrieve action=expand` |
59
- | Explain a previous routed decision/output | `freeflow_retrieve action=explain` |
60
- | Run noisy/large command output | `freeflow_run` |
61
- | Read a known whole file | native `read` |
62
- | Run small exact command | native `bash` |
63
-
64
- ## `freeflow_retrieve`
65
-
66
- Sources:
67
-
68
- - `repo`: local repo files.
69
- - `vault`: previous routed command/native output.
70
-
71
- Actions:
72
-
73
- - `query`: returns best evidence packets; default `topK=1`.
74
- - `locate`: returns candidate locations; default `topK=5`.
75
- - `retrieve`: returns explicit path/line range evidence.
76
- - `expand`: expands a previous evidence packet to `lines_30`, `lines_80`, or `full`.
77
- - `explain`: explains a route decision or vault output.
78
-
79
- Example:
80
-
81
- ```json
82
- {
83
- "action": "query",
84
- "source": { "kind": "repo" },
85
- "query": "Sandbox Permissions UseDefault RequireEscalated WithAdditionalPermissions",
86
- "preserve": "important"
87
- }
88
- ```
89
-
90
- Evidence packets include:
91
-
92
- - source/path,
93
- - line range,
94
- - exact excerpt,
95
- - why the router selected it,
96
- - expansion/recovery guidance.
97
-
98
- Repo retrieval uses deterministic scanner ranking by default. Broad scans skip generated/dependency/cache paths such as `graphify-out/**`, but explicit path retrieval remains available.
99
-
100
- ## `freeflow_run`
101
-
102
- `freeflow_run` executes once through the host-approved runner, stores exact raw output in the vault, then returns useful command evidence.
103
-
104
- Example:
105
-
106
- ```json
107
- {
108
- "command": "npm test",
109
- "goal": "verification",
110
- "preserve": "important"
111
- }
112
- ```
113
-
114
- Returned results include:
115
-
116
- - `outputId`,
117
- - `execution.status` and `exitCode`,
118
- - parser metadata,
119
- - important lines,
120
- - exact recovery instructions.
121
-
122
- Command parsers currently cover:
123
-
124
- - test runner output,
125
- - TypeScript/lint diagnostics,
126
- - git status/diffstat,
127
- - build/toolchain errors,
128
- - generic fallback,
129
- - duplicate output detection.
130
-
131
- ## Vault Recovery
132
-
133
- Recover exact command output with:
134
-
135
- ```json
136
- {
137
- "action": "retrieve",
138
- "source": { "kind": "vault", "outputId": "ffout_...", "stream": "combined" },
139
- "lineRange": { "start": 1, "end": 40 },
140
- "preserve": "full"
141
- }
142
- ```
143
-
144
- Streams:
145
-
146
- - command output: `stdout`, `stderr`, `combined`,
147
- - native safety-net output: `raw`.
148
-
149
- Default vault root:
150
-
151
- ```text
152
- ~/.cache/freeflow-router/vault
153
- ```
154
-
155
- ## Config
156
-
157
- The router works with built-in defaults. Minimal `/setup-freeflow` writes only `defaultMode`.
158
-
159
- Optional repo config lives in `.freeflow/config.json` only when explicitly requested:
160
-
161
- ```json
162
- {
163
- "defaultMode": "workflow",
164
- "outputRouter": {
165
- "postToolRouting": "off",
166
- "largeOutputBytes": 64000,
167
- "largeOutputLines": 1000,
168
- "vaultRoot": "~/.cache/freeflow-router/vault",
169
- "vaultRetentionDays": 7,
170
- "generatedPaths": ["graphify-out/**"],
171
- "noisyCommandHints": ["npm test"]
172
- }
173
- }
174
- ```
175
-
176
- Rules:
177
-
178
- - `postToolRouting` defaults to `off`.
179
- - `safety-net` is opt-in.
180
- - `strict` is reserved.
181
- - Do not dump defaults into config.
182
- - Write only requested keys.
183
-
184
- ## Native Safety Net
185
-
186
- Pi can optionally route large native `read`/`bash` results after the tool runs.
187
-
188
- Default: off.
189
-
190
- When enabled, a routed native result is labeled, vaulted, and includes an `outputId`. If safety-net routing fails, Freeflow fails open and returns native output with a warning.
191
-
192
- ## Defaults And Experiments
193
-
194
- Current adoption decisions:
195
-
196
- - Scanner retrieval is the default backend.
197
- - The no-dependency local index is experimental and not adopted by default.
198
- - SQLite/FTS is not adopted.
199
- - Model-assisted routing is not default.
200
- - Graphify, Claude Context, RTK, and Squeez are optional references/comparators, not dependencies.
201
-
202
- ## Evidence
203
-
204
- Current release evidence:
205
-
206
- - Retrieval benchmark: improved router passed 7/7 fixtures.
207
- - Command benchmark: `freeflow_run` passed 8/8 fixtures with exact recovery.
208
- - Optional index benchmark: scanner remains default; index not adopted.
209
- - Codex Structured Q&A benchmark: improved router passed the Sandbox Permissions fixture where native broad search selected `graphify-out/graph.html`.
210
- - Setup eval: optional `outputRouter` config is opt-in; minimal setup remains only `defaultMode`.
211
-
212
- See `release-evidence.md` and runtime reports under `plugins/freeflow/evals/reports/runtime/`.
@@ -1,69 +0,0 @@
1
- # Release Evidence
2
-
3
- Freeflow v0.2.0 is based on the v0.1 local acceptance suite plus targeted runtime, setup, and output-router evidence from the development repository.
4
-
5
- ## Acceptance Summary
6
-
7
- The local v0.1 acceptance suite passed after measured fixes and was rerun during prepublish verification on 2026-05-26.
8
-
9
- High-signal behaviors covered:
10
-
11
- - Source-truth conflicts stop before edits.
12
- - Strict public API specs ask for owner decisions.
13
- - Execution stops when verification reveals a bad plan.
14
- - Commit flow refuses mixed staged sensitive changes.
15
- - Research checkpoints replace separate research, grilling, and decision-capture commands for discovery work.
16
- - Bypass skips ceremony, not judgment.
17
-
18
- ## Command Surface
19
-
20
- The development registry covers:
21
-
22
- - 4 mode commands.
23
- - 11 direct workflow skill calls.
24
- - 2 contributor skill calls.
25
-
26
- Codex/Claude native slash handlers are not shipped in this release. In those hosts, commands are model-routed through natural language and skill activation. Pi registers direct Freeflow commands through its extension.
27
-
28
- ## Runtime Context
29
-
30
- Freeflow ships plugin-bundled context hooks that load the existing `workflow` skill, workflow map, and `interview-gate` skill at session start. The Pi extension also loads output-router context, including its safety-policy reference, when the routed tools are available. These hooks do not run after edit/write tools, enforce behavior, block tools, or create repo-local hook files.
31
-
32
- For the same session that runs setup, `setup-freeflow` reads the workflow skill, workflow map, and interview-gate skill after successful setup verification before saying workflow and interview-gate context is loaded.
33
-
34
- Host trust prompts for plugin hooks are expected host behavior. Local metadata validation checks hook packaging and deterministic output, not end-to-end host trust UI.
35
-
36
- ## Output Router Evidence
37
-
38
- Output-router behavior is backed by deterministic runtime reports under `plugins/freeflow/evals/reports/runtime/`.
39
-
40
- Verified in the development repo:
41
-
42
- - Retrieval benchmark: improved router passed 7/7 gated fixtures and fixed the generated-artifact Sandbox Permissions false-positive shape.
43
- - Command-output benchmark: `freeflow_run` passed 8/8 fixtures, preserved exact facts, and verified raw vault recovery.
44
- - Optional local index benchmark: scanner remains default, index is not adopted by default, and the no-dependency index remains experimental.
45
- - Codex Structured Q&A macro benchmark: improved router passed the first Sandbox Permissions Q&A fixture while the native broad-search proxy selected `graphify-out/graph.html`.
46
- - Large Codex scanner benchmark: scanner remains the retrieval backend; latest recorded report-refresh evidence kept scanner at 6/8 strict fixtures with bounded context.
47
- - Setup/config eval: `setup-freeflow` supports optional `outputRouter` repo config only when explicitly requested; minimal setup still writes only `defaultMode`.
48
-
49
- Adoption decisions:
50
-
51
- - Scanner improvements ship as default behavior.
52
- - Native post-tool safety-net routing remains off unless explicitly configured.
53
- - The no-dependency local index stays experimental.
54
- - SQLite/FTS, model-assisted routing, Graphify, and Claude Context remain optional/non-default comparison paths, not product dependencies.
55
-
56
- ## Release Metadata
57
-
58
- Run `plugins/freeflow/evals/scripts/validate-release-metadata.sh` for local prepublish checks across marketplace metadata, host manifests, command-surface routing, release-boundary docs, package cleanliness, and deferred install-smoke status.
59
-
60
- Run `plugins/freeflow/evals/scripts/check-runtime-context-hook.sh` after changing lifecycle context hooks.
61
-
62
- ## Known Deferred Work
63
-
64
- - Live Claude smoke evals after Hassan confirms Claude testing is available again.
65
- - GitHub-install smoke tests in separate Codex, Claude, and fresh Pi environments.
66
- - Enforcement hooks or CLI checks only after repeated behavior failures justify them.
67
- - Public marketplace submission only after GitHub install works for required hosts.
68
-
69
- Full eval reports are development evidence and are not included in the runtime package.