Source maps support for Istanbul code coverage toolkit, enabling accurate coverage reporting for transpiled JavaScript code
Overall
score
98%
{
"context": "This criteria evaluates how well the engineer uses istanbul-lib-source-maps package capabilities for debug logging and error handling when building a coverage diagnostic tool. The focus is on proper usage of source map registration, retrieval, validation, and graceful error handling mechanisms.",
"type": "weighted_checklist",
"checklist": [
{
"name": "MapStore Creation",
"description": "Uses createSourceMapStore() function to initialize a MapStore instance, optionally with verbose logging configuration",
"max_score": 15
},
{
"name": "Source Map Registration",
"description": "Correctly uses mapStore.registerURL() or mapStore.registerMap() methods to register source maps for files, handling both URL strings and source map objects",
"max_score": 20
},
{
"name": "Source Map Retrieval",
"description": "Uses mapStore.getSourceMapSync() to retrieve registered source maps for validation or diagnostic purposes",
"max_score": 15
},
{
"name": "Data URL Handling",
"description": "Properly handles inline source maps with data: URL format, including base64-encoded source maps",
"max_score": 10
},
{
"name": "Source Map Validation",
"description": "Validates source map objects for required properties (version, sources, mappings) using the package's validation capabilities or by checking retrieved source maps",
"max_score": 15
},
{
"name": "Graceful Error Handling",
"description": "Implements error handling that catches and logs failures without throwing exceptions, following the package's silent failure design pattern",
"max_score": 15
},
{
"name": "Verbose Logging",
"description": "Implements conditional verbose logging based on configuration, following the pattern used by the package's DEBUG environment variable support",
"max_score": 10
}
]
}Install with Tessl CLI
npx tessl i tessl/npm-istanbul-lib-source-mapsdocs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10