minima-cli 0.12.0__tar.gz → 0.12.2__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 (964) hide show
  1. {minima_cli-0.12.0 → minima_cli-0.12.2}/.github/workflows/catalog-snapshot.yml +17 -4
  2. {minima_cli-0.12.0 → minima_cli-0.12.2}/.github/workflows/ci.yml +27 -0
  3. {minima_cli-0.12.0 → minima_cli-0.12.2}/.github/workflows/release-cli.yml +19 -11
  4. {minima_cli-0.12.0 → minima_cli-0.12.2}/CHANGELOG.md +90 -0
  5. {minima_cli-0.12.0 → minima_cli-0.12.2}/CLAUDE.md +7 -2
  6. {minima_cli-0.12.0 → minima_cli-0.12.2}/PKG-INFO +1 -1
  7. {minima_cli-0.12.0 → minima_cli-0.12.2}/client_sdk/minima_client/autocapture.py +2 -2
  8. {minima_cli-0.12.0 → minima_cli-0.12.2}/client_sdk/minima_client/client.py +149 -21
  9. minima_cli-0.12.2/client_sdk/minima_client/errors.py +49 -0
  10. {minima_cli-0.12.0 → minima_cli-0.12.2}/client_sdk/minima_client/integrations/claude_code.py +8 -5
  11. {minima_cli-0.12.0 → minima_cli-0.12.2}/client_sdk/minima_client/integrations/litellm_router.py +47 -7
  12. minima_cli-0.12.2/client_sdk/minima_client/integrations/openhands_router.py +184 -0
  13. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/configuration.md +2 -0
  14. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/publishing.md +5 -0
  15. minima_cli-0.12.2/packages/sdk/README.md +54 -0
  16. minima_cli-0.12.2/packages/sdk/bun.lock +43 -0
  17. minima_cli-0.12.2/packages/sdk/package.json +22 -0
  18. minima_cli-0.12.2/packages/sdk/src/client.ts +305 -0
  19. minima_cli-0.12.2/packages/sdk/src/errors.ts +62 -0
  20. minima_cli-0.12.2/packages/sdk/src/index.ts +12 -0
  21. minima_cli-0.12.2/packages/sdk/src/version.ts +9 -0
  22. minima_cli-0.12.2/packages/sdk/tests/client.test.ts +194 -0
  23. minima_cli-0.12.2/packages/sdk/tsconfig.json +24 -0
  24. minima_cli-0.12.2/packages/tui/.gitignore +4 -0
  25. minima_cli-0.12.2/packages/tui/biome.json +25 -0
  26. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/package.json +1 -1
  27. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/cli/main.ts +167 -1
  28. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/db/minima_db.ts +643 -8
  29. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/db/rehydrate.ts +19 -0
  30. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/config.ts +7 -0
  31. minima_cli-0.12.2/packages/tui/src/minima/diff_review.ts +147 -0
  32. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/failure_kind.ts +21 -1
  33. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/ground_truth.ts +8 -0
  34. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/index.ts +64 -0
  35. minima_cli-0.12.2/packages/tui/src/minima/memory_dream.ts +157 -0
  36. minima_cli-0.12.2/packages/tui/src/minima/memory_ledger.ts +90 -0
  37. minima_cli-0.12.2/packages/tui/src/minima/memory_scribe.ts +528 -0
  38. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/meter.ts +63 -0
  39. minima_cli-0.12.2/packages/tui/src/minima/plan_critic.ts +99 -0
  40. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/plan_finalize.ts +66 -1
  41. minima_cli-0.12.2/packages/tui/src/minima/repo_gates.ts +140 -0
  42. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/runtime.ts +126 -7
  43. minima_cli-0.12.2/packages/tui/src/minima/schemas.ts +326 -0
  44. minima_cli-0.12.2/packages/tui/src/session/resume_verify.ts +117 -0
  45. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/app.tsx +184 -3
  46. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/db.test.ts +8 -2
  47. minima_cli-0.12.2/packages/tui/tests/diff_review.test.ts +124 -0
  48. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/feedback-grounded.test.ts +2 -1
  49. minima_cli-0.12.2/packages/tui/tests/honest_meter.test.ts +75 -0
  50. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/input-filter.test.ts +1 -1
  51. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/judge-cost-booking.test.ts +4 -3
  52. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/ladder.test.ts +2 -1
  53. minima_cli-0.12.2/packages/tui/tests/ladder_v2.test.ts +83 -0
  54. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/markdown-fence.test.ts +1 -6
  55. minima_cli-0.12.2/packages/tui/tests/memory_dream.test.ts +255 -0
  56. minima_cli-0.12.2/packages/tui/tests/memory_ledger.test.ts +287 -0
  57. minima_cli-0.12.2/packages/tui/tests/memory_scribe.test.ts +423 -0
  58. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/minima.test.ts +14 -7
  59. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/minima_memory.test.ts +2 -1
  60. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/plan-loop-audit.test.ts +2 -1
  61. minima_cli-0.12.2/packages/tui/tests/plan_critic.test.ts +99 -0
  62. minima_cli-0.12.2/packages/tui/tests/repo_gates.test.ts +140 -0
  63. minima_cli-0.12.2/packages/tui/tests/resume_verify.test.ts +150 -0
  64. minima_cli-0.12.2/packages/tui/tests/version_stamp.test.ts +126 -0
  65. {minima_cli-0.12.0 → minima_cli-0.12.2}/pyproject.toml +1 -1
  66. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/api/routers/feedback.py +81 -0
  67. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/config.py +6 -0
  68. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/memory/records.py +59 -2
  69. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/recommender/aggregate.py +16 -0
  70. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/recommender/engine.py +9 -0
  71. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/integration/test_feedback_loop.py +126 -0
  72. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/integration/test_measurement_api.py +3 -0
  73. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_adapters.py +117 -0
  74. minima_cli-0.12.2/tests/unit/test_recall_track.py +115 -0
  75. minima_cli-0.12.2/tests/unit/test_sdk_client.py +153 -0
  76. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_sdk_usage.py +10 -1
  77. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_ts_mirror.py +15 -9
  78. {minima_cli-0.12.0 → minima_cli-0.12.2}/uv.lock +1 -1
  79. minima_cli-0.12.0/client_sdk/minima_client/errors.py +0 -23
  80. minima_cli-0.12.0/client_sdk/minima_client/integrations/openhands_router.py +0 -99
  81. {minima_cli-0.12.0 → minima_cli-0.12.2}/.dockerignore +0 -0
  82. {minima_cli-0.12.0 → minima_cli-0.12.2}/.env.example +0 -0
  83. {minima_cli-0.12.0 → minima_cli-0.12.2}/.github/workflows/prod.yml +0 -0
  84. {minima_cli-0.12.0 → minima_cli-0.12.2}/.github/workflows/staging.yml +0 -0
  85. {minima_cli-0.12.0 → minima_cli-0.12.2}/.gitignore +0 -0
  86. {minima_cli-0.12.0 → minima_cli-0.12.2}/AGENTS.md +0 -0
  87. {minima_cli-0.12.0 → minima_cli-0.12.2}/Dockerfile +0 -0
  88. {minima_cli-0.12.0 → minima_cli-0.12.2}/LICENSE +0 -0
  89. {minima_cli-0.12.0 → minima_cli-0.12.2}/Makefile +0 -0
  90. {minima_cli-0.12.0 → minima_cli-0.12.2}/README.md +0 -0
  91. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/.gitignore +0 -0
  92. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/README.md +0 -0
  93. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/assert/check.ts +0 -0
  94. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/assert/db.ts +0 -0
  95. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/driver/env.ts +0 -0
  96. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/driver/headless.ts +0 -0
  97. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/driver/mock_server.ts +0 -0
  98. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/driver/rig.ts +0 -0
  99. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/driver/scratch.ts +0 -0
  100. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/_example/mathx.py +0 -0
  101. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/_example/tests/test_public.py +0 -0
  102. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/js-lib/README.md +0 -0
  103. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/js-lib/package.json +0 -0
  104. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/js-lib/src/csv.ts +0 -0
  105. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/js-lib/src/index.ts +0 -0
  106. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/js-lib/src/object.ts +0 -0
  107. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/js-lib/src/stats.ts +0 -0
  108. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/js-lib/src/transform.ts +0 -0
  109. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/js-lib/tests/csv.test.ts +0 -0
  110. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/js-lib/tests/object.test.ts +0 -0
  111. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/js-lib/tests/stats.test.ts +0 -0
  112. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/js-lib/tests/transform.test.ts +0 -0
  113. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/README.md +0 -0
  114. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/js/chunk.js +0 -0
  115. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/js/droot.js +0 -0
  116. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/js/duration.js +0 -0
  117. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/js/wrap.js +0 -0
  118. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/py/checksum.py +0 -0
  119. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/py/intervals.py +0 -0
  120. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/py/rle.py +0 -0
  121. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/py/roman.py +0 -0
  122. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/js/chunk/smoke.test.js +0 -0
  123. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/js/droot/smoke.test.js +0 -0
  124. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/js/duration/smoke.test.js +0 -0
  125. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/js/wrap/smoke.test.js +0 -0
  126. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/py/conftest.py +0 -0
  127. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/py/test_checksum_smoke.py +0 -0
  128. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/py/test_intervals_smoke.py +0 -0
  129. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/py/test_rle_smoke.py +0 -0
  130. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/py/test_roman_smoke.py +0 -0
  131. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/ts/brackets/smoke.test.ts +0 -0
  132. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/ts/drift/smoke.test.ts +0 -0
  133. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/ts/ordinal/smoke.test.ts +0 -0
  134. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/tests/ts/slug/smoke.test.ts +0 -0
  135. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/ts/brackets.ts +0 -0
  136. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/ts/drift.ts +0 -0
  137. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/ts/ordinal.ts +0 -0
  138. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/katas/ts/slug.ts +0 -0
  139. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/.gitignore +0 -0
  140. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/README.md +0 -0
  141. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/pytest.ini +0 -0
  142. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/taskman/__init__.py +0 -0
  143. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/taskman/__main__.py +0 -0
  144. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/taskman/cli.py +0 -0
  145. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/taskman/dates.py +0 -0
  146. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/taskman/migrations.py +0 -0
  147. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/taskman/models.py +0 -0
  148. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/taskman/query.py +0 -0
  149. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/taskman/report.py +0 -0
  150. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/taskman/storage.py +0 -0
  151. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/tests/__init__.py +0 -0
  152. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/tests/conftest.py +0 -0
  153. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/tests/test_cli.py +0 -0
  154. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/tests/test_dates.py +0 -0
  155. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/tests/test_models.py +0 -0
  156. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/tests/test_query.py +0 -0
  157. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/tests/test_report.py +0 -0
  158. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/py-cli/tests/test_storage.py +0 -0
  159. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/README.md +0 -0
  160. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/package.json +0 -0
  161. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/app.ts +0 -0
  162. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/auth.ts +0 -0
  163. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/errors.ts +0 -0
  164. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/handlers/admin.ts +0 -0
  165. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/handlers/links.ts +0 -0
  166. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/handlers/notes.ts +0 -0
  167. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/handlers/stats.ts +0 -0
  168. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/persist.ts +0 -0
  169. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/ratelimit.ts +0 -0
  170. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/respond.ts +0 -0
  171. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/router.ts +0 -0
  172. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/server.ts +0 -0
  173. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/store.ts +0 -0
  174. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/types.ts +0 -0
  175. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/src/validate.ts +0 -0
  176. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/tests/auth.test.ts +0 -0
  177. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/tests/health.test.ts +0 -0
  178. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/tests/helpers.ts +0 -0
  179. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/tests/links.test.ts +0 -0
  180. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/tests/notes.test.ts +0 -0
  181. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/tests/persist.test.ts +0 -0
  182. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/tests/ratelimit.test.ts +0 -0
  183. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/tests/router.test.ts +0 -0
  184. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/tests/stats.test.ts +0 -0
  185. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/tests/store.test.ts +0 -0
  186. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/tests/validate.test.ts +0 -0
  187. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/fixtures/templates/ts-api/tsconfig.json +0 -0
  188. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/flows/f10_recovery_ladder.ts +0 -0
  189. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/flows/f12_learning_loop.ts +0 -0
  190. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/flows/f1_headless.ts +0 -0
  191. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/flows/f4_cost_budget.ts +0 -0
  192. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/flows/f5_task_dag_worktree.ts +0 -0
  193. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/flows/f6_resume_lineage.ts +0 -0
  194. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/flows/f7_permissions_plan.ts +0 -0
  195. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/flows/f9_offline_reconnect.ts +0 -0
  196. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/gen/attempt.ts +0 -0
  197. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/gen/build_index.ts +0 -0
  198. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/gen/calibrate.ts +0 -0
  199. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/gen/calibrate_all.ts +0 -0
  200. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/gen/calibration_report.ts +0 -0
  201. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/gen/materialize.ts +0 -0
  202. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/gen/savings_ab.ts +0 -0
  203. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/gen/savings_report.ts +0 -0
  204. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/gen/validate_task.ts +0 -0
  205. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/run.ts +0 -0
  206. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/_example/ex-001/bug.patch +0 -0
  207. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/_example/ex-001/hidden_tests.patch +0 -0
  208. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/_example/ex-001/task.json +0 -0
  209. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/calibration.jsonl +0 -0
  210. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-001/bug.patch +0 -0
  211. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-001/hidden_tests.patch +0 -0
  212. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-001/task.json +0 -0
  213. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-002/bug.patch +0 -0
  214. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-002/hidden_tests.patch +0 -0
  215. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-002/task.json +0 -0
  216. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-003/bug.patch +0 -0
  217. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-003/hidden_tests.patch +0 -0
  218. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-003/task.json +0 -0
  219. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-004/bug.patch +0 -0
  220. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-004/hidden_tests.patch +0 -0
  221. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-004/task.json +0 -0
  222. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-005/hidden_tests.patch +0 -0
  223. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-005/oracle.patch +0 -0
  224. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-005/task.json +0 -0
  225. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-006/bug.patch +0 -0
  226. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-006/hidden_tests.patch +0 -0
  227. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/js-lib/jl-006/task.json +0 -0
  228. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-001/hidden_tests.patch +0 -0
  229. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-001/oracle.patch +0 -0
  230. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-001/task.json +0 -0
  231. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-002/hidden_tests.patch +0 -0
  232. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-002/oracle.patch +0 -0
  233. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-002/task.json +0 -0
  234. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-003/hidden_tests.patch +0 -0
  235. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-003/oracle.patch +0 -0
  236. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-003/task.json +0 -0
  237. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-004/hidden_tests.patch +0 -0
  238. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-004/oracle.patch +0 -0
  239. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-004/task.json +0 -0
  240. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-005/hidden_tests.patch +0 -0
  241. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-005/oracle.patch +0 -0
  242. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-005/task.json +0 -0
  243. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-006/hidden_tests.patch +0 -0
  244. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-006/oracle.patch +0 -0
  245. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-006/task.json +0 -0
  246. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-007/hidden_tests.patch +0 -0
  247. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-007/oracle.patch +0 -0
  248. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-007/task.json +0 -0
  249. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-008/hidden_tests.patch +0 -0
  250. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-008/oracle.patch +0 -0
  251. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-008/task.json +0 -0
  252. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-009/hidden_tests.patch +0 -0
  253. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-009/oracle.patch +0 -0
  254. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-009/task.json +0 -0
  255. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-010/hidden_tests.patch +0 -0
  256. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-010/oracle.patch +0 -0
  257. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-010/task.json +0 -0
  258. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-011/hidden_tests.patch +0 -0
  259. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-011/oracle.patch +0 -0
  260. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-011/task.json +0 -0
  261. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-012/hidden_tests.patch +0 -0
  262. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-012/oracle.patch +0 -0
  263. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/katas/ka-012/task.json +0 -0
  264. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-001/bug.patch +0 -0
  265. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-001/hidden_tests.patch +0 -0
  266. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-001/task.json +0 -0
  267. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-002/bug.patch +0 -0
  268. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-002/hidden_tests.patch +0 -0
  269. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-002/task.json +0 -0
  270. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-003/bug.patch +0 -0
  271. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-003/hidden_tests.patch +0 -0
  272. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-003/task.json +0 -0
  273. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-004/bug.patch +0 -0
  274. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-004/hidden_tests.patch +0 -0
  275. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-004/task.json +0 -0
  276. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-005/bug.patch +0 -0
  277. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-005/hidden_tests.patch +0 -0
  278. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-005/task.json +0 -0
  279. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-006/bug.patch +0 -0
  280. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-006/hidden_tests.patch +0 -0
  281. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-006/task.json +0 -0
  282. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-007/bug.patch +0 -0
  283. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-007/hidden_tests.patch +0 -0
  284. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-007/task.json +0 -0
  285. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-008/bug.patch +0 -0
  286. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-008/hidden_tests.patch +0 -0
  287. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/py-cli/pc-008/task.json +0 -0
  288. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/savings_ab.jsonl +0 -0
  289. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/tasks.jsonl +0 -0
  290. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-001/hidden_tests.patch +0 -0
  291. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-001/oracle.patch +0 -0
  292. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-001/task.json +0 -0
  293. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-002/hidden_tests.patch +0 -0
  294. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-002/oracle.patch +0 -0
  295. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-002/task.json +0 -0
  296. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-003/hidden_tests.patch +0 -0
  297. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-003/oracle.patch +0 -0
  298. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-003/task.json +0 -0
  299. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-004/bug.patch +0 -0
  300. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-004/hidden_tests.patch +0 -0
  301. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-004/task.json +0 -0
  302. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-005/bug.patch +0 -0
  303. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-005/hidden_tests.patch +0 -0
  304. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-005/task.json +0 -0
  305. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-006/bug.patch +0 -0
  306. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-006/hidden_tests.patch +0 -0
  307. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-006/task.json +0 -0
  308. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-007/bug.patch +0 -0
  309. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-007/hidden_tests.patch +0 -0
  310. {minima_cli-0.12.0 → minima_cli-0.12.2}/bench/tasks/ts-api/ta-007/task.json +0 -0
  311. {minima_cli-0.12.0 → minima_cli-0.12.2}/client_sdk/minima_client/__init__.py +0 -0
  312. {minima_cli-0.12.0 → minima_cli-0.12.2}/client_sdk/minima_client/integrations/__init__.py +0 -0
  313. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/PLAN-retired.md +0 -0
  314. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/README.md +0 -0
  315. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/characteristics-of-successful-plans.md +0 -0
  316. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/decision-inline-renderer.md +0 -0
  317. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/harness-research.md +0 -0
  318. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/inline-rendering-brief.md +0 -0
  319. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/inline-ux-guide.md +0 -0
  320. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/minima-harness-application-guide.md +0 -0
  321. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/plan-loop-audit.md +0 -0
  322. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/playbook.md +0 -0
  323. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/pr-default-renderer.md +0 -0
  324. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/pr-opencode-sidebar.md +0 -0
  325. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/pr-prompt-echo.md +0 -0
  326. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/q_and_a.md +0 -0
  327. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/ab/ab_capture.sh +0 -0
  328. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/ab/ab_compare.py +0 -0
  329. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/b1-fullscreen.png +0 -0
  330. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/b1-inline.png +0 -0
  331. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/b2-mode-plan-fullscreen.png +0 -0
  332. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/b2-mode-plan-inline.png +0 -0
  333. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/b4-undo-prefill-fullscreen.png +0 -0
  334. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/b5-rewind-inline.png +0 -0
  335. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/b5-rewind-overlay.png +0 -0
  336. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/b5-rewind-picker-fullscreen.png +0 -0
  337. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/baseline/README.md +0 -0
  338. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/baseline/base-echo-gap.png +0 -0
  339. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/baseline/base-gt-wide.png +0 -0
  340. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/baseline/base-inline-default.png +0 -0
  341. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/baseline/base-narrow.png +0 -0
  342. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/baseline/base-toc-wide.png +0 -0
  343. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/baseline/capture-specs.sh +0 -0
  344. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/c-prompt-echo.png +0 -0
  345. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/README.md +0 -0
  346. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/boundary-60.png +0 -0
  347. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/capture-specs.sh +0 -0
  348. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/check_echo.py +0 -0
  349. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/code-heavy-120.png +0 -0
  350. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/code-heavy-60.png +0 -0
  351. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/echo-gap.frames.jsonl +0 -0
  352. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/echo-gap.png +0 -0
  353. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/fixture-resume.png +0 -0
  354. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/gt-banner.png +0 -0
  355. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/gt-block.png +0 -0
  356. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/gt-off-notice.png +0 -0
  357. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/narrow-55.png +0 -0
  358. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/perf.jsonl +0 -0
  359. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/plain-chat.frames.jsonl +0 -0
  360. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/plain-chat.png +0 -0
  361. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/inline-baseline/toc-block.png +0 -0
  362. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/j1-why-card-fullscreen.png +0 -0
  363. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp1-tui-verify-run.log +0 -0
  364. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/capture.sh +0 -0
  365. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/code-120.png +0 -0
  366. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/code-120.txt +0 -0
  367. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/code-60.png +0 -0
  368. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/code-60.txt +0 -0
  369. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/code-80.png +0 -0
  370. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/code-80.txt +0 -0
  371. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/code-tall.png +0 -0
  372. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/code-tall.txt +0 -0
  373. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/md-120.png +0 -0
  374. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/md-120.txt +0 -0
  375. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/md-60.png +0 -0
  376. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/md-60.txt +0 -0
  377. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/mixed-120.png +0 -0
  378. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/mixed-120.txt +0 -0
  379. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/mixed-60.png +0 -0
  380. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/mixed-60.txt +0 -0
  381. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/stream-code.frames.jsonl +0 -0
  382. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/stream-code.png +0 -0
  383. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/stream-code.txt +0 -0
  384. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/tool-120.png +0 -0
  385. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/tool-120.txt +0 -0
  386. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/tool-60.png +0 -0
  387. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp10-render-audit/tool-60.txt +0 -0
  388. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp11-code-wrap/capture.sh +0 -0
  389. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp11-code-wrap/code-120.png +0 -0
  390. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp11-code-wrap/code-120.txt +0 -0
  391. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp11-code-wrap/code-60.png +0 -0
  392. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp11-code-wrap/code-60.txt +0 -0
  393. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp11-code-wrap/code-80.png +0 -0
  394. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp11-code-wrap/code-80.txt +0 -0
  395. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp11-code-wrap/code-tall.png +0 -0
  396. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp11-code-wrap/code-tall.txt +0 -0
  397. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp12-tool-truncate/capture.sh +0 -0
  398. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp12-tool-truncate/tool-120.png +0 -0
  399. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp12-tool-truncate/tool-120.txt +0 -0
  400. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp12-tool-truncate/tool-60.png +0 -0
  401. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp12-tool-truncate/tool-60.txt +0 -0
  402. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp14-council-progress/busy-research.png +0 -0
  403. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp14-council-progress/busy-research.txt +0 -0
  404. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp14-council-progress/busy-synth.png +0 -0
  405. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp14-council-progress/busy-synth.txt +0 -0
  406. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp14-council-progress/capture.sh +0 -0
  407. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp14-council-progress/council-line.frames.jsonl +0 -0
  408. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp16-plan-draft/capture.sh +0 -0
  409. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp16-plan-draft/draft-round1.png +0 -0
  410. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp16-plan-draft/draft-round1.txt +0 -0
  411. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp16-plan-draft/draft-round2.png +0 -0
  412. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp16-plan-draft/draft-round2.txt +0 -0
  413. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp16-plan-draft/final-overview.png +0 -0
  414. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp16-plan-draft/final-overview.txt +0 -0
  415. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp17-plan-exit/approved.png +0 -0
  416. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp17-plan-exit/approved.txt +0 -0
  417. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp17-plan-exit/capture.sh +0 -0
  418. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp17-plan-exit/gate-overlay.png +0 -0
  419. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp17-plan-exit/gate-overlay.txt +0 -0
  420. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp17-plan-exit/shifttab-gate.png +0 -0
  421. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp17-plan-exit/shifttab-gate.txt +0 -0
  422. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp18-verify-consent/capture.sh +0 -0
  423. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp18-verify-consent/first-prompt.png +0 -0
  424. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp18-verify-consent/first-prompt.txt +0 -0
  425. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp18-verify-consent/mutated-reprompt.png +0 -0
  426. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp18-verify-consent/mutated-reprompt.txt +0 -0
  427. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp18-verify-consent/silent-repeat.png +0 -0
  428. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp18-verify-consent/silent-repeat.txt +0 -0
  429. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/1-council.png +0 -0
  430. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/1-council.txt +0 -0
  431. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/2-draft.png +0 -0
  432. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/2-draft.txt +0 -0
  433. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/3-exit-gate.png +0 -0
  434. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/3-exit-gate.txt +0 -0
  435. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/4-red-block.png +0 -0
  436. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/4-red-block.txt +0 -0
  437. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/5-green-close.png +0 -0
  438. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/5-green-close.txt +0 -0
  439. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/6-toc-marker.png +0 -0
  440. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/6-toc-marker.txt +0 -0
  441. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/7-step-card.png +0 -0
  442. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/7-step-card.txt +0 -0
  443. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp19-acceptance/capture.sh +0 -0
  444. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp20-stream-reseat/capture.sh +0 -0
  445. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp20-stream-reseat/stream-code.frames.jsonl +0 -0
  446. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp20-stream-reseat/stream-code.png +0 -0
  447. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp20-stream-reseat/stream-code.txt +0 -0
  448. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp4-spike/capture.sh +0 -0
  449. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp4-spike/mp4-closed.png +0 -0
  450. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp4-spike/mp4-open.png +0 -0
  451. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp4-spike/mp4-scrolled.png +0 -0
  452. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp5-taskpanel/capture.sh +0 -0
  453. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp5-taskpanel/mp5-hidden.png +0 -0
  454. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp5-taskpanel/mp5-restart-hidden.png +0 -0
  455. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp5-taskpanel/mp5-visible.png +0 -0
  456. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp6-gt-taskpanel/capture.sh +0 -0
  457. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp6-gt-taskpanel/mp6-blocked-alert.png +0 -0
  458. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp6-gt-taskpanel/mp6-drift-alert.png +0 -0
  459. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp7-expand-panel/capture.sh +0 -0
  460. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp7-expand-panel/mp7-closed-draft.png +0 -0
  461. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp7-expand-panel/mp7-toc-bottom.png +0 -0
  462. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp7-expand-panel/mp7-toc-open.png +0 -0
  463. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp8-panel-reader/capture.sh +0 -0
  464. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp8-panel-reader/mp8-back-to-list.png +0 -0
  465. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp8-panel-reader/mp8-reader.png +0 -0
  466. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp9-gt-panel/capture.sh +0 -0
  467. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp9-gt-panel/mp9-gate-wins.png +0 -0
  468. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp9-gt-panel/mp9-overview.png +0 -0
  469. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/mp9-gt-panel/mp9-step-card.png +0 -0
  470. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/p0-badge-fullscreen.png +0 -0
  471. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/p0-badge-inline.png +0 -0
  472. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/plan-e2e-seeded.png +0 -0
  473. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/plan-exit-approval.png +0 -0
  474. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/plan-shifttab-workflow.png +0 -0
  475. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/u2-docked-toc-focused.png +0 -0
  476. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/u2-docked-toc-unfocused.png +0 -0
  477. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/u2-narrow-fallback.png +0 -0
  478. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/u2-narrow-overlay.png +0 -0
  479. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/u2-toc-fullscreen.png +0 -0
  480. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/u2-toc-inline.png +0 -0
  481. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/u3-gt-card-fullscreen.png +0 -0
  482. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/u3-gt-docked.png +0 -0
  483. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/shots/u3-gt-panel-fullscreen.png +0 -0
  484. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/sources.md +0 -0
  485. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/spike-inline-panel.md +0 -0
  486. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/tui-manual-testing.md +0 -0
  487. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/BigPlan/workflow-diagrams.md +0 -0
  488. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/README.md +0 -0
  489. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/agent-core-architecture.md +0 -0
  490. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/agent-core-implementation-plan.md +0 -0
  491. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/api-reference.md +0 -0
  492. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/characteristics_of_a_good_plan.md +0 -0
  493. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/client-sdk.md +0 -0
  494. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/concepts.md +0 -0
  495. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/examples.md +0 -0
  496. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/feature-gap-analysis.md +0 -0
  497. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/getting-started.md +0 -0
  498. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/goals-feature-plan.md +0 -0
  499. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/ground-truth-build-guide.md +0 -0
  500. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/ground-truth-tui-plan.md +0 -0
  501. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/harness.md +0 -0
  502. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/multi-tenancy.md +0 -0
  503. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/operations.md +0 -0
  504. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/seeding.md +0 -0
  505. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/tui-rendering-strategy.md +0 -0
  506. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs/tui-stability-input-plan.md +0 -0
  507. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/.dockerignore +0 -0
  508. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/Dockerfile +0 -0
  509. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/components/Accordion.tsx +0 -0
  510. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/components/Badge.tsx +0 -0
  511. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/components/Card.tsx +0 -0
  512. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/components/CardGroup.tsx +0 -0
  513. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/components/Frame.tsx +0 -0
  514. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/components/Note.tsx +0 -0
  515. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/components/PageHeader.tsx +0 -0
  516. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/components/Steps.tsx +0 -0
  517. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/components/Tabs.tsx +0 -0
  518. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/components/index.ts +0 -0
  519. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/components/sidebar.ts +0 -0
  520. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/netlify.toml +0 -0
  521. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/nginx.conf +0 -0
  522. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/package-lock.json +0 -0
  523. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/package.json +0 -0
  524. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/api-reference/endpoints.mdx +0 -0
  525. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/harness/cli.mdx +0 -0
  526. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/harness/configuration.mdx +0 -0
  527. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/harness/installation.mdx +0 -0
  528. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/harness/interactive.mdx +0 -0
  529. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/harness/overview.mdx +0 -0
  530. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/harness/routing.mdx +0 -0
  531. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/harness/sessions.mdx +0 -0
  532. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/harness/tools.mdx +0 -0
  533. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/harness/troubleshooting.mdx +0 -0
  534. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/index.mdx +0 -0
  535. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/sdk/client-sdk.mdx +0 -0
  536. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/sdk/concepts.mdx +0 -0
  537. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/sdk/examples.mdx +0 -0
  538. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/pages/sdk/getting-started.mdx +0 -0
  539. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/public/images/favicon.png +0 -0
  540. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/public/images/logo-dark.svg +0 -0
  541. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/public/images/logo-light.svg +0 -0
  542. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/public/styles/global.css +0 -0
  543. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/tsconfig.json +0 -0
  544. {minima_cli-0.12.0 → minima_cli-0.12.2}/docs-site/vocs.config.ts +0 -0
  545. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/01_quickstart.sh +0 -0
  546. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/02_recommend_and_feedback.py +0 -0
  547. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/03_constraints_and_tradeoff.py +0 -0
  548. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/04_workflow.py +0 -0
  549. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/05_autocapture.py +0 -0
  550. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/06_routed_llm_call.py +0 -0
  551. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/07_multitenant_admin.py +0 -0
  552. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/README.md +0 -0
  553. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/agent_escalation.py +0 -0
  554. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/agent_escalation_learn.py +0 -0
  555. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/agent_gemini.py +0 -0
  556. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/agent_retention.py +0 -0
  557. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/agent_warmup.py +0 -0
  558. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/agent_warmup_vary.py +0 -0
  559. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/metrics_demo.py +0 -0
  560. {minima_cli-0.12.0 → minima_cli-0.12.2}/examples/smoke_test.py +0 -0
  561. {minima_cli-0.12.0 → minima_cli-0.12.2}/maybe.js +0 -0
  562. {minima_cli-0.12.0 → minima_cli-0.12.2}/maybe.ts +0 -0
  563. {minima_cli-0.12.0/packages/tui → minima_cli-0.12.2/packages/sdk}/.gitignore +0 -0
  564. {minima_cli-0.12.0/packages/tui → minima_cli-0.12.2/packages/sdk}/biome.json +0 -0
  565. {minima_cli-0.12.0/packages/tui/src/minima → minima_cli-0.12.2/packages/sdk/src}/schemas.ts +0 -0
  566. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/README.md +0 -0
  567. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/bun.lock +0 -0
  568. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/scripts/build-all.ts +0 -0
  569. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/scripts/build.ts +0 -0
  570. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/scripts/gen-fixture-session.ts +0 -0
  571. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/scripts/install.sh +0 -0
  572. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/scripts/mock_openai_sse.ts +0 -0
  573. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/scripts/plan_latency_bench.ts +0 -0
  574. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/scripts/pty_capture.py +0 -0
  575. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/scripts/stub-devtools.ts +0 -0
  576. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/scripts/tui_assert.py +0 -0
  577. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/scripts/tui_verify.sh +0 -0
  578. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/agent/agent.ts +0 -0
  579. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/agent/events.ts +0 -0
  580. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/agent/index.ts +0 -0
  581. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/agent/loop.ts +0 -0
  582. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/agent/modes.ts +0 -0
  583. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/agent/policy.ts +0 -0
  584. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/agent/state.ts +0 -0
  585. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/agent/tools.ts +0 -0
  586. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/compat.ts +0 -0
  587. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/events.ts +0 -0
  588. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/index.ts +0 -0
  589. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/provider_catalog.ts +0 -0
  590. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/provider_quirks.ts +0 -0
  591. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/providers/_common.ts +0 -0
  592. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/providers/anthropic.ts +0 -0
  593. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/providers/base.ts +0 -0
  594. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/providers/faux.ts +0 -0
  595. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/providers/google.ts +0 -0
  596. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/providers/index.ts +0 -0
  597. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/providers/openai_compat.ts +0 -0
  598. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/registry.ts +0 -0
  599. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/stream.ts +0 -0
  600. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/types.ts +0 -0
  601. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/ai/usage.ts +0 -0
  602. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/db/metrics.ts +0 -0
  603. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/db/sink.ts +0 -0
  604. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/errtext.ts +0 -0
  605. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/index.ts +0 -0
  606. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/anti_spiral.ts +0 -0
  607. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/behavior.ts +0 -0
  608. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/budget.ts +0 -0
  609. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/catalog.ts +0 -0
  610. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/check.ts +0 -0
  611. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/client.ts +0 -0
  612. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/confidence.ts +0 -0
  613. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/errors.ts +0 -0
  614. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/gt_contract.ts +0 -0
  615. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/gt_factors.ts +0 -0
  616. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/judge.ts +0 -0
  617. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/mapping.ts +0 -0
  618. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/memory.ts +0 -0
  619. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/mubit_memory_factory.ts +0 -0
  620. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/plan_council.ts +0 -0
  621. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/plan_lint.ts +0 -0
  622. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/plan_refute.ts +0 -0
  623. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/plan_seed.ts +0 -0
  624. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/plan_session.ts +0 -0
  625. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/plan_turn.ts +0 -0
  626. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/router.ts +0 -0
  627. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/spawn.ts +0 -0
  628. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/stop_gate.ts +0 -0
  629. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/tool_permissions.ts +0 -0
  630. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/minima/why.ts +0 -0
  631. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/run_modes.ts +0 -0
  632. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/session/checkpoint.ts +0 -0
  633. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/session/index.ts +0 -0
  634. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/session/rewind.ts +0 -0
  635. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/session/sections.ts +0 -0
  636. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/session/store.ts +0 -0
  637. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/_ddg.ts +0 -0
  638. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/_exa.ts +0 -0
  639. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/_io.ts +0 -0
  640. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/_search.ts +0 -0
  641. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/apply_patch.ts +0 -0
  642. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/at_mentions.ts +0 -0
  643. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/bash.ts +0 -0
  644. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/builtin.ts +0 -0
  645. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/edit.ts +0 -0
  646. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/exit_plan.ts +0 -0
  647. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/glob.ts +0 -0
  648. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/grep.ts +0 -0
  649. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/index.ts +0 -0
  650. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/ls.ts +0 -0
  651. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/question.ts +0 -0
  652. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/read.ts +0 -0
  653. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/schema.ts +0 -0
  654. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/task.ts +0 -0
  655. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/todowrite.ts +0 -0
  656. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/types.ts +0 -0
  657. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/web_fetch.ts +0 -0
  658. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/web_search.ts +0 -0
  659. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tools/write.ts +0 -0
  660. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/auth.ts +0 -0
  661. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/badge_slot.ts +0 -0
  662. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/busy.tsx +0 -0
  663. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/child_tree.tsx +0 -0
  664. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/clipboard.ts +0 -0
  665. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/compact.ts +0 -0
  666. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/config_store.ts +0 -0
  667. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/context.ts +0 -0
  668. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/current_action.ts +0 -0
  669. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/expand_panel.tsx +0 -0
  670. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/footer.ts +0 -0
  671. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/gt_overview.ts +0 -0
  672. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/input-filter.ts +0 -0
  673. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/layout.ts +0 -0
  674. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/messages.tsx +0 -0
  675. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/mode_prefs.ts +0 -0
  676. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/model-picker.tsx +0 -0
  677. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/panel_state.ts +0 -0
  678. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/perf.ts +0 -0
  679. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/permissions.ts +0 -0
  680. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/plan_draft_view.ts +0 -0
  681. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/projects.ts +0 -0
  682. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/reader.ts +0 -0
  683. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/resume.ts +0 -0
  684. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/rewind_picker.ts +0 -0
  685. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/routing-warnings.ts +0 -0
  686. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/status.tsx +0 -0
  687. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/suspend.ts +0 -0
  688. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/task_footer.ts +0 -0
  689. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/text-input.tsx +0 -0
  690. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/tips.ts +0 -0
  691. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/tui/toc.ts +0 -0
  692. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/types.d.ts +0 -0
  693. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/src/version.ts +0 -0
  694. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/acceptance-e2e.test.ts +0 -0
  695. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/agent.test.ts +0 -0
  696. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/ai.test.ts +0 -0
  697. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/anthropic.test.ts +0 -0
  698. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/anti-spiral-runtime.test.ts +0 -0
  699. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/anti-spiral.test.ts +0 -0
  700. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/apply_patch.test.ts +0 -0
  701. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/auth.test.ts +0 -0
  702. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/badge_slot.test.ts +0 -0
  703. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/bash-group.test.ts +0 -0
  704. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/behavior.test.ts +0 -0
  705. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/budget.test.ts +0 -0
  706. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/busy.test.ts +0 -0
  707. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/candidate-filter.test.ts +0 -0
  708. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/catalog.test.ts +0 -0
  709. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/check.test.ts +0 -0
  710. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/checkpoint.test.ts +0 -0
  711. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/cli.test.ts +0 -0
  712. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/client.test.ts +0 -0
  713. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/confidence.test.ts +0 -0
  714. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/config_env.test.ts +0 -0
  715. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/config_store.test.ts +0 -0
  716. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/current_action.test.ts +0 -0
  717. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/db_migrate.test.ts +1 -1
  718. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/effort.test.ts +0 -0
  719. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/error-ux.test.ts +0 -0
  720. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/exit_plan.test.ts +0 -0
  721. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/failure-kind-runtime.test.ts +0 -0
  722. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/failure-kind.test.ts +0 -0
  723. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/footer.test.ts +0 -0
  724. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/gate.test.ts +0 -0
  725. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/google.test.ts +0 -0
  726. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/ground_truth.test.ts +0 -0
  727. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/grounded.test.ts +0 -0
  728. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/gt-attribution.test.ts +0 -0
  729. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/gt-contract.test.ts +0 -0
  730. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/gt-e2e.test.ts +0 -0
  731. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/gt-footer.test.ts +0 -0
  732. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/gt_factors.test.ts +0 -0
  733. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/gt_overview.test.ts +0 -0
  734. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/hooks.test.ts +0 -0
  735. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/isolation.test.ts +0 -0
  736. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/j1-e2e.test.ts +0 -0
  737. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/judge.test.ts +0 -0
  738. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/layout.test.ts +0 -0
  739. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/learning-loop.test.ts +0 -0
  740. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/memory.test.ts +0 -0
  741. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/modes.test.ts +0 -0
  742. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/openai_compat.test.ts +0 -0
  743. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/panel_state.test.ts +0 -0
  744. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/permissions.test.ts +0 -0
  745. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/plan-lint.test.ts +0 -0
  746. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/plan_council.test.ts +0 -0
  747. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/plan_draft_view.test.ts +0 -0
  748. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/plan_finalize.test.ts +0 -0
  749. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/plan_refute.test.ts +0 -0
  750. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/plan_session.test.ts +0 -0
  751. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/plan_turn.test.ts +0 -0
  752. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/policy.test.ts +0 -0
  753. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/reader.test.ts +0 -0
  754. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/recall-user-id.test.ts +0 -0
  755. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/render-buffer.test.ts +0 -0
  756. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/resume-gt.test.ts +0 -0
  757. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/rewind.test.ts +0 -0
  758. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/rewind_picker.test.ts +0 -0
  759. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/run_modes.test.ts +0 -0
  760. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/sections.test.ts +0 -0
  761. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/session.test.ts +0 -0
  762. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/spawn.test.ts +0 -0
  763. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/stop-gate-runtime.test.ts +0 -0
  764. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/stop-gate.test.ts +0 -0
  765. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/task.test.ts +0 -0
  766. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/task_footer.test.ts +0 -0
  767. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/thinking.test.ts +0 -0
  768. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/tips.test.ts +0 -0
  769. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/toc.test.ts +0 -0
  770. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/todowrite.test.ts +0 -0
  771. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/tool-permissions.test.ts +0 -0
  772. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/tool_marker.test.ts +0 -0
  773. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/tools-persistence.test.ts +0 -0
  774. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/tools.test.ts +0 -0
  775. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/verify-consent.test.ts +0 -0
  776. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tests/why.test.ts +0 -0
  777. {minima_cli-0.12.0 → minima_cli-0.12.2}/packages/tui/tsconfig.json +0 -0
  778. {minima_cli-0.12.0 → minima_cli-0.12.2}/packaging/homebrew/README.md +0 -0
  779. {minima_cli-0.12.0 → minima_cli-0.12.2}/packaging/homebrew/render_formula.py +0 -0
  780. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_125009/recall_debug.jsonl +0 -0
  781. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_125009/strategies_run1.json +0 -0
  782. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_125009/strategies_run2.json +0 -0
  783. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_125009/strategies_run3.json +0 -0
  784. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_125009/tasks.jsonl +0 -0
  785. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_130252/REPORT.md +0 -0
  786. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_130252/recall_debug.jsonl +0 -0
  787. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_130252/strategies_run1.json +0 -0
  788. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_130252/strategies_run2.json +0 -0
  789. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_130252/strategies_run3.json +0 -0
  790. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_130252/strategies_run4.json +0 -0
  791. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_130252/strategies_run5.json +0 -0
  792. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_130252/summary.json +0 -0
  793. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_130252/tasks.jsonl +0 -0
  794. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_182838/recall_debug.jsonl +0 -0
  795. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_182838/strategies_run1.json +0 -0
  796. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_182838/strategies_run2.json +0 -0
  797. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_182838/tasks.jsonl +0 -0
  798. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_183343/REPORT.md +0 -0
  799. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_183343/memory_audit.json +0 -0
  800. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_183343/recall_debug.jsonl +0 -0
  801. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_183343/strategies_run1.json +0 -0
  802. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_183343/strategies_run2.json +0 -0
  803. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_183343/strategies_run3.json +0 -0
  804. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_183343/strategies_run4.json +0 -0
  805. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_183343/strategies_run5.json +0 -0
  806. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_183343/summary.json +0 -0
  807. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260612_183343/tasks.jsonl +0 -0
  808. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260615_101732/REPORT.md +0 -0
  809. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260615_101732/memory_audit.json +0 -0
  810. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260615_101732/recall_debug.jsonl +0 -0
  811. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260615_101732/strategies_run1.json +0 -0
  812. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260615_101732/strategies_run2.json +0 -0
  813. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260615_101732/strategies_run3.json +0 -0
  814. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260615_101732/strategies_run4.json +0 -0
  815. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260615_101732/strategies_run5.json +0 -0
  816. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260615_101732/summary.json +0 -0
  817. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260615_101732/tasks.jsonl +0 -0
  818. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260624_103307/memory_audit.json +0 -0
  819. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260624_103307/recall_debug.jsonl +0 -0
  820. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/20260624_103307/tasks.jsonl +0 -0
  821. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/escalate_20260615_133108/cold_probe.json +0 -0
  822. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/escalate_20260615_133108/summary.json +0 -0
  823. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/escalate_20260615_133108/tasks.jsonl +0 -0
  824. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/escalate_20260615_134209/REPORT.md +0 -0
  825. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/escalate_20260615_134209/cold_probe.json +0 -0
  826. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/escalate_20260615_134209/summary.json +0 -0
  827. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/escalate_20260615_134209/tasks.jsonl +0 -0
  828. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/escalation_20260612_201825/REPORT.md +0 -0
  829. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/escalation_20260612_201825/results.jsonl +0 -0
  830. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/escalation_20260612_201825/summary.json +0 -0
  831. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/playground_p1/_manifest.json +0 -0
  832. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/playground_p1/calibration.json +0 -0
  833. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/playground_p1/feedback.json +0 -0
  834. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/playground_p1/health.json +0 -0
  835. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/playground_p1/models.json +0 -0
  836. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/playground_p1/recommend.json +0 -0
  837. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/playground_p1/savings.json +0 -0
  838. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/playground_p1/strategies.json +0 -0
  839. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/playground_p1/workflow.json +0 -0
  840. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/retention_20260612_201828/REPORT.md +0 -0
  841. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/retention_20260612_201828/results.jsonl +0 -0
  842. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/retention_20260612_201828/summary.json +0 -0
  843. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/warmupvary_20260615_123818/REPORT.md +0 -0
  844. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/warmupvary_20260615_123818/summary.json +0 -0
  845. {minima_cli-0.12.0 → minima_cli-0.12.2}/runs/warmupvary_20260615_123818/tasks.jsonl +0 -0
  846. {minima_cli-0.12.0 → minima_cli-0.12.2}/scripts/eval/classify_dataset.json +0 -0
  847. {minima_cli-0.12.0 → minima_cli-0.12.2}/scripts/eval/eval_classify.py +0 -0
  848. {minima_cli-0.12.0 → minima_cli-0.12.2}/scripts/test-routing-web.ts +0 -0
  849. {minima_cli-0.12.0 → minima_cli-0.12.2}/scripts/test-routing.sh +0 -0
  850. {minima_cli-0.12.0 → minima_cli-0.12.2}/scripts/test-routing.ts +0 -0
  851. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/__init__.py +0 -0
  852. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/api/__init__.py +0 -0
  853. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/api/auth.py +0 -0
  854. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/api/errors.py +0 -0
  855. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/api/routers/__init__.py +0 -0
  856. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/api/routers/calibration.py +0 -0
  857. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/api/routers/capabilities.py +0 -0
  858. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/api/routers/health.py +0 -0
  859. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/api/routers/models.py +0 -0
  860. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/api/routers/recommend.py +0 -0
  861. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/api/routers/savings.py +0 -0
  862. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/api/routers/strategies.py +0 -0
  863. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/catalog/__init__.py +0 -0
  864. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/catalog/data/benchmark_priors.json +0 -0
  865. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/catalog/data/capability_priors.json +0 -0
  866. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/catalog/data/model_aliases.json +0 -0
  867. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/catalog/merge.py +0 -0
  868. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/catalog/refresh.py +0 -0
  869. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/catalog/sources/__init__.py +0 -0
  870. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/catalog/sources/litellm.py +0 -0
  871. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/catalog/sources/openrouter.py +0 -0
  872. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/catalog/store.py +0 -0
  873. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/deps.py +0 -0
  874. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/logging.py +0 -0
  875. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/main.py +0 -0
  876. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/memory/__init__.py +0 -0
  877. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/memory/adapter.py +0 -0
  878. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/memory/keys.py +0 -0
  879. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/memory/threadpool.py +0 -0
  880. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/metrics/__init__.py +0 -0
  881. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/metrics/calibration.py +0 -0
  882. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/metrics/ope.py +0 -0
  883. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/metrics/report.py +0 -0
  884. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/metrics/savings.py +0 -0
  885. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/recommender/__init__.py +0 -0
  886. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/recommender/_pg_pool.py +0 -0
  887. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/recommender/_redis_client.py +0 -0
  888. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/recommender/classify.py +0 -0
  889. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/recommender/decisionlog.py +0 -0
  890. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/recommender/durablerefs.py +0 -0
  891. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/recommender/escalation.py +0 -0
  892. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/recommender/recstore.py +0 -0
  893. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/recommender/score.py +0 -0
  894. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/recommender/types.py +0 -0
  895. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/schemas/__init__.py +0 -0
  896. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/schemas/capabilities.py +0 -0
  897. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/schemas/common.py +0 -0
  898. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/schemas/feedback.py +0 -0
  899. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/schemas/models_catalog.py +0 -0
  900. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/schemas/recommend.py +0 -0
  901. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/schemas/savings.py +0 -0
  902. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/schemas/strategies.py +0 -0
  903. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/schemas/workflow.py +0 -0
  904. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/seeding/__init__.py +0 -0
  905. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/seeding/items.py +0 -0
  906. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/seeding/llmrouterbench.py +0 -0
  907. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/seeding/routerbench.py +0 -0
  908. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/seeding/run_seed.py +0 -0
  909. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/seeding/synthetic.py +0 -0
  910. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/tenancy/__init__.py +0 -0
  911. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/tenancy/context.py +0 -0
  912. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/tenancy/passthrough.py +0 -0
  913. {minima_cli-0.12.0 → minima_cli-0.12.2}/src/minima/version.py +0 -0
  914. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/__init__.py +0 -0
  915. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/conftest.py +0 -0
  916. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/eval/BENCHMARKS.md +0 -0
  917. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/eval/CRITERIA.md +0 -0
  918. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/eval/RESULTS.md +0 -0
  919. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/eval/__init__.py +0 -0
  920. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/eval/harness.py +0 -0
  921. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/eval/llmrouterbench_config.py +0 -0
  922. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/eval/prompt_length_benchmark.py +0 -0
  923. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/eval/test_llmrouterbench_savings.py +0 -0
  924. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/eval/test_routerbench_savings.py +0 -0
  925. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/factories.py +0 -0
  926. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/integration/test_auth.py +0 -0
  927. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/integration/test_lesson_promotion.py +0 -0
  928. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/integration/test_observed_cost_ranking.py +0 -0
  929. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/integration/test_recommend_api.py +0 -0
  930. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/integration/test_strategies_api.py +0 -0
  931. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/integration/test_workflow_models_health.py +0 -0
  932. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/live/test_cost_savings_spotcheck_live.py +0 -0
  933. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/live/test_escalation_fixes.py +0 -0
  934. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/live/test_full_surface_live.py +0 -0
  935. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/live/test_mubit_roundtrip.py +0 -0
  936. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/live/test_phase3_live.py +0 -0
  937. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/live/test_recall_params_live.py +0 -0
  938. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_accumulating_records.py +0 -0
  939. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_aggregate.py +0 -0
  940. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_aggregate_decay.py +0 -0
  941. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_autocapture.py +0 -0
  942. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_calibration_fit.py +0 -0
  943. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_capabilities.py +0 -0
  944. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_classify_benchmark.py +0 -0
  945. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_classify_keys.py +0 -0
  946. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_cluster.py +0 -0
  947. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_cost_band.py +0 -0
  948. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_decisionlog.py +0 -0
  949. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_escalation.py +0 -0
  950. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_iterations.py +0 -0
  951. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_latency_quality.py +0 -0
  952. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_lookup_parse.py +0 -0
  953. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_metrics.py +0 -0
  954. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_metrics_demo.py +0 -0
  955. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_neighbor_classify.py +0 -0
  956. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_ope.py +0 -0
  957. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_prompt_length_benchmark.py +0 -0
  958. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_records_catalog.py +0 -0
  959. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_recstore_sqlite.py +0 -0
  960. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_score.py +0 -0
  961. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_store_backends.py +0 -0
  962. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_strategies.py +0 -0
  963. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_tenancy.py +0 -0
  964. {minima_cli-0.12.0 → minima_cli-0.12.2}/tests/unit/test_thompson.py +0 -0
