CodeSampleX

Ejemplo

react-refresh 0.17.0: _getMountedRootCount

Muestra verificada para npm react-refresh 0.17.0: _getMountedRootCount. El contrato se ejecutó en node 22 · linux debian/x64 · docker y pasó.

sha256:951a335a86fe1017205c450c6b3094af9a1ebf168eaf61990bce3790c6d2534c

Esta red ofrece una sola cosa: una muestra que compila. La ejecutó en un sandbox y guardó el recibo firmado. No califica ni garantiza nada: si el mismo código compila donde estás no es algo que haya medido. Cuántas claves de firma distintas presentaron un recibo de contrato aprobado. Una es solo el autor; más de una significa que alguien más también lo compiló. Una clave se genera sola y no tiene identidad registrada detrás, así que cuenta claves, no personas. MIT-0

Evidencia de ejecución

El entorno declarado y las ejecuciones firmadas se muestran por separado, para que veas exactamente qué ejecutó esta muestra y dónde.

Base de evidencia
Contrato firmado aprobado
Recibos de verificación
1
Claves de firma que lo compilaron
1
Entorno declarado linux 24 · ubuntu · glibc 2.39 x64 npm

Entornos de las ejecuciones de verificación

Entorno Contrato Etapas Ejecución
node 22 · linux debian/x64 · docker ed25519:c1973797be207ac4 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1node:22@sha256:8a34c4ab3ea2…
2026-09-04

Caso

HOW
Objetivo
verify react-refresh._getMountedRootCount in pkg:npm/react-refresh@0.17.0
Paquetes
Símbolos
  • react-refresh._getMountedRootCount
Creado
2026-09-04T13:17:47Z

Contrato

  1. _getMountedRootCount returns 0 initially when no fiber roots are mounted
  2. _getMountedRootCount increments by 1 when a fiber root is committed
  3. _getMountedRootCount remains unchanged when re-committing an already mounted fiber root
  4. _getMountedRootCount increments and tracks distinct mounted fiber roots independently
  5. _getMountedRootCount decrements when a previously mounted fiber root is unmounted

Archivos

  • PROMPT.md
  • csx.json
  • package-lock.json
  • package.json
  • spec.json
  • src/index.mjs
  • test/contract.mjs

Descargar el artefacto de código fuente (tar.gz)

Código fuente

PROMPT.md
Clean-room public code sample — generation instructions

Write a brand-new, minimal, self-contained code sample in this clean-room directory.
Do not copy, paraphrase, or reference any existing project source. Work only from this spec.

A csx.json manifest scaffold already exists. Do not recreate it from memory. Preserve its case.goal, packages and symbols; fill its empty case.contract with exact assertions and correct its environment, commands and verifierAdapter for the files you generate.

Goal: verify react-refresh._getMountedRootCount in pkg:npm/react-refresh@0.17.0
Kind: HOW

Use EXACTLY these public packages and versions:
  - pkg:npm/react-refresh@0.17.0
Demonstrate these symbols/APIs:
  - react-refresh._getMountedRootCount

Rules:
  - One focused purpose; the smallest project that proves the goal.
  - Include a contract test (test/contract.*) that runs OFFLINE and exits 0 exactly when the goal behavior works.
  - Pin every dependency with a lockfile so resolution is reproducible.
  - No secrets, credentials, or tokens. No real URLs (only example.com or localhost). No absolute paths.
  - No personal names, emails, company names, or project identifiers of any kind.
  - No binaries and no generated output (node_modules, dist, target, venv, .git, .env).
  - Keep it under 200 files and 256KB packed.
csx.json
{"case":{"caseId":"case:sha256:2c04e977ac793207b6270f133dee3425a519dfe0af795eb43a8181b181a2392f","contract":["_getMountedRootCount returns 0 initially when no fiber roots are mounted","_getMountedRootCount increments by 1 when a fiber root is committed","_getMountedRootCount remains unchanged when re-committing an already mounted fiber root","_getMountedRootCount increments and tracks distinct mounted fiber roots independently","_getMountedRootCount decrements when a previously mounted fiber root is unmounted"],"goal":"verify react-refresh._getMountedRootCount in pkg:npm/react-refresh@0.17.0","kind":"HOW","packages":["pkg:npm/react-refresh@0.17.0"],"schemaVersion":1,"symbols":["react-refresh._getMountedRootCount"]},"contractCommand":["node","test/contract.mjs"],"environment":{"arch":"x64","distro":"ubuntu","ecosystem":"npm","libc":"glibc","libcVersion":"2.39","os":"linux","osVersionBucket":"24","packageManager":"npm","schemaVersion":1},"license":"MIT-0","packages":["pkg:npm/react-refresh@0.17.0"],"schemaVersion":1,"subject":"pkg:npm/react-refresh@0.17.0","symbols":["react-refresh._getMountedRootCount"],"verifierAdapter":"node-typescript@1"}
package-lock.json
{
  "name": "sample-react-refresh-root-count",
  "version": "1.0.0",
  "lockfileVersion": 3,
  "requires": true,
  "packages": {
    "": {
      "name": "sample-react-refresh-root-count",
      "version": "1.0.0",
      "license": "MIT-0",
      "dependencies": {
        "react-refresh": "0.17.0"
      }
    },
    "node_modules/react-refresh": {
      "version": "0.17.0",
      "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz",
      "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==",
      "license": "MIT",
      "engines": {
        "node": ">=0.10.0"
      }
    }
  }
}
package.json
{
  "name": "sample-react-refresh-root-count",
  "version": "1.0.0",
  "private": true,
  "type": "module",
  "license": "MIT-0",
  "dependencies": {
    "react-refresh": "0.17.0"
  }
}
spec.json
{
  "schemaVersion": 1,
  "goal": "verify react-refresh._getMountedRootCount in pkg:npm/react-refresh@0.17.0",
  "kind": "HOW",
  "packages": [
    "pkg:npm/react-refresh@0.17.0"
  ],
  "symbols": [
    "react-refresh._getMountedRootCount"
  ]
}
src/index.mjs
import refreshRuntimeModule from "react-refresh/runtime";

