Keep Type.valueOf receivers intact so package prefixes are not mistaken for enum types, and harden binding/canonicalization paths against trailing-dot names that caused index crashes on large codebases.
Co-authored-by: Cursor <cursoragent@cursor.com>
Lock Supplier.get(), Runnable.run(), and call-site enum resolution to the dataflow pipeline so a parallel resolver cannot creep back in unnoticed.
Co-authored-by: Cursor <cursoragent@cursor.com>
Delete the parallel Supplier/Runnable bridging layer and resolve functional call-site arguments via VariableTracer, PathBindingEvaluator, and JdtDataFlowModel instead.
Co-authored-by: Cursor <cursoragent@cursor.com>
Trace execute→Runnable.run arguments via source AST and JdtDataFlowModel void side-effects, and narrow polymorphic events using domain isCorrect() predicates on rich event types.
Co-authored-by: Cursor <cursoragent@cursor.com>
Use multi-source endpoint evidence so shared dispatchers resolve to one event per endpoint without over-linking or fail-closed AMBIGUOUS_WIDEN.
Co-authored-by: Cursor <cursoragent@cursor.com>
Fail closed on broad enum widens so dispatchers link one event per endpoint instead of every transition on the machine.
Co-authored-by: Cursor <cursoragent@cursor.com>
Stop treating multi-source same-event triggers as ambiguous widen failures; trust bare polymorphic constant names when the machine event type is known.
Co-authored-by: Cursor <cursoragent@cursor.com>
Call-graph ambiguous metadata must not blank matchedTransitions; trust import-style polymorphic widen when the machine event type is known.
Co-authored-by: Cursor <cursoragent@cursor.com>
Resolve static map field declaring types via import-aware lookup when JDT binding uses the wrong package, and cover qualified inherited maps, static factory receivers, and RequestParam expansion across modules.
Co-authored-by: Cursor <cursoragent@cursor.com>
Fix inherited static-block map expansion across compilation units by resolving superclass types from imports when binding points at the wrong package.
Co-authored-by: Cursor <cursoragent@cursor.com>
Append query parameters for @RequestParam expansion, resolve static factory map receivers and inherited static-block maps, and fail closed on instance field maps.
Co-authored-by: Cursor <cursoragent@cursor.com>
Walk superclass and interface hierarchies when locating compile-time map initializers for Map.get path binding expansion.
Co-authored-by: Cursor <cursoragent@cursor.com>
Delegate single-return static factories through nested calls and static field references with cycle detection, resolve factories without JDT bindings via receiver type lookup, and add regression coverage including sibling-module factories and fail-closed loop or recursive cases.
Co-authored-by: Cursor <cursoragent@cursor.com>
Follow one-return static factories that directly yield compile-time map literals for field initializers, static-block assignments, and putAll sources while failing closed on runtime-built maps or multiple returns.
Co-authored-by: Cursor <cursoragent@cursor.com>
Support putAll from compile-time maps inside anonymous HashMap initializers and add regression coverage for linked locals, mixed put/putAll, and empty inline HashMap fields populated in static blocks.
Co-authored-by: Cursor <cursoragent@cursor.com>
Follow HashMap locals assigned to static route fields and direct Map.of or double-brace assignments inside static initializers while ignoring unlinked local puts and failing closed on computed keys.
Co-authored-by: Cursor <cursoragent@cursor.com>
Resolve compile-time keys from anonymous subclass instance initializers used for inline route maps while remaining fail-closed when any put key is computed.
Co-authored-by: Cursor <cursoragent@cursor.com>
When a static map field is populated in a static block via put calls with compile-time string keys, expand endpoint path parameters through those entries while remaining fail-closed for computed keys.
Co-authored-by: Cursor <cursoragent@cursor.com>
Lock in cross-class, static-import, reversed-equals, sibling-module, and fail-closed static-initializer map behavior for commandKey and machineType expansion.
Co-authored-by: Cursor <cursoragent@cursor.com>