96 lines
5.9 KiB
Markdown
96 lines
5.9 KiB
Markdown
# Changelog
|
|
|
|
Full release notes with details on each version: [GitHub Releases](https://github.com/safishamsi/graphify/releases)
|
|
|
|
## 0.3.0 (2026-04-06)
|
|
|
|
- Add: multi-platform support — Codex (`skill-codex.md`), OpenCode (`skill-opencode.md`), OpenClaw (`skill-claw.md`)
|
|
- Add: `graphify install --platform <codex|opencode|claw>` routes skill to correct config directory
|
|
- Add: `graphify codex install` / `opencode install` / `claw install` — writes AGENTS.md for always-on graph-first behaviour
|
|
- Add: `graphify claude uninstall` / `codex uninstall` / `opencode uninstall` / `claw uninstall`
|
|
- Add: MIT license
|
|
- Fix: `build()` was silently dropping hyperedges when merging multiple extractions
|
|
- Refactor: `extract.py` 2527 → 1588 lines — replaced 12 copy-pasted language extractors with `LanguageConfig` dataclass + `_extract_generic()`
|
|
- Docs: clustering is graph-topology-based (no embeddings) — explained in README
|
|
- Docs: all missing flags documented (`--cluster-only`, `--no-viz`, `--neo4j-push`, `query --dfs`, `query --budget`, `add --author`, `add --contributor`)
|
|
|
|
## 0.2.2 (2026-04-06)
|
|
|
|
- Add: `graphify claude install` — writes graphify section to local CLAUDE.md + PreToolUse hook in `.claude/settings.json`
|
|
- Add: `graphify claude uninstall` — removes section and hook
|
|
- Add: `graphify hook install` — installs post-commit and post-checkout git hooks (platform-agnostic)
|
|
- Add: `graphify hook uninstall` / `hook status`
|
|
- Add: `graphify benchmark` CLI command
|
|
- Fix: node deduplication documented at all three layers
|
|
|
|
## 0.1.8 (2026-04-05)
|
|
|
|
- Fix: follow-up questions now check for wiki first (graphify-out/wiki/index.md) before falling back to graph.json
|
|
- Fix: --update now auto-regenerates wiki if graphify-out/wiki/ exists
|
|
- Fix: community articles show truncation notice ("... and N more nodes") when > 25 nodes
|
|
- UX: pipeline completion message now lists all available flags and commands so users know what graphify can do
|
|
|
|
## 0.1.7 (2026-04-05)
|
|
|
|
- Add: `--wiki` flag — generates Wikipedia-style agent-crawlable wiki from the graph (index.md + community articles + god node articles)
|
|
- Add: `graphify/wiki.py` module with `to_wiki()` — cross-community wikilinks, cohesion scores, audit trail, navigation footer
|
|
- Add: 14 wiki tests (245 total)
|
|
- Fix: follow-up question example code now correctly splits node labels by `_` to extract verb prefixes (previous version used `def`/`fn` prefix matching which always returned zero results)
|
|
|
|
## 0.1.6 (2026-04-05)
|
|
|
|
- Fix: follow-up questions after pipeline now answered from graph.json, not by re-exploring the directory (was 25 tool calls / 1m30s; now instant)
|
|
- Skill: added "Answering Follow-up Questions" section with graph query patterns
|
|
|
|
## 0.1.5 (2026-04-05)
|
|
|
|
- Perf: semantic extraction chunks 12-15 → 20-25 files (fewer subagent round trips)
|
|
- Perf: code-only corpora skip semantic dispatch entirely (AST handles it)
|
|
- Perf: print timing estimate before extraction so the wait feels intentional
|
|
- Fix: 5 skill gaps - --graphml in Usage table, --update manifest timing, query/path/explain graph existence check, --no-viz clarity
|
|
- Refactor: dead imports removed (shutil, sys, inline os); _node_community_map() helper replaces 8 copy-pasted dict comprehensions; to_html() split into _html_styles() + _html_script(); serve.py call_tool() if/elif chain replaced with dispatch table
|
|
- Test: end-to-end pipeline integration test (detect → extract → build → cluster → analyze → report → export)
|
|
|
|
## 0.1.4 (2026-04-05)
|
|
|
|
- Replace pyvis with custom vis.js HTML renderer - node size by degree, click-to-inspect panel with clickable neighbors, search box, community filter, physics clustering
|
|
- HTML graph generated by default on every run (no flag needed)
|
|
- Token reduction benchmark auto-runs after every pipeline on corpora over 5,000 words
|
|
- Fix: 292 edge warnings per run eliminated - stdlib/external edges now silently skipped
|
|
- Fix: `build()` cross-extraction edges were silently dropped - now merged before assembly
|
|
- Fix: `pip install graphify` → `pip install graphifyy` in skill Step 1 (critical install bug)
|
|
- Add: `--graphml` flag implemented in skill pipeline (was documented but not wired up)
|
|
- Remove: pyvis dependency, dead lib/ folder, misplaced eval reports from tests/
|
|
- Add: 5 HTML renderer tests (223 total)
|
|
|
|
## 0.1.3 (2026-04-04)
|
|
|
|
- Fix: `pyproject.toml` structure - `requires-python` and `dependencies` were incorrectly placed under `[project.urls]`
|
|
- Add: GitHub repository and issues URLs to PyPI page
|
|
- Add: `keywords` for PyPI search discoverability
|
|
- Docs: README clarifies Claude Code requirement, temporary PyPI name, worked examples footnote
|
|
|
|
## 0.1.1 (2026-04-04)
|
|
|
|
- Add: CI badge to README (GitHub Actions, Python 3.10 + 3.12)
|
|
- Add: ARCHITECTURE.md - pipeline overview, module table, extraction schema, how to add a language
|
|
- Add: SECURITY.md - threat model, mitigations, vulnerability reporting
|
|
- Add: `worked/` directory with eval reports (karpathy-repos 71.5x benchmark, httpx, mixed-corpus)
|
|
- Fix: pytest not found in CI - added explicit `pip install pytest` step
|
|
- Fix: README test count (163 → 212), language table, worked examples links
|
|
- Docs: README reframed as Claude Code skill; Karpathy problem → graphify answer framing
|
|
|
|
## 0.1.0 (2026-04-03)
|
|
|
|
Initial release.
|
|
|
|
- 13-language AST extraction via tree-sitter (Python, JS, TS, Go, Rust, Java, C, C++, Ruby, C#, Kotlin, Scala, PHP)
|
|
- Leiden community detection via graspologic with oversized community splitting
|
|
- SHA256 semantic cache - warm re-runs skip unchanged files
|
|
- MCP stdio server - `query_graph`, `get_node`, `get_neighbors`, `shortest_path`, `god_nodes`
|
|
- Memory feedback loop - Q&A results saved to `graphify-out/memory/`, extracted on `--update`
|
|
- Obsidian vault export with wikilinks, community tags, Canvas layout
|
|
- Security module - URL validation, safe fetch with size cap, path guards, label sanitisation
|
|
- `graphify install` CLI - copies skill to `~/.claude/skills/` and registers in `CLAUDE.md`
|
|
- Parallel subagent extraction for docs, papers, and images
|