Skip to content

Buffer becomes read-only after response: shell-maker--busy stuck at t with no active request #511

@madorian

Description

@madorian

Description

After a response completes, the buffer becomes entirely read-only. Typing anywhere produces Text is read-only. The session is unrecoverable without killing the buffer.

This is not #510 (unhandled notification) — no unhandled notification is visible. The response simply ends and no prompt is inserted.

Diagnostic Data

Collected from the stuck buffer via emacsclient -e:

  • shell-maker--busy: t — shell-maker thinks it is still processing a request
  • shell-maker--request-process: nil — no active request process exists
  • comint-last-prompt: nil — no prompt was tracked by comint
  • No prompt regexp match at buffer end
  • Last character has text properties (read-only t front-sticky (read-only) field output), blocking all insertion
  • ACP process itself is alive (process-status: run)

Root Cause Hypothesis

The request/response cycle completed (or errored), shell-maker--request-process was cleared, but shell-maker--busy was never reset to nil. Because shell-maker still considers itself busy, it never inserts a new prompt. The front-sticky (read-only) property on the last output character then prevents any input.

Reproduction

Intermittent — happens occasionally after a response finishes. No reliable reproduction sequence found. Backend is Claude Code via ACP.

Environment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions