Fix owner context loss after finalize; green the test suite
Owner continuity: - Seed a freshly created owner task with the previous task's latest owner final on a cold start after the previous task already closed, so a user reply to a finalized TASK_DONE no longer produces a "no context" answer. Activated for this deployment via PAIRED_CARRY_FORWARD_LATEST_OWNER_FINAL (.env); carried text is injected as clearly-marked background only. - Skip intermediate STEP_DONE outputs when picking the carry-forward anchor. Single-mode routing: - enforceRoomModeOnLease strips a stale reviewer/arbiter lease from a room switched back to single, preventing single-mode messages from stalling in the paired path on a stuck execution lease. Session auth / credentials: - Pre-sync Claude credentials into each session dir before the agent spawns. - Honor CLAUDE_CREDENTIALS_PATH in setup/login.ts (per-service isolation). - Add a relogin-required gate so a permanently logged-out claude-code room asks the user to re-login instead of spawning a doomed agent. Other: - Arbiter verdicts written in the user's language (verdict keyword stays EN). - status-dashboard chatName field; runtime-inventory credential path resolver. Tests (make suite fully green: 1595 pass / 3 skip): - service-routing: default owner is now the claude service and reviewer is codex-review; update the 7 failover/default expectations accordingly. - migrate-room-registrations: owner inferred as claude-code (configured OWNER_AGENT_TYPE) for a dual legacy room; reviewer becomes codex. - register: mock paired-workspace provisioning + reload signal (registration now provisions a workspace and hot-reloads); assert RELOADED status. - paired-execution-context: force a claude-code reviewer to exercise the Claude read-only branch regardless of the deployment default. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -126,7 +126,7 @@ describe('migrate room registrations step', () => {
|
||||
chat_jid: 'dc:legacy-room',
|
||||
room_mode: 'tribunal',
|
||||
mode_source: 'inferred',
|
||||
owner_agent_type: 'codex',
|
||||
owner_agent_type: 'claude-code',
|
||||
},
|
||||
]);
|
||||
expect(
|
||||
@@ -141,12 +141,12 @@ describe('migrate room registrations step', () => {
|
||||
{
|
||||
chat_jid: 'dc:legacy-room',
|
||||
role: 'owner',
|
||||
agent_type: 'codex',
|
||||
agent_type: 'claude-code',
|
||||
},
|
||||
{
|
||||
chat_jid: 'dc:legacy-room',
|
||||
role: 'reviewer',
|
||||
agent_type: 'claude-code',
|
||||
agent_type: 'codex',
|
||||
},
|
||||
]);
|
||||
expect(
|
||||
|
||||
Reference in New Issue
Block a user