Skip to content

estafeta 3.1.1: verify relay on Windows, Codex CLI, Antigravity; review round 3 - #4

Merged
pashbel merged 5 commits into
agent-relay-3.1.0from
relay-hardening-3.1.1
Oct 15, 2026
Merged

pashbel merged 5 commits into
agent-relay-3.1.0from
relay-hardening-3.1.1

Conversation

@pashbel

@pashbel pashbel commented Oct 15, 2026

Copy link
Copy Markdown
Collaborator

Stacked on #3. Closes the 3.1.0 "Not verified" items. Plan: docs/plans/relay-hardening.md. Draft while CI iterations and live checks run.

🤖 Generated with Claude Code

pashbel and others added 5 commits October 15, 2026 16:32
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…nose failed CLI workers

- Windows: keep the index file mode for changed files (os.access reports every
  file executable), so commits no longer stale DONE evidence; stop workers
  with CTRL_BREAK before taskkill so a running check can record itself.
- collect reports a CLI worker's exit code and stderr tail when no result
  block exists (seen live: gemini without login exits 41).
- scripts/golden/live_cli.py replays consult/write golden paths with a real
  provider CLI; codex exec 0.162.1 passed both live.
- Adapters: Codex must always pass --sandbox (user config may default to
  danger-full-access); Gemini lowers approval mode in untrusted folders.
- CI runs every suite even after a failure.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
On Windows the supervisor tracked only the leader, so a timed-out worker
counted as exited while its check runner was still recording, leaving the
check 'running' and its lock held. A job object now plays the role of the
POSIX process group: the supervisor waits for every descendant, sends
CTRL_BREAK first and terminates the job after the grace period. The runtime
descendant test now runs on Windows too, with a non-signalling PID probe.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… file

- A solo begin no longer supersedes a session in the same checkout that acted
  within SESSION_WORKFLOW_TAKEOVER_IDLE_MINUTES (default 30) or has open
  delegations; it joins in parallel and warns. Observed live: a separate T3
  thread's session-start took over the orchestrator and its claims.
- Supervisors pass SESSION_WORKFLOW_STOP_FILE to workers and write it before
  any signal, so a worker's check run stops its own check and records it
  abandoned even where signals cannot reach it (Windows without a console).
- The golden stub reports blocked when a required check does not pass, as
  the packet asks; no_process patterns are unique per run.
- Plan extended to 3.2.0 (provider policy, orchestrator hosts).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…elegate

- PROJECT.md gets a marked 'AI providers' table (provider, allowed modes,
  models). session-start asks the user once when status reports
  provider_policy: missing and records the answer; the template has the
  section.
- delegate start refuses without the table (providers_unset) and refuses any
  provider, mode or model outside it (provider_not_allowed); delegate
  providers shows the policy. Account-level IDs such as claude-pricefx are
  supported.
- Golden scenario provider-policy plays the first-use path end to end.
- This project's table: all available providers except the Claude (Pricefx)
  work account (user, 2026-10-15).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@pashbel
pashbel marked this pull request as ready for review October 15, 2026 15:41
@pashbel
pashbel merged commit 935dce9 into agent-relay-3.1.0 Oct 15, 2026
6 checks passed
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