minima-cli 0.11.0__tar.gz → 0.12.0__tar.gz

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 (995) hide show
  1. minima_cli-0.12.0/CHANGELOG.md +610 -0
  2. minima_cli-0.12.0/Makefile +73 -0
  3. minima_cli-0.12.0/PKG-INFO +251 -0
  4. minima_cli-0.12.0/docs/BigPlan/PLAN-retired.md +514 -0
  5. minima_cli-0.12.0/docs/BigPlan/README.md +66 -0
  6. minima_cli-0.12.0/docs/BigPlan/characteristics-of-successful-plans.md +348 -0
  7. minima_cli-0.12.0/docs/BigPlan/decision-inline-renderer.md +143 -0
  8. minima_cli-0.12.0/docs/BigPlan/harness-research.md +375 -0
  9. minima_cli-0.12.0/docs/BigPlan/inline-rendering-brief.md +184 -0
  10. minima_cli-0.12.0/docs/BigPlan/inline-ux-guide.md +937 -0
  11. minima_cli-0.12.0/docs/BigPlan/minima-harness-application-guide.md +407 -0
  12. minima_cli-0.12.0/docs/BigPlan/plan-loop-audit.md +139 -0
  13. minima_cli-0.12.0/docs/BigPlan/playbook.md +186 -0
  14. minima_cli-0.12.0/docs/BigPlan/pr-default-renderer.md +91 -0
  15. minima_cli-0.12.0/docs/BigPlan/pr-opencode-sidebar.md +45 -0
  16. minima_cli-0.12.0/docs/BigPlan/pr-prompt-echo.md +112 -0
  17. minima_cli-0.12.0/docs/BigPlan/q_and_a.md +158 -0
  18. minima_cli-0.12.0/docs/BigPlan/shots/ab/ab_capture.sh +62 -0
  19. minima_cli-0.12.0/docs/BigPlan/shots/ab/ab_compare.py +62 -0
  20. minima_cli-0.12.0/docs/BigPlan/shots/b1-fullscreen.png +0 -0
  21. minima_cli-0.12.0/docs/BigPlan/shots/b1-inline.png +0 -0
  22. minima_cli-0.12.0/docs/BigPlan/shots/b2-mode-plan-fullscreen.png +0 -0
  23. minima_cli-0.12.0/docs/BigPlan/shots/b2-mode-plan-inline.png +0 -0
  24. minima_cli-0.12.0/docs/BigPlan/shots/b4-undo-prefill-fullscreen.png +0 -0
  25. minima_cli-0.12.0/docs/BigPlan/shots/b5-rewind-inline.png +0 -0
  26. minima_cli-0.12.0/docs/BigPlan/shots/b5-rewind-overlay.png +0 -0
  27. minima_cli-0.12.0/docs/BigPlan/shots/b5-rewind-picker-fullscreen.png +0 -0
  28. minima_cli-0.12.0/docs/BigPlan/shots/baseline/README.md +12 -0
  29. minima_cli-0.12.0/docs/BigPlan/shots/baseline/base-echo-gap.png +0 -0
  30. minima_cli-0.12.0/docs/BigPlan/shots/baseline/base-gt-wide.png +0 -0
  31. minima_cli-0.12.0/docs/BigPlan/shots/baseline/base-inline-default.png +0 -0
  32. minima_cli-0.12.0/docs/BigPlan/shots/baseline/base-narrow.png +0 -0
  33. minima_cli-0.12.0/docs/BigPlan/shots/baseline/base-toc-wide.png +0 -0
  34. minima_cli-0.12.0/docs/BigPlan/shots/baseline/capture-specs.sh +51 -0
  35. minima_cli-0.12.0/docs/BigPlan/shots/c-prompt-echo.png +0 -0
  36. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/README.md +92 -0
  37. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/boundary-60.png +0 -0
  38. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/capture-specs.sh +122 -0
  39. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/check_echo.py +64 -0
  40. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/code-heavy-120.png +0 -0
  41. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/code-heavy-60.png +0 -0
  42. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/echo-gap.frames.jsonl +70 -0
  43. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/echo-gap.png +0 -0
  44. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/fixture-resume.png +0 -0
  45. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/gt-banner.png +0 -0
  46. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/gt-block.png +0 -0
  47. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/gt-off-notice.png +0 -0
  48. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/narrow-55.png +0 -0
  49. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/perf.jsonl +14 -0
  50. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/plain-chat.frames.jsonl +30 -0
  51. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/plain-chat.png +0 -0
  52. minima_cli-0.12.0/docs/BigPlan/shots/inline-baseline/toc-block.png +0 -0
  53. minima_cli-0.12.0/docs/BigPlan/shots/j1-why-card-fullscreen.png +0 -0
  54. minima_cli-0.12.0/docs/BigPlan/shots/mp1-tui-verify-run.log +48 -0
  55. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/capture.sh +59 -0
  56. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/code-120.png +0 -0
  57. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/code-120.txt +94 -0
  58. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/code-60.png +0 -0
  59. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/code-60.txt +92 -0
  60. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/code-80.png +0 -0
  61. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/code-80.txt +97 -0
  62. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/code-tall.png +0 -0
  63. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/code-tall.txt +118 -0
  64. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/md-120.png +0 -0
  65. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/md-120.txt +82 -0
  66. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/md-60.png +0 -0
  67. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/md-60.txt +88 -0
  68. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/mixed-120.png +0 -0
  69. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/mixed-120.txt +154 -0
  70. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/mixed-60.png +0 -0
  71. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/mixed-60.txt +169 -0
  72. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/stream-code.frames.jsonl +60 -0
  73. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/stream-code.png +0 -0
  74. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/stream-code.txt +100 -0
  75. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/tool-120.png +0 -0
  76. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/tool-120.txt +97 -0
  77. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/tool-60.png +0 -0
  78. minima_cli-0.12.0/docs/BigPlan/shots/mp10-render-audit/tool-60.txt +88 -0
  79. minima_cli-0.12.0/docs/BigPlan/shots/mp11-code-wrap/capture.sh +40 -0
  80. minima_cli-0.12.0/docs/BigPlan/shots/mp11-code-wrap/code-120.png +0 -0
  81. minima_cli-0.12.0/docs/BigPlan/shots/mp11-code-wrap/code-120.txt +95 -0
  82. minima_cli-0.12.0/docs/BigPlan/shots/mp11-code-wrap/code-60.png +0 -0
  83. minima_cli-0.12.0/docs/BigPlan/shots/mp11-code-wrap/code-60.txt +94 -0
  84. minima_cli-0.12.0/docs/BigPlan/shots/mp11-code-wrap/code-80.png +0 -0
  85. minima_cli-0.12.0/docs/BigPlan/shots/mp11-code-wrap/code-80.txt +98 -0
  86. minima_cli-0.12.0/docs/BigPlan/shots/mp11-code-wrap/code-tall.png +0 -0
  87. minima_cli-0.12.0/docs/BigPlan/shots/mp11-code-wrap/code-tall.txt +119 -0
  88. minima_cli-0.12.0/docs/BigPlan/shots/mp12-tool-truncate/capture.sh +41 -0
  89. minima_cli-0.12.0/docs/BigPlan/shots/mp12-tool-truncate/tool-120.png +0 -0
  90. minima_cli-0.12.0/docs/BigPlan/shots/mp12-tool-truncate/tool-120.txt +97 -0
  91. minima_cli-0.12.0/docs/BigPlan/shots/mp12-tool-truncate/tool-60.png +0 -0
  92. minima_cli-0.12.0/docs/BigPlan/shots/mp12-tool-truncate/tool-60.txt +88 -0
  93. minima_cli-0.12.0/docs/BigPlan/shots/mp14-council-progress/busy-research.png +0 -0
  94. minima_cli-0.12.0/docs/BigPlan/shots/mp14-council-progress/busy-research.txt +75 -0
  95. minima_cli-0.12.0/docs/BigPlan/shots/mp14-council-progress/busy-synth.png +0 -0
  96. minima_cli-0.12.0/docs/BigPlan/shots/mp14-council-progress/busy-synth.txt +75 -0
  97. minima_cli-0.12.0/docs/BigPlan/shots/mp14-council-progress/capture.sh +48 -0
  98. minima_cli-0.12.0/docs/BigPlan/shots/mp14-council-progress/council-line.frames.jsonl +175 -0
  99. minima_cli-0.12.0/docs/BigPlan/shots/mp16-plan-draft/capture.sh +43 -0
  100. minima_cli-0.12.0/docs/BigPlan/shots/mp16-plan-draft/draft-round1.png +0 -0
  101. minima_cli-0.12.0/docs/BigPlan/shots/mp16-plan-draft/draft-round1.txt +84 -0
  102. minima_cli-0.12.0/docs/BigPlan/shots/mp16-plan-draft/draft-round2.png +0 -0
  103. minima_cli-0.12.0/docs/BigPlan/shots/mp16-plan-draft/draft-round2.txt +90 -0
  104. minima_cli-0.12.0/docs/BigPlan/shots/mp16-plan-draft/final-overview.png +0 -0
  105. minima_cli-0.12.0/docs/BigPlan/shots/mp16-plan-draft/final-overview.txt +124 -0
  106. minima_cli-0.12.0/docs/BigPlan/shots/mp17-plan-exit/approved.png +0 -0
  107. minima_cli-0.12.0/docs/BigPlan/shots/mp17-plan-exit/approved.txt +74 -0
  108. minima_cli-0.12.0/docs/BigPlan/shots/mp17-plan-exit/capture.sh +39 -0
  109. minima_cli-0.12.0/docs/BigPlan/shots/mp17-plan-exit/gate-overlay.png +0 -0
  110. minima_cli-0.12.0/docs/BigPlan/shots/mp17-plan-exit/gate-overlay.txt +74 -0
  111. minima_cli-0.12.0/docs/BigPlan/shots/mp17-plan-exit/shifttab-gate.png +0 -0
  112. minima_cli-0.12.0/docs/BigPlan/shots/mp17-plan-exit/shifttab-gate.txt +81 -0
  113. minima_cli-0.12.0/docs/BigPlan/shots/mp18-verify-consent/capture.sh +41 -0
  114. minima_cli-0.12.0/docs/BigPlan/shots/mp18-verify-consent/first-prompt.png +0 -0
  115. minima_cli-0.12.0/docs/BigPlan/shots/mp18-verify-consent/first-prompt.txt +74 -0
  116. minima_cli-0.12.0/docs/BigPlan/shots/mp18-verify-consent/mutated-reprompt.png +0 -0
  117. minima_cli-0.12.0/docs/BigPlan/shots/mp18-verify-consent/mutated-reprompt.txt +74 -0
  118. minima_cli-0.12.0/docs/BigPlan/shots/mp18-verify-consent/silent-repeat.png +0 -0
  119. minima_cli-0.12.0/docs/BigPlan/shots/mp18-verify-consent/silent-repeat.txt +77 -0
  120. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/1-council.png +0 -0
  121. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/1-council.txt +82 -0
  122. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/2-draft.png +0 -0
  123. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/2-draft.txt +104 -0
  124. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/3-exit-gate.png +0 -0
  125. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/3-exit-gate.txt +110 -0
  126. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/4-red-block.png +0 -0
  127. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/4-red-block.txt +164 -0
  128. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/5-green-close.png +0 -0
  129. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/5-green-close.txt +176 -0
  130. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/6-toc-marker.png +0 -0
  131. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/6-toc-marker.txt +203 -0
  132. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/7-step-card.png +0 -0
  133. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/7-step-card.txt +203 -0
  134. minima_cli-0.12.0/docs/BigPlan/shots/mp19-acceptance/capture.sh +49 -0
  135. minima_cli-0.12.0/docs/BigPlan/shots/mp20-stream-reseat/capture.sh +39 -0
  136. minima_cli-0.12.0/docs/BigPlan/shots/mp20-stream-reseat/stream-code.frames.jsonl +59 -0
  137. minima_cli-0.12.0/docs/BigPlan/shots/mp20-stream-reseat/stream-code.png +0 -0
  138. minima_cli-0.12.0/docs/BigPlan/shots/mp20-stream-reseat/stream-code.txt +87 -0
  139. minima_cli-0.12.0/docs/BigPlan/shots/mp4-spike/capture.sh +48 -0
  140. minima_cli-0.12.0/docs/BigPlan/shots/mp4-spike/mp4-closed.png +0 -0
  141. minima_cli-0.12.0/docs/BigPlan/shots/mp4-spike/mp4-open.png +0 -0
  142. minima_cli-0.12.0/docs/BigPlan/shots/mp4-spike/mp4-scrolled.png +0 -0
  143. minima_cli-0.12.0/docs/BigPlan/shots/mp5-taskpanel/capture.sh +43 -0
  144. minima_cli-0.12.0/docs/BigPlan/shots/mp5-taskpanel/mp5-hidden.png +0 -0
  145. minima_cli-0.12.0/docs/BigPlan/shots/mp5-taskpanel/mp5-restart-hidden.png +0 -0
  146. minima_cli-0.12.0/docs/BigPlan/shots/mp5-taskpanel/mp5-visible.png +0 -0
  147. minima_cli-0.12.0/docs/BigPlan/shots/mp6-gt-taskpanel/capture.sh +38 -0
  148. minima_cli-0.12.0/docs/BigPlan/shots/mp6-gt-taskpanel/mp6-blocked-alert.png +0 -0
  149. minima_cli-0.12.0/docs/BigPlan/shots/mp6-gt-taskpanel/mp6-drift-alert.png +0 -0
  150. minima_cli-0.12.0/docs/BigPlan/shots/mp7-expand-panel/capture.sh +44 -0
  151. minima_cli-0.12.0/docs/BigPlan/shots/mp7-expand-panel/mp7-closed-draft.png +0 -0
  152. minima_cli-0.12.0/docs/BigPlan/shots/mp7-expand-panel/mp7-toc-bottom.png +0 -0
  153. minima_cli-0.12.0/docs/BigPlan/shots/mp7-expand-panel/mp7-toc-open.png +0 -0
  154. minima_cli-0.12.0/docs/BigPlan/shots/mp8-panel-reader/capture.sh +39 -0
  155. minima_cli-0.12.0/docs/BigPlan/shots/mp8-panel-reader/mp8-back-to-list.png +0 -0
  156. minima_cli-0.12.0/docs/BigPlan/shots/mp8-panel-reader/mp8-reader.png +0 -0
  157. minima_cli-0.12.0/docs/BigPlan/shots/mp9-gt-panel/capture.sh +44 -0
  158. minima_cli-0.12.0/docs/BigPlan/shots/mp9-gt-panel/mp9-gate-wins.png +0 -0
  159. minima_cli-0.12.0/docs/BigPlan/shots/mp9-gt-panel/mp9-overview.png +0 -0
  160. minima_cli-0.12.0/docs/BigPlan/shots/mp9-gt-panel/mp9-step-card.png +0 -0
  161. minima_cli-0.12.0/docs/BigPlan/shots/p0-badge-fullscreen.png +0 -0
  162. minima_cli-0.12.0/docs/BigPlan/shots/p0-badge-inline.png +0 -0
  163. minima_cli-0.12.0/docs/BigPlan/shots/plan-e2e-seeded.png +0 -0
  164. minima_cli-0.12.0/docs/BigPlan/shots/plan-exit-approval.png +0 -0
  165. minima_cli-0.12.0/docs/BigPlan/shots/plan-shifttab-workflow.png +0 -0
  166. minima_cli-0.12.0/docs/BigPlan/shots/u2-docked-toc-focused.png +0 -0
  167. minima_cli-0.12.0/docs/BigPlan/shots/u2-docked-toc-unfocused.png +0 -0
  168. minima_cli-0.12.0/docs/BigPlan/shots/u2-narrow-fallback.png +0 -0
  169. minima_cli-0.12.0/docs/BigPlan/shots/u2-narrow-overlay.png +0 -0
  170. minima_cli-0.12.0/docs/BigPlan/shots/u2-toc-fullscreen.png +0 -0
  171. minima_cli-0.12.0/docs/BigPlan/shots/u2-toc-inline.png +0 -0
  172. minima_cli-0.12.0/docs/BigPlan/shots/u3-gt-card-fullscreen.png +0 -0
  173. minima_cli-0.12.0/docs/BigPlan/shots/u3-gt-docked.png +0 -0
  174. minima_cli-0.12.0/docs/BigPlan/shots/u3-gt-panel-fullscreen.png +0 -0
  175. minima_cli-0.12.0/docs/BigPlan/sources.md +124 -0
  176. minima_cli-0.12.0/docs/BigPlan/spike-inline-panel.md +69 -0
  177. minima_cli-0.12.0/docs/BigPlan/tui-manual-testing.md +201 -0
  178. minima_cli-0.12.0/docs/BigPlan/workflow-diagrams.md +200 -0
  179. minima_cli-0.12.0/docs/characteristics_of_a_good_plan.md +56 -0
  180. minima_cli-0.12.0/docs/ground-truth-build-guide.md +562 -0
  181. minima_cli-0.12.0/docs/tui-rendering-strategy.md +152 -0
  182. minima_cli-0.12.0/docs/tui-stability-input-plan.md +110 -0
  183. minima_cli-0.12.0/packages/tui/README.md +94 -0
  184. minima_cli-0.12.0/packages/tui/package.json +44 -0
  185. minima_cli-0.12.0/packages/tui/scripts/build.ts +45 -0
  186. minima_cli-0.12.0/packages/tui/scripts/gen-fixture-session.ts +338 -0
  187. minima_cli-0.12.0/packages/tui/scripts/mock_openai_sse.ts +382 -0
  188. minima_cli-0.12.0/packages/tui/scripts/plan_latency_bench.ts +170 -0
  189. minima_cli-0.12.0/packages/tui/scripts/pty_capture.py +273 -0
  190. minima_cli-0.12.0/packages/tui/scripts/tui_assert.py +199 -0
  191. minima_cli-0.12.0/packages/tui/scripts/tui_verify.sh +1063 -0
  192. minima_cli-0.12.0/packages/tui/src/agent/index.ts +12 -0
  193. minima_cli-0.12.0/packages/tui/src/agent/modes.ts +124 -0
  194. minima_cli-0.12.0/packages/tui/src/agent/policy.ts +115 -0
  195. minima_cli-0.12.0/packages/tui/src/agent/tools.ts +82 -0
  196. minima_cli-0.12.0/packages/tui/src/cli/main.ts +795 -0
  197. minima_cli-0.12.0/packages/tui/src/db/minima_db.ts +1513 -0
  198. minima_cli-0.12.0/packages/tui/src/db/rehydrate.ts +120 -0
  199. minima_cli-0.12.0/packages/tui/src/minima/anti_spiral.ts +277 -0
  200. minima_cli-0.12.0/packages/tui/src/minima/confidence.ts +26 -0
  201. minima_cli-0.12.0/packages/tui/src/minima/config.ts +185 -0
  202. minima_cli-0.12.0/packages/tui/src/minima/failure_kind.ts +247 -0
  203. minima_cli-0.12.0/packages/tui/src/minima/ground_truth.ts +1189 -0
  204. minima_cli-0.12.0/packages/tui/src/minima/gt_contract.ts +114 -0
  205. minima_cli-0.12.0/packages/tui/src/minima/gt_factors.ts +333 -0
  206. minima_cli-0.12.0/packages/tui/src/minima/index.ts +58 -0
  207. minima_cli-0.12.0/packages/tui/src/minima/plan_council.ts +1134 -0
  208. minima_cli-0.12.0/packages/tui/src/minima/plan_finalize.ts +174 -0
  209. minima_cli-0.12.0/packages/tui/src/minima/plan_lint.ts +234 -0
  210. minima_cli-0.12.0/packages/tui/src/minima/plan_refute.ts +193 -0
  211. minima_cli-0.12.0/packages/tui/src/minima/plan_seed.ts +88 -0
  212. minima_cli-0.12.0/packages/tui/src/minima/plan_session.ts +576 -0
  213. minima_cli-0.12.0/packages/tui/src/minima/plan_turn.ts +226 -0
  214. minima_cli-0.12.0/packages/tui/src/minima/runtime.ts +1007 -0
  215. minima_cli-0.12.0/packages/tui/src/minima/stop_gate.ts +276 -0
  216. minima_cli-0.12.0/packages/tui/src/minima/tool_permissions.ts +117 -0
  217. minima_cli-0.12.0/packages/tui/src/minima/why.ts +187 -0
  218. minima_cli-0.12.0/packages/tui/src/session/checkpoint.ts +356 -0
  219. minima_cli-0.12.0/packages/tui/src/session/index.ts +30 -0
  220. minima_cli-0.12.0/packages/tui/src/session/rewind.ts +76 -0
  221. minima_cli-0.12.0/packages/tui/src/session/sections.ts +100 -0
  222. minima_cli-0.12.0/packages/tui/src/tools/builtin.ts +74 -0
  223. minima_cli-0.12.0/packages/tui/src/tools/exit_plan.ts +198 -0
  224. minima_cli-0.12.0/packages/tui/src/tools/index.ts +13 -0
  225. minima_cli-0.12.0/packages/tui/src/tools/todowrite.ts +98 -0
  226. minima_cli-0.12.0/packages/tui/src/tui/app.tsx +4350 -0
  227. minima_cli-0.12.0/packages/tui/src/tui/badge_slot.ts +40 -0
  228. minima_cli-0.12.0/packages/tui/src/tui/busy.tsx +129 -0
  229. minima_cli-0.12.0/packages/tui/src/tui/clipboard.ts +65 -0
  230. minima_cli-0.12.0/packages/tui/src/tui/expand_panel.tsx +67 -0
  231. minima_cli-0.12.0/packages/tui/src/tui/footer.ts +36 -0
  232. minima_cli-0.12.0/packages/tui/src/tui/gt_overview.ts +251 -0
  233. minima_cli-0.12.0/packages/tui/src/tui/input-filter.ts +336 -0
  234. minima_cli-0.12.0/packages/tui/src/tui/layout.ts +548 -0
  235. minima_cli-0.12.0/packages/tui/src/tui/messages.tsx +233 -0
  236. minima_cli-0.12.0/packages/tui/src/tui/mode_prefs.ts +79 -0
  237. minima_cli-0.12.0/packages/tui/src/tui/panel_state.ts +206 -0
  238. minima_cli-0.12.0/packages/tui/src/tui/perf.ts +54 -0
  239. minima_cli-0.12.0/packages/tui/src/tui/permissions.ts +384 -0
  240. minima_cli-0.12.0/packages/tui/src/tui/plan_draft_view.ts +63 -0
  241. minima_cli-0.12.0/packages/tui/src/tui/reader.ts +63 -0
  242. minima_cli-0.12.0/packages/tui/src/tui/resume.ts +36 -0
  243. minima_cli-0.12.0/packages/tui/src/tui/rewind_picker.ts +71 -0
  244. minima_cli-0.12.0/packages/tui/src/tui/status.tsx +150 -0
  245. minima_cli-0.12.0/packages/tui/src/tui/suspend.ts +39 -0
  246. minima_cli-0.12.0/packages/tui/src/tui/task_footer.ts +93 -0
  247. minima_cli-0.12.0/packages/tui/src/tui/text-input.tsx +237 -0
  248. minima_cli-0.12.0/packages/tui/src/tui/tips.ts +105 -0
  249. minima_cli-0.12.0/packages/tui/src/tui/toc.ts +229 -0
  250. minima_cli-0.12.0/packages/tui/tests/acceptance-e2e.test.ts +432 -0
  251. minima_cli-0.12.0/packages/tui/tests/agent.test.ts +377 -0
  252. minima_cli-0.12.0/packages/tui/tests/anti-spiral-runtime.test.ts +172 -0
  253. minima_cli-0.12.0/packages/tui/tests/anti-spiral.test.ts +200 -0
  254. minima_cli-0.12.0/packages/tui/tests/badge_slot.test.ts +27 -0
  255. minima_cli-0.12.0/packages/tui/tests/behavior.test.ts +635 -0
  256. minima_cli-0.12.0/packages/tui/tests/busy.test.ts +73 -0
  257. minima_cli-0.12.0/packages/tui/tests/checkpoint.test.ts +252 -0
  258. minima_cli-0.12.0/packages/tui/tests/cli.test.ts +24 -0
  259. minima_cli-0.12.0/packages/tui/tests/confidence.test.ts +123 -0
  260. minima_cli-0.12.0/packages/tui/tests/db.test.ts +573 -0
  261. minima_cli-0.12.0/packages/tui/tests/db_migrate.test.ts +181 -0
  262. minima_cli-0.12.0/packages/tui/tests/exit_plan.test.ts +178 -0
  263. minima_cli-0.12.0/packages/tui/tests/failure-kind-runtime.test.ts +355 -0
  264. minima_cli-0.12.0/packages/tui/tests/failure-kind.test.ts +181 -0
  265. minima_cli-0.12.0/packages/tui/tests/feedback-grounded.test.ts +263 -0
  266. minima_cli-0.12.0/packages/tui/tests/footer.test.ts +99 -0
  267. minima_cli-0.12.0/packages/tui/tests/gate.test.ts +1037 -0
  268. minima_cli-0.12.0/packages/tui/tests/ground_truth.test.ts +928 -0
  269. minima_cli-0.12.0/packages/tui/tests/gt-attribution.test.ts +224 -0
  270. minima_cli-0.12.0/packages/tui/tests/gt-contract.test.ts +125 -0
  271. minima_cli-0.12.0/packages/tui/tests/gt-e2e.test.ts +351 -0
  272. minima_cli-0.12.0/packages/tui/tests/gt-footer.test.ts +72 -0
  273. minima_cli-0.12.0/packages/tui/tests/gt_factors.test.ts +211 -0
  274. minima_cli-0.12.0/packages/tui/tests/gt_overview.test.ts +267 -0
  275. minima_cli-0.12.0/packages/tui/tests/input-filter.test.ts +256 -0
  276. minima_cli-0.12.0/packages/tui/tests/j1-e2e.test.ts +278 -0
  277. minima_cli-0.12.0/packages/tui/tests/ladder.test.ts +511 -0
  278. minima_cli-0.12.0/packages/tui/tests/layout.test.ts +442 -0
  279. minima_cli-0.12.0/packages/tui/tests/learning-loop.test.ts +349 -0
  280. minima_cli-0.12.0/packages/tui/tests/markdown-fence.test.ts +169 -0
  281. minima_cli-0.12.0/packages/tui/tests/minima.test.ts +457 -0
  282. minima_cli-0.12.0/packages/tui/tests/modes.test.ts +187 -0
  283. minima_cli-0.12.0/packages/tui/tests/panel_state.test.ts +220 -0
  284. minima_cli-0.12.0/packages/tui/tests/permissions.test.ts +550 -0
  285. minima_cli-0.12.0/packages/tui/tests/plan-lint.test.ts +197 -0
  286. minima_cli-0.12.0/packages/tui/tests/plan-loop-audit.test.ts +625 -0
  287. minima_cli-0.12.0/packages/tui/tests/plan_council.test.ts +954 -0
  288. minima_cli-0.12.0/packages/tui/tests/plan_draft_view.test.ts +120 -0
  289. minima_cli-0.12.0/packages/tui/tests/plan_finalize.test.ts +203 -0
  290. minima_cli-0.12.0/packages/tui/tests/plan_refute.test.ts +213 -0
  291. minima_cli-0.12.0/packages/tui/tests/plan_session.test.ts +618 -0
  292. minima_cli-0.12.0/packages/tui/tests/plan_turn.test.ts +327 -0
  293. minima_cli-0.12.0/packages/tui/tests/policy.test.ts +116 -0
  294. minima_cli-0.12.0/packages/tui/tests/reader.test.ts +85 -0
  295. minima_cli-0.12.0/packages/tui/tests/recall-user-id.test.ts +93 -0
  296. minima_cli-0.12.0/packages/tui/tests/render-buffer.test.ts +30 -0
  297. minima_cli-0.12.0/packages/tui/tests/resume-gt.test.ts +123 -0
  298. minima_cli-0.12.0/packages/tui/tests/rewind.test.ts +179 -0
  299. minima_cli-0.12.0/packages/tui/tests/rewind_picker.test.ts +152 -0
  300. minima_cli-0.12.0/packages/tui/tests/sections.test.ts +135 -0
  301. minima_cli-0.12.0/packages/tui/tests/stop-gate-runtime.test.ts +155 -0
  302. minima_cli-0.12.0/packages/tui/tests/stop-gate.test.ts +241 -0
  303. minima_cli-0.12.0/packages/tui/tests/task_footer.test.ts +234 -0
  304. minima_cli-0.12.0/packages/tui/tests/toc.test.ts +140 -0
  305. minima_cli-0.12.0/packages/tui/tests/todowrite.test.ts +33 -0
  306. minima_cli-0.12.0/packages/tui/tests/tool-permissions.test.ts +160 -0
  307. minima_cli-0.12.0/packages/tui/tests/tool_marker.test.ts +29 -0
  308. minima_cli-0.12.0/packages/tui/tests/tools-persistence.test.ts +66 -0
  309. minima_cli-0.12.0/packages/tui/tests/verify-consent.test.ts +151 -0
  310. minima_cli-0.12.0/pyproject.toml +111 -0
  311. minima_cli-0.12.0/uv.lock +4494 -0
  312. minima_cli-0.11.0/CHANGELOG.md +0 -550
  313. minima_cli-0.11.0/Makefile +0 -67
  314. minima_cli-0.11.0/PKG-INFO +0 -251
  315. minima_cli-0.11.0/docs/ground-truth-build-guide.md +0 -535
  316. minima_cli-0.11.0/packages/tui/README.md +0 -93
  317. minima_cli-0.11.0/packages/tui/package.json +0 -44
  318. minima_cli-0.11.0/packages/tui/scripts/build.ts +0 -43
  319. minima_cli-0.11.0/packages/tui/scripts/pty_capture.py +0 -203
  320. minima_cli-0.11.0/packages/tui/src/agent/index.ts +0 -10
  321. minima_cli-0.11.0/packages/tui/src/agent/tools.ts +0 -79
  322. minima_cli-0.11.0/packages/tui/src/cli/main.ts +0 -699
  323. minima_cli-0.11.0/packages/tui/src/db/minima_db.ts +0 -1133
  324. minima_cli-0.11.0/packages/tui/src/db/rehydrate.ts +0 -80
  325. minima_cli-0.11.0/packages/tui/src/minima/confidence.ts +0 -16
  326. minima_cli-0.11.0/packages/tui/src/minima/config.ts +0 -111
  327. minima_cli-0.11.0/packages/tui/src/minima/ground_truth.ts +0 -1011
  328. minima_cli-0.11.0/packages/tui/src/minima/gt_contract.ts +0 -99
  329. minima_cli-0.11.0/packages/tui/src/minima/gt_factors.ts +0 -331
  330. minima_cli-0.11.0/packages/tui/src/minima/index.ts +0 -53
  331. minima_cli-0.11.0/packages/tui/src/minima/plan_council.ts +0 -912
  332. minima_cli-0.11.0/packages/tui/src/minima/plan_session.ts +0 -506
  333. minima_cli-0.11.0/packages/tui/src/minima/plan_turn.ts +0 -165
  334. minima_cli-0.11.0/packages/tui/src/minima/runtime.ts +0 -801
  335. minima_cli-0.11.0/packages/tui/src/minima/why.ts +0 -158
  336. minima_cli-0.11.0/packages/tui/src/session/index.ts +0 -10
  337. minima_cli-0.11.0/packages/tui/src/tools/builtin.ts +0 -68
  338. minima_cli-0.11.0/packages/tui/src/tools/index.ts +0 -11
  339. minima_cli-0.11.0/packages/tui/src/tools/todowrite.ts +0 -92
  340. minima_cli-0.11.0/packages/tui/src/tui/app.tsx +0 -3099
  341. minima_cli-0.11.0/packages/tui/src/tui/busy.tsx +0 -96
  342. minima_cli-0.11.0/packages/tui/src/tui/layout.ts +0 -497
  343. minima_cli-0.11.0/packages/tui/src/tui/messages.tsx +0 -213
  344. minima_cli-0.11.0/packages/tui/src/tui/mouse-scroll.ts +0 -87
  345. minima_cli-0.11.0/packages/tui/src/tui/permissions.ts +0 -319
  346. minima_cli-0.11.0/packages/tui/src/tui/status.tsx +0 -137
  347. minima_cli-0.11.0/packages/tui/src/tui/text-input.tsx +0 -119
  348. minima_cli-0.11.0/packages/tui/src/tui/tips.ts +0 -104
  349. minima_cli-0.11.0/packages/tui/tests/agent.test.ts +0 -379
  350. minima_cli-0.11.0/packages/tui/tests/behavior.test.ts +0 -399
  351. minima_cli-0.11.0/packages/tui/tests/busy.test.ts +0 -38
  352. minima_cli-0.11.0/packages/tui/tests/confidence.test.ts +0 -74
  353. minima_cli-0.11.0/packages/tui/tests/db.test.ts +0 -374
  354. minima_cli-0.11.0/packages/tui/tests/db_migrate.test.ts +0 -122
  355. minima_cli-0.11.0/packages/tui/tests/feedback-grounded.test.ts +0 -258
  356. minima_cli-0.11.0/packages/tui/tests/gate.test.ts +0 -836
  357. minima_cli-0.11.0/packages/tui/tests/ground_truth.test.ts +0 -912
  358. minima_cli-0.11.0/packages/tui/tests/gt-attribution.test.ts +0 -206
  359. minima_cli-0.11.0/packages/tui/tests/gt-contract.test.ts +0 -104
  360. minima_cli-0.11.0/packages/tui/tests/gt-e2e.test.ts +0 -335
  361. minima_cli-0.11.0/packages/tui/tests/gt-footer.test.ts +0 -76
  362. minima_cli-0.11.0/packages/tui/tests/gt_factors.test.ts +0 -211
  363. minima_cli-0.11.0/packages/tui/tests/ladder.test.ts +0 -387
  364. minima_cli-0.11.0/packages/tui/tests/layout.test.ts +0 -481
  365. minima_cli-0.11.0/packages/tui/tests/minima.test.ts +0 -452
  366. minima_cli-0.11.0/packages/tui/tests/mouse-scroll.test.ts +0 -52
  367. minima_cli-0.11.0/packages/tui/tests/permissions.test.ts +0 -324
  368. minima_cli-0.11.0/packages/tui/tests/plan_council.test.ts +0 -709
  369. minima_cli-0.11.0/packages/tui/tests/plan_session.test.ts +0 -566
  370. minima_cli-0.11.0/packages/tui/tests/plan_turn.test.ts +0 -218
  371. minima_cli-0.11.0/packages/tui/tests/recall-user-id.test.ts +0 -87
  372. minima_cli-0.11.0/packages/tui/tests/render-buffer.test.ts +0 -29
  373. minima_cli-0.11.0/packages/tui/tests/resume-gt.test.ts +0 -116
  374. minima_cli-0.11.0/pyproject.toml +0 -111
  375. minima_cli-0.11.0/uv.lock +0 -4494
  376. {minima_cli-0.11.0 → minima_cli-0.12.0}/.dockerignore +0 -0
  377. {minima_cli-0.11.0 → minima_cli-0.12.0}/.env.example +0 -0
  378. {minima_cli-0.11.0 → minima_cli-0.12.0}/.github/workflows/catalog-snapshot.yml +0 -0
  379. {minima_cli-0.11.0 → minima_cli-0.12.0}/.github/workflows/ci.yml +0 -0
  380. {minima_cli-0.11.0 → minima_cli-0.12.0}/.github/workflows/prod.yml +0 -0
  381. {minima_cli-0.11.0 → minima_cli-0.12.0}/.github/workflows/release-cli.yml +0 -0
  382. {minima_cli-0.11.0 → minima_cli-0.12.0}/.github/workflows/staging.yml +0 -0
  383. {minima_cli-0.11.0 → minima_cli-0.12.0}/.gitignore +0 -0
  384. {minima_cli-0.11.0 → minima_cli-0.12.0}/AGENTS.md +0 -0
  385. {minima_cli-0.11.0 → minima_cli-0.12.0}/CLAUDE.md +0 -0
  386. {minima_cli-0.11.0 → minima_cli-0.12.0}/Dockerfile +0 -0
  387. {minima_cli-0.11.0 → minima_cli-0.12.0}/LICENSE +0 -0
  388. {minima_cli-0.11.0 → minima_cli-0.12.0}/README.md +0 -0
  389. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/.gitignore +0 -0
  390. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/README.md +0 -0
  391. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/assert/check.ts +0 -0
  392. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/assert/db.ts +0 -0
  393. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/driver/env.ts +0 -0
  394. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/driver/headless.ts +0 -0
  395. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/driver/mock_server.ts +0 -0
  396. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/driver/rig.ts +0 -0
  397. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/driver/scratch.ts +0 -0
  398. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/_example/mathx.py +0 -0
  399. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/_example/tests/test_public.py +0 -0
  400. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/js-lib/README.md +0 -0
  401. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/js-lib/package.json +0 -0
  402. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/js-lib/src/csv.ts +0 -0
  403. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/js-lib/src/index.ts +0 -0
  404. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/js-lib/src/object.ts +0 -0
  405. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/js-lib/src/stats.ts +0 -0
  406. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/js-lib/src/transform.ts +0 -0
  407. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/js-lib/tests/csv.test.ts +0 -0
  408. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/js-lib/tests/object.test.ts +0 -0
  409. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/js-lib/tests/stats.test.ts +0 -0
  410. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/js-lib/tests/transform.test.ts +0 -0
  411. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/README.md +0 -0
  412. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/js/chunk.js +0 -0
  413. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/js/droot.js +0 -0
  414. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/js/duration.js +0 -0
  415. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/js/wrap.js +0 -0
  416. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/py/checksum.py +0 -0
  417. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/py/intervals.py +0 -0
  418. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/py/rle.py +0 -0
  419. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/py/roman.py +0 -0
  420. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/js/chunk/smoke.test.js +0 -0
  421. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/js/droot/smoke.test.js +0 -0
  422. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/js/duration/smoke.test.js +0 -0
  423. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/js/wrap/smoke.test.js +0 -0
  424. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/py/conftest.py +0 -0
  425. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/py/test_checksum_smoke.py +0 -0
  426. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/py/test_intervals_smoke.py +0 -0
  427. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/py/test_rle_smoke.py +0 -0
  428. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/py/test_roman_smoke.py +0 -0
  429. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/ts/brackets/smoke.test.ts +0 -0
  430. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/ts/drift/smoke.test.ts +0 -0
  431. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/ts/ordinal/smoke.test.ts +0 -0
  432. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/tests/ts/slug/smoke.test.ts +0 -0
  433. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/ts/brackets.ts +0 -0
  434. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/ts/drift.ts +0 -0
  435. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/ts/ordinal.ts +0 -0
  436. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/katas/ts/slug.ts +0 -0
  437. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/.gitignore +0 -0
  438. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/README.md +0 -0
  439. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/pytest.ini +0 -0
  440. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/taskman/__init__.py +0 -0
  441. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/taskman/__main__.py +0 -0
  442. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/taskman/cli.py +0 -0
  443. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/taskman/dates.py +0 -0
  444. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/taskman/migrations.py +0 -0
  445. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/taskman/models.py +0 -0
  446. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/taskman/query.py +0 -0
  447. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/taskman/report.py +0 -0
  448. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/taskman/storage.py +0 -0
  449. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/tests/__init__.py +0 -0
  450. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/tests/conftest.py +0 -0
  451. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/tests/test_cli.py +0 -0
  452. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/tests/test_dates.py +0 -0
  453. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/tests/test_models.py +0 -0
  454. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/tests/test_query.py +0 -0
  455. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/tests/test_report.py +0 -0
  456. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/py-cli/tests/test_storage.py +0 -0
  457. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/README.md +0 -0
  458. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/package.json +0 -0
  459. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/app.ts +0 -0
  460. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/auth.ts +0 -0
  461. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/errors.ts +0 -0
  462. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/handlers/admin.ts +0 -0
  463. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/handlers/links.ts +0 -0
  464. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/handlers/notes.ts +0 -0
  465. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/handlers/stats.ts +0 -0
  466. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/persist.ts +0 -0
  467. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/ratelimit.ts +0 -0
  468. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/respond.ts +0 -0
  469. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/router.ts +0 -0
  470. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/server.ts +0 -0
  471. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/store.ts +0 -0
  472. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/types.ts +0 -0
  473. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/src/validate.ts +0 -0
  474. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/tests/auth.test.ts +0 -0
  475. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/tests/health.test.ts +0 -0
  476. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/tests/helpers.ts +0 -0
  477. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/tests/links.test.ts +0 -0
  478. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/tests/notes.test.ts +0 -0
  479. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/tests/persist.test.ts +0 -0
  480. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/tests/ratelimit.test.ts +0 -0
  481. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/tests/router.test.ts +0 -0
  482. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/tests/stats.test.ts +0 -0
  483. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/tests/store.test.ts +0 -0
  484. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/tests/validate.test.ts +0 -0
  485. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/fixtures/templates/ts-api/tsconfig.json +0 -0
  486. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/flows/f10_recovery_ladder.ts +0 -0
  487. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/flows/f12_learning_loop.ts +0 -0
  488. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/flows/f1_headless.ts +0 -0
  489. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/flows/f4_cost_budget.ts +0 -0
  490. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/flows/f5_task_dag_worktree.ts +0 -0
  491. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/flows/f6_resume_lineage.ts +0 -0
  492. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/flows/f7_permissions_plan.ts +0 -0
  493. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/flows/f9_offline_reconnect.ts +0 -0
  494. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/gen/attempt.ts +0 -0
  495. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/gen/build_index.ts +0 -0
  496. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/gen/calibrate.ts +0 -0
  497. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/gen/calibrate_all.ts +0 -0
  498. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/gen/calibration_report.ts +0 -0
  499. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/gen/materialize.ts +0 -0
  500. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/gen/savings_ab.ts +0 -0
  501. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/gen/savings_report.ts +0 -0
  502. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/gen/validate_task.ts +0 -0
  503. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/run.ts +0 -0
  504. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/_example/ex-001/bug.patch +0 -0
  505. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/_example/ex-001/hidden_tests.patch +0 -0
  506. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/_example/ex-001/task.json +0 -0
  507. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/calibration.jsonl +0 -0
  508. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-001/bug.patch +0 -0
  509. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-001/hidden_tests.patch +0 -0
  510. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-001/task.json +0 -0
  511. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-002/bug.patch +0 -0
  512. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-002/hidden_tests.patch +0 -0
  513. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-002/task.json +0 -0
  514. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-003/bug.patch +0 -0
  515. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-003/hidden_tests.patch +0 -0
  516. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-003/task.json +0 -0
  517. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-004/bug.patch +0 -0
  518. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-004/hidden_tests.patch +0 -0
  519. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-004/task.json +0 -0
  520. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-005/hidden_tests.patch +0 -0
  521. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-005/oracle.patch +0 -0
  522. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-005/task.json +0 -0
  523. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-006/bug.patch +0 -0
  524. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-006/hidden_tests.patch +0 -0
  525. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/js-lib/jl-006/task.json +0 -0
  526. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-001/hidden_tests.patch +0 -0
  527. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-001/oracle.patch +0 -0
  528. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-001/task.json +0 -0
  529. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-002/hidden_tests.patch +0 -0
  530. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-002/oracle.patch +0 -0
  531. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-002/task.json +0 -0
  532. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-003/hidden_tests.patch +0 -0
  533. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-003/oracle.patch +0 -0
  534. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-003/task.json +0 -0
  535. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-004/hidden_tests.patch +0 -0
  536. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-004/oracle.patch +0 -0
  537. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-004/task.json +0 -0
  538. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-005/hidden_tests.patch +0 -0
  539. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-005/oracle.patch +0 -0
  540. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-005/task.json +0 -0
  541. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-006/hidden_tests.patch +0 -0
  542. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-006/oracle.patch +0 -0
  543. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-006/task.json +0 -0
  544. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-007/hidden_tests.patch +0 -0
  545. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-007/oracle.patch +0 -0
  546. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-007/task.json +0 -0
  547. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-008/hidden_tests.patch +0 -0
  548. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-008/oracle.patch +0 -0
  549. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-008/task.json +0 -0
  550. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-009/hidden_tests.patch +0 -0
  551. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-009/oracle.patch +0 -0
  552. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-009/task.json +0 -0
  553. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-010/hidden_tests.patch +0 -0
  554. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-010/oracle.patch +0 -0
  555. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-010/task.json +0 -0
  556. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-011/hidden_tests.patch +0 -0
  557. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-011/oracle.patch +0 -0
  558. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-011/task.json +0 -0
  559. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-012/hidden_tests.patch +0 -0
  560. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-012/oracle.patch +0 -0
  561. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/katas/ka-012/task.json +0 -0
  562. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-001/bug.patch +0 -0
  563. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-001/hidden_tests.patch +0 -0
  564. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-001/task.json +0 -0
  565. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-002/bug.patch +0 -0
  566. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-002/hidden_tests.patch +0 -0
  567. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-002/task.json +0 -0
  568. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-003/bug.patch +0 -0
  569. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-003/hidden_tests.patch +0 -0
  570. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-003/task.json +0 -0
  571. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-004/bug.patch +0 -0
  572. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-004/hidden_tests.patch +0 -0
  573. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-004/task.json +0 -0
  574. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-005/bug.patch +0 -0
  575. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-005/hidden_tests.patch +0 -0
  576. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-005/task.json +0 -0
  577. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-006/bug.patch +0 -0
  578. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-006/hidden_tests.patch +0 -0
  579. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-006/task.json +0 -0
  580. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-007/bug.patch +0 -0
  581. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-007/hidden_tests.patch +0 -0
  582. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-007/task.json +0 -0
  583. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-008/bug.patch +0 -0
  584. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-008/hidden_tests.patch +0 -0
  585. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/py-cli/pc-008/task.json +0 -0
  586. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/savings_ab.jsonl +0 -0
  587. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/tasks.jsonl +0 -0
  588. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-001/hidden_tests.patch +0 -0
  589. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-001/oracle.patch +0 -0
  590. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-001/task.json +0 -0
  591. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-002/hidden_tests.patch +0 -0
  592. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-002/oracle.patch +0 -0
  593. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-002/task.json +0 -0
  594. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-003/hidden_tests.patch +0 -0
  595. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-003/oracle.patch +0 -0
  596. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-003/task.json +0 -0
  597. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-004/bug.patch +0 -0
  598. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-004/hidden_tests.patch +0 -0
  599. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-004/task.json +0 -0
  600. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-005/bug.patch +0 -0
  601. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-005/hidden_tests.patch +0 -0
  602. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-005/task.json +0 -0
  603. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-006/bug.patch +0 -0
  604. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-006/hidden_tests.patch +0 -0
  605. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-006/task.json +0 -0
  606. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-007/bug.patch +0 -0
  607. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-007/hidden_tests.patch +0 -0
  608. {minima_cli-0.11.0 → minima_cli-0.12.0}/bench/tasks/ts-api/ta-007/task.json +0 -0
  609. {minima_cli-0.11.0 → minima_cli-0.12.0}/client_sdk/minima_client/__init__.py +0 -0
  610. {minima_cli-0.11.0 → minima_cli-0.12.0}/client_sdk/minima_client/autocapture.py +0 -0
  611. {minima_cli-0.11.0 → minima_cli-0.12.0}/client_sdk/minima_client/client.py +0 -0
  612. {minima_cli-0.11.0 → minima_cli-0.12.0}/client_sdk/minima_client/errors.py +0 -0
  613. {minima_cli-0.11.0 → minima_cli-0.12.0}/client_sdk/minima_client/integrations/__init__.py +0 -0
  614. {minima_cli-0.11.0 → minima_cli-0.12.0}/client_sdk/minima_client/integrations/claude_code.py +0 -0
  615. {minima_cli-0.11.0 → minima_cli-0.12.0}/client_sdk/minima_client/integrations/litellm_router.py +0 -0
  616. {minima_cli-0.11.0 → minima_cli-0.12.0}/client_sdk/minima_client/integrations/openhands_router.py +0 -0
  617. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/README.md +0 -0
  618. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/agent-core-architecture.md +0 -0
  619. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/agent-core-implementation-plan.md +0 -0
  620. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/api-reference.md +0 -0
  621. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/client-sdk.md +0 -0
  622. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/concepts.md +0 -0
  623. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/configuration.md +0 -0
  624. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/examples.md +0 -0
  625. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/feature-gap-analysis.md +0 -0
  626. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/getting-started.md +0 -0
  627. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/goals-feature-plan.md +0 -0
  628. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/ground-truth-tui-plan.md +0 -0
  629. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/harness.md +0 -0
  630. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/multi-tenancy.md +0 -0
  631. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/operations.md +0 -0
  632. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/publishing.md +0 -0
  633. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs/seeding.md +0 -0
  634. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/.dockerignore +0 -0
  635. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/Dockerfile +0 -0
  636. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/components/Accordion.tsx +0 -0
  637. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/components/Badge.tsx +0 -0
  638. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/components/Card.tsx +0 -0
  639. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/components/CardGroup.tsx +0 -0
  640. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/components/Frame.tsx +0 -0
  641. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/components/Note.tsx +0 -0
  642. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/components/PageHeader.tsx +0 -0
  643. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/components/Steps.tsx +0 -0
  644. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/components/Tabs.tsx +0 -0
  645. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/components/index.ts +0 -0
  646. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/components/sidebar.ts +0 -0
  647. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/netlify.toml +0 -0
  648. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/nginx.conf +0 -0
  649. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/package-lock.json +0 -0
  650. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/package.json +0 -0
  651. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/api-reference/endpoints.mdx +0 -0
  652. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/harness/cli.mdx +0 -0
  653. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/harness/configuration.mdx +0 -0
  654. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/harness/installation.mdx +0 -0
  655. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/harness/interactive.mdx +0 -0
  656. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/harness/overview.mdx +0 -0
  657. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/harness/routing.mdx +0 -0
  658. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/harness/sessions.mdx +0 -0
  659. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/harness/tools.mdx +0 -0
  660. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/harness/troubleshooting.mdx +0 -0
  661. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/index.mdx +0 -0
  662. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/sdk/client-sdk.mdx +0 -0
  663. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/sdk/concepts.mdx +0 -0
  664. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/sdk/examples.mdx +0 -0
  665. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/pages/sdk/getting-started.mdx +0 -0
  666. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/public/images/favicon.png +0 -0
  667. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/public/images/logo-dark.svg +0 -0
  668. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/public/images/logo-light.svg +0 -0
  669. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/public/styles/global.css +0 -0
  670. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/tsconfig.json +0 -0
  671. {minima_cli-0.11.0 → minima_cli-0.12.0}/docs-site/vocs.config.ts +0 -0
  672. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/01_quickstart.sh +0 -0
  673. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/02_recommend_and_feedback.py +0 -0
  674. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/03_constraints_and_tradeoff.py +0 -0
  675. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/04_workflow.py +0 -0
  676. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/05_autocapture.py +0 -0
  677. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/06_routed_llm_call.py +0 -0
  678. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/07_multitenant_admin.py +0 -0
  679. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/README.md +0 -0
  680. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/agent_escalation.py +0 -0
  681. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/agent_escalation_learn.py +0 -0
  682. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/agent_gemini.py +0 -0
  683. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/agent_retention.py +0 -0
  684. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/agent_warmup.py +0 -0
  685. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/agent_warmup_vary.py +0 -0
  686. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/metrics_demo.py +0 -0
  687. {minima_cli-0.11.0 → minima_cli-0.12.0}/examples/smoke_test.py +0 -0
  688. {minima_cli-0.11.0 → minima_cli-0.12.0}/maybe.js +0 -0
  689. {minima_cli-0.11.0 → minima_cli-0.12.0}/maybe.ts +0 -0
  690. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/.gitignore +0 -0
  691. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/biome.json +0 -0
  692. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/bun.lock +0 -0
  693. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/scripts/build-all.ts +0 -0
  694. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/scripts/install.sh +0 -0
  695. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/scripts/stub-devtools.ts +0 -0
  696. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/agent/agent.ts +0 -0
  697. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/agent/events.ts +0 -0
  698. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/agent/loop.ts +0 -0
  699. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/agent/state.ts +0 -0
  700. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/compat.ts +0 -0
  701. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/events.ts +0 -0
  702. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/index.ts +0 -0
  703. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/provider_catalog.ts +0 -0
  704. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/provider_quirks.ts +0 -0
  705. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/providers/_common.ts +0 -0
  706. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/providers/anthropic.ts +0 -0
  707. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/providers/base.ts +0 -0
  708. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/providers/faux.ts +0 -0
  709. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/providers/google.ts +0 -0
  710. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/providers/index.ts +0 -0
  711. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/providers/openai_compat.ts +0 -0
  712. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/registry.ts +0 -0
  713. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/stream.ts +0 -0
  714. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/types.ts +0 -0
  715. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/ai/usage.ts +0 -0
  716. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/db/metrics.ts +0 -0
  717. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/db/sink.ts +0 -0
  718. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/errtext.ts +0 -0
  719. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/index.ts +0 -0
  720. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/behavior.ts +0 -0
  721. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/budget.ts +0 -0
  722. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/catalog.ts +0 -0
  723. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/check.ts +0 -0
  724. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/client.ts +0 -0
  725. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/errors.ts +0 -0
  726. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/judge.ts +0 -0
  727. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/mapping.ts +0 -0
  728. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/memory.ts +0 -0
  729. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/meter.ts +0 -0
  730. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/mubit_memory_factory.ts +0 -0
  731. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/router.ts +0 -0
  732. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/schemas.ts +0 -0
  733. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/minima/spawn.ts +0 -0
  734. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/run_modes.ts +0 -0
  735. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/session/store.ts +0 -0
  736. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/_ddg.ts +0 -0
  737. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/_exa.ts +0 -0
  738. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/_io.ts +0 -0
  739. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/_search.ts +0 -0
  740. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/apply_patch.ts +0 -0
  741. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/at_mentions.ts +0 -0
  742. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/bash.ts +0 -0
  743. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/edit.ts +0 -0
  744. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/glob.ts +0 -0
  745. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/grep.ts +0 -0
  746. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/ls.ts +0 -0
  747. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/question.ts +0 -0
  748. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/read.ts +0 -0
  749. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/schema.ts +0 -0
  750. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/task.ts +0 -0
  751. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/types.ts +0 -0
  752. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/web_fetch.ts +0 -0
  753. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/web_search.ts +0 -0
  754. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tools/write.ts +0 -0
  755. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tui/auth.ts +0 -0
  756. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tui/child_tree.tsx +0 -0
  757. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tui/compact.ts +0 -0
  758. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tui/config_store.ts +0 -0
  759. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tui/context.ts +0 -0
  760. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tui/current_action.ts +0 -0
  761. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tui/model-picker.tsx +0 -0
  762. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tui/projects.ts +0 -0
  763. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/tui/routing-warnings.ts +0 -0
  764. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/types.d.ts +0 -0
  765. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/src/version.ts +0 -0
  766. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/ai.test.ts +0 -0
  767. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/anthropic.test.ts +0 -0
  768. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/apply_patch.test.ts +0 -0
  769. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/auth.test.ts +0 -0
  770. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/bash-group.test.ts +0 -0
  771. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/budget.test.ts +0 -0
  772. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/candidate-filter.test.ts +0 -0
  773. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/catalog.test.ts +0 -0
  774. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/check.test.ts +0 -0
  775. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/client.test.ts +0 -0
  776. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/config_env.test.ts +0 -0
  777. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/config_store.test.ts +0 -0
  778. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/current_action.test.ts +0 -0
  779. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/effort.test.ts +0 -0
  780. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/error-ux.test.ts +0 -0
  781. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/google.test.ts +0 -0
  782. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/grounded.test.ts +0 -0
  783. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/hooks.test.ts +0 -0
  784. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/isolation.test.ts +0 -0
  785. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/judge-cost-booking.test.ts +0 -0
  786. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/judge.test.ts +0 -0
  787. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/memory.test.ts +0 -0
  788. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/minima_memory.test.ts +0 -0
  789. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/openai_compat.test.ts +0 -0
  790. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/run_modes.test.ts +0 -0
  791. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/session.test.ts +0 -0
  792. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/spawn.test.ts +0 -0
  793. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/task.test.ts +0 -0
  794. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/thinking.test.ts +0 -0
  795. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/tips.test.ts +0 -0
  796. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/tools.test.ts +0 -0
  797. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tests/why.test.ts +0 -0
  798. {minima_cli-0.11.0 → minima_cli-0.12.0}/packages/tui/tsconfig.json +0 -0
  799. {minima_cli-0.11.0 → minima_cli-0.12.0}/packaging/homebrew/README.md +0 -0
  800. {minima_cli-0.11.0 → minima_cli-0.12.0}/packaging/homebrew/render_formula.py +0 -0
  801. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_125009/recall_debug.jsonl +0 -0
  802. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_125009/strategies_run1.json +0 -0
  803. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_125009/strategies_run2.json +0 -0
  804. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_125009/strategies_run3.json +0 -0
  805. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_125009/tasks.jsonl +0 -0
  806. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_130252/REPORT.md +0 -0
  807. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_130252/recall_debug.jsonl +0 -0
  808. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_130252/strategies_run1.json +0 -0
  809. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_130252/strategies_run2.json +0 -0
  810. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_130252/strategies_run3.json +0 -0
  811. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_130252/strategies_run4.json +0 -0
  812. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_130252/strategies_run5.json +0 -0
  813. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_130252/summary.json +0 -0
  814. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_130252/tasks.jsonl +0 -0
  815. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_182838/recall_debug.jsonl +0 -0
  816. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_182838/strategies_run1.json +0 -0
  817. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_182838/strategies_run2.json +0 -0
  818. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_182838/tasks.jsonl +0 -0
  819. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_183343/REPORT.md +0 -0
  820. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_183343/memory_audit.json +0 -0
  821. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_183343/recall_debug.jsonl +0 -0
  822. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_183343/strategies_run1.json +0 -0
  823. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_183343/strategies_run2.json +0 -0
  824. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_183343/strategies_run3.json +0 -0
  825. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_183343/strategies_run4.json +0 -0
  826. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_183343/strategies_run5.json +0 -0
  827. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_183343/summary.json +0 -0
  828. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260612_183343/tasks.jsonl +0 -0
  829. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260615_101732/REPORT.md +0 -0
  830. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260615_101732/memory_audit.json +0 -0
  831. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260615_101732/recall_debug.jsonl +0 -0
  832. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260615_101732/strategies_run1.json +0 -0
  833. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260615_101732/strategies_run2.json +0 -0
  834. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260615_101732/strategies_run3.json +0 -0
  835. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260615_101732/strategies_run4.json +0 -0
  836. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260615_101732/strategies_run5.json +0 -0
  837. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260615_101732/summary.json +0 -0
  838. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260615_101732/tasks.jsonl +0 -0
  839. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260624_103307/memory_audit.json +0 -0
  840. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260624_103307/recall_debug.jsonl +0 -0
  841. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/20260624_103307/tasks.jsonl +0 -0
  842. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/escalate_20260615_133108/cold_probe.json +0 -0
  843. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/escalate_20260615_133108/summary.json +0 -0
  844. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/escalate_20260615_133108/tasks.jsonl +0 -0
  845. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/escalate_20260615_134209/REPORT.md +0 -0
  846. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/escalate_20260615_134209/cold_probe.json +0 -0
  847. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/escalate_20260615_134209/summary.json +0 -0
  848. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/escalate_20260615_134209/tasks.jsonl +0 -0
  849. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/escalation_20260612_201825/REPORT.md +0 -0
  850. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/escalation_20260612_201825/results.jsonl +0 -0
  851. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/escalation_20260612_201825/summary.json +0 -0
  852. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/playground_p1/_manifest.json +0 -0
  853. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/playground_p1/calibration.json +0 -0
  854. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/playground_p1/feedback.json +0 -0
  855. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/playground_p1/health.json +0 -0
  856. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/playground_p1/models.json +0 -0
  857. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/playground_p1/recommend.json +0 -0
  858. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/playground_p1/savings.json +0 -0
  859. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/playground_p1/strategies.json +0 -0
  860. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/playground_p1/workflow.json +0 -0
  861. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/retention_20260612_201828/REPORT.md +0 -0
  862. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/retention_20260612_201828/results.jsonl +0 -0
  863. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/retention_20260612_201828/summary.json +0 -0
  864. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/warmupvary_20260615_123818/REPORT.md +0 -0
  865. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/warmupvary_20260615_123818/summary.json +0 -0
  866. {minima_cli-0.11.0 → minima_cli-0.12.0}/runs/warmupvary_20260615_123818/tasks.jsonl +0 -0
  867. {minima_cli-0.11.0 → minima_cli-0.12.0}/scripts/eval/classify_dataset.json +0 -0
  868. {minima_cli-0.11.0 → minima_cli-0.12.0}/scripts/eval/eval_classify.py +0 -0
  869. {minima_cli-0.11.0 → minima_cli-0.12.0}/scripts/test-routing-web.ts +0 -0
  870. {minima_cli-0.11.0 → minima_cli-0.12.0}/scripts/test-routing.sh +0 -0
  871. {minima_cli-0.11.0 → minima_cli-0.12.0}/scripts/test-routing.ts +0 -0
  872. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/__init__.py +0 -0
  873. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/api/__init__.py +0 -0
  874. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/api/auth.py +0 -0
  875. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/api/errors.py +0 -0
  876. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/api/routers/__init__.py +0 -0
  877. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/api/routers/calibration.py +0 -0
  878. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/api/routers/capabilities.py +0 -0
  879. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/api/routers/feedback.py +0 -0
  880. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/api/routers/health.py +0 -0
  881. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/api/routers/models.py +0 -0
  882. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/api/routers/recommend.py +0 -0
  883. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/api/routers/savings.py +0 -0
  884. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/api/routers/strategies.py +0 -0
  885. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/catalog/__init__.py +0 -0
  886. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/catalog/data/benchmark_priors.json +0 -0
  887. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/catalog/data/capability_priors.json +0 -0
  888. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/catalog/data/model_aliases.json +0 -0
  889. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/catalog/merge.py +0 -0
  890. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/catalog/refresh.py +0 -0
  891. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/catalog/sources/__init__.py +0 -0
  892. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/catalog/sources/litellm.py +0 -0
  893. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/catalog/sources/openrouter.py +0 -0
  894. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/catalog/store.py +0 -0
  895. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/config.py +0 -0
  896. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/deps.py +0 -0
  897. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/logging.py +0 -0
  898. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/main.py +0 -0
  899. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/memory/__init__.py +0 -0
  900. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/memory/adapter.py +0 -0
  901. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/memory/keys.py +0 -0
  902. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/memory/records.py +0 -0
  903. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/memory/threadpool.py +0 -0
  904. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/metrics/__init__.py +0 -0
  905. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/metrics/calibration.py +0 -0
  906. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/metrics/ope.py +0 -0
  907. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/metrics/report.py +0 -0
  908. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/metrics/savings.py +0 -0
  909. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/recommender/__init__.py +0 -0
  910. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/recommender/_pg_pool.py +0 -0
  911. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/recommender/_redis_client.py +0 -0
  912. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/recommender/aggregate.py +0 -0
  913. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/recommender/classify.py +0 -0
  914. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/recommender/decisionlog.py +0 -0
  915. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/recommender/durablerefs.py +0 -0
  916. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/recommender/engine.py +0 -0
  917. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/recommender/escalation.py +0 -0
  918. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/recommender/recstore.py +0 -0
  919. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/recommender/score.py +0 -0
  920. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/recommender/types.py +0 -0
  921. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/schemas/__init__.py +0 -0
  922. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/schemas/capabilities.py +0 -0
  923. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/schemas/common.py +0 -0
  924. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/schemas/feedback.py +0 -0
  925. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/schemas/models_catalog.py +0 -0
  926. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/schemas/recommend.py +0 -0
  927. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/schemas/savings.py +0 -0
  928. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/schemas/strategies.py +0 -0
  929. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/schemas/workflow.py +0 -0
  930. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/seeding/__init__.py +0 -0
  931. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/seeding/items.py +0 -0
  932. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/seeding/llmrouterbench.py +0 -0
  933. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/seeding/routerbench.py +0 -0
  934. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/seeding/run_seed.py +0 -0
  935. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/seeding/synthetic.py +0 -0
  936. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/tenancy/__init__.py +0 -0
  937. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/tenancy/context.py +0 -0
  938. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/tenancy/passthrough.py +0 -0
  939. {minima_cli-0.11.0 → minima_cli-0.12.0}/src/minima/version.py +0 -0
  940. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/__init__.py +0 -0
  941. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/conftest.py +0 -0
  942. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/eval/BENCHMARKS.md +0 -0
  943. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/eval/CRITERIA.md +0 -0
  944. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/eval/RESULTS.md +0 -0
  945. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/eval/__init__.py +0 -0
  946. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/eval/harness.py +0 -0
  947. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/eval/llmrouterbench_config.py +0 -0
  948. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/eval/prompt_length_benchmark.py +0 -0
  949. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/eval/test_llmrouterbench_savings.py +0 -0
  950. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/eval/test_routerbench_savings.py +0 -0
  951. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/factories.py +0 -0
  952. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/integration/test_auth.py +0 -0
  953. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/integration/test_feedback_loop.py +0 -0
  954. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/integration/test_lesson_promotion.py +0 -0
  955. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/integration/test_measurement_api.py +0 -0
  956. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/integration/test_observed_cost_ranking.py +0 -0
  957. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/integration/test_recommend_api.py +0 -0
  958. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/integration/test_strategies_api.py +0 -0
  959. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/integration/test_workflow_models_health.py +0 -0
  960. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/live/test_cost_savings_spotcheck_live.py +0 -0
  961. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/live/test_escalation_fixes.py +0 -0
  962. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/live/test_full_surface_live.py +0 -0
  963. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/live/test_mubit_roundtrip.py +0 -0
  964. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/live/test_phase3_live.py +0 -0
  965. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/live/test_recall_params_live.py +0 -0
  966. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_accumulating_records.py +0 -0
  967. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_adapters.py +0 -0
  968. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_aggregate.py +0 -0
  969. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_aggregate_decay.py +0 -0
  970. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_autocapture.py +0 -0
  971. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_calibration_fit.py +0 -0
  972. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_capabilities.py +0 -0
  973. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_classify_benchmark.py +0 -0
  974. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_classify_keys.py +0 -0
  975. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_cluster.py +0 -0
  976. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_cost_band.py +0 -0
  977. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_decisionlog.py +0 -0
  978. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_escalation.py +0 -0
  979. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_iterations.py +0 -0
  980. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_latency_quality.py +0 -0
  981. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_lookup_parse.py +0 -0
  982. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_metrics.py +0 -0
  983. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_metrics_demo.py +0 -0
  984. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_neighbor_classify.py +0 -0
  985. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_ope.py +0 -0
  986. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_prompt_length_benchmark.py +0 -0
  987. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_records_catalog.py +0 -0
  988. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_recstore_sqlite.py +0 -0
  989. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_score.py +0 -0
  990. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_sdk_usage.py +0 -0
  991. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_store_backends.py +0 -0
  992. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_strategies.py +0 -0
  993. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_tenancy.py +0 -0
  994. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_thompson.py +0 -0
  995. {minima_cli-0.11.0 → minima_cli-0.12.0}/tests/unit/test_ts_mirror.py +0 -0
