Skip to content

Reveal full spatial graph structure with normalized layout controls - #9

Merged
bregydoc merged 19 commits into
mainfrom
codex/module-dependency-explorer
Oct 6, 2026
Merged

bregydoc merged 19 commits into
mainfrom
codex/module-dependency-explorer

Conversation

@bregydoc

@bregydoc bregydoc commented Oct 3, 2026 •

Copy link
Copy Markdown
Collaborator

Large import graphs collapsed into a radial ball because pair imports and derived dependency sets shared unnormalized centroid attraction. The Spatial viewer now provides connectivity-based initialization and normalized force controls while retaining every original vertex and hyperedge. Auto remains Spatial; the directed dependency canvas opens explicitly with --view dependencies.

  • Add Legacy, Normalized, and LinLog attraction models, separate pair/set weights, degree/arity normalization, derived-set influence, movement limits, display fading, structural rebuild, and full-graph framing. Headless defaults and the original tour retain Legacy behavior.
  • Add validated import direction, independently bounded import/dependent traversal, filters, paths, exact module search, expansion, and history. Metadata survives projections; star/clique scenes do not fabricate hubs.
  • Preserve main's HIF/Python interoperability, desktop packaging, explicit CLI/watch formats, and Python/Rust onboarding. Keep the README focused on the general-purpose tool, with Mathlib as one case study.
  • Fix a reproduced crash after reloading in Dependencies and returning to Spatial in the same UI frame. Entities remap on each replacement epoch; newly created nodes stay hidden in Dependencies. The regression failed before the fix and passed afterward.
  • Prepare version 0.2.0 across Rust workspace packages, Python core, and the desktop companion, with an exact viewer dependency and migration/release notes.
  • Add a clean 24-second Mathlib navigation recording with all 9,384 vertices, 37,356 import lines, and 7,550 group surfaces enabled. Translucent fills and a stable sample of 64 outlines make hyperedges visible. Camera movement follows wall-clock time over settled geometry; BMP readbacks and their timestamps drive variable-timestamp H.264 export. The 288-frame GIF retains the full 24-second loop through cumulative centisecond rounding. Titles, labels, counters, and HUD are hidden. Document capture commands, pinned data, approximate hull geometry, timestamp evidence, hashes, and recording overhead.
  • Extend CI to check the entire workspace, public Rust docs with warnings denied, exporter/aggregation tests, and CLI smoke commands. Retain Linux/macOS/Windows core and desktop wheels plus source-distribution checks.

Local validation: 183 Rust tests (3 CLI, 82 core unit, 9 HIF integration, 84 native, 5 doctests); workspace/all-target clippy and rustdoc with warnings denied; formatting/whitespace; real native realtime and offline captures; video duration/resolution; GIF frame count, loop, and measured duration; encoder timestamp validation; asset/source hashes; 132 local Markdown targets. Independent review found no outstanding Critical/Important issues. Earlier verification on this rebased 0.2.0 source also passed 17 installed Python package tests on checkout/source-distribution wheels, 9 exporter/aggregation tests, strict mypy, stub drift checks, XGI interchange, wheel-content checks, and actual native/Python launch-close-cleanup smoke tests. A bounded reachable-history scan found no common credential signatures. Current cross-platform status is tracked by the PR checks for the exact head commit.

New clean Mathlib recording and reproduction · Public repository readiness · Historical native measurements.

Connectivity coordinates and large-group hulls remain approximate; dense overlap and deferred notebook/live-Python capabilities are documented. The new recording measures camera navigation with capture overhead and does not establish moving-layout or hardware-independent performance. Published 0.1.2 wheels predate the new controls. This PR prepares 0.2.0; release publication and repository visibility remain maintainer decisions.

@bregydoc bregydoc changed the title Add native directed module dependency exploration Improve full spatial graph controls and retain optional module explorer Oct 3, 2026
@bregydoc bregydoc changed the title Improve full spatial graph controls and retain optional module explorer Reveal full spatial graph structure with normalized layout controls Oct 3, 2026
@bregydoc
bregydoc force-pushed the codex/module-dependency-explorer branch from 14ff061 to bd732de Compare October 5, 2026 19:39
@bregydoc
bregydoc force-pushed the codex/module-dependency-explorer branch from bd732de to 4bc48d0 Compare October 5, 2026 19:42
@bregydoc
bregydoc merged commit b76a8ae into main Oct 6, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant