or run

tessl search
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-1/

{
  "context": "This criteria evaluates how well the engineer uses the @nuxtjs/google-analytics package to implement dynamic tracking ID loading for a multi-tenant application. The focus is on proper usage of the asyncID configuration option to load tracking IDs asynchronously based on runtime conditions.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "asyncID Configuration",
      "description": "The engineer correctly configures the asyncID option in the googleAnalytics or google-analytics section of nuxt.config.js with a function that receives the Nuxt context as a parameter.",
      "max_score": 40
    },
    {
      "name": "Asynchronous ID Resolution",
      "description": "The asyncID function properly returns a Promise or uses async/await to asynchronously resolve the tracking ID by calling the provided tenant API service (fetchTenantConfig).",
      "max_score": 30
    },
    {
      "name": "Context Usage",
      "description": "The implementation correctly accesses tenant information from the Nuxt context (e.g., context.$config.tenantId or context.route.query.tenant) to determine which tenant's tracking ID to load.",
      "max_score": 20
    },
    {
      "name": "Module Registration",
      "description": "The @nuxtjs/google-analytics module is properly registered in the buildModules array in nuxt.config.js to enable the analytics functionality.",
      "max_score": 10
    }
  ]
}