@@ -92,9 +92,22 @@ jobs:
92
92
  git checkout -B "$BRANCH"
93
93
  git add "$SNAPSHOT_PATH"
94
94
  git commit -m "chore(catalog): refresh vendored model snapshot from live /v1/models"
95
- git push -u origin "$BRANCH" --force-with-lease
95
+ # Plain --force: this branch is automation-owned and rebuilt from main every
96
+ # run, and the fresh checkout has no remote-tracking ref for it, so
97
+ # --force-with-lease always fails with "stale info" once the branch exists.
98
+ git push -u origin "$BRANCH" --force
96
99
 
97
- gh pr create --base main --head "$BRANCH" \
100
+ # Fail LOUD when the PR can't be opened: `|| echo` masked a hard denial
101
+ # ("GitHub Actions is not permitted to create ... pull requests") for days —
102
+ # green runs, branch pushed, no PR, nobody the wiser. An existing open PR is
103
+ # the only benign create-failure; anything else must turn the run red.
104
+ if ! gh pr create --base main --head "$BRANCH" \
98
105
  --title "chore(catalog): refresh vendored model snapshot" \
99
- --body "Automated refresh of \`$SNAPSHOT_PATH\` from the live catalog at \`$CATALOG_URL\` (normalized to the loader's shape). Opened by \`.github/workflows/catalog-snapshot.yml\`. Review the diff — this is the cold-start fallback the server serves when the live cost feed is unreachable." \
100
- || echo "PR already open for $BRANCH; pushed update."
106
+ --body "Automated refresh of \`$SNAPSHOT_PATH\` from the live catalog at \`$CATALOG_URL\` (normalized to the loader's shape). Opened by \`.github/workflows/catalog-snapshot.yml\`. Review the diff — this is the cold-start fallback the server serves when the live cost feed is unreachable."; then
107
+ if [ -n "$(gh pr list --base main --head "$BRANCH" --json number --jq '.[0].number // empty')" ]; then
108
+ echo "PR already open for $BRANCH; pushed update."
109
+ else
110
+ echo "::error::pushed $BRANCH but could not open its PR — likely the repo forbids Actions-created PRs (Settings → Actions → General → 'Allow GitHub Actions to create and approve pull requests')"
111
+ exit 1
112
+ fi
113
+ fi
@@ -67,3 +67,30 @@ jobs:
67
67
 
68
68
  - name: Typecheck
69
69
  run: bun run check
70
+
71
+ sdk-ts:
72
+ name: TS SDK — bun test + tsc
73
+ runs-on: ubuntu-latest
74
+ defaults:
75
+ run:
76
+ working-directory: packages/sdk
77
+ steps:
78
+ - name: Checkout
79
+ uses: actions/checkout@v5
80
+
81
+ - name: Set up Bun
82
+ uses: oven-sh/setup-bun@v2
83
+ with:
84
+ bun-version: ${{ env.BUN_VERSION }}
85
+
86
+ - name: Install deps
87
+ run: bun install --frozen-lockfile
88
+
89
+ - name: Test
90
+ run: bun test
91
+
92
+ - name: Typecheck
93
+ run: bun run check
94
+
95
+ - name: Lint
96
+ run: bun run lint
@@ -1,8 +1,8 @@
1
1
  name: Release — CLI binaries + Homebrew
2
2
 
3
3
  # On a published release, cross-compile the TypeScript/Bun CLI for macOS + Linux,
4
- # ad-hoc codesign the macOS arches, attach the tarballs to the release, and open
5
- # a PR to the Homebrew tap (mubit-ai/homebrew-minima) bumping the binary formula.
4
+ # ad-hoc codesign the macOS arches, attach the tarballs to the release, and push
5
+ # the bumped binary formula straight to the Homebrew tap (mubit-ai/homebrew-minima).
6
6
  # PyPI publishing of the Python `minima-cli` (SDK + server tooling) stays in prod.yml.
