diff --git a/mev_inspect/classifiers/trace.py b/mev_inspect/classifiers/trace.py index f1dfd95..df2fdb5 100644 --- a/mev_inspect/classifiers/trace.py +++ b/mev_inspect/classifiers/trace.py @@ -6,6 +6,8 @@ from mev_inspect.schemas.blocks import CallAction, CallResult, Trace, TraceType from mev_inspect.schemas.classified_traces import ( Classification, ClassifiedTrace, + Call, + ClassifiedCall, ClassifierSpec, ) @@ -69,7 +71,7 @@ class TraceClassifier: signature, Classification.unknown ) - return ClassifiedTrace( + return ClassifiedCall( **trace.dict(), trace_type=trace.type, classification=classification, @@ -85,7 +87,7 @@ class TraceClassifier: gas_used=result.gas_used if result is not None else None, ) - return ClassifiedTrace( + return Call( **trace.dict(), trace_type=trace.type, classification=Classification.unknown, diff --git a/mev_inspect/schemas/classified_traces.py b/mev_inspect/schemas/classified_traces.py index 634c364..3c6089c 100644 --- a/mev_inspect/schemas/classified_traces.py +++ b/mev_inspect/schemas/classified_traces.py @@ -38,9 +38,6 @@ class ClassifiedTrace(Trace): trace_address: List[int] classification: Classification error: Optional[str] - block_hash: Optional[str] - subtraces: Optional[int] - action: Optional[dict] to_address: Optional[str] from_address: Optional[str] gas: Optional[int] @@ -64,22 +61,17 @@ class Call(ClassifiedTrace): to_address: str from_address: str - inputs: Dict[str, Any] class ClassifiedCall(ClassifiedTrace): + + inputs: Dict[str, Any] + abi_name: str + gas: Optional[int] gas_used: Optional[int] function_name: Optional[str] function_signature: Optional[str] - abi_name: str - - class Config: - json_encoders = { - # a little lazy but fine for now - # this is used for bytes value inputs - bytes: lambda b: b.hex(), - } # -------- Swaps ------------------------------------------------------------------------------