Found while fixing the above. On a graph over the HTML viz node limit:
graphify update . handles it: "Graph has 69092 nodes (above 5000 limit). Building
aggregated community view... graph.html written (aggregated: 4701 community nodes)"
graphify label . does not: it backs up the old outputs, prints "Skipped graph.html:
Graph has 69235 nodes - too large for HTML viz (limit: 5000)", and leaves no
graph.html at all -- not in graphify-out/, and not in the dated backup dir either.
So running label on a large graph silently destroys the viz that update had produced.
Re-running update restores it.
graphify cluster-only . --no-label behaves identically -- same "Skipped graph.html"
message, same removal. So the aggregated-view code path appears to exist only in
update's rebuild, and every other command that touches outputs drops the file.
Recovering it is also hard, which is what makes this more than cosmetic: update fast-paths
with "No code-graph topology changes detected; outputs left untouched" and therefore does
not regenerate the missing graph.html. --force does not bypass this (it only governs
the shrink guard). On a repo whose code has not changed since, there is no supported way to
get the file back -- you have to wait for a real code commit.
Expected: label and cluster-only should use the same aggregated-view path update uses,
or at minimum leave the existing graph.html in place rather than removing it. Separately,
update should regenerate graph.html when it is absent, even on the no-topology-change
fast path.
Environment as above (graphifyy 0.9.46, Windows, --backend=gemini).
Found while investigating #2852.
Found while fixing the above. On a graph over the HTML viz node limit:
graphify update .handles it: "Graph has 69092 nodes (above 5000 limit). Buildingaggregated community view... graph.html written (aggregated: 4701 community nodes)"
graphify label .does not: it backs up the old outputs, prints "Skipped graph.html:Graph has 69235 nodes - too large for HTML viz (limit: 5000)", and leaves no
graph.htmlat all -- not ingraphify-out/, and not in the dated backup dir either.So running
labelon a large graph silently destroys the viz thatupdatehad produced.Re-running
updaterestores it.graphify cluster-only . --no-labelbehaves identically -- same "Skipped graph.html"message, same removal. So the aggregated-view code path appears to exist only in
update's rebuild, and every other command that touches outputs drops the file.Recovering it is also hard, which is what makes this more than cosmetic:
updatefast-pathswith "No code-graph topology changes detected; outputs left untouched" and therefore does
not regenerate the missing
graph.html.--forcedoes not bypass this (it only governsthe shrink guard). On a repo whose code has not changed since, there is no supported way to
get the file back -- you have to wait for a real code commit.
Expected:
labelandcluster-onlyshould use the same aggregated-view pathupdateuses,or at minimum leave the existing
graph.htmlin place rather than removing it. Separately,updateshould regenerategraph.htmlwhen it is absent, even on the no-topology-changefast path.
Environment as above (graphifyy 0.9.46, Windows,
--backend=gemini).Found while investigating #2852.