CodeSampleX

Beispiel

@types/prop-types 15.7.15: types

Verifiziertes Beispiel für npm @types/prop-types 15.7.15: types. Der Vertrag lief auf node 22 · linux debian/x64 · docker und bestand.

sha256:ed5e10a09fd07c5d0b8dede122ba341adc251d7e2154b750c2da618d4e1247cc

Dieses Netzwerk bietet eine Sache: ein Sample, das baut. Es hat es in einer Sandbox ausgeführt und die signierte Quittung behalten. Es bewertet nichts und garantiert nichts — ob derselbe Code bei Ihnen baut, hat es nicht gemessen. Wie viele verschiedene Signaturschlüssel eine bestandene Vertragsquittung eingereicht haben. Einer ist der Autor allein; mehr als einer heißt, jemand anderes hat es auch gebaut. Ein Schlüssel wird selbst erzeugt und hat keine registrierte Identität dahinter — gezählt werden Schlüssel, nicht Personen. MIT-0

Ausführungsbelege

Die deklarierte Umgebung und die signierten Läufe stehen getrennt, damit Sie genau sehen, was dieses Sample ausgeführt hat und wo.

Beleggrundlage
Signierter Vertrag bestanden
Verifizierungsbelege
1
Signaturschlüssel, die es gebaut haben
1
Deklarierte Umgebung node 22.23 linux 24 · ubuntu · glibc 2.39 x64 node 22.23 javascript npm 10

Umgebungen der Verifizierungsläufe

Umgebung Contract Stufen Lauf
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-05

Fall

HOW
Ziel
verify @types/prop-types.types in pkg:npm/%40types/prop-types@15.7.15
Pakete
Symbole
  • @types/prop-types.types
Umgebung
node 22.23.2
Erstellt
2026-09-05T22:25:26Z

Contract

  1. @types/prop-types package manifest declares name "@types/prop-types", version "15.7.15", typeScriptVersion "5.1", and types entry point "index.d.ts"
  2. @types/prop-types index.d.ts declares Validator interface and Requireable interface extending Validator with isRequired property
  3. @types/prop-types index.d.ts declares ReactComponentLike, ReactElementLike, ReactNodeArray, and ReactNodeLike type definitions
  4. @types/prop-types index.d.ts declares ValidationMap, WeakValidationMap, InferType, and InferProps type helpers
  5. @types/prop-types index.d.ts declares built-in Requireable validators for primitives, collections, and React elements
  6. @types/prop-types index.d.ts declares validator factory functions instanceOf, oneOf, oneOfType, arrayOf, objectOf, shape, and exact
  7. @types/prop-types index.d.ts declares checkPropTypes and resetWarningCache function signatures

Dateien

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

Quellartefakt herunterladen (tar.gz)

Quelltext

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 @types/prop-types.types in pkg:npm/%40types/prop-types@15.7.15
Kind: HOW

Use EXACTLY these public packages and versions:
  - pkg:npm/%40types/prop-types@15.7.15
Demonstrate these symbols/APIs:
  - @types/prop-types.types

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:e5858599b3dc95563dd486c92bb693da8fb9b9d2f4d88b99d78553bcf29cc0dd","constraints":{"executionContext":"node"},"contract":["@types/prop-types package manifest declares name \"@types/prop-types\", version \"15.7.15\", typeScriptVersion \"5.1\", and types entry point \"index.d.ts\"","@types/prop-types index.d.ts declares Validator interface and Requireable interface extending Validator with isRequired property","@types/prop-types index.d.ts declares ReactComponentLike, ReactElementLike, ReactNodeArray, and ReactNodeLike type definitions","@types/prop-types index.d.ts declares ValidationMap, WeakValidationMap, InferType, and InferProps type helpers","@types/prop-types index.d.ts declares built-in Requireable validators for primitives, collections, and React elements","@types/prop-types index.d.ts declares validator factory functions instanceOf, oneOf, oneOfType, arrayOf, objectOf, shape, and exact","@types/prop-types index.d.ts declares checkPropTypes and resetWarningCache function signatures"],"goal":"verify @types/prop-types.types in pkg:npm/%40types/prop-types@15.7.15","kind":"HOW","packages":["pkg:npm/%40types/prop-types@15.7.15"],"schemaVersion":1,"symbols":["@types/prop-types.types"]},"contractCommand":["node","test/contract.mjs"],"environment":{"arch":"x64","distro":"ubuntu","ecosystem":"npm","executionContext":"node","language":"javascript","libc":"glibc","libcVersion":"2.39","moduleSystem":"esm","os":"linux","osVersionBucket":"24","packageManager":"npm","packageManagerVersion":"10.9.8","runtime":"node","runtimeVersion":"22.23.2","schemaVersion":1},"license":"MIT-0","packages":["pkg:npm/%40types/prop-types@15.7.15"],"schemaVersion":1,"subject":"pkg:npm/%40types/prop-types@15.7.15","symbols":["@types/prop-types.types"],"verifierAdapter":"node-typescript@1"}
package-lock.json
{
  "name": "sample-types-prop-types",
  "version": "1.0.0",
  "lockfileVersion": 3,
  "requires": true,
  "packages": {
    "": {
      "name": "sample-types-prop-types",
      "version": "1.0.0",
      "license": "MIT-0",
      "dependencies": {
        "@types/prop-types": "15.7.15"
      }
    },
    "node_modules/@types/prop-types": {
      "version": "15.7.15",
      "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz",
      "integrity": "sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==",
      "license": "MIT"
    }
  }
}
package.json
{
  "name": "sample-types-prop-types",
  "version": "1.0.0",
  "type": "module",
  "private": true,
  "license": "MIT-0",
  "dependencies": {
    "@types/prop-types": "15.7.15"
  }
}
spec.json
{
  "schemaVersion": 1,
  "goal": "verify @types/prop-types.types in pkg:npm/%40types/prop-types@15.7.15",
  "kind": "HOW",
  "packages": [
    "pkg:npm/%40types/prop-types@15.7.15"
  ],
  "symbols": [
    "@types/prop-types.types"
  ]
}
test/contract.mjs
import assert from 'node:assert/strict';
import fs from 'node:fs';
import { createRequire } from 'node:module';

