or run

npx @tessl/cli init
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-9/

{
  "context": "Evaluates how well the solution uses @ice/plugin-icestark to expose a child micro-frontend's lifecycle, route host containers, and flow host props into the React tree. Scoring prioritizes correct use of the package helpers rather than generic React wiring.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Child config helper",
      "description": "Uses @ice/plugin-icestark's defineChildConfig (from the package types/ESM entry) to wrap and export the lifecycle object expected by host frameworks.",
      "max_score": 25
    },
    {
      "name": "Lifecycle wiring",
      "description": "Lifecycle object provides mount and unmount wired through the helper so icestark/qiankun hosts invoke the same callbacks via the exported config.",
      "max_score": 20
    },
    {
      "name": "Container routing",
      "description": "Mount path honors containers passed by the host and falls back to the package's #ice-container behavior when no container exists instead of rendering elsewhere.",
      "max_score": 20
    },
    {
      "name": "Custom props context",
      "description": "customProps from mount options are piped through the package's FrameworkContext provider so rendered components can read host-supplied values.",
      "max_score": 20
    },
    {
      "name": "Standalone guard",
      "description": "Relies on the plugin's generated entry/root guard to auto-mount once when no host exists and to avoid double rendering when hosts call mount multiple times before unmount.",
      "max_score": 15
    }
  ]
}