code-coordinator 0.5.526__tar.gz → 0.5.527__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.526 → code_coordinator-0.5.527}/PKG-INFO +1 -1
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/PKG-INFO +1 -1
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/scm_version.json +2 -2
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/board_schema.py +7 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/drive_queue.py +24 -10
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/db.py +33 -1
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/drive_queue.py +51 -15
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/state.py +57 -4
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_drive_queue.py +64 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_db.py +1 -1
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_drive_queue.py +46 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_state.py +61 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.claude/commands/board.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.claude/commands/complete-session.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.claude/commands/coordinator.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.githooks/_lib.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.githooks/post-checkout +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.githooks/post-commit +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.githooks/post-merge +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.github/coord-ci-acceptance.yml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.github/workflows/auto-release.yml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.github/workflows/publish.yml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.github/workflows/test.yml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/.gitignore +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/CLAUDE.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/GOAL.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/LICENSE +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/MANIFEST.in +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/README.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/SOURCES.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/dependency_links.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/entry_points.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/requires.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/scm_file_list.json +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/top_level.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/__init__.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/_board_mapping.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/acceptance.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/acceptance_drivers.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/agent.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/agent_app.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/agent_update.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/agents/opencode/.gitignore +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/agents/opencode/agents/work.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/agents/opencode/routing.jsonc +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/approved_work.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/audit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/auto_loop.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/backup.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/block_log.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/board_service.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/board_wire.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/brain.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/branch_model.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/bug_intake.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/cargo_cache.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/ci_fix.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/ci_github.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/ci_gitlab.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/ci_store.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/claim.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/claude_setup_token.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/cli.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/client.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/codegen.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/__init__.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/_common.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/acceptance.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/agent_ops.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/audit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/backup.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/chat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/ci.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/codegen.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/dispatch.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/dispatch_workers.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/dr.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/drive.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/gate_a.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/gates.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/issues.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/lifecycle.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/machine.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/merge.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/milestone.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/plan_followup.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/plans.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/portal.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/pr.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/release.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/repo.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/report.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/review.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/scorecard.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/sessions.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/setup.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/status.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/store_migrate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/terminal.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/test_gate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/commands/tui.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/comments.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/config.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/config_reload.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/confirm_test.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/conflict_fix.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/dao.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/dashboard/__init__.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/dashboard/fixture.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/dashboard/index.html +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/dashboard/server.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/dashboard/terminal.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/dead_end.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/decomposition_chat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/README.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-agent.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-backup.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-backup.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-db-backup.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-db-backup.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-db-backup.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-dr-verify.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-dr-verify.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-drive-queue.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-drive-queue.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-failure-notify.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-fleet-watchdog.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-fleet-watchdog.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-notify.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-notify.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-release-propagate.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-release-propagate.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-release-window.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-release-window.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-serve.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-web-dist-build.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-web-dist-build.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy/coord-web.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy_manifest.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deploy_units.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deprecation_telemetry.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/deps.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/diagnose.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/dispatch.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/dispatch_liveness.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/dist_name.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/dr_promote.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/dr_verify.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/drive.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/drive_sessions_snapshot.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/drive_state.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/events.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/failure_class.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/failure_classifier.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/filelock.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/fleet_config_health.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/forge_availability.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/freshness.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/gate_a.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/gate_b.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/gate_snapshot.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/gates.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/gen_board_fixture.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/github_ops.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/github_throttle.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/goal.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/graph_health.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/__init__.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/aggregate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/__init__.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/_ci_pin.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/agent_install.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/cargo_targets.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/claude_binary.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/config_drift.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/coord_tui_ci_pin.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/coord_web_ci_pin.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/deploy_lane_facts.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/disk.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/fleet_board.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/fleet_deploy_lanes.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/fleet_phantom.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/fleet_unit_drift.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/graph.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/graphify_cli.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/index_lock.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/issues_sync_staleness.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/local_machine_identity.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/plan_usage.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/pr_churn.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/release_cordon.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/repo_state.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/spawned_coord.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/stalled_pipeline.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/timer_active.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/toolchain.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/unit_drift.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/unit_enablement.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/wedged_drive_queue.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/checks/worktrees.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/cli.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/context.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/fleet_snapshot.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/models.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/pypi.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/registry.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/render.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/health/units.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/hooks.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/housekeeping.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/interactive.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/invariant_alarms.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/issue_store.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/issues_sync_status.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/liveness_auditor.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/machine_fault.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/machine_metrics.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/machine_onboard.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/machine_pause.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/machine_stats.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/merge_queue.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/milestone_chat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/milestone_dispatch.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/milestone_gate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/milestone_order.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/mock_author.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/models.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/network.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/new_issue_chat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/notifier/__init__.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/notifier/baseline.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/notifier/cli.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/notifier/collect.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/notifier/digest.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/notifier/models.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/notifier/predicate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/notifier/service.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/notifier/store.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/notifier/transport.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/notify.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/openapi.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/overlap_fence.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/overlap_predict.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/parentage.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/parentage_github.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/pipeline.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/plan_parser.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/plans.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/platform_paths.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/portal_bridge.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/portal_store.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/portal_sync.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/pr_body_lint.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/prereqs.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/progress.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/providers/__init__.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/providers/base.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/providers/claude.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/providers/claude_pty.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/providers/opencode.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/queue_diagnose.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/reconcile.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/reconcile_tick.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/refine_chat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/release_cordon.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/release_propagate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/release_verify.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/release_window.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/repo_dormancy.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/repo_edit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/repo_onboard.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/reports.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/rest_schema.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/restart_cmd.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/revalidate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/review.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/scorecard.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/self_health.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/serve_app.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/skills/coord-dispatch-verbs/SKILL.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/skills/drive-queue-preflight/SKILL.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/skills/fleet-restart-safety/SKILL.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/skills/merge-stuck-triage/SKILL.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/skills/pipeline-limbo-triage/SKILL.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/skills/portal-followup/SKILL.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/skills/release-now/SKILL.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/skills/review-verdict-recovery/SKILL.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/skills/tui-quadraui-workflow/SKILL.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/skills/update-issue/SKILL.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/smoke.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/spend_ceiling.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/split_work.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/sql.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/stage_projection.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/store_migrate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/store_parity.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/templates/deploy-cloudflare.node.yml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/test_author.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/test_chat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/test_orchestrator.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/test_report.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/tui_release.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/uat_checks.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/usage.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/usage_limits.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/usage_rollup.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coord/worker_events.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/coordinator.example.yml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-agent.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-backup.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-backup.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-db-backup.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-db-backup.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-db-backup.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-dr-verify.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-dr-verify.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-drive-queue.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-drive-queue.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-failure-notify.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-failure-notify.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-fleet-watchdog.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-fleet-watchdog.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-notify.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-notify.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-release-propagate.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-release-propagate.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-release-window.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-release-window.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-serve.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-web-dist-build.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-web-dist-build.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-web-dist-build.timer +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-web-rollback.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/coord-web.service +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/deploy/node-shim.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/ADR_COORD_TUI_CI.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/ADR_COORD_WEB_ACCEPTANCE_SUITE.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/ADR_COORD_WEB_CI.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/ADR_COORD_WEB_DIST.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/ADR_PY_RUST_MIRRORS.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/AGENT_OPERATIONS.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/ARCHITECTURE.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/ARCH_SECURITY_GATES.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/COCKPIT.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/CONTROL_CENTER.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/COST_DISCIPLINE.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/CROSS_PLATFORM.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/CUSTOMER_FACING_APPS.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/CUSTOMER_PORTAL.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/DATA_STORE_SELECTION.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/DISASTER_RECOVERY.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/DRIVE_QUEUE.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/EPHEMERAL_WORKERS.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/FORGE_MIGRATION.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/GRAPHIFY_SETUP.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/ISSUE_GUIDANCE.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/MAC_MINI.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/MERGE_AUTO_DRAIN_TRUST_BAR.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/NOTIFIER.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/OPENCODE_VERIFICATION.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/OPERATING_GOTCHAS.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/OPERATOR_GUIDES.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/ORACLE_LOOP.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/PHONE_WEBAPP.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/PIPELINE_V2.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/PLATFORM_EVOLUTION.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/SECOND_BACKEND.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/STORE_SERVICE.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/TEST_FIRST_BUG_LANE.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/WEB_CONTROL_CENTER.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/WSL_WINDOWS_WORKER.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/mocks/web/README.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/mocks/web/_tokens.css +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/mocks/web/issue-detail.html +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/mocks/web/pipeline-narrow.html +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/docs/mocks/web/pipeline-wide.html +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/graphify-out/.gitignore +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/install-agent.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/pyproject.toml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/audit_review_verdict_overrides.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/bootstrap-shared.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/build-worker-image.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/coordinator-machine.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/dr-down.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/dr-up.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/epic-down.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/epic-up.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/preflight.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/provision-server.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/provision-worker.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/scrub-and-generalize.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/tailnet-acl.hujson +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/throwaway-vm.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/azure-workers/verify-github-token.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/check_gh_argv_containment.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/codegen.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/coord-test-runner.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/coord-tui-scaffold/.github/coord-ci-acceptance.yml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/coord-tui-scaffold/.github/workflows/cargo-test.yml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/coord-tui-scaffold/.github/workflows/codegen-drift.yml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/coord-tui-scaffold/CLAUDE.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/coord-venv-rollback.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/drive-batch.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/extract-coord-tui.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/fleet_watchdog.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/gen_board_fixture.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/gen_mock_index.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/lib/provision-core.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/next_release_tag.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/provision-machine.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/run_tests_in_populated_home.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/run_tests_without_gh.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/setup-macmini.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/smoke_437_interactive.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/verify-provision-noble.sh +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/verify_878_review_capture.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/verify_release_published.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/scripts/verify_release_wheel.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/setup.cfg +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/SMOKE_SET.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/__init__.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/acceptance/ms-37/conftest.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/acceptance/ms-37/contract.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/acceptance/ms-37/manifest.yml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/acceptance/ms-37/test_usage_cli_1115.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/acceptance/ms-37/test_usage_core_1118.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/acceptance/ms-51/contract.md +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/acceptance/ms-51/home-active-extended.spec.ts +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/acceptance/ms-51/home-active.spec.ts +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/acceptance/ms-51/manifest.yml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/acceptance/ms-51/mocks/home-active.html +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/acceptance/ms-51/tsconfig.json +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/acceptance/ms-example/mocks/home-active.html +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/backends.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/conftest.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/board-pipeline-basic.json +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/board-pipeline-terminal-gates.json +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/opencode_run_failure_sample.jsonl +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/opencode_run_length_sample.jsonl +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/opencode_run_sample.jsonl +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/playwright/all_pass.json +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/playwright/global_setup_crash.json +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/playwright/mixed_fail.json +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/playwright/retry_then_pass.json +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/playwright/retry_then_pass.junit.xml +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/playwright/skip.json +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/playwright/truncated.json +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/test_report/cargo_compile_error.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/test_report/cargo_multi_target_failures.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/test_report/cargo_no_parseable_failures.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/test_report/pytest_collection_error.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/test_report/pytest_error_string_in_body.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/test_report/pytest_internal_error.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/test_report/pytest_mixed_failures.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/fixtures/test_report/pytest_no_parseable_failures.txt +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_acceptance.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_acceptance_drivers.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_api_error.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_app.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_branch_base.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_branch_capture.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_config_free_1712.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_deploy_units_endpoint.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_dirty_worktree.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_drive_queue_reconcile_2373.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_graph_self_heal.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_health_h3.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_idle_restart.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_push_failure.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_reap.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_repos_and_pull.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_restart_services_endpoint.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_skills_self_heal.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_startup_diagnostics.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_update.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_update_bluegreen.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_usage_limit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_agent_zero_commit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_ambient_home_isolation.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_approve_capability_reroute_3241.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_approve_dependency_busy_2804.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_approve_reject_plan.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_approve_usage_gate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_approved_work_2532.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_approved_work_2996.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_assignment_already_recorded_daemon.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_audit_log.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_audit_outcome.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_audit_query.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_auto_loop.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_auto_release_publish_2035.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_backend_selection.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_backup.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_base_checkout_restore.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_block_log.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_board_cap_762.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_board_fixture.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_board_read_path.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_board_schema.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_board_service.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_board_state.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_board_wire.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_brain.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_branch_model.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_bug_intake.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_build_worker_image_env_update.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cargo_cache.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_check_gh_argv_containment.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_ci_acceptance_gate_1950.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_ci_fix.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_ci_github.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_ci_gitlab.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_ci_parity_2091.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_ci_store.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_claim.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_claude_md_budget.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_claude_setup_token.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_acceptance.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_assign.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_assign_interactive_oracle_gate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_assign_interactive_remote.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_assign_provider.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_assign_repo_drift_2219.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_audit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_chat_continue.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_ci.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_codegen.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_decide.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_diagnose_capability_rules.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_diagnose_config_provenance.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_diagnose_forge_availability.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_diagnose_graph.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_diagnose_self.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_diagnose_test_coverage.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_doctor.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_doctor_config_free_1801.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_doctor_config_mismatch_1712.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_doctor_store_backend_3084.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_drive.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_escalate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_fix_headless_review.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_gate_a.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_install_drift.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_install_skills.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_issue_comment.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_issue_create_label.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_issue_reopen.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_issue_view_list.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_issues.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_merge.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_milestone_assign.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_milestone_capture.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_milestone_chat_add_child.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_milestone_dispatch.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_milestone_gate_b.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_milestone_gate_c.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_milestone_order.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_milestone_remove_and_issue_close.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_milestone_ship.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_network.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_new_issue_chat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_plans.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_portal.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_pr.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_pull_artifact.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_queue.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_reattach_sessions.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_refine_board.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_release_preflight.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_release_propagate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_release_window.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_repo_2220.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_review_test_author_tracking_epic_2639.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_scorecard.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_serve_store_backend_3084.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_set_review_findings.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_status_advisory_terminal.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_status_contested_tag.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_status_invariant_alarms.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_status_machine_fault.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_status_merge_queue.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_status_provider.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_status_retried_3340.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_status_review_finalizing.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_status_supervisor_3366.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_status_test_failed_tag.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_status_usage_limit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_sync_comments_873.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_test_plan.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_track.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_tui_update.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cli_wait.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_client.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_client_base_install.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_client_config_cache_atomic_3052.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_client_resource_migration_1946.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_commands_common.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_comments.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_completion_summary.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_config.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_config_acceptance.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_config_audit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_config_drift_check.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_config_effective.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_config_pricing.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_config_snapshot_noncanonical_2208.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_config_usage_gate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_confirm_test.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_conflict_fix.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_conflict_fix_semantic.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_coord_log_daemon_fallback_2547.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_coord_test.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_coord_test_runner_acceptance_toolchain_2936.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_coord_test_runner_baseline.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_coord_test_runner_populated_home.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_coord_test_runner_routing.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_coord_test_runner_toolchain.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_coord_uat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_coord_web_sse_restart_live.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_coordinator_machine.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_cross_platform_imports.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dao.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dashboard.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dashboard_api.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dashboard_fixture.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dashboard_server.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dashboard_terminal.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dashboard_terminal_live.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dead_end.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_decomposition_chat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_deploy_coord_db_backup.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_deploy_coord_web_dist.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_deploy_coord_web_rollback.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_deploy_db_backup_unit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_deploy_drive_queue_unit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_deploy_failure_notify_unit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_deploy_manifest.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_deploy_notify_unit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_deploy_units_lane.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_deploy_web_unit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_deprecation_telemetry.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_deps.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_diagnose.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dispatch.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dispatch_liveness.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dispatch_target_validation.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dispatch_workers.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dist_name.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_done_housekeeping.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dr_azure_scripts.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dr_promote.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_dr_verify.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_drive.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_drive_machine_fault.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_drive_queue_blocked_rendering.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_drive_queue_launch_argv.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_drive_queue_max_parallel_config.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_drive_queue_max_parallel_per_repo_config.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_drive_queue_roll_pending.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_drive_queue_self_cordon_escalation.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_drive_sessions_snapshot.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_drive_state.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_drive_tmux.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_epic_up_capability_detection.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_epic_up_down_symlinked_config_1887.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_epic_up_image_provenance.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_errors.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_events.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_failure_class.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_failure_classifier.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_filelock.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_finalize_interactive_exit_test_verdict.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_fix_escalation_classifier.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_fix_of_force_override.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_fleet_config_health.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_fleet_health_probes.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_fleet_health_snapshot.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_fleet_watchdog.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_forge_availability.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_freshness.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_gate_a.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_gate_b.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_gate_snapshot_staleness.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_gates.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_gather_fleet_tmux_sessions.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_gen_mock_index.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_generated_rust_fixture.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_generated_rust_requests.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_generated_types_fixture.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_github_ops.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_github_throttle.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_goal.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_graph_health.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_graph_selfheal_absent_2237.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_handoff.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_checks.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_cli.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_cli_graph.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_config.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_context.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_coord_tui_ci_pin.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_coord_web_ci_pin.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_deploy_lane_facts.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_fix.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_incident_regression.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_issues_sync_staleness.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_pr_churn.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_pypi.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_registry.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_release_cordon_probe.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_timer_active.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_toolchain.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_unit_drift.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_unit_enablement.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_health_wedged_drive_queue.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_hooks.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_housekeeping.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_human_attended_437.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_init.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_install_agent_venv_2911.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_integration.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_interactive.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_interactive_briefing_echo.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_interactive_pane_log_2541.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_interactive_prefill_state.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_interactive_session_relaunch.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_interactive_test_verdict_backstop.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_interactive_token_attribution.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_interactive_worktree.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_invariant_alarms.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_issue_store_seam.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_issues_sync_status.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_liveness_auditor.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_liveness_notify.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_lock_contention_ratchet.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_machine_fault.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_machine_metrics.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_machine_onboard.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_machine_pause.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_machine_stats.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_merge_queue.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_merge_verify.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_milestone_chat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_milestone_dispatch.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_milestone_gate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_milestone_order.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_milestone_seam.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_mock_author.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_model_tiering.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_models.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_models_config_labels.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_needs_attention.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_network.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_new_issue_chat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_next_release_tag.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_node_shim.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_notifier_baseline.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_notifier_cli.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_notifier_collect.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_notifier_config.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_notifier_drive_seam.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_notifier_isolation.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_notifier_predicate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_notifier_quiet_hours.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_notifier_service.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_notify.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_notify_drain.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_openapi.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_operational_defaults.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_overlap_fence.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_overlap_predict.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_packaged_deploy_units.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_parentage.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_paste_landed.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_phantom_heal_venv_independence_2570.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_pipeline.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_plan_followup_approve_plan_command.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_plan_followup_pr_command.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_plan_followup_review_command.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_plan_only.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_plan_parser.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_platform_paths.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_portal_bridge.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_portal_config.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_portal_store.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_portal_sync.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_pr_body_lint.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_prereqs.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_production_db_guard.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_progress.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_provider_seam.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_providers.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_providers_config_labels.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_providers_pty.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_provision_core.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_provision_machine.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_py_rust_mirror_inventory.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_quiet_hours.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_quiet_hours_store_2146.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_reap_merged_sessions.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_reap_stale_interactive_tick.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_reconcile.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_reconcile_branch.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_reconcile_completions.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_reconcile_late_agent_reports_2547.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_reconcile_merges.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_reconcile_no_agent_record.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_reconcile_tick.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_reconcile_usage_limit_done.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_refine_chat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_release_cordon_2101.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_release_cordon_daemon_leads_2176.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_release_cordon_deadlock_2240.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_release_cordon_drain_stall_3336.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_release_cordon_stuck_2490.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_release_propagate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_release_propagate_threshold.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_release_roll_between_legs_2854.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_release_roll_window_handoff.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_release_unified_1242.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_release_verify.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_release_window.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_remote_auto_prune.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_remote_interactive_reaper.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_repo_add.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_repo_dormancy.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_repo_edit_2220.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_repo_graph_fleet_2237.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_repo_max_parallel_3423.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_repo_onboard_2220.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_report_result_push.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_reports.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_restart_cmd.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_retry.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_retry_advisory_1606.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_retry_escalation_classify_3360.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_retry_type_1636.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_revalidate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_review.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_review_end_review_without_verdict.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_review_parse_failure_diagnostic.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_review_reaffirm.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_review_state.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_review_verdict_backstop.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_review_verdict_override_audit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_review_verdict_relay.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_review_zero_commits.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_scoped_review_wiring.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_scorecard.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_self_health.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_serve.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_serve_app.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_serve_app_board_trim.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_serve_rest_routes.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_session.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_slice_issue_attribution.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_smoke.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_smoke_fanout_manifest_3333.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_smoke_live_checkout_restore.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_smoke_workflow.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_spend_ceiling.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_spend_ceiling_coordinator.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_split.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_split_work.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_sql_dialect.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_sqlite_connect_ratchet.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_stage_projection.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_stale_busy_reviewer_697.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_stalled_pipeline.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_state_review_findings_daemon.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_status_fleet_footer.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_stop_1567.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_store_contract.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_store_migrate.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_stuck.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_stuck_test_state_watchdog_2803.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_terminal_command.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_test_author.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_test_chat.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_test_orchestrator.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_test_report.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_test_verdict_parsing.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_test_verdict_transcript_floor.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_text_io_encoding_audit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_thin_client_board_audit.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_thin_client_config_load_1080.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_thin_client_daemon_routing_906.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_throwaway_vm.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_tmux_host.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_tmux_session.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_transcript_floor.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_uat_checks.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_usage.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_usage_limits.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_usage_rollup.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_venv_live_install_2121.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_version_single_source.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_watch.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_windows_job_is_a_real_gate_2000.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_worker_env_venv_isolation.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_worker_events.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_worker_image_pin_sync.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_worker_safety.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_worker_test_scoping.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_worktree.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_worktree_rmtree_chokepoint.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/test_write_parity.py +0 -0
- {code_coordinator-0.5.526 → code_coordinator-0.5.527}/tests/write_parity.py +0 -0
|
@@ -313,6 +313,13 @@ class BoardDriveQueueEntry:
|
|
|
313
313
|
apply_verdict: str
|
|
314
314
|
apply_verdict_reason: str
|
|
315
315
|
apply_verdict_at: float | None = None
|
|
316
|
+
# #3463: the all-time WORK_LIKE leg count this row saw when
|
|
317
|
+
# `enqueue_drive_queue` last (re-)declared it — see
|
|
318
|
+
# `coord.drive_queue.QueueEntry.legs_at_enqueue` for what it feeds.
|
|
319
|
+
# Default 0 — both for a row predating this column and for a thin client
|
|
320
|
+
# talking to a daemon that predates it — reproduces the pre-#3463
|
|
321
|
+
# `work_leg_count - 1` fix-round formula exactly.
|
|
322
|
+
legs_at_enqueue: int = 0
|
|
316
323
|
|
|
317
324
|
|
|
318
325
|
# ── #3428 (#3408 item 3): concurrency ceilings + provenance + occupancy ──────
|
|
@@ -106,7 +106,6 @@ from coord.drive_queue import (
|
|
|
106
106
|
resolve_max_parallel,
|
|
107
107
|
resolve_max_parallel_per_repo,
|
|
108
108
|
resolve_repo_ceilings,
|
|
109
|
-
total_fix_round_budget,
|
|
110
109
|
unreachable_wait_alert,
|
|
111
110
|
validate_apply_gate,
|
|
112
111
|
validate_enqueue,
|
|
@@ -1637,20 +1636,35 @@ def drive_queue_list(repo: str | None, output_json: bool, config_path: Path) ->
|
|
|
1637
1636
|
bits.append(f"attempts={entry.attempts}")
|
|
1638
1637
|
if entry.deferrals:
|
|
1639
1638
|
bits.append(f"deferrals={entry.deferrals}")
|
|
1640
|
-
# #2972: the fix-round ceiling's OWN count
|
|
1641
|
-
#
|
|
1642
|
-
#
|
|
1643
|
-
#
|
|
1644
|
-
#
|
|
1639
|
+
# #2972/#3463: the fix-round ceiling's OWN count, rendered with the
|
|
1640
|
+
# SAME meaning `coord drive`'s own `fix round N/M` lines use
|
|
1641
|
+
# (`coord/drive.py`) — fix rounds SPENT against `max_fix_rounds`, not
|
|
1642
|
+
# "every work-like leg including the initial one" against "budget +
|
|
1643
|
+
# 1". `lifetime_legs` is every WORK_LIKE leg `leg_counts()` has ever
|
|
1644
|
+
# seen for this issue, all-time, across every predecessor row; #3463
|
|
1645
|
+
# narrows that to `row_legs` — legs run since THIS row was last
|
|
1646
|
+
# (re-)declared by `enqueue_drive_queue` (`entry.legs_at_enqueue`),
|
|
1647
|
+
# the SAME baseline `remaining_fix_rounds` subtracts. Only shown once
|
|
1648
|
+
# this row has itself dispatched at least one leg — a `waiting`
|
|
1649
|
+
# entry that has never launched (or a freshly re-added row that
|
|
1650
|
+
# hasn't relaunched yet) has nothing to report, same as `attempts`/
|
|
1645
1651
|
# `deferrals` above being suppressed at 0.
|
|
1646
|
-
|
|
1652
|
+
lifetime_legs = sum(
|
|
1647
1653
|
count
|
|
1648
1654
|
for kind, count in all_leg_counts.get(entry.key, {}).items()
|
|
1649
1655
|
if kind in WORK_LIKE
|
|
1650
1656
|
)
|
|
1651
|
-
|
|
1652
|
-
|
|
1653
|
-
|
|
1657
|
+
row_legs = max(lifetime_legs - entry.legs_at_enqueue, 0)
|
|
1658
|
+
if row_legs:
|
|
1659
|
+
effective_max = effective_max_fix_rounds(entry, fix_round_config_default)
|
|
1660
|
+
fix_rounds_spent = max(row_legs - 1, 0)
|
|
1661
|
+
# #3463: an overrun (the #3454 leak: a row that dispatched past
|
|
1662
|
+
# its own ceiling before the fix landed) must stay VISIBLE as an
|
|
1663
|
+
# overrun, not silently clamp back down to a reassuring `N/N` —
|
|
1664
|
+
# a gate that can never show its own failure state is not a
|
|
1665
|
+
# gate (epic #2096).
|
|
1666
|
+
overrun = "!" if fix_rounds_spent > effective_max else ""
|
|
1667
|
+
bits.append(f"fix_rounds={fix_rounds_spent}/{effective_max}{overrun}")
|
|
1654
1668
|
if entry.resumes:
|
|
1655
1669
|
# #2230: how many times the merge-gate sweep has auto-resumed
|
|
1656
1670
|
# THIS row from `blocked` — the churn signal the issue asks to be
|
|
@@ -1058,7 +1058,14 @@ def retry_on_locked(
|
|
|
1058
1058
|
# first place" (a quadraui-style merge into a non-default branch) — both
|
|
1059
1059
|
# read identically as `merged=True, issue_state="open"` otherwise. See
|
|
1060
1060
|
# `coord.drive_queue.IssueFacts.landed`'s docstring.
|
|
1061
|
-
|
|
1061
|
+
#
|
|
1062
|
+
# #3463: bumped 19 -> 20 for the new `drive_queue.legs_at_enqueue` column
|
|
1063
|
+
# appended to `_MIGRATE_ADD_COLUMNS` below — the all-time WORK_LIKE leg
|
|
1064
|
+
# count a row saw at `enqueue_drive_queue` time, so `remaining_fix_rounds`
|
|
1065
|
+
# can measure a row's own spend from ITS baseline rather than every
|
|
1066
|
+
# predecessor row's lifetime total. See `coord.drive_queue.QueueEntry.
|
|
1067
|
+
# legs_at_enqueue`.
|
|
1068
|
+
_DB_SCHEMA_VERSION = 20
|
|
1062
1069
|
|
|
1063
1070
|
|
|
1064
1071
|
def _read_schema_version(conn: sqlite3.Connection) -> int:
|
|
@@ -1592,6 +1599,24 @@ _SCHEMA_SQL = """
|
|
|
1592
1599
|
-- point-in-time observation" discipline #2133's reason_at
|
|
1593
1600
|
-- established for last_reason. NULL until a verdict is recorded.
|
|
1594
1601
|
apply_verdict_at REAL,
|
|
1602
|
+
-- #3463: the all-time WORK_LIKE leg count (coord.state.
|
|
1603
|
+
-- leg_counts()'s per-issue figure) THIS ROW saw at the moment it
|
|
1604
|
+
-- was declared by `enqueue_drive_queue` — the baseline
|
|
1605
|
+
-- `coord.drive_queue.remaining_fix_rounds` subtracts off before
|
|
1606
|
+
-- comparing against `max_fix_rounds`, so a row's own spend is
|
|
1607
|
+
-- "legs since THIS row was enqueued", not "legs this issue has
|
|
1608
|
+
-- ever had across every predecessor row". Re-stamped on every
|
|
1609
|
+
-- `enqueue_drive_queue` call (insert OR update-in-place), which
|
|
1610
|
+
-- is what makes an explicit `remove` + `add` actually hand out a
|
|
1611
|
+
-- fresh budget as the #3454 ceiling message promises, while
|
|
1612
|
+
-- leaving the #2972 "no fresh budget from a bare relaunch"
|
|
1613
|
+
-- guarantee untouched — a relaunch never calls
|
|
1614
|
+
-- `enqueue_drive_queue` at all, only `update_drive_queue_entry`.
|
|
1615
|
+
-- 0 (NOT NULL) for every row predating this column: subtracting
|
|
1616
|
+
-- 0 reproduces the pre-#3463 `work_leg_count - 1` formula
|
|
1617
|
+
-- exactly, so an existing row's already-computed remaining
|
|
1618
|
+
-- budget does not change under this migration.
|
|
1619
|
+
legs_at_enqueue INTEGER NOT NULL DEFAULT 0,
|
|
1595
1620
|
UNIQUE(repo_name, issue_number)
|
|
1596
1621
|
);
|
|
1597
1622
|
|
|
@@ -2510,6 +2535,13 @@ _MIGRATE_ADD_COLUMNS: list[str] = [
|
|
|
2510
2535
|
# auto-close the linked issue at all — both look identical as
|
|
2511
2536
|
# `merged=True, issue_state="open"` without it.
|
|
2512
2537
|
"ALTER TABLE issues ADD COLUMN state_reason TEXT NOT NULL DEFAULT ''",
|
|
2538
|
+
# #3463: see the CREATE TABLE comment above — the all-time WORK_LIKE leg
|
|
2539
|
+
# count a row saw at `enqueue_drive_queue` time, so a re-added row's fix
|
|
2540
|
+
# budget is measured from ITS OWN baseline rather than every
|
|
2541
|
+
# predecessor's lifetime spend. 0 for every row predating this
|
|
2542
|
+
# migration, which reproduces the pre-#3463 `work_leg_count - 1` formula
|
|
2543
|
+
# unchanged for that row.
|
|
2544
|
+
"ALTER TABLE drive_queue ADD COLUMN legs_at_enqueue INTEGER NOT NULL DEFAULT 0",
|
|
2513
2545
|
]
|
|
2514
2546
|
|
|
2515
2547
|
|
|
@@ -1456,6 +1456,19 @@ class QueueEntry:
|
|
|
1456
1456
|
# `last_reason`. `None` for a row predating this column or one whose
|
|
1457
1457
|
# `apply_verdict` is still unset.
|
|
1458
1458
|
apply_verdict_at: float | None = None
|
|
1459
|
+
# #3463: the all-time WORK_LIKE leg count (the SAME per-issue figure
|
|
1460
|
+
# `IssueFacts.work_leg_count` carries) this row saw at the moment
|
|
1461
|
+
# `enqueue_drive_queue` last declared it — see
|
|
1462
|
+
# `coord.state._enqueue_drive_queue_local` for where it is stamped, on
|
|
1463
|
+
# every `add` (insert OR update-in-place), never carried forward.
|
|
1464
|
+
# `remaining_fix_rounds` subtracts this off `facts.work_leg_count`
|
|
1465
|
+
# before comparing spend against `max_fix_rounds`, so a row's own
|
|
1466
|
+
# budget is measured from ITS OWN baseline — "legs since THIS row was
|
|
1467
|
+
# last (re-)declared" — rather than the lifetime total every
|
|
1468
|
+
# predecessor row for this issue ever spent. `0` for every row
|
|
1469
|
+
# predating this column, which reproduces the pre-#3463
|
|
1470
|
+
# `work_leg_count - 1` formula exactly for that row.
|
|
1471
|
+
legs_at_enqueue: int = 0
|
|
1459
1472
|
|
|
1460
1473
|
@property
|
|
1461
1474
|
def key(self) -> str:
|
|
@@ -1556,6 +1569,7 @@ class QueueEntry:
|
|
|
1556
1569
|
if row.get("apply_verdict_at") is None
|
|
1557
1570
|
else float(row.get("apply_verdict_at"))
|
|
1558
1571
|
),
|
|
1572
|
+
legs_at_enqueue=int(row.get("legs_at_enqueue") or 0),
|
|
1559
1573
|
)
|
|
1560
1574
|
|
|
1561
1575
|
|
|
@@ -1617,29 +1631,46 @@ def remaining_fix_rounds(
|
|
|
1617
1631
|
resumes rather than restarts.
|
|
1618
1632
|
|
|
1619
1633
|
``facts.work_leg_count`` is every work-like assignment `build_board_view`
|
|
1620
|
-
has EVER seen for this issue, across every drive session this entry
|
|
1621
|
-
|
|
1622
|
-
|
|
1623
|
-
|
|
1624
|
-
(
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
|
|
1628
|
-
|
|
1634
|
+
has EVER seen for this issue, across every drive session this entry (and
|
|
1635
|
+
every predecessor row for the same issue) has ever had. #3463: what this
|
|
1636
|
+
row has itself SPENT is that lifetime total minus
|
|
1637
|
+
``entry.legs_at_enqueue`` — the lifetime count as of the moment THIS row
|
|
1638
|
+
was last (re-)declared by `enqueue_drive_queue` — not the raw lifetime
|
|
1639
|
+
total. Subtracting the one unconditional initial work leg turns that
|
|
1640
|
+
into "fix rounds already spent"; subtracting THAT from
|
|
1641
|
+
:func:`effective_max_fix_rounds`'s plain per-drive allowance (NOT
|
|
1642
|
+
:func:`total_fix_round_budget` — that figure already has the initial
|
|
1643
|
+
work leg folded in, and folding it in a second time here would hand a
|
|
1644
|
+
brand-new entry, with zero legs spent, a budget one round wider than
|
|
1645
|
+
`coord drive`'s own interactive default ever allows) is what makes a
|
|
1646
|
+
second (or third, or fourth) relaunch get a SMALLER budget than the
|
|
1629
1647
|
first, instead of the same fresh one every time — the exact defect
|
|
1630
1648
|
quadraui#625 reported: four work legs dispatched against a
|
|
1631
1649
|
``pipeline.max_fix_rounds`` of 2 (budget 3), because each relaunch's
|
|
1632
1650
|
``coord drive --max-fix-rounds`` was computed from `entry` alone, blind
|
|
1633
1651
|
to what prior sessions had already spent. A fresh entry (``work_leg_count
|
|
1634
|
-
==
|
|
1635
|
-
from every pre-#2972 launch
|
|
1652
|
+
== legs_at_enqueue``) reads back exactly :func:`effective_max_fix_rounds`
|
|
1653
|
+
— unchanged from every pre-#2972 launch, and unchanged by #3463 for a row
|
|
1654
|
+
predating the ``legs_at_enqueue`` column (``0``, reproducing the old
|
|
1655
|
+
``work_leg_count - 1`` formula exactly).
|
|
1656
|
+
|
|
1657
|
+
#3463: this is also what makes an explicit ``coord drive-queue remove``
|
|
1658
|
+
+ ``add`` actually hand out a fresh budget, as the #3454 ceiling message
|
|
1659
|
+
promises — the re-added row's own ``legs_at_enqueue`` is stamped at
|
|
1660
|
+
THAT ``add``, not inherited from a predecessor row. It does NOT change
|
|
1661
|
+
the #2972 guarantee that a bare relaunch (no `add` in between) gets no
|
|
1662
|
+
fresh budget: a relaunch never calls `enqueue_drive_queue` at all, only
|
|
1663
|
+
`update_drive_queue_entry`, so `legs_at_enqueue` never moves between
|
|
1664
|
+
relaunches of the SAME row.
|
|
1636
1665
|
|
|
1637
1666
|
Never negative — an entry that has already met or exceeded
|
|
1638
1667
|
:func:`total_fix_round_budget` reads ``0`` (no more fix rounds), the
|
|
1639
1668
|
signal `_reconcile_running` uses to stop relaunching altogether rather
|
|
1640
1669
|
than pass a session a budget it cannot spend down further.
|
|
1641
1670
|
"""
|
|
1642
|
-
fix_rounds_spent = max(
|
|
1671
|
+
fix_rounds_spent = max(
|
|
1672
|
+
facts.work_leg_count - entry.legs_at_enqueue - 1, 0
|
|
1673
|
+
)
|
|
1643
1674
|
return max(effective_max_fix_rounds(entry, config_default) - fix_rounds_spent, 0)
|
|
1644
1675
|
|
|
1645
1676
|
|
|
@@ -5187,9 +5218,14 @@ def _reconcile_running(
|
|
|
5187
5218
|
# showed a bare "giving up" read as "nothing more will happen or be
|
|
5188
5219
|
# spent" while the fleet kept dispatching paid legs against the same
|
|
5189
5220
|
# branch for hours.
|
|
5221
|
+
# #3463: legs run against THIS row's own baseline, not the raw
|
|
5222
|
+
# lifetime count — see `remaining_fix_rounds`'s docstring. Reporting
|
|
5223
|
+
# the raw `facts.work_leg_count` here would misstate a re-added
|
|
5224
|
+
# row's spend as its predecessors' lifetime total.
|
|
5225
|
+
row_legs = max(facts.work_leg_count - entry.legs_at_enqueue, 0)
|
|
5190
5226
|
reason = (
|
|
5191
5227
|
f"fix-round ceiling reached across relaunches (#2972): "
|
|
5192
|
-
f"{
|
|
5228
|
+
f"{row_legs} work leg(s) already run against this row's own "
|
|
5193
5229
|
f"budget of {budget} (1 work dispatch + "
|
|
5194
5230
|
f"{effective_max_fix_rounds(entry, fix_round_config_default)} fix "
|
|
5195
5231
|
f"round(s)) — giving up rather than relaunching with a fresh "
|
|
@@ -5197,8 +5233,8 @@ def _reconcile_running(
|
|
|
5197
5233
|
f"gate-clear resume, or auto-dispatched stale-rebase conflict-fix "
|
|
5198
5234
|
f"(from any of this fleet's independent dispatchers) will fire "
|
|
5199
5235
|
f"for this entry — `coord drive-queue remove {entry.repo} "
|
|
5200
|
-
f"{entry.issue}` + `add` (a fresh row
|
|
5201
|
-
f"it another attempt."
|
|
5236
|
+
f"{entry.issue}` + `add` (a fresh row, #3463: with its own fresh "
|
|
5237
|
+
f"budget) is the only way to give it another attempt."
|
|
5202
5238
|
)
|
|
5203
5239
|
return (
|
|
5204
5240
|
Reconcile(entry.key, "exhausted", reason, occupies=False),
|
|
@@ -8473,7 +8473,7 @@ _DRIVE_QUEUE_COLUMNS = (
|
|
|
8473
8473
|
"enqueued_at, hold_after, hold_reason, resume_when, hold_state, "
|
|
8474
8474
|
"hold_probes, launch_host, hold_scope, resumes, retry_backoff_at, "
|
|
8475
8475
|
"max_fix_rounds, no_acceptance, plan_destructive, apply_verdict, "
|
|
8476
|
-
"apply_verdict_reason, apply_verdict_at"
|
|
8476
|
+
"apply_verdict_reason, apply_verdict_at, legs_at_enqueue"
|
|
8477
8477
|
)
|
|
8478
8478
|
|
|
8479
8479
|
# Fields `update_drive_queue_entry` may write. Deliberately excludes the
|
|
@@ -8655,6 +8655,42 @@ def enqueue_drive_queue(
|
|
|
8655
8655
|
)
|
|
8656
8656
|
|
|
8657
8657
|
|
|
8658
|
+
def _work_leg_count_for_issue_local(conn, repo_name: str, issue_number: int) -> int:
|
|
8659
|
+
"""All-time WORK_LIKE assignment count for ONE issue, right now (#3463).
|
|
8660
|
+
|
|
8661
|
+
Same scope as :func:`_leg_counts_local` (both ``assignments`` and
|
|
8662
|
+
``assignments_archive``, so a long-lived issue's early legs don't drop
|
|
8663
|
+
out of the count as they age past the archive retention window) but
|
|
8664
|
+
narrowed to a single ``(repo_name, issue_number)`` and run on the
|
|
8665
|
+
CALLER's own connection — so ``_enqueue_drive_queue_local`` can stamp
|
|
8666
|
+
``legs_at_enqueue`` atomically with the very write that declares the
|
|
8667
|
+
row, rather than racing a second connection's transaction.
|
|
8668
|
+
|
|
8669
|
+
A NULL/empty ``type`` counts as ``"work"`` — same convention
|
|
8670
|
+
:func:`coord.drive_queue.compute_leg_counts` uses (``t = assignment_type
|
|
8671
|
+
or "work"``) — which is always in ``WORK_LIKE_TYPES``, so a bare
|
|
8672
|
+
``type IS NULL`` row is counted, never silently dropped.
|
|
8673
|
+
"""
|
|
8674
|
+
placeholders = ",".join("?" for _ in WORK_LIKE_TYPES)
|
|
8675
|
+
total = 0
|
|
8676
|
+
for table in ("assignments", "assignments_archive"):
|
|
8677
|
+
try:
|
|
8678
|
+
row = sql.execute(conn,
|
|
8679
|
+
f"SELECT COUNT(*) AS n FROM {table} WHERE repo_name = ? " # noqa: S608 — constant
|
|
8680
|
+
f"AND issue_number = ? AND (type IS NULL OR type IN ({placeholders}))",
|
|
8681
|
+
(repo_name, issue_number, *WORK_LIKE_TYPES),
|
|
8682
|
+
).fetchone()
|
|
8683
|
+
except sql.driver_errors() as exc: # #2784: was sqlite3.OperationalError only
|
|
8684
|
+
# Mirrors `_leg_counts_local`: `continue` on the SAME connection
|
|
8685
|
+
# so a missing `assignments_archive` (housekeeping never ran)
|
|
8686
|
+
# doesn't poison the transaction the caller's write is still
|
|
8687
|
+
# inside of (#2983).
|
|
8688
|
+
rollback_after_driver_error(conn, exc)
|
|
8689
|
+
continue
|
|
8690
|
+
total += int(row["n"]) if row is not None else 0
|
|
8691
|
+
return total
|
|
8692
|
+
|
|
8693
|
+
|
|
8658
8694
|
def _enqueue_drive_queue_local(
|
|
8659
8695
|
repo_name: str,
|
|
8660
8696
|
issue_number: int,
|
|
@@ -8705,6 +8741,21 @@ def _enqueue_drive_queue_local(
|
|
|
8705
8741
|
"SELECT id FROM drive_queue WHERE repo_name = ? AND issue_number = ?",
|
|
8706
8742
|
(repo_name, issue_number),
|
|
8707
8743
|
).fetchone()
|
|
8744
|
+
# #3463: the all-time WORK_LIKE leg count for THIS issue, read on
|
|
8745
|
+
# THIS connection right before the write below commits it as the
|
|
8746
|
+
# row's new baseline. Recomputed on every `enqueue_drive_queue` call
|
|
8747
|
+
# — insert AND update-in-place — never carried forward from a prior
|
|
8748
|
+
# `legs_at_enqueue`, so an explicit `add` (whether it lands on a
|
|
8749
|
+
# brand-new row after `remove`, or refreshes an already-queued one)
|
|
8750
|
+
# always measures this row's spend from "legs as of right now",
|
|
8751
|
+
# which is what lets `remaining_fix_rounds` hand out the fresh
|
|
8752
|
+
# budget the #3454 ceiling message promises. A bare relaunch never
|
|
8753
|
+
# reaches this function at all (it goes through
|
|
8754
|
+
# `update_drive_queue_entry` instead), so the #2972 "no fresh
|
|
8755
|
+
# budget from a relaunch" guarantee is untouched.
|
|
8756
|
+
legs_at_enqueue = _work_leg_count_for_issue_local(
|
|
8757
|
+
conn, repo_name, issue_number
|
|
8758
|
+
)
|
|
8708
8759
|
if existing is not None:
|
|
8709
8760
|
# Already queued → update the operator-declared fields in place
|
|
8710
8761
|
# rather than creating a second row for the same issue. Run
|
|
@@ -8720,7 +8771,7 @@ def _enqueue_drive_queue_local(
|
|
|
8720
8771
|
"UPDATE drive_queue SET machine = ?, after_json = ?, hold_after = ?, "
|
|
8721
8772
|
"hold_reason = ?, resume_when = ?, hold_state = ?, hold_probes = 0, "
|
|
8722
8773
|
"hold_scope = ?, max_fix_rounds = ?, no_acceptance = ?, "
|
|
8723
|
-
"plan_destructive = ? WHERE id = ?",
|
|
8774
|
+
"plan_destructive = ?, legs_at_enqueue = ? WHERE id = ?",
|
|
8724
8775
|
(
|
|
8725
8776
|
machine,
|
|
8726
8777
|
after_json,
|
|
@@ -8732,6 +8783,7 @@ def _enqueue_drive_queue_local(
|
|
|
8732
8783
|
max_fix_rounds,
|
|
8733
8784
|
no_acceptance_int,
|
|
8734
8785
|
plan_destructive_int,
|
|
8786
|
+
legs_at_enqueue,
|
|
8735
8787
|
existing["id"],
|
|
8736
8788
|
),
|
|
8737
8789
|
)
|
|
@@ -8746,8 +8798,8 @@ def _enqueue_drive_queue_local(
|
|
|
8746
8798
|
"INSERT INTO drive_queue "
|
|
8747
8799
|
"(repo_name, issue_number, position, machine, after_json, enqueued_at, "
|
|
8748
8800
|
" hold_after, hold_reason, resume_when, hold_state, hold_scope, "
|
|
8749
|
-
" max_fix_rounds, no_acceptance, plan_destructive) "
|
|
8750
|
-
"VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)",
|
|
8801
|
+
" max_fix_rounds, no_acceptance, plan_destructive, legs_at_enqueue) "
|
|
8802
|
+
"VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)",
|
|
8751
8803
|
(
|
|
8752
8804
|
repo_name,
|
|
8753
8805
|
issue_number,
|
|
@@ -8763,6 +8815,7 @@ def _enqueue_drive_queue_local(
|
|
|
8763
8815
|
max_fix_rounds,
|
|
8764
8816
|
no_acceptance_int,
|
|
8765
8817
|
plan_destructive_int,
|
|
8818
|
+
legs_at_enqueue,
|
|
8766
8819
|
),
|
|
8767
8820
|
pk_column="id",
|
|
8768
8821
|
)
|
|
@@ -5035,6 +5035,70 @@ def test_leg_counts_non_lock_failure_warns_and_degrades_to_zero_not_silence(
|
|
|
5035
5035
|
assert queued(1650)["state"] == "running"
|
|
5036
5036
|
|
|
5037
5037
|
|
|
5038
|
+
# ── #3463: `list`'s `fix_rounds=` renders spend, not "every leg incl. the
|
|
5039
|
+
# initial one against budget+1" — and never clamps an overrun back to a
|
|
5040
|
+
# reassuring `N/N`.
|
|
5041
|
+
|
|
5042
|
+
|
|
5043
|
+
def test_list_renders_fix_rounds_as_spent_over_max_not_legs_over_budget_plus_one(
|
|
5044
|
+
cli, seed
|
|
5045
|
+
):
|
|
5046
|
+
"""`--max-fix-rounds 4` — a row that has run 1 work + 4 fix legs (5 legs
|
|
5047
|
+
total) must render `fix_rounds=4/4` (4 fix rounds spent of 4 allowed),
|
|
5048
|
+
never the pre-#3463 `5/5` (every leg, including the unconditional
|
|
5049
|
+
initial one, against `max_fix_rounds + 1`)."""
|
|
5050
|
+
seed(issues={1650: "open"})
|
|
5051
|
+
assert cli("add", REPO, "1650", "--max-fix-rounds", "4").exit_code == 0
|
|
5052
|
+
# The row's own history accrues AFTER it is declared — `legs_at_enqueue`
|
|
5053
|
+
# was stamped at 0 by the `add` above, so every one of these counts as
|
|
5054
|
+
# this row's own spend.
|
|
5055
|
+
seed(assignments=[
|
|
5056
|
+
{"issue_number": 1650, "type": "work", "status": "done"}
|
|
5057
|
+
for _ in range(5)
|
|
5058
|
+
])
|
|
5059
|
+
|
|
5060
|
+
result = cli("list")
|
|
5061
|
+
assert result.exit_code == 0, result.output
|
|
5062
|
+
assert "fix_rounds=4/4" in result.output
|
|
5063
|
+
assert "fix_rounds=5/5" not in result.output
|
|
5064
|
+
|
|
5065
|
+
|
|
5066
|
+
def test_list_renders_zero_spent_for_a_fresh_row_with_only_its_initial_leg(
|
|
5067
|
+
cli, seed
|
|
5068
|
+
):
|
|
5069
|
+
"""A fresh `--max-fix-rounds 5` row with only its initial (unconditional)
|
|
5070
|
+
work leg has spent NO fix rounds yet — `fix_rounds=0/5`, never the
|
|
5071
|
+
pre-#3463 `1/6`."""
|
|
5072
|
+
seed(issues={1650: "open"})
|
|
5073
|
+
assert cli("add", REPO, "1650", "--max-fix-rounds", "5").exit_code == 0
|
|
5074
|
+
seed(assignments=[{"issue_number": 1650, "type": "work", "status": "running"}])
|
|
5075
|
+
|
|
5076
|
+
result = cli("list")
|
|
5077
|
+
assert result.exit_code == 0, result.output
|
|
5078
|
+
assert "fix_rounds=0/5" in result.output
|
|
5079
|
+
assert "fix_rounds=1/6" not in result.output
|
|
5080
|
+
|
|
5081
|
+
|
|
5082
|
+
def test_list_marks_an_overrun_row_rather_than_clamping_to_n_over_n(cli, seed):
|
|
5083
|
+
"""A row that dispatched PAST its own ceiling (the #3454 leak this issue
|
|
5084
|
+
also reports) must stay visibly an overrun — never silently clamp back
|
|
5085
|
+
down to a reassuring `budget/budget`."""
|
|
5086
|
+
seed(issues={1650: "open"})
|
|
5087
|
+
assert cli("add", REPO, "1650", "--max-fix-rounds", "2").exit_code == 0
|
|
5088
|
+
# 1 work + 5 more legs = 6 total, 5 fix rounds spent against a 2-round
|
|
5089
|
+
# allowance — well past the ceiling.
|
|
5090
|
+
seed(assignments=[
|
|
5091
|
+
{"issue_number": 1650, "type": "work", "status": "done"}
|
|
5092
|
+
for _ in range(6)
|
|
5093
|
+
])
|
|
5094
|
+
|
|
5095
|
+
result = cli("list")
|
|
5096
|
+
assert result.exit_code == 0, result.output
|
|
5097
|
+
assert "fix_rounds=5/2!" in result.output
|
|
5098
|
+
assert "fix_rounds=2/2" not in result.output
|
|
5099
|
+
assert "fix_rounds=3/3" not in result.output
|
|
5100
|
+
|
|
5101
|
+
|
|
5038
5102
|
def test_a_failed_launch_is_a_consumed_attempt_not_a_running_entry(
|
|
5039
5103
|
cli, seed, launches
|
|
5040
5104
|
):
|
|
@@ -2468,7 +2468,7 @@ class TestUatStateAndReasonColumns:
|
|
|
2468
2468
|
# #3384 bumped this to (19, 97): `issues.state_reason` — GitHub's own witness
|
|
2469
2469
|
# that an issue was explicitly reopened, distinguishing that from an issue
|
|
2470
2470
|
# that merged without ever auto-closing.
|
|
2471
|
-
_PINNED_SCHEMA_VERSION_AND_MIGRATION_COUNT = (
|
|
2471
|
+
_PINNED_SCHEMA_VERSION_AND_MIGRATION_COUNT = (20, 98)
|
|
2472
2472
|
|
|
2473
2473
|
|
|
2474
2474
|
class TestMigrateAddColumnsVersionGuard:
|
|
@@ -956,6 +956,52 @@ def test_total_fix_round_budget_is_work_plus_fix_rounds():
|
|
|
956
956
|
assert total_fix_round_budget(default_e, None) == DEFAULT_TICK_MAX_FIX_ROUNDS + 1
|
|
957
957
|
|
|
958
958
|
|
|
959
|
+
# ── #3463: a re-added row's budget is measured from ITS OWN baseline ────────
|
|
960
|
+
#
|
|
961
|
+
# `IssueFacts.work_leg_count` is a LIFETIME, cross-row count — every
|
|
962
|
+
# predecessor row this (repo, issue) has ever had contributes to it. Before
|
|
963
|
+
# #3463, `remaining_fix_rounds` compared that raw lifetime figure against
|
|
964
|
+
# `max_fix_rounds`, so a fresh row re-added (`coord drive-queue remove` +
|
|
965
|
+
# `add`) after its issue had already burned through 5 lifetime legs read
|
|
966
|
+
# back almost no budget at all — exactly the opposite of what the #3454
|
|
967
|
+
# ceiling message promises ("remove + add ... is the only way to give it
|
|
968
|
+
# another attempt"). `entry.legs_at_enqueue` is the lifetime count AS OF the
|
|
969
|
+
# row's own `enqueue_drive_queue` call — see `coord.state.
|
|
970
|
+
# _enqueue_drive_queue_local` for where it is stamped — so a row's own spend
|
|
971
|
+
# is `work_leg_count - legs_at_enqueue`, never the raw lifetime total.
|
|
972
|
+
|
|
973
|
+
|
|
974
|
+
def test_remaining_fix_rounds_gives_a_re_added_row_its_full_budget():
|
|
975
|
+
"""quadraui#1081's exact shape: `--max-fix-rounds 5`, re-added when the
|
|
976
|
+
issue already has 5 lifetime work legs. Current main (pre-#3463) reads
|
|
977
|
+
this back as `1` (`5 - 4` against `effective_max_fix_rounds`) — this
|
|
978
|
+
pins the fix: a freshly re-added row (no legs of its OWN yet) gets its
|
|
979
|
+
full `max_fix_rounds` back, not a near-exhausted one inherited from
|
|
980
|
+
every predecessor row's history."""
|
|
981
|
+
e = entry(1081, max_fix_rounds=5, legs_at_enqueue=5)
|
|
982
|
+
facts = IssueFacts(known=True, work_leg_count=5)
|
|
983
|
+
assert remaining_fix_rounds(e, facts, None) == 5
|
|
984
|
+
|
|
985
|
+
|
|
986
|
+
def test_remaining_fix_rounds_still_shrinks_across_relaunches_of_the_re_added_row():
|
|
987
|
+
"""The #2972 no-fresh-budget-on-relaunch guarantee is unchanged for the
|
|
988
|
+
re-added row ITSELF: two more legs run against it (still no new `add`,
|
|
989
|
+
so `legs_at_enqueue` does not move) shrinks its remaining budget by the
|
|
990
|
+
one fix round actually spent, same as any other row."""
|
|
991
|
+
e = entry(1081, max_fix_rounds=5, legs_at_enqueue=5)
|
|
992
|
+
facts = IssueFacts(known=True, work_leg_count=7)
|
|
993
|
+
assert remaining_fix_rounds(e, facts, None) == 4
|
|
994
|
+
|
|
995
|
+
|
|
996
|
+
def test_remaining_fix_rounds_legs_at_enqueue_default_matches_pre_3463_behaviour():
|
|
997
|
+
"""A row predating the `legs_at_enqueue` column (or one that has never
|
|
998
|
+
been re-added) reads `legs_at_enqueue == 0` — reproducing the pre-#3463
|
|
999
|
+
`work_leg_count - 1` formula exactly, byte for byte."""
|
|
1000
|
+
e = entry(1650, max_fix_rounds=2)
|
|
1001
|
+
assert e.legs_at_enqueue == 0
|
|
1002
|
+
assert remaining_fix_rounds(e, IssueFacts(known=True, work_leg_count=2), None) == 1
|
|
1003
|
+
|
|
1004
|
+
|
|
959
1005
|
def test_build_board_view_folds_leg_counts_into_work_leg_count():
|
|
960
1006
|
"""Only WORK_LIKE types count as a work leg — a `review`/`smoke` leg on
|
|
961
1007
|
the SAME issue must never inflate the fix-round budget's own count."""
|
|
@@ -4398,6 +4398,67 @@ class TestDriveQueueLocalWritesRetryLockContention:
|
|
|
4398
4398
|
_enqueue_drive_queue_local("api", 9, position=1)
|
|
4399
4399
|
|
|
4400
4400
|
|
|
4401
|
+
class TestEnqueueDriveQueueStampsLegsAtEnqueue:
|
|
4402
|
+
"""#3463: `enqueue_drive_queue` must stamp the row's OWN baseline —
|
|
4403
|
+
the all-time WORK_LIKE leg count as of THIS `add` call — not leave it at
|
|
4404
|
+
`0` forever (which would make a re-added row read its predecessors'
|
|
4405
|
+
entire lifetime spend as its own, the exact quadraui#1081 misreport)."""
|
|
4406
|
+
|
|
4407
|
+
@staticmethod
|
|
4408
|
+
def _seed_work_legs(coord_db, *, repo="api", issue=9, count=1, kind="work") -> None:
|
|
4409
|
+
for i in range(count):
|
|
4410
|
+
coord_db.execute(
|
|
4411
|
+
"INSERT INTO assignments (assignment_id, machine_name, repo_name, "
|
|
4412
|
+
"issue_number, issue_title, type) VALUES (?, 'm1', ?, ?, 't', ?)",
|
|
4413
|
+
(f"aid-{repo}-{issue}-{kind}-{i}", repo, issue, kind),
|
|
4414
|
+
)
|
|
4415
|
+
coord_db.commit()
|
|
4416
|
+
|
|
4417
|
+
def test_fresh_row_with_no_history_stamps_zero(self, coord_db) -> None:
|
|
4418
|
+
from coord.state import _enqueue_drive_queue_local, _get_drive_queue_entry_local
|
|
4419
|
+
|
|
4420
|
+
_enqueue_drive_queue_local("api", 9)
|
|
4421
|
+
assert _get_drive_queue_entry_local("api", 9)["legs_at_enqueue"] == 0
|
|
4422
|
+
|
|
4423
|
+
def test_re_added_row_stamps_the_current_lifetime_count(self, coord_db) -> None:
|
|
4424
|
+
"""The quadraui#1081 shape: 5 lifetime work legs already exist for
|
|
4425
|
+
this issue (from a predecessor row's history) before the row is
|
|
4426
|
+
(re-)declared — the new row's baseline must be 5, not 0."""
|
|
4427
|
+
from coord.state import _enqueue_drive_queue_local, _get_drive_queue_entry_local
|
|
4428
|
+
|
|
4429
|
+
self._seed_work_legs(coord_db, count=5)
|
|
4430
|
+
_enqueue_drive_queue_local("api", 9)
|
|
4431
|
+
assert _get_drive_queue_entry_local("api", 9)["legs_at_enqueue"] == 5
|
|
4432
|
+
|
|
4433
|
+
def test_updating_an_already_queued_row_re_stamps_the_baseline(
|
|
4434
|
+
self, coord_db
|
|
4435
|
+
) -> None:
|
|
4436
|
+
"""A second `enqueue_drive_queue` call against an already-queued row
|
|
4437
|
+
(the UPDATE branch, not INSERT) re-stamps `legs_at_enqueue` to
|
|
4438
|
+
whatever the lifetime count is NOW — an operator's explicit `add`
|
|
4439
|
+
always measures from "right now", never a stale baseline."""
|
|
4440
|
+
from coord.state import _enqueue_drive_queue_local, _get_drive_queue_entry_local
|
|
4441
|
+
|
|
4442
|
+
_enqueue_drive_queue_local("api", 9)
|
|
4443
|
+
assert _get_drive_queue_entry_local("api", 9)["legs_at_enqueue"] == 0
|
|
4444
|
+
|
|
4445
|
+
self._seed_work_legs(coord_db, count=3)
|
|
4446
|
+
_enqueue_drive_queue_local("api", 9, machine="m2")
|
|
4447
|
+
assert _get_drive_queue_entry_local("api", 9)["legs_at_enqueue"] == 3
|
|
4448
|
+
|
|
4449
|
+
def test_only_work_like_types_count_toward_the_baseline(self, coord_db) -> None:
|
|
4450
|
+
"""A `review`/`smoke` leg on the same issue must never inflate the
|
|
4451
|
+
baseline — same WORK_LIKE-only scoping `IssueFacts.work_leg_count`
|
|
4452
|
+
uses."""
|
|
4453
|
+
from coord.state import _enqueue_drive_queue_local, _get_drive_queue_entry_local
|
|
4454
|
+
|
|
4455
|
+
self._seed_work_legs(coord_db, count=2, kind="work")
|
|
4456
|
+
self._seed_work_legs(coord_db, count=4, kind="review")
|
|
4457
|
+
self._seed_work_legs(coord_db, count=1, kind="smoke")
|
|
4458
|
+
_enqueue_drive_queue_local("api", 9)
|
|
4459
|
+
assert _get_drive_queue_entry_local("api", 9)["legs_at_enqueue"] == 2
|
|
4460
|
+
|
|
4461
|
+
|
|
4401
4462
|
class TestMilestoneLocalLockContention:
|
|
4402
4463
|
"""Same shape, for `_assign_issue_milestone_local` /
|
|
4403
4464
|
`_unassign_issue_milestone_local`."""
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
{code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/entry_points.txt
RENAMED
|
File without changes
|
{code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/requires.txt
RENAMED
|
File without changes
|
{code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/scm_file_list.json
RENAMED
|
File without changes
|
{code_coordinator-0.5.526 → code_coordinator-0.5.527}/code_coordinator.egg-info/top_level.txt
RENAMED
|
File without changes
|