LearnNewsExamplesServices
Frontmatter
id10987
titleReplace Claude Space wake seed with r undo sequence
stateClosed
labels
bugaitestingregressionarchitecturemodel-experience
assigneesneo-gpt
createdAtMay 8, 2026, 10:05 PM
updatedAtMay 12, 2026, 4:09 AM
githubUrlhttps://github.com/neomjs/neo/issues/10987
authorneo-gpt
commentsCount2
parentIssue10658
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtMay 8, 2026, 10:28 PM

Replace Claude Space wake seed with r undo sequence

Closedbugaitestingregressionarchitecturemodel-experience
neo-gpt
neo-gpt commented on May 8, 2026, 10:05 PM

Context

On 2026-05-08, the operator reported that the latest Claude Desktop UI update added focusable elements inside chat history. Space is no longer a stable prompt-focus seed: repeated wakeups expand or collapse tool-call summaries instead of focusing the prompt field.

The repository currently still defaults Claude bridge delivery to Space:

  • ai/scripts/bridge-daemon.mjs sets the Claude default focusSeedKey to space.
  • The emitted AppleScript uses key code 49 for that seed.
  • test/playwright/unit/ai/scripts/bridge-daemon.spec.mjs has a Claude regression test that explicitly expects Space.

This supersedes the closed assumption in #10660. #10658 remains the open Claude bridge prompt-focus parent, and #10664 is the Codex precedent for treating Space as unsafe and using an explicit r -> Cmd+Z -> Cmd+A/Cmd+X -> paste sequence only after validation.

Problem

The current Claude wake path can target focusable chat-history controls. Once focus is in a tool-call summary, Space toggles expansion/collapse instead of moving focus to the prompt. The destructive clear-and-paste sequence that follows can then operate from an invalid focus state or fail to place the wake payload in the prompt reliably.

This is an MX substrate regression: wake routing is the bridge between Memory Core events and the desktop harness. A flaky seed causes missed or mutated A2A wakeups and erodes trust in the shared swarm loop.

Architectural Reality

meta.focusSeedKey was documented in #10664 as a single-key non-mutating primitive. The Codex workaround is not just the value r; it is the validated probe-and-undo sequence around that value. The Claude fix must preserve that distinction:

  • Do not silently replace space with bare r and then run Cmd+A.
  • Either promote a named probe-and-undo primitive shared by Codex and Claude, or extend the existing explicit Codex r cleanup branch to Claude with comments that make the sequence contract clear.
  • Keep Antigravity and other harnesses unchanged unless separately validated.

Contract Ledger Matrix

Contract Current producer Required producer Consumers / tests
Claude bridge prompt-focus seed bridge-daemon.mjs defaults Claude focusSeedKey to space and emits key code 49 Claude must use an explicit r -> Cmd+Z probe-and-undo sequence before any destructive clear A2A wake delivery via bridge daemon, Claude Desktop UI
meta.focusSeedKey semantics Single-key seed can be confused with multi-step probe flow Preserve or rename semantics so bare r is not treated as a non-mutating seed WakeSubscriptionService metadata, bridge daemon delivery comments
Codex wake behavior Codex has special r -> Cmd+Z cleanup and fail-closed behavior No regression to Codex fail-closed or validated r path bridge-daemon.spec.mjs Codex tests
Claude regression tests Test currently expects Space after Cmd+3 Tests must assert no key code 49 default for Claude and assert sequence order test/playwright/unit/ai/scripts/bridge-daemon.spec.mjs

Fix

  1. Remove the Claude default Space seed.
  2. Add a Claude-safe prompt-focus sequence using r -> Cmd+Z before Cmd+A / Cmd+X / paste.
  3. Keep the sequence explicit enough that future agents do not confuse it with a bare focusSeedKey: r opt-in.
  4. Update comments to cite the 2026-05-08 Claude Desktop UI regression: focusable chat-history tool-call summaries make Space unsafe.
  5. Update and extend bridge-daemon unit coverage for Claude, while preserving Codex coverage.

Acceptance Criteria

  • Claude bridge delivery no longer emits key code 49 for the default prompt-focus path.
  • Claude bridge delivery emits r before prompt clear and emits Cmd+Z before Cmd+A / Cmd+X / paste.
  • Existing Claude Space test is rewritten or replaced with a regression test for the new order.
  • A regression assertion proves Claude default delivery does not contain Space as a seed.
  • Codex fail-closed behavior without a validated focus seed remains unchanged.
  • Codex validated r -> Cmd+Z -> Cmd+A/Cmd+X -> paste behavior remains unchanged.
  • Antigravity default tab shortcut and wake path remain unchanged unless separately validated.
  • Manual validation notes cover these Claude states: prompt focused empty, prompt focused with draft, prompt unfocused empty, prompt unfocused with draft, and chat-history/tool-call-summary focused. In every case, tool-call summaries must not expand or collapse and the wake payload must land in the prompt.

Five-Stage Challenge Chain

  1. Roadmap fit: This is a direct reliability fix for A2A wake delivery and the desktop harness loop.
  2. Negative ROI check: Leaving Space in place costs repeated missed wakeups and operator attention; the fix is narrow and testable.
  3. Duplicate sweep: #10660 is the closed prior Space strategy, #10658 is the open Claude parent, and #10664 is the Codex precedent. No active duplicate found in KB ticket search.
  4. Prescription layer: The ticket prescribes sequence semantics and test contracts, not broad UI automation redesign.
  5. Avoided traps: The ticket rejects bare focusSeedKey: r, avoids app-server scope creep, and keeps non-Claude harnesses out unless evidence exists.

Out of Scope

  • Full app-server wake adapter work such as #10517.
  • Reworking wake subscription routing or Memory Core delivery semantics.
  • Changing Codex behavior beyond preserving current tests.
  • Changing Antigravity behavior without separate validation.
  • Continuing or modifying #10951 team-private retrieval work.

Related

  • Parent candidate: #10658
  • Superseded premise: #10660
  • Codex precedent and safety matrix: #10664

Origin Session ID

1ed5570e-a33b-4a48-b05b-cda820c16bbb

Retrieval Hint

Claude Desktop focusable chat history Space tool-call summary expand collapse bridge-daemon focusSeedKey r Cmd+Z #10658 #10660 #10664

tobiu referenced in commit 97afb2a - "fix(ai): replace Claude wake Space seed (#10987) (#10988) on May 8, 2026, 10:28 PM
tobiu closed this issue on May 8, 2026, 10:28 PM