7
7
  on:
8
8
  release:
@@ -92,7 +92,7 @@ jobs:
92
92
  path: packages/tui/dist/minima-*.tar.gz
93
93
 
94
94
  publish-and-bump:
95
- name: Attach assets + open tap PR
95
+ name: Attach assets + push tap formula
96
96
  needs: [build-macos, build-linux]
97
97
  runs-on: ubuntu-latest
98
98
  steps:
@@ -116,7 +116,12 @@ jobs:
116
116
  VER="${RELEASE_TAG#v}"
117
117
  python3 packaging/homebrew/render_formula.py --version "$VER" --dist dist --out minima.rb
118
118
  echo "----- rendered formula -----"; cat minima.rb
119
- - name: Open Homebrew tap PR
119
+ # Direct push, not a PR: the formula PRs sat unmerged (0.11.0 AND 0.12.0 —
120
+ # brew served 0.10.0 until 2026-07-20), so a published release silently never
121
+ # reached users. The sha256s come from the just-built release artifacts, so
122
+ # there is nothing for a reviewer to judge that the release itself didn't
123
+ # already gate.
124
+ - name: Push formula to the tap
120
125
  env:
121
126
  GH_TOKEN: ${{ secrets.GH_PAT }}
122
127
  run: |
@@ -126,15 +131,18 @@ jobs:
126
131
  cd tap
