ux.sgit.ai

Browse the register

The same findings, indexed nine ways. Each value links to the findings list filtered to it, and filters combine: /findings/?problem=unexpected-movement&visibility=intermittent is a link you can send. The vocabularies live in /data/taxonomy.json and grow only when a finding needs a value that is not there yet.

Product · Area · Problem · Visibility · Recommendation · Principle · Severity · Status · Kind

And the other direction: what good looks like, things that work, each linked to the findings it answers.

By product

Whose fault it is: one of our sites, the platform under them, our own prototypes, or the browser the reader uses.

ProductFindingsOpen
newsroom.sgit.aiThe publication: articles on AI agents, security and publishing, written with an agent newsroom (site)4539
dev.vault.sgraph.aiThe vault host: opens a vault by its key and runs its app in a sandboxed frame (platform)44
Newsroom Design LabThis site's own prototypes: four vaults trying the newsroom fixes in three directions64
Firefox on iPadFirefox for iOS on iPad: the browser, not any site in it (browser)33
Claude app (iPhone and iPad)The Claude app on iOS and iPadOS, used here to run and supervise Claude Code sessions, often by voice (app)55

By area

Where in the reader's visit it happens.

By problem

What kind of thing goes wrong. A finding can have more than one.

ProblemFindingsOpen
Uninformed decisionThe reader is asked to decide without what they need to judge it: what it does, what it touches, what could go wrong22
Missing feedbackNo sign of what the system is doing, so the reader cannot tell progress from failure11
Unexpected movementPart of the interface moves when the reader did not move it43
Focus hijackFocus or input goes somewhere the reader did not send it11
Unpredictable controlThe result of a gesture depends on something the reader cannot see or control, such as its speed, so the state they want cannot be reached on purpose11
Lost screen spaceChrome takes screen that the content needed22
Wrong culpritThe reader blames the wrong party: the page for the browser, the site for the platform11
Buried contentWhat the reader came for is pushed down or out of view44
OverloadToo much at once, so nothing is chosen for the reader44
Builder chromeThings for the author, an agent or the build, shown to readers55
Missing signalThe reader lacks what they need to decide: length, format, who wrote it, whether it is real109
Missing way inA page or path the reader needs does not exist43
Dead endSomething that looks like a way in goes nowhere65
Unshareable viewA view the reader can see but cannot link to22
UnlabelledA number, value or control with no label55
Alarming wordingWords that read as a threat, a debt or a trick when they describe something benign32
Silent changeState changes without telling the reader22
Preselected inputAn answer is chosen before the reader chooses11
Unconsented stateSomething is kept or added because the reader opened something22
Missing channelNo way for the reader to reach a person33
Inconsistent factsTwo places disagree about the same fact53
Stale claimA statement about the present that is no longer true21
Hidden until scriptContent appears only after scripts or prior state22
Host trapThe platform behaves unlike a normal page, and the difference is not visible44
Data lossSomething the reader made or kept is lost or cut44
Layout overflowContent wider or taller than the screen it is on10
Untested pathA path shown to readers that nobody has seen work11

By visibility

How the reader experiences it: seen every time, sometimes, only felt, or not at all.

VisibilityFindingsOpen
ObviousEvery reader sees it, every time they reach that point1814
IntermittentSome readers, some of the time: depends on a gesture, a device or a state, and is hard to reproduce on demand77
SubtleFelt more than seen: it costs attention or trust, but is not noticed as a bug2220
SilentNo symptom on screen: found only by measuring, or by its consequences1614

By recommendation

The shape of the fix. Findings with the same recommendation are often fixed by the same change.

RecommendationFindingsOpen
Explain the decisionBefore asking, say in plain words what will happen, what it touches, whether it can be undone and why it is being asked, with the raw detail one tap away11
Confirm or undoA destructive action either asks first or can be undone, and the safe choice is the easy one11
Show the stateAlways show what the system is doing (listening, working, paused, failed) and keep what was captured until it is safely delivered11
Show what changedWhen the system rewrites what the reader made, mark it, and let them see and undo the change11
Keep the UI stillNothing moves, appears or takes focus unless the reader asked for it; chrome that hides stays hidden until a deliberate gesture32
Make it predictableThe same gesture always gives the same result, and the reader can set the state directly instead of coaxing it11
Cut to the essentialRemove or move down everything that is not the lead, the doors and the next step33
Write for a strangerRewrite the words for someone arriving for the first time11
Show it up frontPut the signal the reader decides by (length, author, short version, real numbers) where they look first76
Say what it isLabel it, in the reader's terms, at the moment it matters87
Start emptyInputs start unselected; record only what the reader did11
Ask firstMake keeping, adding or following a tap the reader makes22
Make it a linkGive the view, filter or label an address, and make it go there22
Build the way inCreate the missing page or path: tag pages, series, start here, a branded 40487
Open a channelSend it to a person by default, with consent, and give the reader a receipt33
Generate from one sourcePublish once and generate every copy, count and label from one manifest43
Check it at buildMake the release fail when it happens again31
Move it to the workshopTake builder things off reader pages, one link away44
Render on the first loadShow the content in the HTML, with no scripts and no prior visit needed22
Date the claimGenerate or date every statement about now, and mark fixes with their version21
Design for the hostUse the host's own mechanisms (route variable, sg.state, vault snapshot) instead of the browser's defaults44
Test where readers areRun it on the device, browser and host readers actually use before showing it11

