From 057ceefd7432946ab406ebebc8faaac68c38a538 Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 10:44:55 +0200 Subject: [PATCH 01/13] docs(changelog): prepare v0.26.2 release notes and align README version pattern Signed-off-by: PythonWoods --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 8be2f7b..fdd9947 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ To guarantee sub-50ms performance, Zenzic operates with a strict separation of c ## Requirements -This extension requires **Zenzic Core v0.26.2 or higher**. +This extension requires **Zenzic Core v0.26.1 or higher**. We recommend installing or updating the global binary via `uv`: @@ -101,7 +101,7 @@ The extension contributes the following commands to the Command Palette: ### Zenzic: Outdated Core -- **Cause**: The executable resolved by the extension is older than the minimum required Core version (`v0.26.2`). +- **Cause**: The executable resolved by the extension is older than the minimum required Core version (`v0.26.1`). - **Remediation**: Upgrade your global binary: ```bash uv tool install --force zenzic From 333e253bde2a5082f9238bdfcf95994ca8588419 Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 10:45:40 +0200 Subject: [PATCH 02/13] docs: align README and CONTRIBUTING version patterns with bump-my-version baseline Signed-off-by: PythonWoods --- CONTRIBUTING.md | 4 ++-- README.md | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ee83dfe..5d737c6 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -27,7 +27,7 @@ Zenzic is structured across three independent, dedicated repositories: - **Thin Client Sovereignty**: `zenzic-vscode` contains **zero** AST parsing, regex checks, or link validation rules. All analysis logic resides in Zenzic Core (`zenzic lsp`). - **Protocol Parity**: The extension communicates via standard Language Server Protocol (LSP) over stdio. -- **Minimum Core Baseline**: Currently pinned to **Zenzic Core `v0.26.2`** (`MIN_CORE_VERSION = '0.26.2'` in `src/extension.ts`). +- **Minimum Core Baseline**: Currently pinned to **Zenzic Core `v0.26.1`** (`MIN_CORE_VERSION = '0.26.1'` in `src/extension.ts`). --- @@ -51,7 +51,7 @@ To maintain security, architectural integrity, and legal compliance, all contrib | **npm** | required | Package manager | | **just** | required | Task runner — `cargo install just` or via OS package manager | | **reuse** | required | SPDX license auditor (`uv tool install reuse`) | -| **Zenzic Core** | ≥ 0.26.2 | Core engine (`uv tool install zenzic`) | +| **Zenzic Core** | ≥ 0.26.1 | Core engine (`uv tool install zenzic`) | --- diff --git a/README.md b/README.md index fdd9947..c584d2c 100644 --- a/README.md +++ b/README.md @@ -106,7 +106,7 @@ The extension contributes the following commands to the Command Palette: ```bash uv tool install --force zenzic ``` - Or point `zenzic.executablePath` in `settings.json` to a virtual environment containing Core `v0.26.2` or higher. + Or point `zenzic.executablePath` in `settings.json` to a virtual environment containing Core `v0.26.1` or higher. ### Zenzic: Not Found (ENOENT) From c254caef2ca979f1c677e93fc647b43900794d7c Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 10:46:06 +0200 Subject: [PATCH 03/13] chore(release): bump version to 0.26.2 Signed-off-by: PythonWoods --- CHANGELOG.md | 2 ++ CONTRIBUTING.md | 4 ++-- README.md | 6 +++--- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9833e84..831e435 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [0.26.2] - 2026-07-28 +## [0.26.2] - 2026-07-28 + ### Fixed - **Core Baseline Alignment**: Realigned pinned Zenzic Core baseline to `0.26.2`, inheriting fixes for extensionless static asset resolution. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 5d737c6..ee83dfe 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -27,7 +27,7 @@ Zenzic is structured across three independent, dedicated repositories: - **Thin Client Sovereignty**: `zenzic-vscode` contains **zero** AST parsing, regex checks, or link validation rules. All analysis logic resides in Zenzic Core (`zenzic lsp`). - **Protocol Parity**: The extension communicates via standard Language Server Protocol (LSP) over stdio. -- **Minimum Core Baseline**: Currently pinned to **Zenzic Core `v0.26.1`** (`MIN_CORE_VERSION = '0.26.1'` in `src/extension.ts`). +- **Minimum Core Baseline**: Currently pinned to **Zenzic Core `v0.26.2`** (`MIN_CORE_VERSION = '0.26.2'` in `src/extension.ts`). --- @@ -51,7 +51,7 @@ To maintain security, architectural integrity, and legal compliance, all contrib | **npm** | required | Package manager | | **just** | required | Task runner — `cargo install just` or via OS package manager | | **reuse** | required | SPDX license auditor (`uv tool install reuse`) | -| **Zenzic Core** | ≥ 0.26.1 | Core engine (`uv tool install zenzic`) | +| **Zenzic Core** | ≥ 0.26.2 | Core engine (`uv tool install zenzic`) | --- diff --git a/README.md b/README.md index c584d2c..8be2f7b 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ To guarantee sub-50ms performance, Zenzic operates with a strict separation of c ## Requirements -This extension requires **Zenzic Core v0.26.1 or higher**. +This extension requires **Zenzic Core v0.26.2 or higher**. We recommend installing or updating the global binary via `uv`: @@ -101,12 +101,12 @@ The extension contributes the following commands to the Command Palette: ### Zenzic: Outdated Core -- **Cause**: The executable resolved by the extension is older than the minimum required Core version (`v0.26.1`). +- **Cause**: The executable resolved by the extension is older than the minimum required Core version (`v0.26.2`). - **Remediation**: Upgrade your global binary: ```bash uv tool install --force zenzic ``` - Or point `zenzic.executablePath` in `settings.json` to a virtual environment containing Core `v0.26.1` or higher. + Or point `zenzic.executablePath` in `settings.json` to a virtual environment containing Core `v0.26.2` or higher. ### Zenzic: Not Found (ENOENT) From b8c634f15a0b1f0bf72b36a4a70c7941a680e37e Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 10:47:10 +0200 Subject: [PATCH 04/13] docs(changelog): remove duplicate version header for v0.26.2 and adjust formatting Signed-off-by: PythonWoods --- CHANGELOG.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 831e435..9833e84 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,8 +9,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [0.26.2] - 2026-07-28 -## [0.26.2] - 2026-07-28 - ### Fixed - **Core Baseline Alignment**: Realigned pinned Zenzic Core baseline to `0.26.2`, inheriting fixes for extensionless static asset resolution. From f88a77429bbd70000db6c62e1cf3193a665ab019 Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 15:10:32 +0200 Subject: [PATCH 05/13] =?UTF-8?q?fix(vscode):=20DQS=20tooltip=20shows=20?= =?UTF-8?q?=F0=9F=9A=A8=20SECURITY=20BREACH=20on=20Z201=20status=20(LSP-FI?= =?UTF-8?q?X-015)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When zenzic score --json returns status='security_breach' (Z201 — credential detected), the DQS status bar and tooltip now clearly communicate the breach: - Status bar: ' Zenzic DQS: SECURITY BREACH' (was: ' Zenzic DQS: 0/100') - Tooltip: 🚨 ZENZIC — SECURITY BREACH DETECTED 🚨 with remediation instructions instead of misleading green '✓' category checkmarks. Normal (non-breach) status bar and tooltip rendering is unchanged. Acceptance Criteria (LSP-FIX-015 Fix 3): - A workspace with a Z201 error displays a clear Security Breach warning in the DQS tooltip. Signed-off-by: PythonWoods --- src/extension.ts | 46 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 34 insertions(+), 12 deletions(-) diff --git a/src/extension.ts b/src/extension.ts index 4f4fbff..a296b2c 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -415,18 +415,40 @@ export async function activate(context: vscode.ExtensionContext) { const status = report.status ?? 'unknown'; const debt = report.suppression_debt_pts ?? 0; - const icon = score >= 80 ? '$(dashboard)' : score >= 50 ? '$(warning)' : '$(error)'; - dqsStatusBarItem.text = `${icon} Zenzic DQS: ${score}/100`; - - const categoryLines = (report.categories ?? []) - .map(c => ` ${c.name}: ${c.issues === 0 ? '✓' : `${c.issues} issue(s)`}`) - .join('\n'); - dqsStatusBarItem.tooltip = [ - `Documentation Quality Score: ${score}/100`, - `Status: ${status}`, - debt > 0 ? `Technical Debt: -${debt}pts` : '', - categoryLines ? `\nBreakdown:\n${categoryLines}` : '', - ].filter(Boolean).join('\n'); + // LSP-FIX-015 Fix 3: security_breach (Z201) forces score to 0. + // Do NOT show category checkmarks — they would be misleading. + // A credential was detected; the status bar and tooltip must + // communicate the breach prominently and unambiguously. + const isSecurityBreach = status === 'security_breach'; + + const icon = isSecurityBreach + ? '$(shield)' + : score >= 80 ? '$(dashboard)' : score >= 50 ? '$(warning)' : '$(error)'; + dqsStatusBarItem.text = isSecurityBreach + ? `${icon} Zenzic DQS: SECURITY BREACH` + : `${icon} Zenzic DQS: ${score}/100`; + + if (isSecurityBreach) { + dqsStatusBarItem.tooltip = [ + '🚨 ZENZIC — SECURITY BREACH DETECTED 🚨', + '', + 'A credential or hardcoded secret was found in the documentation.', + 'Score is forced to 0/100 — Z201 is non-suppressible.', + '', + '⚠️ Rotate the exposed credential immediately.', + 'Reference: https://zenzic.dev/docs/reference/finding-codes#Z201', + ].join('\n'); + } else { + const categoryLines = (report.categories ?? []) + .map(c => ` ${c.name}: ${c.issues === 0 ? '✓' : `${c.issues} issue(s)`}`) + .join('\n'); + dqsStatusBarItem.tooltip = [ + `Documentation Quality Score: ${score}/100`, + `Status: ${status}`, + debt > 0 ? `Technical Debt: -${debt}pts` : '', + categoryLines ? `\nBreakdown:\n${categoryLines}` : '', + ].filter(Boolean).join('\n'); + } } catch { dqsStatusBarItem.text = '$(error) Zenzic DQS: Parse Error'; From 701d9ddb4e15ac3cd0d3f9ad8e9f5509984809c7 Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 16:06:07 +0200 Subject: [PATCH 06/13] docs(changelog): prepare v0.26.3 release notes Signed-off-by: PythonWoods --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9833e84..a941705 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Fixed +- **DQS Tooltip Rendering (`LSP-FIX-015`)**: Fixed a rendering issue where a `security_breach` status incorrectly displayed green checkmarks in the DQS tooltip. The tooltip now prominently displays a security breach warning. +- **Core Baseline Alignment**: Realigned pinned Zenzic Core baseline to `0.26.3`. + ## [0.26.2] - 2026-07-28 ### Fixed From 95aee10f5f0b191a86519ee4412233d8f631d260 Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 16:26:45 +0200 Subject: [PATCH 07/13] ci(security): configure CodeQL analysis Signed-off-by: PythonWoods --- .github/workflows/codeql.yml | 50 ++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 .github/workflows/codeql.yml diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml new file mode 100644 index 0000000..41c5341 --- /dev/null +++ b/.github/workflows/codeql.yml @@ -0,0 +1,50 @@ +# SPDX-FileCopyrightText: 2026 PythonWoods +# SPDX-License-Identifier: Apache-2.0 + +name: Zenzic VS Code CodeQL + +on: + push: + branches: [ main ] + paths: + - 'src/**' + - 'package.json' + - '.github/workflows/codeql.yml' + pull_request: + branches: [ main ] + paths: + - 'src/**' + - 'package.json' + - '.github/workflows/codeql.yml' + schedule: + - cron: '24 3 * * 1' + +permissions: + actions: read + contents: read + security-events: write + +jobs: + analyze: + if: vars.ENABLE_CODEQL == 'true' + name: Analyze + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + language: [ javascript-typescript ] + + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + + - name: Initialize CodeQL + uses: github/codeql-action/init@v3 + with: + languages: ${{ matrix.language }} + + - name: Autobuild + uses: github/codeql-action/autobuild@v3 + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v3 \ No newline at end of file From 5110ccc6ec3dc27324337a316ab05a2efddc7160 Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 16:38:25 +0200 Subject: [PATCH 08/13] ci(vscode): restrict workflow runner to ubuntu-latest to save CI cycles Signed-off-by: PythonWoods --- .github/workflows/ci.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b0f1efc..40ff720 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,10 +15,7 @@ permissions: jobs: verify: name: Verify & Package - strategy: - matrix: - os: [ubuntu-latest, windows-latest] - runs-on: ${{ matrix.os }} + runs-on: ubuntu-latest steps: - name: Checkout Repository uses: actions/checkout@v7 From ce3ba811b5793c6bcefe8039ab37432cee8253ce Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 16:53:28 +0200 Subject: [PATCH 09/13] docs(vscode): document automated inline suppressions in key features (LSP-FEAT-003) Signed-off-by: PythonWoods --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 8be2f7b..2367f75 100644 --- a/README.md +++ b/README.md @@ -29,8 +29,8 @@ Modify a heading or link in one file, and Zenzic's Virtual Site Map (VSM) instan ### 3. Adapter-Driven Config Hot-Reloading (`v0.25.0`) When framework configuration files (e.g. `mkdocs.yml`, `zensical.toml`, `.zenzic.toml`) are modified, the Language Server automatically reloads adapter metadata and rebuilds the Virtual Site Map without requiring an extension or editor restart. -### 4. Inline Diagnostics & Quick Fixes -Hover over any diagnostic to view the exact Z-Code, DQS score penalty, and remediation guidance. Apply automated Quick Fixes via `textDocument/codeAction` directly from the editor lightbulb menu. +### 4. Inline Diagnostics, Quick Fixes & Automated Suppressions +Hover over any diagnostic to view the exact Z-Code, DQS score penalty, and remediation guidance. Apply automated Quick Fixes or insert Automated Inline Suppressions (``, except for `Z2xx` Security findings) via `textDocument/codeAction` directly from the editor lightbulb menu. ### 5. DQS Workspace UI Stream Document Quality Score (DQS) updates directly to the status bar, providing real-time visibility into overall repository health. From ba47afa8aa0b2f1f1f129149f47c8af98fcc13f6 Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 16:56:34 +0200 Subject: [PATCH 10/13] docs(changelog): prepare v0.26.3 release notes Signed-off-by: PythonWoods --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a941705..98d6ae9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Added +- **Suppression Code Actions (`LSP-FEAT-003`)**: Added support for automated inline suppressions. You can now use the Quick Fix (Lightbulb) menu to instantly inject `` comments above offending lines. This feature is intentionally disabled for Z2xx Security findings. + ### Fixed - **DQS Tooltip Rendering (`LSP-FIX-015`)**: Fixed a rendering issue where a `security_breach` status incorrectly displayed green checkmarks in the DQS tooltip. The tooltip now prominently displays a security breach warning. - **Core Baseline Alignment**: Realigned pinned Zenzic Core baseline to `0.26.3`. From 08e618bc8322189759e5fb41d3447209116f2902 Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 17:11:08 +0200 Subject: [PATCH 11/13] fix(release): add src/extension.ts and Pinned Core to bumpversion rules Signed-off-by: PythonWoods --- .bumpversion.toml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.bumpversion.toml b/.bumpversion.toml index a13739c..2f83cae 100644 --- a/.bumpversion.toml +++ b/.bumpversion.toml @@ -47,6 +47,16 @@ filename = "RELEASE.md" search = "git push origin v{current_version}" replace = "git push origin v{new_version}" +[[tool.bumpversion.files]] +filename = "RELEASE.md" +search = "| **Pinned Core** | `zenzic>={current_version}` |" +replace = "| **Pinned Core** | `zenzic>={new_version}` |" + +[[tool.bumpversion.files]] +filename = "src/extension.ts" +search = "const MIN_CORE_VERSION = '{current_version}';" +replace = "const MIN_CORE_VERSION = '{new_version}';" + # ── README.md ───────────────────────────────────────────────────────────────── [[tool.bumpversion.files]] From 957498dfffbf2ded014dbedc743869d45976a594 Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 17:23:03 +0200 Subject: [PATCH 12/13] fix(release): decouple bumpversion from pin-core to support standard release sequence Signed-off-by: PythonWoods --- .bumpversion.toml | 37 ------------------------------------- 1 file changed, 37 deletions(-) diff --git a/.bumpversion.toml b/.bumpversion.toml index 2f83cae..d2a1ff0 100644 --- a/.bumpversion.toml +++ b/.bumpversion.toml @@ -46,40 +46,3 @@ replace = 'git tag -s -m "Release v{new_version}" v{new_version}' filename = "RELEASE.md" search = "git push origin v{current_version}" replace = "git push origin v{new_version}" - -[[tool.bumpversion.files]] -filename = "RELEASE.md" -search = "| **Pinned Core** | `zenzic>={current_version}` |" -replace = "| **Pinned Core** | `zenzic>={new_version}` |" - -[[tool.bumpversion.files]] -filename = "src/extension.ts" -search = "const MIN_CORE_VERSION = '{current_version}';" -replace = "const MIN_CORE_VERSION = '{new_version}';" - -# ── README.md ───────────────────────────────────────────────────────────────── - -[[tool.bumpversion.files]] -filename = "README.md" -search = "Zenzic Core v{current_version} or higher" -replace = "Zenzic Core v{new_version} or higher" - -[[tool.bumpversion.files]] -filename = "README.md" -search = "minimum required Core version (`v{current_version}`)" -replace = "minimum required Core version (`v{new_version}`)" - -[[tool.bumpversion.files]] -filename = "README.md" -search = "virtual environment containing Core `v{current_version}` or higher" -replace = "virtual environment containing Core `v{new_version}` or higher" - -[[tool.bumpversion.files]] -filename = "CONTRIBUTING.md" -search = "**Zenzic Core `v{current_version}`** (`MIN_CORE_VERSION = '{current_version}'` in `src/extension.ts`)." -replace = "**Zenzic Core `v{new_version}`** (`MIN_CORE_VERSION = '{new_version}'` in `src/extension.ts`)." - -[[tool.bumpversion.files]] -filename = "CONTRIBUTING.md" -search = "| **Zenzic Core** | ≥ {current_version} |" -replace = "| **Zenzic Core** | ≥ {new_version} |" From a9ba4aa19b873cf527bc41691ce5284c1c83a857 Mon Sep 17 00:00:00 2001 From: PythonWoods Date: Tue, 28 Jul 2026 17:23:06 +0200 Subject: [PATCH 13/13] chore(deps): pin zenzic core to 0.26.3 Signed-off-by: PythonWoods --- CONTRIBUTING.md | 4 ++-- README.md | 6 +++--- RELEASE.md | 2 +- src/extension.ts | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ee83dfe..b3f58af 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -27,7 +27,7 @@ Zenzic is structured across three independent, dedicated repositories: - **Thin Client Sovereignty**: `zenzic-vscode` contains **zero** AST parsing, regex checks, or link validation rules. All analysis logic resides in Zenzic Core (`zenzic lsp`). - **Protocol Parity**: The extension communicates via standard Language Server Protocol (LSP) over stdio. -- **Minimum Core Baseline**: Currently pinned to **Zenzic Core `v0.26.2`** (`MIN_CORE_VERSION = '0.26.2'` in `src/extension.ts`). +- **Minimum Core Baseline**: Currently pinned to **Zenzic Core `v0.26.3`** (`MIN_CORE_VERSION = '0.26.3'` in `src/extension.ts`). --- @@ -51,7 +51,7 @@ To maintain security, architectural integrity, and legal compliance, all contrib | **npm** | required | Package manager | | **just** | required | Task runner — `cargo install just` or via OS package manager | | **reuse** | required | SPDX license auditor (`uv tool install reuse`) | -| **Zenzic Core** | ≥ 0.26.2 | Core engine (`uv tool install zenzic`) | +| **Zenzic Core** | ≥ 0.26.3 | Core engine (`uv tool install zenzic`) | --- diff --git a/README.md b/README.md index 2367f75..46ccca2 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ To guarantee sub-50ms performance, Zenzic operates with a strict separation of c ## Requirements -This extension requires **Zenzic Core v0.26.2 or higher**. +This extension requires **Zenzic Core v0.26.3 or higher**. We recommend installing or updating the global binary via `uv`: @@ -101,12 +101,12 @@ The extension contributes the following commands to the Command Palette: ### Zenzic: Outdated Core -- **Cause**: The executable resolved by the extension is older than the minimum required Core version (`v0.26.2`). +- **Cause**: The executable resolved by the extension is older than the minimum required Core version (`v0.26.3`). - **Remediation**: Upgrade your global binary: ```bash uv tool install --force zenzic ``` - Or point `zenzic.executablePath` in `settings.json` to a virtual environment containing Core `v0.26.2` or higher. + Or point `zenzic.executablePath` in `settings.json` to a virtual environment containing Core `v0.26.3` or higher. ### Zenzic: Not Found (ENOENT) diff --git a/RELEASE.md b/RELEASE.md index 75e64a6..2a987f4 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -9,7 +9,7 @@ | Field | Value | | :--- | :--- | | **Extension Version** | 0.26.2 | -| **Pinned Core** | `zenzic>=0.26.2` | +| **Pinned Core** | `zenzic>=0.26.3` | | **Date** | 2026-07-11 | ## 1. Pre-Flight Checklist diff --git a/src/extension.ts b/src/extension.ts index a296b2c..1e3b910 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -20,7 +20,7 @@ let dqsStatusBarItem: vscode.StatusBarItem | undefined; // A2 fix: guard flag prevents concurrent restart calls. let restarting = false; -const MIN_CORE_VERSION = '0.26.2'; +const MIN_CORE_VERSION = '0.26.3'; /** * Expand supported user-facing path variables in zenzic.executablePath.