`pass_ensemble_routing.c` (merged in #1063) covers `SendRequestSync` targets. A companion pattern in IRIS/Ensemble code is WorkMgr dispatch:
```objectscript
Do ##class(%SYSTEM.WorkMgr).Queue("##class(MyApp.Worker).Process", arg)
```
The string literal `"##class(MyApp.Worker).Process"` names the class and method to invoke. This is the async work-dispatch idiom — functionally parallel to `SendRequestSync` but operating outside the Ensemble message bus.
Proposed: scan method bodies for `.Queue(` calls, extract the `##class(Pkg.Class).Method` literal from the first argument, and emit a `CALLS` edge from the calling method to the target method node (resolved by qualified name). Confidence 0.90 (string literal match, same file corpus).
Scope: ObjectScript `.cls` files only, gated on `has_objectscript_nodes`. No new node labels or edge types — uses existing `CALLS`.
`pass_ensemble_routing.c` (merged in #1063) covers `SendRequestSync` targets. A companion pattern in IRIS/Ensemble code is WorkMgr dispatch:
```objectscript
Do ##class(%SYSTEM.WorkMgr).Queue("##class(MyApp.Worker).Process", arg)
```
The string literal `"##class(MyApp.Worker).Process"` names the class and method to invoke. This is the async work-dispatch idiom — functionally parallel to `SendRequestSync` but operating outside the Ensemble message bus.
Proposed: scan method bodies for `.Queue(` calls, extract the `##class(Pkg.Class).Method` literal from the first argument, and emit a `CALLS` edge from the calling method to the target method node (resolved by qualified name). Confidence 0.90 (string literal match, same file corpus).
Scope: ObjectScript `.cls` files only, gated on `has_objectscript_nodes`. No new node labels or edge types — uses existing `CALLS`.