Skip to content

Add a native Help menu with public support links #64

Closed

Description

@lastobelus

Outcome

Markover has a standard macOS Help menu that gives users an in-app path to authoritative public guidance and support without duplicating documentation inside the application.

Acceptance criteria

  • A top-level Help menu uses Electron's standard help-menu role so macOS supplies conventional placement and menu search behavior.
  • The menu links to the public user guide and the repository's chosen support/reporting path.
  • The menu links to the forthcoming public Privacy and local data page owned technically by Authenticate the loopback review API #12 and completed as part of Publish preview, privacy, storage, deletion, and support documentation #9.
  • Public links open in the user's default browser through the established safe external-navigation boundary; Markover does not navigate its review window.
  • Link labels and destinations are sourced from one maintainable definition and do not silently diverge from the README or public site.
  • Offline or browser-launch failures produce bounded, actionable feedback without affecting review state.
  • Keyboard access, VoiceOver naming, focus return, and standard macOS menu behavior are verified.
  • Automated coverage protects menu structure and exact allowed destinations; packaged-app validation exercises each command.

Ordering and dependencies

Scope boundaries

  • Authoritative external documentation and support links only.
  • No embedded help browser, searchable documentation system, update checker, diagnostics upload, or custom support backend.
  • No compatibility layer or duplicate local copy of the public privacy page.

Roadmap placement

  • Milestone / launch gate: Broad announcement
  • Priority: High
  • Delivery: Independent
  • Workstream: Product contract
  • Status: Todo

Activity

  1. added this to the Broad announcement milestone on Aug 7, 2026
  2. self-assigned this
    on Aug 7, 2026
  3. added
    enhancementNew feature or request
    launchWork required for an announcement or release gate
    on Aug 7, 2026
  4. moved this from Todo to In Progress in Markover Announcement Readinesson Aug 9, 2026
  5. lastobelus commented on Aug 9, 2026

    @lastobelus
    OwnerAuthor

    Work intent

    phase: completed
    summary: "Merged PR #116 into main as 2744b64 after rebasing through current main, green exact-head CI, a clean Codex review of b4b7569, zero unresolved threads, and clean mergeability; issue #64 is closed and its Project item is Done"
    touch-points:
      - "src/public-links.ts: one typed readonly definition for User Guide, Privacy and Local Data, Ask for Help, and Report a Problem with their four exact allowed HTTPS destinations"
      - "src/app-menu.ts: standard Help role whose labels and command callbacks derive from the typed definition"
      - "src/main.ts: fixed-destination main-process Help commands; await shell.openExternal without a network preflight; on rejection show a window-attached dialog with Copy Link and OK; never mutate review state"
      - "focus contract: do not steal focus back from the external browser after success; preserve renderer focus for natural return, and return focus after dismissing a launch-failure dialog"
      - "test/app-menu.test.ts plus focused public-link/external-opening coverage for exact structure, allowlist, success, rejection feedback, copy fallback, and focus behavior"
      - "README.md and docs/user remain static authored documents; consistency tests require their relevant surfaces to contain the canonical destinations without adding a documentation generator"
      - "coordinated same-file work with #115 and #95: preserved the merged zoom controls while staying outside internal-protocol, attachment, IPC URL guard, CSP, fuse, and packaged-protocol surfaces"
    blocked-by: []
    may-block:
      - "#18"
    branch: "t3code/start-issue-64"
    thread: "start-issue-f59a31c2-b022-42a3-b052-6ce31ce01cf9"
    authorized: true
    pull-request: "#116"
    merge-commit: "2744b64a7529f1f0c7fe5e44826510e3881d4e13"
    validation:
      - "npm run ci:local passed after the final rebase: typecheck, lint, 460 tests, and Electron smoke"
      - "GitHub Verify (Node 24) passed on reviewed head b4b7569"
      - "Codex reported no major issues on exact head b4b7569; zero unresolved review threads"
      - "npm run package:mac passed: runtime closure, hardened ad-hoc package, and packaged smoke"
      - "user confirmed the development Help menu looked good"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requestlaunchWork required for an announcement or release gate

Projects

Relationships

None yet

Development

No branches or pull requests

Issue actions