outerloop-science 0.1.0.dev1__tar.gz → 0.1.0.dev3__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 (182) hide show
  1. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/.pre-commit-config.yaml +2 -2
  2. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/CHANGELOG.md +1445 -1440
  3. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/PKG-INFO +5 -2
  4. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/README.md +3 -0
  5. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/RELEASING.md +11 -2
  6. outerloop_science-0.1.0.dev3/containers/README.md +8 -0
  7. outerloop_science-0.1.0.dev3/containers/agent-py312.def +43 -0
  8. outerloop_science-0.1.0.dev3/docs/community.md +54 -0
  9. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/contract.md +1 -0
  10. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/architecture.md +10 -6
  11. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/dispatcher.md +18 -3
  12. outerloop_science-0.1.0.dev3/docs/design/eval-cache.md +127 -0
  13. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/github-app-auth.md +5 -5
  14. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/headline.md +1 -1
  15. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/resident-tick.md +5 -5
  16. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/reviewer-infra.md +47 -0
  17. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/role-cli.md +4 -4
  18. outerloop_science-0.1.0.dev3/docs/design/session-watcher.md +267 -0
  19. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/install.md +206 -24
  20. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/roadmap.md +17 -9
  21. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/validation/author-syscalls.md +5 -5
  22. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/pyproject.toml +8 -6
  23. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/scripts/README.md +2 -2
  24. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/scripts/install_codex.sh +2 -2
  25. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/scripts/tick_chain.sbatch +46 -39
  26. outerloop_science-0.1.0.dev3/scripts/tick_deploy.sh +239 -0
  27. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/scripts/tick_resident.sh +23 -20
  28. outerloop_science-0.1.0.dev3/src/outerloop/__init__.py +18 -0
  29. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/appauth.py +3 -3
  30. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/appmanifest.py +1 -1
  31. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/attempt.py +350 -127
  32. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/brief.py +38 -25
  33. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/cli.py +189 -78
  34. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/climbboard.py +3 -0
  35. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/compute.py +178 -33
  36. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/contract.py +11 -2
  37. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/dispatch.py +63 -18
  38. outerloop_science-0.1.0.dev3/src/outerloop/evalcache.py +147 -0
  39. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/followup.py +52 -33
  40. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/github.py +42 -17
  41. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/harness.py +19 -25
  42. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/housekeeping.py +1 -17
  43. outerloop_science-0.1.0.dev3/src/outerloop/image.py +368 -0
  44. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/init.py +248 -15
  45. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/intake.py +4 -7
  46. outerloop_science-0.1.0.dev3/src/outerloop/launchlog.py +239 -0
  47. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/limits.py +1 -1
  48. outerloop_science-0.1.0.dev3/src/outerloop/maintain.py +325 -0
  49. outerloop_science-0.1.0.dev3/src/outerloop/maintain_agent_cli.py +81 -0
  50. outerloop_science-0.1.0.dev3/src/outerloop/maintain_post_cli.py +140 -0
  51. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/measure.py +8 -2
  52. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/orchestrator.py +142 -32
  53. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/panel.py +3 -3
  54. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/paths.py +2 -1
  55. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/review.py +5 -1
  56. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/review_agent.py +7 -7
  57. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/review_agent_cli.py +2 -2
  58. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/review_post_cli.py +2 -2
  59. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/review_summarize_cli.py +7 -5
  60. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/roles.py +27 -0
  61. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/rolespec.py +3 -1
  62. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/steward.py +8 -8
  63. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/syscall.py +262 -47
  64. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/syscall_cli.py +243 -12
  65. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/tick.py +240 -103
  66. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/verify_agent.py +8 -6
  67. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/verify_post_cli.py +2 -2
  68. outerloop_science-0.1.0.dev3/src/outerloop/watcher.py +203 -0
  69. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/conftest.py +11 -0
  70. outerloop_science-0.1.0.dev3/tests/fakes.py +40 -0
  71. outerloop_science-0.1.0.dev3/tests/helpers.py +21 -0
  72. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_attempt.py +194 -38
  73. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_bot_aliases.py +7 -7
  74. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_bot_login.py +9 -9
  75. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_compute.py +81 -12
  76. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_dispatch.py +73 -0
  77. outerloop_science-0.1.0.dev3/tests/test_env_bridge.py +86 -0
  78. outerloop_science-0.1.0.dev3/tests/test_evalcache.py +92 -0
  79. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_followup.py +4 -5
  80. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_github.py +21 -0
  81. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_harness.py +43 -17
  82. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_housekeeping.py +0 -4
  83. outerloop_science-0.1.0.dev3/tests/test_image.py +294 -0
  84. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_init.py +319 -4
  85. outerloop_science-0.1.0.dev3/tests/test_launchlog.py +154 -0
  86. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_local_compute.py +58 -12
  87. outerloop_science-0.1.0.dev3/tests/test_maintain.py +432 -0
  88. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_measure.py +1 -1
  89. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_orchestrator.py +221 -13
  90. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_review_summarize.py +2 -2
  91. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_start.py +242 -65
  92. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_sweep_git_locks.py +23 -5
  93. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_syscall.py +269 -6
  94. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_syscall_cli.py +239 -3
  95. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_tick.py +417 -102
  96. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_tick_chain_successors.py +2 -2
  97. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_tick_resident.py +234 -32
  98. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_verify_agent.py +13 -11
  99. outerloop_science-0.1.0.dev3/tests/test_watcher.py +267 -0
  100. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/uv.lock +313 -246
  101. outerloop_science-0.1.0.dev1/scripts/tick_deploy.sh +0 -148
  102. outerloop_science-0.1.0.dev1/src/outerloop/__init__.py +0 -18
  103. outerloop_science-0.1.0.dev1/tests/test_env_bridge.py +0 -61
  104. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/.gitignore +0 -0
  105. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/.python-version +0 -0
  106. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/CLAUDE.md +0 -0
  107. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/CONTRIBUTING.md +0 -0
  108. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/LICENSE +0 -0
  109. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/NOTICE +0 -0
  110. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/SECURITY.md +0 -0
  111. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/assets/icon-dark.svg +0 -0
  112. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/assets/icon-light.svg +0 -0
  113. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/assets/icon.svg +0 -0
  114. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/compute.md +0 -0
  115. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/agent-substrate.md +0 -0
  116. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/consolidation.md +0 -0
  117. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/external.md +0 -0
  118. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/judge-placement.md +0 -0
  119. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/meta.md +0 -0
  120. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/onboarding.md +0 -0
  121. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/orchestrator-verify.md +0 -0
  122. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/public-surface.md +0 -0
  123. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/research-lines.md +0 -0
  124. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/research-loop-buildout.md +0 -0
  125. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/research-loop.md +0 -0
  126. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/review-placement.md +0 -0
  127. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/roles.md +0 -0
  128. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/design/scaling.md +0 -0
  129. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/docs/reviewer.md +0 -0
  130. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/examples/review.yml +0 -0
  131. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/scripts/install_hermes.sh +0 -0
  132. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/scripts/requeue_moved_successors.sh +0 -0
  133. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/scripts/setup_branch_protection.sh +0 -0
  134. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/scripts/sweep_git_locks.sh +0 -0
  135. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/__main__.py +0 -0
  136. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/contract_cli.py +0 -0
  137. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/disk.py +0 -0
  138. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/markers.py +0 -0
  139. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/posting.py +0 -0
  140. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/progress.py +0 -0
  141. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/py.typed +0 -0
  142. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/role_runner.py +0 -0
  143. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/runstate.py +0 -0
  144. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/style.py +0 -0
  145. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/verifier.py +0 -0
  146. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/src/outerloop/verify_agent_cli.py +0 -0
  147. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_appauth.py +0 -0
  148. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_appmanifest.py +0 -0
  149. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_brief.py +0 -0
  150. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_channel_dir.py +0 -0
  151. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_climbboard.py +0 -0
  152. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_codex_harness.py +0 -0
  153. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_contract.py +0 -0
  154. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_contract_cli.py +0 -0
  155. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_contract_names.py +0 -0
  156. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_disk.py +0 -0
  157. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_hardening.py +0 -0
  158. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_hermes_harness.py +0 -0
  159. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_import.py +0 -0
  160. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_intake.py +0 -0
  161. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_limits.py +0 -0
  162. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_markers.py +0 -0
  163. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_measure_and_decide.py +0 -0
  164. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_packaging.py +0 -0
  165. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_panel.py +0 -0
  166. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_paths.py +0 -0
  167. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_posting.py +0 -0
  168. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_progress.py +0 -0
  169. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_requeue_moved_successors.py +0 -0
  170. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_review.py +0 -0
  171. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_review_agent.py +0 -0
  172. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_review_agent_cli.py +0 -0
  173. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_review_hardening.py +0 -0
  174. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_review_policy.py +0 -0
  175. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_role_runner.py +0 -0
  176. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_rolespec.py +0 -0
  177. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_runstate.py +0 -0
  178. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_steward.py +0 -0
  179. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_tiers.py +0 -0
  180. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_verifier.py +0 -0
  181. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_verify_agent_cli.py +0 -0
  182. {outerloop_science-0.1.0.dev1 → outerloop_science-0.1.0.dev3}/tests/test_version.py +0 -0
@@ -11,13 +11,13 @@ repos:
11
11
  - id: check-toml
12
12
 
13
13
  - repo: https://github.com/astral-sh/ruff-pre-commit
14
- rev: v0.16.1
14
+ rev: v0.16.6
15
15
  hooks:
16
16
  - id: ruff-check
17
17
  args: [--fix]
18
18
  - id: ruff-format
19
19
 
20
20
  - repo: https://github.com/gitleaks/gitleaks
21
- rev: v8.24.3
21
+ rev: v8.30.1
22
22
  hooks:
23
23
  - id: gitleaks