Skip to content

feat: select the strongest qualified effect verifier - #323

Open
abrichr wants to merge 11 commits into
mainfrom
agent/effect-verifier-candidates
Open

feat: select the strongest qualified effect verifier#323
abrichr wants to merge 11 commits into
mainfrom
agent/effect-verifier-candidates

Conversation

@abrichr

@abrichr abrichr commented Jul 30, 2026

Copy link
Copy Markdown
Member

Summary

Adds a public, configuration-driven selector for qualified effect verifiers. The runtime uses the strongest compatible verifier and refuses an unsafe configuration before actuation.

Scope

  • Adds the public selection interface and deployment configuration.
  • Keeps connector credentials as environment references.
  • Keeps application-specific connector recipes and empirical tuning out of the repository.
  • Documents the supported verifier contract and qualification checks.

Validation

  • uv run pytest -q tests/test_effect_verifier_candidates.py tests/test_effect_kit_config.py tests/test_replayer_api_actuator.py
  • uv run ruff check docs/EFFECT_KIT.md openadapt_flow/deployment.py openadapt_flow/runtime/effects/__init__.py openadapt_flow/runtime/effects/adapter.py openadapt_flow/runtime/effects/onscreen.py openadapt_flow/runtime/replayer.py tests/test_effect_kit_config.py tests/test_effect_verifier_candidates.py tests/test_replayer_api_actuator.py
  • git diff --check origin/main...HEAD

No hosted CI was started by this task.

@abrichr
abrichr force-pushed the agent/effect-verifier-candidates branch from de3ded9 to f1b1873 Compare July 31, 2026 14:01
abrichr added 2 commits July 31, 2026 10:32
Bind one managed Execute dispatch to the exact run, bundle, inputs, runtime, and control-plane origin. Keep the bearer token out of argv and the envelope. Refuse redirects, stale authority, and capability mismatch. Preserve ordinary customer-controlled jobs.
@abrichr
abrichr marked this pull request as ready for review August 2, 2026 09:42
abrichr added 2 commits August 2, 2026 13:39
A consequential remote pointer edge required GuardedRemotePointerActionBackend, so every opaque remote surface that can offer only the documented one-shot lease -- the no-DOM HTML5-canvas class that Citrix Workspace-web presents -- halted on its write step. The lease is the safety property; the typed receipt is retained evidence. Deliver through the lease when no typed receipt exists, keep the refusal for governed runs and qualification-fault proofs, and leave the result unlabeled so the outcome classifier still returns COMPLETED_UNVERIFIED rather than a production-eligible success. The canvas-nodom-ladder qualification is accepted 3/3 again on real CI.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant