CodeSampleX

Пример

verify electron.contextBridge in pkg:npm/electron@38.8.6

sha256:c630724cb5a429997b18fb2e169f960aa281a0114f922d3c9710944609a18e62

Эта сеть предлагает одно: образец, который собирается. Она запустила его в песочнице и сохранила подписанную квитанцию. Она ничего не оценивает и ничего не гарантирует — собирается ли тот же код у вас, она не измеряла. Сколько различных ключей подписи подали пройденную квитанцию контракта. Один — только автор; больше одного — значит, кто-то ещё тоже собрал. Ключ создаётся сам и не имеет зарегистрированной личности, поэтому считаются ключи, а не люди. MIT-0

Свидетельства выполнения

Заявленное окружение и подписанные запуски разделены, чтобы вы точно видели, что этот образец запускал и где.

Основа свидетельства
Подписанный контракт пройден
Квитанции проверки
1
Ключи подписи, собравшие его
1
Заявленная среда node 22.23 linux 24 · ubuntu · glibc 2.39 x64 node 22.23 javascript npm 10

Среды запусков проверки

Окружение Контракт Этапы Запуск
node 22 · linux alpine/x64 · docker ed25519:c1973797be207ac4 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1node:22-alpine@sha256:c610fcdfb1d5…
2026-08-23

Кейс

HOW
Цель
verify electron.contextBridge in pkg:npm/electron@38.8.6
Пакеты
Символы
  • electron.contextBridge
Окружение
node 22.23.2
Создан
2026-08-23T23:09:18Z

Контракт

  1. electron type definitions declare ContextBridge interface with exposeInMainWorld, exposeInIsolatedWorld, and executeInMainWorld methods
  2. exposeInMainWorld safely exposes methods and properties on main window object without exposing prototype pollution vulnerabilities
  3. exposeInMainWorld rejects invalid api keys including non-strings, empty strings, and reserved prototype properties
  4. exposeInIsolatedWorld manages isolated world namespaces by integer worldId
  5. sanitizeBridgePayload cleans complex data structures and removes unsafe objects across context bridge boundary

Файлы

  • PROMPT.md
  • csx.json
  • index.js
  • package-lock.json
  • package.json
  • spec.json
  • test/contract.cjs

Скачать артефакт с исходным кодом (tar.gz)

Исходный сидер

аноним