Skip to content

Bump the ktsu ImGui suite to 3.27.0 - #38

Merged
matt-edmondson merged 1 commit into
mainfrom
claude/practical-franklin-lt5o3e
Sep 9, 2026
Merged

Bump the ktsu ImGui suite to 3.27.0#38
matt-edmondson merged 1 commit into
mainfrom
claude/practical-franklin-lt5o3e

Conversation

@matt-edmondson

Copy link
Copy Markdown
Contributor

Bumps the six ktsu ImGuiApp-suite pins in Directory.Packages.props from 3.26.0 to 3.27.0: ktsu.ImGui.App, ktsu.ImGui.App.Testing, ktsu.ImGui.SyntaxHighlighting, ktsu.ImGui.Widgets, ktsu.ImGui.NodeEditor, ktsu.ForceDirectedLayout.

What this picks up

3.27.0 carries ktsu-dev/ImGuiApp#375, which changes how the force-directed layout measures repulsion. It was measured between body centres, which counts each node's own extent as part of the distance between them — so a node pressed against the side of a wide one still had distant centres and nothing pushed back, while two small nodes with a screen of space between them read as crowded. It is now measured across the clear space between the two bounding boxes, so the same setting leaves the same room whatever size the nodes are.

Because the measured distance is now the smaller number, RepulsionStrength's default was recalibrated from 1,200,000 to 600,000 upstream. Over ten starting arrangements of a twenty-node document that leaves the settled graph the size it was, with the same edge angle and the same number of links drawn over bodies, while the tightest pair goes from 22 units of clear space to 69.

Nothing else to change here

Coder hard-codes no physics values — AstGraph uses Engine.PhysicsSettings with { Enabled = true } and AstGraphEditor draws the shared PhysicsSettingsPanel — so the recalibrated default flows through on its own. I checked for any tuned RepulsionStrength that would have needed halving alongside it; there is none.

Verification

dotnet build -c Release clean, no warnings. Coder.Test 373/373 passing against 3.27.0.

🤖 Generated with Claude Code

https://claude.ai/code/session_018b2bn5CKSzpjRV4nxv3c3y


Generated by Claude Code

Picks up the change to how the force-directed layout measures repulsion: it is
now measured across the clear space between two node bounding boxes rather than
between their centres, so the same setting leaves the same room between a pair
of literals as between a pair of classes instead of crowding the big nodes and
marooning the small ones (ktsu-dev/ImGuiApp#371).

Nothing in Coder needs changing with it. The graph editor takes its physics
from the engine's defaults and the shared PhysicsSettingsPanel rather than
hard-coding any tuned value, so the recalibrated RepulsionStrength - halved
from 1,200,000 to 600,000, because the distance being measured is now the
smaller number - flows through on its own.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018b2bn5CKSzpjRV4nxv3c3y
@sonarqubecloud

sonarqubecloud Bot commented Sep 9, 2026

Copy link
Copy Markdown

@matt-edmondson
matt-edmondson merged commit 30f8788 into main Sep 9, 2026
12 checks passed
@matt-edmondson
matt-edmondson deleted the claude/practical-franklin-lt5o3e branch September 9, 2026 03:50
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.

2 participants