v0.8.44

deepseek-ai/DeepSeek-Coder-V2v0.8.44Jun 19, 2026by safishamsi

AI Summary

This release focuses on fixing critical crashes and data loss issues in the skill-runbook generation, correcting graph building logic for directed edges, and improving semantic extraction performance by restricting scopes.

Key Highlights

  • Fixes crash on FileSlice objects that previously raised TypeError
  • Zero-node guard now runs before any write operations
  • Propagates --directed flag correctly to build and merge functions
  • Deletes stale cache files on cache miss to prevent incorrect merges
  • Adds transcription support for video files via write_text

New Features

  • Semantic chunk files now derived from current working directory
  • Code-only corpora write empty .graphify_semantic.json before Part C
  • --cluster-only relies on self-contained CLI
  • Semantic extraction scopes limited to document/paper/image
  • add-watch and exports use resolved interpreter explicitly

Full Release Notes

Skill-runbook correctness and a crash fix.

## Generated skill (#1392)
Crash & data-loss tier:
- Semantic chunk files are derived from **cwd** (where Part C globs `graphify-out/`), not the scanned dir, so a non-cwd scan no longer produces "no nodes".
- Code-only corpora write an empty `.graphify_semantic.json` before Part C, fixing a `FileNotFoundError`.
- `--cluster-only` relies on the self-contained `graphify cluster-only` CLI instead of re-running steps that read already-deleted intermediate files.
- The zero-node guard runs **before** any write, and `GRAPH_REPORT.md`/analysis are written only when `to_json` actually persisted the graph (respects the #479 shrink-guard).

Remaining correctness tier:
- `--directed` is propagated as `directed=` into `build_from_json` (build + rebuild) and `build_merge` (`--update` merge + diff), so a `--directed` / `--directed --update` run no longer collapses reciprocal edges into an undirected graph.
- Semantic extraction scopes to `document`/`paper`/`image` only (code is covered by the AST pass), so subagents stop re-reading every source file.
- `.graphify_cached.json` is deleted on a cache miss, so a stale cache from a prior run is never merged.
- `--update` transcribes changed video files into documents before the semantic pipeline.
- Transcription writes via `write_text`, honours `GRAPHIFY_WHISPER_MODEL`/`GRAPHIFY_WHISPER_PROMPT`, prints status to stderr.
- `add-watch`/`exports` use the resolved interpreter explicitly; MCP Desktop config documents the absolute interpreter path.

## Library
- The semantic extract entry points no longer crash on `FileSlice` units. The 0.8.43 #1386 fix coerced every item with `Path(f)`, which raised `TypeError` on the `FileSlice` objects from the oversized-text slicing path (#1369). Items are coerced only when not already a `Path`/`FileSlice` (#1397, #1399).

**Full changelog:** https://github.com/safishamsi/graphify/blob/v8/CHANGELOG.md