← all audits

Every screen, and which you approved

Including popups, overlays, the composer and the eye.

UI inventory and owner approval ledger

Headline

The owner has explicitly approved 31 distinct numbered surfaces, not 38. The rulings' named lists contain 31 unique IDs; the unexplained seven are exactly Home (024) and the six OSL Chats scenes (036–041) that D68 still says are wrong. Calling those seven approved would claim a proof that did not happen. [RULINGS D46, D56, D58, D62, D67, D68]

The complete established approval set is: 001, 002, 004, 006, 008, 009, 010, 011, 012, 013, 014, 015, 016, 018, 019, 020, 021, 022, 023, 025, 026, 027, 028, 029, 030, 031, 032, 033, 034, 035, 043. D58’s running counter jumps from 15 to 22 while naming only 022; later counters propagate that seven-screen error. [RULINGS D56, D58, D62, D67, D68]

The design folder is not a clean completion list. It contains 72 files, but 33 still render the retired Home / Inbox / People / Privacy / Activity / Connections rail, one file declares itself retired, several files are deliberately paired to unrelated routes, and the actual recipient-side view-once journey has no complete design. [DESIGN UI-FINAL-INSTRUCTIONS/*.dc.html:4; SPEC 01-FULL-SPEC.md:308; RULINGS D41, D45(b)]

The owner’s suspicion about the 69-item review section is confirmed by its own canonical code: 74 of 76 owner-review captures predated 109 UI commits, and the file records his complaint that they were old UI. The review page also accepts live frames, static captures, or copied words, so an entry’s presence does not prove the current shipping surface was exercised. [CODE integration/full:apps/osl-hub-ui/scripts/task-7997-owner-reviews-lib.mjs:161-176; CODE integration/full:apps/osl-hub-ui/review-harness/owner-reviews.js:14-49; TASK 7997]

What the columns mean

Complete inventory

SurfaceKind / product statusDesignReview siteApprovedEvidence and finding
001 Create accountOnboarding routeYes — Create Account.dc.htmlYesYesAccepted in D62. [RULING D62; TASK 7950 screen 001]
002 Create a passwordOnboarding stateYes — Create Password.dc.htmlYesYesAccepted in D46. [RULING D46; TASK 7950 screen 002]
003 Recovery-protection refusalDeleted route/stateNo current pageYes, then removedNoD48/D55 delete it; it must not return. [RULINGS D43, D48, D55]
004 Recovery kitOnboarding routeYes — Recovery Kit.dc.htmlYesYesAccepted in D46. [RULING D46; TASK 7950 screen 004]
005 Recovery-word checkDeleted routeNo current pageYes, then deletedNoOwner said the page should not exist. [RULING D43; TASK 7954]
006 Identity choice, State AOnboarding routeYes — 006-007.dc.htmlYesYesAccepted in D56 after 006/007 were combined. [RULINGS D53, D56]
006/007 minted-link State BRe-homed to Friends; stale onboarding stateYes, stale — 006-007.dc.html:65-84The old 007 appeared; moved version did notNoD53 removes State B from onboarding. The file still contains it. [RULING D53; DESIGN 006-007.dc.html:65-84]
008 Stealth passwordOnboarding routeYes — Stealth Password.dc.htmlYesYesAccepted in D46. [RULING D46]
009 Burn passwordOnboarding routeYes — Burn Password.dc.htmlYesYesAccepted in D46. [RULING D46]
010 Pro code entryOnboarding routeYes — Pro Code.dc.htmlYesYesAccepted in D46. [RULING D46]
011 Pro active morphOnboarding stateYes — Onboarding Pro Active.dc.htmlYesYesAccepted in D46. [RULINGS D45(b), D46]
012 Onboarding privacy / send checksOnboarding routeYes — Send Checks.dc.htmlYesYesAccepted in D46 after the authority pairing was corrected. [RULINGS D45(b), D46]
013 Choose connectionOnboarding routeYes — Connection Choice.dc.htmlYesYesAccepted in D56. [RULING D56]
014 Old-message defaultsOnboarding route/stateYes — Old Messages.dc.htmlYesYesAccepted in D46; earlier accepted in D43. [RULINGS D43, D46]
015 Sending behaviorOnboarding routeYes — Send Mode.dc.htmlYesYesAccepted in D56. [RULINGS D50, D56]
016 Cover insertionOnboarding routeYes — Cover Insertion.dc.htmlYesYesAccepted in D56. [RULING D56]
017 Visibility onboardingDeleted route; stale designYes, stale — Onboarding Visibility.dc.htmlYes, then deletedNoD43 deletes it; the spec says no Visibility onboarding page, but its manifest still says routed. [RULING D43; SPEC 01-FULL-SPEC.md:308; DESIGN Onboarding Visibility.dc.html:4]
018 Browser importOnboarding routeYes — Onboarding Browser.dc.htmlYesYesD68 accepts it only after the multi-profile behavior was demonstrated. [RULING D68]
Browser profile dropdownPopover within 018Inside — Onboarding Browser.dc.html:27-59Yes, behavior demonstratedNo separate approvalD68 accepts numbered screen 018 after this behavior was proven, but does not separately accept the open dropdown UI. [RULINGS D62, D68; owner UI rule]
Browser “none found”Empty state within 018Inside — Onboarding Browser.dc.html:27-59Not establishedNo separate approvalThe approved ruling proves the real multi-profile path, not this synthetic empty state. [RULING D68; DESIGN Onboarding Browser.dc.html:27-59]
019 Detected appsOnboarding routeYes — Onboarding Detected.dc.htmlYesYesAccepted in D68 after the Telegram/logo defect was repaired. [RULINGS D67, D68]
Merged “Set up your apps”Retired design / unpaired route familyYes, explicitly retired — Onboarding Install.dc.htmlNEVER SEEN as this surfaceNoIts manifest calls it retired and lists unpaired runtime routes. Keeping it as a parity gate buys no product safety. [DESIGN Onboarding Install.dc.html:4; RULING D10(a)]
020 UnlockOnboarding routeYes — Sign In Final.dc.htmlYesYesAccepted in D62. [RULING D62]
Returning-user welcomeOnboarding routeYes — Onboarding Welcome Returning.dc.htmlNEVER SEENNoThis is a distinct rendered design surface, not the approved 020 unlock page. [DESIGN Onboarding Welcome Returning.dc.html; RULING D62]
021 Password recoveryOnboarding routeYes — Forgot Password.dc.htmlYesYesAccepted in D56. [RULING D56]
022 Key lostOnboarding routeYes — Key Lost.dc.htmlYesYesAccepted in D58 and listed again in D67. [RULINGS D58, D67]
023 Restore accountOnboarding routeYes — Restore Account.dc.htmlYesYesAccepted in D56. [RULING D56]
024 Home baseWorkspace routeYes — Home.dc.htmlYesNoD68 accepts how it looks but still says the notification-bell click is wrong; it is not in D68’s accepted list. [RULING D68]
Home notifications popoverPopoverInside — Home.dc.html:35-60Not established; 024 was liveNoThe outstanding bell behavior is exactly this surface boundary. [RULING D68; DESIGN Home.dc.html:35-60]
Home emptyEmpty state; old rail in designYes — Home Empty.dc.htmlNEVER SEENNoStandalone state was not one of the numbered review screens. It renders retired shell chrome. [DESIGN Home Empty.dc.html:4; SPEC 01-FULL-SPEC.md:308]
Home notifications emptyEmpty state; retired by specYes — Home Notifications Empty.dc.htmlNEVER SEENNoTASK 6892 says the Home notifications panel is out; the file still exists. [TASK 6892; DESIGN Home Notifications Empty.dc.html:4]
Home notifications offOff state; retired by specYes — Home Notifications Off.dc.htmlNEVER SEENNoTASK 6892 excludes this panel. [TASK 6892; DESIGN Home Notifications Off.dc.html:4]
Home tile customize/hide modeOverlay/edit modeInside — Home.dc.html:63-104Proxy only via TASK 0849 entryNoThe 69-review manifest points to a subject route, but no owner acceptance exists. [TASKS 0849, 7997; DESIGN Home.dc.html:63-104]
Home Friends panel closed/openDrawer/panelInside — Home.dc.html:66-67,110-225Proxy only via screen 024NoTASK 0833’s review entry points at generic Home rather than a driven panel state. [TASKS 0833, 7997]
Home Friends add/list/pendingPanel statesInside — Home.dc.html:113-151NEVER SEEN as driven statesNoNo numbered review surface or verdict names these states. [DESIGN Home.dc.html:113-151; RULING D68]
Home friend detail/profileNested page/panelInside — Home.dc.html:152-205Proxy only via TASK 0841NoTASK 0841 points at screen 027, not the actual Home friend detail. [TASKS 0841, 7997]
Home outgoing invitationsPanelInside — Home.dc.html:207-225NEVER SEENNoNo review screen or ruling names it. [DESIGN Home.dc.html:207-225]
Burn-account confirmationModal; old rail in designYes — Burn Dialog Account.dc.htmlNEVER SEENNoSeparate destructive modal was not in the 43-screen pack. [DESIGN Burn Dialog Account.dc.html:4; TASK 6892]
Generic toastToastYes — Toast.dc.htmlNEVER SEENNoA design leaf exists; no reviewed screen or approval names it. [DESIGN Toast.dc.html:4; RULINGS D46-D68]
Update dialogModal; old rail in designYes — Update Dialog.dc.htmlNEVER SEENNoD45(b) says it was wrongly used as the About reference. [RULING D45(b); DESIGN Update Dialog.dc.html:4]
Public Website HomeNon-app page / stale pairingYes — Website Home.dc.htmlNEVER SEEN as app UINoREADME calls it the public site; D45(b) says using it for Appearance was wrong. [RULING D45(b); DESIGN README.md:53; DESIGN Website Home.dc.html:4]
025 Settings AccountSettings regionInside — Settings.dc.htmlYesYesAccepted in D67. [RULING D67]
Settings Account emptyEmpty state; old rail in fileYes — Settings Account Empty.dc.htmlNEVER SEENNoA state file is not the accepted populated Account region. [DESIGN Settings Account Empty.dc.html:4; RULING D67]
Settings Account loadingLoading state; old rail in fileYes — Settings Account Loading.dc.htmlNEVER SEENNoNo review verdict names it. [DESIGN Settings Account Loading.dc.html:4]
Settings Account lockedLocked state; old rail in fileYes — Settings Account Locked.dc.htmlNEVER SEENNoNo review verdict names it. [DESIGN Settings Account Locked.dc.html:4]
Settings Account unavailableError state; old rail in fileYes — Settings Account Unavailable.dc.htmlNEVER SEENNoNo review verdict names it. [DESIGN Settings Account Unavailable.dc.html:4]
026 Settings AppsSettings regionInside — Settings.dc.htmlYesYesAccepted in D67 after behavior work. [RULING D67]
027 Settings FriendsSettings regionInside — Settings.dc.htmlYesYesAccepted in D67. [RULING D67]
028 Settings PrivacySettings regionInside — Settings.dc.htmlYesYesAccepted in D67. [RULING D67]
Settings SecuritySettings regionInside — Settings.dc.html:387-529NEVER SEEN as its own review regionNoIt was missing from the numbered pack; D57 says it ships. Shipping is not visual approval. [RULINGS D45(b), D57]
029 Settings WhitelistSettings regionInside — Settings.dc.htmlYesYesAccepted in D67. [RULING D67]
030 Settings ScrubSettings region/routeYes — Scrub.dc.htmlYesYesAccepted in D46, with behavior explicitly still needing real wiring. [RULING D46]
031 Cleanup / Device StorageOnboarding route after 016Yes — Device Storage.dc.htmlYesYesAccepted in D68 after slider behavior was fixed; its manifest still says Settings and is stale. [RULINGS D46(b), D68; DESIGN Device Storage.dc.html:4]
032 Settings NotificationsSettings regionInside — Settings.dc.htmlYesYesAccepted in D62. [RULING D62]
Notifications Scrub-scope expansionDisclosure/expanded stateInside — Settings.dc.html:161-171Not establishedNo separate approvalApproval of 032 does not prove this expansion was opened. [DESIGN Settings.dc.html:161-171; RULING D62]
033 Settings Window and soundsSettings regionInside — Settings.dc.htmlYesYesAccepted in D62 after the owner’s design added it. [RULINGS D57, D62]
034 Settings AppearanceSettings regionInside — Settings.dc.htmlYesYesAccepted in D67. [RULING D67]
Appearance profile/account-visibility editorNested settings panelInside — Settings.dc.html:198-301Not establishedNo separate approvalThe parent region passed; no ruling names this editor state. [DESIGN Settings.dc.html:198-301; RULING D67]
035 Settings AboutSettings regionInside — Settings.dc.htmlYesYesAccepted in D62. [RULING D62]
Settings change-password modal: mainModalInside — Settings.dc.html:28-61NEVER SEEN as modalNoNo reviewed ID or ruling names the modal. [DESIGN Settings.dc.html:28-61]
Settings change-password modal: stealthModal stateInside — Settings.dc.html:28-61NEVER SEENNoParent-region approval cannot be inherited. [DESIGN Settings.dc.html:28-61; owner UI rule]
Settings change-password modal: burnModal stateInside — Settings.dc.html:28-61NEVER SEENNoParent-region approval cannot be inherited. [DESIGN Settings.dc.html:28-61; owner UI rule]
Settings “Resist screenshots” controlStale control in accepted fileInside — Settings.dc.html:469UnknownNoCurrent spec says this switch was removed. Cut it; matching a poisoned control is negative work. [SPEC 01-FULL-SPEC.md:314; DESIGN Settings.dc.html:469]
Arrange tilesWorkspace edit routeNo clean dedicated final-design pagePresent as TASK 0849 entryNoRoute manifest marks it unreferenced; owner-review entry is not an approval. [PROOF 7049-route-design-manifest.json; TASKS 0849, 7997]
Tile status detailRouted/page stateNo dedicated design pageProxy only via Home in TASK 0857NoThe subject points at screen 024 rather than the status page. [TASKS 0857, 7997]
Mullvad workspaceWorkspace routeNo current design pageNEVER SEENNoLive route is unreferenced in the route/design manifest. [PROOF 7049-route-design-manifest.json; CODE integration/full:apps/osl-hub-ui/src/main.ts:365-366]
Onboarding MullvadOnboarding routeNo current design pageNEVER SEENNoExplicitly unpaired in Onboarding Install.dc.html. [DESIGN Onboarding Install.dc.html:4; PROOF 7049-route-design-manifest.json]
Onboarding silent-visibleLegacy live route, design deletedNo current pageNEVER SEENNoCurrent code union still lists it while EDITS says deleted. Cut the route instead of designing it. [CODE integration/full:apps/osl-hub-ui/src/main.ts:473; DESIGN EDITS.md:84-85]
Onboarding tutorial routeLegacy live route, tutorial deletedNo current pageNEVER SEENNoEDITS deletes the tutorial set, yet code still lists the route. [CODE integration/full:apps/osl-hub-ui/src/main.ts:473; DESIGN EDITS.md:70-71]
Onboarding apps routeLegacy live route, merged/deletedNo clean one-to-one pageNEVER SEENNoEDITS says the page was deleted; the live union still lists it. [CODE integration/full:apps/osl-hub-ui/src/main.ts:473; DESIGN EDITS.md:96-97]
Onboarding install routeLegacy live route / unreferencedNo valid current pairingNEVER SEENNoThe manifest calls the merged design retired and route accounting calls runtime install unreferenced. [DESIGN Onboarding Install.dc.html:4; PROOF 7049-route-design-manifest.json]
Onboarding decoy routeForbidden live routeNo current pageNEVER SEENNoSpec says no decoy workspace; code still lists decoy. Cut it. [SPEC 01-FULL-SPEC.md:308; CODE integration/full:apps/osl-hub-ui/src/main.ts:473]
Onboarding forward-secrecy picker, emptyRoute using old-rail designYes — Native Protect Picker Empty.dc.htmlNEVER SEENNoIt is a separate picker state, not an approved numbered screen. [DESIGN Native Protect Picker Empty.dc.html:4]
Native protection picker, populatedPicker state using old railYes — Native Protect Picker Populated.dc.htmlNEVER SEENNoNo acceptance names it. [DESIGN Native Protect Picker Populated.dc.html:4]
Owned confirmation / verificationModal/page using old railYes — Owned Confirmation Verify.dc.htmlNEVER SEENNoIts manifest points at the deleted recovery-check lineage. [DESIGN Owned Confirmation Verify.dc.html:4; RULING D43]
Service pageWorkspace route using old rail designYes — Service.dc.htmlPresent in older owner tasks; not in 43-screen packNoD41 says the old rail is wrong; no D46-D68 acceptance names Service. [RULING D41; DESIGN Service.dc.html:4]
Service local-protected sheet: initialSheet state using old railYes — Local Protected Sheet Initial.dc.htmlNEVER SEENNoSeparate state, no verdict. [DESIGN Local Protected Sheet Initial.dc.html:4]
Service local-protected sheet: preparedSheet state using old railYes — Local Protected Sheet Prepared.dc.htmlNEVER SEENNoSeparate state, no verdict. [DESIGN Local Protected Sheet Prepared.dc.html:4]
Service local-protected sheet: readySheet state using old railYes — Local Protected Sheet Ready.dc.htmlNEVER SEENNoSeparate state, no verdict. [DESIGN Local Protected Sheet Ready.dc.html:4]
Timed-delete schedulerUndesigned route/screenNoNEVER SEENNoOwner ruled it ships but did not approve its UI. [RULING D65; CODE integration/full:apps/osl-hub-ui/src/timed-delete-scheduler-screen.ts:102-104]
Settings scheduleUndesigned route/screenNoProxy entry TASK 1467 points at generic ScrubNoD65 says it ships; TASK 7997 does not render the actual schedule surface. [RULING D65; TASKS 1467, 7997]
Auto-whitelist rulesUndesigned route/screenWrong proxy — People In Chat Dialog Populated.dc.html:4Proxy entry points at screen 029NoThe design manifest and review subject both substitute unrelated UI. [RULING D65; TASKS 0741, 7997; DESIGN People In Chat Dialog Populated.dc.html:4]
Friend pageUndesigned route/screenWrong proxy — Friends Dialog Populated.dc.html:4Proxy entry points at screen 027NoD65 says it ships; the review site did not present the actual page. [RULING D65; TASKS 0841, 7997]
Behaviour screenUndesigned route/screenNoProxy entry points at 032 NotificationsNoThis is a concrete mislabeled old/wrong-UI review entry. [RULING D65; TASKS 3167, 7997]
Scrub idleRoute stateInside — Scrub.dc.html:65-75Generic 030 shownNo separate approvalD46 approved 030 visually, not each operational state. [RULING D46; DESIGN Scrub.dc.html:65-75]
Scrub runningRoute stateInside — Scrub.dc.html:65-75,142-166Proxy only via 030NoNo ruling names the running state. [TASK 1436; DESIGN Scrub.dc.html:142-166]
Scrub stoppedRoute stateInside — Scrub.dc.html:65-75,142-166Proxy only via 030NoNo ruling names the stopped state. [TASK 1436; DESIGN Scrub.dc.html:142-166]
Scrub what-to-findRouted/state screenNo dedicated final pageProxy only via 030NoTASK 1415 points at generic Scrub, not the driven subject. [TASKS 1415, 7997]
Scrub start choicesRouted/state screenNo dedicated final pageProxy only via 030NoTASK 1420 points at generic Scrub. [TASKS 1420, 7997]
Scrub empty reviewModal using old rail designYes — Scrub Review Dialog Empty.dc.htmlNEVER SEENNoNo numbered review screen or approval names it. [DESIGN Scrub Review Dialog Empty.dc.html:4; TASK 6898]
Scrub populated reviewModalNo complete final design pageNEVER SEENNoOnly the empty design exists; actual selection/review is a distinct state. [DESIGN Scrub Review Dialog Empty.dc.html:4; SPEC 01-FULL-SPEC.md:282-288]
AutoScrub activityScreenNo dedicated final pageProxy only via 030NoTASK 1479’s entry points at generic Scrub. [TASKS 1479, 7997]
AutoScrub purchase/Pro pathScreen/modal sequenceNo dedicated final pageProxy only via 010 Pro CodeNoTASK 1510’s review entry substitutes onboarding Pro Code. [TASKS 1510, 7997]
ActivityRetired route; old railYes — Activity.dc.htmlEarly old-shell review onlyNoThe route is retired; matching it buys no working product. [RULING D41; SPEC 01-FULL-SPEC.md:308]
Activity emptyRetired empty state; old railYes — Activity Empty.dc.htmlNEVER SEEN as distinct stateNoRetired surface. [DESIGN Activity Empty.dc.html:4; SPEC 01-FULL-SPEC.md:308]
Activity offRetired state / wrong pairingYes — Activity Off.dc.htmlNEVER SEEN as distinct stateNoD45(b) says using it for Notifications was wrong. [RULING D45(b); DESIGN Activity Off.dc.html:4]
ConnectionsRetired route; old railYes — Connections.dc.htmlEarly old-shell review onlyNoExplicitly retired. [RULING D41; SPEC 01-FULL-SPEC.md:308]
Connections emptyRetired empty state; old railYes — Connections Empty.dc.htmlNEVER SEENNoExplicitly retired. [DESIGN Connections Empty.dc.html:4; SPEC 01-FULL-SPEC.md:308]
InboxRetired route; old railYes — Inbox.dc.htmlEarly old-shell review onlyNoExplicitly retired. [RULING D41; SPEC 01-FULL-SPEC.md:308]
Inbox emptyRetired empty state; old railYes — Inbox Empty.dc.htmlNEVER SEENNoExplicitly retired. [DESIGN Inbox Empty.dc.html:4; SPEC 01-FULL-SPEC.md:308]
PeopleRetired route; old railYes — People.dc.htmlEarly old-shell review onlyNoExplicitly retired; features were re-homed. [RULING D41; TASK 5048c]
People emptyRetired empty state; old railYes — People Empty.dc.htmlNEVER SEENNoRetired route state. [DESIGN People Empty.dc.html:4; TASK 5048c]
People key-change pageRetired page; behavior re-homed to chat bannerYes — People Key Change.dc.htmlNEVER SEENNoTASK 6892 says do not ship it as a page; keep the key-change banner near the composer. [TASK 6892]
Friends dialog emptyDialog using old railYes — Friends Dialog Empty.dc.htmlNEVER SEENNoSeparate dialog state, no verdict. [DESIGN Friends Dialog Empty.dc.html:4]
Friends dialog populatedDialog / wrong route pairingYes — Friends Dialog Populated.dc.htmlNEVER SEEN as actual dialogNoManifest pairs it to friend-pictures, which is a different surface. [DESIGN Friends Dialog Populated.dc.html:4; TASK 7997]
People-in-chat dialog emptyDialog using old railYes — People In Chat Dialog Empty.dc.htmlNEVER SEENNoSeparate dialog state, no verdict. [DESIGN People In Chat Dialog Empty.dc.html:4]
People-in-chat dialog populatedDialog / wrong route pairingYes — People In Chat Dialog Populated.dc.htmlNEVER SEEN as actual dialogNoManifest pairs it to auto-whitelist rules. [DESIGN People In Chat Dialog Populated.dc.html:4]
Privacy destinationRetired route; old railYes — Privacy.dc.htmlEarly old-shell review onlyNoExplicitly retired; settings owns privacy now. [RULING D41; SPEC 01-FULL-SPEC.md:308]
036 OSL Chats active threadMain native chat sceneYes — OSLChats.dc.htmlYesNoD68 still says Chats is too far left and not 1:1. [RULING D68]
037 OSL Chats chat settingsModal regionInside — OSLChats.dc.html:255-297YesNoIt appeared as a named scene but remained in the rejected six-scene Chats set. [RULINGS D45(b), D68]
038 OSL Chats no friendsEmpty scene; companion file is stale authorityYes — OSLChats No Friends.dc.html and click-through stateYesNoD46 says the single click-through page is authority; D68 rejects Chats. [RULINGS D46(a), D68]
039 OSL Chats no active threadEmpty scene; companion file is stale authorityYes — OSLChats No Active Thread.dc.html and click-through stateYesNoSame rejection. [RULINGS D46(a), D68]
040 OSL Chats groups emptyEmpty scene; companion file is stale authorityYes — OSLChats Groups Empty.dc.html and click-through stateYesNoSame rejection. [RULINGS D46(a), D68]
041 OSL Chats enclaves emptyEmpty scene; companion file is stale authorityYes — OSLChats Enclaves Empty.dc.html and click-through stateYesNoSame rejection. [RULINGS D46(a), D68]
Chats friends dropdownPopoverInside — OSLChats.dc.html:34-52Not establishedNoNo independent verdict; parent Chats remained rejected. [DESIGN OSLChats.dc.html:34-52; RULING D68]
Chats conversation filters/sidebarMain regionInside — OSLChats.dc.html:76-170Yes as part of scenesNoThe shared left offset is the outstanding D68 defect. [RULING D68; DESIGN OSLChats.dc.html:76-170]
Chats category context menuPopoverInside — OSLChats.dc.html:85-115Not establishedNoRename/new channel/delete menu has no independent review. [DESIGN OSLChats.dc.html:85-115]
Chats conversation context menuPopoverInside — OSLChats.dc.html:135-146Not establishedNoNo verdict names it. [DESIGN OSLChats.dc.html:135-146]
Chats docked voice panelPanelInside — OSLChats.dc.html:175-207Not establishedNoNo verdict names the joined-call state. [DESIGN OSLChats.dc.html:175-207]
Chats voice participant moderationPopoverInside — OSLChats.dc.html:189-200NEVER SEENNoNo review evidence shows it opened. [DESIGN OSLChats.dc.html:189-200]
Chats pinned-message stripStrip/bannerInside — OSLChats.dc.html:241-246Not establishedNoNo independent approval. [DESIGN OSLChats.dc.html:241-246]
Chats bot disclosure stripStrip/bannerInside — OSLChats.dc.html:248-253Not establishedNoNo independent approval. [DESIGN OSLChats.dc.html:248-253]
Chats header overflowPopoverInside — OSLChats.dc.html:300-310NEVER SEENNoNo review evidence shows it opened. [DESIGN OSLChats.dc.html:300-310]
Chats key-change blockBanner/composer gateInside — OSLChats.dc.html:313-321Not establishedNoCorrect re-home of key-change behavior, but unapproved UI. [TASK 6892; DESIGN OSLChats.dc.html:313-321]
Chats message menu + emoji rowContext menuInside — OSLChats.dc.html:417-441Not establishedNoNo review verdict names it. [DESIGN OSLChats.dc.html:417-441]
Chats members railMain regionInside — OSLChats.dc.html:506-536Proxy only via active-thread TASK 1379NoTASK 1379 points at 036 but does not prove the permissions screens were driven. [TASKS 1379, 7997]
Chats member role/moderationPopoverInside — OSLChats.dc.html:513-524NEVER SEENNoNo actual driven subject in the review manifest. [DESIGN OSLChats.dc.html:513-524]
Chats typing indicatorEphemeral stateInside — OSLChats.dc.html:461-466Not establishedNoA live active thread does not establish this timed state appeared. [DESIGN OSLChats.dc.html:461-466]
Chats blocked-user composer bannerBanner/stateInside — OSLChats.dc.html:469-473NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:469-473]
Chats chosen-audience bannerBanner/stateInside — OSLChats.dc.html:475-480NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:475-480]
Chats reply composer bannerBanner/stateInside — OSLChats.dc.html:482-487NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:482-487]
Chats edit composer bannerBanner/stateInside — OSLChats.dc.html:489-494NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:489-494]
Chats composerComposerInside — OSLChats.dc.html:496 onwardPresent in 036, but not independently judgedNoThe owner’s rule explicitly says the composer is its own surface; Chats was rejected. [RULING D68; DESIGN OSLChats.dc.html:496-536]
Chats attachment/message preview statesMessage statesInside — OSLChats.dc.html:325-455Not establishedNoIncludes attachment preview, consumed placeholder, comments, poll, spoiler, bot commands, reactions and metadata. [DESIGN OSLChats.dc.html:325-455]
Chats plus menuPopoverInside — OSLChats.dc.html:631-658NEVER SEENNoNo evidence it opened on the review site. [DESIGN OSLChats.dc.html:631-658]
Chats attachment sheetModalInside — OSLChats.dc.html:539-579NEVER SEENNoSender options exist, but no independent review. [DESIGN OSLChats.dc.html:539-579]
Chats view-once sender toggleControl in attachment sheetInside — OSLChats.dc.html:539-579NEVER SEENNoDistinct from recipient open/consume UI. [DESIGN OSLChats.dc.html:539-579; owner view-once callout]
Chats audience pickerModalInside — OSLChats.dc.html:581-607NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:581-607]
Chats custom timerPopover/error stateInside — OSLChats.dc.html:661-686NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:661-686]
Chats GIF pickerPopoverInside — OSLChats.dc.html:689-700NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:689-700]
Chats poll composerModalInside — OSLChats.dc.html:1084-1104NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1084-1104]
Chats shared browserModalInside — OSLChats.dc.html:609-629NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:609-629]
Chats full-screen voice/video callOverlayInside — OSLChats.dc.html:1106-1117NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1106-1117]
Chats profile cardModalInside — OSLChats.dc.html:702-833NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:702-833]
Chats story settingsNested modal/panelInside — OSLChats.dc.html:742-764NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:742-764]
Chats post composer/image/reply/burnComposer/panel statesInside — OSLChats.dc.html:766-824NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:766-824]
Chats story viewerFull-screen overlayInside — OSLChats.dc.html:836-865NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:836-865]
Chats new-story composer/audienceComposer/modalInside — OSLChats.dc.html:867-893NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:867-893]
Chats group/enclave inviteModalInside — OSLChats.dc.html:895-916NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:895-916]
Chats enclave settingsModalInside — OSLChats.dc.html:918-1082NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:918-1082]
Chats role/permission editorModal regionInside — OSLChats.dc.html:938-960Proxy only via TASK 1379NoReview entry does not drive this exact editor. [TASKS 1379, 7997; DESIGN OSLChats.dc.html:938-960]
Chats enclave customizationModal regionInside — OSLChats.dc.html:963-974NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:963-974]
Chats channel settingsModal regionInside — OSLChats.dc.html:979-1016NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:979-1016]
Chats create channelSheet/modalInside — OSLChats.dc.html:1019-1029NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1019-1029]
Chats moderation/joiningModal regionInside — OSLChats.dc.html:1031-1043NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1031-1043]
Chats housekeepingModal regionInside — OSLChats.dc.html:1045-1061NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1045-1061]
Chats bot permissionsModal regionInside — OSLChats.dc.html:1063-1080NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1063-1080]
Chats new-conversation pickerWizardInside — OSLChats.dc.html:1119-1185NEVER SEENNoPicker, DM, group and enclave scenes have no independent review. [DESIGN OSLChats.dc.html:1119-1185]
Chats app customization: BackgroundModal paneInside — OSLChats.dc.html:1187-1366NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1187-1366]
Chats app customization: MessagesModal paneInside — OSLChats.dc.html:1187-1366NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1187-1366]
Chats app customization: ProfileModal paneInside — OSLChats.dc.html:1187-1366NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1187-1366]
Chats safety-number verificationGeneric modal variantInside — OSLChats.dc.html:1368-1408NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1368-1408]
Chats proof/capabilitiesGeneric modal variantsInside — OSLChats.dc.html:1368-1408NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1368-1408]
Chats burn-size pickerGeneric modal variantInside — OSLChats.dc.html:1368-1408NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1368-1408]
Chats burn confirmationGeneric modal variantInside — OSLChats.dc.html:1368-1408NEVER SEENNoNo review evidence. [DESIGN OSLChats.dc.html:1368-1408]
Chats tutorial/replay pillOverlayInside — OSLChats.dc.html:1415-1437NEVER SEENNoNo independent review. [DESIGN OSLChats.dc.html:1415-1437]
OSL Feed main feed/stories/composerRoute/page; mail pairing is staleYes — OSLFeed.dc.html:62-120NEVER SEENNoDesign README says OSL Mail was cut; no D46-D68 approval names Feed. [DESIGN README.md:13; DESIGN OSLFeed.dc.html:4,62-120]
OSL Feed saved emptyEmpty stateInside — OSLFeed.dc.html:122-147NEVER SEENNoNo review evidence. [DESIGN OSLFeed.dc.html:122-147]
OSL Feed saved populatedStateInside — OSLFeed.dc.html:122-147NEVER SEENNoNo review evidence. [DESIGN OSLFeed.dc.html:122-147]
OSL Feed profileNested pageInside — OSLFeed.dc.html:150-219NEVER SEENNoNo review evidence. [DESIGN OSLFeed.dc.html:150-219]
OSL Feed profile editNested stateInside — OSLFeed.dc.html:161-188NEVER SEENNoNo review evidence. [DESIGN OSLFeed.dc.html:161-188]
OSL Feed story viewerOverlayInside — OSLFeed.dc.html:222-248NEVER SEENNoNo review evidence. [DESIGN OSLFeed.dc.html:222-248]
OSL Mail statusCode-only workspace routeNo current designNEVER SEENNoLive route is unreferenced. [PROOF 7049-route-design-manifest.json; CODE integration/full:apps/osl-hub-ui/src/main.ts:365-366]
OSL Notes statusCode-only workspace routeNo current designNEVER SEENNoLive route is unreferenced. [PROOF 7049-route-design-manifest.json; CODE integration/full:apps/osl-hub-ui/src/main.ts:365-366]
042 OSL ServersRemoved from review/product setYes — OSLServers.dc.htmlYesNoD46 corrected the numbering and removed 042; it was never accepted. [RULING D46(c)]
OSL Servers normal channelPage regionInside — OSLServers.dc.html:111-145Only inside rejected 042NoNo acceptance. [RULING D46(c); DESIGN OSLServers.dc.html:111-145]
OSL Servers announcement channelPage stateInside — OSLServers.dc.html:147-178Not establishedNoNo acceptance. [DESIGN OSLServers.dc.html:147-178]
OSL Servers read-only composerComposer stateInside — OSLServers.dc.html:181-193Not establishedNoComposer is a separate surface under the owner rule. [DESIGN OSLServers.dc.html:181-193]
OSL Servers members railRegionInside — OSLServers.dc.html:197-215Not establishedNoNo acceptance. [DESIGN OSLServers.dc.html:197-215]
OSL Servers member profileModalInside — OSLServers.dc.html:219-238NEVER SEENNoNo acceptance. [DESIGN OSLServers.dc.html:219-238]
043 Discord OSL strip, default faceCarrier overlayYes — Strip.dc.htmlYesYesAccepted in D68 after its works-to-spec condition was met. This approval stops at the reviewed default surface and expressly named behavior. [RULINGS D67, D68]
Strip coach tourNine-step overlayInside — Strip.dc.html:67-80,414-425NEVER SEEN as current overlay; D62 says it did not appearNo separate approvalD68 later accepts numbered screen 043 but does not say the owner saw or accepted the tour. [RULINGS D62, D68; owner UI rule]
Strip quick settingsPopoverInside — Strip.dc.html:82-104Yes, defect explicitly reviewedNo separate approvalD62 names quick-settings parity; D68 accepts numbered screen 043, not this popover separately. [RULINGS D62, D68; owner UI rule]
Strip synthetic carrier windowDemo-only carrier backdropInside — Strip.dc.html:107-181Yes on comparison siteNo product approvalSynthetic carrier content is not the product and cannot prove real carrier UI. [RULING D45(c); DESIGN Strip.dc.html:107-181]
Strip carrier composerComposerInside — Strip.dc.html:158-179Seen in synthetic comparison; real state not establishedNo separate approvalThe owner says the composer counts separately; D68 does not name it as an approved surface. [DESIGN Strip.dc.html:158-179; owner UI rule]
Strip composer-unreachable warningWarning/bannerInside — Strip.dc.html:158-165Not establishedNoNo review verdict names the warning state. [DESIGN Strip.dc.html:158-165]
Strip cover wrap/slice previewComposer stateInside — Strip.dc.html:167-179Not establishedNoNo review verdict names it. [DESIGN Strip.dc.html:167-179]
Strip eye closed/open revealOverlay/control stateInside — Strip.dc.html:141-146Synthetic state may be present; real reveal not establishedNo separate approvalThe eye is explicitly its own surface. No ruling separately approves its open/closed real-carrier states. [SPEC 01-FULL-SPEC.md:232; DESIGN Strip.dc.html:141-146; owner UI rule]
Strip burn modalModalInside — Strip.dc.html:184-254NEVER SEEN as current modal; D56 says no menu existedNo separate approvalD68 accepts numbered screen 043, not this modal separately. [RULINGS D56, D68; owner UI rule]
Strip proof/readbackModalInside — Strip.dc.html:256-271Not establishedNoNo verdict names it. [DESIGN Strip.dc.html:256-271]
Strip whitelist modalModalInside — Strip.dc.html:273-299Only the old incomplete popup was seen; current full modal not establishedNo separate approvalD56 names the full-popup defect; D68 accepts numbered screen 043, not this modal separately. [RULINGS D56, D68; owner UI rule]
Strip duplicate whitelist markupStale duplicate, not a second product surfaceInside — Strip.dc.html:378-404No reason to review twiceNoDelete the duplicate; preserving it buys no safety or product function. [DESIGN Strip.dc.html:273-299,378-404]
Strip timer editorModalInside — Strip.dc.html:301-335Not establishedNoNo verdict names this editor. [DESIGN Strip.dc.html:301-335]
Strip timed-message logModal/panelInside — Strip.dc.html:337-353NEVER SEENNoNo verdict names it. [DESIGN Strip.dc.html:337-353]
Strip view-once sender settingsModalInside — Strip.dc.html:357-375Only the old incorrect settings were seen; current modal not establishedNo separate approvalD56 names the incorrect settings; D68 later accepts numbered screen 043. Neither this modal nor recipient view-once has its own acceptance. [RULINGS D56, D68; owner UI rule]
Discord checkingOverlay stateYes — Discord Overlay Checking.dc.htmlNEVER SEEN as distinct stateNoNo numbered review ID or approval names it. [DESIGN Discord Overlay Checking.dc.html:4]
WhatsApp overlay emptyCarrier overlay empty stateYes — WhatsApp Overlay Empty.dc.htmlNEVER SEENNoNo review verdict. [DESIGN WhatsApp Overlay Empty.dc.html:4; SPEC 01-FULL-SPEC.md:130]
WhatsApp overlay draft/composerCarrier overlay composer stateYes — WhatsApp Overlay Draft.dc.htmlNEVER SEENNoNo review verdict. [DESIGN WhatsApp Overlay Draft.dc.html:4]
WhatsApp overlay errorCarrier overlay error stateYes — WhatsApp Overlay Error.dc.htmlNEVER SEENNoNo review verdict. [DESIGN WhatsApp Overlay Error.dc.html:4]
Native Discord protected transcript rowsShipping overlay stateNo matching complete design pageNEVER SEEN as shipping stateNoCanonical renders pending/revealed rows inline; 043’s synthetic design does not prove them. [CODE integration/full:apps/osl-hub-ui/src/overlay.ts:1468-1517; RULING D45(c)]
Native Discord attachment trayShipping overlay trayNo dedicated final design pageNEVER SEENNoShipping overlay exposes a distinct attachment surface; no approval names it. [CODE integration/full:apps/osl-hub-ui/src/overlay.html; TASK 4403]
Native Discord shieldNative overlay/scrim windowNo design pageNEVER SEENNoIt is a separate native window, not the reviewed Strip HTML. [CODE integration/full:apps/osl-hub/src/native_discord_overlay.rs; TASK 4403]
Timer editor overlayGeneric overlayNo final .dc.htmlNEVER SEEN; fixture onlyNoCode has a scrim/panel; screenshots are fixtures, not owner approval. [CODE integration/full:apps/osl-hub-ui/src/timer-overlay.ts:70-101; TASK 0553]
Recipient view-once: tap-to-openRequired recipient stateNo designNEVER SEENNoDesign has sender settings and a consumed placeholder only. [DESIGN Strip.dc.html:357-375; DESIGN OSLChats.dc.html:370-371,539-579]
Recipient view-once: open image/videoShipping native windowNo designNEVER SEENNoShipping uses a bare native Win32 image viewer, not the reviewed generic fixture. [CODE integration/full:apps/osl-hub/src/native_image_viewer.rs:289-315]
Recipient view-once: countdown/open timerRequired state; missing visible UINo designNEVER SEENNoNative timer starts after first paint and closes the window but draws no countdown. [CODE integration/full:apps/osl-hub/src/native_image_viewer.rs:173-175,272-285]
Recipient view-once: close/consumedRequired stateOnly placeholder — OSLChats.dc.html:370-371NEVER SEEN as working transitionNo“VIEWED ONCE — GONE” is demo copy, not an audited transition. [RULING D45(c); DESIGN OSLChats.dc.html:370-371]
Recipient view-once: second-open refusalRequired error stateNo designNEVER SEENNoNo complete rendered recipient journey exists. [TASK 1350; CODE integration/full:apps/osl-hub-ui/src/view-once-player-screen.ts:91-104]
Recipient view-once: screenshot notice/resultRequired notification stateNo designNEVER SEENNoTask requires an honest notice; no reviewed UI surface exists. [TASK 6844; DESIGN README.md:74]
Generic view-once overlay fixtureDead/unwired UI moduleFixture onlyFixture, not dev-site productNoNo production importer exists; do not cite it as the shipping UI. [CODE integration/full:apps/osl-hub-ui/src/view-once-overlay.ts:74-90]
Generic view-once player fixtureDead/unwired UI moduleFixture onlyFixture, not dev-site productNoNo production importer exists. [CODE integration/full:apps/osl-hub-ui/src/view-once-player-screen.ts:91-104]
Telegram private composer/boxCarrier-specific surfaceNo .dc.htmlNEVER SEENNoNo carrier-specific design/review surface exists. [CODE integration/full:apps/osl-hub-ui/src/telegram-private-box.ts:179; SPEC 01-FULL-SPEC.md:114]
Telegram eye/reveal stateCarrier-specific overlay/controlNo .dc.htmlNEVER SEENNoOnly code/tests establish the control; no owner review. [CODE integration/full:apps/osl-hub-ui/src/telegram-eye-controls.test.ts:45-88; SPEC 01-FULL-SPEC.md:114]
Signal private composer/boxCarrier-specific surfaceNo .dc.htmlNEVER SEENNoNo carrier-specific design/review surface exists. [CODE integration/full:apps/osl-hub-ui/src/signal-private-box.ts:192; SPEC 01-FULL-SPEC.md:122]
Signal story composerCarrier-specific composerNo .dc.htmlNEVER SEENNoImplemented surface has no design/review verdict. [CODE integration/full:apps/osl-hub-ui/src/signal-story-composer.ts:51; TASK 1162]
Instagram attachment trayCarrier-specific trayNo .dc.htmlNEVER SEENNoNo design/review verdict. [CODE integration/full:apps/osl-hub-ui/src/instagram-attachment-tray.ts:99; TASK 1150]
Instagram story composerCarrier-specific composerNo .dc.htmlNEVER SEENNoNo design/review verdict. [CODE integration/full:apps/osl-hub-ui/src/instagram-story-composer.ts:41; TASK 1162]
Instagram eye/reveal controlsCarrier-specific overlay/controlNo .dc.htmlNEVER SEENNoNo design/review verdict. [CODE integration/full:apps/osl-hub-ui/src/instagram-eye-controls.ts:51]
X attachment trayCarrier-specific trayNo .dc.htmlNEVER SEENNoNo design/review verdict. [CODE integration/full:apps/osl-hub-ui/src/x-attachment-tray.ts:76-78]
X reply composerCarrier-specific composerNo .dc.htmlNEVER SEENNoNo design/review verdict. [CODE integration/full:apps/osl-hub-ui/src/x-reply-chain.ts:26-47]
Email draft overlay/composerShared Gmail/Outlook/etc. overlayNo final .dc.htmlNEVER SEEN; screenshot fixtures onlyNoCode defines a full draft, attachment and send-review surface; design folder has none. [CODE integration/full:apps/osl-hub-ui/src/email-protected-overlay.ts:201-233; TASK 1228]
Email reading overlayShared carrier reveal/timer surfaceNo final .dc.htmlNEVER SEEN; screenshot fixtures onlyNoCode defines a distinct reading overlay. [CODE integration/full:apps/osl-hub-ui/src/email-protected-overlay.ts:241-259; TASK 1228]
Gmail-specific carrier statesCarrier overlays/composers/reveal/errorsNoNEVER SEENNoNo carrier-specific rendered page exists; provider screenshot tasks are not owner UI approval. [TASKS 1235, 7769; DESIGN README.md:13]
Outlook web/desktop statesCarrier overlays/composers/reveal/errorsNoNEVER SEENNoNo carrier-specific rendered page exists. [TASKS 1241, 1290; DESIGN README.md:13]
Proton/Yahoo/AOL/GMX/Mail.com/iCloud statesCarrier overlays/composers/reveal/errorsNoNEVER SEENNoNo carrier-specific rendered page exists. [TASKS 1247, 1253, 1259, 1265, 1271, 1277; DESIGN README.md:13]
“Opening OSL” boot shellBoot/loading windowNo .dc.htmlNEVER SEENNoThis is a shipping entry surface outside the numbered review. [CODE integration/full:apps/osl-hub-ui/index.html:24]
Bootstrap failure/retryError/recovery stateNo .dc.htmlNEVER SEENNoNo review verdict names it. [CODE integration/full:apps/osl-hub-ui/src/main.ts:2377]
Render-recovery screenError/recovery stateNo .dc.htmlNEVER SEENNoNo review verdict names it. [CODE integration/full:apps/osl-hub-ui/src/main.ts:12499]
JavaScript-loading stateLoading/error stateNo .dc.htmlNEVER SEENNoNo review verdict names it. [CODE integration/full:apps/osl-hub-ui/src/main.ts:13056]
Capture shield windowIntentionally black native overlayNo .dc.htmlNEVER SEENNoIt is a distinct shipping window and cannot inherit Strip approval. [CODE integration/full:apps/osl-hub-ui/shield.html:1]
WhatsApp QA windowQA-only windowNo shipping designNEVER SEEN as product UINoREADME excludes QA-failed harnesses; QA UI is not product approval. [CODE integration/full:apps/osl-hub-ui/src/whatsapp-qa.ts:50; DESIGN README.md:18]
Signal QA protected-composer pageQA-only route/windowWrongly paired to Strip in route manifestThe 043 Strip was seen; this page was notNoA QA surface cannot inherit 043 approval. [CODE integration/full:apps/osl-hub-ui/src/signal-qa-main.ts:37; PROOF 7049-route-design-manifest.json]
Service unavailableRoute stateNo separate current designNEVER SEENNoCanonical Service renders this distinct state. [CODE integration/full:apps/osl-hub-ui/src/main.ts:7124]
Service setup guide/cardRoute stateNo separate current designNEVER SEENNoNo approval names the setup state. [CODE integration/full:apps/osl-hub-ui/src/main.ts:7124]
Service existing native sessionRoute stateNo separate current designNEVER SEENNoNo approval names it. [CODE integration/full:apps/osl-hub-ui/src/main.ts:7124]
Service hosted native viewportEmbedded surfaceNo separate current designNEVER SEENNoNo approval names it. [CODE integration/full:apps/osl-hub-ui/src/main.ts:7124]
Service browser-companion viewportEmbedded surfaceNo separate current designNEVER SEENNoNo approval names it. [CODE integration/full:apps/osl-hub-ui/src/main.ts:7124]
Service embedded-loading skeletonLoading stateNo separate current designNEVER SEENNoNo approval names it. [CODE integration/full:apps/osl-hub-ui/src/main.ts:7124]
Service account pickerPicker/popoverNo separate current designNEVER SEENNoNo approval names it. [CODE integration/full:apps/osl-hub-ui/src/main.ts:7124]
OSL Mail loading/unavailableLoading/error statesNo current design; mail pages cutNEVER SEENNoFull mail UI is not reached from normal Home; Home routes to a not-in-release status page. [CODE integration/full:apps/osl-hub-ui/src/osl-mail-view.ts:89-97; CODE integration/full:apps/osl-hub-ui/src/main.ts:11255]
OSL Mail provisioningSetup stateNo current design; mail pages cutNEVER SEENNoNot part of current reviewed design. [CODE integration/full:apps/osl-hub-ui/src/osl-mail-view.ts:101; DESIGN README.md:13]
OSL Mail inbox/empty/refusalMain and empty/error statesNo current design; mail pages cutNEVER SEENNoNot part of current reviewed design. [CODE integration/full:apps/osl-hub-ui/src/osl-mail-view.ts:109-111; DESIGN README.md:13]
OSL Mail no-thread-selectedEmpty stateNo current design; mail pages cutNEVER SEENNoNot part of current reviewed design. [CODE integration/full:apps/osl-hub-ui/src/osl-mail-view.ts:115; DESIGN README.md:13]
OSL Mail thread readerReading surfaceNo current design; mail pages cutNEVER SEENNoNot part of current reviewed design. [CODE integration/full:apps/osl-hub-ui/src/osl-mail-view.ts:120; DESIGN README.md:13]
OSL Mail composeComposerNo current design; mail pages cutNEVER SEENNoNot part of current reviewed design. [CODE integration/full:apps/osl-hub-ui/src/osl-mail-view.ts:131; DESIGN README.md:13]
OSL Mail settingsNested settings surfaceNo current design; mail pages cutNEVER SEENNoNot part of current reviewed design. [CODE integration/full:apps/osl-hub-ui/src/osl-mail-view.ts:134; DESIGN README.md:13]
OSL Mail error stripStrip/bannerNo current design; mail pages cutNEVER SEENNoNot part of current reviewed design. [CODE integration/full:apps/osl-hub-ui/src/osl-mail-view.ts:134; DESIGN README.md:13]
Settings account populated identity listAccount stateInside accepted 025 but not separately designedPresent in 025No separate approvalOnly the parent Account region is approved. [CODE integration/full:apps/osl-hub-ui/src/main.ts:8336; RULING D67]
Account export warning/reauthorizeModal/journey statesNo .dc.htmlNEVER SEENNoNo owner verdict names this export journey. [CODE integration/full:apps/osl-hub-ui/src/account-export.ts:393-431]
Account export writing/verifyingProgress statesNo .dc.htmlNEVER SEENNoNo owner verdict names them. [CODE integration/full:apps/osl-hub-ui/src/account-export.ts:393-431]
Account export success/failureResult statesNo .dc.htmlNEVER SEENNoNo owner verdict names them. [CODE integration/full:apps/osl-hub-ui/src/account-export.ts:393-431]
Remove EverythingDestructive screenNo .dc.htmlNEVER SEENNoA distinct screen exists in canonical code. [CODE integration/full:apps/osl-hub-ui/src/remove-everything-screen.ts:57]
Settings Friends requests emptyEmpty stateNo separate .dc.htmlNEVER SEENNoParent 027 approval does not cover this state. [CODE integration/full:apps/osl-hub-ui/src/friends-settings-surface.ts:225-241; RULING D67]
Settings Friends friends/accounts emptyEmpty statesNo separate .dc.htmlNEVER SEENNoParent 027 approval does not cover them. [CODE integration/full:apps/osl-hub-ui/src/friends-settings-surface.ts:225-241; RULING D67]
Settings Friends requests/friends/accounts populatedTab statesNo separate .dc.htmlNot establishedNo separate approvalParent 027 approval does not prove each tab state. [CODE integration/full:apps/osl-hub-ui/src/friends-settings-surface.ts:225-241; RULING D67]
Whitelist no conversations/no matchEmpty/search statesNo separate .dc.htmlNEVER SEENNoParent 029 approval does not prove these states. [CODE integration/full:apps/osl-hub-ui/src/whitelisting-screen.ts:210-230; RULING D67]
Whitelist saved/unsavedMutation/result statesNo separate .dc.htmlNot establishedNo separate approvalParent 029 approval does not prove both mutation states. [CODE integration/full:apps/osl-hub-ui/src/whitelisting-screen.ts:210-230; RULING D67]
About update bannerBannerInside About code, no distinct design leafNot establishedNo separate approval035 approval does not establish this transient banner. [CODE integration/full:apps/osl-hub-ui/src/main.ts:12389; RULING D62]
Link-disconnect confirmationModalNo .dc.htmlNEVER SEENNoSeparate modal, no approval. [CODE integration/full:apps/osl-hub-ui/src/link-disconnect-screen.ts:268]
Native fresh-start confirmationNative popupNo .dc.htmlNEVER SEENNoSeparate native confirmation. [CODE integration/full:apps/osl-hub-ui/src/main.ts:4573]
Native sending-mode confirmationNative popupNo .dc.htmlNEVER SEENNoSeparate native confirmation. [CODE integration/full:apps/osl-hub-ui/src/main.ts:7958]
Native protected-fallback confirmationNative popupNo .dc.htmlNEVER SEENNoSeparate native confirmation. [CODE integration/full:apps/osl-hub-ui/src/main.ts:9367]
Native reopen-app confirmationNative popupNo .dc.htmlNEVER SEENNoSeparate native confirmation. [CODE integration/full:apps/osl-hub-ui/src/main.ts:10870]
Native borrow-open-app confirmationNative popupNo .dc.htmlNEVER SEENNoSeparate native confirmation. [CODE integration/full:apps/osl-hub-ui/src/main.ts:10959]
In-DOM tooltip systemTooltipNo page-level designNEVER SEEN as independently reviewed UINoTooltips count as surfaces under the owner rule. [CODE integration/full:apps/osl-hub-ui/src/in-dom-tooltip.ts:5-9]
Local protected sheet: write/open/capsule/plaintext/view-once modesSheet statesInitial/prepared/ready files onlyNEVER SEENNoCanonical has more modes than the three old-rail design leaves. [CODE integration/full:apps/osl-hub-ui/src/local-protected-sheet.ts:119; DESIGN Local Protected Sheet *.dc.html:4]
Peer protected sheet: friend-empty/approval/write/open/receipt/opened-onceSheet statesNo final .dc.htmlNEVER SEENNoDistinct current surfaces with no design or verdict. [CODE integration/full:apps/osl-hub-ui/src/peer-protected-sheet.ts:157]
Verify-friend confirmationModalNo final .dc.htmlNEVER SEENNoSeparate confirmation state. [CODE integration/full:apps/osl-hub-ui/src/main.ts:7109]
Remove-friend confirmationModalNo final .dc.htmlNEVER SEENNoSeparate confirmation state. [CODE integration/full:apps/osl-hub-ui/src/main.ts:7109]
Clear-activation confirmationModalNo final .dc.htmlNEVER SEENNoSeparate confirmation state. [CODE integration/full:apps/osl-hub-ui/src/main.ts:7109]
Safety-number dialogModalDesign only as a generic Chats variantNEVER SEEN as shipping dialogNoNo verdict names the shipping dialog. [CODE integration/full:apps/osl-hub-ui/src/main.ts:6515; DESIGN OSLChats.dc.html:1368-1408]
Start Something: directSheet stateInside new-conversation design onlyNEVER SEEN as shipping sheetNoSeparate direct-chat scene. [CODE integration/full:apps/osl-hub-ui/src/start-something.ts:114; DESIGN OSLChats.dc.html:1119-1185]
Start Something: groupSheet stateInside new-conversation design onlyNEVER SEEN as shipping sheetNoSeparate group scene. [CODE integration/full:apps/osl-hub-ui/src/start-something.ts:114; DESIGN OSLChats.dc.html:1119-1185]
Start Something: enclaveSheet stateInside new-conversation design onlyNEVER SEEN as shipping sheetNoSeparate enclave scene. [CODE integration/full:apps/osl-hub-ui/src/start-something.ts:114; DESIGN OSLChats.dc.html:1119-1185]
Shipping Chats no selected conversationEmpty stateInside current Chats authoritySeen as 039, but current code state not proven currentNoD68 rejects Chats. [CODE integration/full:apps/osl-hub-ui/src/osl-chats-view.ts:600; RULING D68]
Shipping Chats empty conversation/no messagesEmpty stateInside current Chats authorityNot establishedNoNo independent review. [CODE integration/full:apps/osl-hub-ui/src/osl-chats-view.ts:663; RULING D68]
Shipping Chats blocked-sendComposer refusal stateInside current Chats authorityNEVER SEENNoNo independent review. [CODE integration/full:apps/osl-hub-ui/src/osl-chats-view.ts:679]
Shipping Chats attachment refusal/offline/receipt/drop/displayComposer/message statesInside current Chats authority at bestNEVER SEENNoCurrent code renders these states; no owner verdict names them. [CODE integration/full:apps/osl-hub-ui/src/main.ts:6466]
Strip failed-send bannerBannerNo distinct final design stateNEVER SEEN as current shipping stateNoCurrent overlay contains the banner; 043 approval does not prove it. [CODE integration/full:apps/osl-hub-ui/overlay.html:10-22]
Strip composer lock/off/busy/refused/unavailableComposer statesPartially represented in Strip.dc.htmlNEVER SEEN as the complete current matrixNoThe current matrix is broader than the reviewed default strip. [CODE integration/full:apps/osl-hub-ui/src/main.ts:5465; CODE integration/full:apps/osl-hub-ui/overlay.html:22]
Strip composer warning/counter/attachment/view-once/sendComposer statesPartially represented in Strip.dc.htmlNEVER SEEN as the complete current matrixNoThe owner explicitly counts composer states separately. [CODE integration/full:apps/osl-hub-ui/src/main.ts:5465; owner UI rule]
Strip whitelist-revoked warningWarning/bannerNo distinct design stateNEVER SEENNoNo verdict names it. [CODE integration/full:apps/osl-hub-ui/src/main.ts:5428]
Strip unreachable-plaintext warning, shipping implementationWarning/bannerRelated design at Strip.dc.html:158-165Design state not proven against shippingNoThe current warning must be reviewed in its real overlay, not inherited from HTML. [CODE integration/full:apps/osl-hub-ui/src/main.ts:5378; DESIGN Strip.dc.html:158-165]

Surfaces the owner has never actually seen on the dev site

This is the actionable list, grouped only to keep it usable. Every item is a separate row above.

Product-first decision

Cut the review and parity work for retired routes, stale sidebar pages, the duplicated whitelist modal, and mismatched proxy subjects. None stops a user being harmed and none stops a shipping lie; keeping them slows the working product and can make the review site itself lie about what was shown. Keep only the truth boundary: a surface is not approved until the actual current surface appears on the dev site and the owner approves it. [Owner instruction in this audit; RULINGS D41, D45(b), D45(c); TASK 7997]

The next UI review should start with the working paths the owner has never seen: recipient view-once, real carrier composer/eye/error states, and the actual nested Chats composer/modals. Do not spend that sitting re-reviewing accepted numbered screens or polishing deleted pages. [RULING D55; owner product-first instruction in this audit]