Skip to content

Prove the request variants in the fidelity path: withdrawal, two clients at once, reconnect, a clarifying question (CF-8) - #313

Merged
BunsDev merged 4 commits into
mainfrom
cf8-requests
Oct 19, 2026
Merged

BunsDev merged 4 commits into
mainfrom
cf8-requests

Conversation

@BunsDev

@BunsDev BunsDev commented Oct 19, 2026

Copy link
Copy Markdown
Contributor

CF-8's request variants (#281), on CF-3 (#276), CF-6's request half (#279) and CF-7's clarifications (#280). Four cases in e2e/conversation-fidelity.spec.ts, through the real app.

Cases

  • A native withdrawal. The Claude fixture takes its own request back with control_cancel_request.
    • The card closes as withdrawn, and no answer reaches the CLI.
    • A late answer is refused, and the file is unchanged.
  • Simultaneous answers. The desktop answers through the bridge and the phone through the companion's HTTPS, at once.
    • Exactly one is accepted, and the CLI reads one decision.
    • The card names who gave it, and the loser gets already-resolved or a 409.
    • The file matches the winner.
  • Reconnect after a decision send. With the journal on, a phone that loaded the open card reconnects after the desktop's decision.
    • Its delta shows the card answered by the desktop and sent.
    • Its late answer is a 409, and every count stays at one.
  • A clarifying question in the path. The question comes from a codex-cli 0.163.0-shaped fixture.
    • It is answered on its card and heard once, then followed by a real edit and check.
    • Save to Notes includes it, and after a restart the card is inert and nothing re-runs.

The fixture CLI now counts every decision it reads, and the earlier cases assert that too.

The golden path is marked slow. Since #301 it also takes 18 reference captures and relaunches, and it ran past the 90 s budget on a Mac at load average 100.

These are acceptance tests of behaviour CF-3, CF-6 and CF-7 built, so they had no red phase of their own. The simultaneous-answer and reconnect cases found that the phone got a 404 on any thread started on the Mac (since #181); that fix landed in CF-6's PR with its own failing test.

The acceptance receipt's matrix moves these rows from open to verified with a fixture, and its children table now lists every landed slice with its merge commit. The gate itself stays open for live-provider runs and human VoiceOver.

Checks

On 3377dee, rebased onto main f4cd67f (CF-7), macOS 26.7.1, Node v24.18.1, pnpm 10.34.5:

  • pnpm build at the root and pnpm typecheck in apps/desktop: passed.
  • e2e conversation-fidelity (all 8 cases) and plan-clarification: 9 of 9.
  • The same spec on main 57e7607 plus CF-6 and CF-7:
    • pnpm test: 1,590 passed, 16 skipped, 0 failed; second stage 21 of 21.
    • Store-desktop tests: passed.
    • e2e conversation-fidelity, plan-clarification, task-to-notes, typed-turns, human-requests: 18 of 18.
  • Not run locally: the rest of pnpm test:e2e. CI runs it.

All commits are signed. The last commit records CF-2, CF-3, CF-4's Markdown slice, CF-6 and CF-7's merges in the receipt's children table. docs/status.md adds the variants to the CF-8 entry and leaves the In flight entry as main words it.

Refs #281. Tracker #273.

Four cases in e2e/conversation-fidelity.spec.ts, through the real app:

- A native withdrawal: the Claude fixture takes its own request back (control_cancel_request).
  The card closes as withdrawn, no answer reaches the CLI, a late answer is refused, and the file
  is unchanged.
- The desktop and the phone answer at once, over the bridge and the companion's HTTPS. Exactly one
  is accepted, the CLI reads one decision, the card names who gave it, and the file matches the
  winner.
- With the journal on, a phone that loaded the open card reconnects after the desktop's decision.
  Its delta shows the card answered by the desktop and sent, its late answer is a 409, and every
  count stays at one.
- A clarifying question inside the path, from a codex-cli 0.163.0-shaped fixture: answered on its
  card, heard once, followed by a real edit and check, saved to Notes, and inert after a restart
  that re-runs nothing.

The fixture now counts every decision the CLI reads, so the earlier cases assert that too. The
golden path is marked slow: since #301 it also takes 18 reference captures and relaunches, and it
ran past 90 s on a Mac at load average 100.

These cases found the companion's 404 for threads started on the Mac, fixed in the CF-6 branch.

Refs #281

Coven-Harness: Claude Code / claude-opus-5-5
The matrix rows for a clarifying question, a native withdrawal, simultaneous answers and a
reconnect after a decision move from open to verified with a fixture, with what each case asserts.
The defects list adds the companion's 404 for threads started on the Mac. The fidelity summary gains
rows for questions and approvals.

Refs #281

Coven-Harness: Claude Code / claude-opus-5-5
Refs #281

Coven-Harness: Claude Code / claude-opus-5-5
CF-2 (#286), CF-3 (#293), CF-4's Markdown slice (#283), CF-6's request half (#308) and CF-7's
clarifications (#312) are on main, with their merge commits. The candidate note says the fixture
rows now run on main, and no candidate is pinned while the live-provider and human gates stay open.

Refs #281

Coven-Harness: Claude Code / claude-opus-5-5
@vercel

vercel Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
modex Ready Ready Preview Oct 19, 2026 1:31am UTC

Request Review

@github-code-quality

Copy link
Copy Markdown

Code coverage overview

Languages: TypeScript

TypeScript / code-coverage-agent

main d625eda cf8-requests 3377dee +/-
63% 63% 0%
View coverage of the 1 most impacted file.
File main d625eda cf8-requests 3377dee +/-
apps/desktop/sr...task-context.ts 98% 99% +1%

ℹ️ Calculations represent line coverage. Results may change as calculations are updated.

@BunsDev
BunsDev merged commit b804e9c into main Oct 19, 2026
13 checks passed
@BunsDev
BunsDev deleted the cf8-requests branch October 19, 2026 02:01
BunsDev added a commit that referenced this pull request Oct 19, 2026
… patch-comparison slice

Coven-Harness: Claude Code / claude-opus-5-5
BunsDev added a commit that referenced this pull request Oct 19, 2026
Brings in #313 (CF-8) so #310 is up to date with main.

Coven-Harness: Claude Code / claude-opus-5-5
BunsDev added a commit that referenced this pull request Oct 19, 2026
Brings in #312 (CF-7 clarification half) and #313 (CF-8 request variants).

Coven-Harness: Claude Code / claude-opus-5-5

This branch was successfully deployed

1 active deployment
Preview — 3377deeb Deployed Oct 19, 2026 by vercel[bot]
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