CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl-labs/spec-driven-development

Spec-driven workflow covering requirement gathering, spec authoring, implementation review, and verification — with skills, rules, and evaluation scenarios.

96

1.19x
Quality

90%

Does it follow best practices?

Impact

98%

1.19x

Average score across 9 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

criteria.jsonevals/scenario-7/

{
  "context": "Spec update: agent must extend an existing spec with new rate limiting requirements without losing existing content.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Existing content preserved",
      "description": "All existing sections (Endpoints, Authentication, Pagination, Error handling) are preserved with their original content intact",
      "max_score": 15
    },
    {
      "name": "Rate limiting section added",
      "description": "A new section covering rate limiting is added to the spec",
      "max_score": 10
    },
    {
      "name": "Default limit documented",
      "description": "Spec states the default rate limit of 100 requests per minute per API key",
      "max_score": 8
    },
    {
      "name": "Search endpoint limit documented",
      "description": "Spec states that /search has a lower limit of 20 requests per minute",
      "max_score": 8
    },
    {
      "name": "429 response documented",
      "description": "Spec documents the HTTP 429 response with Retry-After header",
      "max_score": 8
    },
    {
      "name": "Admin multiplier documented",
      "description": "Spec documents the 10x rate limit multiplier for admin API keys",
      "max_score": 8
    },
    {
      "name": "Test links added for rate limiting",
      "description": "New [@test] links are added for rate limiting requirements (not reusing existing test file links)",
      "max_score": 10
    },
    {
      "name": "Frontmatter preserved",
      "description": "YAML frontmatter (name, description, targets) is preserved — not removed or corrupted",
      "max_score": 5
    },
    {
      "name": "Single spec file",
      "description": "Rate limiting is added to the existing specs/api.spec.md — not a separate spec file",
      "max_score": 8
    },
    {
      "name": "No requirement gathering attempted",
      "description": "Agent does NOT ask clarifying questions or start an interview — requirements are already confirmed",
      "max_score": 10
    },
    {
      "name": ".spec.md extension retained",
      "description": "The updated file keeps the .spec.md extension",
      "max_score": 5
    }
  ]
}

README.md

tile.json