Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .bumpversion.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
# SPDX-License-Identifier: Apache-2.0

[tool.bumpversion]
current_version = "0.26.5"
current_version = "0.27.0"
parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)"
serialize = ["{major}.{minor}.{patch}"]
commit = true
Expand Down
11 changes: 11 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,21 +7,32 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

## [0.27.0] - 2026-08-02

- **Core Baseline Alignment**: Realigned pinned Zenzic Core baseline to `0.27.0`.
- **Diagnostic Support for v0.27 Rules**: Real-time inline diagnostics for `Z410`/`Z411` (Smart Link Graph), `Z510`/`Z511`/`Z512` (Semantic Linting), and `Z110`/`Z111` (Configuration Engine).
- **JSON Schema Validation**: Updated bundled `.zenzic.toml` schema validation with `max_sentence_length` property.

## [0.26.5] - 2026-07-29

### Fixed

- **Core Baseline Alignment**: Realigned pinned Zenzic Core baseline to `0.26.5` to bypass the dirty `0.26.4` PyPI release.

## [0.26.4] - 2026-07-29

### Fixed

- **Core Baseline Alignment**: Realigned pinned Zenzic Core baseline to `0.26.4`. This ensures the editor LSP client benefits from the eradication of ghost diagnostics on file deletion and correct inline suppression placement.

## [0.26.3] - 2026-07-28

### 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 `<!-- zenzic:ignore:ZXXX -->` 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`.

Expand Down
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.5`** (`MIN_CORE_VERSION = '0.26.5'` in `src/extension.ts`).
- **Minimum Core Baseline**: Currently pinned to **Zenzic Core `v0.27.0`** (`MIN_CORE_VERSION = '0.27.0'` in `src/extension.ts`).

---

Expand All @@ -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.5 | Core engine (`uv tool install zenzic`) |
| **Zenzic Core** | ≥ 0.27.0 | Core engine (`uv tool install zenzic`) |

---

Expand Down
14 changes: 11 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,18 +21,23 @@ This extension is a strictly **Thin Client**. It contains zero parsing logic, ze
## Key Features

### 1. Security Scanning (SAST)

Hardcoded credentials (Z201) and path traversal sequences (Z202/Z203) are flagged in milliseconds using RE2 validation engine rules, preventing secret leaks before files are committed.

### 2. Graph Topology Analysis (VSM)

Modify a heading or link in one file, and Zenzic's Virtual Site Map (VSM) instantly invalidates any broken links, orphan pages, or dead navigation nodes across your entire workspace using $O(K)$ incremental graph patching.

### 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 & 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 (`<!-- zenzic:ignore:ZXXX -->`, 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.

### Real-Time Diagnostics vs. Global DQS
Expand All @@ -46,7 +51,7 @@ To guarantee sub-50ms performance, Zenzic operates with a strict separation of c

## Requirements

This extension requires **Zenzic Core v0.26.5 or higher**.
This extension requires **Zenzic Core v0.27.0 or higher**.

We recommend installing or updating the global binary via `uv`:

Expand Down Expand Up @@ -101,23 +106,26 @@ 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.5`).
- **Cause**: The executable resolved by the extension is older than the minimum required Core version (`v0.27.0`).
- **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.5` or higher.

Or point `zenzic.executablePath` in `settings.json` to a virtual environment containing Core `v0.27.0` or higher.

### Zenzic: Not Found (ENOENT)

- **Cause**: The `zenzic` executable is not present in the system `$PATH`. This commonly occurs in Flatpak, Snap, or isolated terminal environments where user binary directories (`~/.local/bin`) are omitted from process environments.
- **Remediation**: Specify an explicit path to the binary in `settings.json`. `${workspaceFolder}` and leading `~/` / `~\` are expanded automatically:

```json
{
"zenzic.executablePath": "~/custom_path/.venv/bin/zenzic"
}
```

- **Null-workspace note**: `${workspaceFolder}` requires an open workspace folder. If you open a standalone file without a workspace, use an absolute path or a `~/...` path instead.

### Logs and Observability
Expand Down
8 changes: 4 additions & 4 deletions RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@

| Field | Value |
| :--- | :--- |
| **Extension Version** | 0.26.5 |
| **Pinned Core** | `zenzic>=0.26.5` |
| **Extension Version** | 0.27.0 |
| **Pinned Core** | `zenzic>=0.27.0` |
| **Date** | 2026-07-11 |

## 1. Pre-Flight Checklist
Expand Down Expand Up @@ -49,8 +49,8 @@ git checkout main
git pull origin main

# 3. Create the immutable signed tag pointing to the HEAD of origin/main
git tag -s -m "Release v0.26.5" v0.26.5
git push origin v0.26.5
git tag -s -m "Release v0.27.0" v0.27.0
git push origin v0.27.0
```

## 4. Distribute (Automated)
Expand Down
3 changes: 2 additions & 1 deletion REUSE.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ path = [
"README.md",
"ROADMAP.md",
"images/**",
"assets/**"
"assets/**",
"zenzic.schema.json"
]
SPDX-FileCopyrightText = "2026 PythonWoods <dev@pythonwoods.dev>"
SPDX-License-Identifier = "Apache-2.0"
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "zenzic-vscode",
"displayName": "Zenzic",
"description": "Deterministic Document Integrity Engine and SAST for Markdown/MDX graphs.",
"version": "0.26.5",
"version": "0.27.0",
"publisher": "pythonwoods",
"engines": {
"vscode": "^1.125.0"
Expand Down
2 changes: 1 addition & 1 deletion src/extension.ts
Original file line number Diff line number Diff line change
Expand Up @@ -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.5';
const MIN_CORE_VERSION = '0.27.0';

/**
* Expand supported user-facing path variables in zenzic.executablePath.
Expand Down
Loading
Loading