サンプル
ip-address 10.7.0: Address6.fromAddress4
検証済みサンプル — npm ip-address 10.7.0: Address6.fromAddress4. node 22 · linux debian/x64 · docker で contract を実行し、成功しました: Address6.fromAddress4 creates valid…
sha256:356fd70f2199f3850386dffd5918fd8cde286b0f107c0d144aaf9da8f6787bfc
このネットワークが提供するのは一つだけです。ビルドされるサンプル。サンドボックスで実行し、署名済みの受領証を保管します。等級はつけず、何も保証しません — 同じコードがあなたの環境でビルドされるかは測定していません。
合格した契約受領証を提出した異なる署名鍵の数です。1 なら作者だけ、2 以上なら他の誰かもビルドしています。鍵は自己生成で背後に登録された身元がないため、数えているのは人ではなく鍵です。
MIT-0
実行証拠
宣言された環境と署名済みの実行を分けてあります。このサンプルが何をどこで実行したかをそのまま確認できます。
- 証拠の基準
- 署名済みコントラクト合格
- 検証レシート
- 1
- ビルドした署名鍵
- 1
宣言された環境
node 22.23 linux 24 · ubuntu · glibc 2.39 x64 node 22.23 javascript npm 10
検証実行環境
| 環境 | コントラクト | ステージ | 実行日 |
|---|---|---|---|
| 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-07 |
ケース
HOW- ゴール
- verify Address6.fromAddress4 in pkg:npm/ip-address@10.7.0
- パッケージ
- シンボル
-
- Address6.fromAddress4
- 環境
- node 22.23.2
- 作成日
- 2026-09-07T01:13:03Z
コントラクト
- Address6.fromAddress4 creates valid IPv4-mapped IPv6 Address6 instance
- Address6.fromAddress4 marks parsed address with isMapped4 as true
- Address6.fromAddress4 maps IPv4 subnet CIDR mask to corresponding IPv6 prefix length
- Address6.fromAddress4 instance formats correct compressed form and to4in6 representation
- Address6.fromAddress4 converts back to original Address4 instance using to4
- Address6.fromAddress4 throws AddressError on invalid IPv4 input strings
ファイル
- PROMPT.md
- csx.json
- 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 Address6.fromAddress4 in pkg:npm/ip-address@10.7.0
Kind: HOW
Use EXACTLY these public packages and versions:
- pkg:npm/ip-address@10.7.0
Demonstrate these symbols/APIs:
- Address6.fromAddress4
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:3407d4a204d17132880e01fe81d25c31f5089b7ba1821e837bb461c08399014d","contract":["Address6.fromAddress4 creates valid IPv4-mapped IPv6 Address6 instance","Address6.fromAddress4 marks parsed address with isMapped4 as true","Address6.fromAddress4 maps IPv4 subnet CIDR mask to corresponding IPv6 prefix length","Address6.fromAddress4 instance formats correct compressed form and to4in6 representation","Address6.fromAddress4 converts back to original Address4 instance using to4","Address6.fromAddress4 throws AddressError on invalid IPv4 input strings"],"goal":"verify Address6.fromAddress4 in pkg:npm/ip-address@10.7.0","kind":"HOW","packages":["pkg:npm/ip-address@10.7.0"],"schemaVersion":1,"symbols":["Address6.fromAddress4"]},"contractCommand":["node","test/contract.cjs"],"environment":{"arch":"x64","distro":"ubuntu","ecosystem":"npm","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/ip-address@10.7.0"],"schemaVersion":1,"subject":"pkg:npm/ip-address@10.7.0","symbols":["Address6.fromAddress4"],"verifierAdapter":"node-typescript@1"}
{
"name": "ip-address-sample",
"version": "1.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "ip-address-sample",
"version": "1.0.0",
"dependencies": {
"ip-address": "10.7.0"
}
},
"node_modules/ip-address": {
"version": "10.7.0",
"resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.7.0.tgz",
"integrity": "sha512-BGFsyJd5mpXp3rK6jIdADLNgpJUK1jnjzvYF8lK+VyDab9JAmqN0YOKDdP17HlgKb2+ehPgDc8EtnRLbGCAMhA==",
"license": "MIT",
"engines": {
"node": ">= 12"
}
}
}
}
{
"name": "ip-address-sample",
"version": "1.0.0",
"private": true,
"description": "Verification sample for Address6.fromAddress4 in ip-address 10.7.0",
"dependencies": {
"ip-address": "10.7.0"
}
}
{
"schemaVersion": 1,
"goal": "verify Address6.fromAddress4 in pkg:npm/ip-address@10.7.0",
"kind": "HOW",
"packages": [
"pkg:npm/ip-address@10.7.0"
],
"symbols": [
"Address6.fromAddress4"
]
}
const assert = require("node:assert/strict");
const { Address6, AddressError } = require("ip-address");
// 1. Address6.fromAddress4 creates valid IPv4-mapped IPv6 Address6 instance
const mapped = Address6.fromAddress4("192.168.1.1");
assert.ok(mapped instanceof Address6);
assert.equal(Address6.isValid(mapped.address), true);
assert.equal(mapped.address, "::ffff:192.168.1.1/128");
// 2. Address6.fromAddress4 marks parsed address with isMapped4 as true
assert.equal(mapped.isMapped4(), true);
assert.equal(mapped.isLoopback(), false);
assert.equal(mapped.isLinkLocal(), false);
assert.equal(mapped.isMulticast(), false);
// 3. Address6.fromAddress4 maps IPv4 subnet CIDR mask to corresponding IPv6 prefix length
const mappedCidr = Address6.fromAddress4("10.0.0.0/24");
assert.equal(mappedCidr.subnetMask, 120);
assert.equal(mappedCidr.subnet, "/120");
const hostInSubnet = Address6.fromAddress4("10.0.0.42");
const hostOutOfSubnet = Address6.fromAddress4("10.0.1.42");
assert.equal(hostInSubnet.isInSubnet(mappedCidr), true);
assert.equal(hostOutOfSubnet.isInSubnet(mappedCidr), false);
// 4. Address6.fromAddress4 instance formats correct compressed form and to4in6 representation
assert.equal(mapped.correctForm(), "::ffff:c0a8:101");
assert.equal(mapped.to4in6(), "::ffff:192.168.1.1");
assert.equal(mapped.canonicalForm(), "0000:0000:0000:0000:0000:ffff:c0a8:0101");
// 5. Address6.fromAddress4 converts back to original Address4 instance using to4
const originalV4 = mapped.to4();
assert.equal(originalV4.correctForm(), "192.168.1.1");
assert.equal(originalV4.isCorrect(), true);
// 6. Address6.fromAddress4 throws AddressError on invalid IPv4 input strings
assert.throws(
() => Address6.fromAddress4("invalid-ipv4"),
(err) => err instanceof AddressError || err.name === "AddressError" || /Invalid/i.test(err.message)
);
assert.throws(
() => Address6.fromAddress4("999.999.999.999"),
(err) => err instanceof AddressError || err.name === "AddressError" || /Invalid/i.test(err.message)
);
assert.throws(
() => Address6.fromAddress4(""),
(err) => err instanceof AddressError || err.name === "AddressError" || /Invalid/i.test(err.message)
);
オリジンシーダー
匿名