[Bug]: macOS Touch Bar shows the secret typed into the request card as QuickType suggestions after Save

Open
#35,147 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
57/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
macos, react, typescript
Domain
desktop, security

Research direction

Start with apps/web and inspect SecretRequestCard.tsx, especially how the focused password field is handled when Save is pressed and when the request succeeds. Reproduce on macOS with a Touch Bar using the listed steps, then check whether the value remains protected until it is cleared. Done means saving a secret no longer exposes it as QuickType suggestions or learned text.

Written by the indexing model from the issue text.

Description

Before submitting
  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.
Area

apps/web

Steps to reproduce
  1. On macOS with a Touch Bar, have an agent call request_secret (no secret source selected, so the card shows the masked field).
  2. Type a throwaway value, e.g. touchbartest. The Touch Bar shows nothing while typing.
  3. Press Save securely.
Expected behavior

The typed value is never exposed outside the masked field. No QuickType candidates for it on the Touch Bar, and macOS does not learn it as a word.

Actual behavior

Right after Save, the Touch Bar shows QuickType suggestions containing the secret: "touchbartest" and Touchbartest. The value is saved correctly. It is only exposed in the moment after Save, never while typing.

macOS only offers QuickType candidates for non-secure text input, so Secure Input appears to be dropped while the value is still in the field. macOS may also add the value to its learned words.

Suspected cause (not verified): SecretRequestCard.tsx sets disabled={submitting} on the focused type="password" input on submit. The value is only cleared after the request succeeds. Disabling the focused password field may end Secure Input while the text is still there. Keeping the field enabled (e.g. readOnly) during submit, or clearing it before disabling, might avoid this.

Possibly related, opposite direction: #22449.

Impact

Major degradation or frequent failure

Version or commit

0.1.10-nightly.20261112.4564

Environment

macOS desktop app (Nightly), MacBook with Touch Bar

Screenshots

Touch Bar right after pressing Save.

image
Workaround

None, apart from typing secrets on a Mac without a Touch Bar. It is unclear whether QuickType still learns the word there.

Dominant language
TypeScript
Stars
24.8k
Forks
6.4k
Avg merge
4h 16m
Merged PRs (30d)
352

Getting set up

Open in Codespaces

Starts the project's dev container in your browser, under your own GitHub account.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from pingdotgg/t3code

All issues in pingdotgg/t3code

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.