or run

tessl search
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-5/

{
  "context": "This criteria evaluates how effectively the engineer uses mixin-deep to implement a configuration merger that properly handles array values. The focus is on understanding that mixin-deep treats arrays as atomic values (replaces rather than merges) and leveraging this behavior correctly.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Uses mixin-deep",
      "description": "Imports and uses the mixin-deep package (or mixinDeep function) as the core merging mechanism",
      "max_score": 20
    },
    {
      "name": "Non-mutating implementation",
      "description": "Uses an empty object {} as the first argument to mixinDeep to create a new merged object without mutating the input configurations",
      "max_score": 25
    },
    {
      "name": "Multiple source handling",
      "description": "Correctly passes all configuration objects to mixinDeep using spread operator or similar technique to handle variable number of arguments",
      "max_score": 15
    },
    {
      "name": "Array replacement behavior",
      "description": "Demonstrates understanding that mixin-deep automatically replaces arrays (not merges them) - implementation should rely on this built-in behavior rather than custom array handling logic",
      "max_score": 25
    },
    {
      "name": "Test case validation",
      "description": "All three test cases pass correctly, demonstrating proper array replacement in basic, nested, and multi-source scenarios",
      "max_score": 15
    }
  ]
}