code-coordinator 0.5.293__tar.gz → 0.5.295__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 (898) hide show
  1. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.github/coord-ci-acceptance.yml +8 -18
  2. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.github/workflows/test.yml +22 -27
  3. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.gitignore +0 -10
  4. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/CLAUDE.md +16 -20
  5. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/PKG-INFO +3 -2
  6. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/README.md +2 -1
  7. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/code_coordinator.egg-info/PKG-INFO +3 -2
  8. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/code_coordinator.egg-info/SOURCES.txt +6 -43
  9. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/code_coordinator.egg-info/scm_file_list.json +6 -43
  10. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/code_coordinator.egg-info/scm_version.json +2 -2
  11. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/client.py +56 -0
  12. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/tui.py +4 -3
  13. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/config.py +13 -3
  14. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/github_throttle.py +162 -32
  15. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/deploy_lane_facts.py +72 -13
  16. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/fleet_deploy_lanes.py +5 -5
  17. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/toolchain.py +10 -2
  18. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/prereqs.py +1 -1
  19. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/serve_app.py +86 -0
  20. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/skills/tui-quadraui-workflow/SKILL.md +18 -18
  21. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/tui_release.py +2 -1
  22. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coordinator.example.yml +81 -36
  23. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/azure-workers/provision-worker.sh +12 -5
  24. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/codegen.py +23 -22
  25. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/coord-test-runner.sh +82 -230
  26. code_coordinator-0.5.295/scripts/coord-tui-scaffold/.github/coord-ci-acceptance.yml +55 -0
  27. code_coordinator-0.5.295/scripts/coord-tui-scaffold/.github/workflows/cargo-test.yml +75 -0
  28. code_coordinator-0.5.295/scripts/coord-tui-scaffold/.github/workflows/codegen-drift.yml +113 -0
  29. code_coordinator-0.5.295/scripts/coord-tui-scaffold/CLAUDE.md +102 -0
  30. code_coordinator-0.5.295/scripts/extract-coord-tui.sh +240 -0
  31. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/gen_board_fixture.py +79 -16
  32. code_coordinator-0.5.295/tests/test_board_fixture.py +103 -0
  33. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_board_schema.py +19 -11
  34. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_ci_acceptance_gate_1950.py +160 -36
  35. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_coord_test_runner_populated_home.py +3 -3
  36. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_coord_test_runner_routing.py +63 -4
  37. code_coordinator-0.5.295/tests/test_coord_test_runner_toolchain.py +314 -0
  38. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_drive.py +19 -32
  39. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_github_throttle.py +143 -1
  40. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_deploy_lane_facts.py +96 -2
  41. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_openapi.py +12 -8
  42. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_release_unified_1242.py +131 -105
  43. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_review.py +147 -0
  44. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_serve.py +117 -0
  45. code_coordinator-0.5.293/.github/workflows/cargo-test.yml +0 -122
  46. code_coordinator-0.5.293/tests/test_board_fixture.py +0 -82
  47. code_coordinator-0.5.293/tests/test_coord_test_runner_toolchain.py +0 -336
  48. code_coordinator-0.5.293/tui/.github/workflows/release-tui.yml +0 -327
  49. code_coordinator-0.5.293/tui/Cargo.lock +0 -3198
  50. code_coordinator-0.5.293/tui/Cargo.toml +0 -62
  51. code_coordinator-0.5.293/tui/cargo-config-local-quadraui.toml.example +0 -21
  52. code_coordinator-0.5.293/tui/src/app/approved.rs +0 -1243
  53. code_coordinator-0.5.293/tui/src/app/audit.rs +0 -583
  54. code_coordinator-0.5.293/tui/src/app/chat.rs +0 -273
  55. code_coordinator-0.5.293/tui/src/app/data.rs +0 -3543
  56. code_coordinator-0.5.293/tui/src/app/dialogs.rs +0 -8501
  57. code_coordinator-0.5.293/tui/src/app/doc_tabs.rs +0 -3000
  58. code_coordinator-0.5.293/tui/src/app/drive.rs +0 -1655
  59. code_coordinator-0.5.293/tui/src/app/drive_queue.rs +0 -4238
  60. code_coordinator-0.5.293/tui/src/app/escalation.rs +0 -887
  61. code_coordinator-0.5.293/tui/src/app/events.rs +0 -7762
  62. code_coordinator-0.5.293/tui/src/app/fixtures.rs +0 -1226
  63. code_coordinator-0.5.293/tui/src/app/fleet_health.rs +0 -351
  64. code_coordinator-0.5.293/tui/src/app/fleet_sessions.rs +0 -474
  65. code_coordinator-0.5.293/tui/src/app/fleet_terminals.rs +0 -566
  66. code_coordinator-0.5.293/tui/src/app/format.rs +0 -438
  67. code_coordinator-0.5.293/tui/src/app/milestone_dag.rs +0 -1757
  68. code_coordinator-0.5.293/tui/src/app/mod.rs +0 -9930
  69. code_coordinator-0.5.293/tui/src/app/msv.rs +0 -140
  70. code_coordinator-0.5.293/tui/src/app/pipeline.rs +0 -10324
  71. code_coordinator-0.5.293/tui/src/app/plans.rs +0 -2262
  72. code_coordinator-0.5.293/tui/src/app/render.rs +0 -4349
  73. code_coordinator-0.5.293/tui/src/app/reports.rs +0 -2978
  74. code_coordinator-0.5.293/tui/src/app/sessions.rs +0 -3481
  75. code_coordinator-0.5.293/tui/src/app/settings_ui.rs +0 -2077
  76. code_coordinator-0.5.293/tui/src/app/sidebar.rs +0 -696
  77. code_coordinator-0.5.293/tui/src/app/terminal.rs +0 -1264
  78. code_coordinator-0.5.293/tui/src/app/tests.rs +0 -57678
  79. code_coordinator-0.5.293/tui/src/app/types/generated.rs +0 -747
  80. code_coordinator-0.5.293/tui/src/app/types.rs +0 -2316
  81. code_coordinator-0.5.293/tui/src/app/workspace.rs +0 -585
  82. code_coordinator-0.5.293/tui/src/bin/gtk.rs +0 -13
  83. code_coordinator-0.5.293/tui/src/commands.rs +0 -1446
  84. code_coordinator-0.5.293/tui/src/lib.rs +0 -20
  85. code_coordinator-0.5.293/tui/src/main.rs +0 -186
  86. code_coordinator-0.5.293/tui/src/settings.rs +0 -850
  87. code_coordinator-0.5.293/tui/tests/cli.rs +0 -58
  88. code_coordinator-0.5.293/tui/tests/fixtures/board_sample.json +0 -382
  89. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.claude/commands/board.md +0 -0
  90. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.claude/commands/complete-session.md +0 -0
  91. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.claude/commands/coordinator.md +0 -0
  92. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.githooks/_lib.sh +0 -0
  93. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.githooks/post-checkout +0 -0
  94. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.githooks/post-commit +0 -0
  95. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.githooks/post-merge +0 -0
  96. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  97. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.github/workflows/auto-release.yml +0 -0
  98. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/.github/workflows/publish.yml +0 -0
  99. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/GOAL.md +0 -0
  100. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/LICENSE +0 -0
  101. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/MANIFEST.in +0 -0
  102. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/code_coordinator.egg-info/dependency_links.txt +0 -0
  103. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/code_coordinator.egg-info/entry_points.txt +0 -0
  104. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/code_coordinator.egg-info/requires.txt +0 -0
  105. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/code_coordinator.egg-info/top_level.txt +0 -0
  106. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/__init__.py +0 -0
  107. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/_board_mapping.py +0 -0
  108. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/acceptance.py +0 -0
  109. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/acceptance_drivers.py +0 -0
  110. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/agent.py +0 -0
  111. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/agent_app.py +0 -0
  112. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/agent_update.py +0 -0
  113. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/agents/opencode/.gitignore +0 -0
  114. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/agents/opencode/agents/work.md +0 -0
  115. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/agents/opencode/routing.jsonc +0 -0
  116. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/approved_work.py +0 -0
  117. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/audit.py +0 -0
  118. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/auto_loop.py +0 -0
  119. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/block_log.py +0 -0
  120. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/board_schema.py +0 -0
  121. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/board_service.py +0 -0
  122. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/board_wire.py +0 -0
  123. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/brain.py +0 -0
  124. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/branch_model.py +0 -0
  125. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/bug_intake.py +0 -0
  126. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/cargo_cache.py +0 -0
  127. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/ci_fix.py +0 -0
  128. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/ci_github.py +0 -0
  129. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/ci_gitlab.py +0 -0
  130. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/ci_store.py +0 -0
  131. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/claim.py +0 -0
  132. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/cli.py +0 -0
  133. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/__init__.py +0 -0
  134. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/_common.py +0 -0
  135. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/acceptance.py +0 -0
  136. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/agent_ops.py +0 -0
  137. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/audit.py +0 -0
  138. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/chat.py +0 -0
  139. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/dispatch.py +0 -0
  140. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/dispatch_workers.py +0 -0
  141. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/drive.py +0 -0
  142. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/drive_queue.py +0 -0
  143. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/gate_a.py +0 -0
  144. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/gates.py +0 -0
  145. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/issues.py +0 -0
  146. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/lifecycle.py +0 -0
  147. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/machine.py +0 -0
  148. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/merge.py +0 -0
  149. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/milestone.py +0 -0
  150. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/plan_followup.py +0 -0
  151. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/plans.py +0 -0
  152. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/portal.py +0 -0
  153. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/pr.py +0 -0
  154. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/release.py +0 -0
  155. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/repo.py +0 -0
  156. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/report.py +0 -0
  157. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/review.py +0 -0
  158. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/scorecard.py +0 -0
  159. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/sessions.py +0 -0
  160. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/setup.py +0 -0
  161. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/status.py +0 -0
  162. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/store_migrate.py +0 -0
  163. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/terminal.py +0 -0
  164. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/commands/test_gate.py +0 -0
  165. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/comments.py +0 -0
  166. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/config_reload.py +0 -0
  167. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/confirm_test.py +0 -0
  168. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/conflict_fix.py +0 -0
  169. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/dao.py +0 -0
  170. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/dashboard/__init__.py +0 -0
  171. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/dashboard/fixture.py +0 -0
  172. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/dashboard/index.html +0 -0
  173. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/dashboard/server.py +0 -0
  174. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/dashboard/terminal.py +0 -0
  175. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/db.py +0 -0
  176. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/dead_end.py +0 -0
  177. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/decomposition_chat.py +0 -0
  178. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/README.md +0 -0
  179. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-agent.service +0 -0
  180. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-db-backup.service +0 -0
  181. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-db-backup.sh +0 -0
  182. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-db-backup.timer +0 -0
  183. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-drive-queue.service +0 -0
  184. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-drive-queue.timer +0 -0
  185. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-failure-notify.service +0 -0
  186. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-fleet-watchdog.service +0 -0
  187. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-fleet-watchdog.timer +0 -0
  188. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-notify.service +0 -0
  189. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-notify.timer +0 -0
  190. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-release-propagate.service +0 -0
  191. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-release-propagate.timer +0 -0
  192. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-release-window.service +0 -0
  193. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-release-window.timer +0 -0
  194. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-serve.service +0 -0
  195. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-web-dist-build.service +0 -0
  196. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-web-dist-build.timer +0 -0
  197. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy/coord-web.service +0 -0
  198. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy_manifest.py +0 -0
  199. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deploy_units.py +0 -0
  200. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deprecation_telemetry.py +0 -0
  201. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/deps.py +0 -0
  202. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/diagnose.py +0 -0
  203. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/dispatch.py +0 -0
  204. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/dist_name.py +0 -0
  205. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/drive.py +0 -0
  206. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/drive_queue.py +0 -0
  207. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/drive_state.py +0 -0
  208. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/events.py +0 -0
  209. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/failure_class.py +0 -0
  210. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/filelock.py +0 -0
  211. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/fleet_config_health.py +0 -0
  212. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/forge_availability.py +0 -0
  213. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/freshness.py +0 -0
  214. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/gate_a.py +0 -0
  215. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/gate_b.py +0 -0
  216. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/gate_snapshot.py +0 -0
  217. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/gates.py +0 -0
  218. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/github_ops.py +0 -0
  219. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/goal.py +0 -0
  220. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/graph_health.py +0 -0
  221. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/__init__.py +0 -0
  222. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/aggregate.py +0 -0
  223. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/__init__.py +0 -0
  224. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/agent_install.py +0 -0
  225. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/cargo_targets.py +0 -0
  226. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/claude_binary.py +0 -0
  227. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/coord_web_ci_pin.py +0 -0
  228. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/disk.py +0 -0
  229. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/fleet_board.py +0 -0
  230. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/fleet_phantom.py +0 -0
  231. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/fleet_unit_drift.py +0 -0
  232. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/graph.py +0 -0
  233. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/graphify_cli.py +0 -0
  234. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/index_lock.py +0 -0
  235. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/issues_sync_staleness.py +0 -0
  236. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/plan_usage.py +0 -0
  237. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/release_cordon.py +0 -0
  238. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/repo_state.py +0 -0
  239. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/spawned_coord.py +0 -0
  240. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/stalled_pipeline.py +0 -0
  241. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/timer_active.py +0 -0
  242. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/unit_drift.py +0 -0
  243. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/unit_enablement.py +0 -0
  244. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/checks/worktrees.py +0 -0
  245. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/cli.py +0 -0
  246. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/context.py +0 -0
  247. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/fleet_snapshot.py +0 -0
  248. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/models.py +0 -0
  249. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/pypi.py +0 -0
  250. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/registry.py +0 -0
  251. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/render.py +0 -0
  252. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/health/units.py +0 -0
  253. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/hooks.py +0 -0
  254. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/housekeeping.py +0 -0
  255. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/interactive.py +0 -0
  256. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/issue_store.py +0 -0
  257. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/issues_sync_status.py +0 -0
  258. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/liveness_auditor.py +0 -0
  259. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/machine_onboard.py +0 -0
  260. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/machine_pause.py +0 -0
  261. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/merge_queue.py +0 -0
  262. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/milestone_chat.py +0 -0
  263. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/milestone_dispatch.py +0 -0
  264. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/milestone_gate.py +0 -0
  265. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/milestone_order.py +0 -0
  266. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/mock_author.py +0 -0
  267. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/models.py +0 -0
  268. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/network.py +0 -0
  269. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/new_issue_chat.py +0 -0
  270. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/notifier/__init__.py +0 -0
  271. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/notifier/baseline.py +0 -0
  272. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/notifier/cli.py +0 -0
  273. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/notifier/collect.py +0 -0
  274. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/notifier/digest.py +0 -0
  275. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/notifier/models.py +0 -0
  276. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/notifier/predicate.py +0 -0
  277. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/notifier/service.py +0 -0
  278. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/notifier/store.py +0 -0
  279. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/notifier/transport.py +0 -0
  280. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/notify.py +0 -0
  281. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/openapi.py +0 -0
  282. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/overlap_fence.py +0 -0
  283. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/overlap_predict.py +0 -0
  284. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/parentage.py +0 -0
  285. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/parentage_github.py +0 -0
  286. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/pipeline.py +0 -0
  287. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/plan_parser.py +0 -0
  288. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/plans.py +0 -0
  289. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/platform_paths.py +0 -0
  290. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/portal_bridge.py +0 -0
  291. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/portal_store.py +0 -0
  292. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/portal_sync.py +0 -0
  293. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/pr_body_lint.py +0 -0
  294. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/progress.py +0 -0
  295. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/providers/__init__.py +0 -0
  296. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/providers/base.py +0 -0
  297. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/providers/claude.py +0 -0
  298. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/providers/claude_pty.py +0 -0
  299. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/providers/opencode.py +0 -0
  300. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/queue_diagnose.py +0 -0
  301. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/reconcile.py +0 -0
  302. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/reconcile_tick.py +0 -0
  303. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/refine_chat.py +0 -0
  304. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/release_cordon.py +0 -0
  305. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/release_propagate.py +0 -0
  306. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/release_verify.py +0 -0
  307. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/release_window.py +0 -0
  308. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/repo_edit.py +0 -0
  309. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/repo_onboard.py +0 -0
  310. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/reports.py +0 -0
  311. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/rest_schema.py +0 -0
  312. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/revalidate.py +0 -0
  313. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/review.py +0 -0
  314. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/scorecard.py +0 -0
  315. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/self_health.py +0 -0
  316. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/skills/coord-dispatch-verbs/SKILL.md +0 -0
  317. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/skills/drive-queue-preflight/SKILL.md +0 -0
  318. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/skills/fleet-restart-safety/SKILL.md +0 -0
  319. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/skills/merge-stuck-triage/SKILL.md +0 -0
  320. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/skills/pipeline-limbo-triage/SKILL.md +0 -0
  321. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/skills/portal-followup/SKILL.md +0 -0
  322. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/skills/release-now/SKILL.md +0 -0
  323. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/skills/review-verdict-recovery/SKILL.md +0 -0
  324. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/skills/update-issue/SKILL.md +0 -0
  325. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/smoke.py +0 -0
  326. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/spend_ceiling.py +0 -0
  327. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/split_work.py +0 -0
  328. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/sql.py +0 -0
  329. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/stage_projection.py +0 -0
  330. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/state.py +0 -0
  331. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/store_migrate.py +0 -0
  332. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/test_author.py +0 -0
  333. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/test_chat.py +0 -0
  334. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/test_orchestrator.py +0 -0
  335. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/test_report.py +0 -0
  336. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/usage.py +0 -0
  337. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/usage_limits.py +0 -0
  338. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/usage_rollup.py +0 -0
  339. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/coord/worker_events.py +0 -0
  340. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-agent.service +0 -0
  341. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-db-backup.service +0 -0
  342. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-db-backup.sh +0 -0
  343. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-db-backup.timer +0 -0
  344. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-drive-queue.service +0 -0
  345. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-drive-queue.timer +0 -0
  346. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-failure-notify.service +0 -0
  347. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-failure-notify.sh +0 -0
  348. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-fleet-watchdog.service +0 -0
  349. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-fleet-watchdog.timer +0 -0
  350. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-notify.service +0 -0
  351. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-notify.timer +0 -0
  352. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-release-propagate.service +0 -0
  353. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-release-propagate.timer +0 -0
  354. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-release-window.service +0 -0
  355. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-release-window.timer +0 -0
  356. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-serve.service +0 -0
  357. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-web-dist-build.service +0 -0
  358. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-web-dist-build.sh +0 -0
  359. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-web-dist-build.timer +0 -0
  360. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-web-rollback.sh +0 -0
  361. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/coord-web.service +0 -0
  362. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/deploy/node-shim.sh +0 -0
  363. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/ADR_COORD_TUI_CI.md +0 -0
  364. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/ADR_COORD_WEB_ACCEPTANCE_SUITE.md +0 -0
  365. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/ADR_COORD_WEB_CI.md +0 -0
  366. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/ADR_COORD_WEB_DIST.md +0 -0
  367. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/AGENT_OPERATIONS.md +0 -0
  368. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/ARCHITECTURE.md +0 -0
  369. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/ARCH_SECURITY_GATES.md +0 -0
  370. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/COCKPIT.md +0 -0
  371. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/CONTROL_CENTER.md +0 -0
  372. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/COST_DISCIPLINE.md +0 -0
  373. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/CROSS_PLATFORM.md +0 -0
  374. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/CUSTOMER_FACING_APPS.md +0 -0
  375. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/CUSTOMER_PORTAL.md +0 -0
  376. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/DRIVE_QUEUE.md +0 -0
  377. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/EPHEMERAL_WORKERS.md +0 -0
  378. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/FORGE_MIGRATION.md +0 -0
  379. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/GRAPHIFY_SETUP.md +0 -0
  380. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/ISSUE_GUIDANCE.md +0 -0
  381. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/MAC_MINI.md +0 -0
  382. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/MERGE_AUTO_DRAIN_TRUST_BAR.md +0 -0
  383. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/NOTIFIER.md +0 -0
  384. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/OPENCODE_VERIFICATION.md +0 -0
  385. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/OPERATING_GOTCHAS.md +0 -0
  386. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/OPERATOR_GUIDES.md +0 -0
  387. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/ORACLE_LOOP.md +0 -0
  388. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/PHONE_WEBAPP.md +0 -0
  389. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/PIPELINE_V2.md +0 -0
  390. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/PLATFORM_EVOLUTION.md +0 -0
  391. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/SECOND_BACKEND.md +0 -0
  392. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/STORE_SERVICE.md +0 -0
  393. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/TEST_FIRST_BUG_LANE.md +0 -0
  394. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/WEB_CONTROL_CENTER.md +0 -0
  395. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/WSL_WINDOWS_WORKER.md +0 -0
  396. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/mocks/web/README.md +0 -0
  397. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/mocks/web/_tokens.css +0 -0
  398. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/mocks/web/issue-detail.html +0 -0
  399. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/mocks/web/pipeline-narrow.html +0 -0
  400. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/docs/mocks/web/pipeline-wide.html +0 -0
  401. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/graphify-out/.gitignore +0 -0
  402. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/install-agent.sh +0 -0
  403. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/pyproject.toml +0 -0
  404. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/audit_review_verdict_overrides.py +0 -0
  405. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/azure-workers/bootstrap-shared.sh +0 -0
  406. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/azure-workers/build-worker-image.sh +0 -0
  407. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/azure-workers/coordinator-machine.py +0 -0
  408. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/azure-workers/epic-down.sh +0 -0
  409. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/azure-workers/epic-up.sh +0 -0
  410. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/azure-workers/preflight.sh +0 -0
  411. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/azure-workers/scrub-and-generalize.sh +0 -0
  412. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/azure-workers/tailnet-acl.hujson +0 -0
  413. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/azure-workers/verify-github-token.sh +0 -0
  414. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/check_gh_argv_containment.py +0 -0
  415. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/coord-venv-rollback.sh +0 -0
  416. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/drive-batch.sh +0 -0
  417. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/fleet_watchdog.py +0 -0
  418. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/gen_mock_index.py +0 -0
  419. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/next_release_tag.py +0 -0
  420. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/run_tests_in_populated_home.sh +0 -0
  421. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/run_tests_without_gh.sh +0 -0
  422. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/smoke_437_interactive.py +0 -0
  423. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/verify_878_review_capture.py +0 -0
  424. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/verify_release_published.py +0 -0
  425. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/scripts/verify_release_wheel.py +0 -0
  426. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/setup.cfg +0 -0
  427. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/SMOKE_SET.md +0 -0
  428. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/__init__.py +0 -0
  429. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/acceptance/ms-37/conftest.py +0 -0
  430. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/acceptance/ms-37/contract.md +0 -0
  431. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/acceptance/ms-37/manifest.yml +0 -0
  432. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/acceptance/ms-37/test_usage_cli_1115.py +0 -0
  433. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/acceptance/ms-37/test_usage_core_1118.py +0 -0
  434. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/acceptance/ms-51/contract.md +0 -0
  435. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/acceptance/ms-51/home-active-extended.spec.ts +0 -0
  436. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/acceptance/ms-51/home-active.spec.ts +0 -0
  437. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/acceptance/ms-51/manifest.yml +0 -0
  438. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/acceptance/ms-51/mocks/home-active.html +0 -0
  439. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/acceptance/ms-51/tsconfig.json +0 -0
  440. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/acceptance/ms-example/mocks/home-active.html +0 -0
  441. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/backends.py +0 -0
  442. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/conftest.py +0 -0
  443. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/board-pipeline-basic.json +0 -0
  444. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/board-pipeline-terminal-gates.json +0 -0
  445. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/opencode_run_failure_sample.jsonl +0 -0
  446. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/opencode_run_length_sample.jsonl +0 -0
  447. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/opencode_run_sample.jsonl +0 -0
  448. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/playwright/all_pass.json +0 -0
  449. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/playwright/global_setup_crash.json +0 -0
  450. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/playwright/mixed_fail.json +0 -0
  451. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/playwright/retry_then_pass.json +0 -0
  452. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/playwright/retry_then_pass.junit.xml +0 -0
  453. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/playwright/skip.json +0 -0
  454. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/playwright/truncated.json +0 -0
  455. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/test_report/cargo_compile_error.txt +0 -0
  456. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/test_report/cargo_multi_target_failures.txt +0 -0
  457. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/test_report/cargo_no_parseable_failures.txt +0 -0
  458. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/test_report/pytest_collection_error.txt +0 -0
  459. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/test_report/pytest_error_string_in_body.txt +0 -0
  460. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/test_report/pytest_internal_error.txt +0 -0
  461. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/test_report/pytest_mixed_failures.txt +0 -0
  462. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/fixtures/test_report/pytest_no_parseable_failures.txt +0 -0
  463. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_acceptance.py +0 -0
  464. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_acceptance_drivers.py +0 -0
  465. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent.py +0 -0
  466. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_api_error.py +0 -0
  467. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_app.py +0 -0
  468. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_branch_base.py +0 -0
  469. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_branch_capture.py +0 -0
  470. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_config_free_1712.py +0 -0
  471. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_deploy_units_endpoint.py +0 -0
  472. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_dirty_worktree.py +0 -0
  473. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_drive_queue_reconcile_2373.py +0 -0
  474. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_graph_self_heal.py +0 -0
  475. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_health_h3.py +0 -0
  476. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_idle_restart.py +0 -0
  477. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_push_failure.py +0 -0
  478. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_reap.py +0 -0
  479. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_repos_and_pull.py +0 -0
  480. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_restart_services_endpoint.py +0 -0
  481. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_skills_self_heal.py +0 -0
  482. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_startup_diagnostics.py +0 -0
  483. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_update.py +0 -0
  484. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_update_bluegreen.py +0 -0
  485. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_usage_limit.py +0 -0
  486. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_agent_zero_commit.py +0 -0
  487. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_ambient_home_isolation.py +0 -0
  488. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_approve_dependency_busy_2804.py +0 -0
  489. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_approve_reject_plan.py +0 -0
  490. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_approve_usage_gate.py +0 -0
  491. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_approved_work_2532.py +0 -0
  492. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_assignment_already_recorded_daemon.py +0 -0
  493. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_audit_log.py +0 -0
  494. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_audit_outcome.py +0 -0
  495. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_audit_query.py +0 -0
  496. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_auto_loop.py +0 -0
  497. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_auto_release_publish_2035.py +0 -0
  498. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_backend_selection.py +0 -0
  499. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_base_checkout_restore.py +0 -0
  500. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_block_log.py +0 -0
  501. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_board_cap_762.py +0 -0
  502. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_board_read_path.py +0 -0
  503. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_board_service.py +0 -0
  504. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_board_state.py +0 -0
  505. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_board_wire.py +0 -0
  506. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_brain.py +0 -0
  507. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_branch_model.py +0 -0
  508. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_bug_intake.py +0 -0
  509. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_build_worker_image_env_update.py +0 -0
  510. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cargo_cache.py +0 -0
  511. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_check_gh_argv_containment.py +0 -0
  512. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_ci_fix.py +0 -0
  513. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_ci_gitlab.py +0 -0
  514. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_ci_parity_2091.py +0 -0
  515. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_ci_store.py +0 -0
  516. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_claim.py +0 -0
  517. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_claude_md_budget.py +0 -0
  518. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_acceptance.py +0 -0
  519. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_assign.py +0 -0
  520. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_assign_interactive_oracle_gate.py +0 -0
  521. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_assign_interactive_remote.py +0 -0
  522. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_assign_provider.py +0 -0
  523. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_assign_repo_drift_2219.py +0 -0
  524. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_audit.py +0 -0
  525. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_chat_continue.py +0 -0
  526. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_decide.py +0 -0
  527. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_diagnose_config_provenance.py +0 -0
  528. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_diagnose_forge_availability.py +0 -0
  529. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_diagnose_graph.py +0 -0
  530. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_diagnose_self.py +0 -0
  531. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_doctor.py +0 -0
  532. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_doctor_config_free_1801.py +0 -0
  533. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_doctor_config_mismatch_1712.py +0 -0
  534. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_drive.py +0 -0
  535. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_drive_queue.py +0 -0
  536. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_escalate.py +0 -0
  537. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_fix_headless_review.py +0 -0
  538. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_gate_a.py +0 -0
  539. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_install_drift.py +0 -0
  540. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_install_skills.py +0 -0
  541. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_issue_comment.py +0 -0
  542. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_issue_create_label.py +0 -0
  543. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_issue_reopen.py +0 -0
  544. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_issue_view_list.py +0 -0
  545. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_merge.py +0 -0
  546. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_milestone_assign.py +0 -0
  547. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_milestone_capture.py +0 -0
  548. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_milestone_chat_add_child.py +0 -0
  549. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_milestone_dispatch.py +0 -0
  550. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_milestone_gate_b.py +0 -0
  551. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_milestone_gate_c.py +0 -0
  552. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_milestone_order.py +0 -0
  553. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_milestone_remove_and_issue_close.py +0 -0
  554. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_milestone_ship.py +0 -0
  555. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_network.py +0 -0
  556. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_new_issue_chat.py +0 -0
  557. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_plans.py +0 -0
  558. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_portal.py +0 -0
  559. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_pr.py +0 -0
  560. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_pull_artifact.py +0 -0
  561. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_queue.py +0 -0
  562. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_reattach_sessions.py +0 -0
  563. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_refine_board.py +0 -0
  564. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_release_preflight.py +0 -0
  565. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_release_propagate.py +0 -0
  566. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_release_window.py +0 -0
  567. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_repo_2220.py +0 -0
  568. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_review_test_author_tracking_epic_2639.py +0 -0
  569. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_scorecard.py +0 -0
  570. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_set_review_findings.py +0 -0
  571. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_status_advisory_terminal.py +0 -0
  572. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_status_contested_tag.py +0 -0
  573. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_status_merge_queue.py +0 -0
  574. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_status_provider.py +0 -0
  575. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_status_review_finalizing.py +0 -0
  576. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_status_test_failed_tag.py +0 -0
  577. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_status_usage_limit.py +0 -0
  578. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_sync_comments_873.py +0 -0
  579. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_test_plan.py +0 -0
  580. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_track.py +0 -0
  581. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_tui_update.py +0 -0
  582. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cli_wait.py +0 -0
  583. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_client_base_install.py +0 -0
  584. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_client_resource_migration_1946.py +0 -0
  585. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_commands_common.py +0 -0
  586. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_comments.py +0 -0
  587. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_completion_summary.py +0 -0
  588. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_config.py +0 -0
  589. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_config_acceptance.py +0 -0
  590. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_config_audit.py +0 -0
  591. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_config_pricing.py +0 -0
  592. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_config_snapshot_noncanonical_2208.py +0 -0
  593. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_config_usage_gate.py +0 -0
  594. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_confirm_test.py +0 -0
  595. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_conflict_fix.py +0 -0
  596. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_conflict_fix_semantic.py +0 -0
  597. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_coord_log_daemon_fallback_2547.py +0 -0
  598. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_coord_test.py +0 -0
  599. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_coord_test_runner_baseline.py +0 -0
  600. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_coord_uat.py +0 -0
  601. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_coord_web_sse_restart_live.py +0 -0
  602. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_coordinator_machine.py +0 -0
  603. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_cross_platform_imports.py +0 -0
  604. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_dao.py +0 -0
  605. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_dashboard.py +0 -0
  606. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_dashboard_fixture.py +0 -0
  607. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_dashboard_terminal.py +0 -0
  608. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_dashboard_terminal_live.py +0 -0
  609. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_db.py +0 -0
  610. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_dead_end.py +0 -0
  611. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_decomposition_chat.py +0 -0
  612. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_deploy_coord_db_backup.py +0 -0
  613. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_deploy_coord_web_dist.py +0 -0
  614. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_deploy_coord_web_rollback.py +0 -0
  615. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_deploy_drive_queue_unit.py +0 -0
  616. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_deploy_failure_notify_unit.py +0 -0
  617. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_deploy_manifest.py +0 -0
  618. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_deploy_notify_unit.py +0 -0
  619. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_deploy_units_lane.py +0 -0
  620. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_deploy_web_unit.py +0 -0
  621. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_deprecation_telemetry.py +0 -0
  622. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_deps.py +0 -0
  623. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_diagnose.py +0 -0
  624. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_dispatch.py +0 -0
  625. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_dispatch_target_validation.py +0 -0
  626. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_dist_name.py +0 -0
  627. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_done_housekeeping.py +0 -0
  628. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_drive_queue.py +0 -0
  629. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_drive_queue_blocked_rendering.py +0 -0
  630. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_drive_queue_launch_argv.py +0 -0
  631. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_drive_queue_max_parallel_per_repo_config.py +0 -0
  632. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_drive_queue_roll_pending.py +0 -0
  633. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_drive_queue_self_cordon_escalation.py +0 -0
  634. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_drive_state.py +0 -0
  635. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_drive_tmux.py +0 -0
  636. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_epic_up_capability_detection.py +0 -0
  637. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_epic_up_down_symlinked_config_1887.py +0 -0
  638. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_epic_up_image_provenance.py +0 -0
  639. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_errors.py +0 -0
  640. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_events.py +0 -0
  641. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_failure_class.py +0 -0
  642. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_filelock.py +0 -0
  643. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_finalize_interactive_exit_test_verdict.py +0 -0
  644. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_fix_of_force_override.py +0 -0
  645. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_fleet_config_health.py +0 -0
  646. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_fleet_health_probes.py +0 -0
  647. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_fleet_health_snapshot.py +0 -0
  648. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_fleet_watchdog.py +0 -0
  649. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_forge_availability.py +0 -0
  650. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_freshness.py +0 -0
  651. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_gate_a.py +0 -0
  652. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_gate_b.py +0 -0
  653. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_gate_snapshot_staleness.py +0 -0
  654. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_gates.py +0 -0
  655. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_gather_fleet_tmux_sessions.py +0 -0
  656. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_gen_mock_index.py +0 -0
  657. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_generated_rust_fixture.py +0 -0
  658. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_generated_types_fixture.py +0 -0
  659. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_github_ops.py +0 -0
  660. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_goal.py +0 -0
  661. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_graph_health.py +0 -0
  662. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_graph_selfheal_absent_2237.py +0 -0
  663. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_handoff.py +0 -0
  664. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_checks.py +0 -0
  665. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_cli.py +0 -0
  666. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_cli_graph.py +0 -0
  667. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_config.py +0 -0
  668. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_context.py +0 -0
  669. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_coord_web_ci_pin.py +0 -0
  670. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_fix.py +0 -0
  671. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_incident_regression.py +0 -0
  672. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_issues_sync_staleness.py +0 -0
  673. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_pypi.py +0 -0
  674. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_registry.py +0 -0
  675. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_release_cordon_probe.py +0 -0
  676. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_timer_active.py +0 -0
  677. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_toolchain.py +0 -0
  678. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_unit_drift.py +0 -0
  679. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_health_unit_enablement.py +0 -0
  680. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_hooks.py +0 -0
  681. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_human_attended_437.py +0 -0
  682. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_init.py +0 -0
  683. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_install_agent_venv_2911.py +0 -0
  684. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_integration.py +0 -0
  685. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_interactive_briefing_echo.py +0 -0
  686. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_interactive_pane_log_2541.py +0 -0
  687. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_interactive_prefill_state.py +0 -0
  688. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_interactive_session_relaunch.py +0 -0
  689. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_interactive_test_verdict_backstop.py +0 -0
  690. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_interactive_token_attribution.py +0 -0
  691. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_interactive_worktree.py +0 -0
  692. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_issue_store_seam.py +0 -0
  693. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_issues_sync_status.py +0 -0
  694. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_liveness_auditor.py +0 -0
  695. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_liveness_notify.py +0 -0
  696. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_lock_contention_ratchet.py +0 -0
  697. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_machine_onboard.py +0 -0
  698. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_machine_pause.py +0 -0
  699. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_merge_queue.py +0 -0
  700. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_merge_verify.py +0 -0
  701. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_milestone_chat.py +0 -0
  702. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_milestone_dispatch.py +0 -0
  703. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_milestone_gate.py +0 -0
  704. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_milestone_order.py +0 -0
  705. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_milestone_seam.py +0 -0
  706. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_mock_author.py +0 -0
  707. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_model_tiering.py +0 -0
  708. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_models.py +0 -0
  709. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_models_config_labels.py +0 -0
  710. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_needs_attention.py +0 -0
  711. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_network.py +0 -0
  712. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_new_issue_chat.py +0 -0
  713. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_next_release_tag.py +0 -0
  714. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_node_shim.py +0 -0
  715. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_notifier_baseline.py +0 -0
  716. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_notifier_cli.py +0 -0
  717. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_notifier_collect.py +0 -0
  718. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_notifier_config.py +0 -0
  719. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_notifier_drive_seam.py +0 -0
  720. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_notifier_isolation.py +0 -0
  721. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_notifier_predicate.py +0 -0
  722. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_notifier_quiet_hours.py +0 -0
  723. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_notifier_service.py +0 -0
  724. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_notify.py +0 -0
  725. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_notify_drain.py +0 -0
  726. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_operational_defaults.py +0 -0
  727. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_overlap_fence.py +0 -0
  728. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_overlap_predict.py +0 -0
  729. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_packaged_deploy_units.py +0 -0
  730. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_parentage.py +0 -0
  731. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_paste_landed.py +0 -0
  732. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_phantom_heal_venv_independence_2570.py +0 -0
  733. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_pipeline.py +0 -0
  734. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_plan_followup_approve_plan_command.py +0 -0
  735. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_plan_followup_pr_command.py +0 -0
  736. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_plan_followup_review_command.py +0 -0
  737. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_plan_only.py +0 -0
  738. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_plan_parser.py +0 -0
  739. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_platform_paths.py +0 -0
  740. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_portal_bridge.py +0 -0
  741. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_portal_config.py +0 -0
  742. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_portal_store.py +0 -0
  743. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_portal_sync.py +0 -0
  744. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_pr_body_lint.py +0 -0
  745. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_prereqs.py +0 -0
  746. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_production_db_guard.py +0 -0
  747. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_progress.py +0 -0
  748. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_provider_seam.py +0 -0
  749. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_providers.py +0 -0
  750. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_providers_config_labels.py +0 -0
  751. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_providers_pty.py +0 -0
  752. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_quiet_hours.py +0 -0
  753. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_quiet_hours_store_2146.py +0 -0
  754. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_reap_merged_sessions.py +0 -0
  755. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_reap_stale_interactive_tick.py +0 -0
  756. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_reconcile.py +0 -0
  757. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_reconcile_branch.py +0 -0
  758. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_reconcile_completions.py +0 -0
  759. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_reconcile_late_agent_reports_2547.py +0 -0
  760. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_reconcile_merges.py +0 -0
  761. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_reconcile_no_agent_record.py +0 -0
  762. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_reconcile_tick.py +0 -0
  763. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_reconcile_usage_limit_done.py +0 -0
  764. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_refine_chat.py +0 -0
  765. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_release_cordon_2101.py +0 -0
  766. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_release_cordon_daemon_leads_2176.py +0 -0
  767. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_release_cordon_deadlock_2240.py +0 -0
  768. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_release_cordon_stuck_2490.py +0 -0
  769. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_release_propagate.py +0 -0
  770. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_release_propagate_threshold.py +0 -0
  771. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_release_roll_between_legs_2854.py +0 -0
  772. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_release_roll_window_handoff.py +0 -0
  773. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_release_verify.py +0 -0
  774. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_release_window.py +0 -0
  775. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_remote_auto_prune.py +0 -0
  776. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_remote_interactive_reaper.py +0 -0
  777. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_repo_add.py +0 -0
  778. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_repo_edit_2220.py +0 -0
  779. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_repo_graph_fleet_2237.py +0 -0
  780. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_repo_onboard_2220.py +0 -0
  781. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_report_result_push.py +0 -0
  782. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_reports.py +0 -0
  783. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_retry.py +0 -0
  784. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_retry_advisory_1606.py +0 -0
  785. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_retry_type_1636.py +0 -0
  786. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_revalidate.py +0 -0
  787. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_review_end_review_without_verdict.py +0 -0
  788. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_review_parse_failure_diagnostic.py +0 -0
  789. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_review_reaffirm.py +0 -0
  790. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_review_state.py +0 -0
  791. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_review_verdict_backstop.py +0 -0
  792. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_review_verdict_override_audit.py +0 -0
  793. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_review_verdict_relay.py +0 -0
  794. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_review_zero_commits.py +0 -0
  795. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_scoped_review_wiring.py +0 -0
  796. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_scorecard.py +0 -0
  797. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_self_health.py +0 -0
  798. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_serve_app_board_trim.py +0 -0
  799. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_serve_rest_routes.py +0 -0
  800. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_session.py +0 -0
  801. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_slice_issue_attribution.py +0 -0
  802. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_smoke.py +0 -0
  803. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_smoke_live_checkout_restore.py +0 -0
  804. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_smoke_workflow.py +0 -0
  805. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_spend_ceiling.py +0 -0
  806. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_spend_ceiling_coordinator.py +0 -0
  807. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_split.py +0 -0
  808. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_split_work.py +0 -0
  809. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_sql_dialect.py +0 -0
  810. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_sqlite_connect_ratchet.py +0 -0
  811. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_stage_projection.py +0 -0
  812. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_stale_busy_reviewer_697.py +0 -0
  813. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_stalled_pipeline.py +0 -0
  814. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_state.py +0 -0
  815. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_state_review_findings_daemon.py +0 -0
  816. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_status_fleet_footer.py +0 -0
  817. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_stop_1567.py +0 -0
  818. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_store_contract.py +0 -0
  819. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_store_migrate.py +0 -0
  820. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_stuck.py +0 -0
  821. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_stuck_test_state_watchdog_2803.py +0 -0
  822. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_terminal_command.py +0 -0
  823. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_test_author.py +0 -0
  824. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_test_chat.py +0 -0
  825. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_test_orchestrator.py +0 -0
  826. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_test_report.py +0 -0
  827. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_test_verdict_parsing.py +0 -0
  828. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_test_verdict_transcript_floor.py +0 -0
  829. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_text_io_encoding_audit.py +0 -0
  830. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_thin_client_board_audit.py +0 -0
  831. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_thin_client_config_load_1080.py +0 -0
  832. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_thin_client_daemon_routing_906.py +0 -0
  833. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_tmux_host.py +0 -0
  834. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_tmux_session.py +0 -0
  835. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_transcript_floor.py +0 -0
  836. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_usage.py +0 -0
  837. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_usage_limits.py +0 -0
  838. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_usage_rollup.py +0 -0
  839. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_venv_live_install_2121.py +0 -0
  840. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_version_single_source.py +0 -0
  841. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_watch.py +0 -0
  842. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_windows_job_is_a_real_gate_2000.py +0 -0
  843. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_worker_env_venv_isolation.py +0 -0
  844. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_worker_events.py +0 -0
  845. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_worker_image_pin_sync.py +0 -0
  846. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_worker_safety.py +0 -0
  847. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_worker_test_scoping.py +0 -0
  848. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_worktree.py +0 -0
  849. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_worktree_rmtree_chokepoint.py +0 -0
  850. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/test_write_parity.py +0 -0
  851. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tests/write_parity.py +0 -0
  852. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-33/audit_1039.rs +0 -0
  853. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-33/contract.md +0 -0
  854. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-33/manifest.yml +0 -0
  855. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-33/mocks/audit-panel-detail.screen +0 -0
  856. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-33/mocks/audit-panel-empty.screen +0 -0
  857. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-33/mocks/audit-panel-filters.screen +0 -0
  858. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-33/mocks/audit-panel-populated.screen +0 -0
  859. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-38/contract.md +0 -0
  860. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-38/manifest.yml +0 -0
  861. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-38/mocks/plans-base.screen +0 -0
  862. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-38/mocks/plans-detail-pane.screen +0 -0
  863. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-38/mocks/plans-help-overlay.screen +0 -0
  864. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-38/mocks/plans-palette.screen +0 -0
  865. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-38/mocks/plans-rightclick-epic.screen +0 -0
  866. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-38/mocks/plans-rightclick-header.screen +0 -0
  867. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-38/mocks/plans-rightclick-stub.screen +0 -0
  868. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-38/plans_detail_1122.rs +0 -0
  869. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-38/plans_help_1124.rs +0 -0
  870. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-38/plans_rightclick_1123.rs +0 -0
  871. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/board_split_2288.rs +0 -0
  872. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/board_tabs_2282.rs +0 -0
  873. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/board_tabs_close_2283.rs +0 -0
  874. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/contract.md +0 -0
  875. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/detail_substate_2285.rs +0 -0
  876. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/manifest.yml +0 -0
  877. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/mocks/board-baseline-no-tabs.screen +0 -0
  878. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/mocks/board-pinned-3-tabs.screen +0 -0
  879. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/mocks/board-preview-tab.screen +0 -0
  880. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/mocks/board-split-side-by-side.screen +0 -0
  881. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/mocks/board-tab-context-menu.screen +0 -0
  882. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/mocks/board-tabs-help-overlay.screen +0 -0
  883. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/mocks/board-tabs-overflow.screen +0 -0
  884. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/mocks/pipeline-tabs-independent.screen +0 -0
  885. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/pipeline_tabs_2284.rs +0 -0
  886. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/tabs_discoverability_2287.rs +0 -0
  887. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-65/tabs_persistence_2286.rs +0 -0
  888. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-67/approved_items_2532.rs +0 -0
  889. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-67/contract.md +0 -0
  890. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-67/manifest.d/2533.yml +0 -0
  891. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-67/manifest.yml +0 -0
  892. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-67/mocks/approved-items-chat-opened.screen +0 -0
  893. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-67/mocks/approved-items-context-menu.screen +0 -0
  894. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-67/mocks/approved-items-detail.screen +0 -0
  895. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-67/mocks/approved-items-empty.screen +0 -0
  896. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-67/mocks/approved-items-populated.screen +0 -0
  897. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance/ms-67/pull_decomposition_2533.rs +0 -0
  898. {code_coordinator-0.5.293 → code_coordinator-0.5.295}/tui/tests/acceptance.rs +0 -0
