From f892a5c444812da28a4ff8f1314795c7df722290 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 1 Apr 2026 08:22:23 +0000 Subject: [PATCH 01/46] feat: show extension version below OCC logo on all welcome panels MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Renders v{major}.{minor}.{patch} in small muted text directly below the logo image in the onboarding panel and all four home panel states (loading, host-type selection, hosts overview, full dashboard). Version is sourced dynamically from packageJSON.version — never hardcoded. Also fixes a pre-existing TS1308 error: the onDidReceiveMessage callback in home.ts was not marked async despite containing await expressions. Co-Authored-By: Claude Sonnet 4.6 --- .../prd.md | 63 +++++++++++++++++++ .../extensions/openclaw/src/panels/home.ts | 35 +++++++---- .../openclaw/src/panels/onboarding.ts | 9 ++- .../openclaw/src/panels/statusHtml.ts | 8 ++- 4 files changed, 97 insertions(+), 18 deletions(-) create mode 100644 .tickets/ticket-025-welcome-page-version-display/prd.md diff --git a/.tickets/ticket-025-welcome-page-version-display/prd.md b/.tickets/ticket-025-welcome-page-version-display/prd.md new file mode 100644 index 00000000..2d0ab658 --- /dev/null +++ b/.tickets/ticket-025-welcome-page-version-display/prd.md @@ -0,0 +1,63 @@ +# PRD: Ticket 025 - Show Version Below OCC Logo on Welcome Page + +## 1. Problem Statement + +The OCC welcome/onboarding page and home panel display the OCC logo but give users no indication of which version of the extension they are running. This makes it harder to diagnose issues and verify updates. + +## 2. Proposed Solution + +Render the extension version string (e.g. `v3.2.46`) in small muted text immediately below the OCC logo image in: + +1. **Onboarding panel** (`extensions/openclaw/src/panels/onboarding.ts`) — the first-run welcome screen. +2. **Home panel** (`extensions/openclaw/src/panels/home.ts`) — all HTML-generating methods that include the logo: `_getHtml`, `_getHostsOverviewHtml`, `_getHostTypeSelectionHtml`, and `_getLoadingHtml`. + +The version is read from `context.extension.packageJSON.version` (already available in both panels via the passed `ExtensionContext`) and passed as a parameter to each private HTML-generator function. + +## 3. Acceptance Criteria + +- The version string appears directly below the OCC logo on every panel view that shows the logo. +- Format: `v{major}.{minor}.{patch}` (e.g. `v3.2.46`). +- Text is visually subtle — small font size (~11–12 px), muted color (`#666` or `var(--vscode-descriptionForeground)`), not bold. +- No layout shift or visual disruption to the existing logo + heading arrangement. +- Version is sourced dynamically from `packageJSON.version`, not hardcoded. + +## 4. Technical Considerations + +- `onboarding.ts`: `_show()` already receives `context: vscode.ExtensionContext`. Read `context.extension.packageJSON.version` there and pass it into `_getHtml(iconUri, version)`. +- `home.ts`: `_getHtml` and sibling methods are instance methods; read version once in `createOrShow` or the constructor from the passed `ExtensionContext` and store as `this._version`, then pass to each HTML method. +- Use a `

` element styled inline or via the existing ` + + -

${userAreaHtml}
+
+ ${userAreaHtml} + +
@@ -1692,7 +1826,7 @@ private _getSetupHtml(
Follow the steps below to get started
-
+
${isInstalled ? '✓' : '1'}
Install
OpenClaw
@@ -1720,7 +1854,7 @@ private _getSetupHtml(
@@ -1752,7 +1886,7 @@ private _getSetupHtml( @@ -1760,10 +1894,74 @@ private _getSetupHtml( + + +