You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
dataset/ # contains the manual-inspected and error-injected smart contracts
- audited/ # manual-inspected
- err-inj/ # error-injected
- injected # injected smart contracts
- <filename>.sol # error-injected smart contract
- <filename>.json # contains the information about injected errors
- <filename>-res.json # contains the LLM responses of full-rule prompting and oracle prompting
- origin # original smart contracts
- <filename>.sol # original smart contract
File Formats
<filename>-res.json
{
"method1": {
"llm_res": [
# here is the LLM responses of full-rule prompting
]
},
"method2": {
"llm_res": [
# here is the LLM responses of oracle prompting
],
"can_detect": [
# here is whether the corresponding responses indicates the bug has been identidied by the LLM
],
"error": [
# here is whether there is any error/exception happened during this process
]
}
}
<filename>.json
{
"erc": // Specifies the Ethereum token standard used in the contract (e.g., ERC-1155)
"contract": // Represents the name or identifier of the contract being analyzed
"inj_file": // Path to the injected version of the contract source file, which contains modifications introducing errors for testing
"orig_file": // "Path to the original, unmodified contract source file
"inj_errors": [
{
// Defines the error rule and metadata about the injection
"type": // Type of injection applied (e.g., 'throw', 'interface')."
"rule": // Description of the rule applied to the function."
"function": // Name of the function affected by the error injection."
"numofargs": // Number of arguments in the function signature."
"fn_params": // Specifies which function parameters are involved in the rule."
"severity": // Indicates the severity of the issue (e.g., 'high', 'medium')."
"lines": // Specifies the lines in the source code where the error appears.",
{
"orig_range": // "Line numbers in the original contract where modifications were made."
"to_replace": // "Placeholder for potential code replacements."
}
}
}
]
"compile_error": // "Stores any compilation errors caused by the injected modifications. If 'null', no compilation errors were found."
}