docs
evals
scenario-1
scenario-10
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
{
"context": "This criteria evaluates how effectively the engineer uses puppeteer-core's frame navigation and interaction API to traverse iframe hierarchies, access frame properties, and build a structured representation of the frame tree.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Browser launch",
"description": "Uses puppeteer.launch() or puppeteer.connect() to initialize a browser instance",
"max_score": 5
},
{
"name": "Page navigation",
"description": "Uses page.goto() to navigate to the provided URL",
"max_score": 5
},
{
"name": "Main frame access",
"description": "Uses page.mainFrame() to access the primary frame of the page",
"max_score": 10
},
{
"name": "Child frame enumeration",
"description": "Uses frame.childFrames() to retrieve all child frames of a given frame",
"max_score": 20
},
{
"name": "Frame URL retrieval",
"description": "Uses frame.url() to get the URL of each frame",
"max_score": 15
},
{
"name": "Frame title retrieval",
"description": "Uses frame.title() to get the title of each frame",
"max_score": 15
},
{
"name": "Frame name retrieval",
"description": "Uses frame.name() to get the name or identifier of each frame",
"max_score": 10
},
{
"name": "Recursive traversal",
"description": "Implements recursive logic to traverse nested frames at all depth levels using the frame API methods",
"max_score": 15
},
{
"name": "Browser cleanup",
"description": "Uses browser.close() to properly close the browser instance after processing",
"max_score": 5
}
]
}