nook: say macOS 14.2, which is what the app actually needs

The landing page, the FAQ and the downloads list still promised macOS 14. The
app cannot start there: dyld refuses it on 14.0 and 14.1 because a
CoreAudio overlay symbol its mixer uses only exists from 14.2, and the old
floor in its bundle had LaunchServices launching it on machines that could
never run it (NOOK-881).

The FAQ answer named the observation framework as the reason for 14; the
binding reason is the per-app audio tap API, which Apple shipped in 14.2. The
downloads list said 14.6+, which was already stricter than the truth.

InputHalo and Gaze still read 14.6+; their floors are their own and this
change leaves them alone.

Tests: bun test src/routes/nook (2 pass); bunx tsc --noEmit reports nothing in
the three files changed (the checkout's 286 pre-existing errors are elsewhere).

NOOK-881
This commit is contained in:
2026-10-23 13:28:45 -04:00
parent f492132bf2
commit 881190d1d4
3 changed files with 5 additions and 5 deletions

View File

@@ -110,7 +110,7 @@ function MainDownloadsPage() {
<div class="flex flex-col items-center gap-3"> <div class="flex flex-col items-center gap-3">
<span class="text-subtext0 font-mono text-sm"> <span class="text-subtext0 font-mono text-sm">
platform: macOS (14.6+) platform: macOS (14.2+)
</span> </span>
<Button <Button
variant="download" variant="download"

View File

@@ -37,9 +37,9 @@ const FAQ: FaqEntry[] = [
"The app itself runs unprivileged. Fan control and charge limiting go through a small helper component that macOS requires to run as root for hardware access — the app installs it on first use and you approve it once with your password. The hooks live in each agent's own config directory; you can inspect or remove every file it writes." "The app itself runs unprivileged. Fan control and charge limiting go through a small helper component that macOS requires to run as root for hardware access — the app installs it on first use and you approve it once with your password. The hooks live in each agent's own config directory; you can inspect or remove every file it writes."
}, },
{ {
question: "Why macOS 14 or later?", question: "Why macOS 14.2 or later?",
answer: answer:
"The interface is built on Apple's current observation framework, which ships with macOS 14 (Sonoma)." "The audio mixer listens to each app's own sound stream, and Apple only shipped that API in macOS 14.2 (Sonoma)."
}, },
{ {
question: "Does it work offline?", question: "Does it work offline?",
@@ -56,7 +56,7 @@ export default function NookFaqPage() {
<EdgeCacheHeaders maxAge={300} /> <EdgeCacheHeaders maxAge={300} />
<PageHead <PageHead
title="Frequently asked questions" title="Frequently asked questions"
description="Does The Nook read your prompts? Do you need a notch? Battery cost, permissions, the macOS 14 requirement, offline use — answered straight." description="Does The Nook read your prompts? Do you need a notch? Battery cost, permissions, the macOS 14.2 requirement, offline use — answered straight."
ogTitle="The Nook — FAQ" ogTitle="The Nook — FAQ"
/> />
<SubdomainHeader /> <SubdomainHeader />

View File

@@ -103,7 +103,7 @@ export default function NookLanding() {
UI. UI.
</p> </p>
<p class="text-subtext1 mb-8 text-sm"> <p class="text-subtext1 mb-8 text-sm">
macOS 14+ · 14-day free trial · up to 3 devices macOS 14.2+ · 14-day free trial · up to 3 devices
</p> </p>
<div class="flex flex-col items-center gap-4 sm:flex-row sm:space-x-4"> <div class="flex flex-col items-center gap-4 sm:flex-row sm:space-x-4">