Skip to content

graphify label and cluster-only delete graph.html on graphs over the viz limit, and update will not regenerate it #2853

Description

@larrymandras

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions