Skip to content

bench canary: the chat door waits for a status line dev no longer spells, so every chat cell records noframe #1034

Description

@santoshkumarradha

What happens

bench/canary/lib/chat.sh waits for the literal ' · idle' on the v3 status line before it types the brief, and chat_asked_frame looks for [a] accept on a card. Neither string exists on dev (f08201024) any more. Every chat cell therefore records noframe after 61 s having spent nothing, and a grid run against dev reports a wall of empty cells that look like model failures.

Replication a stranger can run

make build
AFORGE_MODE=chat bench/run.sh --issue pallets/click#3481 --model deepseek/deepseek-v4.1-flash --runs 1
grep -l noframe bench/out/*/cell.json

Compare with tmux capture-pane of a live bin/aforge chat: the idle status line no longer contains · idle.

Acceptance, end to end first

A chat cell against dev reaches the model: cell.json carries a non-zero cost and calls.jsonl has at least one priced row, on the same command above. The needles the canary waits for come out of the same table the e2e suite reads (internal/e2e/tuiwords_test.go) or a sibling that an untagged test checks against internal/tui3 sources, so the next respelling names the canary instead of silently emptying the grid.

Found by the 2026-09-14 PlanDB A/B grid; the lane patched chat.sh locally to run at all (spark:~/af-plandb-evidence/rig-local-patch.diff). Related: #1028 (fix-branch leak in fresh_clone).


Drafted with CodeAF · reviewed and owned by the author

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

    good first issueSmall and isolated, the acceptance already written, no ruling owed; a safe first pull request

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions