I have the following basic example
@object_type
class BasicMath:
@function
async def add( self, a: float, b: float ) -> float:
return a+b
@function
async def mul( self, a: float, b: float ) -> float:
return a*b
@function
async def maths( self, val: float ) -> float :
x = await self.add( val , 5 )
y = await self.mul( 2 , x )
return y
I can execute dagger call maths 2 and I get the expected correct answer
dagger call maths --val 2
▶ connect 0.4s
▶ load module: . 4.9s
✔ parsing command line arguments 0.0s
✔ batches: Batches! 2.1s
▶ .maths(val: 2.000000): Float! 1.8s
14
But I'm expecting to see both add and mul in my trace output from dagger. I've also confimed in dagger cloud that only maths shows up in the trace.
I think I'm just using the sdk incorrectly - whats the right way to do a nested call and have all the @function tagged calls show up in my trace?