Skip to content

fix(computer): keep OneDrive's per-user setup out of the Windows base - #586

Merged
earakely-scale merged 1 commit into
mainfrom
edgararakelyan/fd-5418-windows-base-without-onedrive
Nov 10, 2026
Merged

earakely-scale merged 1 commit into
mainfrom
edgararakelyan/fd-5418-windows-base-without-onedrive

Conversation

@earakely-scale

@earakely-scale earakely-scale commented Nov 10, 2026 •

Copy link
Copy Markdown
Collaborator

Part of FD-5418. This follows #583, which merged before the fix was pushed.

On a Windows desk, the probe's P6 typing checks failed now and then with agent-desktop (2 of 8 probes): 3 to 5 typed keys didn't arrive.

The cause is in the Windows base, not the driver.

  • OneDrive sets itself up at the session user's first sign-in, from the default profile's Run key. It leaves two RunOnce entries behind, each a cmd.exe /q /c del ….
  • Windows 11 opens each console command in a Windows Terminal window, which takes the foreground for about 350 ms.
  • A composed disk boots afresh every time, so the entries ran at every boot. Input sent with SendInput during that window went to Terminal, not the app.
  • Every Windows desk had these windows. cua-driver mostly posts input in the background, so it mostly escaped them.

A watcher inside the guest found the cause. It logged foreground windows and new processes during the probe: explorer.exe started the two cmd.exe at logon, their Terminal windows took the foreground, and the session user's RunOnce held the two OneDrive entries.

What changes

setup.ps1 removes OneDriveSetup from the default profile's Run key, beside the other default-profile settings, before the session user's profile exists. OneDrive never sets itself up for that user. The RunOnce entries, the background OneDrive process and the Terminal windows are gone.

What it costs: the base setup changes, so each machine with a Windows base installs a fresh one once (about 15 minutes), and its Windows desks recompose.

Tests

On an agent-environments-admin box, I installed a fresh base from Microsoft's ISO and composed a windows-11 desk with driver = "agent-desktop":

  • Gate 3 passed.
  • 8 rounds of the probe at full each passed 52 of 53 checks; P8 leases doesn't apply.
  • The watcher, run alongside each round, saw only the fixture and the taskbar take the foreground. No cmd.exe, Terminal window or OneDrive process started in any round.
  • The agent task: Claude Code with Sonnet 5.5 saved a line in Notepad through agent-desktop's tools.
  • Before this change, the same probe lost keys in 2 of 8 rounds. The watcher caught the Terminal windows in each round and the OneDrive entries in the user's RunOnce.

🤖 Generated with Claude Code

RetriggerView in GreptileConfidence Score: 5/5

This PR appears safe to merge.

Summary

Removes startup commands containing OneDriveSetup from the default Windows profile before the session user's first sign-in.

  • Windows desks skip OneDrive's setup when the session user first signs in.

Reviews (1) · Last reviewed commit: "fix(computer): keep OneDrive's per-user ..." · Reviewed by Greptile

OneDrive set itself up at the session user's first sign-in, from the default profile's Run key, and left two RunOnce
deletes behind. Each is a console command, which Windows 11 opens in a Terminal window that takes the foreground for
about 350 ms; a composed disk boots afresh every time, so they ran at every boot and took keys typed through
SendInput (agent-desktop's WindowsDriver), failing the probe's P6 typing checks now and then. The base now removes
OneDriveSetup from the default profile's Run key before the session user's profile exists.

Part of FD-5418.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@earakely-scale
earakely-scale requested a review from a team as a code owner November 10, 2026 01:20
@earakely-scale
earakely-scale merged commit 92c8042 into main Nov 10, 2026
34 checks passed
@earakely-scale
earakely-scale deleted the edgararakelyan/fd-5418-windows-base-without-onedrive branch November 10, 2026 02:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant