v0.10.0 — Graph Timing
Graph Timing: WireDoctor's core value — startup timing analysis — is now visible directly in the Graph tab, not just the Timing tab.
Added
- 🔥 Timing heat chip — toggles node color (green→red, log scale) and size mapped to per-bean instantiation time, so expensive beans jump out at a glance. Off by default; cycle/ghost/proxy/orphan colors keep priority; untimed (never-instantiated) beans stay default.
- 🥇 Critical path chip — traces the startup critical path in gold through the graph (nodes glow, path edges widen) and dims everything else. Handles condensed
[cycle: a, b]path entries by highlighting all members. Hidden when no timing data is available. Composes with filters and heat. - 🔍 Inspector timing line — the node panel now shows
Instantiation: N msand anon critical pathtag where applicable. - 📊
beanTimingsJSON field — the full per-bean instantiation timing map is serialized in the report (previously onlyslowBeansabove the threshold survived).
Verification
- 234 tests green (223 autoconfigure + 11 actuator)
- Validated on a real start.spring.io run (390 beans, 386 timed) — refreshed sample report: https://ddsha441981.github.io/wiredoctor/sample/test2/wiredoctor-report.html
Full Changelog: v0.9.0...v0.10.0