feat: lift worker transport evidence-verification rejection#21
feat: lift worker transport evidence-verification rejection#21govindkavaturi-art merged 1 commit intomainfrom
Conversation
cueapi-worker 0.3.0 (released 2026-04-17 to PyPI) closes the worker- side evidence gap via CUEAPI_OUTCOME_FILE. The daemon reads the handler's per-run temp file after exit and merges the evidence fields into its outcome POST. All five verification modes now work on both transports. Changes: - app/services/cue_service.py: remove _check_transport_verification_combo and the two calls in create_cue + update_cue. Replace with info-level logging when a worker cue is configured with an evidence-requiring mode (breadcrumb for operators still running older cueapi-worker). - tests/test_transport_verification_combo.py: flip expected 400 → 201 on create, 400 → 200 on PATCH. Header comment documents the history. Two test classes renamed from WorkerEvidenceRejected* to WorkerEvidenceAccepted* / PatchTransitions::test_patch_worker_to_evidence_mode_accepted. - README.md: update transport-compatibility footnote to reflect the new accept-everything reality, with an upgrade hint for users on cueapi-worker < 0.3.0. - CHANGELOG: replace the "Restricted" entry (worker+evidence rejection) with a "Removed" entry describing the lift. Tests: 13/13 pass locally on the updated combo suite. Preconditions met: - cueapi-worker 0.3.0 published to PyPI (2026-04-17 22:04:39 UTC) - cueapi-core #18 merged to main (verification_mode column + rule engine in place to read verification_mode and produce outcome_state transitions) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Parity checkThis PR modifies files tracked in
Please confirm one of the following in a reply or PR description update:
This is a soft check — it does not block merge. The goal is visibility, not friction. See HOSTED_ONLY.md for the open-core policy. |
argus-qa-ai
left a comment
There was a problem hiding this comment.
Argus review — LGTM.
Preconditions confirmed met: cueapi-core #18 (verification_mode + rule engine) is on main, cueapi-worker 0.3.0 is on PyPI (2026-04-17).
Deletion is surgical — _check_transport_verification_combo, _EVIDENCE_REQUIRING_MODES, and _WORKER_COMPATIBLE_MODES fully removed with no orphaned callsites. Replaced with INFO-level logging breadcrumbs on both create and update paths — good for operators still on older workers. Tests correctly flipped from asserting 400 → 201/200 with history comment preserved. CHANGELOG and README accurate.
Minor note: in test assertion body['transport'] == 'worker' or body['callback']['transport'] == 'worker' — KeyError on the first branch would fall through to the second. Fine for test code, not a blocker.
All 5 CI checks green. Approved.
Summary
Unblocks worker-transport cues from using evidence-based verification modes (`require_external_id`, `require_result_url`, `require_artifacts`).
Preconditions (both now met)
Changes
Test plan
Behavior change for end users
🤖 Generated with Claude Code