@calo-design/cli 0.12.2 → 0.12.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/bin/mirror-push.js +10 -2
  2. package/package.json +1 -1
@@ -522,15 +522,23 @@ function channelForRef(ref: string): { channel: string; viaLauncher: boolean } {
522
522
  // context created later (e.g. by a feed tap, which carries no URL) can't
523
523
  // replay it as a phantom switch. Exception: a ref we bounce to the launcher
524
524
  // stays in the store on purpose — the launcher consumes (and clears) it.
525
+ //
526
+ // NO slug-based self no-op: with version pinning, one slug spans MANY channels
527
+ // (head + every pinned version), and this same bundle serves several of them —
528
+ // so "slug === PROTOTYPE" cannot mean "already here". A plain self-link now
529
+ // switches to the HEAD channel (the escape hatch out of a pinned version; from
530
+ // the head it's a redundant refresh-to-latest, which is harmless and even
531
+ // useful). Ping-pong protection comes from the handle-once clearing + the
532
+ // switching latch, not from slug comparison.
525
533
  function sweepLinkingURL(): void {
526
534
  let url: string | null = null;
527
535
  try { url = ExpoLinking.getLinkingURL() ?? null; } catch { return; }
528
536
  if (!url) return;
529
537
  const slug = launcherSlug(url);
530
538
  if (slug === null) return; // the prototype's own deep link — not ours to touch
531
- if (!slug || slug === PROTOTYPE) {
539
+ if (!slug) {
532
540
  try { ExpoLinking.clearInitialURL(); } catch {}
533
- return;
541
+ return; // bare /open — nothing to switch to
534
542
  }
535
543
  const target = channelForRef(slug);
536
544
  if (!target.viaLauncher) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@calo-design/cli",
3
- "version": "0.12.2",
3
+ "version": "0.12.3",
4
4
  "description": "One-line setup for Calo design tooling: logs in with your Calo email and installs the calo-design skill + design-system packages. No GitHub account needed.",
5
5
  "bin": {
6
6
  "calo-design": "bin/cli.js"