or run

npx @tessl/cli init
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-5/

{
  "context": "This criteria evaluates how well the engineer uses the passport-google-oauth package to implement multi-strategy support, specifically their ability to import and configure both OAuth 1.0a and OAuth 2.0 strategies from the same package and register them with Passport for simultaneous use.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "OAuth 1.0a Strategy Import",
      "description": "Correctly imports the OAuth 1.0a strategy (Strategy or OAuthStrategy) from the passport-google-oauth package",
      "max_score": 15
    },
    {
      "name": "OAuth 2.0 Strategy Import",
      "description": "Correctly imports the OAuth 2.0 strategy (OAuth2Strategy) from the passport-google-oauth package",
      "max_score": 15
    },
    {
      "name": "OAuth 1.0a Configuration",
      "description": "Properly instantiates the OAuth 1.0a strategy with consumerKey, consumerSecret, and callbackURL configuration parameters",
      "max_score": 15
    },
    {
      "name": "OAuth 2.0 Configuration",
      "description": "Properly instantiates the OAuth 2.0 strategy with clientID, clientSecret, and callbackURL configuration parameters",
      "max_score": 15
    },
    {
      "name": "Legacy Verify Callback",
      "description": "Implements a verify callback for the OAuth 1.0a strategy with the correct signature: function(token, tokenSecret, profile, done)",
      "max_score": 10
    },
    {
      "name": "Modern Verify Callback",
      "description": "Implements a verify callback for the OAuth 2.0 strategy with the correct signature: function(accessToken, refreshToken, profile, done)",
      "max_score": 10
    },
    {
      "name": "Named Strategy Registration",
      "description": "Registers both strategies with Passport using passport.use() with distinct strategy names ('google-legacy' and 'google-modern')",
      "max_score": 20
    }
  ]
}