docs
evals
scenario-1
scenario-10
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
{
"context": "Evaluates how the host shell uses @ice/plugin-icestark's framework helpers to configure router fallbacks, shared layout context, and runtime app list updates as required by the spec. Scoring focuses on correct use of defineFrameworkConfig, appRouter options, layout props, and dynamic app wiring.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Framework wrapper",
"description": "Exports the framework configuration through defineFrameworkConfig (or its returned object) from createHostConfig so the icestark entry exposes the expected framework config shape.",
"max_score": 15
},
{
"name": "Router fallbacks",
"description": "Sets appRouter.LoadingComponent, appRouter.ErrorComponent, and appRouter.NotFoundComponent to deliver the loading, error, and 404 experiences described, and enables asset cleanup with appRouter.shouldAssetsRemove.",
"max_score": 25
},
{
"name": "Route context layout",
"description": "Provides a layout component via the layout option that reads routeInfo.pathname plus appEnter/appLeave props injected by the runtime and renders them in the header while wrapping the AppRouter children.",
"max_score": 20
},
{
"name": "Dynamic updates",
"description": "Uses the updateApps setter passed into the layout props to append new app definitions at runtime and ensures the AppRouter immediately routes to the added app without reload.",
"max_score": 20
},
{
"name": "App definitions",
"description": "Implements getApps to emit CompatibleAppConfig/AppRoute entries built from the provided HostOptions.apps (and any runtime additions), carrying route matchers (activePath/path) and entry URLs needed by @ice/stark.",
"max_score": 20
}
]
}