Client-side Bitcoin JavaScript library for node.js and browsers with comprehensive Bitcoin protocol support
Overall
score
99%
{
"context": "This evaluation assesses how effectively the engineer uses bitcoinjs-lib's Transaction class and related methods to create, serialize, parse, and manipulate Bitcoin transactions. The focus is on proper usage of the library's transaction APIs rather than general coding practices.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Transaction construction",
"description": "Uses the Transaction class constructor or factory method to create new transaction objects with proper initialization",
"max_score": 15
},
{
"name": "Input addition",
"description": "Uses addInput() method or direct manipulation of the transaction's ins array to add inputs with hash, index, script, and sequence parameters",
"max_score": 20
},
{
"name": "Output addition",
"description": "Uses addOutput() method or direct manipulation of the transaction's outs array to add outputs with value and script parameters",
"max_score": 20
},
{
"name": "Hex serialization",
"description": "Uses toHex() method to serialize transactions to hexadecimal string format",
"max_score": 10
},
{
"name": "Buffer serialization",
"description": "Uses toBuffer() method to serialize transactions to Buffer format",
"max_score": 10
},
{
"name": "Transaction parsing",
"description": "Uses Transaction.fromHex() or Transaction.fromBuffer() static methods to parse serialized transactions back into Transaction objects",
"max_score": 15
},
{
"name": "Transaction ID",
"description": "Uses getId() method to calculate the transaction identifier as a hexadecimal string",
"max_score": 5
},
{
"name": "Transaction hash",
"description": "Uses getHash() method or accesses the hash property to get the transaction hash as a Buffer",
"max_score": 5
}
]
}Install with Tessl CLI
npx tessl i tessl/npm-bitcoinjs-libdocs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10