Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

28 September installed Preview QA: fix requests and acceptance handoff

Aperta
#164 41 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
15/100
Tipo di issue
Documentazione
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
swift
Ambito
documentation

Direzione di ricerca

This issue is an audit index; implementation and acceptance belong to the linked focused tickets, not here. Start with the latest acceptance receipt linked near the top, then follow the specific ticket for any remaining work. Done for this index means keeping its handoff and build-specific status current; it does not define a standalone code change.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Latest QA status — 29 September

The pending batches and combined repair handoff now have build-specific results. Final retest matrix, remaining conditions and UI-slot release is the latest acceptance receipt; the historical audit below explains the original requests.

  • Tested current Preview 2.3.0 / build 20260929012947 / clean 4de2693 through fresh running Copy build details.
  • Native repair passes: #173 rejected clipboard preserves the draft; #223 real keyboard traversal; #220 older/newer imported-failure ordering during Read. The earlier stale timer-menu repair and Persona Cancel/framing/final Add also have native receipts.
  • Open P2 ready to implement: #227. Starting a Persona clears the older dictation failure before the result selector sees it. The ticket specifies the native reproduction, shared activity-start owner and regression/native acceptance. #220's complete session-preservation handoff remains unaccepted.
  • Explicit remaining coverage: real hover/held-input and global-shortcut paths, heard speech and receiver hardware, VoiceOver/restricted accounts, and the narrow fixture gaps listed on the owning tickets. These have not been counted as passes. Later #213/#214 refinements are not installed in this build.

The original drafts, selections, settings, clipboard and recovery files are preserved; no live QA job remains. The integration owner has the Mac UI/install slot. The shared QA skill retains the proven test-method improvements. GitHub remains the single implementation and acceptance queue.


Handoff

This is the index for the 28 September installed-app QA pass. Twenty-one focused requests have been filed and read back across two passes: fourteen original requests and seven additional requests below. The linked issues own implementation and acceptance; this index records coverage and sequencing. It extends #7 and #134.

All nine initial concerns, the managed-Mac delivery report and the navigation/first-use follow-up map to the requests and existing owners below. Additional source review found inert Draw settings, an audio-read recovery gap and a possible stale Home paste destination. Evidence strength is explicit; this is a bounded audit, not a claim to have caught every defect or completed a long-term soak.

Second pass: ordinary adjustments and state transitions

Seven additional focused requests were filed and read back after Ethan asked for a deeper pass. They extend the original scope; no existing request is dropped.

Priority Request Evidence Decided outcome
P1 #173 Read imports Reproduced in installed Preview One Replace/Keep decision; displayed text, draft, playback and export stay coherent
P2 #169 Persona appearance Native controls inspected + source + explicit user request Circle default for new profile portraits; quick Circle / Card / Original choice
P2 #170 selected versus shown Persona Native ambiguous controls + source targeting Identify Selected and Shown; direct Replace/Update; safe browsing and hidden-session semantics
P2 #171 one-card library dependency Source-confirmed; isolated/native fixture pending A valid card shows despite unrelated library size or missing artwork, within a bounded image budget
P2 #172 new portrait Cancel Source-confirmed; creation fixture pending Commit editable portraits only at final Add; Cancel leaves library, selection and membership unchanged
P2 #174 Timer lifecycle Both idle and finished failures reproduced Start / Pause / Resume / Restart follows one transport state; keep shortcut visibility semantics
P2 #175 conflicting dictionary rules Exact production-source harness + native validation affordance One case-insensitive Heard phrase; explicit Update preserves the exact chosen Write value

This segment freshly verified running build 20260928054038, source 00be555139f87d4557f48fcffc132b8621c251a2, through Copy build details.

Additional native results
  • Persona A shown → browse B → Size remains below B while targeting the existing overlay; only Hide is offered. Existing-card edit Cancel worked. Original selection, lock and size were restored; persisted overlay coordinates agreed with the prior recorded position at its reported precision.
  • Read synthetic A paused at roughly 0:06/0:18 → Saved resources Read aloud B: old highlighted A stayed visible, character count switched to B, and Stop revealed B. Original draft, voice and pace were restored. No new online provider use.
  • Timer idle Resume started a hidden countdown while its page said Off. A quiet six-second timer finished with Restart in its floating window and an enabled, ineffective Resume on the page. Duration/chime were restored and the timer was stopped/hidden.
  • Dictionary's Add enabled for identical Heard/Write inputs; those unsaved fields were cleared. A separate temporary Swift run of the exact installed TextRules and CorrectionRule source proved first-rule precedence and duplicate rejection. No saved user rule was changed.
  • The scratch build document was saved locally and closed. No application source, installation or user artwork was changed.

Source-only new-creation Cancel and large/missing-image library cases are not described as native reproductions. No new voice-latency, receiver or multi-display acceptance is claimed.

