code-coordinator 0.5.294__tar.gz → 0.5.296__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.294 → code_coordinator-0.5.296}/.github/coord-ci-acceptance.yml +8 -18
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/.github/workflows/test.yml +22 -27
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/.gitignore +0 -10
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/CLAUDE.md +16 -20
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/PKG-INFO +3 -2
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/README.md +2 -1
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/code_coordinator.egg-info/PKG-INFO +3 -2
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/code_coordinator.egg-info/SOURCES.txt +6 -43
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/code_coordinator.egg-info/scm_file_list.json +6 -43
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/code_coordinator.egg-info/scm_version.json +2 -2
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/tui.py +4 -3
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/config.py +13 -3
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/drive_queue.py +69 -6
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/deploy_lane_facts.py +72 -13
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/fleet_deploy_lanes.py +5 -5
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/toolchain.py +10 -2
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/prereqs.py +1 -1
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/skills/tui-quadraui-workflow/SKILL.md +18 -18
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/tui_release.py +2 -1
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coordinator.example.yml +81 -36
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/azure-workers/provision-worker.sh +12 -5
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/codegen.py +23 -22
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/coord-test-runner.sh +82 -230
- code_coordinator-0.5.296/scripts/coord-tui-scaffold/.github/coord-ci-acceptance.yml +55 -0
- code_coordinator-0.5.296/scripts/coord-tui-scaffold/.github/workflows/cargo-test.yml +75 -0
- code_coordinator-0.5.296/scripts/coord-tui-scaffold/.github/workflows/codegen-drift.yml +113 -0
- code_coordinator-0.5.296/scripts/coord-tui-scaffold/CLAUDE.md +102 -0
- code_coordinator-0.5.296/scripts/extract-coord-tui.sh +240 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/gen_board_fixture.py +79 -16
- code_coordinator-0.5.296/tests/test_board_fixture.py +103 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_board_schema.py +19 -11
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_ci_acceptance_gate_1950.py +160 -36
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_coord_test_runner_populated_home.py +3 -3
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_coord_test_runner_routing.py +63 -4
- code_coordinator-0.5.296/tests/test_coord_test_runner_toolchain.py +314 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_drive.py +19 -32
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_drive_queue.py +99 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_deploy_lane_facts.py +96 -2
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_openapi.py +12 -8
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_release_unified_1242.py +131 -105
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_review.py +147 -0
- code_coordinator-0.5.294/.github/workflows/cargo-test.yml +0 -122
- code_coordinator-0.5.294/tests/test_board_fixture.py +0 -82
- code_coordinator-0.5.294/tests/test_coord_test_runner_toolchain.py +0 -336
- code_coordinator-0.5.294/tui/.github/workflows/release-tui.yml +0 -327
- code_coordinator-0.5.294/tui/Cargo.lock +0 -3198
- code_coordinator-0.5.294/tui/Cargo.toml +0 -62
- code_coordinator-0.5.294/tui/cargo-config-local-quadraui.toml.example +0 -21
- code_coordinator-0.5.294/tui/src/app/approved.rs +0 -1243
- code_coordinator-0.5.294/tui/src/app/audit.rs +0 -583
- code_coordinator-0.5.294/tui/src/app/chat.rs +0 -273
- code_coordinator-0.5.294/tui/src/app/data.rs +0 -3543
- code_coordinator-0.5.294/tui/src/app/dialogs.rs +0 -8501
- code_coordinator-0.5.294/tui/src/app/doc_tabs.rs +0 -3000
- code_coordinator-0.5.294/tui/src/app/drive.rs +0 -1655
- code_coordinator-0.5.294/tui/src/app/drive_queue.rs +0 -4238
- code_coordinator-0.5.294/tui/src/app/escalation.rs +0 -887
- code_coordinator-0.5.294/tui/src/app/events.rs +0 -7762
- code_coordinator-0.5.294/tui/src/app/fixtures.rs +0 -1226
- code_coordinator-0.5.294/tui/src/app/fleet_health.rs +0 -351
- code_coordinator-0.5.294/tui/src/app/fleet_sessions.rs +0 -474
- code_coordinator-0.5.294/tui/src/app/fleet_terminals.rs +0 -566
- code_coordinator-0.5.294/tui/src/app/format.rs +0 -438
- code_coordinator-0.5.294/tui/src/app/milestone_dag.rs +0 -1757
- code_coordinator-0.5.294/tui/src/app/mod.rs +0 -9930
- code_coordinator-0.5.294/tui/src/app/msv.rs +0 -140
- code_coordinator-0.5.294/tui/src/app/pipeline.rs +0 -10324
- code_coordinator-0.5.294/tui/src/app/plans.rs +0 -2262
- code_coordinator-0.5.294/tui/src/app/render.rs +0 -4349
- code_coordinator-0.5.294/tui/src/app/reports.rs +0 -2978
- code_coordinator-0.5.294/tui/src/app/sessions.rs +0 -3481
- code_coordinator-0.5.294/tui/src/app/settings_ui.rs +0 -2077
- code_coordinator-0.5.294/tui/src/app/sidebar.rs +0 -696
- code_coordinator-0.5.294/tui/src/app/terminal.rs +0 -1264
- code_coordinator-0.5.294/tui/src/app/tests.rs +0 -57678
- code_coordinator-0.5.294/tui/src/app/types/generated.rs +0 -747
- code_coordinator-0.5.294/tui/src/app/types.rs +0 -2316
- code_coordinator-0.5.294/tui/src/app/workspace.rs +0 -585
- code_coordinator-0.5.294/tui/src/bin/gtk.rs +0 -13
- code_coordinator-0.5.294/tui/src/commands.rs +0 -1446
- code_coordinator-0.5.294/tui/src/lib.rs +0 -20
- code_coordinator-0.5.294/tui/src/main.rs +0 -186
- code_coordinator-0.5.294/tui/src/settings.rs +0 -850
- code_coordinator-0.5.294/tui/tests/cli.rs +0 -58
- code_coordinator-0.5.294/tui/tests/fixtures/board_sample.json +0 -382
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/.claude/commands/board.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/.claude/commands/complete-session.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/.claude/commands/coordinator.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/.githooks/_lib.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/.githooks/post-checkout +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/.githooks/post-commit +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/.githooks/post-merge +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/.github/workflows/auto-release.yml +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/.github/workflows/publish.yml +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/GOAL.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/LICENSE +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/MANIFEST.in +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/code_coordinator.egg-info/dependency_links.txt +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/code_coordinator.egg-info/entry_points.txt +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/code_coordinator.egg-info/requires.txt +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/code_coordinator.egg-info/top_level.txt +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/__init__.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/_board_mapping.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/acceptance.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/acceptance_drivers.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/agent.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/agent_app.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/agent_update.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/agents/opencode/.gitignore +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/agents/opencode/agents/work.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/agents/opencode/routing.jsonc +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/approved_work.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/audit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/auto_loop.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/block_log.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/board_schema.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/board_service.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/board_wire.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/brain.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/branch_model.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/bug_intake.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/cargo_cache.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/ci_fix.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/ci_github.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/ci_gitlab.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/ci_store.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/claim.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/cli.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/client.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/__init__.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/_common.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/acceptance.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/agent_ops.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/audit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/chat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/dispatch.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/dispatch_workers.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/drive.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/drive_queue.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/gate_a.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/gates.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/issues.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/lifecycle.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/machine.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/merge.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/milestone.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/plan_followup.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/plans.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/portal.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/pr.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/release.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/repo.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/report.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/review.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/scorecard.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/sessions.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/setup.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/status.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/store_migrate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/terminal.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/commands/test_gate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/comments.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/config_reload.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/confirm_test.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/conflict_fix.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/dao.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/dashboard/__init__.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/dashboard/fixture.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/dashboard/index.html +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/dashboard/server.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/dashboard/terminal.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/db.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/dead_end.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/decomposition_chat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/README.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-agent.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-db-backup.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-db-backup.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-db-backup.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-drive-queue.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-drive-queue.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-failure-notify.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-fleet-watchdog.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-fleet-watchdog.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-notify.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-notify.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-release-propagate.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-release-propagate.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-release-window.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-release-window.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-serve.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-web-dist-build.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-web-dist-build.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy/coord-web.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy_manifest.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deploy_units.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deprecation_telemetry.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/deps.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/diagnose.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/dispatch.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/dist_name.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/drive.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/drive_state.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/events.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/failure_class.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/filelock.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/fleet_config_health.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/forge_availability.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/freshness.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/gate_a.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/gate_b.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/gate_snapshot.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/gates.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/github_ops.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/github_throttle.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/goal.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/graph_health.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/__init__.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/aggregate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/__init__.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/agent_install.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/cargo_targets.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/claude_binary.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/coord_web_ci_pin.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/disk.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/fleet_board.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/fleet_phantom.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/fleet_unit_drift.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/graph.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/graphify_cli.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/index_lock.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/issues_sync_staleness.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/plan_usage.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/release_cordon.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/repo_state.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/spawned_coord.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/stalled_pipeline.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/timer_active.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/unit_drift.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/unit_enablement.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/checks/worktrees.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/cli.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/context.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/fleet_snapshot.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/models.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/pypi.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/registry.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/render.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/health/units.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/hooks.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/housekeeping.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/interactive.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/issue_store.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/issues_sync_status.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/liveness_auditor.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/machine_onboard.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/machine_pause.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/merge_queue.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/milestone_chat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/milestone_dispatch.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/milestone_gate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/milestone_order.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/mock_author.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/models.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/network.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/new_issue_chat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/notifier/__init__.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/notifier/baseline.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/notifier/cli.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/notifier/collect.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/notifier/digest.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/notifier/models.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/notifier/predicate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/notifier/service.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/notifier/store.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/notifier/transport.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/notify.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/openapi.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/overlap_fence.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/overlap_predict.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/parentage.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/parentage_github.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/pipeline.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/plan_parser.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/plans.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/platform_paths.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/portal_bridge.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/portal_store.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/portal_sync.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/pr_body_lint.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/progress.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/providers/__init__.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/providers/base.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/providers/claude.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/providers/claude_pty.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/providers/opencode.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/queue_diagnose.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/reconcile.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/reconcile_tick.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/refine_chat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/release_cordon.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/release_propagate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/release_verify.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/release_window.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/repo_edit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/repo_onboard.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/reports.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/rest_schema.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/revalidate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/review.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/scorecard.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/self_health.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/serve_app.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/skills/coord-dispatch-verbs/SKILL.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/skills/drive-queue-preflight/SKILL.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/skills/fleet-restart-safety/SKILL.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/skills/merge-stuck-triage/SKILL.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/skills/pipeline-limbo-triage/SKILL.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/skills/portal-followup/SKILL.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/skills/release-now/SKILL.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/skills/review-verdict-recovery/SKILL.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/skills/update-issue/SKILL.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/smoke.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/spend_ceiling.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/split_work.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/sql.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/stage_projection.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/state.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/store_migrate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/test_author.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/test_chat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/test_orchestrator.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/test_report.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/usage.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/usage_limits.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/usage_rollup.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/coord/worker_events.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-agent.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-db-backup.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-db-backup.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-db-backup.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-drive-queue.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-drive-queue.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-failure-notify.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-failure-notify.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-fleet-watchdog.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-fleet-watchdog.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-notify.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-notify.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-release-propagate.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-release-propagate.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-release-window.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-release-window.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-serve.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-web-dist-build.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-web-dist-build.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-web-dist-build.timer +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-web-rollback.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/coord-web.service +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/deploy/node-shim.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/ADR_COORD_TUI_CI.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/ADR_COORD_WEB_ACCEPTANCE_SUITE.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/ADR_COORD_WEB_CI.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/ADR_COORD_WEB_DIST.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/AGENT_OPERATIONS.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/ARCHITECTURE.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/ARCH_SECURITY_GATES.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/COCKPIT.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/CONTROL_CENTER.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/COST_DISCIPLINE.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/CROSS_PLATFORM.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/CUSTOMER_FACING_APPS.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/CUSTOMER_PORTAL.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/DRIVE_QUEUE.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/EPHEMERAL_WORKERS.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/FORGE_MIGRATION.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/GRAPHIFY_SETUP.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/ISSUE_GUIDANCE.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/MAC_MINI.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/MERGE_AUTO_DRAIN_TRUST_BAR.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/NOTIFIER.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/OPENCODE_VERIFICATION.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/OPERATING_GOTCHAS.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/OPERATOR_GUIDES.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/ORACLE_LOOP.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/PHONE_WEBAPP.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/PIPELINE_V2.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/PLATFORM_EVOLUTION.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/SECOND_BACKEND.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/STORE_SERVICE.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/TEST_FIRST_BUG_LANE.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/WEB_CONTROL_CENTER.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/WSL_WINDOWS_WORKER.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/mocks/web/README.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/mocks/web/_tokens.css +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/mocks/web/issue-detail.html +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/mocks/web/pipeline-narrow.html +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/docs/mocks/web/pipeline-wide.html +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/graphify-out/.gitignore +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/install-agent.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/pyproject.toml +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/audit_review_verdict_overrides.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/azure-workers/bootstrap-shared.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/azure-workers/build-worker-image.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/azure-workers/coordinator-machine.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/azure-workers/epic-down.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/azure-workers/epic-up.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/azure-workers/preflight.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/azure-workers/scrub-and-generalize.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/azure-workers/tailnet-acl.hujson +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/azure-workers/verify-github-token.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/check_gh_argv_containment.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/coord-venv-rollback.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/drive-batch.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/fleet_watchdog.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/gen_mock_index.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/next_release_tag.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/run_tests_in_populated_home.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/run_tests_without_gh.sh +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/smoke_437_interactive.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/verify_878_review_capture.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/verify_release_published.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/scripts/verify_release_wheel.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/setup.cfg +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/SMOKE_SET.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/__init__.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/acceptance/ms-37/conftest.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/acceptance/ms-37/contract.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/acceptance/ms-37/manifest.yml +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/acceptance/ms-37/test_usage_cli_1115.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/acceptance/ms-37/test_usage_core_1118.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/acceptance/ms-51/contract.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/acceptance/ms-51/home-active-extended.spec.ts +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/acceptance/ms-51/home-active.spec.ts +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/acceptance/ms-51/manifest.yml +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/acceptance/ms-51/mocks/home-active.html +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/acceptance/ms-51/tsconfig.json +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/acceptance/ms-example/mocks/home-active.html +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/backends.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/conftest.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/board-pipeline-basic.json +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/board-pipeline-terminal-gates.json +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/opencode_run_failure_sample.jsonl +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/opencode_run_length_sample.jsonl +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/opencode_run_sample.jsonl +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/playwright/all_pass.json +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/playwright/global_setup_crash.json +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/playwright/mixed_fail.json +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/playwright/retry_then_pass.json +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/playwright/retry_then_pass.junit.xml +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/playwright/skip.json +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/playwright/truncated.json +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/test_report/cargo_compile_error.txt +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/test_report/cargo_multi_target_failures.txt +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/test_report/cargo_no_parseable_failures.txt +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/test_report/pytest_collection_error.txt +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/test_report/pytest_error_string_in_body.txt +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/test_report/pytest_internal_error.txt +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/test_report/pytest_mixed_failures.txt +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/fixtures/test_report/pytest_no_parseable_failures.txt +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_acceptance.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_acceptance_drivers.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_api_error.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_app.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_branch_base.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_branch_capture.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_config_free_1712.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_deploy_units_endpoint.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_dirty_worktree.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_drive_queue_reconcile_2373.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_graph_self_heal.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_health_h3.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_idle_restart.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_push_failure.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_reap.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_repos_and_pull.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_restart_services_endpoint.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_skills_self_heal.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_startup_diagnostics.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_update.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_update_bluegreen.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_usage_limit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_agent_zero_commit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_ambient_home_isolation.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_approve_dependency_busy_2804.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_approve_reject_plan.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_approve_usage_gate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_approved_work_2532.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_assignment_already_recorded_daemon.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_audit_log.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_audit_outcome.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_audit_query.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_auto_loop.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_auto_release_publish_2035.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_backend_selection.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_base_checkout_restore.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_block_log.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_board_cap_762.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_board_read_path.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_board_service.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_board_state.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_board_wire.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_brain.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_branch_model.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_bug_intake.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_build_worker_image_env_update.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cargo_cache.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_check_gh_argv_containment.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_ci_fix.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_ci_gitlab.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_ci_parity_2091.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_ci_store.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_claim.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_claude_md_budget.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_acceptance.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_assign.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_assign_interactive_oracle_gate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_assign_interactive_remote.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_assign_provider.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_assign_repo_drift_2219.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_audit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_chat_continue.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_decide.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_diagnose_config_provenance.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_diagnose_forge_availability.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_diagnose_graph.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_diagnose_self.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_doctor.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_doctor_config_free_1801.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_doctor_config_mismatch_1712.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_drive.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_drive_queue.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_escalate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_fix_headless_review.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_gate_a.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_install_drift.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_install_skills.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_issue_comment.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_issue_create_label.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_issue_reopen.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_issue_view_list.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_merge.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_milestone_assign.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_milestone_capture.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_milestone_chat_add_child.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_milestone_dispatch.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_milestone_gate_b.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_milestone_gate_c.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_milestone_order.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_milestone_remove_and_issue_close.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_milestone_ship.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_network.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_new_issue_chat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_plans.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_portal.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_pr.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_pull_artifact.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_queue.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_reattach_sessions.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_refine_board.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_release_preflight.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_release_propagate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_release_window.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_repo_2220.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_review_test_author_tracking_epic_2639.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_scorecard.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_set_review_findings.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_status_advisory_terminal.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_status_contested_tag.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_status_merge_queue.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_status_provider.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_status_review_finalizing.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_status_test_failed_tag.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_status_usage_limit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_sync_comments_873.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_test_plan.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_track.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_tui_update.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cli_wait.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_client_base_install.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_client_resource_migration_1946.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_commands_common.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_comments.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_completion_summary.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_config.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_config_acceptance.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_config_audit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_config_pricing.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_config_snapshot_noncanonical_2208.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_config_usage_gate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_confirm_test.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_conflict_fix.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_conflict_fix_semantic.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_coord_log_daemon_fallback_2547.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_coord_test.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_coord_test_runner_baseline.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_coord_uat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_coord_web_sse_restart_live.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_coordinator_machine.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_cross_platform_imports.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_dao.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_dashboard.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_dashboard_fixture.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_dashboard_terminal.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_dashboard_terminal_live.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_db.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_dead_end.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_decomposition_chat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_deploy_coord_db_backup.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_deploy_coord_web_dist.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_deploy_coord_web_rollback.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_deploy_drive_queue_unit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_deploy_failure_notify_unit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_deploy_manifest.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_deploy_notify_unit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_deploy_units_lane.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_deploy_web_unit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_deprecation_telemetry.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_deps.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_diagnose.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_dispatch.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_dispatch_target_validation.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_dist_name.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_done_housekeeping.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_drive_queue_blocked_rendering.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_drive_queue_launch_argv.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_drive_queue_max_parallel_per_repo_config.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_drive_queue_roll_pending.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_drive_queue_self_cordon_escalation.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_drive_state.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_drive_tmux.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_epic_up_capability_detection.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_epic_up_down_symlinked_config_1887.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_epic_up_image_provenance.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_errors.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_events.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_failure_class.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_filelock.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_finalize_interactive_exit_test_verdict.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_fix_of_force_override.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_fleet_config_health.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_fleet_health_probes.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_fleet_health_snapshot.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_fleet_watchdog.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_forge_availability.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_freshness.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_gate_a.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_gate_b.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_gate_snapshot_staleness.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_gates.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_gather_fleet_tmux_sessions.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_gen_mock_index.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_generated_rust_fixture.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_generated_types_fixture.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_github_ops.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_github_throttle.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_goal.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_graph_health.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_graph_selfheal_absent_2237.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_handoff.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_checks.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_cli.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_cli_graph.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_config.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_context.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_coord_web_ci_pin.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_fix.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_incident_regression.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_issues_sync_staleness.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_pypi.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_registry.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_release_cordon_probe.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_timer_active.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_toolchain.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_unit_drift.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_health_unit_enablement.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_hooks.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_human_attended_437.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_init.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_install_agent_venv_2911.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_integration.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_interactive_briefing_echo.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_interactive_pane_log_2541.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_interactive_prefill_state.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_interactive_session_relaunch.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_interactive_test_verdict_backstop.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_interactive_token_attribution.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_interactive_worktree.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_issue_store_seam.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_issues_sync_status.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_liveness_auditor.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_liveness_notify.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_lock_contention_ratchet.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_machine_onboard.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_machine_pause.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_merge_queue.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_merge_verify.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_milestone_chat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_milestone_dispatch.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_milestone_gate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_milestone_order.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_milestone_seam.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_mock_author.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_model_tiering.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_models.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_models_config_labels.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_needs_attention.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_network.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_new_issue_chat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_next_release_tag.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_node_shim.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_notifier_baseline.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_notifier_cli.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_notifier_collect.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_notifier_config.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_notifier_drive_seam.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_notifier_isolation.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_notifier_predicate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_notifier_quiet_hours.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_notifier_service.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_notify.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_notify_drain.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_operational_defaults.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_overlap_fence.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_overlap_predict.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_packaged_deploy_units.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_parentage.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_paste_landed.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_phantom_heal_venv_independence_2570.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_pipeline.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_plan_followup_approve_plan_command.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_plan_followup_pr_command.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_plan_followup_review_command.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_plan_only.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_plan_parser.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_platform_paths.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_portal_bridge.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_portal_config.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_portal_store.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_portal_sync.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_pr_body_lint.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_prereqs.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_production_db_guard.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_progress.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_provider_seam.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_providers.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_providers_config_labels.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_providers_pty.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_quiet_hours.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_quiet_hours_store_2146.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_reap_merged_sessions.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_reap_stale_interactive_tick.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_reconcile.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_reconcile_branch.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_reconcile_completions.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_reconcile_late_agent_reports_2547.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_reconcile_merges.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_reconcile_no_agent_record.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_reconcile_tick.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_reconcile_usage_limit_done.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_refine_chat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_release_cordon_2101.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_release_cordon_daemon_leads_2176.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_release_cordon_deadlock_2240.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_release_cordon_stuck_2490.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_release_propagate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_release_propagate_threshold.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_release_roll_between_legs_2854.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_release_roll_window_handoff.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_release_verify.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_release_window.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_remote_auto_prune.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_remote_interactive_reaper.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_repo_add.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_repo_edit_2220.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_repo_graph_fleet_2237.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_repo_onboard_2220.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_report_result_push.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_reports.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_retry.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_retry_advisory_1606.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_retry_type_1636.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_revalidate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_review_end_review_without_verdict.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_review_parse_failure_diagnostic.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_review_reaffirm.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_review_state.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_review_verdict_backstop.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_review_verdict_override_audit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_review_verdict_relay.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_review_zero_commits.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_scoped_review_wiring.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_scorecard.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_self_health.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_serve.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_serve_app_board_trim.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_serve_rest_routes.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_session.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_slice_issue_attribution.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_smoke.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_smoke_live_checkout_restore.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_smoke_workflow.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_spend_ceiling.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_spend_ceiling_coordinator.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_split.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_split_work.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_sql_dialect.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_sqlite_connect_ratchet.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_stage_projection.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_stale_busy_reviewer_697.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_stalled_pipeline.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_state.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_state_review_findings_daemon.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_status_fleet_footer.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_stop_1567.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_store_contract.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_store_migrate.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_stuck.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_stuck_test_state_watchdog_2803.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_terminal_command.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_test_author.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_test_chat.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_test_orchestrator.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_test_report.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_test_verdict_parsing.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_test_verdict_transcript_floor.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_text_io_encoding_audit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_thin_client_board_audit.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_thin_client_config_load_1080.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_thin_client_daemon_routing_906.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_tmux_host.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_tmux_session.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_transcript_floor.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_usage.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_usage_limits.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_usage_rollup.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_venv_live_install_2121.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_version_single_source.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_watch.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_windows_job_is_a_real_gate_2000.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_worker_env_venv_isolation.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_worker_events.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_worker_image_pin_sync.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_worker_safety.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_worker_test_scoping.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_worktree.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_worktree_rmtree_chokepoint.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/test_write_parity.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tests/write_parity.py +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-33/audit_1039.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-33/contract.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-33/manifest.yml +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-33/mocks/audit-panel-detail.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-33/mocks/audit-panel-empty.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-33/mocks/audit-panel-filters.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-33/mocks/audit-panel-populated.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-38/contract.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-38/manifest.yml +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-38/mocks/plans-base.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-38/mocks/plans-detail-pane.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-38/mocks/plans-help-overlay.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-38/mocks/plans-palette.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-38/mocks/plans-rightclick-epic.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-38/mocks/plans-rightclick-header.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-38/mocks/plans-rightclick-stub.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-38/plans_detail_1122.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-38/plans_help_1124.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-38/plans_rightclick_1123.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/board_split_2288.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/board_tabs_2282.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/board_tabs_close_2283.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/contract.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/detail_substate_2285.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/manifest.yml +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/mocks/board-baseline-no-tabs.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/mocks/board-pinned-3-tabs.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/mocks/board-preview-tab.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/mocks/board-split-side-by-side.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/mocks/board-tab-context-menu.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/mocks/board-tabs-help-overlay.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/mocks/board-tabs-overflow.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/mocks/pipeline-tabs-independent.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/pipeline_tabs_2284.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/tabs_discoverability_2287.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-65/tabs_persistence_2286.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-67/approved_items_2532.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-67/contract.md +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-67/manifest.d/2533.yml +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-67/manifest.yml +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-67/mocks/approved-items-chat-opened.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-67/mocks/approved-items-context-menu.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-67/mocks/approved-items-detail.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-67/mocks/approved-items-empty.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-67/mocks/approved-items-populated.screen +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance/ms-67/pull_decomposition_2533.rs +0 -0
- {code_coordinator-0.5.294 → code_coordinator-0.5.296}/tui/tests/acceptance.rs +0 -0
|
@@ -73,21 +73,11 @@ acceptance:
|
|
|
73
73
|
run: "pytest tests/acceptance"
|
|
74
74
|
mock: "*.out"
|
|
75
75
|
capability: python
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
# nightly-gated; verified working on stable rustc (#1042).
|
|
85
|
-
# --features test-support: tui/Cargo.toml's `acceptance` test
|
|
86
|
-
# target has `required-features = ["test-support"]`, so a plain
|
|
87
|
-
# `cargo test` (no flag) silently skips building/running it
|
|
88
|
-
# altogether -- that gap is exactly what made this route
|
|
89
|
-
# unreachable from CI before #2180.
|
|
90
|
-
run: "cd tui && RUSTC_BOOTSTRAP=1 cargo test --test acceptance --features test-support -- -Z unstable-options --format json"
|
|
91
|
-
mock: "*.screen"
|
|
92
|
-
capability: rust
|
|
93
|
-
entrypoint: tui/tests/acceptance.rs
|
|
76
|
+
# #2899: the `tui/**` -> tui-tuidriver route is GONE from this file.
|
|
77
|
+
# The crate moved to the standalone `coord-tui` repo, taking its
|
|
78
|
+
# sealed entrypoint (`tui/tests/acceptance.rs` -> `tests/acceptance.rs`)
|
|
79
|
+
# and the `tui/tests/acceptance/ms-NN/` slices with it. coord-tui
|
|
80
|
+
# carries its own copy of this CI stand-in, keyed on its own repo
|
|
81
|
+
# name, so the route did not disappear -- it changed repos. This
|
|
82
|
+
# file is now single-route, and this repo's sealed set is exactly
|
|
83
|
+
# `tests/acceptance/**` again.
|
|
@@ -31,17 +31,15 @@ jobs:
|
|
|
31
31
|
# testpaths=["tests"]) was the one accidental gap. (ms-51 — Playwright,
|
|
32
32
|
# never .py either — left this repo entirely with the webapp, #2009.)
|
|
33
33
|
- run: pytest --ignore=tests/acceptance
|
|
34
|
-
# #
|
|
35
|
-
#
|
|
36
|
-
#
|
|
37
|
-
#
|
|
38
|
-
#
|
|
39
|
-
#
|
|
40
|
-
# exactly
|
|
41
|
-
#
|
|
42
|
-
|
|
43
|
-
if: matrix.python-version == '3.12'
|
|
44
|
-
run: COORD_TUI_SRC=. python scripts/codegen.py --rust --check
|
|
34
|
+
# #2899: the `COORD_TUI_SRC=. python scripts/codegen.py --rust --check`
|
|
35
|
+
# step that used to live here is GONE. It was #2897's explicit stand-in
|
|
36
|
+
# for the byte-comparison, held here only for as long as the crate did
|
|
37
|
+
# — that ADR (docs/ADR_COORD_TUI_CI.md) says in terms: "the day
|
|
38
|
+
# coord-tui gets its own checkout + CI, delete the step below (its
|
|
39
|
+
# replacement lives in that CI, installing `code-coordinator[server]`
|
|
40
|
+
# from PyPI exactly as `coord-web`'s does)". This is that day. There is
|
|
41
|
+
# no `generated.rs` in this checkout to compare against, so the step
|
|
42
|
+
# could only fail or — worse — pass vacuously.
|
|
45
43
|
# #2180: the cli-pytest sealed route (acceptance.drivers routes
|
|
46
44
|
# "coord/**" -> cli-pytest -> tests/acceptance/ms-37) run through the
|
|
47
45
|
# #2164 CI wrapper instead of a raw `pytest tests/acceptance` call, so
|
|
@@ -321,24 +319,21 @@ jobs:
|
|
|
321
319
|
# for it to run against, and a job that installs Node to build nothing is
|
|
322
320
|
# how the previous `acceptance`-on-every-push waste (#2389) started.
|
|
323
321
|
#
|
|
324
|
-
# #1941/#2897: `scripts/codegen.py` also generates coord-tui's RUST
|
|
325
|
-
# types (`--rust`). #2897 gave that half the SAME cross-repo shape as
|
|
326
|
-
# TS half above (`--out PATH` / `$COORD_TUI_SRC`, no fallback default,
|
|
327
|
-
# docs/ADR_COORD_TUI_CI.md)
|
|
328
|
-
#
|
|
329
|
-
#
|
|
330
|
-
#
|
|
331
|
-
#
|
|
332
|
-
#
|
|
333
|
-
# COORD_TUI_SRC=. python scripts/codegen.py --rust --check
|
|
322
|
+
# #1941/#2897/#2899: `scripts/codegen.py` also generates coord-tui's RUST
|
|
323
|
+
# wire types (`--rust`). #2897 gave that half the SAME cross-repo shape as
|
|
324
|
+
# the TS half above (`--out PATH` / `$COORD_TUI_SRC`, no fallback default,
|
|
325
|
+
# docs/ADR_COORD_TUI_CI.md), and #2899 moved the crate out — so the Rust
|
|
326
|
+
# byte-comparison is now, exactly like the TS one, EXCLUSIVELY the
|
|
327
|
+
# downstream repo's CI job. coord-tui's `.github/workflows/codegen-drift.yml`
|
|
328
|
+
# installs `code-coordinator[server]` from PyPI and runs
|
|
329
|
+
# `COORD_TUI_SRC=. python -m ... codegen --rust --check` against its own
|
|
330
|
+
# committed `src/app/types/generated.rs`.
|
|
334
331
|
#
|
|
335
|
-
#
|
|
332
|
+
# Nothing about that gate can run here: this checkout has no `generated.rs`
|
|
333
|
+
# to compare against. What stays is
|
|
334
|
+
# `tests/test_generated_rust_fixture.py`, narrowed by #2897 to what one
|
|
336
335
|
# checkout can prove — the generator runs and covers every schema — same
|
|
337
|
-
# as `tests/test_generated_types_fixture.py
|
|
338
|
-
# the committed `tui/src/app/types/generated.rs`. The day coord-tui gets
|
|
339
|
-
# its own checkout + CI, delete the step below (its replacement lives in
|
|
340
|
-
# that CI, installing `code-coordinator[server]` from PyPI exactly as
|
|
341
|
-
# `coord-web`'s does) — no pytest file to un-narrow.
|
|
336
|
+
# as `tests/test_generated_types_fixture.py`.
|
|
342
337
|
#
|
|
343
338
|
# The consumer-side INTEGER-backed-bool text-scraping guard
|
|
344
339
|
# (`coord/board_bool_guard.py`) that used to also read Rust source text
|
|
@@ -9,11 +9,6 @@ board_state.json
|
|
|
9
9
|
agent_setup.json
|
|
10
10
|
coordinator.yml
|
|
11
11
|
|
|
12
|
-
# Rust build artifacts (coord-tui)
|
|
13
|
-
tui/target/
|
|
14
|
-
tui/*.err
|
|
15
|
-
tui/*.out
|
|
16
|
-
|
|
17
12
|
# scripts/coord-test-runner.sh scratch output, written into the worktree it
|
|
18
13
|
# is pointed at. Harmless in the throwaway worktree the Test stage uses, but
|
|
19
14
|
# a worker who runs the runner against its own checkout and then `git add -A`
|
|
@@ -33,11 +28,6 @@ tui/*.out
|
|
|
33
28
|
.fallback.out
|
|
34
29
|
.coord-ci-home/
|
|
35
30
|
|
|
36
|
-
# #1973: opt-in local quadraui path override (see
|
|
37
|
-
# tui/cargo-config-local-quadraui.toml.example) — never commit a
|
|
38
|
-
# machine-local co-development override.
|
|
39
|
-
tui/.cargo/config.toml
|
|
40
|
-
|
|
41
31
|
# scratch $HOME created inside disposable worktrees by the CI-mode
|
|
42
32
|
# acceptance runner (scripts/coord-test-runner.sh) — never meant to
|
|
43
33
|
# leave the throwaway worktree, let alone land in git history (#2527).
|
|
@@ -111,23 +111,25 @@ activation from an earlier command carried forward.
|
|
|
111
111
|
The full suite exceeds Claude Code's 600s Bash ceiling on this repo and
|
|
112
112
|
duplicates the Test stage + CI, which both run it against your pushed SHA
|
|
113
113
|
regardless. Run just the file(s) that mirror what you changed — `pytest
|
|
114
|
-
tests/test_<module>.py` for a `coord/<module>.py` change
|
|
115
|
-
`tui/` scoped with a test-name filter for a `tui/**` change. To see what
|
|
114
|
+
tests/test_<module>.py` for a `coord/<module>.py` change. To see what
|
|
116
115
|
the Test stage itself would run for your diff (and confirm you're not
|
|
117
116
|
missing a suite), `scripts/coord-test-runner.sh <worktree> --print-routing`
|
|
118
117
|
computes the routing without actually building or testing anything.
|
|
119
118
|
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
119
|
+
> **#2899: the TUI is not in this repo.** The `coord-tui` crate that used to live
|
|
120
|
+
> under `tui/` is now the standalone [`JDonaghy/coord-tui`](https://github.com/JDonaghy/coord-tui)
|
|
121
|
+
> repo, checked out at `~/src/coord-tui`. Its rules — the `quadraui` git-rev pin, the
|
|
122
|
+
> `TuiDriver` harness, its sealed `tests/acceptance.rs` — live in **its** CLAUDE.md,
|
|
123
|
+
> per this file's own scope rule above: a rule that does not change what someone
|
|
124
|
+
> editing *this* repo does, does not belong here. If your briefing asks you to change
|
|
125
|
+
> Rust, you are in the wrong checkout — say so rather than recreating `tui/`.
|
|
126
|
+
>
|
|
127
|
+
> Two seams still cross the split, and both run **from coord-tui's CI, pulling
|
|
128
|
+
> `code-coordinator` from PyPI** — never the other way round: `scripts/codegen.py --rust`
|
|
129
|
+
> (its `src/app/types/generated.rs` wire types) and `scripts/gen_board_fixture.py`
|
|
130
|
+
> (its `tests/fixtures/board_sample.json`). Both take `--out PATH` or `$COORD_TUI_SRC`
|
|
131
|
+
> and deliberately have **no fallback default**, so a missing checkout is an error
|
|
132
|
+
> rather than a gate that passes against nothing.
|
|
131
133
|
|
|
132
134
|
## Key Design Decisions
|
|
133
135
|
|
|
@@ -163,7 +165,7 @@ The reviewer reads the rules and enforces them against the diff. It does not hav
|
|
|
163
165
|
## Rules for workers
|
|
164
166
|
|
|
165
167
|
- **Only the coordinator writes docs.** Workers must **not** update README, CHANGELOG, or shared documentation files — parallel doc edits cause merge conflicts. If a briefing lists docs in `files_forbidden`, respect it. An issue whose *entire* deliverable is a doc edit is coordinator work and should never have been dispatched; say so and stop rather than editing the doc.
|
|
166
|
-
- **Never edit the sealed suite — which is `tests/acceptance/**` *plus every declared driver entrypoint*.** Those suites are delivered read-only / run-only; write your own unit and internal tests instead. **In this repo the sealed set
|
|
168
|
+
- **Never edit the sealed suite — which is `tests/acceptance/**` *plus every declared driver entrypoint*.** Those suites are delivered read-only / run-only; write your own unit and internal tests instead. **In this repo, since #2899 moved `tui/` out, the sealed set is exactly `tests/acceptance/**`** — the `tui-tuidriver` `entrypoint:` that used to widen it (`tui/tests/acceptance.rs`, sealed as a whole file despite living nowhere near `tests/acceptance/`) went to the coord-tui repo with the crate, and is sealed *there*. The entrypoint rule itself has not changed, so do not assume a one-directory sealed set in any other repo. *Any* `type="work"` diff touching a sealed path is an **unconditional, mandatory `request-changes`** (`coord/review.py`), and the additive-only carve-out applies only to `test-author` / `mock-author` dispatches. The authoritative list is `AcceptanceConfig.sealed_paths()` in `coord/config.py` — it is derived from the configured driver `entrypoint:`, never hardcoded, which is why it followed the crate automatically; if a briefing's `## Files` names a sealed path, that briefing is wrong — say so and put the test somewhere else rather than following it.
|
|
167
169
|
- **Stay in file scope.** If you must touch a file outside your briefing, note it in your final message.
|
|
168
170
|
- **Commit and push before your final message** — even if the build is broken or you ran out of time. Uncommitted work is destroyed when the session ends.
|
|
169
171
|
- **`gh` is on the deny-list.** The coordinator owns all GitHub interaction; use plain `git`.
|
|
@@ -189,12 +191,6 @@ versus keep in the coordinator session, and the coordinator session's own
|
|
|
189
191
|
|
|
190
192
|
**How it runs:** black-box tests are part of the repo's normal test command, so the **Test stage** executes them on a capability-matched machine — `smoke_tests.capability_rules` route platform-specific suites to capable hardware (a GTK box; a machine with a browser). Favor the automated pre-review gate; the point is to trust the suite so manual/interactive smoke (incl. driving from a phone) is rarely needed.
|
|
191
193
|
|
|
192
|
-
### coord-tui — quadraui `TuiDriver` (harness shipped: #690 / #691)
|
|
193
|
-
- Drives the whole app through the real `event → handle → render` path against ratatui's headless `TestBackend` and asserts on the screen grid. `cargo test`-native, deterministic, no TTY.
|
|
194
|
-
- `CoordApp` implements quadraui's `ShellApp`, so use `quadraui::tui::testing::driver_with_shell(app, CoordApp::shell_config(), w, h)`. API: `find("text")` → coords, `click(x, y)`, `press`, `type_char`, `screen()`, `screen_contains(needle)`. **Locate targets with `find` — never hardcode coordinates.**
|
|
195
|
-
- **Reuse the existing fixtures** — `make_test_app(data: BoardData) -> CoordApp` (and `make_app_with_assignments`, `make_app_with_one_completed_issue`, …) in `tui/src/app.rs` build a full app from in-memory `BoardData`, no live daemon. Put the tests **in-crate** (`#[cfg(test)]`), **not** in `tui/tests/` — the fixtures are `#[cfg(test)]`/private and an integration-test crate can't see them.
|
|
196
|
-
- Limit: `TuiDriver` renders to `TestBackend`, so it does **not** parse real ANSI — terminal-protocol bugs (raw-mode, SGR mouse, the embedded `claude` PTY pane) are out of reach and still need a live smoke. A native pty + vt100 tier is tracked in quadraui#302 (unbuilt).
|
|
197
|
-
|
|
198
194
|
### coord web (Phone Control Center)
|
|
199
195
|
- The phone web app lives in `coord/dashboard/webapp/` (React / Vite / TS PWA, served by `coord/dashboard/server.py`). **Build the bundle before first use** — `dist/` is gitignored: `npm install && npm run build` from `coord/dashboard/webapp/`, re-run after pulling changes to `src/`. The server falls back to the legacy `index.html` when `dist/` is absent.
|
|
200
196
|
- **Vitest unit tests** live in `coord/dashboard/webapp/src/components/__tests__/` (`npm test`). **Playwright E2E** specs live in `coord/dashboard/webapp/e2e/` (`npm run test:e2e`) and are the acceptance bar — browsers headless-test more cleanly than terminals, so lean on this gate rather than interactive smoke.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: code-coordinator
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.296
|
|
4
4
|
Summary: Coordinate Claude Code workers across multiple machines and repos.
|
|
5
5
|
Author-email: John Donaghy <johnfdonaghy@gmail.com>
|
|
6
6
|
License-Expression: LicenseRef-FSL-1.1-MIT
|
|
@@ -282,7 +282,8 @@ coord tui update # downloads the release binary matching `coord --version`
|
|
|
282
282
|
coord tui status # check the installed version against the coordinator's
|
|
283
283
|
```
|
|
284
284
|
|
|
285
|
-
(Building from source is only for developing the TUI itself
|
|
285
|
+
(Building from source is only for developing the TUI itself, and it lives in its own
|
|
286
|
+
repo since #2899: `git clone https://github.com/JDonaghy/coord-tui && cd coord-tui && cargo build`.)
|
|
286
287
|
|
|
287
288
|
The whole lifecycle can also be driven as **human-attended interactive sessions** launched from
|
|
288
289
|
a pipeline row's right-click menu — a testing agent, a reviewer, a merge agent, or a fix worker,
|
|
@@ -240,7 +240,8 @@ coord tui update # downloads the release binary matching `coord --version`
|
|
|
240
240
|
coord tui status # check the installed version against the coordinator's
|
|
241
241
|
```
|
|
242
242
|
|
|
243
|
-
(Building from source is only for developing the TUI itself
|
|
243
|
+
(Building from source is only for developing the TUI itself, and it lives in its own
|
|
244
|
+
repo since #2899: `git clone https://github.com/JDonaghy/coord-tui && cd coord-tui && cargo build`.)
|
|
244
245
|
|
|
245
246
|
The whole lifecycle can also be driven as **human-attended interactive sessions** launched from
|
|
246
247
|
a pipeline row's right-click menu — a testing agent, a reviewer, a merge agent, or a fix worker,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: code-coordinator
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.296
|
|
4
4
|
Summary: Coordinate Claude Code workers across multiple machines and repos.
|
|
5
5
|
Author-email: John Donaghy <johnfdonaghy@gmail.com>
|
|
6
6
|
License-Expression: LicenseRef-FSL-1.1-MIT
|
|
@@ -282,7 +282,8 @@ coord tui update # downloads the release binary matching `coord --version`
|
|
|
282
282
|
coord tui status # check the installed version against the coordinator's
|
|
283
283
|
```
|
|
284
284
|
|
|
285
|
-
(Building from source is only for developing the TUI itself
|
|
285
|
+
(Building from source is only for developing the TUI itself, and it lives in its own
|
|
286
|
+
repo since #2899: `git clone https://github.com/JDonaghy/coord-tui && cd coord-tui && cargo build`.)
|
|
286
287
|
|
|
287
288
|
The whole lifecycle can also be driven as **human-attended interactive sessions** launched from
|
|
288
289
|
a pipeline row's right-click menu — a testing agent, a reviewer, a merge agent, or a fix worker,
|
|
@@ -17,7 +17,6 @@ pyproject.toml
|
|
|
17
17
|
.github/coord-ci-acceptance.yml
|
|
18
18
|
.github/ISSUE_TEMPLATE/bug_report.md
|
|
19
19
|
.github/workflows/auto-release.yml
|
|
20
|
-
.github/workflows/cargo-test.yml
|
|
21
20
|
.github/workflows/publish.yml
|
|
22
21
|
.github/workflows/test.yml
|
|
23
22
|
code_coordinator.egg-info/PKG-INFO
|
|
@@ -341,6 +340,7 @@ scripts/codegen.py
|
|
|
341
340
|
scripts/coord-test-runner.sh
|
|
342
341
|
scripts/coord-venv-rollback.sh
|
|
343
342
|
scripts/drive-batch.sh
|
|
343
|
+
scripts/extract-coord-tui.sh
|
|
344
344
|
scripts/fleet_watchdog.py
|
|
345
345
|
scripts/gen_board_fixture.py
|
|
346
346
|
scripts/gen_mock_index.py
|
|
@@ -361,6 +361,10 @@ scripts/azure-workers/provision-worker.sh
|
|
|
361
361
|
scripts/azure-workers/scrub-and-generalize.sh
|
|
362
362
|
scripts/azure-workers/tailnet-acl.hujson
|
|
363
363
|
scripts/azure-workers/verify-github-token.sh
|
|
364
|
+
scripts/coord-tui-scaffold/CLAUDE.md
|
|
365
|
+
scripts/coord-tui-scaffold/.github/coord-ci-acceptance.yml
|
|
366
|
+
scripts/coord-tui-scaffold/.github/workflows/cargo-test.yml
|
|
367
|
+
scripts/coord-tui-scaffold/.github/workflows/codegen-drift.yml
|
|
364
368
|
tests/SMOKE_SET.md
|
|
365
369
|
tests/__init__.py
|
|
366
370
|
tests/backends.py
|
|
@@ -799,47 +803,7 @@ tests/fixtures/test_report/pytest_error_string_in_body.txt
|
|
|
799
803
|
tests/fixtures/test_report/pytest_internal_error.txt
|
|
800
804
|
tests/fixtures/test_report/pytest_mixed_failures.txt
|
|
801
805
|
tests/fixtures/test_report/pytest_no_parseable_failures.txt
|
|
802
|
-
tui/Cargo.lock
|
|
803
|
-
tui/Cargo.toml
|
|
804
|
-
tui/cargo-config-local-quadraui.toml.example
|
|
805
|
-
tui/.github/workflows/release-tui.yml
|
|
806
|
-
tui/src/commands.rs
|
|
807
|
-
tui/src/lib.rs
|
|
808
|
-
tui/src/main.rs
|
|
809
|
-
tui/src/settings.rs
|
|
810
|
-
tui/src/app/approved.rs
|
|
811
|
-
tui/src/app/audit.rs
|
|
812
|
-
tui/src/app/chat.rs
|
|
813
|
-
tui/src/app/data.rs
|
|
814
|
-
tui/src/app/dialogs.rs
|
|
815
|
-
tui/src/app/doc_tabs.rs
|
|
816
|
-
tui/src/app/drive.rs
|
|
817
|
-
tui/src/app/drive_queue.rs
|
|
818
|
-
tui/src/app/escalation.rs
|
|
819
|
-
tui/src/app/events.rs
|
|
820
|
-
tui/src/app/fixtures.rs
|
|
821
|
-
tui/src/app/fleet_health.rs
|
|
822
|
-
tui/src/app/fleet_sessions.rs
|
|
823
|
-
tui/src/app/fleet_terminals.rs
|
|
824
|
-
tui/src/app/format.rs
|
|
825
|
-
tui/src/app/milestone_dag.rs
|
|
826
|
-
tui/src/app/mod.rs
|
|
827
|
-
tui/src/app/msv.rs
|
|
828
|
-
tui/src/app/pipeline.rs
|
|
829
|
-
tui/src/app/plans.rs
|
|
830
|
-
tui/src/app/render.rs
|
|
831
|
-
tui/src/app/reports.rs
|
|
832
|
-
tui/src/app/sessions.rs
|
|
833
|
-
tui/src/app/settings_ui.rs
|
|
834
|
-
tui/src/app/sidebar.rs
|
|
835
|
-
tui/src/app/terminal.rs
|
|
836
|
-
tui/src/app/tests.rs
|
|
837
|
-
tui/src/app/types.rs
|
|
838
|
-
tui/src/app/workspace.rs
|
|
839
|
-
tui/src/app/types/generated.rs
|
|
840
|
-
tui/src/bin/gtk.rs
|
|
841
806
|
tui/tests/acceptance.rs
|
|
842
|
-
tui/tests/cli.rs
|
|
843
807
|
tui/tests/acceptance/ms-33/audit_1039.rs
|
|
844
808
|
tui/tests/acceptance/ms-33/contract.md
|
|
845
809
|
tui/tests/acceptance/ms-33/manifest.yml
|
|
@@ -885,5 +849,4 @@ tui/tests/acceptance/ms-67/mocks/approved-items-chat-opened.screen
|
|
|
885
849
|
tui/tests/acceptance/ms-67/mocks/approved-items-context-menu.screen
|
|
886
850
|
tui/tests/acceptance/ms-67/mocks/approved-items-detail.screen
|
|
887
851
|
tui/tests/acceptance/ms-67/mocks/approved-items-empty.screen
|
|
888
|
-
tui/tests/acceptance/ms-67/mocks/approved-items-populated.screen
|
|
889
|
-
tui/tests/fixtures/board_sample.json
|
|
852
|
+
tui/tests/acceptance/ms-67/mocks/approved-items-populated.screen
|
{code_coordinator-0.5.294 → code_coordinator-0.5.296}/code_coordinator.egg-info/scm_file_list.json
RENAMED
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
".github/ISSUE_TEMPLATE/bug_report.md",
|
|
11
11
|
".github/coord-ci-acceptance.yml",
|
|
12
12
|
".github/workflows/auto-release.yml",
|
|
13
|
-
".github/workflows/cargo-test.yml",
|
|
14
13
|
".github/workflows/publish.yml",
|
|
15
14
|
".github/workflows/test.yml",
|
|
16
15
|
".gitignore",
|
|
@@ -343,8 +342,13 @@
|
|
|
343
342
|
"scripts/check_gh_argv_containment.py",
|
|
344
343
|
"scripts/codegen.py",
|
|
345
344
|
"scripts/coord-test-runner.sh",
|
|
345
|
+
"scripts/coord-tui-scaffold/.github/coord-ci-acceptance.yml",
|
|
346
|
+
"scripts/coord-tui-scaffold/.github/workflows/cargo-test.yml",
|
|
347
|
+
"scripts/coord-tui-scaffold/.github/workflows/codegen-drift.yml",
|
|
348
|
+
"scripts/coord-tui-scaffold/CLAUDE.md",
|
|
346
349
|
"scripts/coord-venv-rollback.sh",
|
|
347
350
|
"scripts/drive-batch.sh",
|
|
351
|
+
"scripts/extract-coord-tui.sh",
|
|
348
352
|
"scripts/fleet_watchdog.py",
|
|
349
353
|
"scripts/gen_board_fixture.py",
|
|
350
354
|
"scripts/gen_mock_index.py",
|
|
@@ -793,45 +797,6 @@
|
|
|
793
797
|
"tests/test_worktree_rmtree_chokepoint.py",
|
|
794
798
|
"tests/test_write_parity.py",
|
|
795
799
|
"tests/write_parity.py",
|
|
796
|
-
"tui/.github/workflows/release-tui.yml",
|
|
797
|
-
"tui/Cargo.lock",
|
|
798
|
-
"tui/Cargo.toml",
|
|
799
|
-
"tui/cargo-config-local-quadraui.toml.example",
|
|
800
|
-
"tui/src/app/approved.rs",
|
|
801
|
-
"tui/src/app/audit.rs",
|
|
802
|
-
"tui/src/app/chat.rs",
|
|
803
|
-
"tui/src/app/data.rs",
|
|
804
|
-
"tui/src/app/dialogs.rs",
|
|
805
|
-
"tui/src/app/doc_tabs.rs",
|
|
806
|
-
"tui/src/app/drive.rs",
|
|
807
|
-
"tui/src/app/drive_queue.rs",
|
|
808
|
-
"tui/src/app/escalation.rs",
|
|
809
|
-
"tui/src/app/events.rs",
|
|
810
|
-
"tui/src/app/fixtures.rs",
|
|
811
|
-
"tui/src/app/fleet_health.rs",
|
|
812
|
-
"tui/src/app/fleet_sessions.rs",
|
|
813
|
-
"tui/src/app/fleet_terminals.rs",
|
|
814
|
-
"tui/src/app/format.rs",
|
|
815
|
-
"tui/src/app/milestone_dag.rs",
|
|
816
|
-
"tui/src/app/mod.rs",
|
|
817
|
-
"tui/src/app/msv.rs",
|
|
818
|
-
"tui/src/app/pipeline.rs",
|
|
819
|
-
"tui/src/app/plans.rs",
|
|
820
|
-
"tui/src/app/render.rs",
|
|
821
|
-
"tui/src/app/reports.rs",
|
|
822
|
-
"tui/src/app/sessions.rs",
|
|
823
|
-
"tui/src/app/settings_ui.rs",
|
|
824
|
-
"tui/src/app/sidebar.rs",
|
|
825
|
-
"tui/src/app/terminal.rs",
|
|
826
|
-
"tui/src/app/tests.rs",
|
|
827
|
-
"tui/src/app/types.rs",
|
|
828
|
-
"tui/src/app/types/generated.rs",
|
|
829
|
-
"tui/src/app/workspace.rs",
|
|
830
|
-
"tui/src/bin/gtk.rs",
|
|
831
|
-
"tui/src/commands.rs",
|
|
832
|
-
"tui/src/lib.rs",
|
|
833
|
-
"tui/src/main.rs",
|
|
834
|
-
"tui/src/settings.rs",
|
|
835
800
|
"tui/tests/acceptance.rs",
|
|
836
801
|
"tui/tests/acceptance/ms-33/audit_1039.rs",
|
|
837
802
|
"tui/tests/acceptance/ms-33/contract.md",
|
|
@@ -878,8 +843,6 @@
|
|
|
878
843
|
"tui/tests/acceptance/ms-67/mocks/approved-items-detail.screen",
|
|
879
844
|
"tui/tests/acceptance/ms-67/mocks/approved-items-empty.screen",
|
|
880
845
|
"tui/tests/acceptance/ms-67/mocks/approved-items-populated.screen",
|
|
881
|
-
"tui/tests/acceptance/ms-67/pull_decomposition_2533.rs"
|
|
882
|
-
"tui/tests/cli.rs",
|
|
883
|
-
"tui/tests/fixtures/board_sample.json"
|
|
846
|
+
"tui/tests/acceptance/ms-67/pull_decomposition_2533.rs"
|
|
884
847
|
]
|
|
885
848
|
}
|
|
@@ -325,12 +325,13 @@ def tui_update(
|
|
|
325
325
|
click.echo(
|
|
326
326
|
f"refusing to overwrite {dest_path}: it reports version "
|
|
327
327
|
f"{DEV_BUILD_SENTINEL_VERSION!r}, the sentinel a locally "
|
|
328
|
-
"`cargo build`'d coord-tui always carries (tui
|
|
328
|
+
"`cargo build`'d coord-tui always carries (coord-tui's "
|
|
329
|
+
"Cargo.toml "
|
|
329
330
|
"committed version is only stamped for real in CI release "
|
|
330
331
|
"builds). This looks like a dev build someone is iterating "
|
|
331
332
|
"on -- pass --force to overwrite it anyway, or keep "
|
|
332
|
-
"building it yourself:
|
|
333
|
-
f"target/debug/coord-tui {dest_path}",
|
|
333
|
+
"building it yourself: from a coord-tui checkout, "
|
|
334
|
+
f"cargo build && cp target/debug/coord-tui {dest_path}",
|
|
334
335
|
err=True,
|
|
335
336
|
)
|
|
336
337
|
sys.exit(3)
|
|
@@ -1984,14 +1984,23 @@ class HealthConfig:
|
|
|
1984
1984
|
# exists because it was found three releases stale on 2026-07-29.
|
|
1985
1985
|
cli_venv_python: str | None = None
|
|
1986
1986
|
# Absolute path to the built coord-tui binary. None → ~/.local/bin/coord-tui
|
|
1987
|
-
# (README: `
|
|
1987
|
+
# (coord-tui's README: `cargo build && cp target/debug/coord-tui
|
|
1988
1988
|
# ~/.local/bin/coord-tui`).
|
|
1989
1989
|
tui_binary_path: str | None = None
|
|
1990
|
-
# Directory holding the tui
|
|
1991
|
-
#
|
|
1990
|
+
# Directory holding the coord-tui Rust sources the binary was built from
|
|
1991
|
+
# (#2899; before that split the crate lived at `tui/` inside THIS repo).
|
|
1992
|
+
# None → `<checkout>/src` for this machine's `coord-tui` checkout,
|
|
1993
|
+
# discovered the same way `coord_tui_checkout` is (see
|
|
1994
|
+
# `coord.health.checks.deploy_lane_facts.resolve_coord_tui_checkout`),
|
|
1995
|
+
# falling back to the pre-split `<checkout>/tui/src`.
|
|
1992
1996
|
# Deliberately points at `src/`, not the crate root: rooting the mtime walk
|
|
1993
1997
|
# above `target/` would sweep a multi-GB build dir on every refresh.
|
|
1994
1998
|
tui_source_dir: str | None = None
|
|
1999
|
+
# Root of a local `coord-tui` checkout (#2899). None → discover it from
|
|
2000
|
+
# `repo_paths`/`ctx.checkouts` (a checkout named `coord-tui`, else one
|
|
2001
|
+
# carrying `src/app/data.rs`). Same convention as the lanes above: None
|
|
2002
|
+
# means "discover it", never "disable the lane".
|
|
2003
|
+
coord_tui_checkout: str | None = None
|
|
1995
2004
|
# Absolute path to the live `coord web --dist` bundle (#1834 lane 5).
|
|
1996
2005
|
# None → ~/coord-web-dist — the symlink `deploy/coord-web-dist-build.timer`
|
|
1997
2006
|
# atomically repoints at each new release (#1543).
|
|
@@ -3601,6 +3610,7 @@ _HEALTH_OPT_STR_FIELDS: tuple[str, ...] = (
|
|
|
3601
3610
|
"cli_venv_python",
|
|
3602
3611
|
"tui_binary_path",
|
|
3603
3612
|
"tui_source_dir",
|
|
3613
|
+
"coord_tui_checkout",
|
|
3604
3614
|
"deploy_dir",
|
|
3605
3615
|
"systemd_user_dir",
|
|
3606
3616
|
"webapp_dist_path",
|
|
@@ -3759,18 +3759,29 @@ def _reconcile_blocked(
|
|
|
3759
3759
|
except a CONFIRMED-clear reading OR a probe that came back unreadable
|
|
3760
3760
|
(#2806), which is deliberate: a `blocked` entry this sweep cannot say
|
|
3761
3761
|
anything new about must render EXACTLY as it did before #2230 existed.
|
|
3762
|
-
|
|
3762
|
+
Four ways to land there:
|
|
3763
3763
|
|
|
3764
3764
|
* the block is PERMANENT (:func:`is_permanent_block_reason`) — #1844's
|
|
3765
3765
|
guard refusal or #2019's dead end — neither of which any amount of
|
|
3766
3766
|
re-checking can ever change;
|
|
3767
|
+
* the block is `_resolve_prereqs`'s own unsatisfiable ``after=`` verdict
|
|
3768
|
+
(:func:`_is_unsatisfiable_prereq_reason`, #2935) — a `waiting` entry
|
|
3769
|
+
that never reached `running` has no assignment and no branch, so
|
|
3770
|
+
there is categorically no merge-queue row for THIS sweep to have any
|
|
3771
|
+
opinion about; the entry's fate is `_reconcile_blocked_after`'s alone
|
|
3772
|
+
to decide, from the ``after=`` graph, on this or a later tick. Checked
|
|
3773
|
+
— and returned from — before :func:`_blocked_gate_reading` even runs,
|
|
3774
|
+
specifically so :func:`_reconcile_blocked_unreadable` never gets the
|
|
3775
|
+
chance to overwrite `last_reason` with a merge-gate "could not read"
|
|
3776
|
+
sentence and clobber the one marker `_reconcile_blocked_after` needs
|
|
3777
|
+
to recognise this row again next tick — see #2935 for the incident a
|
|
3778
|
+
missing version of this branch caused;
|
|
3767
3779
|
* there is no evidence either way (:func:`_blocked_gate_reading` returns
|
|
3768
3780
|
``None``) AND :func:`_reconcile_blocked_unreadable` also has nothing
|
|
3769
|
-
to add —
|
|
3770
|
-
|
|
3771
|
-
|
|
3772
|
-
|
|
3773
|
-
would be;
|
|
3781
|
+
to add — a dispatch-time failure (#2589's two per-run shapes) has
|
|
3782
|
+
nothing this sweep can cheaply re-check, and guessing would be
|
|
3783
|
+
exactly the "worse than nothing" sweep the issue warns a naive
|
|
3784
|
+
"retry everything" pass would be;
|
|
3774
3785
|
* the gate is CONFIRMED still shut — the common, honest outcome for a
|
|
3775
3786
|
`blocked` entry that has not in fact recovered yet.
|
|
3776
3787
|
|
|
@@ -3801,6 +3812,58 @@ def _reconcile_blocked(
|
|
|
3801
3812
|
"""
|
|
3802
3813
|
if is_permanent_block_reason(entry.last_reason):
|
|
3803
3814
|
return None
|
|
3815
|
+
if _is_unsatisfiable_prereq_reason(entry.last_reason):
|
|
3816
|
+
# #2935: this entry's ONLY `blocked` cause is `_resolve_prereqs`'s
|
|
3817
|
+
# own after= verdict (step 4's launch walk, or its #2362/#2756
|
|
3818
|
+
# sibling `_reconcile_blocked_after`, called immediately before this
|
|
3819
|
+
# function in the same per-tick loop) — a `waiting` entry that never
|
|
3820
|
+
# reached `running` at all (see `_resolve_prereqs`'s own comment:
|
|
3821
|
+
# "attempts is deliberately NOT incremented: nothing was ever
|
|
3822
|
+
# launched for this entry"). A never-dispatched entry has no
|
|
3823
|
+
# assignment and no branch, so there is no merge-queue row for
|
|
3824
|
+
# #2230's gate sweep to have ANY opinion about — a merge gate cannot
|
|
3825
|
+
# exist for something that was never built, and probing for one
|
|
3826
|
+
# anyway is a category error, not a failed probe.
|
|
3827
|
+
#
|
|
3828
|
+
# This must be checked BEFORE `_blocked_gate_reading`/
|
|
3829
|
+
# `_reconcile_blocked_unreadable` below, not folded into their "no
|
|
3830
|
+
# evidence" handling: `_reconcile_blocked_unreadable` WRITES
|
|
3831
|
+
# `last_reason` the instant the shell's live probe was attempted and
|
|
3832
|
+
# came back with no key (`live_blocked_unreadable`) — and doing that
|
|
3833
|
+
# here would CLOBBER this exact marker text, which is the ONLY
|
|
3834
|
+
# signal `_reconcile_blocked_after` uses (both here and on every
|
|
3835
|
+
# future tick) to recognise this row as an after=-caused block worth
|
|
3836
|
+
# re-diagnosing at all. The claude-coordinator#2935 incident: five
|
|
3837
|
+
# dependents whose prerequisite had already landed stayed `blocked`
|
|
3838
|
+
# for 178-207 consecutive ticks apiece, because the FIRST tick after
|
|
3839
|
+
# they became re-evaluable this way overwrote their own "will never
|
|
3840
|
+
# satisfy"/"not queued, not merged and not open" text with this
|
|
3841
|
+
# sweep's "no merge-queue row ... could not be read" sentence —
|
|
3842
|
+
# after which `_reconcile_blocked_after`'s guard could never
|
|
3843
|
+
# recognise the row again, even once the prerequisite genuinely
|
|
3844
|
+
# landed. Bailing out here, before any write, keeps the marker
|
|
3845
|
+
# intact for as many ticks as it takes the after= graph to actually
|
|
3846
|
+
# clear — the entry's fate stays entirely `_reconcile_blocked_
|
|
3847
|
+
# after`'s to decide, exactly as the issue's "Expected behaviour"
|
|
3848
|
+
# asks: answered from the after= graph, never from a merge-gate
|
|
3849
|
+
# probe.
|
|
3850
|
+
#
|
|
3851
|
+
# Deliberately a text match on the SAME two verdict shapes
|
|
3852
|
+
# `_reconcile_blocked_after` itself already trusts to gate its own
|
|
3853
|
+
# resume — not the #2589/#2635 per-run dispatch markers
|
|
3854
|
+
# (`is_dispatch_failure_reason`/`is_empty_branch_death_reason`),
|
|
3855
|
+
# which stay OUT of this function on purpose (see
|
|
3856
|
+
# `test_a_pre_dispatch_reason_text_does_not_suppress_a_real_
|
|
3857
|
+
# unreadable_note`): those two describe what ONE launch attempt
|
|
3858
|
+
# dispatched, which can go stale the moment an earlier attempt on
|
|
3859
|
+
# the SAME entry left real evidence behind, so only the shell's live
|
|
3860
|
+
# re-check (`live_blocked_unreadable`) is trusted to suppress them.
|
|
3861
|
+
# `_resolve_prereqs`'s unsatisfiable verdict carries no such
|
|
3862
|
+
# per-run ambiguity: it is only ever written for a `waiting` entry
|
|
3863
|
+
# that has NEVER reached `running`, so the "nothing was ever
|
|
3864
|
+
# dispatched" reading it encodes cannot be contradicted by an
|
|
3865
|
+
# earlier attempt the way a per-run marker can.
|
|
3866
|
+
return None
|
|
3804
3867
|
reading = _blocked_gate_reading(entry, facts, live_blocked_gate)
|
|
3805
3868
|
if reading is None:
|
|
3806
3869
|
return _reconcile_blocked_unreadable(entry, live_blocked_unreadable)
|