Auto-generated tile from GitHub (10 skills)
92
94%
Does it follow best practices?
Impact
92%
1.16xAverage score across 44 eval scenarios
Advisory
Suggest reviewing before use
{
"context": "Tests whether the agent uses the Node.js built-in node:test runner with t.assert.* methods, uses Fastify's inject() method for HTTP simulation (not a real HTTP server), and follows the async test pattern with before/after lifecycle hooks.",
"type": "weighted_checklist",
"checklist": [
{
"name": "node:test imported",
"description": "The test file imports describe, it, before, and/or after from 'node:test' — NOT from jest, mocha, tap, vitest, or any other third-party testing framework",
"max_score": 15
},
{
"name": "node --test in package.json",
"description": "The test script in package.json runs tests via 'node --test' (not jest, mocha, or another test runner command)",
"max_score": 10
},
{
"name": "inject() used for requests",
"description": "All HTTP requests in tests are made via app.inject() — NOT via fetch(), axios, supertest, or opening a real network socket",
"max_score": 15
},
{
"name": "t.assert.* used",
"description": "Assertions in the test file use t.assert.equal(), t.assert.ok(), or other t.assert.* methods — NOT standalone assert(), expect(), or chai calls",
"max_score": 12
},
{
"name": "app.ready() awaited",
"description": "The test setup calls await app.ready() (or awaits app construction) before running inject() calls",
"max_score": 8
},
{
"name": "app.close() in teardown",
"description": "An after() hook calls await app.close() to properly shut down the Fastify instance after tests",
"max_score": 8
},
{
"name": "200 routes tested",
"description": "At least one test verifies a 200 response from GET / and at least one test verifies a 200 response from GET /:sku",
"max_score": 8
},
{
"name": "404 route tested",
"description": "At least one test verifies that GET with a non-existent SKU returns a 404 status code",
"max_score": 8
},
{
"name": "Validation error tested",
"description": "At least one test verifies that POST / with invalid or missing fields returns a 400 status code",
"max_score": 8
},
{
"name": "Warehouse filter tested",
"description": "At least one test verifies that GET /?warehouse=X returns only items from that warehouse",
"max_score": 8
}
]
}evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10
scenario-11
scenario-12
scenario-13
scenario-14
scenario-15
scenario-16
scenario-17
scenario-18
scenario-19
scenario-20
scenario-21
scenario-22
scenario-23
scenario-24
scenario-25
scenario-26
scenario-27
scenario-28
scenario-29
scenario-30
scenario-31
scenario-32
scenario-33
scenario-34
scenario-35
scenario-36
scenario-37
scenario-38
scenario-39
scenario-40
scenario-41
scenario-42
scenario-43
scenario-44
skills
documentation
fastify
init
linting-neostandard-eslint9
node
nodejs-core
rules
oauth
octocat
snipgrapher