or run

npx @tessl/cli init
Log in

Version

Files

docs

index.md
tile.json

rubric.jsonevals/scenario-7/

{
  "context": "This criteria evaluates how well the engineer uses json-schema-traverse's pre-order and post-order traversal capabilities to track schema entry and exit events. The focus is on correctly using the library's callback system to distinguish between visiting a schema before and after its children are processed.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Uses traverse function",
      "description": "Correctly imports and invokes the main traverse function from json-schema-traverse package with schema as first argument",
      "max_score": 15
    },
    {
      "name": "Pre-order callback",
      "description": "Implements a pre callback function (via cb.pre or cb: {pre, post}) that executes when entering each schema object",
      "max_score": 25
    },
    {
      "name": "Post-order callback",
      "description": "Implements a post callback function (via cb.post or cb: {pre, post}) that executes when exiting each schema object after children are processed",
      "max_score": 25
    },
    {
      "name": "JSON Pointer extraction",
      "description": "Correctly extracts and uses the jsonPtr parameter (second parameter) from callbacks to identify schema locations",
      "max_score": 20
    },
    {
      "name": "Entry tracking",
      "description": "Records entry events in the pre callback, capturing JSON pointers in the correct traversal order",
      "max_score": 10
    },
    {
      "name": "Exit tracking",
      "description": "Records exit events in the post callback, capturing JSON pointers after all children have been processed",
      "max_score": 5
    }
  ]
}