export const RefreshRuntime =
  refreshRuntimeModule && typeof refreshRuntimeModule === "object" && "default" in refreshRuntimeModule
    ? refreshRuntimeModule.default
    : refreshRuntimeModule;

/**
 * Returns the current number of mounted React fiber roots tracked by the Fast Refresh runtime.
 *
 * @returns {number}
 */
export function getMountedRootCount() {
  return RefreshRuntime._getMountedRootCount();
}

/**
 * Initializes the React DevTools hook on the target global scope if not already present,
 * and registers the React Refresh runtime handlers into that hook.
 *
 * @param {object} [globalScope={}]
 * @returns {object} The global devtools hook object
 */
export function setupDevToolsHook(globalScope = {}) {
  RefreshRuntime.injectIntoGlobalHook(globalScope);
  return globalScope.__REACT_DEVTOOLS_GLOBAL_HOOK__;
}

/**
 * Registers a mock renderer with the devtools hook to enable fiber root lifecycle tracking.
 *
 * @param {object} hook
 * @returns {number} The assigned renderer ID
 */
export function registerRenderer(hook) {
  return hook.inject({
    scheduleRefresh() {},
    setRefreshHandler() {}
  });
}

/**
 * Creates a mock fiber root container.
 *
 * @param {object|null} [element=null]
 * @param {object|null} [alternateElement=null]
 * @returns {object}
 */
export function createMockFiberRoot(element = { type: "div" }, alternateElement = null) {
  const alternate = alternateElement !== null
    ? {
        alternate: null,
        memoizedState: { element: alternateElement }
      }
    : null;

  return {
    current: {
      alternate,
      memoizedState: element !== null ? { element } : null
    }
  };
}

/**
 * Mounts a fiber root by committing it via the devtools hook.
 *
 * @param {object} hook
 * @param {number} rendererId
 * @param {object} root
 */
export function commitMountRoot(hook, rendererId, root) {
  hook.onCommitFiberRoot(rendererId, root, null, false);
}

/**
 * Unmounts a previously mounted fiber root by updating current memoizedState to null
 * while keeping the alternate with the previous element state, then committing.
 *
 * @param {object} hook
 * @param {number} rendererId
 * @param {object} root
 */
export function commitUnmountRoot(hook, rendererId, root) {
  const prevElement = root.current.memoizedState ? root.current.memoizedState.element : { type: "div" };
  root.current = {
    alternate: {
      alternate: null,
      memoizedState: { element: prevElement }
    },
    memoizedState: null
  };
  hook.onCommitFiberRoot(rendererId, root, null, false);
}
test/contract.mjs
import assert from "node:assert/strict";
import refreshRuntimeModule from "react-refresh/runtime";
import {
  RefreshRuntime,
  getMountedRootCount,
  setupDevToolsHook,
  registerRenderer,
  createMockFiberRoot,
  commitMountRoot,
  commitUnmountRoot
} from "../src/index.mjs";

const rawRuntime =
  refreshRuntimeModule && typeof refreshRuntimeModule === "object" && "default" in refreshRuntimeModule
    ? refreshRuntimeModule.default
    : refreshRuntimeModule;

// Contract 1: _getMountedRootCount returns 0 initially when no fiber roots are mounted
{
  assert.equal(typeof getMountedRootCount(), "number");
  assert.equal(getMountedRootCount(), 0);
  assert.equal(rawRuntime._getMountedRootCount(), 0);
}

// Global setup for hook-driven root tracking
const mockGlobal = {};
const hook = setupDevToolsHook(mockGlobal);
const rendererId = registerRenderer(hook);

// Contract 2: _getMountedRootCount increments by 1 when a fiber root is committed
const rootA = createMockFiberRoot({ type: "Header" });
{
  const beforeCount = getMountedRootCount();
  commitMountRoot(hook, rendererId, rootA);
  const afterCount = getMountedRootCount();
  assert.equal(afterCount, beforeCount + 1);
  assert.equal(afterCount, 1);
}

// Contract 3: _getMountedRootCount remains unchanged when re-committing an already mounted fiber root
{
  const beforeCount = getMountedRootCount();
  rootA.current = {
    alternate: {
      alternate: null,
      memoizedState: { element: { type: "Header" } }
    },
    memoizedState: { element: { type: "HeaderUpdated" } }
  };
  commitMountRoot(hook, rendererId, rootA);
  const afterCount = getMountedRootCount();
  assert.equal(afterCount, beforeCount);
  assert.equal(afterCount, 1);
}

// Contract 4: _getMountedRootCount increments and tracks distinct mounted fiber roots independently
const rootB = createMockFiberRoot({ type: "Sidebar" });
{
  const beforeCount = getMountedRootCount();
  commitMountRoot(hook, rendererId, rootB);
  const afterCount = getMountedRootCount();
  assert.equal(afterCount, beforeCount + 1);
  assert.equal(afterCount, 2);
}

// Contract 5: _getMountedRootCount decrements when a previously mounted fiber root is unmounted
{
  commitUnmountRoot(hook, rendererId, rootA);
  assert.equal(getMountedRootCount(), 1);

  commitUnmountRoot(hook, rendererId, rootB);
  assert.equal(getMountedRootCount(), 0);
}

console.log("All react-refresh._getMountedRootCount contract tests passed successfully.");

Seeder de origen

anónimo