By principle

The rule it breaks. Each principle has a one-minute test on the principles page.

PrincipleFindingsOpen
A decision comes with what you need to make itAny prompt that asks the reader to decide (allow, pay, share, delete) first says, in plain words, what will happen, what it touches, whether it can be undone, and why it is being asked. The raw detail is there for checking, not as the explanation.22
Work is never lost to one tap or a silent failureWhat the reader has made (a recording, a draft, a note) cannot be destroyed by a single unlabelled tap, and is kept when something fails. Destructive actions ask first or can be undone; failures keep the raw capture and offer a retry.11
The reader can always tell what the system is doingAt every moment the interface shows whether it is listening, working, paused, done or failed. A process that stops shows that it stopped; it never just goes quiet.11
The first screen is for a strangerOn a phone, the first screen says what this is, who it is for, and where to go next. The lead is on it. Chrome, metadata and method come after.86
Nothing moves that the reader did not moveWhile the reader is reading, the interface holds still. Toolbars, keyboards, banners and panels appear, move or take focus only on a deliberate gesture made for that purpose, never as a side effect of scrolling or reading.32
The same gesture gives the same result, so it can be learnedEvery interaction behaves the same way every time, triggered by something the reader controls (where they tap, how far they scroll), never by something they cannot see or repeat (how fast they flicked, what state an animation was in).11
Label the money, and never surprise with a chargeEvery number that is money says what it is. The first time anything is charged, the reader is told before or as it happens. Wording about balances never reads as debt or threat.54
A default is not an answerInputs that ask the reader's opinion start empty. Only what the reader actually did is recorded.22
Ask before keepingNothing is added to the reader's lists, profile or storage because they opened something. Keeping is a tap the reader makes.22
Every view is a linkAnything a reader can see, they can send: a filter, a search, a tag, a desk, a part of a series. The address changes when the view does.43
No dead endsEverything that looks like a way in is one: tags link to pages, missing pages offer the way back, each article ends with one next step.76
One source of truth for every factEach piece of content is published once, at one canonical address. Every count, date and label is generated from one manifest at build time.43
The publication is not the workshopReader pages carry reader things. How the site is built (versions, author tooling, agent strips, release history, admin) lives in one clearly separate area, one link away.44
Feedback reaches someone, and the reader gets a receiptEvery rating, request or 'what is missing' goes somewhere a person reads it, by default and with plain consent, and the reader keeps a receipt of what was sent.33
Say how long, and what kind, before the reader commitsEvery card and every link to a long piece shows reading time and format. Every long piece opens with a short version.33
Say who wrote it, and howThe byline names the person and the way the piece was made (with agents, from voice notes), where the reader looks, not in the footer. The purpose of the publication is one link away.44
Content is visible without waiting for scriptsThe page renders its content in HTML and shows it at once. Scripts enhance; they never gate what the reader can see.22
What a page says about the present is true nowLabels like 'edition of', 'currently', 'broken' and 'live' are dated or generated, and change when the facts do. A fixed problem is marked fixed, with the version.43
A vault app works inside the host, not just on its ownAn app is tested where readers open it: inside the vault host's sandboxed frame. Routing never assigns location.hash, storage goes through the host, and network reads come from the vault.33

By severity

High loses the reader or their trust on the first visit; medium costs effort or a return; low is polish.

SeverityFindingsOpen
High2016
Medium2521
Low1818

By status

As of the date each finding was last checked.

StatusFindingsOpen
Open5454
Partly fixed11
Fixed80

By kind

A failure works against the reader; a gap is something they need that is not there.

KindFindingsOpen
FailureSomething works against the reader4438
GapSomething the reader needs is not there1917