@@ -73,21 +73,11 @@ acceptance:
73
73
  run: "pytest tests/acceptance"
74
74
  mock: "*.out"
75
75
  capability: python
76
- - match: tui/**
77
- kind: tui-tuidriver
78
- # Unlike the two routes above, this one is identical to the
79
- # fleet's real route: it never referenced `{ms}` even for
80
- # `--issue` scoping, since `cargo test --test acceptance` always
81
- # runs the whole tui/tests/acceptance.rs entrypoint (which
82
- # `include!`s every ms-NN/*.rs slice) regardless of `{ms}`.
83
- # RUSTC_BOOTSTRAP=1 + -Z unstable-options: --format json is
84
- # nightly-gated; verified working on stable rustc (#1042).
85
- # --features test-support: tui/Cargo.toml's `acceptance` test
86
- # target has `required-features = ["test-support"]`, so a plain
87
- # `cargo test` (no flag) silently skips building/running it
88
- # altogether -- that gap is exactly what made this route
89
- # unreachable from CI before #2180.
90
- run: "cd tui && RUSTC_BOOTSTRAP=1 cargo test --test acceptance --features test-support -- -Z unstable-options --format json"
91
- mock: "*.screen"
92
- capability: rust
93
- entrypoint: tui/tests/acceptance.rs
76
+ # #2899: the `tui/**` -> tui-tuidriver route is GONE from this file.
77
+ # The crate moved to the standalone `coord-tui` repo, taking its
78
+ # sealed entrypoint (`tui/tests/acceptance.rs` -> `tests/acceptance.rs`)
79
+ # and the `tui/tests/acceptance/ms-NN/` slices with it. coord-tui
80
+ # carries its own copy of this CI stand-in, keyed on its own repo
81
+ # name, so the route did not disappear -- it changed repos. This
82
+ # file is now single-route, and this repo's sealed set is exactly
83
+ # `tests/acceptance/**` again.
@@ -31,17 +31,15 @@ jobs:
31
31
  # testpaths=["tests"]) was the one accidental gap. (ms-51 — Playwright,
32
32
  # never .py either — left this repo entirely with the webapp, #2009.)
33
33
  - run: pytest --ignore=tests/acceptance
34
- # #2897: the Rust drift gate `tests/test_generated_rust_fixture.py`
35
- # no longer byte-compares the committed `tui/src/app/types/generated.rs`
36
- # (see docs/ADR_COORD_TUI_CI.md and the header comment further down
37
- # this file) — this explicit step stands in for that comparison while
38
- # `tui/` still lives here. `$COORD_TUI_SRC=.` names this checkout as
39
- # the coord-tui root (`RUST_OUTPUT_RELPATH` keeps the `tui/` prefix for
40
- # exactly this reason). One matrix leg only: the generator's output
41
- # depends on `coord.serve_app.openapi_spec()`, not the Python version.
42
- - name: python scripts/codegen.py --rust --check
43
- if: matrix.python-version == '3.12'
44
- run: COORD_TUI_SRC=. python scripts/codegen.py --rust --check
34
+ # #2899: the `COORD_TUI_SRC=. python scripts/codegen.py --rust --check`
35
+ # step that used to live here is GONE. It was #2897's explicit stand-in
36
+ # for the byte-comparison, held here only for as long as the crate did
37
+ # — that ADR (docs/ADR_COORD_TUI_CI.md) says in terms: "the day
38
+ # coord-tui gets its own checkout + CI, delete the step below (its
39
+ # replacement lives in that CI, installing `code-coordinator[server]`
40
+ # from PyPI exactly as `coord-web`'s does)". This is that day. There is
41
+ # no `generated.rs` in this checkout to compare against, so the step
42
+ # could only fail or — worse — pass vacuously.
45
43
  # #2180: the cli-pytest sealed route (acceptance.drivers routes
46
44
  # "coord/**" -> cli-pytest -> tests/acceptance/ms-37) run through the
47
45
  # #2164 CI wrapper instead of a raw `pytest tests/acceptance` call, so
@@ -321,24 +319,21 @@ jobs:
321
319
  # for it to run against, and a job that installs Node to build nothing is
322
320
  # how the previous `acceptance`-on-every-push waste (#2389) started.
323
321
  #
324
- # #1941/#2897: `scripts/codegen.py` also generates coord-tui's RUST wire
325
- # types (`--rust`). #2897 gave that half the SAME cross-repo shape as the
326
- # TS half above (`--out PATH` / `$COORD_TUI_SRC`, no fallback default,
327
- # docs/ADR_COORD_TUI_CI.md) — but `tui/` has not actually moved out of
328
- # this repo yet, so unlike the TS byte-comparison (which is now
329
- # exclusively `coord-web`'s CI job), the Rust byte-comparison has nowhere
330
- # else to run yet and stays HERE, as an explicit step below rather than a
331
- # pytest test:
332
- #
333
- # COORD_TUI_SRC=. python scripts/codegen.py --rust --check
322
+ # #1941/#2897/#2899: `scripts/codegen.py` also generates coord-tui's RUST
323
+ # wire types (`--rust`). #2897 gave that half the SAME cross-repo shape as
324
+ # the TS half above (`--out PATH` / `$COORD_TUI_SRC`, no fallback default,
325
+ # docs/ADR_COORD_TUI_CI.md), and #2899 moved the crate out — so the Rust
326
+ # byte-comparison is now, exactly like the TS one, EXCLUSIVELY the
327
+ # downstream repo's CI job. coord-tui's `.github/workflows/codegen-drift.yml`
328
+ # installs `code-coordinator[server]` from PyPI and runs
329
+ # `COORD_TUI_SRC=. python -m ... codegen --rust --check` against its own
330
+ # committed `src/app/types/generated.rs`.
334
331
  #
335
- # `tests/test_generated_rust_fixture.py` itself is narrowed to what one
332
+ # Nothing about that gate can run here: this checkout has no `generated.rs`
333
+ # to compare against. What stays is
334
+ # `tests/test_generated_rust_fixture.py`, narrowed by #2897 to what one
336
335
  # checkout can prove — the generator runs and covers every schema — same
337
- # as `tests/test_generated_types_fixture.py`; it no longer byte-compares
338
- # the committed `tui/src/app/types/generated.rs`. The day coord-tui gets
339
- # its own checkout + CI, delete the step below (its replacement lives in
340
- # that CI, installing `code-coordinator[server]` from PyPI exactly as
341
- # `coord-web`'s does) — no pytest file to un-narrow.
336
+ # as `tests/test_generated_types_fixture.py`.
342
337
  #
343
338
  # The consumer-side INTEGER-backed-bool text-scraping guard
344
339
  # (`coord/board_bool_guard.py`) that used to also read Rust source text
@@ -9,11 +9,6 @@ board_state.json
9
9
  agent_setup.json
10
10
  coordinator.yml
11
11
 
12
- # Rust build artifacts (coord-tui)
13
- tui/target/
14
- tui/*.err
15
- tui/*.out
16
-
17
12
  # scripts/coord-test-runner.sh scratch output, written into the worktree it
18
13
  # is pointed at. Harmless in the throwaway worktree the Test stage uses, but
19
14
  # a worker who runs the runner against its own checkout and then `git add -A`
@@ -33,11 +28,6 @@ tui/*.out
33
28
  .fallback.out
34
29
  .coord-ci-home/
35
30
 
36
- # #1973: opt-in local quadraui path override (see
37
- # tui/cargo-config-local-quadraui.toml.example) — never commit a
38
- # machine-local co-development override.
39
- tui/.cargo/config.toml
40
-
41
31
  # scratch $HOME created inside disposable worktrees by the CI-mode
42
32
  # acceptance runner (scripts/coord-test-runner.sh) — never meant to
43
33
  # leave the throwaway worktree, let alone land in git history (#2527).
@@ -111,23 +111,25 @@ activation from an earlier command carried forward.
111
111
  The full suite exceeds Claude Code's 600s Bash ceiling on this repo and
112
112
  duplicates the Test stage + CI, which both run it against your pushed SHA
113
113
  regardless. Run just the file(s) that mirror what you changed — `pytest
114
- tests/test_<module>.py` for a `coord/<module>.py` change, `cargo test` from
115
- `tui/` scoped with a test-name filter for a `tui/**` change. To see what
114
+ tests/test_<module>.py` for a `coord/<module>.py` change. To see what
116
115
  the Test stage itself would run for your diff (and confirm you're not
117
116
  missing a suite), `scripts/coord-test-runner.sh <worktree> --print-routing`
118
117
  computes the routing without actually building or testing anything.
119
118
 
120
- ## Working on `tui/` — the `quadraui` pin
121
-
122
- **`coord-tui` pins `quadraui` to a git rev in `tui/Cargo.toml`**
123
- (`quadraui = { git = "https://github.com/JDonaghy/quadraui", rev = "<sha>" }`, #1973) —
124
- never edit that `rev` as a shortcut for co-development, and never build `tui/` against
125
- whatever happens to be checked out in `~/src/quadraui`; a quadraui merge broke coord-tui's
126
- build with zero coord-tui commits and no warning once already, which is exactly what the pin
127
- prevents. Bumping the pin deliberately, and building against an unmerged quadraui branch/PR
128
- without touching the pin, are both procedures — see the `tui-quadraui-workflow` skill
129
- (`coord/skills/tui-quadraui-workflow/SKILL.md`) for the steps; install it with `coord
130
- install-skills` if it isn't already on this machine.
119
+ > **#2899: the TUI is not in this repo.** The `coord-tui` crate that used to live
120
+ > under `tui/` is now the standalone [`JDonaghy/coord-tui`](https://github.com/JDonaghy/coord-tui)
121
+ > repo, checked out at `~/src/coord-tui`. Its rules — the `quadraui` git-rev pin, the
122
+ > `TuiDriver` harness, its sealed `tests/acceptance.rs` — live in **its** CLAUDE.md,
123
+ > per this file's own scope rule above: a rule that does not change what someone
124
+ > editing *this* repo does, does not belong here. If your briefing asks you to change
125
+ > Rust, you are in the wrong checkout — say so rather than recreating `tui/`.
126
+ >
127
+ > Two seams still cross the split, and both run **from coord-tui's CI, pulling
128
+ > `code-coordinator` from PyPI** — never the other way round: `scripts/codegen.py --rust`
129
+ > (its `src/app/types/generated.rs` wire types) and `scripts/gen_board_fixture.py`
130
+ > (its `tests/fixtures/board_sample.json`). Both take `--out PATH` or `$COORD_TUI_SRC`
131
+ > and deliberately have **no fallback default**, so a missing checkout is an error
132
+ > rather than a gate that passes against nothing.
131
133
 
132
134
  ## Key Design Decisions
133
135
 
@@ -163,7 +165,7 @@ The reviewer reads the rules and enforces them against the diff. It does not hav
163
165
  ## Rules for workers
164
166
 
165
167
  - **Only the coordinator writes docs.** Workers must **not** update README, CHANGELOG, or shared documentation files — parallel doc edits cause merge conflicts. If a briefing lists docs in `files_forbidden`, respect it. An issue whose *entire* deliverable is a doc edit is coordinator work and should never have been dispatched; say so and stop rather than editing the doc.
166
- - **Never edit the sealed suite — which is `tests/acceptance/**` *plus every declared driver entrypoint*.** Those suites are delivered read-only / run-only; write your own unit and internal tests instead. **In this repo the sealed set includes `tui/tests/acceptance.rs`** — it is the `tui-tuidriver` driver's `entrypoint:`, and an entrypoint is sealed as a whole file, so it is sealed despite living nowhere near `tests/acceptance/`. Do not be reassured by its prologue calling itself "a seam smoke test": *any* `type="work"` diff touching a sealed path is an **unconditional, mandatory `request-changes`** (`coord/review.py`), and the additive-only carve-out applies only to `test-author` / `mock-author` dispatches. TuiDriver tests belong **in-crate** under `#[cfg(test)]` anyway — see the coord-tui section below. The authoritative list is `AcceptanceConfig.sealed_paths()` in `coord/config.py`; if a briefing's `## Files` names a sealed path, that briefing is wrong — say so and put the test somewhere else rather than following it.
168
+ - **Never edit the sealed suite — which is `tests/acceptance/**` *plus every declared driver entrypoint*.** Those suites are delivered read-only / run-only; write your own unit and internal tests instead. **In this repo, since #2899 moved `tui/` out, the sealed set is exactly `tests/acceptance/**`** — the `tui-tuidriver` `entrypoint:` that used to widen it (`tui/tests/acceptance.rs`, sealed as a whole file despite living nowhere near `tests/acceptance/`) went to the coord-tui repo with the crate, and is sealed *there*. The entrypoint rule itself has not changed, so do not assume a one-directory sealed set in any other repo. *Any* `type="work"` diff touching a sealed path is an **unconditional, mandatory `request-changes`** (`coord/review.py`), and the additive-only carve-out applies only to `test-author` / `mock-author` dispatches. The authoritative list is `AcceptanceConfig.sealed_paths()` in `coord/config.py` — it is derived from the configured driver `entrypoint:`, never hardcoded, which is why it followed the crate automatically; if a briefing's `## Files` names a sealed path, that briefing is wrong — say so and put the test somewhere else rather than following it.
167
169
  - **Stay in file scope.** If you must touch a file outside your briefing, note it in your final message.
168
170
  - **Commit and push before your final message** — even if the build is broken or you ran out of time. Uncommitted work is destroyed when the session ends.
169
171
  - **`gh` is on the deny-list.** The coordinator owns all GitHub interaction; use plain `git`.
@@ -189,12 +191,6 @@ versus keep in the coordinator session, and the coordinator session's own
189
191
 
190
192
  **How it runs:** black-box tests are part of the repo's normal test command, so the **Test stage** executes them on a capability-matched machine — `smoke_tests.capability_rules` route platform-specific suites to capable hardware (a GTK box; a machine with a browser). Favor the automated pre-review gate; the point is to trust the suite so manual/interactive smoke (incl. driving from a phone) is rarely needed.
191
193
 
192
- ### coord-tui — quadraui `TuiDriver` (harness shipped: #690 / #691)
193
- - Drives the whole app through the real `event → handle → render` path against ratatui's headless `TestBackend` and asserts on the screen grid. `cargo test`-native, deterministic, no TTY.
194
- - `CoordApp` implements quadraui's `ShellApp`, so use `quadraui::tui::testing::driver_with_shell(app, CoordApp::shell_config(), w, h)`. API: `find("text")` → coords, `click(x, y)`, `press`, `type_char`, `screen()`, `screen_contains(needle)`. **Locate targets with `find` — never hardcode coordinates.**
195
- - **Reuse the existing fixtures** — `make_test_app(data: BoardData) -> CoordApp` (and `make_app_with_assignments`, `make_app_with_one_completed_issue`, …) in `tui/src/app.rs` build a full app from in-memory `BoardData`, no live daemon. Put the tests **in-crate** (`#[cfg(test)]`), **not** in `tui/tests/` — the fixtures are `#[cfg(test)]`/private and an integration-test crate can't see them.
196
- - Limit: `TuiDriver` renders to `TestBackend`, so it does **not** parse real ANSI — terminal-protocol bugs (raw-mode, SGR mouse, the embedded `claude` PTY pane) are out of reach and still need a live smoke. A native pty + vt100 tier is tracked in quadraui#302 (unbuilt).
197
-
198
194
  ### coord web (Phone Control Center)
199
195
  - The phone web app lives in `coord/dashboard/webapp/` (React / Vite / TS PWA, served by `coord/dashboard/server.py`). **Build the bundle before first use** — `dist/` is gitignored: `npm install && npm run build` from `coord/dashboard/webapp/`, re-run after pulling changes to `src/`. The server falls back to the legacy `index.html` when `dist/` is absent.
200
196
  - **Vitest unit tests** live in `coord/dashboard/webapp/src/components/__tests__/` (`npm test`). **Playwright E2E** specs live in `coord/dashboard/webapp/e2e/` (`npm run test:e2e`) and are the acceptance bar — browsers headless-test more cleanly than terminals, so lean on this gate rather than interactive smoke.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: code-coordinator
3
- Version: 0.5.293
3
+ Version: 0.5.295
4
4
  Summary: Coordinate Claude Code workers across multiple machines and repos.
5
5
  Author-email: John Donaghy <johnfdonaghy@gmail.com>
6
6
  License-Expression: LicenseRef-FSL-1.1-MIT
@@ -282,7 +282,8 @@ coord tui update # downloads the release binary matching `coord --version`
282
282
  coord tui status # check the installed version against the coordinator's
283
283
  ```
284
284
 
285
- (Building from source is only for developing the TUI itself: `cd tui && cargo build`.)
285
+ (Building from source is only for developing the TUI itself, and it lives in its own
286
+ repo since #2899: `git clone https://github.com/JDonaghy/coord-tui && cd coord-tui && cargo build`.)
286
287
 
287
288
  The whole lifecycle can also be driven as **human-attended interactive sessions** launched from
288
289
  a pipeline row's right-click menu — a testing agent, a reviewer, a merge agent, or a fix worker,
@@ -240,7 +240,8 @@ coord tui update # downloads the release binary matching `coord --version`
240
240
  coord tui status # check the installed version against the coordinator's
241
241
  ```
242
242
 
243
- (Building from source is only for developing the TUI itself: `cd tui && cargo build`.)
243
+ (Building from source is only for developing the TUI itself, and it lives in its own
244
+ repo since #2899: `git clone https://github.com/JDonaghy/coord-tui && cd coord-tui && cargo build`.)
244
245
 
245
246
  The whole lifecycle can also be driven as **human-attended interactive sessions** launched from
246
247
  a pipeline row's right-click menu — a testing agent, a reviewer, a merge agent, or a fix worker,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: code-coordinator
3
- Version: 0.5.293
3
+ Version: 0.5.295
4
4
  Summary: Coordinate Claude Code workers across multiple machines and repos.
5
5
  Author-email: John Donaghy <johnfdonaghy@gmail.com>
6
6
  License-Expression: LicenseRef-FSL-1.1-MIT
@@ -282,7 +282,8 @@ coord tui update # downloads the release binary matching `coord --version`
282
282
  coord tui status # check the installed version against the coordinator's
283
283
  ```
284
284
 
285
- (Building from source is only for developing the TUI itself: `cd tui && cargo build`.)
285
+ (Building from source is only for developing the TUI itself, and it lives in its own
286
+ repo since #2899: `git clone https://github.com/JDonaghy/coord-tui && cd coord-tui && cargo build`.)
286
287
 
287
288
  The whole lifecycle can also be driven as **human-attended interactive sessions** launched from
288
289
  a pipeline row's right-click menu — a testing agent, a reviewer, a merge agent, or a fix worker,
@@ -17,7 +17,6 @@ pyproject.toml
17
17
  .github/coord-ci-acceptance.yml
18
18
  .github/ISSUE_TEMPLATE/bug_report.md
19
19
  .github/workflows/auto-release.yml
20
- .github/workflows/cargo-test.yml
21
20
  .github/workflows/publish.yml
22
21
  .github/workflows/test.yml
23
22
  code_coordinator.egg-info/PKG-INFO
@@ -341,6 +340,7 @@ scripts/codegen.py
341
340
  scripts/coord-test-runner.sh
342
341
  scripts/coord-venv-rollback.sh
343
342
  scripts/drive-batch.sh
343
+ scripts/extract-coord-tui.sh
344
344
  scripts/fleet_watchdog.py
345
345
  scripts/gen_board_fixture.py
346
346
  scripts/gen_mock_index.py
@@ -361,6 +361,10 @@ scripts/azure-workers/provision-worker.sh
361
361
  scripts/azure-workers/scrub-and-generalize.sh
362
362
  scripts/azure-workers/tailnet-acl.hujson
363
363
  scripts/azure-workers/verify-github-token.sh
364
+ scripts/coord-tui-scaffold/CLAUDE.md
365
+ scripts/coord-tui-scaffold/.github/coord-ci-acceptance.yml
366
+ scripts/coord-tui-scaffold/.github/workflows/cargo-test.yml
367
+ scripts/coord-tui-scaffold/.github/workflows/codegen-drift.yml
364
368
  tests/SMOKE_SET.md
365
369
  tests/__init__.py
366
370
  tests/backends.py
@@ -799,47 +803,7 @@ tests/fixtures/test_report/pytest_error_string_in_body.txt
799
803
  tests/fixtures/test_report/pytest_internal_error.txt
800
804
  tests/fixtures/test_report/pytest_mixed_failures.txt
801
805
  tests/fixtures/test_report/pytest_no_parseable_failures.txt
802
- tui/Cargo.lock
803
- tui/Cargo.toml
804
- tui/cargo-config-local-quadraui.toml.example
805
- tui/.github/workflows/release-tui.yml
806
- tui/src/commands.rs
807
- tui/src/lib.rs
808
- tui/src/main.rs
809
- tui/src/settings.rs
810
- tui/src/app/approved.rs
811
- tui/src/app/audit.rs
812
- tui/src/app/chat.rs
813
- tui/src/app/data.rs
814
- tui/src/app/dialogs.rs
815
- tui/src/app/doc_tabs.rs
816
- tui/src/app/drive.rs
817
- tui/src/app/drive_queue.rs
818
- tui/src/app/escalation.rs
819
- tui/src/app/events.rs
820
- tui/src/app/fixtures.rs
821
- tui/src/app/fleet_health.rs
822
- tui/src/app/fleet_sessions.rs
823
- tui/src/app/fleet_terminals.rs
824
- tui/src/app/format.rs
825
- tui/src/app/milestone_dag.rs
826
- tui/src/app/mod.rs
827
- tui/src/app/msv.rs
828
- tui/src/app/pipeline.rs
829
- tui/src/app/plans.rs
830
- tui/src/app/render.rs
831
- tui/src/app/reports.rs
832
- tui/src/app/sessions.rs
833
- tui/src/app/settings_ui.rs
834
- tui/src/app/sidebar.rs
835
- tui/src/app/terminal.rs
836
- tui/src/app/tests.rs
837
- tui/src/app/types.rs
838
- tui/src/app/workspace.rs
839
- tui/src/app/types/generated.rs
840
- tui/src/bin/gtk.rs
841
806
  tui/tests/acceptance.rs
842
- tui/tests/cli.rs
843
807
  tui/tests/acceptance/ms-33/audit_1039.rs
844
808
  tui/tests/acceptance/ms-33/contract.md
845
809
  tui/tests/acceptance/ms-33/manifest.yml
@@ -885,5 +849,4 @@ tui/tests/acceptance/ms-67/mocks/approved-items-chat-opened.screen
885
849
  tui/tests/acceptance/ms-67/mocks/approved-items-context-menu.screen
886
850
  tui/tests/acceptance/ms-67/mocks/approved-items-detail.screen
887
851
  tui/tests/acceptance/ms-67/mocks/approved-items-empty.screen
888
- tui/tests/acceptance/ms-67/mocks/approved-items-populated.screen
889
- tui/tests/fixtures/board_sample.json
852
+ tui/tests/acceptance/ms-67/mocks/approved-items-populated.screen
@@ -10,7 +10,6 @@
10
10
  ".github/ISSUE_TEMPLATE/bug_report.md",
11
11
  ".github/coord-ci-acceptance.yml",
12
12
  ".github/workflows/auto-release.yml",
13
- ".github/workflows/cargo-test.yml",
14
13
  ".github/workflows/publish.yml",
15
14
  ".github/workflows/test.yml",
16
15
  ".gitignore",
@@ -343,8 +342,13 @@
343
342
  "scripts/check_gh_argv_containment.py",
344
343
  "scripts/codegen.py",
345
344
  "scripts/coord-test-runner.sh",
345
+ "scripts/coord-tui-scaffold/.github/coord-ci-acceptance.yml",
346
+ "scripts/coord-tui-scaffold/.github/workflows/cargo-test.yml",
347
+ "scripts/coord-tui-scaffold/.github/workflows/codegen-drift.yml",
348
+ "scripts/coord-tui-scaffold/CLAUDE.md",
346
349
  "scripts/coord-venv-rollback.sh",
347
350
  "scripts/drive-batch.sh",
351
+ "scripts/extract-coord-tui.sh",
348
352
  "scripts/fleet_watchdog.py",
349
353
  "scripts/gen_board_fixture.py",
350
354
  "scripts/gen_mock_index.py",
@@ -793,45 +797,6 @@
793
797
  "tests/test_worktree_rmtree_chokepoint.py",
794
798
  "tests/test_write_parity.py",
795
799
  "tests/write_parity.py",
796
- "tui/.github/workflows/release-tui.yml",
797
- "tui/Cargo.lock",
798
- "tui/Cargo.toml",
799
- "tui/cargo-config-local-quadraui.toml.example",
800
- "tui/src/app/approved.rs",
801
- "tui/src/app/audit.rs",
802
- "tui/src/app/chat.rs",
803
- "tui/src/app/data.rs",
804
- "tui/src/app/dialogs.rs",
805
- "tui/src/app/doc_tabs.rs",
806
- "tui/src/app/drive.rs",
807
- "tui/src/app/drive_queue.rs",
808
- "tui/src/app/escalation.rs",
809
- "tui/src/app/events.rs",
810
- "tui/src/app/fixtures.rs",
811
- "tui/src/app/fleet_health.rs",
812
- "tui/src/app/fleet_sessions.rs",
813
- "tui/src/app/fleet_terminals.rs",
814
- "tui/src/app/format.rs",
815
- "tui/src/app/milestone_dag.rs",
816
- "tui/src/app/mod.rs",
817
- "tui/src/app/msv.rs",
818
- "tui/src/app/pipeline.rs",
819
- "tui/src/app/plans.rs",
820
- "tui/src/app/render.rs",
821
- "tui/src/app/reports.rs",
822
- "tui/src/app/sessions.rs",
823
- "tui/src/app/settings_ui.rs",
824
- "tui/src/app/sidebar.rs",
825
- "tui/src/app/terminal.rs",
826
- "tui/src/app/tests.rs",
827
- "tui/src/app/types.rs",
828
- "tui/src/app/types/generated.rs",
829
- "tui/src/app/workspace.rs",
830
- "tui/src/bin/gtk.rs",
831
- "tui/src/commands.rs",
832
- "tui/src/lib.rs",
833
- "tui/src/main.rs",
834
- "tui/src/settings.rs",
835
800
  "tui/tests/acceptance.rs",
836
801
  "tui/tests/acceptance/ms-33/audit_1039.rs",
837
802
  "tui/tests/acceptance/ms-33/contract.md",
@@ -878,8 +843,6 @@
878
843
  "tui/tests/acceptance/ms-67/mocks/approved-items-detail.screen",
879
844
  "tui/tests/acceptance/ms-67/mocks/approved-items-empty.screen",
880
845
  "tui/tests/acceptance/ms-67/mocks/approved-items-populated.screen",
881
- "tui/tests/acceptance/ms-67/pull_decomposition_2533.rs",
882
- "tui/tests/cli.rs",
883
- "tui/tests/fixtures/board_sample.json"
846
+ "tui/tests/acceptance/ms-67/pull_decomposition_2533.rs"
884
847
  ]
885
848
  }
@@ -1,7 +1,7 @@
1
1
  {
2
- "tag": "0.5.293",
2
+ "tag": "0.5.295",
3
3
  "distance": 0,
4
- "node": "g80ec18827638d21151ef2fd58d9374377758ba0b",
4
+ "node": "g6f3f2c4c263d6bd9620eee9c2030c0ed984ee448",
5
5
  "dirty": false,
6
6
  "branch": "HEAD",
7
7
  "node_date": "2026-08-29"
@@ -474,6 +474,62 @@ def post_pause(
474
474
  return post_record(svc, "/pause", {"machine": machine, "action": action}, timeout=timeout)
475
475
 
476
476
 
477
+ def fetch_github_backoff(
478
+ svc: ServiceConfig, *, timeout: float = _DEFAULT_TIMEOUT
479
+ ) -> dict | None:
480
+ """GET /github-backoff → the daemon's shared GitHub rate-limit backoff
481
+ state, or ``None`` when there isn't an active one (#2934).
482
+
483
+ The read side of the fleet-wide half of #2809: a 403 recorded by ANY
484
+ machine's `coord.github_throttle.record()` lands here, so every other
485
+ machine's next `coord.github_throttle.consult()` — the seam every `gh`
486
+ call funnels through — sees it before making its own call, rather than
487
+ only ever learning about its own host's hits. Raises ``httpx.HTTPError``
488
+ on transport/HTTP failure — `coord.github_throttle.consult()` catches
489
+ that itself and falls back to the local per-host file (this module stays
490
+ strict, same posture as `fetch_paused_machines`, so a caller that DOES
491
+ want to distinguish "confirmed none" from "couldn't ask" still can).
492
+
493
+ Returns the raw ``{until, reason, status, request_id, retry_after_s,
494
+ recorded_at}`` mapping (or ``None``) rather than a `Backoff` — parsing
495
+ that shape is `coord.github_throttle`'s job, the same division client.py
496
+ keeps for `fetch_cordons`/`fetch_quiet_hours` above.
497
+ """
498
+ resp = httpx.get(f"{svc.url}/github-backoff", headers=_headers(svc), timeout=timeout)
499
+ resp.raise_for_status()
500
+ data = resp.json()
501
+ backoff = data.get("backoff") if isinstance(data, dict) else None
502
+ return dict(backoff) if isinstance(backoff, dict) else None
503
+
504
+
505
+ def post_github_backoff(
506
+ svc: ServiceConfig,
507
+ *,
508
+ reason: str,
509
+ status: int | None,
510
+ request_id: str | None,
511
+ retry_after_s: float | None,
512
+ timeout: float = _WRITE_TIMEOUT,
513
+ ) -> dict:
514
+ """POST /github-backoff {reason, status, request_id, retry_after_s} —
515
+ publish a rate-limit hit to the daemon's shared backoff state (#2934).
516
+
517
+ Raises ``httpx.HTTPError`` on transport/HTTP failure —
518
+ `coord.github_throttle.record()` catches that itself and falls back to
519
+ writing this host's own local file, the same fail-soft posture the
520
+ module's docstring requires of every public function here: a caller
521
+ that just got a 403 must never fail a *second* way because publishing it
522
+ fleet-wide didn't work.
523
+ """
524
+ payload = {
525
+ "reason": reason,
526
+ "status": status,
527
+ "request_id": request_id,
528
+ "retry_after_s": retry_after_s,
529
+ }
530
+ return post_record(svc, "/github-backoff", payload, timeout=timeout)
531
+
532
+
477
533
  def fetch_remote_config(svc: ServiceConfig, *, timeout: float = _DEFAULT_TIMEOUT) -> Path:
478
534
  """GET /config, cache it to ``~/.coord/coordinator.remote.yml``, return the path.
479
535
 
@@ -325,12 +325,13 @@ def tui_update(
325
325
  click.echo(
326
326
  f"refusing to overwrite {dest_path}: it reports version "
327
327
  f"{DEV_BUILD_SENTINEL_VERSION!r}, the sentinel a locally "
328
- "`cargo build`'d coord-tui always carries (tui/Cargo.toml's "
328
+ "`cargo build`'d coord-tui always carries (coord-tui's "
329
+ "Cargo.toml "
329
330
  "committed version is only stamped for real in CI release "
330
331
  "builds). This looks like a dev build someone is iterating "
331
332
  "on -- pass --force to overwrite it anyway, or keep "
332
- "building it yourself: cd tui && cargo build && cp "
333
- f"target/debug/coord-tui {dest_path}",
333
+ "building it yourself: from a coord-tui checkout, "
334
+ f"cargo build && cp target/debug/coord-tui {dest_path}",
334
335
  err=True,
335
336
  )
336
337
  sys.exit(3)
@@ -1984,14 +1984,23 @@ class HealthConfig:
1984
1984
  # exists because it was found three releases stale on 2026-07-29.
1985
1985
  cli_venv_python: str | None = None
1986
1986
  # Absolute path to the built coord-tui binary. None → ~/.local/bin/coord-tui
1987
- # (README: `cd tui && cargo build && cp target/debug/coord-tui
1987
+ # (coord-tui's README: `cargo build && cp target/debug/coord-tui
1988
1988
  # ~/.local/bin/coord-tui`).
1989
1989
  tui_binary_path: str | None = None
1990
- # Directory holding the tui/ Rust sources the binary was built from. None →
1991
- # `<checkout>/tui/src` for the first configured local checkout that has one.
1990
+ # Directory holding the coord-tui Rust sources the binary was built from
1991
+ # (#2899; before that split the crate lived at `tui/` inside THIS repo).
1992
+ # None → `<checkout>/src` for this machine's `coord-tui` checkout,
1993
+ # discovered the same way `coord_tui_checkout` is (see
1994
+ # `coord.health.checks.deploy_lane_facts.resolve_coord_tui_checkout`),
1995
+ # falling back to the pre-split `<checkout>/tui/src`.
1992
1996
  # Deliberately points at `src/`, not the crate root: rooting the mtime walk
1993
1997
  # above `target/` would sweep a multi-GB build dir on every refresh.
1994
1998
  tui_source_dir: str | None = None
1999
+ # Root of a local `coord-tui` checkout (#2899). None → discover it from
2000
+ # `repo_paths`/`ctx.checkouts` (a checkout named `coord-tui`, else one
2001
+ # carrying `src/app/data.rs`). Same convention as the lanes above: None
2002
+ # means "discover it", never "disable the lane".
2003
+ coord_tui_checkout: str | None = None
1995
2004
  # Absolute path to the live `coord web --dist` bundle (#1834 lane 5).
1996
2005
  # None → ~/coord-web-dist — the symlink `deploy/coord-web-dist-build.timer`
1997
2006
  # atomically repoints at each new release (#1543).
@@ -3601,6 +3610,7 @@ _HEALTH_OPT_STR_FIELDS: tuple[str, ...] = (
3601
3610
  "cli_venv_python",
3602
3611
  "tui_binary_path",
3603
3612
  "tui_source_dir",
3613
+ "coord_tui_checkout",
3604
3614
  "deploy_dir",
3605
3615
  "systemd_user_dir",
3606
3616
  "webapp_dist_path",