A drop-in module that adds autoUpdating capabilities to Electron apps
89
{
"context": "Evaluates how well the solution configures update-electron-app to switch between the Electron public update service and HTTPS static feeds. Emphasis is on constructing the correct updateSource payloads, relying on the package's platform-aware feed handling, and letting the library drive auto-updater setup rather than reimplementing it.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Public source wiring",
"description": "Uses updateElectronApp with an updateSource of type UpdateSourceType.ElectronPublicUpdateService, passing the provided owner/repo and optional HTTPS host so the library builds the platform/arch/version-specific feed URL.",
"max_score": 25
},
{
"name": "Repo validation",
"description": "Rejects or guards against public-service repos that lack the required owner/repo format before invoking updateElectronApp.",
"max_score": 10
},
{
"name": "HTTPS enforcement",
"description": "Ensures hosts for the public service and baseUrl for static feeds are HTTPS before forwarding them into updateElectronApp, mirroring the package's expected validation.",
"max_score": 15
},
{
"name": "Static feed setup",
"description": "Invokes updateElectronApp with updateSource: { type: UpdateSourceType.StaticStorage, baseUrl } so macOS ends up using <baseUrl>/RELEASES.json with serverType 'json' while other platforms use the base URL unchanged.",
"max_score": 25
},
{
"name": "Delegation fidelity",
"description": "Calls updateElectronApp exactly once with the computed updateSource and passes through logger/updateInterval options instead of manually configuring autoUpdater.",
"max_score": 15
},
{
"name": "Platform awareness",
"description": "Relies on update-electron-app to derive platform/arch-specific feed URLs rather than hardcoding values, ensuring behavior adapts to the running platform.",
"max_score": 10
}
]
}Install with Tessl CLI
npx tessl i tessl/npm-update-electron-appdocs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10