v0.8.45
chatboxai/chatboxv0.8.45Jun 22, 2026by safishamsi
AI Summary
Ensures path portability across clones and machines by relativizing manifest keys and hyperedges, and fixes native-backend extraction to produce hyperedges.
Key Highlights
- Portable manifest.json relative to scan root
- Hyperedges and source_file paths now relativized
- GRAPHIFY_OUT environment variable honored end-to-end
- Native backend extraction now produces hyperedges
New Features
- Path portability for graphify-out artifacts
- Native backend prompt spec alignment
Full Release Notes
Path-portability fixes so `graphify-out/` artifacts are portable across clones and machines, plus a native-backend extraction fix. ## Path portability - **Portable `manifest.json`** — the skill runbooks now relativize manifest keys to the scan root, so `graphify --update` matches cached files after a clone or move instead of re-extracting the whole corpus. (#1417) - **Hyperedge `source_file` relativized** — `build_from_json` now relativizes `graph.hyperedges[]` like nodes and edges, so a semantic subagent's absolute path no longer leaks into `graph.json`. (#1418) - **Report header shows the scan root** — the split-skill runbook passed `'.'` to `report.generate`; it now passes the real scan path, so `GRAPH_REPORT.md` no longer titles itself `.`. (#1419) - **`GRAPHIFY_OUT` honoured end-to-end** — the custom output-dir override was only respected by some readers, so `GRAPHIFY_OUT=custom-out graphify extract` still wrote to `graphify-out/`. It's now resolved through a single `graphify.paths` module across `extract`, `cluster-only`, `query`/`affected`/`benchmark`, `save-result`, `uninstall --purge`, `cache-check`, the `manifest`/`transcripts`/`memory`/`converted` paths, the `build_merge`/`serve`/`prs` defaults, and the `detect` scan-exclude. Default behaviour is unchanged. (#1423) ## Native-backend extraction - **Hyperedges are now requested on the native path** — `graphify extract --backend <gemini|claude|claude-cli|openai|kimi|…>` never produced hyperedges (the prompt's schema showed an empty array and never described them), while the agent/skill path did. The native prompt now matches the skill spec, so both paths yield the same hyperedge behaviour. (#1430)