From 0fd0cbfc289aaf9cfc0d0e8fffe2cda7b61b7881 Mon Sep 17 00:00:00 2001 From: Rick Hightower Date: Sat, 19 Sep 2026 17:29:49 -0500 Subject: [PATCH] release: v0.9.6 Symlinked-root patch. Closes #85: search failed outright when the bundle root held a symlink, because rg prints resolved paths and search() built each hit's display path against the unresolved bundle. Also carries the tooling from #84: tools/ci-local.sh now parses every workflow before it runs anything else, and the stray Unreleased heading is gone from CHANGELOG.md. Bumps all eight manifests the lockstep test checks. tools/ci-local.sh reports 27 passed, 0 failed. Co-Authored-By: Claude Opus 5 --- .claude-plugin/marketplace.json | 2 +- .claude-plugin/plugin.json | 2 +- .codex-plugin/plugin.json | 2 +- .cursor-plugin/plugin.json | 2 +- .grok-plugin/marketplace.json | 4 ++-- CHANGELOG.md | 30 ++++++++++++++++++++++++++++++ marketplace.json | 2 +- package.json | 2 +- plugin.json | 2 +- 9 files changed, 39 insertions(+), 9 deletions(-) diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index d6ec304..5e1ead7 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -11,7 +11,7 @@ "name": "project-knowledge-capture", "source": "./", "description": "Capture meetings, experiments, discoveries, and decisions into OKF; materialize WikiTicket work into a durable knowledge graph. Works in Claude Code and Grok Build.", - "version": "0.9.5", + "version": "0.9.6", "author": { "name": "Rick Hightower" }, diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index efd7c84..27fc597 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "project-knowledge-capture", - "version": "0.9.5", + "version": "0.9.6", "description": "Project Knowledge Capture: meetings, experiments, decisions, TicketLink/WikiTicket work, and project-memory nouns into a durable OKF knowledge graph. Multi-host bindings and write isolation for shared second brains.", "author": { "name": "Rick Hightower", diff --git a/.codex-plugin/plugin.json b/.codex-plugin/plugin.json index 12d19d0..06387dc 100644 --- a/.codex-plugin/plugin.json +++ b/.codex-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "project-knowledge-capture", - "version": "0.9.5", + "version": "0.9.6", "description": "Project Knowledge Capture: meetings, experiments, decisions, TicketLink/WikiTicket work, and project-memory nouns into a durable OKF knowledge graph. Multi-host bindings and write isolation for shared second brains.", "author": { "name": "Rick Hightower", diff --git a/.cursor-plugin/plugin.json b/.cursor-plugin/plugin.json index fce276b..f8418ae 100644 --- a/.cursor-plugin/plugin.json +++ b/.cursor-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "project-knowledge-capture", - "version": "0.9.5", + "version": "0.9.6", "description": "Project Knowledge Capture: meetings, experiments, decisions, TicketLink/WikiTicket work, and project-memory nouns into a durable OKF knowledge graph. Multi-host bindings and write isolation for shared second brains.", "author": { "name": "Rick Hightower" diff --git a/.grok-plugin/marketplace.json b/.grok-plugin/marketplace.json index 421f78a..922ba38 100644 --- a/.grok-plugin/marketplace.json +++ b/.grok-plugin/marketplace.json @@ -1,13 +1,13 @@ { "name": "pkc-plugin-marketplace", "description": "Optional native Grok marketplace metadata. Grok Build already loads Claude plugins with zero config; this file pins identity for Grok marketplace listings.", - "version": "0.9.5", + "version": "0.9.6", "plugins": [ { "name": "project-knowledge-capture", "source": ".", "description": "Project Knowledge Capture \u2014 meetings, experiments, decisions \u2192 OKF knowledge graph. Claude-compatible.", - "version": "0.9.5", + "version": "0.9.6", "compatibility": { "claude_plugin": true, "zero_config": true diff --git a/CHANGELOG.md b/CHANGELOG.md index 8ae8a68..470ed25 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,36 @@ ## Unreleased +## 0.9.6 — 2026-09-19 + +Symlinked-root patch. Closes #85. + +### Fixed + +- **Search works on a symlinked bundle root** (#85). `rg` prints resolved + paths, and `search()` built each hit's display path against the bundle the + caller passed, so a bundle that still held a symlink did not match and + `relative_to` raised. Search failed outright. The bundle is the root cause, + not the line that raised: every engine derives its paths from the bundle it + is handed, so `search()` now resolves it once. That is one syscall per call, + not one per file, which is the property `_filter_rg_hits` already protects. + `candidate_files` still takes the bundle as given, because callers expect + paths under the bundle they passed. + + Not macOS-only. `/var` is a symlink to `/private/var` there, so every + temporary bundle reproduces it. A symlinked checkout or a container bind + mount is the same shape on Linux. CI has neither, which is why it shipped. + +### Changed + +- `tools/ci-local.sh` parses every `.github/workflows/*.yml` before it runs + anything else, and fails when the glob finds none. #82 was an unparseable + `ci.yml` that failed at startup with zero jobs, so `test` and `okf-interop` + did not run for a week while pull requests still looked green. A workflow + cannot check itself. +- `CHANGELOG.md` no longer carries a second `## Unreleased` heading left over + from the 0.7.2 era. Its bullets moved into the 0.7.3 section they describe. + ## 0.9.5 — 2026-09-19 Retrieval-ladder parity patch from the v0.9.4 review. Closes #78, #79, #80, diff --git a/marketplace.json b/marketplace.json index c9c1cce..0b77e55 100644 --- a/marketplace.json +++ b/marketplace.json @@ -10,7 +10,7 @@ "name": "project-knowledge-capture", "source": "./", "description": "Project Knowledge Capture \u2014 OKF knowledge graph from meetings, experiments, and WikiTicket", - "version": "0.9.5" + "version": "0.9.6" } ] } diff --git a/package.json b/package.json index ce4cb14..2a4cf2f 100755 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "project-knowledge-capture", - "version": "0.9.5", + "version": "0.9.6", "private": true, "description": "Project Knowledge Capture \u2014 Claude Code / Grok Build plugin (docs preview)", "scripts": { diff --git a/plugin.json b/plugin.json index db645fc..c264989 100644 --- a/plugin.json +++ b/plugin.json @@ -1,7 +1,7 @@ { "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json", "name": "project-knowledge-capture", - "version": "0.9.5", + "version": "0.9.6", "description": "Project Knowledge Capture: meetings, experiments, decisions, TicketLink/WikiTicket work, and project-memory nouns into a durable OKF knowledge graph. Multi-host bindings and write isolation for shared second brains.", "author": { "name": "Rick Hightower",