Add Evomi proxy gateway actors #18

Open
nsaspy wants to merge 1 commit from codex/17-proxy-gateway into master
Owner

Closes #17

Changes

  • Add a typed internal proxy gateway actor and a dedicated Evomi provider actor in the core Sento system.
  • Return rotating connection configurations, deterministic project-scoped sticky sessions, and explicit capability results; VPN configuration is unsupported.
  • Keep Evomi API keys in the x-apikey header, validate request and response boundaries, redact credential-bearing object printers, and avoid document/Rabbit persistence.
  • Document configuration, request modes, provider limits, and the internal caller API.

Verification at 5b6c9f8bb9

  • Required unit suite passed; proxy suite 6/6.
  • Service-backed integration passed: Valkey 25/25, CouchDB view 9/9, HTTP API 36/36.
  • Documentation coverage 896/896; Python contracts 22/22; schema lock, diff check, KB load, and task-specific Prolog verification passed.

Provider limits

Evomi chooses the exit IP when the returned proxy configuration is used. A session token can reuse an IP only on a best-effort basis during its configured lifetime; a fixed IP is not guaranteed. No live, credentialed or paid Evomi request was run. There is no documented Evomi VPN configuration API in this implementation. The API is internal to trusted server actors; project IDs are not checked against a project authorization registry.

Closes #17 ## Changes - Add a typed internal proxy gateway actor and a dedicated Evomi provider actor in the core Sento system. - Return rotating connection configurations, deterministic project-scoped sticky sessions, and explicit capability results; VPN configuration is unsupported. - Keep Evomi API keys in the `x-apikey` header, validate request and response boundaries, redact credential-bearing object printers, and avoid document/Rabbit persistence. - Document configuration, request modes, provider limits, and the internal caller API. ## Verification at 5b6c9f8bb9c9faee85e7cadf3377e462051071fe - Required unit suite passed; proxy suite 6/6. - Service-backed integration passed: Valkey 25/25, CouchDB view 9/9, HTTP API 36/36. - Documentation coverage 896/896; Python contracts 22/22; schema lock, diff check, KB load, and task-specific Prolog verification passed. ## Provider limits Evomi chooses the exit IP when the returned proxy configuration is used. A session token can reuse an IP only on a best-effort basis during its configured lifetime; a fixed IP is not guaranteed. No live, credentialed or paid Evomi request was run. There is no documented Evomi VPN configuration API in this implementation. The API is internal to trusted server actors; project IDs are not checked against a project authorization registry.
Add Evomi proxy gateway actors
Some checks failed
Docstring coverage / doc-coverage (pull_request) Failing after 59s
5b6c9f8bb9
Some checks failed
Docstring coverage / doc-coverage (pull_request) Failing after 59s
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin codex/17-proxy-gateway:codex/17-proxy-gateway
git switch codex/17-proxy-gateway

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch master
git merge --no-ff codex/17-proxy-gateway
git switch codex/17-proxy-gateway
git rebase master
git switch master
git merge --ff-only codex/17-proxy-gateway
git switch codex/17-proxy-gateway
git rebase master
git switch master
git merge --no-ff codex/17-proxy-gateway
git switch master
git merge --squash codex/17-proxy-gateway
git switch master
git merge --ff-only codex/17-proxy-gateway
git switch master
git merge codex/17-proxy-gateway
git push origin master
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starintel-labs/starintel-server!18
No description provided.