← Commit history

Merge PR #44: dock: apps.json is a list, nothing more (dock-list-only -> master) merge

John Lauer ·1a0a3c59c6 ·2mo ago ·parents a3dd20e, a23a15f

Showing changes introduced by the merge (against its first parent).

1 file changed +34−168
dock/apps.json+34−168
@@ -1,21 +1,32 @@ {   "manifest_version": "2.0.0",   "_comment": [-    "The global Hydrogen Desktop dock list. World-readable by design; HD polls it",+    "The global Hydrogen dock list. World-readable by design; Hydrogen polls it",     "anonymously. WRITE access is the adom org: the adom team curates this file,",     "and featured/order exist only here (an app cannot feature itself).",-    "Display fields (name, brief, hero) are NOT in this file. The dock resolves",-    "them from each wiki_repo page, one source of truth. Launch behavior comes",-    "from each entry's launch block; the authoring contract for app publishers",-    "is the public hd-dock skill (ships with HD) and the Dock section of the",-    "adom/hydrogen-desktop wiki page. To request listing: open an issue on the",-    "adom/hydrogen-desktop wiki page.",-    "OMIT the launch block for any app that publishes its own dock.json: an",-    "inline launch here ALWAYS wins, so pinning one freezes that app's launch",-    "at whatever this file said and silently shadows the manifest its authors",-    "maintain. That is exactly how kicad and fusion ended up still calling the",-    "adom-desktop CLI months after it was renamed to adom-bridge-cli. Pin a",-    "launch here only as a deliberate override, and say why."+    "",+    "THIS FILE IS ONLY A LIST. It answers one question: which apps appear in the",+    "dock, and in what order. It answers nothing else.",+    "",+    "  Display  (name, brief, hero)  resolves from each wiki_repo page.",+    "  Launch   (steps, ai, webview) resolves from each app's own dock.json,",+    "                                per the adom/hydrogen-dock-sdk contract.",+    "",+    "DO NOT add a launch block here. An inline launch ALWAYS wins over the app's",+    "own manifest, so pinning one freezes that app's launch at whatever this file",+    "says and silently shadows the file its authors maintain. That is exactly how",+    "kicad and fusion sat broken: both published correct manifests pointing at",+    "their new dashboards while this file kept overriding them with a call to the",+    "adom-desktop CLI, renamed to adom-bridge-cli back on 2026-08-08. Every one of",+    "the 11 entries carried an inline launch, so no app's own manifest was ever",+    "read and the two-layer design was inert.",+    "",+    "Every launch block that used to live here now lives in the app's own page",+    "repo, migrated verbatim. An app changing how it launches needs no edit here.",+    "If an app has no dock.json yet, its card opens its wiki page, which is the",+    "correct degradation and better than a stale command.",+    "",+    "To request listing: open an issue on the adom/hydrogen-desktop wiki page."   ],   "poll_seconds": 21600,   "manual_refresh_cooldown_seconds": 60,@@ -36,192 +47,47 @@       "id": "chip-fetcher",       "wiki_repo": "adom/adom-chip-fetcher",       "featured": true,-      "order": 40,-      "webview": {-        "title": "Chip Fetcher"-      },-      "launch": {-        "mode": "container_command",-        "steps": [-          {-            "label": "Installing adom-chip-fetcher",-            "run": "adom-wiki pkg install adom/adom-chip-fetcher",-            "skip_if": "command -v chip-fetcher",-            "timeout_seconds": 180-          },-          {-            "label": "Starting Chip Fetcher",-            "run": "chip-fetcher serve --print-url",-            "await": "url",-            "timeout_seconds": 60-          }-        ],-        "on_ready": "navigate_placeholder"-      }+      "order": 40     },     {       "id": "pup",       "wiki_repo": "adom/pup-bridge",-      "order": 50,-      "_comment": [-        "No launch block on purpose. The old one called adom-desktop, which no",-        "longer exists, so this card failed on every click. pup publishes no",-        "dock.json yet, so with no launch the card opens its wiki page, which",-        "is a better landing than a guaranteed error. Tracked as an issue on",-        "adom/pup-bridge asking for a dock.json per adom/hydrogen-dock-sdk;",-        "when that lands, this entry picks it up with no edit here."-      ],-      "webview": {-        "title": "Pup"-      }+      "order": 50     },     {       "id": "project-manager",       "wiki_repo": "adom/adom-project-manager",-      "order": 60,-      "webview": {-        "title": "Adom Project Manager",-        "url": "https://wiki.adom.inc/adom/adom-project-manager"-      },-      "launch": {-        "mode": "webview"-      }+      "order": 60     },     {       "id": "symbol",       "wiki_repo": "adom/adom-symbol",-      "order": 70,-      "webview": {-        "title": "Adom Symbol"-      },-      "launch": {-        "mode": "container_command",-        "steps": [-          {-            "label": "Installing adom-symbol",-            "run": "adom-wiki pkg install adom/adom-symbol",-            "skip_if": "command -v adom-symbol",-            "timeout_seconds": 180-          },-          {-            "label": "Starting Adom Symbol",-            "run": "adom-symbol serve --print-url",-            "await": "url",-            "timeout_seconds": 60-          }-        ],-        "on_ready": "navigate_placeholder"-      }+      "order": 70     },     {       "id": "footprint",       "wiki_repo": "adom/adom-footprint",-      "order": 80,-      "webview": {-        "title": "Adom Footprint"-      },-      "launch": {-        "mode": "container_command",-        "steps": [-          {-            "label": "Installing adom-footprint",-            "run": "adom-wiki pkg install adom/adom-footprint",-            "skip_if": "command -v adom-footprint",-            "timeout_seconds": 180-          },-          {-            "label": "Starting Adom Footprint",-            "run": "adom-footprint serve --print-url",-            "await": "url",-            "timeout_seconds": 60-          }-        ],-        "on_ready": "navigate_placeholder"-      }+      "order": 80     },     {       "id": "lbr",       "wiki_repo": "adom/adom-lbr",-      "order": 90,-      "webview": {-        "title": "Adom LBR"-      },-      "launch": {-        "mode": "container_command",-        "steps": [-          {-            "label": "Installing adom-lbr",-            "run": "adom-wiki pkg install adom/adom-lbr",-            "skip_if": "command -v adom-lbr",-            "timeout_seconds": 180-          },-          {-            "label": "Starting Adom LBR",-            "run": "adom-lbr serve --print-url",-            "await": "url",-            "timeout_seconds": 60-          }-        ],-        "on_ready": "navigate_placeholder"-      }+      "order": 90     },     {       "id": "chipsmith",       "wiki_repo": "adom/adom-chipsmith",-      "order": 100,-      "webview": {-        "title": "Adom Chipsmith"-      },-      "launch": {-        "mode": "container_command",-        "steps": [-          {-            "label": "Installing adom-chipsmith",-            "run": "adom-wiki pkg install adom/adom-chipsmith",-            "skip_if": "command -v adom-chipsmith",-            "timeout_seconds": 180-          },-          {-            "label": "Starting Adom Chipsmith",-            "run": "adom-chipsmith serve --print-url",-            "await": "url",-            "timeout_seconds": 60-          }-        ],-        "on_ready": "navigate_placeholder"-      }+      "order": 100     },     {       "id": "parts-search",       "wiki_repo": "adom/adom-parts-search",-      "order": 110,-      "webview": {-        "title": "Parts Search"-      },-      "launch": {-        "mode": "container_command",-        "steps": [-          {-            "label": "Starting Parts Search",-            "run": "adom-parts-search serve --print-url",-            "await": "url",-            "timeout_seconds": 60-          }-        ],-        "on_ready": "navigate_placeholder"-      }+      "order": 110     },     {       "id": "hero-studio",       "wiki_repo": "adom/hero-studio",-      "order": 130,-      "webview": {-        "title": "Hero Studio",-        "url": "https://wiki.adom.inc/adom/hero-studio"-      },-      "launch": {-        "mode": "webview"-      }+      "order": 130     }   ]-}\ No newline at end of file+}