or run

npx @tessl/cli init
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-2/

{
  "context": "This evaluation criteria assesses how well the engineer uses czg's length validation mode functionality to build a commit message subject validator. The focus is on correctly implementing validation logic that can operate in both strict error mode and lenient warning mode, demonstrating understanding of the isIgnoreCheckMaxSubjectLength configuration option and related validation patterns.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Core validation logic",
      "description": "Implements the validateSubjectLength function that correctly checks if subject length exceeds the maximum limit and returns appropriate validation results",
      "max_score": 25
    },
    {
      "name": "Error mode implementation",
      "description": "Correctly implements error mode (default behavior when ignoreCheckMaxSubjectLength is false/undefined) that returns severity 'error' and valid: false when subject exceeds max length",
      "max_score": 20
    },
    {
      "name": "Warning mode implementation",
      "description": "Correctly implements warning mode (when ignoreCheckMaxSubjectLength is true) that returns severity 'warning' and valid: false when subject exceeds max length but allows the validation to be non-blocking",
      "max_score": 20
    },
    {
      "name": "Default max length",
      "description": "Uses default maxSubjectLength of 50 characters when not explicitly provided in options, matching czg's standard configuration patterns",
      "max_score": 10
    },
    {
      "name": "Success case handling",
      "description": "Returns appropriate success result with severity 'success' and valid: true when subject length is within the maximum limit",
      "max_score": 10
    },
    {
      "name": "Options interface",
      "description": "Correctly defines ValidatorOptions interface with optional maxSubjectLength and ignoreCheckMaxSubjectLength properties that align with czg's configuration options",
      "max_score": 10
    },
    {
      "name": "Result structure",
      "description": "Returns ValidationResult objects with all required properties (valid, message, severity) and uses correct TypeScript types matching the API specification",
      "max_score": 5
    }
  ]
}