Implementation sequencing
  • Give one Persona owner #157/#158/#169/#170/#172; coordinate #171's frozen source representation and bounded decoding with that owner.
  • Add #173 and #175 to the Read/Dictate state owner, sequencing shared AppModel edits. #173 coordinates with #16 for cancellation and rejection of late generation results.
  • #174 is a bounded Timer transport correction under the existing coordinator.
  • Refresh this index before implementation scope is frozen and before installed acceptance. These are decided requests; Ethan does not need to arbitrate the product choices.

Open PRs #166 (production toolbar host), #167 (Grammar Fit rules) and #168 (paste destination expiry/Home Copy) were inspected as concurrent work, not counted as fixes installed by this audit. Their source progress does not close native acceptance.

The reusable Installed App QA skill now explicitly samples ordinary adjustments, selected-versus-live targets, imports into occupied drafts, cancellation after choosing an input, and idle/finished transport states. Its structural validation passed. An independent review tightened microphone shutdown, image budgets, generation cancellation, dictionary casing and shortcut-preservation acceptance in these new requests.

Fix order

Priority Request Evidence Outcome
P1 #151 Reproduced Capture completes but its editor is hidden and Snap stays busy
P1 #152 Reproduced Native toolbar bounds clip content and rounded chrome
P1 investigation #162 Source-supported risk Prove or rule out historical paste destinations using scratch fields
P2 #153 Reproduced Saved-shortcut panel ignores outside click
P2 #155 Reproduced Hide toolbar is ignored during Draw
P2 #154 Missing interaction reproduced Inspect capture images at a readable size
P2 #165 Manual copy/paste tested; restricted account pending Clear delivery without Accessibility approval
P2 #156 User report + source policy Brief no-speech feedback with retained recovery
P2 #157 Requested enhancement; drag counterexample tested Direct move/resize with click-through
P2 #158 User report; real-speech measurement pending Responsive, calmer voice indicator
P2 #159 Native structure + user screenshots Compact prompt selection and bounded receipts
P2 #160 Source-confirmed; control visible Remove inactive embedded palette controls
P2 #161 Source-confirmed; fault injection pending End Read visibly on audio-source error
P3 #163 Requested enhancement + source behaviour Predictable dragging with accessible placement fallback

Start the controlled #162 probe early because of its possible consequence. Then resolve #151/#152 before accepting capture and placement polish. Keep one integration owner for the installed Preview.

Existing work to reuse

  • #134 owns the shared-state/Grammar programme. A further source-confirmed Home correction belongs there: a prepared Persona session that is hidden is still offered as Hide persona, although its action resumes it. Use the existing state-aware action owner for the Home live row, tile and tooltip; acceptance must cover active/hidden/end plus independent Present/Timer. The source and acceptance comment is attached to #134.

  • #149 already owns Home recent-work errors; #150 already owns History main-thread/performance work. Neither is a new defect discovery from this native pass.

  • #137 owns History consolidation; the newer audit segment includes its #148 integration. Older navigation fragmentation must not become duplicate tickets.

  • Reuse #87 for larger-control/appearance acceptance, #76 for shortcut coverage, #112 for capability delivery, and #140 for the remaining 28 September installed checks. #140's original build assertion is historical; use the identities below.

  • #15 first-dictation follow-up owns resumable onboarding after unrelated capability use. #165 owns manual delivery and optional Accessibility setup. The work-Mac screenshots are user evidence with an unknown version, not a second tested installation.

Navigation labels, page folds and the first useful result have a further #134 acceptance comment, including the native Window/sidebar naming mismatch. The conditional screen-capture path on restricted accounts remains in #112's native acceptance; it was not tested on the user's work Mac.

Chosen behaviours

Ethan reports what fails in use; agents own routine product decisions and record them before implementation. These tickets require no further product-choice round trip:

  • #158: a subtle continuous voice outline, with response targets of 150 ms from the first received speech frame and 500 ms from the last frame back to quiet. These are acceptance targets, not measured results from this audit.
  • #160: remove the inactive embedded palette controls and obsolete instruction, preserving unrelated settings and legacy use.
  • #163: free toolbar placement, a 4-point drag threshold, optional docking within 16 points, and one compact Position… control for keyboard/precision use.
  • #157: direct manipulation through a small top-edge grab handle and edge/corner resize handles, preserving locked-body click-through and per-copy state.
  • #156 and #159: no-speech feedback within 2 seconds with reachable recovery; one searchable prompt list with bounded width and receipt. #159/#165 share accurate manual-copy guidance.

#152 now explicitly requires a guard through the production native host. #151 includes screenshot-inbox progress while a draft exists. Source-only claims remain source-only, and #162 remains a controlled investigation with decision criteria.

Tested build segments

