Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ Full release notes with details on each version: [GitHub Releases](https://githu

## 0.9.63 (2026-09-16)

- Fix: the README's prompt-cache troubleshooting entry told users to add `graph.json`/`graphify-out/` to a `.claudeignore` file — Claude Code never shipped `.claudeignore` support, so this was a no-op that left the symptom in place. Replaced with the supported `permissions.deny` rule in `.claude/settings.json`, plus a note that it trades off against the wiki-as-navigation workflow since a deny rule also blocks reading those files (#1843, thanks @chaosanderos).

- Feature: Elixir `alias`/`import`/`require`/`use` targets now resolve onto the module's `defmodule` node across files, so the internal module dependency graph is no longer dropped as dangling. Only top-level modules are indexed (a nested `defmodule`, labeled with its bare inner name, cannot capture an unrelated `use <Name>` from another file), and a same-file reference is left unresolved so it cannot clobber the structural `contains` edge (#3603, thanks @ayushcodes10).
- Feature: a Rust `self.method()` call now resolves to a method defined on the same type in another file (the common split-`impl`-block layout), pooling methods across every `impl` of one type and refusing to link when two unrelated types share a bare name (#3602, thanks @ayushcodes10).
- Feature: a Ruby member call `obj.foo` on a known-type receiver now resolves to a method `foo` inherited from a superclass, including across files, using the same conservative promotion as the implicit-self resolver — a single owning class, matching method kind, and one unambiguous ancestry chain, or it stays dangling (#3585, thanks @oleksii-tumanov).
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -670,12 +670,12 @@ graphify install # overwrites the skill file
```

**Claude Code prompt cache invalidated after every `graphify extract`**
Graphify writes output files (`graph.json`, `graphify-out/`) into the workspace. If those paths aren't ignored, every write invalidates Claude Code's prompt cache, forcing a full re-upload at cache-write rates on the next turn. Add them to `.claudeignore`:
```text
# .claudeignore
graph.json
graphify-out/
Graphify writes output files (`graph.json`, `graphify-out/`) into the workspace. If those paths aren't excluded, every write invalidates Claude Code's prompt cache, forcing a full re-upload at cache-write rates on the next turn. Claude Code has no `.claudeignore` support (it never shipped; `permissions.deny` is the supported mechanism) — add a deny rule instead:
```json
// .claude/settings.json
{ "permissions": { "deny": ["Read(./graphify-out/**)", "Read(./graph.json)"] } }
```
Note this trades off against the wiki-as-navigation workflow (`export wiki`, `graphify-out/wiki/`): a deny rule blocks reading those files too, so skip it if you rely on that workflow.

---

Expand Down
Loading