Skip to content

A Demo offers no library and no install card (Closes #426) - #429

Merged
BattermanZ merged 1 commit into
devfrom
fix/426-demo-library-card
Oct 23, 2026
Merged

BattermanZ merged 1 commit into
devfrom
fix/426-demo-library-card

Conversation

@BattermanZ

Copy link
Copy Markdown
Member

Summary

Option 1, chosen for both cards: in a Demo, neither "Your library isn't on this phone yet" nor "Keep Kamosu on your phone" is drawn, on any screen, and nothing is copied onto the phone unasked. Settings › This device still offers both.

 Notices (top of every page)
+  await learnWhetherADemo()        # a first arrival has no hint yet
+  asked = true
-  library.start(wifi)
+  library.start(wifi, { byItself: !demo.is })   # no wifi fill, no top-up in a Demo
   card =
     offline | insecure             # unchanged, Demo or not
+    nothing, in a Demo or until asked
     filling | library | install    # unchanged elsewhere

Evidence

  • Before: on a throwaway Demo, the first screen had the library card above the welcome card.
    After: live, on the same throwaway Demo built from this branch, at phone, phone-on-wifi and MacBook sizes, the top of the page was sampled every 100 ms from first arrival through a recipe, Got it and Recipes. No card was ever drawn. The only get_recipe was opening a recipe page, even with wifi reported. Settings offered Fetch it now, and its fill showed no card at the top. A reload after it copied nothing (0 new get_recipe), and offline still said "You're offline". The dev instance, which is no Demo, still shows the library card, then the install card after "When I'm on wifi".
  • Tests: five new ones in notices.svelte.spec.ts. They cover no library card, no fill on wifi on a first arrival, no top-up after a Settings fill, no install card even before the Demo answer, and still offline. Each guard was broken in turn and its test went red. just check and just test pass.

Merge Danger

Door: two-way

Blast Radius: small

An ordinary instance now waits for one instance_status answer before the library is looked at and before the library or install card can show. The card is the same, it just appears a round trip later.

🤖 Generated with Claude Code

https://claude.ai/code/session_01126KLKw9pGwH2vG3r1i2VL

… by itself

A first-time visitor to a Demo saw "Your library isn't on this phone yet"
above the welcome card, offering to download a library that goes back every
morning. Option 1 was chosen for both cards: in a Demo neither the library
card nor "Keep Kamosu on your phone" is drawn on any screen, and the phone
copies nothing on its own, on wifi or as a top-up after a fill asked for in
Settings. Settings still offers both, as on any instance.

The cards ask whether the instance is a Demo before looking at the library,
since a first arrival has no hint on the device and a fill started meanwhile
would not stop, and draw nothing below the offline and insecure cards until
the answer is in.

Closes #426

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01126KLKw9pGwH2vG3r1i2VL
@BattermanZ
BattermanZ merged commit 382ca1e into dev Oct 23, 2026
2 checks passed
@BattermanZ
BattermanZ deleted the fix/426-demo-library-card branch October 23, 2026 07:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant