feat: cache Graphify context outside the repository
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 45/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- git, python
- Domain
- developer-experience, devtools
Research direction
Start by reading the existing --update workflow and locating how graphify-out/ is created, discovered, and reused. Define how a repository is identified in ~/.graphify/projects/<repository>/, how branch or path changes are detected, and how the existing graph is safely reused after a reset; done means the behavior is specified and tested for repository syncs and missing local output.
Written by the indexing model from the issue text.
Description
I work on multiple projects where main changes frequently.
My usual workflow looks like this:
- Generate a Graphify map of the repository.
- Use
graph.json,GRAPH_REPORT.md, and the visualization as context for my coding agent. - Before starting another contribution, sync my local branch with the latest upstream
main. - Continue working from the updated codebase.
The problem is that Graphify's generated files are local-only and usually ignored by Git. In some Git workflows, such as resetting or cleaning the local repository while syncing with upstream, this local Graphify context can be removed.
I then have to generate the graph again.
Graphify already supports --update, which is useful when the existing graph is still available. The problem is when the local graph itself is lost during repository maintenance.
Would it make sense for Graphify to support storing its local graph outside the repository?
For example:
~/.graphify/projects/<repository>/
The repository could then reference that local graph instead of depending entirely on graphify-out/ inside the working tree.
This could allow a workflow like:
clone/sync repository
↓
Graphify finds the existing local graph
↓
detect changed files
↓
update only what changed
Instead of:
clone/sync repository
↓
local Graphify output is gone
↓
build the project graph again
The exact implementation could be different. The main idea is simply to make Graphify's local knowledge persistent across branch resets, upstream syncs, or other Git operations that replace or clean the working tree.
This would be especially useful for contributors working on fast-moving repositories, where pulling or resetting to the latest upstream branch happens frequently.
Is there already a recommended workflow for this, or would persistent repository-level local storage be useful?
- Dominant language
- Python
- Stars
- 124k
- Forks
- 11.9k
- PR merge metrics
- No merged PRs in 30d
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Graphify-Labs/graphify
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
Graphify-Labs/graphify#3763 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Graphify-Labs/graphify#3611 · 1 comment ·
Maintainers usually reply within 1 day
-
Nix supportOpen
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Graphify-Labs/graphify#3193 · 2 reactions ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 92/100
Graphify-Labs/graphify#2871 · 2 comments ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Graphify-Labs/graphify#2865 ·
Maintainers usually reply within 1 day
All issues in Graphify-Labs/graphify
Similar issues
-
[Bug]: Streamed /v1/chat/completions sends unredacted agent error text (keys) in the final chunkPossibly taken @rodricksz4h5 claimed this today. Openarea/streaming comp/gateway P2 type/security
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
NousResearch/hermes-agent#138245 ·
Maintainers usually reply within 1 day
-
[oblt-aw][autodoc] Update user onboarding guide for mandatory trigger CODEOWNERS stepPossibly taken @github-actions claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
Maintainers usually reply within 1 day
-
correction metadata
Difficulty 2/5 Under an hour Newbie friendliness 68/100
acl-org/acl-anthology#10378 · 1 comment ·
Maintainers usually reply within 1 day
-
cloudtrail_multi_region_enabled_logging_management_events fails when the advanced event selector has a custom namePossibly taken @12YYCCYY16 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
prowler-cloud/prowler#13033 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 1/5 1-3 hours Newbie friendliness 88/100
graygarbage/HermesKey#23 ·