The integration owner replaced Preview during the audit. Both identities were verified through Copy build details in the running app, with bundle metadata cross-checks:

  1. Preview 2.3.0 build 20260928043218, clean source 9578d8cfaa3f7f5b88568aa55a0e420ae4d9299d.
  2. Preview 2.3.0 build 20260928054038, clean source 00be555139f87d4557f48fcffc132b8621c251a2.

Environment: macOS 26.5.1 (25F80), Apple M5, built-in display. The focused tickets identify second-build native results and source-only limits. The supplied screenshots have no embedded build identity. Relevant immutable source paths were compared across both commits.

Process disappearance during the separate install was not classified as a crash. This auditor did not build, install or replace Preview and made no application source changes.

Native coverage and useful counterexamples

Journey Result
Screen capture from panel with Home selected; reveal hidden draft; Cancel Reproduced #151; Cancel recovered capture, no new saved Snap
Snap/Snap & Talk resting rows; expanded Present with Prompts Reproduced #152; some expanded Snap rows fitted correctly
Save the same shortcut, click another app, Escape Reproduced #153; same binding retained, Escape closed
Existing 24-section and synthetic two-section Snap & Talk image click No preview, #154; no section or narration edited
Start Draw with zero annotations; Hide toolbar; restore; Stop Reproduced #155; zero annotations retained
Persona lock/unlock, drag, restore lock, hide Unlocked dragging works; #157 is a direct-manipulation enhancement
Prompt menu structure, nested groups and dismissal Native structure confirmed; no prompt inserted, #159
Native Window menu versus current sidebar Snap & Talk naming drift observed; source and first-use acceptance added to #134
Read synthetic text: Listen, Pause, Resume, Stop UI progression passed and returned to editable text; original draft/voice/rate restored. Audible correctness was not independently assessed
Dictate delivery discovery; synthetic editable draft → Copy text → ordinary Cmd-V in TextEdit Exact text inserted once. Original draft and Paste automatically preference restored; no new dictation/history item created. This was not a no-Accessibility OS test
History Results filter → Home → All history Correctly reopened All; suspected filter-reset bug rejected
Timer start, pause, resume availability, Stop State/actions responded; timer stopped
Close main window and focus utility controls Utility remained reachable
Dictation recovery panel Persistent recovered-recording UI observed and dismissed; existing audio was not retried or replaced

No application automated suite was run by this audit. Source analysis supplied targeted regression requests; native acceptance above is limited to the exercised journeys.

Cleanup and remaining limits

Original Snap & Talk session selection, Dictate draft/delivery preference and Read draft/settings were restored. Three audit scratch documents were saved in the private local evidence folder and closed. Keep open is off; the floating toolbar is enabled. The test Persona lock was restored and its position returned to within roughly one screen pixel, not byte-identical coordinates. No test drawing, timer, reading or new capture draft remains active. Existing recordings, session contents and artwork were retained.

Private screenshots and raw test evidence remain local. Public issues contain generic reproduction steps and immutable code links.

Still unverified: fresh live dictation/silence/provider failure; measured natural speech and real audio audibility; microphone/headphone changes; actual meeting receivers; multi-display/Spaces/removal; VoiceOver and physical keyboard layouts; older supported macOS; fresh-machine permission flows; long-session/energy soak; complete new History/handoff and screenshot-relocation journeys. Keep their existing gates open.

Implementation coordination

  • Capture/editor and preview owner: #151, #154. Coordinate with current History work.
  • Floating surfaces owner: #152, #153, #155, #159, #163 and the Home correction in #134.
  • Persona owner: #157, #158, sharing PersonaOverlay changes deliberately.
  • Recovery/settings owners: #156, #160, #161, #162, #165; coordinate shared main/AppModel edits.

Use isolated implementation worktrees and one installer. A fix is accepted only after its meaningful regressions and signed installed retest, with Copy build details and disclosed hardware limits. An audit finding, passing render or another agent's answer does not close that acceptance.

Repeatable process

A reusable Installed App QA skill was installed locally and structurally validated. An independent dry run checked deduplication, evidence provenance, build changes, false crash reports, intentional click-through modes and private-evidence handling. The skill retains the method; live defects and status remain here in GitHub. Codex workers reviewed source owners and tested the skill independently. Opus's read-only review supplied acceptance and permission/navigation gaps; the parent checked those against source and native evidence before updating these requests. Fable revised its separate local prevention proposal against the audit corrections and ticket decisions. Both received the direction that agents resolve routine product choices. The skill now retains that rule and a chosen-behaviour field in its ticket checklist. Separate design work does not count as native QA acceptance.

Lingua principale
Swift
Stelle
0
Fork
1
Merge medio
12h 29m
PR unite (30g)
201

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di Ship-Work/workbench

Tutte le issue di Ship-Work/workbench

Issue simili

Altre issue su Swift

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.