|
9 | 9 | "go.opentelemetry.io/otel"
|
10 | 10 | "go.opentelemetry.io/otel/attribute"
|
11 | 11 |
|
| 12 | + "github.com/filecoin-project/lily/lens/util" |
12 | 13 | "github.com/filecoin-project/lily/model"
|
13 | 14 | messagemodel "github.com/filecoin-project/lily/model/messages"
|
14 | 15 | visormodel "github.com/filecoin-project/lily/model/visor"
|
@@ -50,6 +51,8 @@ func (t *Task) ProcessTipSets(ctx context.Context, current *types.TipSet, execut
|
50 | 51 | return nil, report, nil
|
51 | 52 | }
|
52 | 53 |
|
| 54 | + getActorCode, makeActorCodeRuncErr := util.MakeGetActorCodeFunc(ctx, t.node.Store(), current, executed) |
| 55 | + |
53 | 56 | var (
|
54 | 57 | receiptResults = make(messagemodel.Receipts, 0, len(blkMsgRect))
|
55 | 58 | errorsDetected = make([]*messages.MessageError, 0, len(blkMsgRect))
|
@@ -85,6 +88,14 @@ func (t *Task) ProcessTipSets(ctx context.Context, current *types.TipSet, execut
|
85 | 88 | Idx: index,
|
86 | 89 | ExitCode: int64(rec.ExitCode),
|
87 | 90 | GasUsed: rec.GasUsed,
|
| 91 | + Return: rec.Return, |
| 92 | + } |
| 93 | + toCode, found := getActorCode(ctx, msg.VMMessage().To) |
| 94 | + if found && rec.ExitCode.IsSuccess() && makeActorCodeRuncErr == nil { |
| 95 | + parsedReturn, _, err := util.ParseReturn(rec.Return, msg.VMMessage().Method, toCode) |
| 96 | + if err == nil { |
| 97 | + rcpt.ParsedReturn = parsedReturn |
| 98 | + } |
88 | 99 | }
|
89 | 100 | receiptResults = append(receiptResults, rcpt)
|
90 | 101 | }
|
|
0 commit comments