Commit Graph

  • 6fe4c01bb8 bump version to 0.2.0 Safi 2026-04-06 01:06:35 +01:00
  • 387f92d4df v2: confidence scores, hyperedges, rationale extraction, git hooks, Claude Code hooks SafiandClaude Sonnet 4.6 2026-04-06 00:58:55 +01:00
  • a7fc2493f0 v2: confidence scores, hyperedges, rationale extraction, git hooks, Claude Code hooks Safi 2026-04-06 00:58:55 +01:00
  • 2ac8b9ec85 README: highlight multimodal capability upfront v1 Safi 2026-04-05 23:44:51 +01:00
  • 494f519bf4 README: highlight multimodal capability upfront Safi 2026-04-05 23:43:59 +01:00
  • 6743b323d0 bump to 0.1.15 - restore v1 as latest stable on PyPI Safi 2026-04-05 23:40:19 +01:00
  • d23ae1774d v2: hypergraph support - hyperedges in graph.json, shaded regions in HTML, report section Safi 2026-04-05 23:18:25 +01:00
  • e6fefa8a2c v2: semantic similarity edges, scored higher in surprising connections Safi 2026-04-05 23:12:47 +01:00
  • 0f11f6a32d v2: confidence scores on INFERRED edges, avg shown in report Safi 2026-04-05 23:06:07 +01:00
  • e8b8e2039d v2: fast --update for code-only changes, parallel AST+semantic, graphify claude install Safi 2026-04-05 23:00:24 +01:00
  • e4bc87a284 README: clarify any folder works, clean up usage section Safi 2026-04-05 22:48:23 +01:00
  • 0a31c0862b add git commit hook - auto-rebuilds graph after every commit v1.0.0 Safi 2026-04-05 22:40:34 +01:00
  • 2a8b6c16ad fix test_watch: update import after _run_update renamed to _notify_only Safi 2026-04-05 20:22:27 +01:00
  • 014758f61d README: clarify --watch auto-sync behavior for code vs docs Safi 2026-04-05 20:20:34 +01:00
  • 5617a7d285 watch: auto-rebuild graph on code changes without LLM, notify on doc/image changes Safi 2026-04-05 20:13:26 +01:00
  • 154919bb64 correct benchmark numbers — token reduction scales with corpus size, small corpora ~1x Safi 2026-04-05 19:44:34 +01:00
  • 3baf316044 add real graphify output (GRAPH_REPORT.md + graph.json) for httpx and mixed-corpus worked examples Safi 2026-04-05 19:39:11 +01:00
  • 0fee55726d add reproducible worked examples for httpx, karpathy-repos, and mixed-corpus benchmarks Safi 2026-04-05 19:28:05 +01:00
  • c488808842 Add reproducible worked example with 7 input files and README Safi 2026-04-05 19:19:00 +01:00
  • 546fc0b346 README: add --watch to usage, describe --wiki in What you get Safi 2026-04-05 17:15:35 +01:00
  • 5ae2be8ca7 Update README: add --wiki to usage and output tree Safi 2026-04-05 17:09:02 +01:00
  • fd2cc8d8a7 Surface all options post-run; wiki-first follow-ups; --update regenerates wiki Safi 2026-04-05 17:07:57 +01:00
  • ef06d7d8d9 Add --wiki export: agent-crawlable knowledge wiki from graph Safi 2026-04-05 16:54:50 +01:00
  • 93b8ec3cde Use graph.json for follow-up questions; bump to 0.1.6 Safi 2026-04-05 14:46:06 +01:00
  • e98c1b6297 fix: HTML always generated by default in Step 6, not flag-gated Safi 2026-04-05 14:22:42 +01:00
  • a4ae70892a release: 0.1.5 Safi 2026-04-05 14:18:47 +01:00
  • a1be5abb24 refactor: dead imports, node_community helper, split to_html and call_tool Safi 2026-04-05 14:01:55 +01:00
  • 0061b36c29 fix: 5 skill gaps - graphml usage, manifest timing, graph existence checks, no-viz clarity Safi 2026-04-05 13:50:07 +01:00
  • c88528dfa3 perf: larger chunks + code-only fast path + timing estimates Safi 2026-04-05 13:42:11 +01:00
  • a7f8cab1a9 test: add end-to-end pipeline integration test Safi 2026-04-05 00:42:30 +01:00
  • fa702bd69f after pipeline, offer to guide user through the graph Safi 2026-04-05 00:35:47 +01:00
  • 1cd52f191e shorten README - cut design principles, files section, marketing padding Safi 2026-04-05 00:31:42 +01:00
  • d7a54d7e14 fix critical install bug, add --graphml to pipeline, update changelog Safi 2026-04-05 00:29:42 +01:00
  • 8708333484 feat: vis.js HTML graph, token reduction benchmark, repo cleanup Safi 2026-04-05 00:16:54 +01:00
  • a7d1969f02 docs: update surprising connections description, test count Safi 2026-04-04 23:24:50 +01:00
  • 258eff3e9f feat: composite surprise score — cross-type, cross-repo, community distance, peripheral→hub Safi 2026-04-04 23:23:56 +01:00
  • a7f910667d feat: GraphML export (--graphml flag) for Gephi and yEd Safi 2026-04-04 23:18:53 +01:00
  • cf7f42d3e7 docs: lead with Karpathy problem → graphify answer framing Safi 2026-04-04 19:53:05 +01:00
  • 24bcd6d448 docs: CI, architecture guide, worked examples, README fixes - Add GitHub Actions CI workflow (Python 3.10 and 3.12) - Add CI badge to README - Add ARCHITECTURE.md: pipeline overview, module table, schema, how to add a language extractor, security summary - Move eval reports from tests/ to worked/httpx/ and worked/mixed-corpus/ - Fix README: test count 163→212, language table (13 languages via tree-sitter), extract.py description, worked examples links Safi 2026-04-04 18:46:34 +01:00
  • 81a43f028f feat: 13-language AST support and token benchmark Safi 2026-04-04 17:28:35 +01:00
  • 41e4e3576a security: SSRF protection, HTML escaping, path guards, encoding hardening - graphify/security.py (new): centralised security module - validate_url(): blocks file://, ftp://, data:, any non-http/https scheme - _NoFileRedirectHandler: re-validates redirect targets, blocks file:// redirects - safe_fetch(): streams response, 50MB hard cap, non-2xx raises, timeout - safe_fetch_text(): safe_fetch + UTF-8 decode with errors=replace - validate_graph_path(): resolves path, requires inside .graphify/, base must exist - sanitize_label(): strip control chars, cap 256, html.escape() — mirrors code-review-graph's _sanitize_name pattern - graphify/ingest.py: _fetch_html() and _download_binary() now use safe_fetch*; ingest() validates URL scheme and wraps network calls in try/except; YAML frontmatter: newlines stripped from question before embedding - graphify/extract.py: all 33 bare .decode() → .decode("utf-8", errors="replace") — non-UTF-8 source files degrade gracefully instead of crashing extraction - graphify/export.py: sanitize_label() on all node labels and edge titles before pyvis embeds them in HTML output - graphify/serve.py: _load_graph() validates graph_path via validate_graph_path() and wraps JSONDecodeError with recovery message; sanitize_label() on MCP text output - graphify/detect.py: os.walk(..., followlinks=False) made explicit - SECURITY.md (new): threat model, mitigations table, reporting process - tests/test_security.py (new): 20 tests covering all security.py functions Safi 2026-04-04 17:23:05 +01:00
  • 0b7460a9e3 perf+fix: parallel extraction, faster imports, bug fixes Safi 2026-04-04 14:04:39 +01:00
  • e7a03a0539 feat: cache, multi-language extraction, MCP, memory feedback Safi 2026-04-04 13:02:41 +01:00
  • ce47198be1 feat: Claude Code skill, Obsidian vault, install, tests Safi 2026-04-03 23:51:00 +01:00
  • 77966a7622 feat: core pipeline Safi 2026-04-03 18:56:14 +01:00