or run

npx @tessl/cli init
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-9/

{
  "context": "Assesses use of jsx-ast-utils prop-checking helpers to enforce required JSX props while honoring case sensitivity and spread handling options defined in the spec.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "All-props check",
      "description": "Uses `hasEveryProp` to confirm every required prop is present on the attributes array with default ignoreCase behavior for the all-required path.",
      "max_score": 35
    },
    {
      "name": "Any-prop check",
      "description": "Uses `hasAnyProp` to evaluate candidate prop sets for the at-least-one requirement, respecting the ignoreCase default.",
      "max_score": 20
    },
    {
      "name": "Spread handling",
      "description": "Passes `spreadStrict` appropriately on `hasEveryProp` and/or `hasAnyProp` so strict mode ignores spreads and loose mode treats spreads as satisfying missing props.",
      "max_score": 20
    },
    {
      "name": "Case sensitivity toggle",
      "description": "Prop checks switch to case-sensitive matching when requested by providing `ignoreCase: false` to `hasProp`/`hasAnyProp`/`hasEveryProp` calls.",
      "max_score": 15
    },
    {
      "name": "Missing list accuracy",
      "description": "Computes missing props using `hasProp` (or equivalent `hasEveryProp` logic) so the returned list mirrors the same case and spread rules as the boolean checks.",
      "max_score": 10
    }
  ]
}