CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-slack--types

Comprehensive TypeScript type definitions for building Slack applications and integrations with the Node Slack SDK

94

1.11x
Overview
Eval results
Files

rubric.jsonevals/scenario-5/

{
  "context": "This evaluation assesses how well the engineer uses the @slack/types package to handle Slack app lifecycle events. The focus is on proper usage of the AppInstalledEvent, AppUninstalledEvent, and AppHomeOpenedEvent type definitions to implement type-safe event processing.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Import event types",
      "description": "Correctly imports AppInstalledEvent, AppUninstalledEvent, and AppHomeOpenedEvent from @slack/types package",
      "max_score": 20
    },
    {
      "name": "Type annotation usage",
      "description": "Uses the imported event types in the function parameter type annotation (union type or discriminated union pattern)",
      "max_score": 20
    },
    {
      "name": "AppInstalledEvent handling",
      "description": "Correctly accesses properties specific to AppInstalledEvent (app_name, app_id, user_id, team_id) to format the installation log message",
      "max_score": 20
    },
    {
      "name": "AppUninstalledEvent handling",
      "description": "Correctly handles AppUninstalledEvent by checking the event type and returning the appropriate message",
      "max_score": 15
    },
    {
      "name": "AppHomeOpenedEvent handling",
      "description": "Correctly accesses properties specific to AppHomeOpenedEvent (user, channel, tab) to format the home opened log message",
      "max_score": 15
    },
    {
      "name": "Type discrimination",
      "description": "Uses proper type discrimination based on the 'type' property to distinguish between different event types (e.g., checking if event.type === 'app_installed')",
      "max_score": 10
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-slack--types

tile.json