code-coordinator 0.5.516__tar.gz → 0.5.518__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.
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/PKG-INFO +1 -1
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/code_coordinator.egg-info/PKG-INFO +1 -1
- code_coordinator-0.5.518/code_coordinator.egg-info/scm_version.json +8 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/claim.py +54 -8
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/merge_queue.py +86 -22
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_claim.py +100 -11
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_merge.py +6 -3
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_coord_test_runner_toolchain.py +9 -6
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_gates.py +48 -6
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_merge_queue.py +172 -39
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_smoke.py +45 -7
- code_coordinator-0.5.516/code_coordinator.egg-info/scm_version.json +0 -8
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.claude/commands/board.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.claude/commands/complete-session.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.claude/commands/coordinator.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.githooks/_lib.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.githooks/post-checkout +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.githooks/post-commit +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.githooks/post-merge +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.github/coord-ci-acceptance.yml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.github/workflows/auto-release.yml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.github/workflows/publish.yml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.github/workflows/test.yml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/.gitignore +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/CLAUDE.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/GOAL.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/LICENSE +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/MANIFEST.in +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/README.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/code_coordinator.egg-info/SOURCES.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/code_coordinator.egg-info/dependency_links.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/code_coordinator.egg-info/entry_points.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/code_coordinator.egg-info/requires.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/code_coordinator.egg-info/scm_file_list.json +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/code_coordinator.egg-info/top_level.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/__init__.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/_board_mapping.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/acceptance.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/acceptance_drivers.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/agent.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/agent_app.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/agent_update.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/agents/opencode/.gitignore +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/agents/opencode/agents/work.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/agents/opencode/routing.jsonc +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/approved_work.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/audit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/auto_loop.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/backup.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/block_log.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/board_schema.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/board_service.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/board_wire.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/brain.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/branch_model.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/bug_intake.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/cargo_cache.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/ci_fix.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/ci_github.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/ci_gitlab.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/ci_store.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/claude_setup_token.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/cli.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/client.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/codegen.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/__init__.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/_common.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/acceptance.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/agent_ops.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/audit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/backup.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/chat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/ci.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/codegen.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/dispatch.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/dispatch_workers.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/dr.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/drive.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/drive_queue.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/gate_a.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/gates.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/issues.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/lifecycle.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/machine.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/merge.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/milestone.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/plan_followup.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/plans.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/portal.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/pr.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/release.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/repo.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/report.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/review.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/scorecard.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/sessions.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/setup.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/status.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/store_migrate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/terminal.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/test_gate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/commands/tui.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/comments.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/config.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/config_reload.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/confirm_test.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/conflict_fix.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/dao.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/dashboard/__init__.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/dashboard/fixture.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/dashboard/index.html +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/dashboard/server.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/dashboard/terminal.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/db.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/dead_end.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/decomposition_chat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/README.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-agent.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-backup.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-backup.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-db-backup.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-db-backup.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-db-backup.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-dr-verify.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-dr-verify.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-drive-queue.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-drive-queue.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-failure-notify.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-fleet-watchdog.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-fleet-watchdog.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-notify.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-notify.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-release-propagate.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-release-propagate.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-release-window.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-release-window.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-serve.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-web-dist-build.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-web-dist-build.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy/coord-web.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy_manifest.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deploy_units.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deprecation_telemetry.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/deps.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/diagnose.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/dispatch.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/dispatch_liveness.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/dist_name.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/dr_promote.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/dr_verify.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/drive.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/drive_queue.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/drive_sessions_snapshot.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/drive_state.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/events.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/failure_class.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/failure_classifier.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/filelock.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/fleet_config_health.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/forge_availability.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/freshness.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/gate_a.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/gate_b.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/gate_snapshot.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/gates.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/gen_board_fixture.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/github_ops.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/github_throttle.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/goal.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/graph_health.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/__init__.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/aggregate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/__init__.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/_ci_pin.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/agent_install.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/cargo_targets.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/claude_binary.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/config_drift.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/coord_tui_ci_pin.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/coord_web_ci_pin.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/deploy_lane_facts.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/disk.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/fleet_board.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/fleet_deploy_lanes.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/fleet_phantom.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/fleet_unit_drift.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/graph.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/graphify_cli.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/index_lock.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/issues_sync_staleness.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/local_machine_identity.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/plan_usage.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/pr_churn.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/release_cordon.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/repo_state.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/spawned_coord.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/stalled_pipeline.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/timer_active.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/toolchain.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/unit_drift.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/unit_enablement.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/wedged_drive_queue.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/checks/worktrees.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/cli.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/context.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/fleet_snapshot.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/models.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/pypi.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/registry.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/render.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/health/units.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/hooks.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/housekeeping.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/interactive.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/invariant_alarms.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/issue_store.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/issues_sync_status.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/liveness_auditor.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/machine_fault.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/machine_metrics.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/machine_onboard.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/machine_pause.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/machine_stats.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/milestone_chat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/milestone_dispatch.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/milestone_gate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/milestone_order.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/mock_author.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/models.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/network.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/new_issue_chat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/notifier/__init__.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/notifier/baseline.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/notifier/cli.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/notifier/collect.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/notifier/digest.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/notifier/models.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/notifier/predicate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/notifier/service.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/notifier/store.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/notifier/transport.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/notify.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/openapi.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/overlap_fence.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/overlap_predict.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/parentage.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/parentage_github.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/pipeline.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/plan_parser.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/plans.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/platform_paths.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/portal_bridge.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/portal_store.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/portal_sync.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/pr_body_lint.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/prereqs.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/progress.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/providers/__init__.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/providers/base.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/providers/claude.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/providers/claude_pty.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/providers/opencode.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/queue_diagnose.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/reconcile.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/reconcile_tick.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/refine_chat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/release_cordon.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/release_propagate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/release_verify.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/release_window.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/repo_dormancy.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/repo_edit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/repo_onboard.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/reports.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/rest_schema.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/restart_cmd.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/revalidate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/review.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/scorecard.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/self_health.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/serve_app.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/skills/coord-dispatch-verbs/SKILL.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/skills/drive-queue-preflight/SKILL.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/skills/fleet-restart-safety/SKILL.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/skills/merge-stuck-triage/SKILL.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/skills/pipeline-limbo-triage/SKILL.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/skills/portal-followup/SKILL.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/skills/release-now/SKILL.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/skills/review-verdict-recovery/SKILL.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/skills/tui-quadraui-workflow/SKILL.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/skills/update-issue/SKILL.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/smoke.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/spend_ceiling.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/split_work.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/sql.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/stage_projection.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/state.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/store_migrate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/store_parity.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/templates/deploy-cloudflare.node.yml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/test_author.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/test_chat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/test_orchestrator.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/test_report.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/tui_release.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/uat_checks.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/usage.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/usage_limits.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/usage_rollup.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coord/worker_events.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/coordinator.example.yml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-agent.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-backup.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-backup.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-db-backup.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-db-backup.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-db-backup.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-dr-verify.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-dr-verify.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-drive-queue.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-drive-queue.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-failure-notify.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-failure-notify.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-fleet-watchdog.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-fleet-watchdog.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-notify.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-notify.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-release-propagate.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-release-propagate.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-release-window.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-release-window.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-serve.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-web-dist-build.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-web-dist-build.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-web-dist-build.timer +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-web-rollback.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/coord-web.service +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/deploy/node-shim.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/ADR_COORD_TUI_CI.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/ADR_COORD_WEB_ACCEPTANCE_SUITE.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/ADR_COORD_WEB_CI.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/ADR_COORD_WEB_DIST.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/ADR_PY_RUST_MIRRORS.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/AGENT_OPERATIONS.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/ARCHITECTURE.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/ARCH_SECURITY_GATES.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/COCKPIT.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/CONTROL_CENTER.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/COST_DISCIPLINE.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/CROSS_PLATFORM.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/CUSTOMER_FACING_APPS.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/CUSTOMER_PORTAL.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/DATA_STORE_SELECTION.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/DISASTER_RECOVERY.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/DRIVE_QUEUE.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/EPHEMERAL_WORKERS.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/FORGE_MIGRATION.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/GRAPHIFY_SETUP.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/ISSUE_GUIDANCE.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/MAC_MINI.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/MERGE_AUTO_DRAIN_TRUST_BAR.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/NOTIFIER.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/OPENCODE_VERIFICATION.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/OPERATING_GOTCHAS.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/OPERATOR_GUIDES.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/ORACLE_LOOP.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/PHONE_WEBAPP.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/PIPELINE_V2.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/PLATFORM_EVOLUTION.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/SECOND_BACKEND.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/STORE_SERVICE.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/TEST_FIRST_BUG_LANE.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/WEB_CONTROL_CENTER.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/WSL_WINDOWS_WORKER.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/mocks/web/README.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/mocks/web/_tokens.css +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/mocks/web/issue-detail.html +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/mocks/web/pipeline-narrow.html +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/docs/mocks/web/pipeline-wide.html +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/graphify-out/.gitignore +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/install-agent.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/pyproject.toml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/audit_review_verdict_overrides.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/bootstrap-shared.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/build-worker-image.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/coordinator-machine.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/dr-down.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/dr-up.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/epic-down.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/epic-up.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/preflight.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/provision-server.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/provision-worker.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/scrub-and-generalize.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/tailnet-acl.hujson +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/throwaway-vm.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/azure-workers/verify-github-token.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/check_gh_argv_containment.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/codegen.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/coord-test-runner.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/coord-tui-scaffold/.github/coord-ci-acceptance.yml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/coord-tui-scaffold/.github/workflows/cargo-test.yml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/coord-tui-scaffold/.github/workflows/codegen-drift.yml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/coord-tui-scaffold/CLAUDE.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/coord-venv-rollback.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/drive-batch.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/extract-coord-tui.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/fleet_watchdog.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/gen_board_fixture.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/gen_mock_index.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/lib/provision-core.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/next_release_tag.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/provision-machine.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/run_tests_in_populated_home.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/run_tests_without_gh.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/setup-macmini.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/smoke_437_interactive.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/verify-provision-noble.sh +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/verify_878_review_capture.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/verify_release_published.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/scripts/verify_release_wheel.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/setup.cfg +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/SMOKE_SET.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/__init__.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/acceptance/ms-37/conftest.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/acceptance/ms-37/contract.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/acceptance/ms-37/manifest.yml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/acceptance/ms-37/test_usage_cli_1115.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/acceptance/ms-37/test_usage_core_1118.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/acceptance/ms-51/contract.md +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/acceptance/ms-51/home-active-extended.spec.ts +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/acceptance/ms-51/home-active.spec.ts +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/acceptance/ms-51/manifest.yml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/acceptance/ms-51/mocks/home-active.html +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/acceptance/ms-51/tsconfig.json +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/acceptance/ms-example/mocks/home-active.html +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/backends.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/conftest.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/board-pipeline-basic.json +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/board-pipeline-terminal-gates.json +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/opencode_run_failure_sample.jsonl +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/opencode_run_length_sample.jsonl +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/opencode_run_sample.jsonl +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/playwright/all_pass.json +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/playwright/global_setup_crash.json +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/playwright/mixed_fail.json +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/playwright/retry_then_pass.json +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/playwright/retry_then_pass.junit.xml +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/playwright/skip.json +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/playwright/truncated.json +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/test_report/cargo_compile_error.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/test_report/cargo_multi_target_failures.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/test_report/cargo_no_parseable_failures.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/test_report/pytest_collection_error.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/test_report/pytest_error_string_in_body.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/test_report/pytest_internal_error.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/test_report/pytest_mixed_failures.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/fixtures/test_report/pytest_no_parseable_failures.txt +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_acceptance.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_acceptance_drivers.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_api_error.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_app.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_branch_base.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_branch_capture.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_config_free_1712.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_deploy_units_endpoint.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_dirty_worktree.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_drive_queue_reconcile_2373.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_graph_self_heal.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_health_h3.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_idle_restart.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_push_failure.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_reap.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_repos_and_pull.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_restart_services_endpoint.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_skills_self_heal.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_startup_diagnostics.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_update.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_update_bluegreen.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_usage_limit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_agent_zero_commit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_ambient_home_isolation.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_approve_capability_reroute_3241.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_approve_dependency_busy_2804.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_approve_reject_plan.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_approve_usage_gate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_approved_work_2532.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_approved_work_2996.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_assignment_already_recorded_daemon.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_audit_log.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_audit_outcome.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_audit_query.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_auto_loop.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_auto_release_publish_2035.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_backend_selection.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_backup.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_base_checkout_restore.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_block_log.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_board_cap_762.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_board_fixture.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_board_read_path.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_board_schema.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_board_service.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_board_state.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_board_wire.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_brain.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_branch_model.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_bug_intake.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_build_worker_image_env_update.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cargo_cache.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_check_gh_argv_containment.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_ci_acceptance_gate_1950.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_ci_fix.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_ci_github.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_ci_gitlab.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_ci_parity_2091.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_ci_store.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_claude_md_budget.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_claude_setup_token.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_acceptance.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_assign.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_assign_interactive_oracle_gate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_assign_interactive_remote.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_assign_provider.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_assign_repo_drift_2219.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_audit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_chat_continue.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_ci.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_codegen.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_decide.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_diagnose_capability_rules.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_diagnose_config_provenance.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_diagnose_forge_availability.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_diagnose_graph.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_diagnose_self.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_diagnose_test_coverage.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_doctor.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_doctor_config_free_1801.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_doctor_config_mismatch_1712.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_doctor_store_backend_3084.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_drive.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_drive_queue.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_escalate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_fix_headless_review.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_gate_a.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_install_drift.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_install_skills.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_issue_comment.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_issue_create_label.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_issue_reopen.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_issue_view_list.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_issues.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_milestone_assign.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_milestone_capture.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_milestone_chat_add_child.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_milestone_dispatch.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_milestone_gate_b.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_milestone_gate_c.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_milestone_order.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_milestone_remove_and_issue_close.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_milestone_ship.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_network.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_new_issue_chat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_plans.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_portal.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_pr.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_pull_artifact.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_queue.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_reattach_sessions.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_refine_board.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_release_preflight.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_release_propagate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_release_window.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_repo_2220.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_review_test_author_tracking_epic_2639.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_scorecard.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_serve_store_backend_3084.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_set_review_findings.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_status_advisory_terminal.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_status_contested_tag.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_status_invariant_alarms.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_status_machine_fault.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_status_merge_queue.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_status_provider.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_status_retried_3340.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_status_review_finalizing.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_status_supervisor_3366.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_status_test_failed_tag.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_status_usage_limit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_sync_comments_873.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_test_plan.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_track.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_tui_update.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cli_wait.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_client.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_client_base_install.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_client_config_cache_atomic_3052.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_client_resource_migration_1946.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_commands_common.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_comments.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_completion_summary.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_config.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_config_acceptance.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_config_audit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_config_drift_check.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_config_effective.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_config_pricing.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_config_snapshot_noncanonical_2208.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_config_usage_gate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_confirm_test.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_conflict_fix.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_conflict_fix_semantic.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_coord_log_daemon_fallback_2547.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_coord_test.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_coord_test_runner_acceptance_toolchain_2936.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_coord_test_runner_baseline.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_coord_test_runner_populated_home.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_coord_test_runner_routing.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_coord_uat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_coord_web_sse_restart_live.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_coordinator_machine.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_cross_platform_imports.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dao.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dashboard.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dashboard_api.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dashboard_fixture.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dashboard_server.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dashboard_terminal.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dashboard_terminal_live.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_db.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dead_end.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_decomposition_chat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_deploy_coord_db_backup.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_deploy_coord_web_dist.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_deploy_coord_web_rollback.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_deploy_db_backup_unit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_deploy_drive_queue_unit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_deploy_failure_notify_unit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_deploy_manifest.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_deploy_notify_unit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_deploy_units_lane.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_deploy_web_unit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_deprecation_telemetry.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_deps.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_diagnose.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dispatch.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dispatch_liveness.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dispatch_target_validation.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dispatch_workers.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dist_name.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_done_housekeeping.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dr_azure_scripts.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dr_promote.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_dr_verify.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_drive.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_drive_machine_fault.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_drive_queue.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_drive_queue_blocked_rendering.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_drive_queue_launch_argv.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_drive_queue_max_parallel_config.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_drive_queue_max_parallel_per_repo_config.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_drive_queue_roll_pending.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_drive_queue_self_cordon_escalation.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_drive_sessions_snapshot.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_drive_state.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_drive_tmux.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_epic_up_capability_detection.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_epic_up_down_symlinked_config_1887.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_epic_up_image_provenance.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_errors.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_events.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_failure_class.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_failure_classifier.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_filelock.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_finalize_interactive_exit_test_verdict.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_fix_escalation_classifier.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_fix_of_force_override.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_fleet_config_health.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_fleet_health_probes.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_fleet_health_snapshot.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_fleet_watchdog.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_forge_availability.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_freshness.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_gate_a.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_gate_b.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_gate_snapshot_staleness.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_gather_fleet_tmux_sessions.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_gen_mock_index.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_generated_rust_fixture.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_generated_rust_requests.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_generated_types_fixture.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_github_ops.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_github_throttle.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_goal.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_graph_health.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_graph_selfheal_absent_2237.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_handoff.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_checks.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_cli.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_cli_graph.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_config.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_context.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_coord_tui_ci_pin.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_coord_web_ci_pin.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_deploy_lane_facts.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_fix.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_incident_regression.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_issues_sync_staleness.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_pr_churn.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_pypi.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_registry.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_release_cordon_probe.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_timer_active.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_toolchain.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_unit_drift.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_unit_enablement.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_health_wedged_drive_queue.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_hooks.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_housekeeping.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_human_attended_437.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_init.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_install_agent_venv_2911.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_integration.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_interactive.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_interactive_briefing_echo.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_interactive_pane_log_2541.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_interactive_prefill_state.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_interactive_session_relaunch.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_interactive_test_verdict_backstop.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_interactive_token_attribution.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_interactive_worktree.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_invariant_alarms.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_issue_store_seam.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_issues_sync_status.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_liveness_auditor.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_liveness_notify.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_lock_contention_ratchet.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_machine_fault.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_machine_metrics.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_machine_onboard.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_machine_pause.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_machine_stats.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_merge_verify.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_milestone_chat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_milestone_dispatch.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_milestone_gate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_milestone_order.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_milestone_seam.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_mock_author.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_model_tiering.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_models.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_models_config_labels.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_needs_attention.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_network.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_new_issue_chat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_next_release_tag.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_node_shim.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_notifier_baseline.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_notifier_cli.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_notifier_collect.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_notifier_config.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_notifier_drive_seam.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_notifier_isolation.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_notifier_predicate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_notifier_quiet_hours.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_notifier_service.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_notify.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_notify_drain.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_openapi.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_operational_defaults.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_overlap_fence.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_overlap_predict.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_packaged_deploy_units.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_parentage.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_paste_landed.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_phantom_heal_venv_independence_2570.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_pipeline.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_plan_followup_approve_plan_command.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_plan_followup_pr_command.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_plan_followup_review_command.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_plan_only.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_plan_parser.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_platform_paths.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_portal_bridge.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_portal_config.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_portal_store.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_portal_sync.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_pr_body_lint.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_prereqs.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_production_db_guard.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_progress.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_provider_seam.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_providers.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_providers_config_labels.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_providers_pty.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_provision_core.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_provision_machine.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_py_rust_mirror_inventory.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_quiet_hours.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_quiet_hours_store_2146.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_reap_merged_sessions.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_reap_stale_interactive_tick.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_reconcile.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_reconcile_branch.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_reconcile_completions.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_reconcile_late_agent_reports_2547.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_reconcile_merges.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_reconcile_no_agent_record.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_reconcile_tick.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_reconcile_usage_limit_done.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_refine_chat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_release_cordon_2101.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_release_cordon_daemon_leads_2176.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_release_cordon_deadlock_2240.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_release_cordon_drain_stall_3336.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_release_cordon_stuck_2490.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_release_propagate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_release_propagate_threshold.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_release_roll_between_legs_2854.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_release_roll_window_handoff.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_release_unified_1242.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_release_verify.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_release_window.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_remote_auto_prune.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_remote_interactive_reaper.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_repo_add.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_repo_dormancy.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_repo_edit_2220.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_repo_graph_fleet_2237.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_repo_max_parallel_3423.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_repo_onboard_2220.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_report_result_push.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_reports.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_restart_cmd.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_retry.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_retry_advisory_1606.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_retry_escalation_classify_3360.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_retry_type_1636.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_revalidate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_review.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_review_end_review_without_verdict.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_review_parse_failure_diagnostic.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_review_reaffirm.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_review_state.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_review_verdict_backstop.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_review_verdict_override_audit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_review_verdict_relay.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_review_zero_commits.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_scoped_review_wiring.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_scorecard.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_self_health.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_serve.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_serve_app.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_serve_app_board_trim.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_serve_rest_routes.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_session.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_slice_issue_attribution.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_smoke_fanout_manifest_3333.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_smoke_live_checkout_restore.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_smoke_workflow.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_spend_ceiling.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_spend_ceiling_coordinator.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_split.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_split_work.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_sql_dialect.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_sqlite_connect_ratchet.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_stage_projection.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_stale_busy_reviewer_697.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_stalled_pipeline.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_state.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_state_review_findings_daemon.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_status_fleet_footer.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_stop_1567.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_store_contract.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_store_migrate.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_stuck.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_stuck_test_state_watchdog_2803.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_terminal_command.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_test_author.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_test_chat.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_test_orchestrator.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_test_report.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_test_verdict_parsing.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_test_verdict_transcript_floor.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_text_io_encoding_audit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_thin_client_board_audit.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_thin_client_config_load_1080.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_thin_client_daemon_routing_906.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_throwaway_vm.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_tmux_host.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_tmux_session.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_transcript_floor.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_uat_checks.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_usage.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_usage_limits.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_usage_rollup.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_venv_live_install_2121.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_version_single_source.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_watch.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_windows_job_is_a_real_gate_2000.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_worker_env_venv_isolation.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_worker_events.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_worker_image_pin_sync.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_worker_safety.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_worker_test_scoping.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_worktree.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_worktree_rmtree_chokepoint.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_write_parity.py +0 -0
- {code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/write_parity.py +0 -0
|
@@ -454,6 +454,40 @@ def _default_branch_lookup(repo_github: str, issue_number: int) -> list[str]:
|
|
|
454
454
|
return _drop_merged_branches(repo_github, branches)
|
|
455
455
|
|
|
456
456
|
|
|
457
|
+
# #3442: bracket-tag issue_title prefixes (`f"[{tag}] {title}"`, see
|
|
458
|
+
# `coord.review.dispatch_review` / `coord.review._dispatch_scoped_review` /
|
|
459
|
+
# `coord.smoke.dispatch_pending_smoke` / `coord.gate_b`'s tracking-issue
|
|
460
|
+
# dispatch) that a review/smoke/gate-b leg dispatch uses when it does NOT
|
|
461
|
+
# pin `target_branch` to the real work branch — the agent then derives its
|
|
462
|
+
# own throwaway branch name by slugifying that bracketed title
|
|
463
|
+
# (`coord.agent._slugify`), landing on `issue-{N}-{tag}-...`. These legs
|
|
464
|
+
# are read-only observers: a review posts a verdict comment, a smoke run
|
|
465
|
+
# executes a command, gate-b posts a milestone verdict — none of them ever
|
|
466
|
+
# commits to its own checkout, so that branch sits at `ahead_by == 0`
|
|
467
|
+
# against the default branch from the moment it's created, forever,
|
|
468
|
+
# regardless of whether the issue's REAL work has landed. It is not
|
|
469
|
+
# evidence of anything. Every OTHER dispatcher that continues real work on
|
|
470
|
+
# an issue (conflict-fix, retry, fix-N) pins `target_branch` to the actual
|
|
471
|
+
# work branch instead of letting one of these get minted, so this list is
|
|
472
|
+
# deliberately just the observer legs, not every bracket tag in the
|
|
473
|
+
# codebase — though as #3442's own review round found for gate-b, that
|
|
474
|
+
# distinction has to be verified per-dispatcher, not assumed; see the
|
|
475
|
+
# issue's suggested structural alternative (branch never had commits, ever)
|
|
476
|
+
# for a fix that wouldn't require keeping this list exhaustive by hand.
|
|
477
|
+
_OBSERVER_LEG_TAGS = ("review", "scoped-review", "smoke", "gate-b")
|
|
478
|
+
|
|
479
|
+
|
|
480
|
+
def _is_observer_leg_branch(branch: str, issue_number: int) -> bool:
|
|
481
|
+
"""True when *branch* is a review/smoke leg's own throwaway checkout,
|
|
482
|
+
not a branch that could ever carry real work (see `_OBSERVER_LEG_TAGS`).
|
|
483
|
+
"""
|
|
484
|
+
for tag in _OBSERVER_LEG_TAGS:
|
|
485
|
+
prefix = f"issue-{issue_number}-{tag}"
|
|
486
|
+
if branch == prefix or branch.startswith(prefix + "-"):
|
|
487
|
+
return True
|
|
488
|
+
return False
|
|
489
|
+
|
|
490
|
+
|
|
457
491
|
def any_matching_branch_merged(
|
|
458
492
|
repo_github: str, issue_number: int, *, branch: str | None = None
|
|
459
493
|
) -> bool:
|
|
@@ -476,17 +510,29 @@ def any_matching_branch_merged(
|
|
|
476
510
|
merged" behaviour only when *branch* is `None` — a caller with nothing
|
|
477
511
|
assigned yet (a pre-dispatch check before any branch exists) has no
|
|
478
512
|
single branch to ask about, so the issue-scoped signal is the best one
|
|
479
|
-
available.
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
513
|
+
available. #3442: that fallback first drops every known
|
|
514
|
+
`_is_observer_leg_branch` candidate — #3436 only fixed the case where
|
|
515
|
+
the dispatch's OWN branch was already known; a plain `coord assign`
|
|
516
|
+
(or any other caller with no branch recorded yet, which is exactly when
|
|
517
|
+
this fallback runs) has no branch of its own to scope to, so without
|
|
518
|
+
this filter a single zero-commit `issue-{N}-review-*`/`issue-{N}-smoke-
|
|
519
|
+
*` leg branch still reads the WHOLE issue as merged and permanently
|
|
520
|
+
refuses dispatch — the same bug #3436 fixed for the branch-known case,
|
|
521
|
+
reopened for the branch-unknown one. Reuses the exact merge-detection
|
|
522
|
+
`_drop_merged_branches` already performs for claim detection (PR-merged
|
|
523
|
+
OR `ahead_by == 0` ancestry, survives squash merges — #3103): this is
|
|
524
|
+
just "did filtering drop anything", with the fail-open direction
|
|
525
|
+
flipped to match a REFUSAL predicate rather than a claim-signal — no
|
|
526
|
+
matching branch at all, or any lookup failure, returns `False` ("not
|
|
527
|
+
merged, don't refuse dispatch on this"), never `True`.
|
|
486
528
|
"""
|
|
487
529
|
if branch is not None:
|
|
488
530
|
return not _drop_merged_branches(repo_github, [branch])
|
|
489
|
-
branches =
|
|
531
|
+
branches = [
|
|
532
|
+
b
|
|
533
|
+
for b in list_matching_remote_branches(repo_github, issue_number)
|
|
534
|
+
if not _is_observer_leg_branch(b, issue_number)
|
|
535
|
+
]
|
|
490
536
|
if not branches:
|
|
491
537
|
return False
|
|
492
538
|
unmerged = set(_drop_merged_branches(repo_github, branches))
|
|
@@ -3169,6 +3169,19 @@ def evaluate_smoke_verdict(
|
|
|
3169
3169
|
#821/#1475's existing convention), so rows/entries predating this
|
|
3170
3170
|
feature behave exactly as before.
|
|
3171
3171
|
|
|
3172
|
+
#3443: "the merge base moved" is not, by itself, "a rebase happened" —
|
|
3173
|
+
the smoke runner tests the branch checked out as-is, never a merge with
|
|
3174
|
+
the base, so a base that merely advanced underneath an UNREBASED branch
|
|
3175
|
+
changed nothing the suite could see. Before consulting the #1738/#1778/
|
|
3176
|
+
#1847 file-compare escape hatches below, a confirmed-unchanged branch
|
|
3177
|
+
head (``test_head_sha == current_branch_sha``) spares the base move
|
|
3178
|
+
outright — cheaper than any file compare, and exactly the signal that a
|
|
3179
|
+
rebase (which always changes the branch's head SHA) did *not* happen.
|
|
3180
|
+
Without it, `dispatch_pending_smoke` (#3309) re-tested an identical,
|
|
3181
|
+
un-rebased branch head on every single commit landing on an active
|
|
3182
|
+
target branch, converging on nothing but flakiness (vimcode#523/#526,
|
|
3183
|
+
2026-09-24/25: ~20 re-runs of an unchanged branch head in a few hours).
|
|
3184
|
+
|
|
3172
3185
|
#1732: ``skipped`` is deliberately excluded from all of the above. It is
|
|
3173
3186
|
not a measurement of code at a SHA the way ``passed`` is — it is a
|
|
3174
3187
|
structural claim about the diff itself ("contract/fixture-only, nothing
|
|
@@ -3385,6 +3398,7 @@ def evaluate_smoke_verdict(
|
|
|
3385
3398
|
|
|
3386
3399
|
base_move_spare_reason: str | None = None
|
|
3387
3400
|
test_base_sha = getattr(a, "test_base_sha", None)
|
|
3401
|
+
test_head_sha = getattr(a, "test_head_sha", None)
|
|
3388
3402
|
if test_state == "passed":
|
|
3389
3403
|
# Merge base moved: the tested combination (this branch + that
|
|
3390
3404
|
# base) no longer exists, even if the branch's own diff is
|
|
@@ -3425,32 +3439,78 @@ def evaluate_smoke_verdict(
|
|
|
3425
3439
|
)
|
|
3426
3440
|
continue
|
|
3427
3441
|
|
|
3428
|
-
# #
|
|
3429
|
-
#
|
|
3430
|
-
#
|
|
3431
|
-
#
|
|
3432
|
-
#
|
|
3433
|
-
#
|
|
3434
|
-
#
|
|
3435
|
-
#
|
|
3436
|
-
#
|
|
3437
|
-
#
|
|
3438
|
-
#
|
|
3439
|
-
#
|
|
3440
|
-
#
|
|
3441
|
-
#
|
|
3442
|
+
# #3443: before even asking whether the base move is content-
|
|
3443
|
+
# relevant, ask the cheaper, load-bearing question first — did
|
|
3444
|
+
# THIS branch actually move? The smoke runner checks the branch
|
|
3445
|
+
# out as-is; it does not merge or rebase onto the base before
|
|
3446
|
+
# testing (see the module-level #1479 note above), so a moved
|
|
3447
|
+
# target tip only invalidates a `passed` verdict when the
|
|
3448
|
+
# branch itself picked up new commits since the test ran (a
|
|
3449
|
+
# rebase). A branch head confirmed identical to what was tested
|
|
3450
|
+
# means its merge-base with the target cannot have changed
|
|
3451
|
+
# either — the target only grows forward; it never rewrites the
|
|
3452
|
+
# history the branch forked from — so re-dispatching a
|
|
3453
|
+
# byte-identical branch head every time the target advances
|
|
3454
|
+
# (#3309 looping against develop, vimcode#523/#526) is pure
|
|
3455
|
+
# spend, not a re-test of anything new. Probed here, ahead of
|
|
3456
|
+
# the base-move check, so a confirmed-unchanged branch spares it
|
|
3457
|
+
# before `_base_move_spared`'s file-compare hatches even run;
|
|
3458
|
+
# those stay as the fallback for what this can't confirm (probe
|
|
3459
|
+
# unavailable) or the case where the branch genuinely moved.
|
|
3460
|
+
if (
|
|
3461
|
+
test_head_sha is not None
|
|
3462
|
+
and current_branch_sha is None
|
|
3463
|
+
and not branch_sha_attempted
|
|
3464
|
+
and gh_ops is not None
|
|
3465
|
+
and repo_github
|
|
3466
|
+
and entry_branch
|
|
3467
|
+
):
|
|
3468
|
+
current_branch_sha, branch_sha_probe_failed, branch_sha_probe_error = (
|
|
3469
|
+
_gh_get_branch_sha(gh_ops, repo_github, entry_branch)
|
|
3470
|
+
)
|
|
3471
|
+
branch_sha_attempted = True
|
|
3472
|
+
|
|
3442
3473
|
if (
|
|
3443
3474
|
test_base_sha is not None
|
|
3444
3475
|
and current_base_sha is not None
|
|
3445
3476
|
and test_base_sha != current_base_sha
|
|
3446
3477
|
):
|
|
3447
|
-
|
|
3448
|
-
|
|
3449
|
-
|
|
3450
|
-
|
|
3451
|
-
|
|
3452
|
-
|
|
3453
|
-
|
|
3478
|
+
if (
|
|
3479
|
+
test_head_sha is not None
|
|
3480
|
+
and current_branch_sha is not None
|
|
3481
|
+
and test_head_sha == current_branch_sha
|
|
3482
|
+
):
|
|
3483
|
+
spared, base_move_spare_reason = (
|
|
3484
|
+
True,
|
|
3485
|
+
"branch head unchanged since test — no rebase, "
|
|
3486
|
+
"base move alone does not stale (#3443)",
|
|
3487
|
+
)
|
|
3488
|
+
else:
|
|
3489
|
+
# #1738/#1778/#1847: the base moved AND the branch head
|
|
3490
|
+
# also moved (or couldn't be confirmed unchanged), but a
|
|
3491
|
+
# moved base SHA still doesn't necessarily mean a content
|
|
3492
|
+
# change that could affect a test result.
|
|
3493
|
+
# `_base_move_spared` tries, in order: is the base move
|
|
3494
|
+
# itself provably inert content (docs/scripts/issue-
|
|
3495
|
+
# template only, #1738); failing that, is *this
|
|
3496
|
+
# branch*'s entire diff (as actually tested,
|
|
3497
|
+
# test_base_sha..test_head_sha) provably inert (#1778);
|
|
3498
|
+
# failing that, do the two diffs simply touch disjoint
|
|
3499
|
+
# files (#1847) — a substantive base move and a
|
|
3500
|
+
# substantive branch that have nothing to do with each
|
|
3501
|
+
# other. Any one being true means the tested combination
|
|
3502
|
+
# is still covered — fall through to the branch-content
|
|
3503
|
+
# check below instead of staling here. If the branch has
|
|
3504
|
+
# since gained real content, that check still catches it
|
|
3505
|
+
# independently via the patch-id compare (#1847 doesn't
|
|
3506
|
+
# short-circuit it).
|
|
3507
|
+
spared, base_move_spare_reason = _base_move_spared(
|
|
3508
|
+
gh_ops,
|
|
3509
|
+
repo_github,
|
|
3510
|
+
test_base_sha,
|
|
3511
|
+
current_base_sha,
|
|
3512
|
+
test_head_sha,
|
|
3513
|
+
)
|
|
3454
3514
|
if not spared:
|
|
3455
3515
|
# stale: re-verify against the new base
|
|
3456
3516
|
if stale is None:
|
|
@@ -3467,7 +3527,11 @@ def evaluate_smoke_verdict(
|
|
|
3467
3527
|
# Branch content changed since the test ran. Same SHA-then-patch-id
|
|
3468
3528
|
# fallback as has_approved_review: a content-identical rebase (SHA
|
|
3469
3529
|
# moved, patch-id didn't) does not invalidate the verdict.
|
|
3470
|
-
test_head_sha
|
|
3530
|
+
# `test_head_sha` was already read above (#3443's branch-probe
|
|
3531
|
+
# reordering); the probe below is a no-op here whenever the
|
|
3532
|
+
# `passed` branch already ran it (`branch_sha_attempted` guards it),
|
|
3533
|
+
# and is the FIRST attempt for a `skipped`/`baseline_red` row, which
|
|
3534
|
+
# never enters that block.
|
|
3471
3535
|
if (
|
|
3472
3536
|
test_head_sha is not None
|
|
3473
3537
|
and current_branch_sha is None
|
|
@@ -876,14 +876,15 @@ def test_any_matching_branch_merged_false_on_gh_error(monkeypatch) -> None:
|
|
|
876
876
|
def test_any_matching_branch_merged_scoped_branch_ignores_merged_siblings(
|
|
877
877
|
monkeypatch,
|
|
878
878
|
) -> None:
|
|
879
|
-
"""#3436: reproduces vimcode#1156's shape — several MERGED,
|
|
880
|
-
`issue-{N}-*` review-leg branches (cut from the
|
|
881
|
-
never diverged) alongside the one real, unmerged
|
|
882
|
-
|
|
883
|
-
the documented fallback behaviour for a caller with nothing dispatched
|
|
884
|
-
yet — but a caller that names the ACTUAL branch in play must get an
|
|
879
|
+
"""#3436/#3442: reproduces vimcode#1156's shape — several MERGED,
|
|
880
|
+
zero-commit `issue-{N}-*` review-leg branches (cut from the
|
|
881
|
+
default-branch tip, never diverged) alongside the one real, unmerged
|
|
882
|
+
work branch. A caller that names the ACTUAL branch in play must get an
|
|
885
883
|
answer scoped to just that branch, not "did anything for this issue
|
|
886
|
-
ever merge"
|
|
884
|
+
ever merge" — and #3442: the issue-scoped fallback (no ``branch=``)
|
|
885
|
+
must ALSO see past a review-leg sibling now, since it's the fallback a
|
|
886
|
+
plain `coord assign` (nothing dispatched yet, no branch to scope to)
|
|
887
|
+
actually hits."""
|
|
887
888
|
import coord.claim as claim_mod
|
|
888
889
|
|
|
889
890
|
monkeypatch.setattr(
|
|
@@ -894,19 +895,107 @@ def test_any_matching_branch_merged_scoped_branch_ignores_merged_siblings(
|
|
|
894
895
|
{"issue-1156-review-fix-1": 0, "issue-1156-real-work": 5},
|
|
895
896
|
),
|
|
896
897
|
)
|
|
897
|
-
# No branch named: falls back to the issue-scoped check, which
|
|
898
|
-
#
|
|
899
|
-
|
|
898
|
+
# No branch named: falls back to the issue-scoped check, which now
|
|
899
|
+
# excludes the review-leg sibling as not-evidence-of-anything (#3442)
|
|
900
|
+
# and finds the real work branch unmerged.
|
|
901
|
+
assert claim_mod.any_matching_branch_merged("acme/api", 1156) is False
|
|
900
902
|
# Scoped to the real, unmerged work branch: must NOT report merged.
|
|
901
903
|
assert claim_mod.any_matching_branch_merged(
|
|
902
904
|
"acme/api", 1156, branch="issue-1156-real-work"
|
|
903
905
|
) is False
|
|
904
|
-
# Scoped to the merged sibling itself: correctly reports merged
|
|
906
|
+
# Scoped to the merged sibling itself: correctly reports merged (an
|
|
907
|
+
# explicit ask about that exact branch is unaffected by the leg-branch
|
|
908
|
+
# exclusion the issue-scoped fallback applies).
|
|
905
909
|
assert claim_mod.any_matching_branch_merged(
|
|
906
910
|
"acme/api", 1156, branch="issue-1156-review-fix-1"
|
|
907
911
|
) is True
|
|
908
912
|
|
|
909
913
|
|
|
914
|
+
def test_any_matching_branch_merged_issue_scoped_ignores_review_and_smoke_legs(
|
|
915
|
+
monkeypatch,
|
|
916
|
+
) -> None:
|
|
917
|
+
"""#3442: vimcode#523/#526's exact shape — an `issue-{N}-review-*` leg
|
|
918
|
+
branch (and an `issue-{N}-smoke-*` leg branch) at `ahead_by == 0`,
|
|
919
|
+
alongside the real, unmerged work branch. `any_matching_branch_merged`
|
|
920
|
+
with no *branch* (the `coord assign`/dispatch-liveness fallback that
|
|
921
|
+
trips before any branch is known) must refuse to treat either leg as
|
|
922
|
+
evidence the issue's real work merged."""
|
|
923
|
+
import coord.claim as claim_mod
|
|
924
|
+
|
|
925
|
+
monkeypatch.setattr(
|
|
926
|
+
"coord.github_ops._gh",
|
|
927
|
+
_gh_stub_with_matching_refs(
|
|
928
|
+
[
|
|
929
|
+
"issue-523-review-track-a-phase-0b-wire-board-actio",
|
|
930
|
+
"issue-523-smoke-track-a-phase-0b-wire-board-action",
|
|
931
|
+
"issue-523-track-a-phase-0b-wire-board-actions-to-p",
|
|
932
|
+
],
|
|
933
|
+
"develop",
|
|
934
|
+
{
|
|
935
|
+
"issue-523-review-track-a-phase-0b-wire-board-actio": 0,
|
|
936
|
+
"issue-523-smoke-track-a-phase-0b-wire-board-action": 2,
|
|
937
|
+
"issue-523-track-a-phase-0b-wire-board-actions-to-p": 2,
|
|
938
|
+
},
|
|
939
|
+
),
|
|
940
|
+
)
|
|
941
|
+
assert claim_mod.any_matching_branch_merged("acme/vimcode", 523) is False
|
|
942
|
+
|
|
943
|
+
|
|
944
|
+
def test_any_matching_branch_merged_issue_scoped_ignores_gate_b_leg(
|
|
945
|
+
monkeypatch,
|
|
946
|
+
) -> None:
|
|
947
|
+
"""#3442 review follow-up: a milestone tracking issue with a completed
|
|
948
|
+
Gate B verdict (`coord.gate_b`'s dispatch is `type="review"`, doesn't
|
|
949
|
+
pin `target_branch`, and mints its own throwaway
|
|
950
|
+
`issue-{N}-gate-b-...` branch exactly like a `[review]`/`[smoke]`
|
|
951
|
+
leg) sitting at `ahead_by == 0` alongside the real, unmerged
|
|
952
|
+
milestone work branch. `any_matching_branch_merged` with no *branch*
|
|
953
|
+
(the `coord assign`/dispatch-liveness fallback that trips before any
|
|
954
|
+
branch is known — the exact path a fresh dispatch on a tracking issue
|
|
955
|
+
hits) must not treat the gate-b leg as evidence the real work
|
|
956
|
+
merged."""
|
|
957
|
+
import coord.claim as claim_mod
|
|
958
|
+
|
|
959
|
+
monkeypatch.setattr(
|
|
960
|
+
"coord.github_ops._gh",
|
|
961
|
+
_gh_stub_with_matching_refs(
|
|
962
|
+
[
|
|
963
|
+
"issue-900-gate-b-ms-900-milestone-verdict",
|
|
964
|
+
"issue-900-track-a-phase-1-milestone-work",
|
|
965
|
+
],
|
|
966
|
+
"develop",
|
|
967
|
+
{
|
|
968
|
+
"issue-900-gate-b-ms-900-milestone-verdict": 0,
|
|
969
|
+
"issue-900-track-a-phase-1-milestone-work": 3,
|
|
970
|
+
},
|
|
971
|
+
),
|
|
972
|
+
)
|
|
973
|
+
assert claim_mod.any_matching_branch_merged("acme/vimcode", 900) is False
|
|
974
|
+
|
|
975
|
+
|
|
976
|
+
def test_is_observer_leg_branch_matches_review_scoped_review_smoke_and_gate_b() -> None:
|
|
977
|
+
"""#3442: the exact prefixes review/smoke/gate-b legs mint, and nothing
|
|
978
|
+
else — a bare `issue-N-review` (no trailing content) and the slugified
|
|
979
|
+
`issue-N-review-...`/`issue-N-scoped-review-...`/`issue-N-smoke-...`/
|
|
980
|
+
`issue-N-gate-b-...` shapes all match; an unrelated branch, or one that
|
|
981
|
+
merely CONTAINS "review" past the issue-number prefix, must not."""
|
|
982
|
+
import coord.claim as claim_mod
|
|
983
|
+
|
|
984
|
+
assert claim_mod._is_observer_leg_branch("issue-9-review", 9) is True
|
|
985
|
+
assert claim_mod._is_observer_leg_branch("issue-9-review-fix-1", 9) is True
|
|
986
|
+
assert claim_mod._is_observer_leg_branch(
|
|
987
|
+
"issue-9-scoped-review-sealed-path", 9
|
|
988
|
+
) is True
|
|
989
|
+
assert claim_mod._is_observer_leg_branch("issue-9-smoke-track-a", 9) is True
|
|
990
|
+
assert claim_mod._is_observer_leg_branch(
|
|
991
|
+
"issue-9-gate-b-ms-9-milestone-verdict", 9
|
|
992
|
+
) is True
|
|
993
|
+
assert claim_mod._is_observer_leg_branch("issue-9-real-work", 9) is False
|
|
994
|
+
assert claim_mod._is_observer_leg_branch(
|
|
995
|
+
"issue-9-reviewer-onboarding", 9
|
|
996
|
+
) is False
|
|
997
|
+
|
|
998
|
+
|
|
910
999
|
# ── #1553: has_active_work_followup keys on the EFFECTIVE issue ─────────────
|
|
911
1000
|
|
|
912
1001
|
|
|
@@ -2887,9 +2887,12 @@ class TestGateBlockedRowEntersQueueBlocked:
|
|
|
2887
2887
|
assert mq.load_queue() == []
|
|
2888
2888
|
|
|
2889
2889
|
def fake_get_branch_sha(repo, branch):
|
|
2890
|
-
# The base moved since the verdict was recorded
|
|
2891
|
-
# itself
|
|
2892
|
-
|
|
2890
|
+
# The base moved since the verdict was recorded, AND the branch
|
|
2891
|
+
# itself was rebased (its head moved too) — #3443: a base move
|
|
2892
|
+
# alone, with the branch head confirmed unchanged, no longer
|
|
2893
|
+
# stales the verdict, so this needs both to still exercise a
|
|
2894
|
+
# genuine STALE for the #1926 fallback-agreement check below.
|
|
2895
|
+
return "newbase111" if branch == "main" else "branchsha111"
|
|
2893
2896
|
|
|
2894
2897
|
with patch(
|
|
2895
2898
|
"coord.github_ops.get_branch_sha", side_effect=fake_get_branch_sha
|
{code_coordinator-0.5.516 → code_coordinator-0.5.518}/tests/test_coord_test_runner_toolchain.py
RENAMED
|
@@ -279,7 +279,7 @@ def test_a_genuinely_failing_fallback_suite_is_still_a_failure(
|
|
|
279
279
|
|
|
280
280
|
|
|
281
281
|
def test_coordinator_route_never_invokes_cargo_or_a_quadraui_sibling(
|
|
282
|
-
tui_repo: Path, tmp_path: Path
|
|
282
|
+
tui_repo: Path, tmp_path: Path
|
|
283
283
|
) -> None:
|
|
284
284
|
"""#2899 (keeping #2804's guard alive after the arm it guarded left).
|
|
285
285
|
|
|
@@ -294,14 +294,17 @@ def test_coordinator_route_never_invokes_cargo_or_a_quadraui_sibling(
|
|
|
294
294
|
runner does not call one it *could* have found is stronger than proving it
|
|
295
295
|
fails without one.
|
|
296
296
|
"""
|
|
297
|
+
# A private mirror with any real `cargo` omitted: on a host with a system
|
|
298
|
+
# cargo (dell64's /usr/bin/cargo -> rustup) the shared `full_bin` already
|
|
299
|
+
# holds a symlink named `cargo`, and write_text() would follow it into the
|
|
300
|
+
# real binary — PermissionError when root owns it, a clobbered toolchain
|
|
301
|
+
# when the user does.
|
|
302
|
+
bin_dir = _mirror_bin_dir(tmp_path / "bin", omit_prefixes=("cargo",))
|
|
297
303
|
marker = tmp_path / "cargo-was-invoked"
|
|
298
|
-
cargo =
|
|
304
|
+
cargo = bin_dir / "cargo"
|
|
299
305
|
cargo.write_text(f"#!/bin/sh\ntouch {marker}\nexit 0\n")
|
|
300
306
|
cargo.chmod(0o755)
|
|
301
|
-
|
|
302
|
-
result = _run(tui_repo, tmp_path, full_bin, "--repo", "claude-coordinator")
|
|
303
|
-
finally:
|
|
304
|
-
cargo.unlink()
|
|
307
|
+
result = _run(tui_repo, tmp_path, bin_dir, "--repo", "claude-coordinator")
|
|
305
308
|
|
|
306
309
|
out = result.stdout + result.stderr
|
|
307
310
|
assert result.returncode == 0, out
|
|
@@ -353,9 +353,15 @@ class TestDecision:
|
|
|
353
353
|
assert by_gate["test"].anchor is None # MISSING, not STALE
|
|
354
354
|
assert by_gate["merge"].reason == SMOKE_REQUIRED
|
|
355
355
|
|
|
356
|
-
def
|
|
357
|
-
#
|
|
358
|
-
|
|
356
|
+
def test_base_move_alone_does_not_stale_1479(self, config: Config) -> None:
|
|
357
|
+
"""#3443: the verdict was recorded against an old base SHA and the
|
|
358
|
+
base has since moved, but the branch's own head/patch-id are
|
|
359
|
+
CONFIRMED unchanged — no rebase happened, so the base move alone
|
|
360
|
+
must not stale a `passed` verdict (see
|
|
361
|
+
``test_stale_base_names_1479_and_shas_when_branch_also_moved``
|
|
362
|
+
below for the case where the branch DID move). Superseded
|
|
363
|
+
``test_stale_base_names_1479_and_shas``, which asserted the
|
|
364
|
+
opposite (the #3443 bug itself) before this fix."""
|
|
359
365
|
work = _work(
|
|
360
366
|
test_state="passed", test_reason="headless smoke",
|
|
361
367
|
test_head_sha="branchsha", test_base_sha="oldbase",
|
|
@@ -365,6 +371,36 @@ class TestDecision:
|
|
|
365
371
|
gh = FakeGh(branch_sha="branchsha", base_sha="newbase", patch_id="samepatch")
|
|
366
372
|
report = build_gate_report(board, config, "api", 42, gh_ops=gh)
|
|
367
373
|
|
|
374
|
+
by_gate = {d.gate: d for d in report.decisions}
|
|
375
|
+
test_decision = by_gate["test"]
|
|
376
|
+
assert test_decision.ok is True
|
|
377
|
+
assert by_gate["merge"].reason != SMOKE_REQUIRED
|
|
378
|
+
# gh_ops was actually consulted for both the branch and the base —
|
|
379
|
+
# the #3443 spare is a POSITIVE confirmation, not a skipped check.
|
|
380
|
+
assert ("acme/api", "issue-42-foo") in gh.sha_calls
|
|
381
|
+
assert ("acme/api", "main") in gh.sha_calls
|
|
382
|
+
|
|
383
|
+
def test_stale_base_names_1479_and_shas_when_branch_also_moved(
|
|
384
|
+
self, config: Config,
|
|
385
|
+
) -> None:
|
|
386
|
+
# #1479: the verdict was recorded against an old base SHA; the base
|
|
387
|
+
# has since moved, AND the branch itself was rebased (its head moved
|
|
388
|
+
# too) — #3443 spares a base move alone, so this needs both to still
|
|
389
|
+
# exercise the stale-verdict report.
|
|
390
|
+
work = _work(
|
|
391
|
+
test_state="passed", test_reason="headless smoke",
|
|
392
|
+
test_head_sha="branchsha-old", test_base_sha="oldbase",
|
|
393
|
+
)
|
|
394
|
+
# review_head_sha matches the CURRENT (post-rebase) branch head, so
|
|
395
|
+
# the review gate stays fresh and only the test/smoke gate is under
|
|
396
|
+
# test here.
|
|
397
|
+
review = _review("w1", verdict="approve", review_head_sha="branchsha-new")
|
|
398
|
+
board = Board(active=[], completed=[work, review])
|
|
399
|
+
gh = FakeGh(
|
|
400
|
+
branch_sha="branchsha-new", base_sha="newbase", patch_id="samepatch",
|
|
401
|
+
)
|
|
402
|
+
report = build_gate_report(board, config, "api", 42, gh_ops=gh)
|
|
403
|
+
|
|
368
404
|
by_gate = {d.gate: d for d in report.decisions}
|
|
369
405
|
test_decision = by_gate["test"]
|
|
370
406
|
assert test_decision.ok is False
|
|
@@ -813,12 +849,18 @@ class TestIsInteractive:
|
|
|
813
849
|
|
|
814
850
|
class TestFormatting:
|
|
815
851
|
def test_format_includes_stale_wording(self, config: Config) -> None:
|
|
852
|
+
"""#3443: the branch must also have moved (a rebase) — a base move
|
|
853
|
+
alone, with the branch head confirmed unchanged, no longer stales
|
|
854
|
+
the verdict at all, so this has nothing to render as STALE."""
|
|
816
855
|
work = _work(
|
|
817
|
-
test_state="passed",
|
|
856
|
+
test_state="passed",
|
|
857
|
+
test_head_sha="branchsha-old", test_base_sha="oldbase",
|
|
818
858
|
)
|
|
819
|
-
review = _review("w1", verdict="approve", review_head_sha="branchsha")
|
|
859
|
+
review = _review("w1", verdict="approve", review_head_sha="branchsha-new")
|
|
820
860
|
board = Board(active=[], completed=[work, review])
|
|
821
|
-
gh = FakeGh(
|
|
861
|
+
gh = FakeGh(
|
|
862
|
+
branch_sha="branchsha-new", base_sha="newbase", patch_id="samepatch",
|
|
863
|
+
)
|
|
822
864
|
report = build_gate_report(board, config, "api", 42, gh_ops=gh)
|
|
823
865
|
|
|
824
866
|
text = format_gate_report(report)
|