# Quickshell changelog — alegauss

Every entry in Quickshell's roadkeep ledger, dated by the commit that wrote it.

- 2026-10-19 · QS369: The UI cases still carry a synthesised-input workaround for a foreground winwright 1.1.3 now takes itself
- 2026-10-19 · QS368: Winwright 1.1.2's repair of the tab case's typed substitution is unproven, so winwright's WW545 stays blocked
- 2026-10-18 · QS367: In a split tab every pane blinks its cursor and nothing marks which pane has the keyboard
- 2026-10-18 · QS366: A default window hides the menu bar until Alt is tapped, so a person who does not know the tap never finds it
- 2026-10-18 · QS365: The palette's Document sessions as PDF writes only the connected session instead of every saved one
- 2026-10-18 · QS364: The UI cases still work around three winwright gaps that 1.1.2 closed
- 2026-10-18 · QS349: Choosing several sidebar rows is proven by automation peers in a unit test, not by a UI case
- 2026-10-18 · QS348: That a tab's close cross is drawn inside its tab is proven by an in-process render, not by a UI case
- 2026-10-16 · QS363: The Claude Code plugin names quickshell.exe by its Windows path, which a Claude Code inside WSL2 cannot start
- 2026-10-16 · QS361: The tab-strip UI case's typed "first-tab-marker" once reached cmd as "first-tabrmarker"
- 2026-10-16 · QS359: An agent account set up from the session menu cannot be removed from it
- 2026-10-16 · QS358: On native Windows nothing below the shell stops an agent's own script from opening SSH around the gateway
- 2026-10-16 · QS357: The echo-delay pipeline test goes red in the guest when ConPTY prints under 300 KB/s for thirty seconds
- 2026-10-16 · QS356: exec quotes every argument for a POSIX shell, so on a Windows server a word with a space or a quote arrives altered
- 2026-10-16 · QS354: Every action is reached only by a hotkey or the palette, so a user who has not learned them cannot find a feature
- 2026-10-16 · QS353: A connected recent card on Home clips its New connection and Go to tab buttons when the window is not maximised
- 2026-10-16 · QS350: Whether a narrowed bash pane's extra prompt line on a split is bash's or this client's reflow was never traced
- 2026-10-16 · QS347: A middle click closing a tab is proven by routed events raised in a unit test, not by a UI case
- 2026-10-16 · QS343: Wiring the gateway into Claude Code means hand-editing MCP config, hooks and sandbox rules, so few will
- 2026-10-16 · QS342: Asking a local Claude Code about what a pane shows means copying the scrollback by hand into another window
- 2026-10-16 · QS341: An agent's key on a server is valid until someone removes it, so a key that leaks works for months
- 2026-10-16 · QS340: A client-side policy is advice the server never hears, and nothing helps set up an account that limits an agent there
- 2026-10-16 · QS339: An agent able to write files can rewrite the very policy that limits it, and grant itself whatever it wants
- 2026-10-16 · QS338: Text an agent read from a server can steer its next command, and the policy treats that command as if nothing happened
- 2026-10-16 · QS337: A call the policy says to ask about has nowhere to be asked, so the gateway can only allow or refuse it
- 2026-10-16 · QS336: Every call an agent makes through the gateway is allowed, whatever the host and whatever the command
- 2026-10-16 · QS335: What an agent runs on a server is invisible to the person until it reports back, if it reports at all
- 2026-10-15 · QS355: CI is red on every push: the app tests skip three on a clean runner against a budget of two
- 2026-10-15 · QS352: The recording test stops its recording on the first byte, ConPTY's mode sequences, before the line it reads back
- 2026-10-15 · QS351: Only the prod tag has a look on the strip, and no import brings tags in from MobaXterm or PuTTY
- 2026-10-15 · QS346: Reading a KDBX 4 vault encrypted with ChaCha20, or derived with AES-KDF, is proven by no vault
- 2026-10-15 · QS345: An exported vault restores the passwords but not the key files sessions name, so a new machine still lacks the keys
- 2026-10-15 · QS334: A person who sees an agent going wrong on a server has no single act that stops it everywhere at once
- 2026-10-15 · QS333: Nothing records what an agent ran on which server, who approved it, or what came back, once the session scrolls away
- 2026-10-15 · QS332: With the gateway installed an agent can still run ssh, plink, scp or paramiko from its own shell and skip every rule
- 2026-10-15 · QS331: A saved session carries nothing that tells production from staging, to the person or to anything reading the store
- 2026-10-15 · QS330: A secret printed by a remote command, an .env or a token, goes straight into the agent's transcript and its provider
- 2026-10-15 · QS329: A large command output lands whole in the agent's context, so one journalctl costs the rest of the session's room
- 2026-10-15 · QS328: A long remote command dies at the agent's timeout, or with its connection, and leaves no way to look back in on it
- 2026-10-15 · QS327: A sudo password, a pager or an apt dialog hangs an agent's command until its timeout, with no word of what it waited for
- 2026-10-15 · QS326: An agent edits a remote file by heredoc or sed -i, blind, with no diff for the person and no copy to go back to
- 2026-10-15 · QS325: An agent reaches a saved session only through raw ssh, quoting through four shells and paying a handshake per command
- 2026-10-15 · QS324: Approving an agent's commands one prompt at a time trains the person to click yes, the 41st one included
- 2026-10-15 · QS323: Nothing says how a remote command is judged read-only, so a regex blocklist is the only idea on the table
- 2026-10-15 · QS322: No policy format exists to say what an agent may do on which host, for how long, or who may change it
- 2026-10-15 · QS321: Nothing decides whether an agent gateway fits a client sold as "an SSH client, not a suite"
- 2026-10-15 · QS320: Nothing written says what an agent driving SSH from this desk can harm, nor which layer stops which harm
- 2026-10-15 · QS319: Two tabs on the same host carry the same title, so the strip gives nothing to tell them apart by
- 2026-10-15 · QS318: The session bar's Split button always splits side by side, with no way to split one above the other
- 2026-10-15 · QS317: A pane opened by Split has no button, chord or palette entry that closes it, only closing the whole tab
- 2026-10-15 · QS316: Each split prints a new prompt line in every pane already open, as if Enter had been pressed in it
- 2026-10-15 · QS315: How a set of sessions is configured, with jump hosts, keys and forwards, can be documented only by copying it by hand
- 2026-10-15 · QS314: The sidebar selects one row at a time, so nothing can act on several chosen sessions at once
- 2026-10-15 · QS313: A recent card says Connected now and its Connect opens a second connection, with no way from Home to the open tab
- 2026-10-15 · QS312: A tab's close button is in the tree but a user looking at the strip does not find it, so a tab seems unclosable
- 2026-10-15 · QS311: A right click on a tab offers nothing, so closing every tab but one is a close per tab
- 2026-10-15 · QS310: A middle click on a tab does nothing, where every browser and terminal on Windows closes it
- 2026-10-15 · QS309: Splitting a pane opened on a saved session opens a local Command Prompt instead of another shell on that server
- 2026-10-15 · QS308: A new machine starts with no remembered password, because DPAPI does not travel and nothing reads a vault back
- 2026-10-15 · QS307: An exported vault goes stale the moment a password is saved or changed, so the file consulted is not the one in use
- 2026-10-15 · QS306: A forgotten password can be read only by connecting with this client on this machine, so there is nothing to consult
- 2026-10-15 · QS305: Nothing in the client can write a KeePass KDBX 4 file, so no saved secret can leave it in a form another tool opens
- 2026-10-15 · QS304: The sessions sidebar opens with every folder unfolded, so a large store is a long list before it is a tree
- 2026-10-15 · QS292: The Explorer drop is proven by a test that drives the desk by hand instead of by a UI case
- 2026-10-14 · QS303: The UI cases run on winwright 1.0.2, so CasesRun guesses a survivor's case that 1.1.0 names itself
- 2026-10-14 · QS302: A guest run starts while another project's run is driving the same VM, and its UI cases lose the foreground
- 2026-10-14 · QS301: The client crashes on every start after a window maximised from its first paint is closed
- 2026-10-14 · QS300: A folder in the sessions sidebar opens or closes only on a double-click
- 2026-10-13 · QS299: The Explorer drop run sometimes goes red waiting for the host's file list, without saying what the browser showed
- 2026-10-13 · QS298: A UI case's client sometimes outlives its case and turns a green run red, without saying which case
- 2026-10-13 · QS297: An imported MobaXterm jump host drops its user and port, and a chain of two jumps becomes one unusable name
- 2026-10-13 · QS296: A MobaXterm import drops jump hosts, flattens nested folders, and finds no portable edition's file
- 2026-10-13 · QS295: PuTTY's sessions cannot be imported from the window, though the import reads them
- 2026-10-13 · QS294: The import preview says each setting left behind is named beside its session, and names none
- 2026-10-13 · QS293: A session never asks Pageant for a key, so a PuTTY or MobaXterm user's loaded keys are not offered
- 2026-10-13 · QS291: A host run is over the skip budget, because the tests that only the guest can run count as its skips
- 2026-10-13 · QS290: This client has never met Windows OpenSSH, where the far side is cmd under the console host
- 2026-10-13 · QS289: A guest run after one that was cut off cannot sync, because the old run's test processes still hold the tree
- 2026-10-13 · QS285: The repository declares no licence, so "free and open" cannot be said of it to anyone it is shown to
- 2026-10-13 · QS278: The tab strip is the stock control: no Home tab, no status dot, no close or new-tab button, no accent underline
- 2026-10-13 · QS273: No UI case reads the session bar's state or forward chips, since no case fixture reaches an SSH server
- 2026-10-13 · QS272: The window opens on a local Command Prompt, and nothing on screen says this client connects to servers
- 2026-10-13 · QS188: Nothing can be dragged out of the host's pane, so a file on the server reaches Explorer only through a copy
- 2026-10-13 · QS114: A PuTTY user on Pageant older than 0.78 has an agent this client cannot reach at all
- 2026-10-13 · QS81: A user weighing the switch has nothing that says what they will and will not get
- 2026-10-12 · QS287: The contrast test's Direct2D reference still draws blank in the guest after every redraw, and the run goes red
- 2026-10-12 · QS286: The site and llms.txt describe features as shipped that the client lacks, so a visitor arriving from a post is misled
- 2026-10-12 · QS284: A guest run with no failing test goes red on the skip budget when a bitmap is copied on the host during it
- 2026-10-12 · QS283: The window, taskbar, Alt+Tab and Start menu show Windows' generic application icon
- 2026-10-12 · QS282: A local tab and the window are titled C:\WINDOWS\system32\cmd.exe instead of naming the shell
- 2026-10-12 · QS281: The terminal's text touches the sidebar's divider and the window's top edge, with no inset around the grid
- 2026-10-12 · QS280: Home has the design's content in another layout: quick connect in three rows, other start-point copy and shape
- 2026-10-12 · QS279: Home's recent sessions are forgotten on every restart and their cards cannot say when each was last used
- 2026-10-12 · QS277: The sidebar is not the approved one: a filled hamburger, Command Prompt icons on SSH rows, an opaque selection
- 2026-10-12 · QS276: An imported key path keeps MobaXterm's _ProfileDir_ placeholder, so the key file is never found or offered
- 2026-10-12 · QS275: A store whose root node has a name opens none of its sessions: every row says there is no such session
- 2026-10-12 · QS274: A green guest run brings no reports back, so which UI cases ran cannot be read on the host
- 2026-10-12 · QS271: A host nobody has saved cannot be reached without filling and saving the session dialog first
- 2026-10-12 · QS270: The session dialog decides how to sign in by which text box was filled, and cannot test a session
- 2026-10-12 · QS269: A connected tab shows nothing of its connection: where it goes, whether it is up, which forwards it holds
- 2026-10-12 · QS268: Saved sessions are reached only by typing in the palette, so nobody sees what is saved or what is connected
- 2026-10-11 · QS267: The tab-strip UI case fails on CI's elevated runner, where cmd puts Administrator before every title
- 2026-10-11 · QS266: The nightly fuzz job fails on its own script before the campaign says anything
- 2026-10-11 · QS265: The UI cases have never run in CI: they launch a Debug client the Release build does not make
- 2026-10-11 · QS264: The settings-reference test fails on every CI push and passes in the guest
- 2026-10-11 · QS263: The echo-delay test times out in the guest waiting for sixteen megabytes and never says how far it got
- 2026-10-11 · QS262: The text an input method is composing vanishes every time the blinking cursor goes dark
- 2026-10-11 · QS261: Where a read ends decides how wide a character is, so a keycap split by the network leaves the cursor a column off
- 2026-10-10 · QS259: A remote forward whose local service stops reading freezes every channel on the connection
- 2026-10-10 · QS258: A session's whole path parses near 54 MB/s where the budget now asks for 100, the rate the transport delivers
- 2026-10-10 · QS256: One local pane holds 172 MB and a connected session 211 MB, where the budget allows 120 MB for the connected one
- 2026-10-10 · QS254: A session field written in the wrong place in the store is silently ignored, so the session connects with defaults
- 2026-10-10 · QS252: A forwarded port whose local tool stops reading freezes every channel on the connection, the shell included
- 2026-10-10 · QS225: An echo in a window covering its whole monitor has never been timed, the one case offered independent flip
- 2026-10-10 · QS197: The parse figure spreads by a fifth between runs on the reference machine, so the gate lets a regression that big pass
- 2026-10-10 · QS141: Feed runs near 4 MB/s where the budget asks for 400, and the budget measures a different arm
- 2026-10-10 · QS139: A host sending faster than the parser consumes buffers gigabytes inside the channel
- 2026-10-10 · QS137: The idle figure is measured on a window with no session and no render loop in it
- 2026-10-10 · QS75: Nothing has been measured starting, so the cold start figure is an aspiration
- 2026-10-09 · QS251: The site's build pulls source-map-js 1.2.1, which Dependabot flags high for an event-loop denial of service
- 2026-10-09 · QS250: A tab cannot be dragged along the strip, and there is no way back to the tab used before this one
- 2026-10-09 · QS249: Keys typed before a new pane's shell has started are dropped, so a fast first command loses its start
- 2026-10-09 · QS248: An SGR in the last column cancels the owed wrap, so the next character overwrites that column
- 2026-10-09 · QS247: A copy started a moment before an install is not found running, so the install is not refused
- 2026-10-09 · QS246: Reverse screen mode DECSCNM is not drawn, so a visual bell never flashes
- 2026-10-09 · QS245: A session's scheme, font size, terminal type, scrollback and credential are stored and inherited but never applied
- 2026-10-09 · QS244: Seventeen esctest failures in eleven classes have no family of their own
- 2026-10-09 · QS243: DECRQSS answers invalid for settings the client holds, and DA, DA2 and DECID answer another identity
- 2026-10-09 · QS242: Reverse wraparound does not follow a backspace back across a wrapped line as xterm does
- 2026-10-09 · QS241: HPR and VPR move the cursor nowhere
- 2026-10-09 · QS240: Most DSR variants and the checksum report get no answer
- 2026-10-09 · QS239: The saved cursor is one for both screens, and XTSAVE, XTRESTORE and DECSTR leave saved state behind
- 2026-10-09 · QS238: The rectangular area operations DECCRA, DECFRA and DECERA do nothing
- 2026-10-09 · QS237: DECRQM answers not recognised for modes xterm reports as permanently reset or as set
- 2026-10-09 · QS236: Window operations through CSI t neither report the window nor say they are refused
- 2026-10-09 · QS235: Character protection is not modelled, so selective erase and protected fields erase everything
- 2026-10-09 · QS234: Asking for a colour with OSC 4, 5 or 10 to 19 gets no answer, and their resets are ignored
- 2026-10-09 · QS233: No left or right margin can be set, so everything esctest checks inside a column region fails
- 2026-10-09 · QS212: Dark text on a light theme carries 12 to 17 % less ink than Windows draws, while light-on-dark carries more
- 2026-10-09 · QS210: The fuzzing campaign runs only when somebody types run-fuzz.cmd
- 2026-10-09 · QS160: A tab cannot be dragged into a new order or out into its own window, so the workspace is fixed as it was opened
- 2026-10-09 · QS115: A master password is stretched by a function a graphics card is good at, where the design asked for one it is not
- 2026-10-08 · QS232: A line feed, VT, FF or IND also returns the cursor to column one, as though every one were NEL
- 2026-10-08 · QS231: No screen reader in another process can read the terminal's output: its TextPattern gives a null document range
- 2026-10-08 · QS230: A test that hangs in the guest holds the whole run, and the host shows nothing that says which one
- 2026-10-08 · QS229: The session store's fields are documented nowhere, and Reconnect can only be set by editing the file
- 2026-10-08 · QS228: A connection that ends before the server presents its key is reported as a refused host key
- 2026-10-08 · QS227: esctest fails 309 of 568 tests now that the emulator answers its queries, and no line names which to fix
- 2026-10-08 · QS226: A guest run goes red on the skip budget when the guest's clipboard holds a bitmap from an earlier session
- 2026-10-08 · QS224: A guest run asked to carry HEAD alone carries the working tree's uncommitted edits to tracked files
- 2026-10-08 · QS223: Clicking a tab on the strip moves its highlight but leaves the other tab's terminal on screen
- 2026-10-08 · QS222: A desk that cannot be observed runs no UI case, and the run counts it as a pass
- 2026-10-08 · QS221: A graphics driver reset leaves every pane frozen, and nothing in the client recovers or says so
- 2026-10-08 · QS220: An SSH tab whose link drops stays ended, though the session that reconnects was built for it
- 2026-10-08 · QS219: The file browser opened over an SSH tab shows nothing on the host's side
- 2026-10-08 · QS218: A saved session to a host that takes a password or a one-time code cannot be connected from the client
- 2026-10-08 · QS217: A saved session can only be opened by typing its path on a command line
- 2026-10-08 · QS216: Importing sessions writes over the whole session store, so sessions made since are lost without a word
- 2026-10-08 · QS211: esctest is judged through a pseudo-console that answers its queries itself, so the figure measures conhost
- 2026-10-08 · QS208: A request for 132 columns is ignored without its side effects, and nothing says whether that is the intent
- 2026-10-08 · QS207: Insert mode is ignored, so text printed with CSI 4 h overwrites the row instead of pushing it right
- 2026-10-08 · QS206: Restoring the cursor does not restore the character set, so line drawing after ESC 8 prints letters
- 2026-10-08 · QS205: Cursor up and down cross the scrolling region's edges, so a program moving inside a region writes outside it
- 2026-10-08 · QS203: Two combining marks on the same side of one base are drawn on the same pixels instead of stacked
- 2026-10-08 · QS201: An echo at a prompt reaches the glass two refresh intervals after it arrives, one more than the vblank wait explains
- 2026-10-08 · QS200: The release gate times parse and emulate on the replay harness's build, not on the assemblies being archived
- 2026-10-08 · QS134: Nothing in the window can start a recording, so nobody can capture the defect they hit
- 2026-10-08 · QS129: Nothing in the client says where its log is, or turns the trace on
- 2026-10-08 · QS70: Nothing says which forwards are running, so a stale one is discovered through a port conflict
- 2026-10-08 · QS69: A forward is set up by hand each time and dies silently when its session drops
- 2026-10-07 · QS199: The test that says a chrome theme leaves the terminal's colours alone checks a palette nothing draws with
- 2026-10-07 · QS198: A scheme's cursor colour and OSC 12 are stored and never drawn, so every pane's cursor is the same grey
- 2026-10-07 · QS196: Figure 3 of the budget, steady-state frame cost, is measured by nothing, so no gate can hold it
- 2026-10-07 · QS195: Each test class carries its own copy of the fixture plumbing, so a fault in one copy is a fault in all of them
- 2026-10-07 · QS193: The release archive is built only by hand, so a change that breaks the self-contained publish passes CI
- 2026-10-07 · QS192: A portable copy that installs itself leaves its saved sessions and settings behind in the copy it came from
- 2026-10-07 · QS191: The graphics device and the shell both wait for the window, so a start runs three slow things one after another
- 2026-10-07 · QS189: A file dropped onto an SSH terminal can only be typed as its path, never sent to the directory the shell is in
- 2026-10-07 · QS186: A copy started from the browser shows nothing until it ends and cannot be stopped, so a large tree looks hung
- 2026-10-07 · QS185: A remote file cannot be edited in a local editor, so changing a config is still a download, an edit and an upload
- 2026-10-07 · QS184: The remote pane opens at the account's home while the shell beside it has already said where it is
- 2026-10-07 · QS183: A paste pressed while another process holds the clipboard open does nothing and says nothing
- 2026-10-07 · QS182: A resumed guest can hold run-app-vm past its own deadline and then yield an all-black picture reported as a success
- 2026-10-07 · QS179: A fleet has no saved group to broadcast to, so the same split is rebuilt by hand before every broadcast
- 2026-10-07 · QS178: Five command-line flags exist and no page names them, so a script author finds them by reading the source
- 2026-10-07 · QS177: The strip past the last whole cell is never painted, so every pane has a black band at its right and bottom edges
- 2026-10-07 · QS176: The winwright this project restores is older than the engine beside it, so cases work around gaps that are closed
- 2026-10-07 · QS174: A settings value the client could not use is not mentioned anywhere the user will look
- 2026-10-07 · QS172: A user looking for help presses Ctrl+Shift+F1 and gets a defect report
- 2026-10-07 · QS171: Splitting a pane is bound to one Oem key, and which character that is depends on the layout
- 2026-10-07 · QS170: Every setting has to be found and typed by hand, because the surface over the file was never built
- 2026-10-07 · QS168: Changing the font in the settings file does nothing until the client is restarted
- 2026-10-07 · QS167: An allocation assertion fails about once in two guest runs on a tree nothing touched
- 2026-10-07 · QS164: Four panes open four graphics devices, and nothing in the client stops a user opening sixteen
- 2026-10-07 · QS163: A divider cannot be dragged, so the only sizes a split has are the halves it was created with
- 2026-10-07 · QS159: The shipping discipline tells an agent to screenshot a UI task, and this repository's evidence rule forbids that
- 2026-10-07 · QS158: Nothing says how far back the view is, so a reader who scrolled has no idea where they are or that output arrived
- 2026-10-07 · QS156: Grapheme segmentation runs at half its old rate, because every cluster now asks ICU where the boundary is
- 2026-10-07 · QS155: A program that asks for the mouse never gets one, and the wheel scrolls nothing at all
- 2026-10-07 · QS152: A shell that exits leaves the window holding its last frame, with nothing saying the session ended
- 2026-10-07 · QS151: A reconnecting session makes a new damage signal per connection, so a pane asleep on the first never repaints
- 2026-10-07 · QS150: A defect report about a black window says what an adapter probe found, not what the window did
- 2026-10-07 · QS149: A tool that rewrites a source file can mangle its punctuation and every check stays green
- 2026-10-07 · QS140: The reply buffer exceeds the maximum its own constant states
- 2026-10-07 · QS136: A run with a hundred tests skipped prints the same "Passed" as one with none
- 2026-10-07 · QS135: Three settings are read, written and kept faithfully, and nothing acts on them
- 2026-10-07 · QS133: A recording has no bound and will fill a disk if it is left running
- 2026-10-07 · QS132: A crash report cannot name the GPU, on the failures most likely to be about one
- 2026-10-07 · QS131: The crash dialog mixes this client's English with Windows' own button words
- 2026-10-07 · QS130: The log goes quiet exactly where a transfer or a tunnel failed
- 2026-10-06 · QS213: The composition allocation test fails whenever it runs first, counting a one-time initialisation as a keystroke's
- 2026-10-06 · QS209: A test assembly refuses to run after a referenced project changed only its implementation and was rebuilt
- 2026-10-06 · QS204: Erasing part of the screen fills it with the default background, so a curses program's full-width bars stop at text
- 2026-10-06 · QS202: An editor's save over the settings file can be refused while the client is reading it
- 2026-10-06 · QS181: The import preview case missed its dialog in one full run and found it alone, so its five-second wait is a guess
- 2026-10-06 · QS127: The library's SOCKS proxy answers about one request in six with something that is not a SOCKS reply
- 2026-10-06 · QS126: Eleven shipped transport components are named by no code in the application, so none of them can be used
- 2026-10-06 · QS125: A forward cannot tell a refused target from a normal close, and cannot be bound to every interface
- 2026-10-06 · QS124: A forward drops the whole connection when one direction half-closes, so protocols that shut and wait hang
- 2026-10-06 · QS123: A symbolic link on the server cannot be copied, because nothing here can read where it points
- 2026-10-06 · QS122: The shared-session trick rests on six SSH.NET members reached by name, and only a live server proves it holds
- 2026-10-06 · QS121: Nothing owns the session store file and nothing opens the session dialog, so neither is reachable
- 2026-10-06 · QS119: A jump carries traffic through a local port anything running as this user can connect to
- 2026-10-06 · QS117: Comments a user wrote in the session store are gone the next time the client writes it
- 2026-10-06 · QS113: A key accepted with a second factor still to come looks the same as a connection that has stalled
- 2026-10-06 · QS112: A dead route and a port that is not SSH read as one failure, so the remedy offered covers two things
- 2026-10-06 · QS111: A peer that stopped answering on a socket that stayed open is not noticed, so the session looks live for minutes
- 2026-10-06 · QS110: Remote throughput has no local figure taken beside it, so a slow link and a slow client look alike
- 2026-10-06 · QS108: The suite builds the solution and then measures wall-clock latency against what that build left running
- 2026-10-06 · QS107: ClearType coverage is drawn without the contrast enhancement Windows applies, so stems stay lighter than elsewhere
- 2026-10-06 · QS105: Backspace at the left edge stops there instead of wrapping to the end of the line above
- 2026-10-06 · QS104: A program asking whether a mode is set gets no answer, so it cannot tell off from unsupported
- 2026-10-06 · QS103: Nothing answers a request for a rectangle's checksum, so an external suite cannot read the screen back
- 2026-10-06 · QS102: The parser is fuzzed only by the suite's own mutator, which stops when the build does
- 2026-10-06 · QS101: Ninety-six bytes of the parse path's allocation is measured but unattributed
- 2026-10-06 · QS99: A failed build leaves the old test binary in place and running it reports a green suite that proves nothing
- 2026-10-06 · QS93: Every golden scene is text somebody typed into the test, so none of them is a screen a real program drew
- 2026-10-06 · QS91: A combining mark takes no cell and is then drawn nowhere, so an accent typed as two codepoints vanishes
- 2026-10-06 · QS90: Nobody has built this repository from a clean clone, so the steps it needs beyond the SDK are unknown
- 2026-10-06 · QS89: dotnet test reports zero tests and exits 5 while run-tests.cmd runs the same assemblies and passes
- 2026-10-06 · QS86: Input to photon is the first figure in the budget and the only one nothing has ever measured
- 2026-10-06 · QS68: Reaching many hosts on the remote network needs one forward configured per host
- 2026-10-06 · QS38: A link that drops for ten seconds costs the whole session and its scrollback
- 2026-10-06 · QS33: No external suite has ever judged this emulator, so its fidelity is the author's own opinion
- 2026-09-10 · QS194: An install fails outright when a virus scanner has one of its just-copied files open for a moment
- 2026-09-10 · QS187: Pasting or composing more than sixteen accented or eight CJK characters throws instead of reaching the host
- 2026-09-10 · QS180: The paste tests use the desk's real clipboard, so a run erases what the user copied and fails while a guest shares it
- 2026-09-10 · QS138: Sixteen minutes of the suite is two helpers waiting out timeouts they then ignore
- 2026-09-10 · QS83: Every window would invent its own colours and row shapes, so the chrome drifts from the two clients it should match
- 2026-09-10 · QS64: A file can only be transferred through the browser, so dragging one from Explorer does nothing
- 2026-09-10 · QS60: There is no way to see what is on the remote host without running a command
- 2026-09-10 · QS53: The same command on eight hosts has to be typed eight times
- 2026-09-01 · QS175: One App.Tests run went red once and named nothing, and seven runs since have not reproduced it
- 2026-09-01 · QS173: The guest runs the suite but cannot run the client, so looking at a window still means taking over the user's desk
- 2026-09-01 · QS169: The settings file is read once at start-up, so editing it while the client runs changes nothing
- 2026-09-01 · QS166: A pane behind another tab keeps drawing, so a client with eight tabs presents seven frames nobody sees
- 2026-09-01 · QS165: A pane reports the whole client's draw calls as its own, so a per-pane frame count is the sum of every pane's
- 2026-09-01 · QS162: This client now takes thirteen chords from the remote program and tells nobody which
- 2026-09-01 · QS161: A title the host writes appears nowhere while there is one tab, because the strip that would carry it is hidden
- 2026-09-01 · QS157: Three proxy-command tests fail in the guest and pass on this machine, and nothing says which desk is right
- 2026-09-01 · QS154: Naming a typeface on any WPF text kills the client, because invariant globalization refuses the culture WPF builds
- 2026-09-01 · QS116: The window's terminal is an empty rectangle, because nothing presents a swapchain into the pane's handle
- 2026-09-01 · QS52: Every action needs a chord the user memorised or a menu they have to go looking for
- 2026-09-01 · QS51: A user's chosen colour scheme has to be entered as twenty colours by hand
- 2026-09-01 · QS50: Nothing can be configured, so the font, the colours and the keybindings are whatever the code says
- 2026-09-01 · QS49: Each pane would open its own graphics device, so four panes cost four times the driver's attention
- 2026-09-01 · QS48: Two sessions cannot be seen at once, so comparing output means alternating between tabs
- 2026-09-01 · QS47: Every session needs its own window, so working across four hosts means four windows to arrange
- 2026-09-01 · QS46: There is no window, only a render surface, so nothing can be opened, themed or closed
- 2026-09-01 · QS31: Output that scrolled past cannot be scrolled back to, and nothing in it can be found
- 2026-09-01 · QS30: Text on screen cannot be selected or copied, and a paste arrives as keystrokes the host may run
- 2026-09-01 · QS29: Typing Japanese or Chinese shows no composition and commits nothing
- 2026-08-31 · QS148: The client exits the moment anything asks its terminal about accessibility
- 2026-08-31 · QS147: UI is verified by synthetic keystrokes and screenshots, which need a desk somebody is sitting at
- 2026-08-31 · QS146: Placing one character costs eighty-seven nanoseconds, and nobody knows which part
- 2026-08-31 · QS145: A render claim skips itself over statistics that two of its three assertions never needed
- 2026-08-31 · QS144: Writing cells is sixty milliseconds a megabyte, the largest cost on the path
- 2026-08-31 · QS143: Grapheme clustering costs nine times everything that reaches it
- 2026-08-31 · QS80: A MobaXterm or PuTTY user has to recreate every session by hand before they can start
- 2026-08-31 · QS76: A window nobody is typing into has never been measured, so the low-idle claim is untested
- 2026-08-31 · QS74: Settings have no file, so nothing survives a restart and nothing can be moved to another machine
- 2026-08-31 · QS73: A user reporting a defect has no way to say what their client was doing when it happened
- 2026-08-31 · QS72: A crash takes the session, the scrollback and any explanation of what happened with it
- 2026-08-31 · QS71: When a connection fails there is nothing to read afterwards but the dialog that has gone
- 2026-08-30 · QS120: The pipeline test's drain guard counts reads rather than bytes, so a loaded machine fails it
- 2026-08-30 · QS118: A host reached through a ProxyCommand is read from the config, reported, and cannot be connected to
- 2026-08-30 · QS109: The golden suite's text tolerance does not hold on the CI runner, so every commit's build is red for the same pixels
- 2026-08-30 · QS106: The latency test's bound is a maximum over more reads at sixteen megabytes than at four, so a scheduler hiccup fails it
- 2026-08-30 · QS94: Segmenting a printed run allocates a string per character, which is the whole of the render arm's cost
- 2026-08-30 · QS67: A service running locally cannot be reached from the remote host
- 2026-08-30 · QS66: A port on the remote network cannot be reached from a local tool
- 2026-08-30 · QS65: Keeping a local and a remote directory alike means comparing them by eye
- 2026-08-30 · QS63: A host too old to offer an SFTP subsystem cannot receive a file at all
- 2026-08-30 · QS62: A folder cannot be copied, and a name that already exists on the far side is resolved by guessing
- 2026-08-30 · QS61: A transfer has no progress, cannot be cancelled, and starts again from zero if it fails
- 2026-08-30 · QS59: Moving a file means a second authentication and a second connection to a host already open
- 2026-08-30 · QS58: A session cannot be created or edited, so the store can only be built by editing its file
- 2026-08-30 · QS57: A host reachable only through a bastion cannot be reached at all
- 2026-08-30 · QS56: Hosts already defined for OpenSSH have to be defined a second time here
- 2026-08-30 · QS55: Every connection is retyped, so a host used daily costs the same as one used once
- 2026-08-30 · QS54: A screen reader finds nothing on the terminal surface, so the client cannot be used without sight
- 2026-08-30 · QS44: A saved password would rest on disk where anything running as the user can read it
- 2026-08-30 · QS42: Nothing checks the host key, so a machine in the middle is indistinguishable from the server
- 2026-08-30 · QS41: Only one way in is proven, so a host needing a second factor or an ed25519 key is unreachable
- 2026-08-30 · QS39: A refused connection reports a library exception, so a user cannot tell a wrong port from a wrong key
- 2026-08-30 · QS37: No remote host's output has ever reached the emulator
- 2026-08-30 · QS36: Protocol library types would reach the terminal and the UI, so replacing that library means rewriting the client
- 2026-08-30 · QS35: Text is rasterised in grayscale, so it looks thinner here than in every other Windows application
- 2026-08-30 · QS34: A programming font's ligatures do not form, so text set in it looks unlike the same text elsewhere
- 2026-08-30 · QS32: Resizing the window leaves the remote program drawing to the geometry it had before
- 2026-08-30 · QS28: Arrow keys, function keys and modified keys send nothing a remote program recognises
- 2026-08-27 · QS27: A keystroke queues behind a screenful of pending output before it is written to the host
- 2026-08-27 · QS26: Under heavy output the delay before a typed character appears grows without bound
- 2026-08-27 · QS25: The emulator has no real producer of bytes, so every test of it is a fixture its own author wrote
- 2026-08-27 · QS24: A malformed escape sequence from a hostile host has never been shown not to crash or allocate
- 2026-08-27 · QS23: Narrowing the window turns wrapped output into ragged fragments that never recover
- 2026-08-27 · QS22: Nothing records which rows changed, so any redraw is a whole-screen redraw
- 2026-08-27 · QS21: A click inside a remote editor or pager does nothing, because no mouse event reaches the host
- 2026-08-26 · QS100: The ban on raw control bytes covers tests and not src, so the same byte went into shipped source unseen
- 2026-08-26 · QS98: A test can carry a raw escape byte, and a file where it went missing fails as though the code were wrong
- 2026-08-26 · QS97: The frame queue reaches three under a virtualised presentation path, where the bound was measured at two
- 2026-08-26 · QS96: A third rasteriser shifts one antialiased pixel by six levels, which is three times the measured tolerance
- 2026-08-26 · QS95: The render suite takes the screen with topmost windows, and anything the operator does corrupts it
- 2026-08-26 · QS20: A program asking the terminal what it is gets no answer and falls back to a dumber mode
- 2026-08-26 · QS19: A remote host can write the local clipboard and read back a string it planted in the title
- 2026-08-26 · QS18: Box drawing renders as letters, and the title, palette and working directory a host sends are ignored
- 2026-08-26 · QS17: A full-width line wraps a column early and a scrolled region redraws the wrong rows
- 2026-08-26 · QS16: The cursor cannot be moved, a line cannot be erased and no character carries a colour
- 2026-08-26 · QS15: Nothing holds what the remote host has printed, so a line that scrolls off the top is gone
- 2026-08-22 · QS88: dotnet test reports zero tests and exits non-zero on a tree whose suite passes when the assembly is run directly
- 2026-08-22 · QS87: The frame-queue measurement reads two on runs where nothing regressed, so its result is not evidence either way
- 2026-08-22 · QS14: A byte carrying an escape sequence is indistinguishable from text, so a host cannot move the cursor
- 2026-08-22 · QS13: A multi-byte character split across two network reads decodes as two broken ones
- 2026-08-22 · QS12: Nothing catches a renderer that draws correctly on one vendor's driver and wrongly on another's
- 2026-08-22 · QS11: Underline, undercurl, strikethrough, the cursor and a selection have no representation on screen
- 2026-08-22 · QS10: A CJK character, a combining mark and a colour emoji each draw wrongly or not at all
- 2026-08-22 · QS9: Nothing turns a grid of cells into a draw call, so text on this client's screen is still hypothetical
- 2026-08-22 · QS8: No glyph is on the GPU, so drawing a character would cost a rasterisation on the frame that needs it
- 2026-08-22 · QS3: Nothing replays a real terminal workload, so a change that halves throughput lands unnoticed
- 2026-08-21 · QS85: The commit script stages the whole tree, so a second session's half-written work lands inside another task's commit
- 2026-08-21 · QS84: The pipeline pins its actions by tag and nothing watches them, so a stale or advisory-bearing action is found by chance
- 2026-08-21 · QS82: The tree targets net8.0, where WPF has no Fluent theme, so the chrome the sibling clients share cannot be built here
- 2026-08-21 · QS7: A frame reaches the screen whenever the compositor chooses, so no bound on input-to-photon delay can be claimed
- 2026-08-21 · QS6: Nothing opens a graphics device, so no pixel this client draws has ever reached a screen
- 2026-08-21 · QS5: Nothing measures whether the chosen protocol library reaches a modern sshd, so the network layer is unpriced risk
- 2026-08-21 · QS4: No decision records which window host can present a swapchain without adding frames of latency
- 2026-08-21 · QS2: Fast and lean are this client's whole premise, and no number anywhere states what either word means
- 2026-08-21 · QS1: The repository holds no buildable tree, so no claim about this client's speed or size can be measured
- undated · QS360: The agent's certificate authority signs whenever any process of the person's asks, with nobody present
- undated · QS344: The Windows Hello prompt before a vault export has never been seen to run, since no test desk has Hello set up
- undated · QS288: A shell start takes a third longer than at 40fb448, and the performance gate fails on start
- undated · QS260: A cursor blink redraws the whole grid, so a blinking cursor alone costs half a per cent of a core while idle
- undated · QS257: There is no full-screen mode, the one window shape whose echoes reach the glass an interval sooner
- undated · QS255: An idle pane costs 0.6 % of a core and GPU work even with the cursor blink off, and four cost nearly three times one
- undated · QS253: The gate fails unchanged code, because the desk runs a seventh slower some days than when the baseline was taken
- undated · QS215: The contrast test's Direct2D reference sometimes draws nothing in the guest, and the failure reads as infinite ink
- undated · QS214: Replaying the tmux resize recording sometimes allocates in steady state in the guest, and the failure says no more
- undated · QS153: The text being composed is a box the input method draws over the grid, not underlined text inside it
- undated · QS79: A change that costs performance is caught by whoever happens to notice it
- undated · QS78: Nothing has run for longer than a working session, so a slow leak would reach users first
- undated · QS77: There is no way to install this client, so it can only be run from a build directory
- undated · QS43: A key already unlocked in an agent must be typed again, and a hardware key cannot be used at all
- undated · QS40: This client has met one server, so an appliance that negotiates differently is an unknown
