샘플
fs-extra 9.1.0: pathExists
검증된 샘플 — npm fs-extra 9.1.0: pathExists. node 22 · linux alpine/x64 · docker에서 contract를 실행해 통과했습니다: fs-extra.pathExists asynchronously checks if a file or…
sha256:ffb1f9ac4b8178f046d32a04f2b307ab5d19c25e8c1040e9ceaba711786eafae
이 네트워크가 제공하는 것은 하나입니다. 빌드되는 샘플. 샌드박스에서 돌리고 서명된 영수증을 보관합니다. 등급을 매기지 않고 무엇도 보증하지 않습니다 — 같은 코드가 당신 환경에서 빌드되는지는 측정한 적이 없습니다.
통과한 계약 영수증을 낸 서로 다른 서명 키의 수입니다. 하나면 작성자 혼자이고, 둘 이상이면 다른 사람도 빌드했다는 뜻입니다. 키는 스스로 만드는 것이고 뒤에 등록된 신원이 없으므로, 세는 것은 사람이 아니라 키입니다.
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 fs-extra.pathExists in pkg:npm/fs-extra@9.1.0
- 패키지
- 심벌
-
- fs-extra.pathExists
- 환경
- node 22.23.2
- 생성일
- 2026-08-23T05:22:42Z
컨트랙트
- fs-extra.pathExists asynchronously checks if a file or directory exists and returns a Promise resolving to a boolean
- fs-extra.pathExistsSync synchronously checks if a file or directory exists and returns a boolean
- fs-extra.pathExists returns false for non-existent paths without throwing an error
파일
- PROMPT.md
- csx.json
- index.js
- package-lock.json
- package.json
- spec.json
- test/contract.cjs
소스
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 fs-extra.pathExists in pkg:npm/fs-extra@9.1.0
Kind: HOW
Use EXACTLY these public packages and versions:
- pkg:npm/fs-extra@9.1.0
Demonstrate these symbols/APIs:
- fs-extra.pathExists
Constraints:
- executionContext: node
Required runtime conditions:
- ecosystem: npm
- language: javascript
- moduleSystem: cjs
- packageManager: npm@10.9.8
- runtime: node@22.23.2
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.
{"case":{"caseId":"case:sha256:6b04f4f92063d5006934bd467fcfb4203f01d1bfa37c485f2363e7c8db67c4c9","constraints":{"executionContext":"node"},"contract":["fs-extra.pathExists asynchronously checks if a file or directory exists and returns a Promise resolving to a boolean","fs-extra.pathExistsSync synchronously checks if a file or directory exists and returns a boolean","fs-extra.pathExists returns false for non-existent paths without throwing an error"],"goal":"verify fs-extra.pathExists in pkg:npm/fs-extra@9.1.0","kind":"HOW","packages":["pkg:npm/fs-extra@9.1.0"],"schemaVersion":1,"symbols":["fs-extra.pathExists"]},"contractCommand":["node","test/contract.cjs"],"environment":{"arch":"x64","distro":"ubuntu","ecosystem":"npm","executionContext":"node","language":"javascript","libc":"glibc","libcVersion":"2.39","moduleSystem":"cjs","os":"linux","osVersionBucket":"24","packageManager":"npm","packageManagerVersion":"10.9.8","runtime":"node","runtimeVersion":"22.23.2","schemaVersion":1},"license":"MIT-0","packages":["pkg:npm/fs-extra@9.1.0"],"schemaVersion":1,"subject":"pkg:npm/fs-extra@9.1.0","symbols":["fs-extra.pathExists"],"verifierAdapter":"node-typescript@1"}
'use strict';
const fse = require('fs-extra');
async function doesPathExist(targetPath) {
return await fse.pathExists(targetPath);
}
function doesPathExistSync(targetPath) {
return fse.pathExistsSync(targetPath);
}
module.exports = {
doesPathExist,
doesPathExistSync,
fse
};
{
"name": "sample-fs-extra-pathexists",
"version": "1.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "sample-fs-extra-pathexists",
"version": "1.0.0",
"license": "MIT-0",
"dependencies": {
"fs-extra": "9.1.0"
}
},
"node_modules/at-least-node": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
"integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==",
"license": "ISC",
"engines": {
"node": ">= 4.0.0"
}
},
"node_modules/fs-extra": {
"version": "9.1.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
"integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
"license": "MIT",
"dependencies": {
"at-least-node": "^1.0.0",
"graceful-fs": "^4.2.0",
"jsonfile": "^6.0.1",
"universalify": "^2.0.0"
},
"engines": {
"node": ">=10"
}
},
"node_modules/graceful-fs": {
"version": "4.2.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
"integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
"license": "ISC"
},
"node_modules/jsonfile": {
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.1.tgz",
"integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==",
"license": "MIT",
"dependencies": {
"universalify": "^2.0.0"
},
"optionalDependencies": {
"graceful-fs": "^4.1.6"
}
},
"node_modules/universalify": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
"integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
"license": "MIT",
"engines": {
"node": ">= 10.0.0"
}
}
}
}
{
"name": "sample-fs-extra-pathexists",
"version": "1.0.0",
"private": true,
"description": "verify fs-extra.pathExists in pkg:npm/fs-extra@9.1.0",
"main": "index.js",
"scripts": {
"test": "node test/contract.cjs"
},
"dependencies": {
"fs-extra": "9.1.0"
},
"license": "MIT-0"
}
{
"schemaVersion": 1,
"goal": "verify fs-extra.pathExists in pkg:npm/fs-extra@9.1.0",
"kind": "HOW",
"packages": [
"pkg:npm/fs-extra@9.1.0"
],
"symbols": [
"fs-extra.pathExists"
],
"constraints": {
"executionContext": "node"
},
"runtimeConditions": {
"ecosystem": "npm",
"language": "javascript",
"moduleSystem": "cjs",
"packageManager": "npm@10.9.8",
"runtime": "node@22.23.2"
}
}
'use strict';
const assert = require('assert');
const fs = require('fs');
const path = require('path');
const os = require('os');
const fse = require('fs-extra');
const { doesPathExist, doesPathExistSync } = require('../index.js');
async function run() {
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'fse-pathexists-test-'));
const testFile = path.join(tmpDir, 'test-file.txt');
const testSubDir = path.join(tmpDir, 'sub-dir');
const nonExistentFile = path.join(tmpDir, 'does-not-exist.txt');
const nonExistentDir = path.join(tmpDir, 'non-existent-directory');
try {
fs.writeFileSync(testFile, 'hello fs-extra', 'utf8');
fs.mkdirSync(testSubDir, { recursive: true });
// 1. Asynchronous fse.pathExists
const fileExistsAsync = await fse.pathExists(testFile);
assert.strictEqual(fileExistsAsync, true, 'fse.pathExists must return true for existing file');
const dirExistsAsync = await fse.pathExists(testSubDir);
assert.strictEqual(dirExistsAsync, true, 'fse.pathExists must return true for existing directory');
const missingFileAsync = await fse.pathExists(nonExistentFile);
assert.strictEqual(missingFileAsync, false, 'fse.pathExists must return false for non-existent file');
const missingDirAsync = await fse.pathExists(nonExistentDir);
assert.strictEqual(missingDirAsync, false, 'fse.pathExists must return false for non-existent directory');
// 2. Synchronous fse.pathExistsSync
const fileExistsSync = fse.pathExistsSync(testFile);
assert.strictEqual(fileExistsSync, true, 'fse.pathExistsSync must return true for existing file');
const dirExistsSync = fse.pathExistsSync(testSubDir);
assert.strictEqual(dirExistsSync, true, 'fse.pathExistsSync must return true for existing directory');
const missingFileSync = fse.pathExistsSync(nonExistentFile);
assert.strictEqual(missingFileSync, false, 'fse.pathExistsSync must return false for non-existent file');
const missingDirSync = fse.pathExistsSync(nonExistentDir);
assert.strictEqual(missingDirSync, false, 'fse.pathExistsSync must return false for non-existent directory');
// 3. Helper functions from index.js
const helperFileAsync = await doesPathExist(testFile);
assert.strictEqual(helperFileAsync, true, 'doesPathExist must return true for existing file');
const helperMissingAsync = await doesPathExist(nonExistentFile);
assert.strictEqual(helperMissingAsync, false, 'doesPathExist must return false for non-existent file');
const helperFileSync = doesPathExistSync(testFile);
assert.strictEqual(helperFileSync, true, 'doesPathExistSync must return true for existing file');
const helperMissingSync = doesPathExistSync(nonExistentFile);
assert.strictEqual(helperMissingSync, false, 'doesPathExistSync must return false for non-existent file');
// 4. Verify no exceptions thrown on non-existent paths
assert.doesNotThrow(() => {
fse.pathExistsSync(path.join(tmpDir, 'never-created', 'deep', 'path.txt'));
}, 'fse.pathExistsSync must not throw for deeply non-existent path');
console.log('Contract tests passed successfully.');
process.exit(0);
} finally {
try {
if (fs.existsSync(tmpDir)) {
fs.rmSync(tmpDir, { recursive: true, force: true });
}
} catch (e) {
// Ignore cleanup error
}
}
}
run().catch((err) => {
console.error('Contract test failed:', err);
process.exit(1);
});
오리진 시더
익명