const require = createRequire(import.meta.url);

// 1. @types/prop-types package manifest declares name "@types/prop-types", version "15.7.15", typeScriptVersion "5.1", and types entry point "index.d.ts"
const pkgJsonPath = require.resolve('@types/prop-types/package.json');
const pkgJson = JSON.parse(fs.readFileSync(pkgJsonPath, 'utf8'));
assert.equal(pkgJson.name, '@types/prop-types');
assert.equal(pkgJson.version, '15.7.15');
assert.equal(pkgJson.typeScriptVersion, '5.1');
assert.equal(pkgJson.types, 'index.d.ts');

const dtsPath = require.resolve('@types/prop-types/index.d.ts');
assert.ok(fs.existsSync(dtsPath));
const dtsContent = fs.readFileSync(dtsPath, 'utf8');

// 2. @types/prop-types index.d.ts declares Validator interface and Requireable interface extending Validator with isRequired property
assert.ok(dtsContent.includes('export = PropTypes;'));
assert.ok(dtsContent.includes('declare namespace PropTypes {'));
assert.ok(dtsContent.includes('interface Validator<T> {'));
assert.ok(dtsContent.includes('interface Requireable<T> extends Validator<T | undefined | null> {'));
assert.ok(dtsContent.includes('isRequired: Validator<NonNullable<T>>;'));

// 3. @types/prop-types index.d.ts declares ReactComponentLike, ReactElementLike, ReactNodeArray, and ReactNodeLike type definitions
assert.ok(dtsContent.includes('type ReactComponentLike ='));
assert.ok(dtsContent.includes('interface ReactElementLike {'));
assert.ok(dtsContent.includes('interface ReactNodeArray extends Iterable<ReactNodeLike> {}'));
assert.ok(dtsContent.includes('type ReactNodeLike ='));

// 4. @types/prop-types index.d.ts declares ValidationMap, WeakValidationMap, InferType, and InferProps type helpers
assert.ok(dtsContent.includes('type ValidationMap<T> = { [K in keyof T]?: Validator<T[K]> };'));
assert.ok(dtsContent.includes('type WeakValidationMap<T> = {'));
assert.ok(dtsContent.includes('type InferType<V> = V extends Validator<infer T> ? T : any;'));
assert.ok(dtsContent.includes('type InferProps<V> ='));

// 5. @types/prop-types index.d.ts declares built-in Requireable validators for primitives, collections, and React elements
assert.ok(dtsContent.includes('const any: Requireable<any>;'));
assert.ok(dtsContent.includes('const array: Requireable<any[]>;'));
assert.ok(dtsContent.includes('const bool: Requireable<boolean>;'));
assert.ok(dtsContent.includes('const func: Requireable<(...args: any[]) => any>;'));
assert.ok(dtsContent.includes('const number: Requireable<number>;'));
assert.ok(dtsContent.includes('const object: Requireable<object>;'));
assert.ok(dtsContent.includes('const string: Requireable<string>;'));
assert.ok(dtsContent.includes('const node: Requireable<ReactNodeLike>;'));
assert.ok(dtsContent.includes('const element: Requireable<ReactElementLike>;'));
assert.ok(dtsContent.includes('const symbol: Requireable<symbol>;'));
assert.ok(dtsContent.includes('const elementType: Requireable<ReactComponentLike>;'));

// 6. @types/prop-types index.d.ts declares validator factory functions instanceOf, oneOf, oneOfType, arrayOf, objectOf, shape, and exact
assert.ok(dtsContent.includes('function instanceOf<T>(expectedClass: new(...args: any[]) => T): Requireable<T>;'));
assert.ok(dtsContent.includes('function oneOf<T>(types: readonly T[]): Requireable<T>;'));
assert.ok(dtsContent.includes('function oneOfType<T extends Validator<any>>(types: T[]): Requireable<NonNullable<InferType<T>>>;'));
assert.ok(dtsContent.includes('function arrayOf<T>(type: Validator<T>): Requireable<T[]>;'));
assert.ok(dtsContent.includes('function objectOf<T>(type: Validator<T>): Requireable<{ [K in keyof any]: T }>;'));
assert.ok(dtsContent.includes('function shape<P extends ValidationMap<any>>(type: P): Requireable<InferProps<P>>;'));
assert.ok(dtsContent.includes('function exact<P extends ValidationMap<any>>(type: P): Requireable<Required<InferProps<P>>>;'));

// 7. @types/prop-types index.d.ts declares checkPropTypes and resetWarningCache function signatures
assert.ok(dtsContent.includes('function checkPropTypes('));
assert.ok(dtsContent.includes('function resetWarningCache(): void;'));

console.log('All contract tests passed.');

Ursprungs-Seeder

anonym