feat(routing): add cheapest-capable local worker routing - #135
Conversation
Issue #134 final-head validation
The PR remains draft, open, and unmerged. |
Nobodyworld
left a comment
There was a problem hiding this comment.
Connector review found one release-blocking restart-compatibility gap.
CommandManifest now maps a new non-null updated_at column, but the additive startup compatibility routine does not add or backfill updated_at on an existing execution_command_manifests table. The base main schema has only created_at; Base.metadata.create_all() does not alter existing tables; and startup immediately calls ensure_manifests(), which selects the full ORM model. A repository database created by current main can therefore fail with a missing-column error during upgrade.
Correct this narrowly by either removing the unused manifest updated_at field or adding an idempotent additive migration/backfill. Add a regression that creates the prior manifest table shape, seeds or resolves a trusted manifest, runs lifespan startup twice, and proves manifest reads still work. Re-run the focused startup/routing suites and complete protected matrix. Keep PR #135 draft and unmerged until re-review.
No redesign of routing, scoring, quota, APIs, or worker behavior is requested.
Connector correction final-head validation
PR #135 remains draft, open, and unmerged. |
Nobodyworld
left a comment
There was a problem hiding this comment.
Final connector re-review of exact head bdc083446e3c3791be54fbfdc13e8d4a720f2812 found no remaining technical, security, migration, documentation, public-hygiene, or validation blocker.
The prior-schema blocker from review 4835888072 is resolved narrowly and correctly:
- the unused
CommandManifest.updated_atORM field was removed rather than inventing mutable timestamp semantics for immutable trusted manifests; - a file-backed current-
mainmanifest schema regression now runs lifespan twice, proves trusted-manifest insertion/lookup/listing, preserves one identity, and confirms routing tables/columns survive the upgrade; - the correction is limited to the living ExecPlan,
server/models.py, andserver/tests/test_execution_startup.py.
Exact-head hosted evidence is green: Commitlint 31241470808 and CI 31241470807; lint, typecheck, test, security, Secrets audit, Link check, Coverage, and strict Browser UI jobs all succeeded. Local evidence reports 571 passed, 5 platform-conditional skips, strict browser 2 passed with zero skips, 93% aggregate coverage with all 16 thresholds, and all quality/security/public-hygiene gates passing.
No review threads remain. GitHub does not permit self-approval by the PR author, so this verdict is recorded as a COMMENT review. PR #135 is ready for owner merge gating at this exact head but must remain unmerged until explicit authorization.
Completed
Issue #134 was completed by owner-authorized squash merge of this PR.
Delivered behavior
first_availableremains the omitted-policy compatibility default.cheapest_capabledeterministically selects the best fully eligible actively polling local worker.Final evidence
git diff --check, cleanup, and public hygiene passed;Review correction
The initial review found an existing-database restart incompatibility caused by an unused
CommandManifest.updated_atmapping. The final correction removed that field and added a file-backed prior-schema regression proving two successful startups, stable manifest identity/digest, no duplication, and preserved routing schema.This merge does not add paid-provider execution, MCP, browser/RPA workers, automatic approval, automatic merge, repository writes, or actual financial accounting.