or run

tessl search
Log in

Version

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
pypipkg:pypi/questionary@2.1.x
tile.json

tessl/pypi-questionary

tessl install tessl/pypi-questionary@2.1.0

Python library to build pretty command line user prompts with interactive forms and validation

Agent Success

Agent success rate when using this tile

96%

Improvement

Agent success rate improvement when using this tile compared to baseline

1x

Baseline

Agent success rate without this tile

96%

rubric.jsonevals/scenario-7/

{
  "context": "This criteria evaluates how well the engineer uses questionary's autocomplete functionality to build an interactive city search tool. The focus is on proper use of the autocomplete prompt, choice configuration with metadata, case-insensitive matching, and error handling.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Autocomplete prompt usage",
      "description": "Uses questionary.autocomplete() to create the interactive prompt with the message 'Search for a city:'",
      "max_score": 25
    },
    {
      "name": "Choice list configuration",
      "description": "Provides a list of at least 15 city choices to the autocomplete prompt, with each choice containing both the city name and associated data (country)",
      "max_score": 20
    },
    {
      "name": "Metadata display",
      "description": "Displays country information alongside city names in the autocomplete dropdown using Choice objects with the meta parameter, or formats choice strings to include country information",
      "max_score": 20
    },
    {
      "name": "Case-insensitive matching",
      "description": "Configures the autocomplete to use case-insensitive matching (default behavior) or implements a custom completer with case-insensitive logic, ensuring 'par' matches 'Paris'",
      "max_score": 15
    },
    {
      "name": "Result handling",
      "description": "Correctly retrieves and displays the selected city and country after user selection in the format 'You selected: {city}, {country}'",
      "max_score": 10
    },
    {
      "name": "Keyboard interrupt handling",
      "description": "Handles prompt cancellation either by wrapping the prompt in try-except to catch KeyboardInterrupt, or by using the .ask() method without unsafe parameter (safe mode is default) and checking for None return value",
      "max_score": 10
    }
  ]
}