Skip to content

seat launch: alias+effort resolution, GPT seats may commit, route pick honors lease reservations, Codex seat startup config - #13

Closed
aneym wants to merge 0 commit into
mainfrom
fix/seat-launch-p4
Closed

aneym wants to merge 0 commit into
mainfrom
fix/seat-launch-p4

Conversation

@aneym

@aneym aneym commented Oct 6, 2026

Copy link
Copy Markdown
Owner

Summary

  • P4 item 6: resolve effort aliases wherever their base resolves; install all four Sol aliases and honor explicit commit/push authorization in gpt-implementer.
  • P4 item 5: advisory picks consult shared reservations, exclude full candidate/reviewer capacity and log why; reserve remains the atomic launch gate.
  • P4 item 15: install a canonical network-enabled workspace-write home writer, disable inherited websocket settings, preserve local resume rollouts and ship the cx-bg archive-link removal patch.

Proof

All tests used env -u RAILS_CHECK_HOST and isolated HOME/data under /tmp.

  • Alias unit regression failed four cases before repair; alias/bridge/workflow/installer checks: 10 passed.
  • Real reservation refusal reproduced before repair; real pick/release regression passes after repair.
  • Old home writer reproduced network_access=false; real installed home writer and patched launcher dry checks pass.
  • Final focused router/alias tests: 80 passed in 65.29s.
  • Final integration/installer/lease/auditor checks: 22 passed in 20.56s.
  • Ruff app clients and changed Python files: all checks passed; py_compile and git diff --check passed.
  • OpenSpec specs: 40 passed, 0 failed; all three new changes pass strict validation.

Boundaries

No credentials read, no agent messages, no deployment, no restart. Cross-vendor review not run because the task forbids agent messages. Chromium Mach bootstrap SIGTRAP and live websocket/latency behavior remain source-reported/unverified; the settings and layout are proven, not runtime recovery. The original pick-only oracle was updated because it contradicted the explicitly requested new reservation-aware pick contract; admission/expiry/heartbeat checks are retained.

Deployment after merge

From the merged main checkout on each seat-launching machine:

python3 config/coding-agents/install-policy.py
patch --fuzz=0 --forward "$HOME/.local/bin/cx-bg" < patches/codex-seat/cx-bg.patch

Installer copies route, table, definitions and codex-seat-home.py to the managed destinations. No app runtime code changed, so lb-restart is not needed. Relaunch affected seats to pick up their new definition/home. Do not force a drifted launcher patch.

🤖 Generated with Claude Code

Author: Codex (Sol); committed by the orchestrator because the Codex sandbox cannot write the worktree git dir.

🤖 Generated with Claude Code

@aneym

aneym commented Oct 6, 2026

Copy link
Copy Markdown
Owner Author

PR #13 — fix round one

Changes

  • clients/route:2153: pick lease reads honor ROUTE_FIXTURE_DIR. Unknown or
    unavailable snapshots emit one fixed stderr diagnostic and no ledger row.
    Actual capacity skips still produce route_pick_lease_skip; reservation
    commands retain live-network behavior and atomic admission.
  • clients/route: fix both cited E501 violations, two additional E501 violations
    exposed by the requested command, and import ordering.
  • config/coding-agents/install-policy.py:400: line wrapping only; no behavior
    change, including no change to its file-swap policy.
  • Add subprocess fixture-isolation regression cases. Serve pool/model fixtures
    at the HTTP edge for real-reservation integration checks; forward lease reads
    to the real isolated agent-lb service. Existing scenario assertions are unchanged.
  • Update the existing lease-availability OpenSpec change.

Evidence

All commands used env -u RAILS_CHECK_HOST and
HOME=/tmp/seat-launch-p4-delivery/home, with repo .venv Python/Ruff.

.venv/bin/python -m pytest -q tests/unit/test_route_caller_choice.py tests/unit/test_open_factory_route.py tests/unit/test_seat_alias_effort.py tests/unit/test_install_policy_models.py tests/integration/test_route_pick_leases.py tests/integration/test_route_reservations.py tests/integration/test_codex_seat_home.py

Result: 25 passed in 27.42s, exit 0. Receipt: pytest.txt in this directory.
Original route code: six reported ledger regressions fail (before.txt), and both
new fixture-isolation cases fail at the selected-seat assertion (fixture-before.txt).

.venv/bin/ruff check clients/route config/coding-agents/*.py

Result: All checks passed!, exit 0 (ruff.txt). The changed integration files
also pass Ruff. py_compile clients/route and git diff --check pass.
OpenSpec validate --specs: 40 passed, 0 failed, with existing advisory
requirement-length warnings (openspec.txt).

Factory-runtime durability advisory

Confirmed using readlink only:

  • ~/.local/bin/cx-bg points to
    ~/.agent-rails/factory-runtime/bin/cx-bg.
  • ~/.agent-rails/workflows/codex-lab-home.py points to
    ~/.agent-rails/factory-runtime/workflows/codex-lab-home.py.

Consequently, the cx-bg patch and install-policy's file swap can be reverted by
the next agent-rails factory-runtime release. The source fix must also land
in agent-rails factory-runtime
to make these changes durable. This round does
not change install-policy's behavior or edit agent-rails.

Handoff

Proposed fix commit message:
fix(route): preserve pick ledgers and honor lease fixtures

Author vendor: OpenAI (Codex Sol). Fresh cross-vendor review remains for the
orchestrator; no agent messages were sent. Nothing staged, committed, pushed,
deployed, or restarted. Credentials were not read.

aneym added a commit that referenced this pull request Oct 6, 2026
Review fix round for PR #13: route pick no longer writes a
route_pick_leases_unknown ledger row when the lease lookup is unavailable
(one stderr diagnostic instead), pick_leases honors fixture mode so fixture
tests never read live reservations, two fixture-isolation regression tests,
and the E501 lines wrapped.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
aneym added a commit that referenced this pull request Oct 6, 2026
Review fix round for PR #13: route pick no longer writes a
route_pick_leases_unknown ledger row when the lease lookup is unavailable
(one stderr diagnostic instead), pick_leases honors fixture mode so fixture
tests never read live reservations, two fixture-isolation regression tests,
and the E501 lines wrapped.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@aneym aneym closed this Oct 6, 2026
@aneym
aneym force-pushed the fix/seat-launch-p4 branch from 1474ed3 to cdd7189 Compare October 6, 2026 23:12
@aneym

aneym commented Oct 6, 2026

Copy link
Copy Markdown
Owner Author

Landed on main as 31dba9b + cdd7189 (rebased onto bc6c6f8; closed by push). Re-review PASS at 1474ed3 (Sonnet verifier, author vendor openai; the Fable trailer is the committer, Codex wrote the fix). Deployed: install-policy.py run, cx-bg patch applied to the current factory-runtime release (backup .bak-pre-cdd71896); durable cx-bg fix goes to agent-rails factory-runtime.

🤖 Generated with Claude Code

@aneym
aneym deleted the fix/seat-launch-p4 branch October 20, 2026 15:11
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