127
132
  git config user.name "mubit-release-bot"
128
133
  git config user.email "release-bot@mubit.ai"
129
- branch="bump-minima-${VER}"
130
- git checkout -b "$branch"
131
134
  if git diff --quiet Formula/minima.rb; then
132
135
  echo "formula already up to date for ${VER}; nothing to do"; exit 0
133
136
  fi
134
137
  git add Formula/minima.rb
135
138
  git commit -m "minima ${VER} (prebuilt binary)"
136
- git push -u origin "$branch" --force-with-lease
137
- gh pr create --repo mubit-ai/homebrew-minima --base main --head "$branch" \
138
- --title "minima ${VER}" \
139
- --body "Automated bump to the prebuilt TypeScript/Bun binary for \`${RELEASE_TAG}\`. Replaces the Python virtualenv formula. \`brew test-bot\` validates install + \`test do\` on macOS + Linux before merge." \
140
- || echo "PR already exists for ${branch}"
139
+ git push origin HEAD:main
140
+ - name: Verify the tap serves the released version
141
+ run: |
142
+ VER="${RELEASE_TAG#v}"
143
+ served=$(curl -fsSL "https://raw.githubusercontent.com/mubit-ai/homebrew-minima/main/Formula/minima.rb" | sed -n 's/^ *version "\(.*\)"/\1/p' | head -1)
144
+ if [ "$served" != "$VER" ]; then
145
+ echo "::error::tap serves ${served:-nothing} but the release is ${VER}"
146
+ exit 1
147
+ fi
148
+ echo "tap serves ${served}"
@@ -4,6 +4,96 @@ All notable changes to Minima are documented here. The format follows
4
4
  [Keep a Changelog](https://keepachangelog.com/), and the project aims to follow
5
5
  [Semantic Versioning](https://semver.org/).
6
6
 
7
+ ## [0.12.2] - 2026-07-20
8
+
9
+ The memory spine: the SQLite ledger starts feeding decisions. Ten PRs across the
10
+ harness and server (#175–#184) — curated cross-session memory, a background
11
+ curator, recall track records on server memory, and the durable-execution +
12
+ verification upgrades.
13
+
14
+ ### Added
15
+ - **Memory ledger** (harness, default ON — `MINIMA_TUI_MEMORY=0` opts out; migration
16
+ v12): curated per-repo memories (`note`/`workflow`/`lesson`/`guardrail`) projected
17
+ into each turn's system prompt (hard-capped, pinned > gate-cited > recency; every
18
+ distinct injection audited so "what the model saw" is replayable). Managed via
19
+ `/memory` (list · add · dream · pin/confirm/reject/delete = bi-temporal invalidate).
20
+ The model has no memory-write tool (Letta split).
21
+ - **Memory scribe**: the sole automated memory writer — signals mined from the ledger
22
+ (gate flips, verified failures, user corrections, judge/gate disagreements — never
23
+ the transcript), recurrence-gated, one extraction call routed through Minima
24
+ (`tags=["memory:extract"]`, spend booked like judge spend), mem0-style
25
+ reconciliation (rejected rows never resurrected), provenance activation (only
26
+ gate-cited candidates auto-activate). Runs as crash-safe persisted jobs.
27
+ - **Memory dream** (`/memory dream`): deterministic offline consolidation — only
28
+ green-gated closed plans distill into `workflow` candidates (always pending, never
29
+ mutates existing rows). Confirmed workflows enable **replay-with-cheap**: matching
30
+ prompts route with `tags=["procedure:known"]` so Thompson learns the cheaper
31
+ frontier for known-procedure work organically.
32
+ - **Recall track** (server, schema v5): every trusted-label feedback casts a vote on
33
+ the durable records recalled into that decision; bad-track records are down-weighted
34
+ (floor 0.25) and eventually tombstoned (`invalidated_at`, never deleted;
35
+ `recall_invalidated_skipped:<n>` recommend warning). `MINIMA_RECALL_VOTE_MIN_N` /
36
+ `MINIMA_RECALL_INVALIDATE_RATE`.
37
+ - **Planning critic** (advisory, at `/plan` finalize) + **zero-context diff reviewer**
38
+ (at plan closure; an objection can yellow the plan tier, never green it).
39
+ `MINIMA_TUI_PLAN_CRITIC=0` / `MINIMA_TUI_DIFF_REVIEW=0` opt out.
40
+ - **Auto-gates**: repo manifests mined for trusted-by-construction check commands at
41
+ `/plan` finalize — fast command (typecheck/lint) on verify-less steps, full test
42
+ suite on the final step. `MINIMA_TUI_AUTO_GATES=0` opts out.
43
+ - **Version stamps + blob tier** (migration v13): decisions/gates record
44
+ `harness_version` + a toolset hash (resume warns on skew, never blocks); >16KB tool
45
+ results spill to content-addressed blob files.
46
+ - **Resume re-verify**: resuming re-runs the in-progress step's verify against its
47
+ recorded baseline (consent-gated) — divergence re-baselines from reality with a 🟡
48
+ banner; the resumed run's provider session id is reused for prompt-cache continuity.
49
+ - **Ladder v2**: named rung states (`retry_step`/`revise_step`/`replan`) on recovery
50
+ gates + feedback notes; repeated verified failures unlock full failing-check output
51
+ in the retry prompt.
52
+ - **Honest meter**: KV-cache hit rate and cost-of-pass (labeled successes only, with
53
+ coverage disclosure) in `/cost`.
54
+
55
+ ## [0.12.1] - 2026-07-20
56
+
57
+ SDK integrity + a standalone TypeScript SDK. Server wire contract unchanged; all
58
+ changes are client-side and release-pipeline hardening.
59
+
60
+ ### Added
61
+ - **`@mubit-ai/minima-sdk`** (`packages/sdk`) — a standalone TypeScript SDK: pure-fetch
62
+ typed `/v1/*` client with zero runtime dependencies (Node 18+/Deno/Bun/edge), full
63
+ surface including `policyValue()`, typed feedback options, transparent feedback
64
+ retries, and rate-limit-aware errors. Its schema mirror is pinned against the
65
+ Pydantic source of truth alongside the TUI's.
66
+ - Python SDK: `capabilities()` and `policy_value()` (the doubly-robust
67
+ regret-vs-oracle report) on both clients; `recommend()` gains `incumbent_model_id`,
68
+ `max_candidates`, and `phase=` (rides as the `phase:<v>` tag); `feedback()` gains
69
+ typed named params (`quality_score`, `evidence_source`, `error_cause`,
70
+ `chosen_effort`, `iterations`); `x-minima-client`/`User-Agent` headers; feedback
71
+ retries with backoff on transient faults (safe under the reconcile replay guard —
72
+ recommend stays fail-fast); `MinimaRateLimited(retry_after)` and
73
+ `MinimaUnavailable` error subtypes.
74
+ - OpenHands adapter closes the loop: realized cost/tokens/latency auto-reported as
75
+ `evidence_source="none"` telemetry off the selected LLM's metrics, fire-and-forget;
76
+ `minima_timeout` (default 5 s) bounds the hot-path recommend.
77
+
78
+ ### Fixed
79
+ - **LiteLLM logger graded outcomes**: quality now maps by the loop thresholds
80
+ (≥ 0.8 success / ≥ 0.4 partial / else **failure** with `error_cause="quality"`) —
81
+ previously a judged-bad response could never be labeled a failure.
82
+ - LiteLLM feedback calls run off the event loop (`asyncio.to_thread`) instead of
83
+ blocking the caller's async app for up to the client timeout per completion.
84
+ - LiteLLM recommendation→completion correlation is exact under concurrent identical
85
+ prompts (`rec_id` carried in-band via request metadata; hash join kept as fallback).
86
+ - `Usage` distinguishes "not measured" (`None`) from a real zero — 0 tokens / $0.00
87
+ are reported instead of dropped.
88
+ - `minima-route feedback --source` defaults to `none` — scripted feedback no longer
89
+ claims human-asserted provenance by default.
90
+ - The dead `allow_llm_escalation` parameter is removed from both Python clients (the
91
+ reasoner it fed was deleted in 0.11.0).
92
+ - Release pipeline: the Homebrew formula now pushes directly to the tap on release
93
+ (formula PRs previously sat unmerged — brew served 0.10.0 while 0.11.0/0.12.0
94
+ shipped) with a serves-the-released-version verification step; the nightly catalog
95
+ snapshot fails loudly when it cannot open its refresh PR instead of reporting green.
96
+
7
97
  ## [0.12.0] - 2026-07-20
8
98
 
9
99
  The Big Plan harness: the TUI's plan workflow grows verification teeth, and the
@@ -8,7 +8,8 @@ A Python service + client SDK, and a separate TypeScript harness:
8
8
 
9
9
  - **`src/minima/`** — Minima: a **recommend-only** LLM cost-optimization service (FastAPI, Python 3.11+). It never proxies, runs, or caches an LLM call. It answers "which model should I run for this task?" and learns from the outcome you report back. Memory is backed by [Mubit](https://docs.mubit.ai) and is the *only* external dependency of the core recommender. Hosted at `api.minima.sh`; deployed from GitHub releases (publishing a release triggers the prod deploy AND the CLI binary build).
10
10
  - **`client_sdk/minima_client/`** — bundled sync + async Python client. Ships in the same wheel as `src/minima` (`minima-cli` on PyPI).
11
- - **`packages/tui/`** — `minima-tui`: the **active harness** — a TypeScript/Ink agent runtime + TUI run on **Bun** (`bun:sqlite`, `>=1.2`). This is the `minima` CLI users install via Homebrew (`brew tap mubit-ai/minima`). Same `route → run → judge → feedback` loop against the `/v1/*` contract, with its own SQLite persistence spine (`src/db/minima_db.ts`, event-sourced, WAL, append-only migrations) and a `BudgetLedger`. Separate toolchain — not part of the Python wheel or `uv`. The version of record is `packages/tui/package.json` (kept in lockstep with `pyproject.toml`).
11
+ - **`packages/tui/`** — `minima-tui`: the **active harness** — a TypeScript/Ink agent runtime + TUI run on **Bun** (`bun:sqlite`, `>=1.2`). This is the `minima` CLI users install via Homebrew (`brew tap mubit-ai/minima`). Same `route → run → judge → feedback` loop against the `/v1/*` contract, with its own SQLite persistence spine (`src/db/minima_db.ts`, event-sourced, WAL, append-only migrations) and a `BudgetLedger`. Separate toolchain — not part of the Python wheel or `uv`. The version of record is `packages/tui/package.json` (kept in lockstep with `pyproject.toml` and `packages/sdk/package.json`).
12
+ - **`packages/sdk/`** — `@mubit-ai/minima-sdk`: the standalone **TypeScript SDK** — a pure-fetch typed `/v1/*` client (no runtime deps, no Bun APIs), mirroring `client_sdk/minima_client`. Own Bun toolchain for tests/typecheck; its `src/schemas.ts` is a second copy of the wire mirror, pinned by `tests/unit/test_ts_mirror.py`.
12
13
 
13
14
  ### The Minima loop (respect this everywhere)
14
15
 
@@ -77,7 +78,7 @@ Request flow (`api/routers/recommend.py` → `recommender/engine.py`):
77
78
  4. **escalation** (`recommender/escalation.py`) — DIAGNOSTIC only: thin/conflicting/tied evidence is surfaced as `escalation_suggested:*` warnings + decision-log reasons. The harness owns the cascade (its recovery ladder re-decides after a VERIFIED failure); the old pre-decision LLM reasoner was deleted.
78
79
  5. **feedback** (`api/routers/feedback.py`) — writes the outcome back to Mubit, reinforcing memory.
79
80
 
80
- Other packages: `catalog/` (model cost + capability priors), `tenancy/` (multi-tenant runtime — many orgs, per-org Mubit, one deployment; auth is pass-through: the client's Mubit key IS the credential), `seeding/` (`minima-seed` CLI for cold-start history), `schemas/` (Pydantic request/response models — the wire source of truth; every field must also land in the TS mirror `packages/tui/src/minima/schemas.ts`).
81
+ Other packages: `catalog/` (model cost + capability priors), `tenancy/` (multi-tenant runtime — many orgs, per-org Mubit, one deployment; auth is pass-through: the client's Mubit key IS the credential), `seeding/` (`minima-seed` CLI for cold-start history), `schemas/` (Pydantic request/response models — the wire source of truth; every field must also land in BOTH TS mirrors: `packages/tui/src/minima/schemas.ts` and `packages/sdk/src/schemas.ts`).
81
82
 
82
83
  Everything external is behind a Protocol so it can be faked in tests. The server stack (fastapi/uvicorn/psycopg2/redis) lives in the `[server]` extra — the core recommender + client is dependency-light on purpose.
83
84
 
@@ -87,6 +88,10 @@ Everything external is behind a Protocol so it can be faked in tests. The server
87
88
 
88
89
  **Ground-Truth verification spine** (shipped 2026-07, `docs/ground-truth-build-guide.md`): **ON by default** since Phase 0b (opt out with `MINIMA_TUI_GROUND_TRUTH=0`). Plan steps carry `verify` shell commands, the harness runs them (baseline → done-gate red→green), verdicts land in the `gates` ledger (migrations v3–v5), a confidence tier drives the UI (🟢 glide / 🟡 flag / 🔴 stop), and grounded outcomes stamp `routing_decisions` for deterministic-over-judge feedback. Green-tier gate verdicts are the harness's honest label source (`evidence_source="gate"` — the only origin that may claim verified-in-production); a sampled LLM judge (`MINIMA_JUDGE_SAMPLE`, default 15% of ungated turns, `MINIMA_LLM_JUDGE=0` disables) labels the rest; everything else is cost/latency telemetry. `/plan` (planner persona + design council + `GROUND_TRUTH.md` output) is part of this spine. Anything gated on ground truth belongs behind `config.groundTruth`, never behind prompt text.
89
90
 
91
+ **Memory ledger** (Track B of the memory spine, default ON; opt out with `MINIMA_TUI_MEMORY=0`): curated cross-session memory in SQLite (`memories`/`memory_events`/`memory_jobs`, migration v12). Active + pinned rows project into each turn's system prompt for the lead agent only (hard char cap, ranked pinned > gate-cited > recency; every distinct injected set is audited as an `inject` memory_event so "what the model saw" is replayable). Managed via `/memory` (list · add · pin/confirm/reject · delete = bi-temporal invalidate, never DELETE). Only the harness/user writes memories — the model has **no memory-write tool** (Letta split); keep it that way. The **scribe** (`src/minima/memory_scribe.ts`) is the sole automated writer: a background curator fed by SQL over the ledger (gate flips, verified failures, user corrections, judge/gate disagreements — never the transcript), recurrence-gated (a pattern must recur before it earns the one LLM extraction call, which routes through Minima with `tags=["memory:extract"]` and books its spend like judge spend), reconciled mem0-style (ADD/UPDATE/NOOP; rejected rows never resurrected), and provenance-gated (only gate-cited candidates auto-activate; the rest await `/memory confirm`). Triggers (session end, 90s quiet timer, startup leftovers) only enqueue `memory_jobs` rows; a crash-safe drain runs them.
92
+
93
+ **Verification extras** (E1): the **Planning Critic** (`src/minima/plan_critic.ts`, `MINIMA_TUI_PLAN_CRITIC=0` opts out) runs one cheap completion at `/plan` finalize over the approved steps + verifies — non-discriminative checks and hidden dependencies come back as advisory flags in the finalize note, never blockers. The **zero-context diff reviewer** (`src/minima/diff_review.ts`, `MINIMA_TUI_DIFF_REVIEW=0` opts out) fires when a plan closes fully completed: fresh-eyes review of the run's whole diff, no session context; an objection writes a yellow judge milestone gate (worst-tier resolution can yellow the plan, never green it; approval/skip writes nothing). Distinct from `/verify`'s refutation pass, which is ledger-briefed and re-runs checks.
94
+
90
95
  Design principles that constrain any work in this direction:
91
96
 
92
97
  - **State in the DB, projections in the context** — anything that must survive scroll/compaction/restart/a lying model lives in the ledger; the model sees only a compact re-injected projection.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: minima-cli
3
- Version: 0.12.0
3
+ Version: 0.12.2
4
4
  Summary: Minima CLI: cost-aware LLM model routing — recommend cheaper models, backed by Mubit memory.
5
5
  Project-URL: Homepage, https://docs.minima.sh
6
6
  Project-URL: Documentation, https://docs.minima.sh
@@ -7,8 +7,8 @@ OpenAI/Anthropic/LiteLLM/Google-GenAI clients so every LLM call auto-ingests its
7
7
  and gets relevant lessons injected — no code changes at the call site.
8
8
 
9
9
  What this does and does NOT do:
10
- - It DOES land traces + lessons in Minima's lane, so they enrich the reasoner's memory
11
- block (``get_context``) and Mubit's own reflection/strategy promotion.
10
+ - It DOES land traces + lessons in Minima's lane, so they enrich Mubit's reflection/
11
+ strategy promotion and anything that recalls from that lane (e.g. ``/v1/strategies``).
12
12
  - It does NOT, on its own, produce Minima *outcome records* (the ``kind="outcome"``
13
13
  rows the deterministic k-NN aggregator scores), and ``mubit.learn`` never fabricates
14
14
  a success signal. To close the loop, either call :func:`feedback` (credits the
@@ -3,18 +3,30 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  from dataclasses import dataclass
6
- from typing import Any
6
+ from importlib import metadata as _importlib_metadata
7
+ from typing import Any, Literal
7
8
 
8
9
  import httpx
9
-
10
+ from tenacity import (
11
+ AsyncRetrying,
12
+ Retrying,
13
+ retry_if_exception,
14
+ stop_after_attempt,
15
+ wait_exponential,
16
+ )
17
+
18
+ from minima.schemas.capabilities import CapabilitiesResponse
10
19
  from minima.schemas.common import Constraints, OutcomeLabel, TaskInput
11
20
  from minima.schemas.feedback import FeedbackRequest, FeedbackResponse
12
21
  from minima.schemas.models_catalog import ModelsResponse
13
22
  from minima.schemas.recommend import RecommendRequest, RecommendResponse
14
- from minima.schemas.savings import CalibrationResponse, SavingsResponse
23
+ from minima.schemas.savings import CalibrationResponse, PolicyValueResponse, SavingsResponse
15
24
  from minima.schemas.strategies import StrategiesResponse
16
25
  from minima.schemas.workflow import WorkflowRequest, WorkflowResponse
17
- from minima_client.errors import raise_for_status
26
+ from minima_client.errors import MinimaUnavailable, raise_for_status
27
+
28
+ EvidenceSource = Literal["gate", "judge", "human", "none"]
29
+ ErrorCause = Literal["infra", "quality"]
18
30
 
19
31
 
20
32
  def _report_params(
@@ -42,8 +54,47 @@ def _coerce_task(task: TaskLike) -> TaskInput:
42
54
  raise TypeError(f"unsupported task type: {type(task)!r}")
43
55
 
44
56
 
57
+ def _client_version() -> str:
58
+ try:
59
+ return _importlib_metadata.version("minima-cli")
60
+ except _importlib_metadata.PackageNotFoundError:
61
+ return "0.0.0-dev"
62
+
63
+
45
64
  def _headers(api_key: str | None) -> dict[str, str]:
46
- return {"Authorization": f"Bearer {api_key}"} if api_key else {}
65
+ version = _client_version()
66
+ headers = {
67
+ # Server-side compat gating (mirrors the TS client): new servers can
68
+ # version-gate response shapes on this; old servers ignore it.
69
+ "x-minima-client": version,
70
+ "user-agent": f"minima-cli/{version} (python-httpx)",
71
+ }
72
+ if api_key:
73
+ headers["Authorization"] = f"Bearer {api_key}"
74
+ return headers
75
+
76
+
77
+ # Feedback retries: the server's reconcile replay guard makes /v1/feedback safe to
78
+ # retry, and a transiently lost label is a silent learning loss. Transport faults and
79
+ # 502/503/504 retry; 4xx (including 429) surface immediately.
80
+ _FEEDBACK_RETRY = {
81
+ "retry": retry_if_exception(
82
+ lambda exc: isinstance(exc, httpx.TransportError | MinimaUnavailable)
83
+ ),
84
+ "stop": stop_after_attempt(3),
85
+ "wait": wait_exponential(multiplier=0.5, max=4),
86
+ "reraise": True,
87
+ }
88
+
89
+
90
+ def _apply_phase(task: TaskInput, phase: str | None) -> TaskInput:
91
+ """Reference-client convention: phase rides as a `phase:<value>` tag."""
92
+ if not phase:
93
+ return task
94
+ tag = f"phase:{phase}"
95
+ if tag in task.tags:
96
+ return task
97
+ return task.model_copy(update={"tags": [*task.tags, tag]})
47
98
 
48
99
 
49
100
  @dataclass(slots=True)
@@ -52,12 +103,13 @@ class Usage:
52
103
 
53
104
  Report what the provider ACTUALLY billed (never echo Minima's own est_cost_usd
54
105
  back): these numbers are what let the cost basis climb estimate -> observed ->
55
- rescaled for your org.
106
+ rescaled for your org. Fields default to None (= not measured); an explicit 0 is
107
+ a real measurement and is reported as such.
56
108
  """
57
109
 
58
- input_tokens: int = 0
59
- output_tokens: int = 0
60
- cost_usd: float = 0.0
110
+ input_tokens: int | None = None
111
+ output_tokens: int | None = None
112
+ cost_usd: float | None = None
61
113
  latency_ms: int | None = None
62
114
 
63
115
 
@@ -69,10 +121,14 @@ def _feedback_request(
69
121
  **kwargs: Any,
70
122
  ) -> FeedbackRequest:
71
123
  if usage is not None:
72
- kwargs.setdefault("input_tokens", usage.input_tokens or None)
73
- kwargs.setdefault("output_tokens", usage.output_tokens or None)
74
- kwargs.setdefault("actual_cost_usd", usage.cost_usd or None)
75
- kwargs.setdefault("latency_ms", usage.latency_ms)
124
+ if usage.input_tokens is not None:
125
+ kwargs.setdefault("input_tokens", usage.input_tokens)
126
+ if usage.output_tokens is not None:
127
+ kwargs.setdefault("output_tokens", usage.output_tokens)
128
+ if usage.cost_usd is not None:
129
+ kwargs.setdefault("actual_cost_usd", usage.cost_usd)
130
+ if usage.latency_ms is not None:
131
+ kwargs.setdefault("latency_ms", usage.latency_ms)
76
132
  return FeedbackRequest(
77
133
  recommendation_id=recommendation_id,
78
134
  chosen_model_id=chosen_model_id,
@@ -109,19 +165,22 @@ class MinimaClient:
109
165
  constraints: Constraints | None = None,
110
166
  user_id: str | None = None,
111
167
  namespace: str | None = None,
112
- allow_llm_escalation: bool = True,
113
168
  explain: bool = True,
114
169
  baseline_model_id: str | None = None,
170
+ incumbent_model_id: str | None = None,
171
+ max_candidates: int = 8,
172
+ phase: str | None = None,
115
173
  ) -> RecommendResponse:
116
174
  req = RecommendRequest(
117
- task=_coerce_task(task),
175
+ task=_apply_phase(_coerce_task(task), phase),
118
176
  cost_quality_tradeoff=cost_quality_tradeoff,
119
177
  constraints=constraints or Constraints(),
120
178
  user_id=user_id,
121
179
  namespace=namespace,
122
- allow_llm_escalation=allow_llm_escalation,
123
180
  explain=explain,
124
181
  baseline_model_id=baseline_model_id,
182
+ incumbent_model_id=incumbent_model_id,
183
+ max_candidates=max_candidates,
125
184
  )
126
185
  return RecommendResponse.model_validate(self._post("/v1/recommend", req))
127
186
 
@@ -155,10 +214,28 @@ class MinimaClient:
155
214
  chosen_model_id: str,
156
215
  outcome: OutcomeLabel | str,
157
216
  usage: Usage | None = None,
217
+ *,
218
+ quality_score: float | None = None,
219
+ evidence_source: EvidenceSource | None = None,
220
+ error_cause: ErrorCause | None = None,
221
+ chosen_effort: str | None = None,
222
+ iterations: int | None = None,
158
223
  **kwargs: Any,
159
224
  ) -> FeedbackResponse:
225
+ for key, value in (
226
+ ("quality_score", quality_score),
227
+ ("evidence_source", evidence_source),
228
+ ("error_cause", error_cause),
229
+ ("chosen_effort", chosen_effort),
230
+ ("iterations", iterations),
231
+ ):
232
+ if value is not None:
233
+ kwargs.setdefault(key, value)
160
234
  req = _feedback_request(recommendation_id, chosen_model_id, outcome, usage, **kwargs)
161
- return FeedbackResponse.model_validate(self._post("/v1/feedback", req))
235
+ for attempt in Retrying(**_FEEDBACK_RETRY):
236
+ with attempt:
237
+ return FeedbackResponse.model_validate(self._post("/v1/feedback", req))
238
+ raise AssertionError("unreachable") # reraise=True guarantees the loop exits by raise
162
239
 
163
240
  def models(
164
241
  self,
@@ -196,6 +273,21 @@ class MinimaClient:
196
273
  raise_for_status(resp)
197
274
  return StrategiesResponse.model_validate(resp.json())
198
275
 
276
+ def capabilities(self) -> CapabilitiesResponse:
277
+ resp = self._client.get("/v1/capabilities")
278
+ raise_for_status(resp)
279
+ return CapabilitiesResponse.model_validate(resp.json())
280
+
281
+ def policy_value(
282
+ self,
283
+ namespace: str | None = None,
284
+ days: float | None = None,
285
+ ) -> PolicyValueResponse:
286
+ """Regret-vs-oracle: doubly-robust policy values over reconciled decisions."""
287
+ resp = self._client.get("/v1/policy-value", params=_report_params(namespace, days))
288
+ raise_for_status(resp)
289
+ return PolicyValueResponse.model_validate(resp.json())
290
+
199
291
  def health(self) -> dict[str, Any]:
200
292
  resp = self._client.get("/v1/health")
201
293
  raise_for_status(resp)
@@ -230,19 +322,22 @@ class AsyncMinimaClient:
230
322
  constraints: Constraints | None = None,
231
323
  user_id: str | None = None,
232
324
  namespace: str | None = None,
233
- allow_llm_escalation: bool = True,
234
325
  explain: bool = True,
235
326
  baseline_model_id: str | None = None,
327
+ incumbent_model_id: str | None = None,
328
+ max_candidates: int = 8,
329
+ phase: str | None = None,
236
330
  ) -> RecommendResponse:
237
331
  req = RecommendRequest(
238
- task=_coerce_task(task),
332
+ task=_apply_phase(_coerce_task(task), phase),
239
333
  cost_quality_tradeoff=cost_quality_tradeoff,
240
334
  constraints=constraints or Constraints(),
241
335
  user_id=user_id,
242
336
  namespace=namespace,
243
- allow_llm_escalation=allow_llm_escalation,
244
337
  explain=explain,
245
338
  baseline_model_id=baseline_model_id,
339
+ incumbent_model_id=incumbent_model_id,
340
+ max_candidates=max_candidates,
246
341
  )
247
342
  return RecommendResponse.model_validate(await self._post("/v1/recommend", req))
248
343
 
@@ -278,10 +373,28 @@ class AsyncMinimaClient:
278
373
  chosen_model_id: str,
279
374
  outcome: OutcomeLabel | str,
280
375
  usage: Usage | None = None,
376
+ *,
377
+ quality_score: float | None = None,
378
+ evidence_source: EvidenceSource | None = None,
379
+ error_cause: ErrorCause | None = None,
380
+ chosen_effort: str | None = None,
381
+ iterations: int | None = None,
281
382
  **kwargs: Any,
282
383
  ) -> FeedbackResponse:
384
+ for key, value in (
385
+ ("quality_score", quality_score),
386
+ ("evidence_source", evidence_source),
387
+ ("error_cause", error_cause),
388
+ ("chosen_effort", chosen_effort),
389
+ ("iterations", iterations),
390
+ ):
391
+ if value is not None:
392
+ kwargs.setdefault(key, value)
283
393
  req = _feedback_request(recommendation_id, chosen_model_id, outcome, usage, **kwargs)
284
- return FeedbackResponse.model_validate(await self._post("/v1/feedback", req))
394
+ async for attempt in AsyncRetrying(**_FEEDBACK_RETRY):
395
+ with attempt:
396
+ return FeedbackResponse.model_validate(await self._post("/v1/feedback", req))
397
+ raise AssertionError("unreachable") # reraise=True guarantees the loop exits by raise
285
398
 
286
399
  async def strategies(
287
400
  self,
@@ -319,6 +432,21 @@ class AsyncMinimaClient:
319
432
  raise_for_status(resp)
320
433
  return ModelsResponse.model_validate(resp.json())
321
434
 
435
+ async def capabilities(self) -> CapabilitiesResponse:
436
+ resp = await self._client.get("/v1/capabilities")
437
+ raise_for_status(resp)
438
+ return CapabilitiesResponse.model_validate(resp.json())
439
+
440
+ async def policy_value(
441
+ self,
442
+ namespace: str | None = None,
443
+ days: float | None = None,
444
+ ) -> PolicyValueResponse:
445
+ """Regret-vs-oracle: doubly-robust policy values over reconciled decisions."""
446
+ resp = await self._client.get("/v1/policy-value", params=_report_params(namespace, days))
447
+ raise_for_status(resp)
448
+ return PolicyValueResponse.model_validate(resp.json())
449
+
322
450
  async def health(self) -> dict[str, Any]:
323
451
  resp = await self._client.get("/v1/health")
324
452
  raise_for_status(resp)
@@ -0,0 +1,49 @@
1
+ """Client error types."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import httpx
6
+
7
+
8
+ class MinimaError(Exception):
9
+ def __init__(self, status: int, detail: str):
10
+ super().__init__(f"minima error {status}: {detail}")
11
+ self.status = status
12
+ self.detail = detail
13
+
14
+
15
+ class MinimaRateLimited(MinimaError):
16
+ """429 — the server asked us to slow down; retry_after is seconds when provided."""
17
+
18
+ def __init__(self, status: int, detail: str, retry_after: float | None = None):
19
+ super().__init__(status, detail)
20
+ self.retry_after = retry_after
21
+
22
+
23
+ class MinimaUnavailable(MinimaError):
24
+ """502/503/504 — transient upstream trouble; safe to retry idempotent calls."""
25
+
26
+
27
+ def _retry_after_seconds(resp: httpx.Response) -> float | None:
28
+ raw = resp.headers.get("retry-after")
29
+ if raw is None:
30
+ return None
31
+ try:
32
+ return float(raw)
33
+ except ValueError:
34
+ return None
35
+
36
+
37
+ def raise_for_status(resp: httpx.Response) -> None:
38
+ if resp.status_code < 400:
39
+ return
40
+ try:
41
+ body = resp.json()
42
+ detail = body.get("detail") or body.get("title") or str(body)
43
+ except Exception: # noqa: BLE001
44
+ detail = resp.text
45
+ if resp.status_code == 429:
46
+ raise MinimaRateLimited(resp.status_code, detail, _retry_after_seconds(resp))
47
+ if resp.status_code in (502, 503, 504):
48
+ raise MinimaUnavailable(resp.status_code, detail)
49
+ raise MinimaError(resp.status_code, detail)
@@ -70,9 +70,9 @@ def _cmd_feedback(args: argparse.Namespace) -> int:
70
70
  args.model,
71
71
  args.outcome,
72
72
  usage=Usage(
73
- input_tokens=args.input_tokens or 0,
74
- output_tokens=args.output_tokens or 0,
75
- cost_usd=args.cost or 0.0,
73
+ input_tokens=args.input_tokens,
74
+ output_tokens=args.output_tokens,
75
+ cost_usd=args.cost,
76
76
  latency_ms=args.latency_ms,
77
77
  ),
78
78
  quality_score=args.quality,
@@ -107,9 +107,12 @@ def build_parser() -> argparse.ArgumentParser:
107
107
  fb.add_argument("--quality", type=float, default=None, help="0..1 if you graded it")
108
108
  fb.add_argument(
109
109
  "--source",
110
- default="human",
110
+ default="none",
111
111
  choices=["gate", "judge", "human", "none"],
112
- help="label provenance (none = cost telemetry only)",
112
+ help=(
113
+ "label provenance; default none = cost telemetry only. Pass --source human "
114
+ "ONLY when a human actually verified this outcome — it counts as a real label."
115
+ ),
113
116
  )
114
117
  fb.set_defaults(func=_cmd_feedback)
115
118
  return parser