Files
msd-core/docs/features/update-banner-opt-in.md
Jakub Zych a9a7a328e6 refactor: hard-fork GSD -> MSD (Make Software Done)
Mechanical rename produced by scripts/msd-rename.cjs: gsd/Gsd/GSD -> msd/Msd/MSD
across contents and paths, upstream package/repo coordinates -> @golem15/msd-core
and golem15com/msd-core. Deep links into upstream history, sibling upstream
packages, the GSD-2 import feature, CHANGELOG.md and .changeset/ are kept as-is.

Hand edits on top: MSD block-letter banner and logos, LICENSE copyright line,
package/plugin identity, regenerated lockfile, install-tree fixtures, derived
registries and benchmark baseline; migration checksum baseline re-locked
(MSD keeps its own install state, so no install had applied the old sums);
sort-order and regex-escaped expectations in tests adjusted.
2026-10-06 01:47:40 +02:00

955 B

id, title, group
id title group
128 Update Banner Opt-In v1.41.0 Features

Purpose: Surface update availability to users who have declined or bypassed the MSD statusline, without requiring the statusline.

Behavior:

  • At install time, if the installer detects no MSD statusline, it offers an opt-in SessionStart hook.
  • The hook reads the existing ~/.cache/msd/msd-update-check.json cache — the same cache used by the statusline — and prints a banner only when an update is available.
  • Silent when up-to-date.
  • Failure diagnostics rate-limited to once per 24 h.
  • Cleanly removed by npx @golem15/msd-core --uninstall.

Requirements:

  • REQ-BANNER-01: Banner does not install without explicit opt-in.
  • REQ-BANNER-02: No additional network requests — reuses the existing background update-check cache.
  • REQ-BANNER-03: Uninstall path removes the banner hook.

Reference issue: #2795