or run

npx @tessl/cli init
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-3/

{
  "context": "Evaluates how well the solution uses @ice/plugin-icestark runtime context utilities to consume host-provided customProps and surface them in a child React app. Checks focus on retrieving customProps via the package hook and keeping components responsive to FrameworkContext updates.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "useFrameworkContext",
      "description": "Hook obtains data through @ice/plugin-icestark's useFrameworkContext instead of passing props manually or reading globals.",
      "max_score": 35
    },
    {
      "name": "customProps usage",
      "description": "Display name, organization, and theme are derived from the customProps object returned by useFrameworkContext, not reinvented or duplicated state.",
      "max_score": 20
    },
    {
      "name": "Context reactivity",
      "description": "Components stay subscribed to FrameworkContext so updates to customProps propagate without manual re-render wiring.",
      "max_score": 20
    },
    {
      "name": "Banner context wiring",
      "description": "HostBanner reads values from the hook backed by useFrameworkContext rather than accepting the data directly as component props.",
      "max_score": 15
    },
    {
      "name": "Provider compatibility",
      "description": "Implementation interoperates with FrameworkContext.Provider using the expected value shape (e.g., value={{ customProps }}) for tests that inject host data.",
      "max_score": 10
    }
  ]
}