Parent
Spec: #1 (upstream: Graphify-Labs#1682)
What to build
An inline instantiation call — (new Service())->method() or (new \\App\\Services\\Service())->method() — gets a calls edge to the service's method. Because the source names the exact class, the edge is EXTRACTED — but only when the source's qualified name corroborates the resolved node; otherwise it downgrades to INFERRED. new self() / new static() receivers are refused.
Extends the tracer's receiver mapping with the (new) receiver key plus the retained class name and qualified text.
Acceptance criteria
Blocked by
Parent
Spec: #1 (upstream: Graphify-Labs#1682)
What to build
An inline instantiation call —
(new Service())->method()or(new \\App\\Services\\Service())->method()— gets acallsedge to the service's method. Because the source names the exact class, the edge isEXTRACTED— but only when the source's qualified name corroborates the resolved node; otherwise it downgrades toINFERRED.new self()/new static()receivers are refused.Extends the tracer's receiver mapping with the
(new)receiver key plus the retained class name and qualified text.Acceptance criteria
(new \\NS\\Service())->method()yields an EXTRACTED calls edge when the qualified name corroborates the resolved node; decoy gets no edge(new Service())->method()resolves; confidence per the corroboration rule(new self())->m()and(new static())->m()yield no edge(new class {...})->m()yields no edgenew Service()statements without an immediate call remain out of scope (unchanged)Blocked by