Skip to content

E2E improvements: fix solo chats, two-user exchange screenshot, real agent conversation with TestLLM #43

Description

@rowan-stein

User Request

  1. Remove "Just you" solo chats — conversations must have exactly 2 participants. The current e2e tests create chats with only the caller, producing "Just you" entries.
  2. Two-user message exchange screenshot — show a conversation between two users with messages from both sides.
  3. Real agent conversation with TestLLM — use the existing simple-hello model on TestLLM to create a chat with a real agent (agynd + codex) and assert the agent's scripted response.

Specification

1. Fix solo chats in e2e tests

  • chat-detail.spec.ts and chats-list.spec.ts call createChat(page) without a second participant → falls back to self-only chat
  • Fix: these tests must create chats with a second participant (user B from multi-user fixtures, or an agent)
  • UI: remove "Just you" fallback in Chats.tsx, enforce at least one non-self participant in the new chat flow

2. Two-user exchange screenshot

  • chat-exchange.spec.ts already exchanges messages between user A and B
  • Add an Argos screenshot from user A's view showing both incoming and outgoing messages

3. Real agent conversation via TestLLM

Architecture: User sends message → Chat/Threads → agents-orchestrator detects unacked message → starts agent pod (agynd + codex via agent-init-codex) → codex calls TestLLM → agent sends response → user sees it.

TestLLM endpoint: https://testllm.dev/v1/org/agynio/suite/agn/responses
Model: simple-hello — user sends "hi", agent responds "Hi! How are you?"

Agent setup (via API in test):

  • Create organization
  • Create agent with:
    • image: any base (e.g., alpine:3.21)
    • initImage: ghcr.io/agynio/agent-init-codex:0.1.0
    • Per-agent env vars: OPENAI_BASE_URL, OPENAI_API_KEY, THREADS_ADDRESS, NOTIFICATIONS_ADDRESS, TEAMS_ADDRESS
    • Model field: any UUID (unused by codex path, codex reads OPENAI_BASE_URL)

E2e test flow:

  1. Create org, create agent with env vars pointing to TestLLM
  2. Create chat with agent as participant
  3. Send "hi"
  4. Poll GetMessages until agent responds (with timeout)
  5. Assert response contains "Hi! How are you?"
  6. Argos screenshot

Gateway RPCs needed in chat-api.ts:

  • AgentsGateway/CreateEnv — set env vars on agent
  • AgentsGateway/CreateInitScript — (if needed for config file)
  • Existing: CreateAgent, CreateChat, SendMessage, GetMessages

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions