Repository navigation
Description
Updated 2026-11-06 (Pacific/Honolulu). Stow Roadmap Project is the single place to maintain current task status and priority. Use Workflow for status and Priorities for P1 → P3 ordering. This issue retains goals, decisions and delivery evidence; do not maintain a second live checklist here. ROADMAP.md describes scope, PARITY.md distinguishes implementation from native evidence, and #38 holds the acceptance matrix.
Delivery evidence snapshot — 2026-11-06
- Core browsing, preview, extraction, packing, editing, Glance, Tray, Settings, onboarding and zh-Hans are implemented.
- Keychain passwords (Keychain-backed password vault for archives #76), richer DMG creation (Richer DMG packing: password, APFS, custom window layout #77; AES remains DMG packing: AES password encryption (deferred from #77) #84), streaming listings (Streaming directory listing for huge archives #78), Open Recent (Real Open Recent (welcome + File › Open Recent) #83) and DMG Finder layout (DMG packing: Finder window chrome (deferred from #77) #85) are implemented.
- Browser/Details, Pack, Settings and Tray clarification work is merged; Claude Code: simplify Browser into a content-first workspace #160/Claude Code: organize Settings navigation and clarify Actions and Glance preferences #162/Claude Code: improve Pack discoverability and design advanced controls #153/Browser: replace prominent Checkup branding with contextual archive findings #229–Errors: preserve missing-archive-part guidance in compact failure rows #234/Browser: implement floating-path layout, trailing toolbar and consistent rounded surfaces #242 are closed. Actions/design umbrella acceptance remains below.
- Notarized releases through v0.1.4 are published. Latest release tag commit:
33d533e7a74c0f6c862ce49a8d0fc72e93a71e90(published 2026-11-05 UTC); signing, notarization, stapling, App Group implementation and release/appcast pipelines exist. - Installed 0.1.3 passed notarized-bundle verification with zero problems; enabled Finder/Quick Look plugins point to
/Applications/Stow.app. This is not a clean-Mac test. - Fix archive launch routing, remembered windows and native crashes #266 (
ec0a2e1) merged direct document-launch routing, last-used Browser/Glance mode and fixes for two symbolicated window/Finder-menu crashes. It passed 655 tests, all 1,202 strings translated, generated-plist checks and build-test/Universal 2/snapshot CI. - Publish a release containing Fix archive launch routing, remembered windows and native crashes #266: its commit is an ancestor of v0.1.4. Current signed runtime acceptance remains Verify source authorization with WeChat, persisted grants and signed builds #212/Tests not yet conducted before 1.0 (tracking) #38; publication does not prove clean-Mac or entry-point acceptance.
- Product plan: optional Tray residency, archive creation and entry-point clarity #286 product plan is complete through Implement optional Tray residency and new archive drafts #295–Design: draft is the Browser over an empty archive; ellipsis pass (#302) #304 and subsequent Design: Pack… and Save take their name without jumping the toolbar #309/Open the menu bar menu straight under the icon #310/Open archives in independent windows and copy between them #311. Tray: add menu-bar management actions and explicit Open Stow routing #290 normal foreground/menu/Dock checks passed. Support simultaneous archive sessions and copying between archives #308 multi-window/cross-archive copy is complete via Open archives in independent windows and copy between them #311, including independent checks and user-performed acceptance. Tray: fix intermittent second-click requirement for outside dismissal #287 remains a separate P3 rapid-click follow-up.
- Source-file access: recover WeChat opens with scoped authorization (plan) #210 source-access implementation plan is complete; remaining acceptance is tracked directly in Verify source authorization with WeChat, persisted grants and signed builds #212.
Acceptance and delivery scope — status lives in the Project
- Developer ID signing and notarization #32 / Tests not yet conducted before 1.0 (tracking) #38 — clean-Mac/account signed integration, Finder/Quick Look/App Group behavior and remaining platform matrix. Signing implementation is complete; these are acceptance gaps.
- Verify source authorization with WeChat, persisted grants and signed builds #212 — finish source-access acceptance. Real WeChat drag and double-click were performed by the user and opened successfully; original/drag-copy hashes matched; signed folder Allow/restart/sibling isolation/wrong-file/Escape/Forget checks and RAR extraction CRCs passed. The repaired signed-build, split and other entry-point cases remain.
- Claude Code: rename Next Steps to Actions and unify contextual action presentation #161 — Actions exact packaged-build workflow (selected/all Extract, More/customization persistence, installation safeguards, progress/cancel/retry, Browser/Glance switching), plus keyboard fixes and regression. Welcome/Pack offscreen-focus, individual control rings and Pack sizing fixes are merged in Keep keyboard focus visible in Welcome and Pack #321, with successful CI and human confirmation. CPU thread-input simplification is separate follow-up work. The earlier Glance Tab-order claim is superseded: the notice already owns initial focus and precedes navigation on the unchanged baseline. Remaining panels/prompts still need acceptance. Visual work and a bounded walkthrough are complete; these are not solely unperformed tests.
- Claude Code: product-wide UI and motion review #104 — remaining native system Reduce Motion/Transparency/Increase Contrast and product visual/motion acceptance. Design: display preferences across the redesigned surfaces (#104) #255/Design: white words read on the dark-mode accent (#104) #260/Design: encrypted archives — one lock, Glance's in-window password card, preparing-preview capsule (#104) #261/Actions: the others rise from behind the front button (#161) #262 are merged; snapshots do not replace real system-setting checks.
- Real demo content for screenshots, video and Try the Sample #69 — genuine sample assets and website refreshes are implemented. The current sample direction is explicit browser download with production bundling removed (Sample: remove demo assets from release bundles and offer an explicit download #292/Implement optional Tray residency and new archive drafts #295); older bundled-sample guidance is superseded. Current-release media acceptance/refresh and actual product video delivery stay open. Historical Website: product video and refreshed screenshots #31 is closed, but the website still uses a snapshot walkthrough as a video stand-in.
- Homebrew distribution — Homebrew cask #36's template/render/audit workflow is implemented; maintained public tap publication and a real supported install command are not verified. The workflow explicitly uploads a rendered cask and does not publish a tap.
- Live Sparkle update/download/install/busy-task deferral/relaunch between published releases — Tests not yet conducted before 1.0 (tracking) #38 item 21. An installed newer version alone does not prove this path.
Remaining defects, deferred and long-term
-
Tray: fix intermittent second-click requirement for outside dismissal #287 — P3/non-blocking intermittent second outside click after many rapid repetitions. Ordinary-speed Tray and guided interaction checks passed. Exact event sequence/root cause remains unconfirmed; keep open for diagnosis and any necessary fix/regression.
-
Accessibility: AX label recursion crashes archive activation and Browser failure states #93 — dedicated AX/VoiceOver investigation and full VoiceOver acceptance: deferred, low priority; ordinary mouse/keyboard crashes remain stability defects.
-
Intel runtime: bundled x86_64 7zz exits 132 under Rosetta, including the info command #144 — Intel/Rosetta investigation: deferred. Universal 2 presence is not physical Intel acceptance.
-
DMG packing: AES password encryption (deferred from #77) #84 — sandbox-safe DMG AES creation: deferred; no working MediaKit path is claimed.
-
Long-term: extensible Actions, Shortcuts and an optional plugin ecosystem #268 — extensible Actions, Shortcuts and an optional plugin ecosystem: long-term, demand-driven planning only, per the user's decision. No implementation date, SDK/runtime/marketplace commitment, or 1.0 acceptance requirement. Revisit when concrete workflows/developer demand justify it.
Approved ArcZip follow-up — scope index
The user approved the assessment and the first functional wave on 2026-11-06, then chose the Project as the progress/priority interface. Existing issues were linked directly; no duplicate task cards or PR cards are required.
- P1: Batch encrypted extraction with session password reuse #312, P1: Preserve incomplete sources and clean up verified split-volume sets #313, P1: Persist per-purpose packing defaults without changing them for one job #314, P1: Save existing temporary Tray results to a chosen folder #315 — batch passwords, success-aware split cleanup, per-purpose packing defaults and temporary Tray export; implementation PR Complete priority archive workflows and verify codec compatibility #319.
- P2: Add Zstd-coded 7Z decoding after confirmed compatibility gap #316 — verified Zstd-in-7Z decoder gap; safe-failure tests do not establish decoder support.
- P1: Support extraction and Tray export on FSKit exFAT volumes #317 — exFAT validation; retain the environment-blocked evidence and do not infer a product defect from the competitor's repair.
- P2: Split ZIP and 7Z archives by a requested volume count #322 — count-based splitting.
- P2: Play audio and video inside hover previews #323 — hover audio/video playback.
- P2: Extend Keychain password reuse and management in stages #324 — staged Keychain reuse and password management.
- P2: Extract archives containing multiple passwords with explicit partial results #325 — multi-password archives and explicit partial results.
- P2: Offer an optional shared result folder for batch extraction #326 — optional shared batch-output folder.
- P2: Display and copy archive comments in Archive Info #327 — archive comment display/copy.
- P2: Add optional quick extraction for Finder double-click opens #328 — optional double-click quick extraction.
- P2: Benchmark archive performance and expand compatibility coverage #329 — measured performance and compatibility-corpus work.
- P3: Make release notes discoverable from Help #330 — release-note discoverability.
- P3: Evaluate Traditional Chinese localization and language selection #331 — demand-driven Traditional Chinese localization.
Issue bodies own requirements, constraints, evidence and linked PRs. The Project owns Backlog / In Progress / In Review / Blocked / Done and P1 / P2 / P3. New backlog issues are planning scope, not implementation assignments or delivery promises. Move a task to Done only when its scoped completion is accepted; keep verification gaps open even if related code has merged.
Codex / Grok Bot owns functional behavior, security, state, cancellation and tests; Claude Code owns visual design and motion. No new Claude Code assignment or visual approval is claimed. Full VoiceOver acceptance remains deferred under #93. Existing multiwindow, drafts, selected-path stripping and basic Keychain work must not be duplicated.
Original implementation checklist — historical
Completed initial tasks: #1, #3, #4, #5; editing #7–#11; Glance/Tray #12/#13; Wave 3 #14–#24; design foundations #25–#31; release tooling #33–#37. Closed task status is not proof of full media delivery, tap publication or exhaustive accessibility acceptance. #32 and #38 remain open for their documented acceptance, with the newer follow-ups above making the remaining scope explicit.
Claude Code owns visual/motion design; Codex/Grok Bot owns functional correctness, state, security, cancellation and tests. No new assignment or visual sign-off is implied by this bookkeeping update. User-confirmed priorities supersede older comments.
Activity
neardws commentedon Oct 22, 2026
Next backlog (competitor parity — external UX only)
Opened from the post-0.1.0 gap pass (public features / interaction only; no DRM, unsandboxed main app, or third-party internals):
Still open from earlier waves: #32 (App Group + clean-Mac Gatekeeper), #38 (manual tests), #69 (real demo / website media).
In flight as PRs (no new issues): #73 App Group, #74 Homebrew cask audit token, #75 in-app / sample Quick Look blank preview.
neardws commentedon Oct 23, 2026
Progress note (2026-10-23, Asia/Shanghai): checklist above is still accurate for open items — only #32 and #38 remain unchecked for the 1.0 gate.
Since this issue was filed, wave/release work landed on
mainincluding Keychain vault (#76/#80), richer DMG packing (#77/#81; AES password + Finder chrome deferred as #84/#85), streaming listings (#78/#82), and notarized v0.1.0 / v0.1.1.Follow-ups opened for the remaining polish gaps: real Open Recent docs/verify (#83), Glance colourful window controls (#86). ROADMAP/PARITY header still wrongly said “no signed build / no release”; syncing in the PR for #83/#86.