@@ -0,0 +1,610 @@
1
+ # Changelog
2
+
3
+ All notable changes to Minima are documented here. The format follows
4
+ [Keep a Changelog](https://keepachangelog.com/), and the project aims to follow
5
+ [Semantic Versioning](https://semver.org/).
6
+
7
+ ## [0.12.0] - 2026-07-20
8
+
9
+ The Big Plan harness: the TUI's plan workflow grows verification teeth, and the
10
+ renderer goes inline-only. A TUI/harness release — the server wire contract is
11
+ unchanged from 0.11.0.
12
+
13
+ ### Changed
14
+ - **Inline is the only renderer** — the fullscreen mode and docked sidebar are
15
+ deleted. Claude-Code-style inline panels replace them: hard-wrapped markdown with
16
+ verbatim code fences, a shared line classifier so the render, the height
17
+ estimate, and the panel reader can never disagree, and a stream-reseat fix so the
18
+ composer no longer strands mid-screen after a tall streamed reply commits.
19
+ - **The plan workflow is enforced, not suggested** (ground truth is on by default,
20
+ `MINIMA_TUI_GROUND_TRUTH=0` opts out): plan steps carry `verify` shell commands;
21
+ a step can't be marked done while its check fails (red→green vs a captured
22
+ baseline); doom-loop and step-cap guards break spirals
23
+ (`MINIMA_TUI_STOP_STRIKES` / `MINIMA_TUI_SPIRAL_REPEATS` / `MINIMA_TUI_STEP_CAP`);
24
+ confidence tiers drive the UI (🟢 glide / 🟡 flag / 🔴 stop-and-ask); gate
25
+ verdicts are graded into outcome labels by tier (`MINIMA_TUI_GRADED_OUTCOME=0`
26
+ for the binary rule) while `evidence_source="gate"` stays green-tier-only.
27
+ - **BREAKING: verify commands require consent.** Model-authored `verify` commands
28
+ are shown and approved before they execute — approval is session-only and a
29
+ mutated command re-prompts. Headless `-p` runs **fail closed** (gates go
30
+ unrunnable) unless `MINIMA_TUI_ALLOW_VERIFY=1` is set.
31
+ - **Shift+Tab cycles primary agents** — Build → accept-edits → Plan; plan mode
32
+ asks first on write/edit/bash and blocks todowrite/task, with a universal exit
33
+ gate so finalized ground truth is the way out of a plan conversation.
34
+ - The plan council convenes in parallel and only on substantive turns (follow-up
35
+ plan turns ~5× faster), with a live progress line and a plan-draft view.
36
+ - Fullscreen defaults to selection-first mouse — native select/copy works out of
37
+ the box.
38
+
39
+ ### Added
40
+ - **Named sessions and `--resume`** (by name or id), with the context status line
41
+ restored on resume.
42
+ - **Git-shadow checkpoints, `/undo`, and `/rewind`** — per-run snapshots under
43
+ `refs/minima/ckpt/…` with byte-identical restore, rewind markers on the SQLite
44
+ events spine, and a turn picker with conversation/code/both restore modes.
45
+ - **Session usage ledger** with per-turn `{model, tokens, cost}`, a
46
+ table-of-contents overlay (**Ctrl+T**) with per-section cost, a ground-truth plan
47
+ overview (**Ctrl+G**) with per-step cost and tiers, and `/why` verification views
48
+ backed by the same surface.
49
+ - A mid-run tasks footer (**Ctrl+B** toggles, hide persists across sessions).
50
+ - A PTY invariant suite (`make tui-verify`) — 18 scripted terminal scenarios
51
+ asserting echo latency, zero scrollback wipes, no alt-screen/mouse-capture
52
+ leaks, bottom-anchored composer, render budgets, and the plan/consent flows.
53
+
54
+ ### Fixed
55
+ - Prompt-echo latency, scrolling and text-selection, and input-stability issues in
56
+ the inline TUI.
57
+ - The permission overlay keyed preview rows by content prefix, collapsing
58
+ same-prefix verify commands (duplicate React keys could drop rows on the one
59
+ surface that must show every shell command before approval); rows are keyed by
60
+ position now.
61
+ - `todowrite` accepts an unencoded array argument instead of failing on
62
+ `JSON.parse`.
63
+ - The tool-body height ruler measured at the old fullscreen interior width while
64
+ the inline renderer paints full-width — the 1-row over-reserve floated the
65
+ composer off the terminal bottom when a plan-mode notice committed.
66
+
67
+ ## [0.11.0] - 2026-07-16
68
+
69
+ The learning-loop rework: honest labels in, fabricated ones out, and a posterior
70
+ that actually accumulates. Verified end-to-end against Mubit v0.12.0 (locally
71
+ built and the deployed instance) before release.
72
+
73
+ ### Changed
74
+ - **Truth rule across the wire** — quality is nullable everywhere; feedback carries
75
+ `evidence_source` (`gate` | `judge` | `human` | `none`) as the provenance of the
76
+ quality signal (the legacy `judged`/`verified_in_production` flags still map);
77
+ unlabeled turns and infra failures (`error_cause="infra"`) are cost/latency
78
+ telemetry only — they never touch the success aggregate, reinforcement, or
79
+ calibration. The fabricated 0.9-quality default is gone.
80
+ - **Ground truth and honest labels are the default** — the GT verification spine is
81
+ ON (`MINIMA_TUI_GROUND_TRUTH=0` opts out); green gate verdicts are the label
82
+ source for gated turns, a sampled LLM judge (`MINIMA_JUDGE_SAMPLE`, default 15%)
83
+ labels a slice of the rest, and judge spend stays booked to the session wallet.
84
+ - **Accumulating evidence** — the durable (cluster, model) record is a
85
+ read-modify-write upsert carrying outcome counters and sample rings, so organic
86
+ evidence no longer caps at n≈1 and one failure can't erase history. Recall embeds
87
+ the same gist text the write path stores, and a budgeted keyed lookup
88
+ (`/v2/core/lookup`, `evidence_only` recall) gives an exact-match evidence channel
89
+ (pairs with Mubit v0.12.0, now live).
90
+ - **Thompson sampling is the default selection policy** — calibrated posterior
91
+ sampling with a capped explore share (`minima_selection_policy=argmin` or
92
+ `minima_argmin_orgs` opt out). The selection zoo (collapse guard, epsilon,
93
+ exploration bonus, shadow UCB, evidence-mass IPW) is deleted, and
94
+ `GET /v1/policy-value` reports doubly-robust regret-vs-oracle.
95
+ - **Benchmark-derived catalog priors** replace hand-tuned capability numbers;
96
+ cross-generation seed aliasing is deleted (no more crediting 2024 outcomes to
97
+ 2026 model ids); `minima-seed` defaults to the synthetic pack.
98
+ - **The pre-decision LLM reasoner is deleted** — escalation is diagnostic-only
99
+ (`escalation_suggested:*` warnings + decision-log reasons); the harness recovery
100
+ ladder owns the cascade. Config shrinks 97 → 64 settings; recommendation-store
101
+ I/O and calibrator refits run off the event loop; a TS-mirror contract test pins
102
+ the wire schemas to `packages/tui/src/minima/schemas.ts`.
103
+ - **The harness is a reference client** — phase tags, difficulty, and
104
+ `chosen_effort` go on the wire; cache-boundary stickiness prefers the incumbent
105
+ model mid-session when the tradeoff is marginal.
106
+
107
+ ### Added
108
+ - **Typed SDK feedback** — `Usage(input_tokens, output_tokens, cost_usd, latency_ms)`
109
+ on `feedback()` in both clients, honest autocapture framing, and a loop quickstart
110
+ in the docs.
111
+ - **Harness adapters** (`pip install "minima-cli[adapters]"`) — LiteLLM custom
112
+ routing strategy + realized-cost feedback logger, OpenHands `RouterLLM`, and a
113
+ `minima-route` CLI for shell-level integrations.
114
+
115
+ ### Fixed
116
+ - **Reinforcement id-space discipline** — keyed-lookup hits carry numeric core-plane
117
+ node ids, which are never sent as reinforcement references anymore; the durable
118
+ record is the primary reference so one unresolvable neighbor can't drop the whole
119
+ reinforcement call (pairs with Mubit's cross-run `record_outcome` resolution fix).
120
+ - Live-suite tests updated to the new contracts (diagnostic-only escalation,
121
+ deterministic asserts pinned to argmin) and adapter tests skip cleanly when the
122
+ frameworks are absent.
123
+
124
+ ## [0.10.0] - 2026-07-12
125
+
126
+ ### Fixed
127
+ - **Ground-truth spine hardened end-to-end** (still opt-in via `MINIMA_TUI_GROUND_TRUTH=1`):
128
+ - Gate verdicts now carry the `rec_id` of the turn that minted them, so grounded
129
+ feedback can never be poisoned by a stale gate from an earlier prompt, and a
130
+ blocked step's red verdict is superseded by its retry (content-first flip
131
+ identity). Plans close when their last flip is verified, instead of haunting
132
+ every later turn.
133
+ - Step identity survives rewording (token-set matching), a step's baseline resets
134
+ when its `verify` command changes (no fabricated red→green), and resuming a run
135
+ re-adopts its active plan.
136
+ - Bash writes and sub-agent writes are attributed to the run; unattributed
137
+ ("blind") writes cap confidence at 🟡 instead of silently passing.
138
+ - Check runner: verify commands run in their own process group and are killed as a
139
+ group on timeout/abort (no orphaned children), run under a minimal env allowlist,
140
+ and honor `MINIMA_TUI_CHECK_TIMEOUT`.
141
+ - `/plan` council: injected findings are fenced as untrusted data, the whole plan
142
+ turn aborts cleanly on Esc (partial research kept), and each council round is
143
+ budget-metered ($0.25/round soft cap).
144
+ - **Default path** (no flag required): the SQLite migration runner is race-safe across
145
+ concurrent sessions and self-heals a previously wedged DB; a bash tool timeout/abort
146
+ kills the whole process group; a throwing after-hook no longer wedges the agent loop;
147
+ the `task` tool is blocked in plan mode.
148
+ - Gate-focus modal: keyboard verdict overrides (approve / reject / steer with a note)
149
+ reach the correct gate, and the TUI footer/overlay no longer overflow on narrow
150
+ terminals.
151
+
152
+ ### Added
153
+ - With `MINIMA_LLM_JUDGE=1`, judge grading spend is now booked to the session wallet —
154
+ visible in `/cost` (as `judge overhead`), the footer, and enforced by `--budget` —
155
+ while staying out of feedback's `actual_cost_usd` so the cost model Minima learns
156
+ from stays clean.
157
+
158
+ ## [0.9.0] - 2026-07-10
159
+
160
+ ### Added
161
+ - **Ground-Truth verification spine (experimental, opt-in via `MINIMA_TUI_GROUND_TRUTH=1`)** —
162
+ the agent's plan steps can carry `verify` shell commands; the harness runs them
163
+ (pre-work baseline → done-gate red→green), records every verdict in the SQLite ledger,
164
+ and derives a confidence tier that drives the UI (🟢 glide / 🟡 flag / 🔴 stop) plus
165
+ grounded, deterministic-over-judge feedback to Minima. Includes `/why` (inspect why the
166
+ harness trusts/distrusts a step), a plan footer strip, and red-gate override capture.
167
+ Off by default — with the flag unset the CLI behaves exactly as 0.8.x.
168
+ - **`/plan` planning workflow (part of the same experimental gate)** — a planner persona
169
+ plus a design council of sub-agents that researches, drafts, critiques, and synthesizes
170
+ a `GROUND_TRUTH.md` design document (`/plan start · status · finalize · cancel`).
171
+ Without the flag, `/plan` stays the read-only toggle it always was.
172
+ - Permission hardening for verify commands: every LLM-authored `verify` is shown verbatim
173
+ in the approval overlay (with an explicit "… +N more lines" marker when truncated), and
174
+ a stored "always allow" on todowrite never covers a verify command the user hasn't seen.
175
+
176
+ ### Changed
177
+ - Transcript rendering is memoized (windowing + `memo()` message rows, render-time ref
178
+ mutations moved to effects) — typing no longer re-renders the whole transcript per
179
+ keystroke.
180
+ - Repo-root `CLAUDE.md` added (agent-facing repo guide).
181
+
182
+ ## [0.8.0] - 2026-07-07
183
+
184
+ ### Fixed
185
+ - **Learning loop now takes effect** — the client sends a stable `user_id` on every
186
+ recommend, so Minima's memory recall actually surfaces your prior outcomes and routing
187
+ can move off the cold-start prior. Previously no `user_id` was sent, so server-side
188
+ recall was always empty and `decision_basis` never left `prior`.
189
+ - **Esc reliably aborts** — pressing Esc now cancels during the routing/recommend phase
190
+ too (it was a no-op there, so the model still ran), and an aborted turn no longer leaves
191
+ a dangling message that made the next prompt re-answer the previous one.
192
+ - **Web search/fetch work without an Exa key** — `web_search` and `web_fetch` fall back to
193
+ DuckDuckGo when `EXA_API_KEY` is unset (they previously failed at call time); with a key
194
+ set they still prefer Exa.
195
+ - **Rendering** — long lines (routing warnings, reasoning, tool output) are clipped inside
196
+ their bordered cells instead of drawing past the border; the `escalation_suggested`
197
+ internal hint is no longer leaked into the info line; the question and `/tree` overlays
198
+ reserve their height so they can't corrupt terminal scrollback.
199
+
200
+ ### Changed
201
+ - Learning-loop write failures are now surfaced — a muted `ℹ learning loop: …` line in the
202
+ TUI and a `feedback_error` event in `--mode json` — instead of being silently swallowed.
203
+
204
+ ## [0.7.2] - 2026-07-06
205
+
206
+ ### Added (TUI)
207
+ - **Fullscreen renderer (new default)** — alternate screen buffer with the prompt glued
208
+ to the bottom row, height-accurate transcript windowing, and in-app history scrolling
209
+ (mouse wheel / trackpad on by default; PgUp/PgDn always work). Opt out with
210
+ `--no-fullscreen` or `MINIMA_TUI_INLINE=1` for the classic inline renderer with native
211
+ terminal scrollback.
212
+ - **Live current-action line** — while a tool runs, the footer shows what the agent is
213
+ doing right now (e.g. `⚙ bash: git diff --stat`), with `(+N more)` for parallel tools.
214
+ - **New tools**: `question` (ask the user mid-run, never permission-gated),
215
+ `apply_patch` (multi-file add/update/delete/move), and Exa-backed `web_search` +
216
+ `web_fetch` (require `EXA_API_KEY`).
217
+ - `--thinking LEVEL` is now actually applied (was parsed but ignored).
218
+ - Busy indicator with rotating tips; thinking states renamed to `reasoning`/`running`.
219
+
220
+ ### Fixed (TUI)
221
+ - **Esc / Ctrl+C abort a running turn** (was dead code behind the busy guard); a second
222
+ Ctrl+C within 2.5s force-quits even if a provider stream cannot be cancelled.
223
+ - Plan mode (read-only) blocks `apply_patch` alongside write/edit/bash.
224
+ - Live streaming region can never outgrow the viewport: over-budget final lines are
225
+ hard-sliced (fixes the fullscreen garble class and inline scrollback wipes).
226
+ - `/fork` and `/clone` no longer claim fake success — they say they're not implemented.
227
+ - glob/grep are permission-scoped as directory READS (`read from <dir>`) instead of
228
+ generic `run glob` prompts.
229
+
230
+ ### Changed (TUI)
231
+ - **Permission denials are reframed for the model** ("the user declined … do not retry
232
+ the call and do not attempt the same action through other tools") — stops the
233
+ sandbox-spiral where models retry or work around a deliberate user decline.
234
+ - Memory-recall block is annotated reference-only (do NOT run tools from recall).
235
+
236
+ ## [0.7.1] - 2026-07-05
237
+
238
+ ### Changed (API behavior — note for integrators)
239
+ - **`max_cost_per_call` is now a true hard filter.** When no model fits the budget,
240
+ `POST /v1/recommend` returns **422** (`"no model within max_cost_per_call budget"`)
241
+ instead of 200 with the cheapest over-budget model plus a `no_model_within_cost_budget`
242
+ warning. This matches the documented "hard filter" contract and the existing
243
+ no-candidates behavior. Callers who want "cheapest possible regardless of ceiling"
244
+ should use the cost-quality slider, not `max_cost_per_call`.
245
+ - **Auth rejects malformed bearer tokens.** A bearer token that is not in the Mubit key
246
+ format (`mbt_…`) now returns **401** before any work, instead of being accepted and
247
+ served from priors. A missing bearer with a server-configured `MUBIT_API_KEY` fallback
248
+ is unaffected.
249
+
250
+ ### Fixed
251
+ - **Cold-start catalog prices were stale.** The vendored fallback snapshot
252
+ (`capability_priors.json`) is refreshed from the live catalog (e.g. `claude-opus-4-8`
253
+ `15/75` → `5/25`), and a scheduled workflow now keeps it current so it stops drifting
254
+ by hand. (The auto-refresh updates prices for the curated model list; it does not add
255
+ new models — expanded provider coverage such as the gpt-5 family remains a separate
256
+ curation.)
257
+ - **Server version string can no longer drift.** `minima.__version__` (reported by
258
+ `/v1/health` and `/v1/capabilities`) now derives from installed package metadata instead
259
+ of a hardcoded constant that had silently lagged across releases.
260
+ - **Feedback reconciliation types the quality value honestly** as `float | None` — unjudged
261
+ rows keep `NULL`, no fabricated default (preserves the M-J2 fix).
262
+
263
+ ### Internal
264
+ - **PR CI added** — every PR now runs server (`ruff` + `pytest` + `mypy`) and TUI
265
+ (`bun test` + `tsc`) checks; the recommender is mypy-clean.
266
+
267
+ ## [0.7.0] - 2026-07-05
268
+
269
+ ### Added
270
+ - **`GET /v1/capabilities`** — server feature handshake (api version, honored constraint
271
+ fields, feature flags) so clients can gate enforce-mode features on what the server
272
+ actually supports instead of guessing. (#54)
273
+ - **Sub-agent tree visualization** — a live `▸ step [status] $cost` panel (`/tree`) fed by
274
+ tagged child events during multi-agent runs. (#55)
275
+ - **Git worktree isolation for parallel sub-agents** — `isolation: "workdir"` delegations run
276
+ in a temporary `git worktree` (with a dirty-tree warning and automatic cleanup), so parallel
277
+ children editing the same files can't clobber each other. (#55)
278
+ - **Delegation ops-rules + BLOCKED convention** — sub-agents get explicit operational rules,
279
+ boundary refusals surface as `BLOCKED` → `partial` outcome so the parent can tell, and the
280
+ task tool carries anti-retry guidance (no more re-running an identical failed DAG). (#59)
281
+
282
+ ### Fixed
283
+ - **Every Claude call timed out in the harness** — the Anthropic SDK was handed a timeout in
284
+ seconds where it expects milliseconds (a 30–60 ms budget), so every Claude stream/complete
285
+ call died with "Request timed out" and fed quality-0 failures into routing. (#56)
286
+ - **Quality-score fabrication in the feedback loop (M-J2)** — unjudged successes no longer
287
+ default to quality 0.9 in the server decision log; the harness now sends a `judged` flag and
288
+ unjudged rows reconcile with `quality = NULL`, so calibration and savings metrics stop
289
+ trusting values that were never measured. (#54)
290
+ - **Judge hardening** — empty-output guard (scores 0 without an API call), head+tail
291
+ truncation so tail requirements survive long outputs, `<response>` delimiters + scoped-trust
292
+ system prompt against response-embedded injection, and a `parseScore` fix for
293
+ "X out of 10" phrasing. (#57)
294
+ - **Gemini reasoner starvation** — advisory JSON calls (classify/rank) no longer burn their
295
+ entire token budget on thinking before emitting JSON; RANK_SYSTEM invariants hardened. (#58)
296
+
297
+ ### Notes
298
+ - `minima-cli` on PyPI resumes at 0.7.0: the project version had lagged at 0.5.0, so the
299
+ 0.6.0 release build was silently skipped by `--skip-existing` and 0.6.0 was never published.
300
+
301
+ ## [0.6.0] - 2026-07-02
302
+
303
+ Agent-core release (milestones M-A…M-I): cost-aware sub-agent orchestration — `task` tool
304
+ with sequential and parallel DAG fan-out under a semaphore, per-child routing, budgets and
305
+ timeouts; DB-backed `BudgetLedger` with graduated enforcement; SQLite persistence spine
306
+ (runs/events/decisions + rehydration); recovery ladder walking server-supplied rungs on
307
+ failure; effort routing Phase A + fleet metrics; feedback-loop poisoning fixes; feature-vector
308
+ classifier with strongest-signal scoring. *(Never published to PyPI — see the 0.7.0 note.)*
309
+
310
+ ## [0.5.2] - 2026-07-02
311
+
312
+ Fixed TUI viewport-overflow rendering corruption; docs rebrand (Manrope, "minima by Mubit"
313
+ nav logo, new favicon).
314
+
315
+ ## [0.5.1] - 2026-07-01
316
+
317
+ Mubit memory in the TS harness (recall-before-route + outcome write-back with stable session
318
+ ids); benign routing diagnostics no longer render as errors; live model catalog; docs migrated
319
+ to Vocs with a Homebrew install guide.
320
+
321
+ ## [0.5.0] - 2026-07-01
322
+
323
+ The TypeScript/Bun TUI becomes the shipped CLI: one-click `minima auth` (browser login,
324
+ per-repo project mapping, workspace provisioning), the Homebrew tap ships the compiled binary
325
+ instead of a Python venv formula, and a comprehensive routing/tool test suite lands.
326
+
327
+ ## [0.4.10] - 2026-06-26
328
+
329
+ ### Changed
330
+ - **`minima-cli` is now published to PyPI automatically on every release** — `pip install minima-cli`
331
+ is the official install (it bundles the `minima_client` SDK). A new CI job builds + uploads the
332
+ sdist/wheel alongside the GitHub release and prod deploy.
333
+
334
+ ### Fixed
335
+ - **Docs (API reference):** corrected the `GET /v1/health` response example (it returns `mubit`
336
+ not `memory`, `version 0.4.9`, plus `auth`/`reasoner` blocks and `catalog.cost_source`) and
337
+ clarified `status` is only `degraded` on a key-bearing probe; documented the real
338
+ `summary.realized` field set (it differs from `summary.estimated`); and fixed the `days`
339
+ parameter bound (`>0–365`) on `/v1/savings` and `/v1/calibration`. Added a PyPI install link to
340
+ the Client SDK page.
341
+
342
+ ## [0.4.9] - 2026-06-26
343
+
344
+ ### Fixed
345
+ - **Multi-turn conversations with thinking enabled no longer 400 on Anthropic.** With extended
346
+ thinking on, Anthropic signs each thinking block and requires the signature echoed back when the
347
+ block is replayed — so the second turn of any thinking conversation (and any thinking + tool-use
348
+ turn) failed with `messages.N.content.0.thinking.signature: Field required`. The provider now
349
+ captures the `signature_delta` onto the thinking block and sends it back; an unsigned thinking
350
+ block (from another provider or an older session) is dropped rather than sent unsigned.
351
+ - **Text selection works again in macOS Terminal.app.** Terminal.app doesn't report mouse-motion
352
+ events (xterm mode 1003), which Textual needs for in-app drag-select — so capturing the mouse
353
+ there gave neither in-app selection nor Terminal.app's native selection (only wheel-scroll). The
354
+ mouse default is now resolved per-terminal: ON everywhere (scroll + in-app drag-select, as in
355
+ iTerm2/Ghostty/WezTerm), but OFF on macOS Terminal.app so native click-drag selection + copy work
356
+ out of the box (scroll with PageUp/PageDown). `--mouse`/`--no-mouse` overrides; `/mouse` toggles.
357
+
358
+ ## [0.4.8] - 2026-06-26
359
+
360
+ ### Fixed
361
+ - **A provider whose API key is invalid no longer wastes every turn routed to it.** When a model
362
+ call hard-fails on auth (e.g. an invalid `ANTHROPIC_API_KEY` → `401 invalid x-api-key`), that
363
+ provider is now blacklisted for the session and the *same* message is auto-rerouted onto a
364
+ provider whose key works — instead of the router re-recommending the dead provider on every
365
+ turn. The auth failure is also no longer fed back to Minima as a model-quality failure (it's a
366
+ credential problem, not a quality signal), so it can't poison the model's success estimate in
367
+ your namespace. Routing now also drops providers with no key configured up front, `/reconnect`
368
+ (and a key fixed via `/config`) clears the blacklist, and pins are never auto-rerouted.
369
+ - **Scroll-wheel and text selection/copy both work now.** Terminal mouse-tracking is
370
+ all-or-nothing — capturing the mouse for scroll-wheel suppresses the terminal's native
371
+ click-drag selection. Mouse capture is back ON by default (wheel scroll + in-app drag-select),
372
+ the terminal's native selection stays reachable by holding the bypass modifier while dragging
373
+ (Option on macOS, Shift on Linux), and copy now also pushes to the OS clipboard
374
+ (`pbcopy`/`xclip`/`wl-copy`) — Textual's built-in copy emits only OSC 52, which macOS
375
+ Terminal.app silently ignores, so selections *looked* copied but weren't.
376
+
377
+ ### Added
378
+ - **`/resume` picker shows timestamps** — each session row now shows when it was created and last
379
+ used (e.g. `used 2h ago · created 3d ago`), and the list is sorted most-recently-used first.
380
+ - **`/mouse [on|off]`** command to toggle mouse capture live (scroll-wheel vs. terminal-native
381
+ selection) without restarting, plus a **`--no-mouse`** launch flag and an OS-aware selection
382
+ hint on the splash.
383
+
384
+ ## [0.4.7] - 2026-06-26
385
+
386
+ ### Fixed
387
+ - **Gemini calls failed whenever a tool with a nested-model schema was attached** — including
388
+ the `/ledger` `tasks` tool (its `TaskItem` list). Pydantic emits `$ref`/`$defs` for nested
389
+ models, and the google-genai SDK's strict `Schema` model rejects those with a
390
+ `ValidationError` (`extra_forbidden` on `$ref`), failing the entire call. Because the error
391
+ text contains `extra_forbidden`, it was *misclassified* as a `403` "Access denied (key lacks
392
+ permission, or no quota)" — so it looked like a key/quota problem when it was a client-side
393
+ schema issue. (This is why Gemini "stopped working" once a ledger goal was active; introduced
394
+ with the `tasks` tool in 0.4.4.) The Google provider now sends tool schemas via
395
+ `parameters_json_schema` (the SDK's standard-JSON-Schema path, which inlines/converts `$ref`
396
+ itself per Gemini's function-declaration rules) instead of the strict `parameters` model.
397
+ - **Client-side validation errors are no longer misread as provider auth failures.**
398
+ `classify_provider_error` now detects a pydantic/schema `ValidationError` first and reports it
399
+ as a tool-schema problem ("pin another model / report it"), so a `extra_forbidden` can never
400
+ again masquerade as a `403`/permission denial.
401
+
402
+ ## [0.4.6] - 2026-06-26
403
+
404
+ ### Added
405
+ - **Raw provider errors are now surfaced and logged.** Alongside the clean classified message,
406
+ a failed model call now shows the provider's exact words (`└ provider said: …`) in the TUI and
407
+ logs them at WARNING, so an ambiguous `403/429` ("key lacks permission, or no quota") is
408
+ self-diagnosing — you can see whether it's `RESOURCE_EXHAUSTED`, `PERMISSION_DENIED`, a project
409
+ issue, or model availability, instead of guessing.
410
+
411
+ ### Fixed
412
+ - **One provider hiccup wedged the entire session.** A failed model call (bad key, 403/429,
413
+ network) is swallowed into an *empty* assistant message with `stop_reason="error"`, which the
414
+ agent loop appended to history. On the *next* turn — even to a healthy provider — that empty
415
+ text block made the request invalid (Anthropic `400 "messages: text content blocks must be
416
+ non-empty"`), so a single hiccup broke every subsequent turn until the session was cleared.
417
+ Now (1) the loop never sends a failed call's assistant to a provider, and (2) a failed turn is
418
+ rolled fully out of the agent's context (assistant + the user message that triggered it), so
419
+ the next turn starts clean. Regression introduced in 0.4.4 (when provider errors began being
420
+ swallowed into an empty assistant rather than raised). Verified against the live Anthropic API.
421
+ - **A failed model call was framed as "routing offline … /reconnect to retry Minima."** When
422
+ routing *succeeds* but the model *call* fails, the banner now reads e.g. `⚠ Access denied by
423
+ Google Gemini … — check GEMINI_API_KEY (/config) or pin another model (/model)` instead of the
424
+ misleading routing/reconnect framing. The provider-403 message also gained an actionable next
425
+ step (it was the only `classify_provider_error` branch without one).
426
+ - **Switching models left a stale error banner up.** After a model's call failed, pinning or
427
+ unpinning a different model (`/model …`, `/model auto`) now clears the banner — a prior
428
+ model's "access denied"/offline message no longer lingers as if it were still happening.
429
+ - **Pinning a model not in Minima's routing catalog 422'd and ran the wrong model.** Pinning
430
+ e.g. an OpenRouter-namespaced model (`google/gemini-2.5-flash`) sent it to Minima as a routing
431
+ constraint; Minima didn't recognize the id → `422 no models match the supplied constraints` →
432
+ routing degraded offline and ran a *different* fallback model, while the footer/banner
433
+ disagreed with what actually ran. A pin is now a true override: it bypasses Minima entirely
434
+ and runs exactly the pinned model (basis `pinned`), so any registered model — OpenRouter,
435
+ local, custom — can be pinned and runs as-is.
436
+
437
+ ## [0.4.5] - 2026-06-26
438
+
439
+ ### Fixed
440
+ - **Routing 401'd for the whole session when the Mubit key wasn't resolvable at launch.**
441
+ The `AsyncMinimaClient`'s `Authorization` header is fixed when the client is built, so a
442
+ Mubit key added via the `/config` overlay (or exported after launch) never took effect —
443
+ `/reconnect` only cleared the banner without rebuilding the client, leaving every turn
444
+ routing offline with `minima error 401: pass your Mubit API key …` until a full restart.
445
+ Now `/reconnect` (and saving a routing key/URL in `/config`) re-reads the environment and
446
+ rebuilds the Minima client in place, so the fix applies immediately — no restart.
447
+ - **Offline-fallback banner for an auth/config problem misleadingly said "/reconnect to
448
+ retry."** A no-key or rejected-key 401/403 is now classified separately from a transient
449
+ outage: the banner shows the actionable step ("no Mubit API key — add MUBIT_API_KEY via
450
+ /config") and drops the "/reconnect" framing (retrying alone wouldn't help). Transient
451
+ causes (timeout/unreachable) keep the "/reconnect to retry" banner.
452
+ - **No-key + hosted Minima made a guaranteed-401 round-trip every turn.** With no key
453
+ configured against a remote endpoint, routing now short-circuits instantly instead of
454
+ waiting on a doomed request (local/loopback endpoints still attempt, so keyless local
455
+ servers are unaffected).
456
+
457
+ ## [0.4.4] - 2026-06-25
458
+
459
+ ### Added
460
+ - **OpenRouter is now a full provider, not 4 hardcoded models.** Setting `OPENROUTER_API_KEY`
461
+ fetches OpenRouter's entire live model list (`GET /api/v1/models`, ~340 models) with live
462
+ pricing / context / modalities / reasoning, so any OpenRouter model is callable, pinnable, and
463
+ routable. Cached to `~/.minima-harness/cache` with a 24h TTL; degrades live → stale cache →
464
+ curated so startup never blocks or breaks offline.
465
+ - **`/ledger` — cost-aware goals.** Set a budgeted objective (`/ledger set <title>`,
466
+ `/ledger budget <usd>`); the agent maintains a task checklist (the `tasks` tool, footer `N/M`,
467
+ re-anchored into the prompt each turn and persisted across `--continue`/`--resume`). The goal
468
+ conditions routing (its turns cluster in Minima's memory) and each turn's realized cost is
469
+ attributed to it — `└ ledger · spent $X · ~$Y projected · budget $B` — the cost-to-goal view no
470
+ other agent has. (`/goals` remains as a hidden alias.)
471
+ - **Permission prompts before sensitive ops (default on).** write / edit / bash now ask first
472
+ (Enter approve · `a` always-allow this tool · Esc reject), previewing a diff or the command.
473
+ `/yolo` or `--dangerously-skip-permissions` disables prompting; `/edits` forces a diff review.
474
+ - **`/thoughts`** streams the model's reasoning into a muted bubble above each answer; **`/exit`**
475
+ (and `/quit`) quit the TUI.
476
+
477
+ ### Fixed
478
+ - **Provider failures are no longer silent.** A failed model call (bad/missing key, 401/403/404/
479
+ 429/402, network) was swallowed into an *empty* assistant message — a blank bubble in the TUI,
480
+ an empty line on `--print`. The harness now classifies it and surfaces an actionable,
481
+ provider-aware message (e.g. "Authentication failed for Anthropic running claude-opus-4-8 — set
482
+ ANTHROPIC_API_KEY (/config)") in the TUI, on `--print` stderr (exit 1), and in `--mode json`.
483
+ Tool failures (incl. permission denials) render prominently instead of a faint line.
484
+ - **OpenAI GPT-5 / o-series models 400'd on every call.** They reject `max_tokens` and require
485
+ `max_completion_tokens`; the OpenAI-compatible provider now sends the right param for the
486
+ `openai` provider (other OpenAI-compatible hosts keep `max_tokens`). Encoded as a small
487
+ per-provider request-quirks table rather than a hardcoded branch.
488
+ - **`/confirm` could silently ignore your pick** (kept the routed model when a pick didn't
489
+ resolve) — now warns; the decision card marks candidates with no provider key as `⚠ no key`.
490
+ - **`/model` had no way to unpin** — added an "auto (unpin)" entry + `/model auto` that restore
491
+ the full routing pool.
492
+ - **Scary red banners for benign routing diagnostics** (`neighbor_classified`, `recall_timeout`,
493
+ `cold_start`, …) — these are now suppressed; the banner is reserved for actionable issues.
494
+ - **Tool calls dumped raw JSON args** — now rendered IDE-style (diffs for edit/write, `$ cmd` for
495
+ bash, a clean summary otherwise) with colorized diffs.
496
+ - **Errored turns were sometimes reported to Minima as successes** (when judging was off),
497
+ poisoning the routing loop — now recorded as failures.
498
+ - **The launch splash was pinned to the left** instead of centered.
499
+ - **`/v1/models` price overlay** — the harness now overlays Minima's authoritative live pricing
500
+ onto the registry at startup, so reported cost matches what the server routed against.
501
+
502
+ ### Performance
503
+ - **`brew install minima` drops from ~5 min to ~3 s.** The Homebrew formula now installs
504
+ dependencies from prebuilt wheels instead of compiling grpcio / cryptography / pydantic-core /
505
+ jiter / cffi from source. (Apple Silicon + Linux compile nothing; macOS-Intel still builds only
506
+ `cryptography`, which publishes no x86_64 wheel.)
507
+
508
+ ## [0.4.3] - 2026-06-24
509
+
510
+ ### Fixed
511
+ - **High CPU / fans during use.** The status bar repainted on *every* streamed token —
512
+ `_append_stream` called `set_state("working")` per delta and `StatusBar.set_state`
513
+ re-rendered unconditionally, so a 600-token reply triggered ~616 footer repaints (the
514
+ terminal emulator repaints on each, which spins fans). `set_state` is now idempotent
515
+ (no-op when the state is unchanged), the live-stream flush eased from ~33 Hz to ~16 Hz,
516
+ and the spinner timer is **paused while idle** (no 10 Hz wake-ups when nothing is running).
517
+ Measured: a 600-token stream drops from ~666 to ~40 repaints (~94% fewer); idle is quiet.
518
+ Memory is unaffected (steady ~70 MB RSS, no leak).
519
+
520
+ ## [0.4.2] - 2026-06-24
521
+
522
+ ### Added
523
+ - **Multi-provider support (open & closed source).** A new provider catalog
524
+ (`ai/provider_catalog.py`) integrates 21 LLM providers — closed-native (OpenAI, Anthropic,
525
+ Gemini, DeepSeek, Mistral, xAI, Cohere, Perplexity), the OpenRouter aggregator, open-weight
526
+ hosts (Groq, Together, Fireworks, DeepInfra, Cerebras, Hyperbolic, Novita), and local
527
+ runtimes (Ollama, vLLM, LM Studio, llama.cpp, LocalAI). All speak the OpenAI
528
+ chat-completions protocol, so a verified `base_url` + the right API-key env var is enough.
529
+ Model ids + pricing were verified against each provider's official docs (June 2026).
530
+ - **Key-gated, provider-specific routing.** Each model resolves *its own* provider's key
531
+ (a Groq model uses `GROQ_API_KEY`, never an OpenRouter key on `api.openai.com`); a provider's
532
+ models are registered only when its key is configured (so the `/model` picker stays relevant);
533
+ routing candidates and the offline fallback are filtered to models the user can actually run.
534
+ The `/model` picker now lists every registered model so any provider's model can be pinned.
535
+ - **`minima config`** now lists the popular providers (Anthropic, OpenAI, Gemini, xAI, DeepSeek,
536
+ Mistral, OpenRouter, Groq, Together); more providers work by exporting their env var, and
537
+ local runtimes need no key.
538
+ - **Config overlay UX:** Enter walks the fields and lands on a visible **Save** button (Enter
539
+ saves — Ctrl+S still works); the save hint is pinned in an always-visible footer.
540
+
541
+ ### Fixed
542
+ - **`.env.example` shipped `MUBIT_ENDPOINT=http://127.0.0.1:3000`** and the docs said
543
+ `cp .env.example .env`; the CLI auto-loads `./.env`, silently degrading Mubit memory to a
544
+ dead localhost. The localhost default is now commented out, and `init_mubit` treats an empty
545
+ endpoint as unset (hosted default applies).
546
+ - **OpenRouter-only / single-provider setups mis-routed.** The earlier key-aware fallback could
547
+ pick `gpt-4o-mini` (which hits `api.openai.com`) for an OpenRouter key → guaranteed 401. Key
548
+ eligibility is now provider-specific and base_url-aware; an unpriced (cost-0) custom/local
549
+ model is no longer mistaken for the cheapest offline fallback.
550
+ - **`--offline` no longer dumps an httpx traceback** — routing fails fast with a clear
551
+ "routing disabled (offline mode)" reason, and the expected offline-fallback log drops the
552
+ stack trace (kept at DEBUG).
553
+
554
+ ## [0.4.1] - 2026-06-24
555
+
556
+ ### Fixed
557
+ - **Published CLI defaulted routing to `localhost:8080`.** A freshly installed `minima` (no
558
+ project `.env.harness`) connected to a dev URL that isn't running, so every turn fell back to
559
+ OFFLINE with "Minima unreachable" — while `minima config doctor` misleadingly reported the
560
+ hosted endpoint. `DEFAULT_MINIMA_URL` is now `https://api.minima.sh` and is the single source
561
+ of truth shared by the runtime, the config store, and `config doctor` (they can no longer
562
+ drift). Local dev against `make run` sets `MINIMA_URL=http://localhost:8080` explicitly.
563
+ - **Offline fallback could pick an unrunnable model.** The degraded-mode fallback chose the
564
+ globally cheapest model (gpt-4o-mini) regardless of configured keys, so an
565
+ Anthropic+Gemini-only setup hit a provider-auth error offline. It now prefers the cheapest
566
+ model whose provider key is actually set (e.g. `claude-haiku-4-5` / `gemini-2.5-flash`),
567
+ falling back to the global cheapest only when no key is present.
568
+
569
+ ## [0.4.0] - 2026-06-24
570
+
571
+ First public, source-available release. Headline theme: the **harness** becomes a
572
+ trustworthy, transparent cost-aware coding agent, and the **recommender** gains a
573
+ data-grounded cost range.
574
+
575
+ ### Added
576
+ - **`minima-harness config`** — per-user credential management across three surfaces
577
+ (CLI subcommand, `/config` TUI overlay, in-TUI editing). Secrets go to the **OS keyring**
578
+ when available, falling back to `~/.minima-harness/config.env` at mode `0600`; loaded into
579
+ the environment at lowest precedence. Sections: LLM provider keys + Mubit/Minima routing.
580
+ - **`/prompt` layered inspector** — every system-prompt layer (base, project context, session
581
+ override, Mubit lessons) shown separately with per-layer token counts, editable in place.
582
+ - **`/optimize`** — Mubit-backed system-prompt optimization (consolidates lessons + outcomes,
583
+ estimates token savings) with a local dedup fallback; never auto-applies.
584
+ - **Routing decision card** — each candidate framed as **cost (with predicted range) / speed /
585
+ predictability**, an ROI line for pricier alternatives, and hybrid reasoning (data-grounded
586
+ by default, the reasoner's natural language only when evidence is thin).
587
+ - **Data-grounded cost band** (server) — the recommend response now carries a p25–p75 cost band
588
+ (`est_cost_low` / `est_cost_high` / `cost_band_basis`) and `success_interval_width`, computed
589
+ from realized-cost history; honest "no range yet" when evidence is thin.
590
+ - **Cost predictability in `/stats`** — estimate-vs-actual MAPE and within-band hit-rate
591
+ (estimated cost is now persisted per turn to the session log).
592
+ - **MINIMA CLI welcome banner** and a centered launch splash.
593
+ - `docs/publishing.md` — release checklist.
594
+
595
+ ### Changed
596
+ - **License is now `FSL-1.1-Apache-2.0`** (Functional Source License — source-available,
597
+ non-compete; each version converts to Apache-2.0 two years after publication). Previously
598
+ `Proprietary`.
599
+ - **Mouse capture is OFF by default** so terminal text selection + copy (drag, then Cmd/Ctrl+C)
600
+ works out of the box; `--mouse` opts into scroll-wheel support (otherwise PageUp/PageDown).
601
+ - Footer renders Ctrl shortcuts as `ctrl+l` etc. instead of the `^l` caret.
602
+ - Overlays (config, prompt, routing, optimize, and the model/session/command/tree pickers) share
603
+ a consistent rounded-accent card style with border titles.
604
+
605
+ ### Fixed
606
+ - Copy/paste broke when mouse capture was enabled by default — restored selection-friendly default.
607
+ - Harness Minima client timeout raised (10s → 30s) so a cold-start `recommend` that consults the
608
+ reasoner no longer silently degrades to offline routing.
609
+
610
+ [0.4.0]: https://github.com/mubit-ai/minima/releases/tag/v0.4.0