@nexart/codemode-sdk 1.9.0 → 1.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/browser.cjs +1 -1
- package/dist/cjs/browser.js +1 -1
- package/dist/cjs/core.cjs +68 -1
- package/dist/cjs/core.js +67 -2
- package/dist/cjs/node.cjs +1 -1
- package/dist/cjs/node.js +1 -1
- package/dist/esm/browser.cjs +1 -1
- package/dist/esm/browser.js +1 -1
- package/dist/esm/core.cjs +68 -1
- package/dist/esm/core.js +67 -2
- package/dist/esm/node.cjs +1 -1
- package/dist/esm/node.js +1 -1
- package/dist/types/sdk/codemode/cerProtocol.d.ts +40 -0
- package/dist/types/sdk/codemode/cerProtocol.d.ts.map +1 -0
- package/dist/types/sdk/codemode/core-index.d.ts +5 -1
- package/dist/types/sdk/codemode/core-index.d.ts.map +1 -1
- package/dist/types/sdk/codemode/entry/browser.d.ts +1 -1
- package/dist/types/sdk/codemode/entry/browser.d.ts.map +1 -1
- package/dist/types/sdk/codemode/runtime.d.ts +1 -1
- package/dist/types/sdk/codemode/runtime.d.ts.map +1 -1
- package/dist/types/sdk/codemode/verifyDetailed.d.ts +25 -0
- package/dist/types/sdk/codemode/verifyDetailed.d.ts.map +1 -0
- package/dist/types/sdk/codemode/version.d.ts +2 -2
- package/dist/types/sdk/codemode/version.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/cjs/browser.cjs
CHANGED
package/dist/cjs/browser.js
CHANGED
package/dist/cjs/core.cjs
CHANGED
|
@@ -5,7 +5,7 @@ var sha2_js = require('@noble/hashes/sha2.js');
|
|
|
5
5
|
|
|
6
6
|
var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
|
|
7
7
|
// version.ts
|
|
8
|
-
var SDK_VERSION = "1.
|
|
8
|
+
var SDK_VERSION = "1.10.0";
|
|
9
9
|
var PROTOCOL_VERSION = "1.2.0";
|
|
10
10
|
var PROTOCOL_PHASE = 3;
|
|
11
11
|
|
|
@@ -1962,6 +1962,71 @@ function hasAttestation(bundle) {
|
|
|
1962
1962
|
return getAttestationReceipt(bundle) !== null;
|
|
1963
1963
|
}
|
|
1964
1964
|
|
|
1965
|
+
// cerProtocol.ts
|
|
1966
|
+
var ReasonCode = {
|
|
1967
|
+
BUNDLE_HASH_MISMATCH: "BUNDLE_HASH_MISMATCH",
|
|
1968
|
+
NODE_SIGNATURE_INVALID: "NODE_SIGNATURE_INVALID",
|
|
1969
|
+
NODE_SIGNATURE_MISSING: "NODE_SIGNATURE_MISSING",
|
|
1970
|
+
RECEIPT_HASH_MISMATCH: "RECEIPT_HASH_MISMATCH",
|
|
1971
|
+
SCHEMA_VERSION_UNSUPPORTED: "SCHEMA_VERSION_UNSUPPORTED",
|
|
1972
|
+
RECORD_NOT_FOUND: "RECORD_NOT_FOUND",
|
|
1973
|
+
BUNDLE_CORRUPTED: "BUNDLE_CORRUPTED"
|
|
1974
|
+
};
|
|
1975
|
+
|
|
1976
|
+
// verifyDetailed.ts
|
|
1977
|
+
function validateSnapshotStructure(snapshot) {
|
|
1978
|
+
const codes = [];
|
|
1979
|
+
if (!snapshot || typeof snapshot !== "object") {
|
|
1980
|
+
codes.push(ReasonCode.BUNDLE_CORRUPTED);
|
|
1981
|
+
return codes;
|
|
1982
|
+
}
|
|
1983
|
+
if (snapshot.protocol !== "nexart") {
|
|
1984
|
+
codes.push(ReasonCode.SCHEMA_VERSION_UNSUPPORTED);
|
|
1985
|
+
}
|
|
1986
|
+
if (!snapshot.outputHash || !snapshot.outputHash.startsWith("sha256:")) {
|
|
1987
|
+
codes.push(ReasonCode.BUNDLE_CORRUPTED);
|
|
1988
|
+
}
|
|
1989
|
+
if (!snapshot.codeHash || !snapshot.codeHash.startsWith("sha256:")) {
|
|
1990
|
+
codes.push(ReasonCode.BUNDLE_CORRUPTED);
|
|
1991
|
+
}
|
|
1992
|
+
return codes;
|
|
1993
|
+
}
|
|
1994
|
+
function verifyCodeModeSnapshotDetailed(snapshot, options = {}) {
|
|
1995
|
+
const verifiedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
1996
|
+
const verifier = "@nexart/codemode-sdk";
|
|
1997
|
+
if (!snapshot || typeof snapshot !== "object" || Array.isArray(snapshot)) {
|
|
1998
|
+
return {
|
|
1999
|
+
status: "FAILED",
|
|
2000
|
+
checks: { bundleIntegrity: "FAIL", nodeSignature: "SKIPPED", receiptConsistency: "SKIPPED" },
|
|
2001
|
+
reasonCodes: [ReasonCode.BUNDLE_CORRUPTED],
|
|
2002
|
+
certificateHash: "",
|
|
2003
|
+
bundleType: "codemode.snapshot.v1",
|
|
2004
|
+
verifiedAt,
|
|
2005
|
+
verifier
|
|
2006
|
+
};
|
|
2007
|
+
}
|
|
2008
|
+
const snap = snapshot;
|
|
2009
|
+
const structureReasons = validateSnapshotStructure(snap);
|
|
2010
|
+
const hashReasons = [];
|
|
2011
|
+
if (options.outputHash !== void 0 && options.outputHash !== snap.outputHash) {
|
|
2012
|
+
hashReasons.push(ReasonCode.BUNDLE_HASH_MISMATCH);
|
|
2013
|
+
}
|
|
2014
|
+
if (options.codeHash !== void 0 && options.codeHash !== snap.codeHash) {
|
|
2015
|
+
hashReasons.push(ReasonCode.BUNDLE_HASH_MISMATCH);
|
|
2016
|
+
}
|
|
2017
|
+
const reasonCodes = [.../* @__PURE__ */ new Set([...structureReasons, ...hashReasons])];
|
|
2018
|
+
const bundleIntegrity = reasonCodes.length === 0 ? "PASS" : "FAIL";
|
|
2019
|
+
return {
|
|
2020
|
+
status: bundleIntegrity === "PASS" ? "VERIFIED" : "FAILED",
|
|
2021
|
+
checks: { bundleIntegrity, nodeSignature: "SKIPPED", receiptConsistency: "SKIPPED" },
|
|
2022
|
+
reasonCodes,
|
|
2023
|
+
certificateHash: snap.outputHash ?? "",
|
|
2024
|
+
bundleType: "codemode.snapshot.v1",
|
|
2025
|
+
verifiedAt,
|
|
2026
|
+
verifier
|
|
2027
|
+
};
|
|
2028
|
+
}
|
|
2029
|
+
|
|
1965
2030
|
// core-index.ts
|
|
1966
2031
|
var SDK_VERSION2 = SDK_VERSION;
|
|
1967
2032
|
var SDK_NAME = "@nexart/codemode-sdk";
|
|
@@ -1975,6 +2040,7 @@ exports.DEFAULT_VARS = DEFAULT_VARS;
|
|
|
1975
2040
|
exports.PROTOCOL_IDENTITY = PROTOCOL_IDENTITY;
|
|
1976
2041
|
exports.PROTOCOL_PHASE = PROTOCOL_PHASE;
|
|
1977
2042
|
exports.PROTOCOL_VERSION = PROTOCOL_VERSION;
|
|
2043
|
+
exports.ReasonCode = ReasonCode;
|
|
1978
2044
|
exports.SDK_NAME = SDK_NAME;
|
|
1979
2045
|
exports.SDK_VERSION = SDK_VERSION2;
|
|
1980
2046
|
exports.VAR_COUNT = VAR_COUNT;
|
|
@@ -1995,4 +2061,5 @@ exports.selectNodeKey = selectNodeKey;
|
|
|
1995
2061
|
exports.toCanonicalJson = toCanonicalJson;
|
|
1996
2062
|
exports.validateCodeModeSource = validateCodeModeSource;
|
|
1997
2063
|
exports.verifyBundleAttestation = verifyBundleAttestation;
|
|
2064
|
+
exports.verifyCodeModeSnapshotDetailed = verifyCodeModeSnapshotDetailed;
|
|
1998
2065
|
exports.verifyNodeReceiptSignature = verifyNodeReceiptSignature;
|
package/dist/cjs/core.js
CHANGED
|
@@ -2,7 +2,7 @@ import { hashes, verify } from '@noble/ed25519';
|
|
|
2
2
|
import { sha512 } from '@noble/hashes/sha2.js';
|
|
3
3
|
|
|
4
4
|
// version.ts
|
|
5
|
-
var SDK_VERSION = "1.
|
|
5
|
+
var SDK_VERSION = "1.10.0";
|
|
6
6
|
var PROTOCOL_VERSION = "1.2.0";
|
|
7
7
|
var PROTOCOL_PHASE = 3;
|
|
8
8
|
|
|
@@ -1959,8 +1959,73 @@ function hasAttestation(bundle) {
|
|
|
1959
1959
|
return getAttestationReceipt(bundle) !== null;
|
|
1960
1960
|
}
|
|
1961
1961
|
|
|
1962
|
+
// cerProtocol.ts
|
|
1963
|
+
var ReasonCode = {
|
|
1964
|
+
BUNDLE_HASH_MISMATCH: "BUNDLE_HASH_MISMATCH",
|
|
1965
|
+
NODE_SIGNATURE_INVALID: "NODE_SIGNATURE_INVALID",
|
|
1966
|
+
NODE_SIGNATURE_MISSING: "NODE_SIGNATURE_MISSING",
|
|
1967
|
+
RECEIPT_HASH_MISMATCH: "RECEIPT_HASH_MISMATCH",
|
|
1968
|
+
SCHEMA_VERSION_UNSUPPORTED: "SCHEMA_VERSION_UNSUPPORTED",
|
|
1969
|
+
RECORD_NOT_FOUND: "RECORD_NOT_FOUND",
|
|
1970
|
+
BUNDLE_CORRUPTED: "BUNDLE_CORRUPTED"
|
|
1971
|
+
};
|
|
1972
|
+
|
|
1973
|
+
// verifyDetailed.ts
|
|
1974
|
+
function validateSnapshotStructure(snapshot) {
|
|
1975
|
+
const codes = [];
|
|
1976
|
+
if (!snapshot || typeof snapshot !== "object") {
|
|
1977
|
+
codes.push(ReasonCode.BUNDLE_CORRUPTED);
|
|
1978
|
+
return codes;
|
|
1979
|
+
}
|
|
1980
|
+
if (snapshot.protocol !== "nexart") {
|
|
1981
|
+
codes.push(ReasonCode.SCHEMA_VERSION_UNSUPPORTED);
|
|
1982
|
+
}
|
|
1983
|
+
if (!snapshot.outputHash || !snapshot.outputHash.startsWith("sha256:")) {
|
|
1984
|
+
codes.push(ReasonCode.BUNDLE_CORRUPTED);
|
|
1985
|
+
}
|
|
1986
|
+
if (!snapshot.codeHash || !snapshot.codeHash.startsWith("sha256:")) {
|
|
1987
|
+
codes.push(ReasonCode.BUNDLE_CORRUPTED);
|
|
1988
|
+
}
|
|
1989
|
+
return codes;
|
|
1990
|
+
}
|
|
1991
|
+
function verifyCodeModeSnapshotDetailed(snapshot, options = {}) {
|
|
1992
|
+
const verifiedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
1993
|
+
const verifier = "@nexart/codemode-sdk";
|
|
1994
|
+
if (!snapshot || typeof snapshot !== "object" || Array.isArray(snapshot)) {
|
|
1995
|
+
return {
|
|
1996
|
+
status: "FAILED",
|
|
1997
|
+
checks: { bundleIntegrity: "FAIL", nodeSignature: "SKIPPED", receiptConsistency: "SKIPPED" },
|
|
1998
|
+
reasonCodes: [ReasonCode.BUNDLE_CORRUPTED],
|
|
1999
|
+
certificateHash: "",
|
|
2000
|
+
bundleType: "codemode.snapshot.v1",
|
|
2001
|
+
verifiedAt,
|
|
2002
|
+
verifier
|
|
2003
|
+
};
|
|
2004
|
+
}
|
|
2005
|
+
const snap = snapshot;
|
|
2006
|
+
const structureReasons = validateSnapshotStructure(snap);
|
|
2007
|
+
const hashReasons = [];
|
|
2008
|
+
if (options.outputHash !== void 0 && options.outputHash !== snap.outputHash) {
|
|
2009
|
+
hashReasons.push(ReasonCode.BUNDLE_HASH_MISMATCH);
|
|
2010
|
+
}
|
|
2011
|
+
if (options.codeHash !== void 0 && options.codeHash !== snap.codeHash) {
|
|
2012
|
+
hashReasons.push(ReasonCode.BUNDLE_HASH_MISMATCH);
|
|
2013
|
+
}
|
|
2014
|
+
const reasonCodes = [.../* @__PURE__ */ new Set([...structureReasons, ...hashReasons])];
|
|
2015
|
+
const bundleIntegrity = reasonCodes.length === 0 ? "PASS" : "FAIL";
|
|
2016
|
+
return {
|
|
2017
|
+
status: bundleIntegrity === "PASS" ? "VERIFIED" : "FAILED",
|
|
2018
|
+
checks: { bundleIntegrity, nodeSignature: "SKIPPED", receiptConsistency: "SKIPPED" },
|
|
2019
|
+
reasonCodes,
|
|
2020
|
+
certificateHash: snap.outputHash ?? "",
|
|
2021
|
+
bundleType: "codemode.snapshot.v1",
|
|
2022
|
+
verifiedAt,
|
|
2023
|
+
verifier
|
|
2024
|
+
};
|
|
2025
|
+
}
|
|
2026
|
+
|
|
1962
2027
|
// core-index.ts
|
|
1963
2028
|
var SDK_VERSION2 = SDK_VERSION;
|
|
1964
2029
|
var SDK_NAME = "@nexart/codemode-sdk";
|
|
1965
2030
|
|
|
1966
|
-
export { CODE_MODE_ENFORCEMENT, CODE_MODE_PROTOCOL_PHASE, CODE_MODE_PROTOCOL_VERSION, CodeVerifyCode, DEFAULT_CONFIG, DEFAULT_VARS, PROTOCOL_IDENTITY, PROTOCOL_PHASE, PROTOCOL_VERSION, SDK_NAME, SDK_VERSION2 as SDK_VERSION, VAR_COUNT, VAR_MAX, VAR_MIN, cancelLoopMode, createEngine, createP5Runtime, createProtocolVAR, executeCodeMode, fetchNodeKeys, getAttestationReceipt, hasAttestation, injectTimeVariables, runLoopMode, runStaticMode, selectNodeKey, toCanonicalJson, validateCodeModeSource, verifyBundleAttestation, verifyNodeReceiptSignature };
|
|
2031
|
+
export { CODE_MODE_ENFORCEMENT, CODE_MODE_PROTOCOL_PHASE, CODE_MODE_PROTOCOL_VERSION, CodeVerifyCode, DEFAULT_CONFIG, DEFAULT_VARS, PROTOCOL_IDENTITY, PROTOCOL_PHASE, PROTOCOL_VERSION, ReasonCode, SDK_NAME, SDK_VERSION2 as SDK_VERSION, VAR_COUNT, VAR_MAX, VAR_MIN, cancelLoopMode, createEngine, createP5Runtime, createProtocolVAR, executeCodeMode, fetchNodeKeys, getAttestationReceipt, hasAttestation, injectTimeVariables, runLoopMode, runStaticMode, selectNodeKey, toCanonicalJson, validateCodeModeSource, verifyBundleAttestation, verifyCodeModeSnapshotDetailed, verifyNodeReceiptSignature };
|
package/dist/cjs/node.cjs
CHANGED
package/dist/cjs/node.js
CHANGED
package/dist/esm/browser.cjs
CHANGED
package/dist/esm/browser.js
CHANGED
package/dist/esm/core.cjs
CHANGED
|
@@ -5,7 +5,7 @@ var sha2_js = require('@noble/hashes/sha2.js');
|
|
|
5
5
|
|
|
6
6
|
var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
|
|
7
7
|
// version.ts
|
|
8
|
-
var SDK_VERSION = "1.
|
|
8
|
+
var SDK_VERSION = "1.10.0";
|
|
9
9
|
var PROTOCOL_VERSION = "1.2.0";
|
|
10
10
|
var PROTOCOL_PHASE = 3;
|
|
11
11
|
|
|
@@ -1962,6 +1962,71 @@ function hasAttestation(bundle) {
|
|
|
1962
1962
|
return getAttestationReceipt(bundle) !== null;
|
|
1963
1963
|
}
|
|
1964
1964
|
|
|
1965
|
+
// cerProtocol.ts
|
|
1966
|
+
var ReasonCode = {
|
|
1967
|
+
BUNDLE_HASH_MISMATCH: "BUNDLE_HASH_MISMATCH",
|
|
1968
|
+
NODE_SIGNATURE_INVALID: "NODE_SIGNATURE_INVALID",
|
|
1969
|
+
NODE_SIGNATURE_MISSING: "NODE_SIGNATURE_MISSING",
|
|
1970
|
+
RECEIPT_HASH_MISMATCH: "RECEIPT_HASH_MISMATCH",
|
|
1971
|
+
SCHEMA_VERSION_UNSUPPORTED: "SCHEMA_VERSION_UNSUPPORTED",
|
|
1972
|
+
RECORD_NOT_FOUND: "RECORD_NOT_FOUND",
|
|
1973
|
+
BUNDLE_CORRUPTED: "BUNDLE_CORRUPTED"
|
|
1974
|
+
};
|
|
1975
|
+
|
|
1976
|
+
// verifyDetailed.ts
|
|
1977
|
+
function validateSnapshotStructure(snapshot) {
|
|
1978
|
+
const codes = [];
|
|
1979
|
+
if (!snapshot || typeof snapshot !== "object") {
|
|
1980
|
+
codes.push(ReasonCode.BUNDLE_CORRUPTED);
|
|
1981
|
+
return codes;
|
|
1982
|
+
}
|
|
1983
|
+
if (snapshot.protocol !== "nexart") {
|
|
1984
|
+
codes.push(ReasonCode.SCHEMA_VERSION_UNSUPPORTED);
|
|
1985
|
+
}
|
|
1986
|
+
if (!snapshot.outputHash || !snapshot.outputHash.startsWith("sha256:")) {
|
|
1987
|
+
codes.push(ReasonCode.BUNDLE_CORRUPTED);
|
|
1988
|
+
}
|
|
1989
|
+
if (!snapshot.codeHash || !snapshot.codeHash.startsWith("sha256:")) {
|
|
1990
|
+
codes.push(ReasonCode.BUNDLE_CORRUPTED);
|
|
1991
|
+
}
|
|
1992
|
+
return codes;
|
|
1993
|
+
}
|
|
1994
|
+
function verifyCodeModeSnapshotDetailed(snapshot, options = {}) {
|
|
1995
|
+
const verifiedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
1996
|
+
const verifier = "@nexart/codemode-sdk";
|
|
1997
|
+
if (!snapshot || typeof snapshot !== "object" || Array.isArray(snapshot)) {
|
|
1998
|
+
return {
|
|
1999
|
+
status: "FAILED",
|
|
2000
|
+
checks: { bundleIntegrity: "FAIL", nodeSignature: "SKIPPED", receiptConsistency: "SKIPPED" },
|
|
2001
|
+
reasonCodes: [ReasonCode.BUNDLE_CORRUPTED],
|
|
2002
|
+
certificateHash: "",
|
|
2003
|
+
bundleType: "codemode.snapshot.v1",
|
|
2004
|
+
verifiedAt,
|
|
2005
|
+
verifier
|
|
2006
|
+
};
|
|
2007
|
+
}
|
|
2008
|
+
const snap = snapshot;
|
|
2009
|
+
const structureReasons = validateSnapshotStructure(snap);
|
|
2010
|
+
const hashReasons = [];
|
|
2011
|
+
if (options.outputHash !== void 0 && options.outputHash !== snap.outputHash) {
|
|
2012
|
+
hashReasons.push(ReasonCode.BUNDLE_HASH_MISMATCH);
|
|
2013
|
+
}
|
|
2014
|
+
if (options.codeHash !== void 0 && options.codeHash !== snap.codeHash) {
|
|
2015
|
+
hashReasons.push(ReasonCode.BUNDLE_HASH_MISMATCH);
|
|
2016
|
+
}
|
|
2017
|
+
const reasonCodes = [.../* @__PURE__ */ new Set([...structureReasons, ...hashReasons])];
|
|
2018
|
+
const bundleIntegrity = reasonCodes.length === 0 ? "PASS" : "FAIL";
|
|
2019
|
+
return {
|
|
2020
|
+
status: bundleIntegrity === "PASS" ? "VERIFIED" : "FAILED",
|
|
2021
|
+
checks: { bundleIntegrity, nodeSignature: "SKIPPED", receiptConsistency: "SKIPPED" },
|
|
2022
|
+
reasonCodes,
|
|
2023
|
+
certificateHash: snap.outputHash ?? "",
|
|
2024
|
+
bundleType: "codemode.snapshot.v1",
|
|
2025
|
+
verifiedAt,
|
|
2026
|
+
verifier
|
|
2027
|
+
};
|
|
2028
|
+
}
|
|
2029
|
+
|
|
1965
2030
|
// core-index.ts
|
|
1966
2031
|
var SDK_VERSION2 = SDK_VERSION;
|
|
1967
2032
|
var SDK_NAME = "@nexart/codemode-sdk";
|
|
@@ -1975,6 +2040,7 @@ exports.DEFAULT_VARS = DEFAULT_VARS;
|
|
|
1975
2040
|
exports.PROTOCOL_IDENTITY = PROTOCOL_IDENTITY;
|
|
1976
2041
|
exports.PROTOCOL_PHASE = PROTOCOL_PHASE;
|
|
1977
2042
|
exports.PROTOCOL_VERSION = PROTOCOL_VERSION;
|
|
2043
|
+
exports.ReasonCode = ReasonCode;
|
|
1978
2044
|
exports.SDK_NAME = SDK_NAME;
|
|
1979
2045
|
exports.SDK_VERSION = SDK_VERSION2;
|
|
1980
2046
|
exports.VAR_COUNT = VAR_COUNT;
|
|
@@ -1995,4 +2061,5 @@ exports.selectNodeKey = selectNodeKey;
|
|
|
1995
2061
|
exports.toCanonicalJson = toCanonicalJson;
|
|
1996
2062
|
exports.validateCodeModeSource = validateCodeModeSource;
|
|
1997
2063
|
exports.verifyBundleAttestation = verifyBundleAttestation;
|
|
2064
|
+
exports.verifyCodeModeSnapshotDetailed = verifyCodeModeSnapshotDetailed;
|
|
1998
2065
|
exports.verifyNodeReceiptSignature = verifyNodeReceiptSignature;
|
package/dist/esm/core.js
CHANGED
|
@@ -2,7 +2,7 @@ import { hashes, verify } from '@noble/ed25519';
|
|
|
2
2
|
import { sha512 } from '@noble/hashes/sha2.js';
|
|
3
3
|
|
|
4
4
|
// version.ts
|
|
5
|
-
var SDK_VERSION = "1.
|
|
5
|
+
var SDK_VERSION = "1.10.0";
|
|
6
6
|
var PROTOCOL_VERSION = "1.2.0";
|
|
7
7
|
var PROTOCOL_PHASE = 3;
|
|
8
8
|
|
|
@@ -1959,8 +1959,73 @@ function hasAttestation(bundle) {
|
|
|
1959
1959
|
return getAttestationReceipt(bundle) !== null;
|
|
1960
1960
|
}
|
|
1961
1961
|
|
|
1962
|
+
// cerProtocol.ts
|
|
1963
|
+
var ReasonCode = {
|
|
1964
|
+
BUNDLE_HASH_MISMATCH: "BUNDLE_HASH_MISMATCH",
|
|
1965
|
+
NODE_SIGNATURE_INVALID: "NODE_SIGNATURE_INVALID",
|
|
1966
|
+
NODE_SIGNATURE_MISSING: "NODE_SIGNATURE_MISSING",
|
|
1967
|
+
RECEIPT_HASH_MISMATCH: "RECEIPT_HASH_MISMATCH",
|
|
1968
|
+
SCHEMA_VERSION_UNSUPPORTED: "SCHEMA_VERSION_UNSUPPORTED",
|
|
1969
|
+
RECORD_NOT_FOUND: "RECORD_NOT_FOUND",
|
|
1970
|
+
BUNDLE_CORRUPTED: "BUNDLE_CORRUPTED"
|
|
1971
|
+
};
|
|
1972
|
+
|
|
1973
|
+
// verifyDetailed.ts
|
|
1974
|
+
function validateSnapshotStructure(snapshot) {
|
|
1975
|
+
const codes = [];
|
|
1976
|
+
if (!snapshot || typeof snapshot !== "object") {
|
|
1977
|
+
codes.push(ReasonCode.BUNDLE_CORRUPTED);
|
|
1978
|
+
return codes;
|
|
1979
|
+
}
|
|
1980
|
+
if (snapshot.protocol !== "nexart") {
|
|
1981
|
+
codes.push(ReasonCode.SCHEMA_VERSION_UNSUPPORTED);
|
|
1982
|
+
}
|
|
1983
|
+
if (!snapshot.outputHash || !snapshot.outputHash.startsWith("sha256:")) {
|
|
1984
|
+
codes.push(ReasonCode.BUNDLE_CORRUPTED);
|
|
1985
|
+
}
|
|
1986
|
+
if (!snapshot.codeHash || !snapshot.codeHash.startsWith("sha256:")) {
|
|
1987
|
+
codes.push(ReasonCode.BUNDLE_CORRUPTED);
|
|
1988
|
+
}
|
|
1989
|
+
return codes;
|
|
1990
|
+
}
|
|
1991
|
+
function verifyCodeModeSnapshotDetailed(snapshot, options = {}) {
|
|
1992
|
+
const verifiedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
1993
|
+
const verifier = "@nexart/codemode-sdk";
|
|
1994
|
+
if (!snapshot || typeof snapshot !== "object" || Array.isArray(snapshot)) {
|
|
1995
|
+
return {
|
|
1996
|
+
status: "FAILED",
|
|
1997
|
+
checks: { bundleIntegrity: "FAIL", nodeSignature: "SKIPPED", receiptConsistency: "SKIPPED" },
|
|
1998
|
+
reasonCodes: [ReasonCode.BUNDLE_CORRUPTED],
|
|
1999
|
+
certificateHash: "",
|
|
2000
|
+
bundleType: "codemode.snapshot.v1",
|
|
2001
|
+
verifiedAt,
|
|
2002
|
+
verifier
|
|
2003
|
+
};
|
|
2004
|
+
}
|
|
2005
|
+
const snap = snapshot;
|
|
2006
|
+
const structureReasons = validateSnapshotStructure(snap);
|
|
2007
|
+
const hashReasons = [];
|
|
2008
|
+
if (options.outputHash !== void 0 && options.outputHash !== snap.outputHash) {
|
|
2009
|
+
hashReasons.push(ReasonCode.BUNDLE_HASH_MISMATCH);
|
|
2010
|
+
}
|
|
2011
|
+
if (options.codeHash !== void 0 && options.codeHash !== snap.codeHash) {
|
|
2012
|
+
hashReasons.push(ReasonCode.BUNDLE_HASH_MISMATCH);
|
|
2013
|
+
}
|
|
2014
|
+
const reasonCodes = [.../* @__PURE__ */ new Set([...structureReasons, ...hashReasons])];
|
|
2015
|
+
const bundleIntegrity = reasonCodes.length === 0 ? "PASS" : "FAIL";
|
|
2016
|
+
return {
|
|
2017
|
+
status: bundleIntegrity === "PASS" ? "VERIFIED" : "FAILED",
|
|
2018
|
+
checks: { bundleIntegrity, nodeSignature: "SKIPPED", receiptConsistency: "SKIPPED" },
|
|
2019
|
+
reasonCodes,
|
|
2020
|
+
certificateHash: snap.outputHash ?? "",
|
|
2021
|
+
bundleType: "codemode.snapshot.v1",
|
|
2022
|
+
verifiedAt,
|
|
2023
|
+
verifier
|
|
2024
|
+
};
|
|
2025
|
+
}
|
|
2026
|
+
|
|
1962
2027
|
// core-index.ts
|
|
1963
2028
|
var SDK_VERSION2 = SDK_VERSION;
|
|
1964
2029
|
var SDK_NAME = "@nexart/codemode-sdk";
|
|
1965
2030
|
|
|
1966
|
-
export { CODE_MODE_ENFORCEMENT, CODE_MODE_PROTOCOL_PHASE, CODE_MODE_PROTOCOL_VERSION, CodeVerifyCode, DEFAULT_CONFIG, DEFAULT_VARS, PROTOCOL_IDENTITY, PROTOCOL_PHASE, PROTOCOL_VERSION, SDK_NAME, SDK_VERSION2 as SDK_VERSION, VAR_COUNT, VAR_MAX, VAR_MIN, cancelLoopMode, createEngine, createP5Runtime, createProtocolVAR, executeCodeMode, fetchNodeKeys, getAttestationReceipt, hasAttestation, injectTimeVariables, runLoopMode, runStaticMode, selectNodeKey, toCanonicalJson, validateCodeModeSource, verifyBundleAttestation, verifyNodeReceiptSignature };
|
|
2031
|
+
export { CODE_MODE_ENFORCEMENT, CODE_MODE_PROTOCOL_PHASE, CODE_MODE_PROTOCOL_VERSION, CodeVerifyCode, DEFAULT_CONFIG, DEFAULT_VARS, PROTOCOL_IDENTITY, PROTOCOL_PHASE, PROTOCOL_VERSION, ReasonCode, SDK_NAME, SDK_VERSION2 as SDK_VERSION, VAR_COUNT, VAR_MAX, VAR_MIN, cancelLoopMode, createEngine, createP5Runtime, createProtocolVAR, executeCodeMode, fetchNodeKeys, getAttestationReceipt, hasAttestation, injectTimeVariables, runLoopMode, runStaticMode, selectNodeKey, toCanonicalJson, validateCodeModeSource, verifyBundleAttestation, verifyCodeModeSnapshotDetailed, verifyNodeReceiptSignature };
|
package/dist/esm/node.cjs
CHANGED
package/dist/esm/node.js
CHANGED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CER Protocol verification types — @nexart/codemode-sdk v1.10.0
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the types in @nexart/ai-execution/cerProtocol so both SDKs
|
|
5
|
+
* produce interoperable CerVerificationResult objects without a cross-package
|
|
6
|
+
* dependency at runtime.
|
|
7
|
+
*/
|
|
8
|
+
export type VerificationStatus = 'VERIFIED' | 'FAILED' | 'NOT_FOUND';
|
|
9
|
+
export type CheckStatus = 'PASS' | 'FAIL' | 'SKIPPED';
|
|
10
|
+
export declare const ReasonCode: {
|
|
11
|
+
readonly BUNDLE_HASH_MISMATCH: "BUNDLE_HASH_MISMATCH";
|
|
12
|
+
readonly NODE_SIGNATURE_INVALID: "NODE_SIGNATURE_INVALID";
|
|
13
|
+
readonly NODE_SIGNATURE_MISSING: "NODE_SIGNATURE_MISSING";
|
|
14
|
+
readonly RECEIPT_HASH_MISMATCH: "RECEIPT_HASH_MISMATCH";
|
|
15
|
+
readonly SCHEMA_VERSION_UNSUPPORTED: "SCHEMA_VERSION_UNSUPPORTED";
|
|
16
|
+
readonly RECORD_NOT_FOUND: "RECORD_NOT_FOUND";
|
|
17
|
+
readonly BUNDLE_CORRUPTED: "BUNDLE_CORRUPTED";
|
|
18
|
+
};
|
|
19
|
+
export type ReasonCode = typeof ReasonCode[keyof typeof ReasonCode];
|
|
20
|
+
/**
|
|
21
|
+
* Canonical protocol verification result.
|
|
22
|
+
*
|
|
23
|
+
* Produced by verifyAiCerBundleDetailed() and verifyCodeModeSnapshotDetailed().
|
|
24
|
+
* Code Mode snapshots do not carry node signatures, so nodeSignature and
|
|
25
|
+
* receiptConsistency are always SKIPPED for Code Mode.
|
|
26
|
+
*/
|
|
27
|
+
export interface CerVerificationResult {
|
|
28
|
+
status: VerificationStatus;
|
|
29
|
+
checks: {
|
|
30
|
+
bundleIntegrity: CheckStatus;
|
|
31
|
+
nodeSignature: CheckStatus;
|
|
32
|
+
receiptConsistency: CheckStatus;
|
|
33
|
+
};
|
|
34
|
+
reasonCodes: ReasonCode[];
|
|
35
|
+
certificateHash: string;
|
|
36
|
+
bundleType: string;
|
|
37
|
+
verifiedAt: string;
|
|
38
|
+
verifier: string;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=cerProtocol.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cerProtocol.d.ts","sourceRoot":"","sources":["../../../../cerProtocol.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,QAAQ,GAAG,WAAW,CAAC;AACrE,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAEtD,eAAO,MAAM,UAAU;;;;;;;;CAQb,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAEpE;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,MAAM,EAAE;QACN,eAAe,EAAE,WAAW,CAAC;QAC7B,aAAa,EAAE,WAAW,CAAC;QAC3B,kBAAkB,EAAE,WAAW,CAAC;KACjC,CAAC;IACF,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB"}
|
|
@@ -21,7 +21,11 @@ export { toCanonicalJson } from './canonicalJson.js';
|
|
|
21
21
|
/**
|
|
22
22
|
* SDK Identity — imported from version.ts (single source of truth)
|
|
23
23
|
*/
|
|
24
|
-
export declare const SDK_VERSION = "1.
|
|
24
|
+
export declare const SDK_VERSION = "1.10.0";
|
|
25
25
|
export declare const SDK_NAME = "@nexart/codemode-sdk";
|
|
26
26
|
export { PROTOCOL_VERSION, PROTOCOL_PHASE };
|
|
27
|
+
export { ReasonCode } from './cerProtocol';
|
|
28
|
+
export type { VerificationStatus, CheckStatus, ReasonCode as ReasonCodeType, CerVerificationResult, } from './cerProtocol';
|
|
29
|
+
export { verifyCodeModeSnapshotDetailed } from './verifyDetailed';
|
|
30
|
+
export type { VerifyCodeModeOptions } from './verifyDetailed';
|
|
27
31
|
//# sourceMappingURL=core-index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-index.d.ts","sourceRoot":"","sources":["../../../../core-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAA+B,gBAAgB,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAG1F,OAAO,EACL,eAAe,EACf,sBAAsB,GACvB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,OAAO,EACP,OAAO,EACP,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,SAAS,EACd,KAAK,eAAe,GACrB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,aAAa,GACd,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,WAAW,EACX,cAAc,GACf,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,YAAY,GACb,MAAM,UAAU,CAAC;AAKlB,OAAO,EACL,cAAc,EACd,KAAK,cAAc,IAAI,kBAAkB,EACzC,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,GAC5B,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,0BAA0B,EAC1B,aAAa,EACb,aAAa,EACb,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EACL,qBAAqB,EACrB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"core-index.d.ts","sourceRoot":"","sources":["../../../../core-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAA+B,gBAAgB,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAG1F,OAAO,EACL,eAAe,EACf,sBAAsB,GACvB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,MAAM,EACX,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,OAAO,EACP,OAAO,EACP,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,EACrB,KAAK,SAAS,EACd,KAAK,eAAe,GACrB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,aAAa,GACd,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,WAAW,EACX,cAAc,GACf,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,YAAY,GACb,MAAM,UAAU,CAAC;AAKlB,OAAO,EACL,cAAc,EACd,KAAK,cAAc,IAAI,kBAAkB,EACzC,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,GAC5B,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,0BAA0B,EAC1B,aAAa,EACb,aAAa,EACb,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EACL,qBAAqB,EACrB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,WAAW,WAAe,CAAC;AACxC,eAAO,MAAM,QAAQ,yBAAyB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC;AAK5C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EACV,kBAAkB,EAClB,WAAW,EACX,UAAU,IAAI,cAAc,EAC5B,qBAAqB,GACtB,MAAM,eAAe,CAAC;AAKvB,OAAO,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAC;AAClE,YAAY,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -28,7 +28,7 @@ export { createRuntime, NexArtRuntime, RUNTIME_VERSION, } from '../runtime';
|
|
|
28
28
|
export type { RuntimeOptions, RuntimeState, NexArtRuntime as NexArtRuntimeType, } from '../runtime';
|
|
29
29
|
export { renderSoundArtViaCodeMode, canRenderViaCodeMode, getCodeModeAvailableStyles, } from '../soundart-engine';
|
|
30
30
|
export type { TweakParams, SoundArtEngineConfig, SoundArtRenderOptions, SoundArtRenderResult, SoundArtMetadata, SoundSnapshot, SoundFeatures, SoundArtSketchName, } from '../soundart-engine';
|
|
31
|
-
export declare const SDK_VERSION = "1.
|
|
31
|
+
export declare const SDK_VERSION = "1.10.0";
|
|
32
32
|
export declare const SDK_NAME = "@nexart/codemode-sdk";
|
|
33
33
|
export declare const SDK_ENTRY = "browser";
|
|
34
34
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../../entry/browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAOH,YAAY,EACV,UAAU,EACV,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,MAAM,UAAU,CAAC;AAKlB,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAK9B,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,EACT,OAAO,EACP,OAAO,EACP,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,SAAS,EACT,eAAe,GAChB,MAAM,eAAe,CAAC;AAKvB,OAAO,EACL,WAAW,EACX,cAAc,GACf,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EACL,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,YAAY,GACb,MAAM,WAAW,CAAC;AAKnB,OAAO,EACL,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EACL,aAAa,EACb,aAAa,EACb,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,cAAc,EACd,YAAY,EACZ,aAAa,IAAI,iBAAiB,GACnC,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,WAAW,EACX,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAK5B,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../../entry/browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAOH,YAAY,EACV,UAAU,EACV,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,MAAM,UAAU,CAAC;AAKlB,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAK9B,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,iBAAiB,EACjB,SAAS,EACT,OAAO,EACP,OAAO,EACP,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,SAAS,EACT,eAAe,GAChB,MAAM,eAAe,CAAC;AAKvB,OAAO,EACL,WAAW,EACX,cAAc,GACf,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EACL,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,YAAY,GACb,MAAM,WAAW,CAAC;AAKnB,OAAO,EACL,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EACL,aAAa,EACb,aAAa,EACb,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,cAAc,EACd,YAAY,EACZ,aAAa,IAAI,iBAAiB,GACnC,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,WAAW,EACX,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAK5B,eAAO,MAAM,WAAW,WAAe,CAAC;AACxC,eAAO,MAAM,QAAQ,yBAAyB,CAAC;AAC/C,eAAO,MAAM,SAAS,YAAY,CAAC;AAEnC;;;;;;;;;;;GAWG"}
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
* ║ BROWSER-SAFE: No Node.js dependencies. Works in Vite/Next/React. ║
|
|
19
19
|
* ╚══════════════════════════════════════════════════════════════════════════╝
|
|
20
20
|
*/
|
|
21
|
-
export declare const RUNTIME_VERSION = "1.
|
|
21
|
+
export declare const RUNTIME_VERSION = "1.10.0";
|
|
22
22
|
export interface RuntimeOptions {
|
|
23
23
|
seed: string | number;
|
|
24
24
|
vars?: number[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,eAAO,MAAM,eAAe,WAAc,CAAC;AAE3C,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,IAAI,MAAM,CAAC;IACjB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5C,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9C,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACjD,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IACvB,MAAM,IAAI,MAAM,CAAC;IACjB,QAAQ,IAAI,YAAY,CAAC;IACzB,OAAO,IAAI,MAAM,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAqGD,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,aAAa,CAuHpE;AAED,eAAO,MAAM,aAAa;;;CAGzB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* verifyCodeModeSnapshotDetailed — protocol-aligned Code Mode snapshot verifier
|
|
3
|
+
*
|
|
4
|
+
* Returns a CerVerificationResult conforming to the CER Protocol spec.
|
|
5
|
+
*
|
|
6
|
+
* bundleIntegrity — PASS if snapshot structure is valid AND (when outputHash
|
|
7
|
+
* is provided) the output hash matches the snapshot value.
|
|
8
|
+
* nodeSignature — always SKIPPED (Code Mode snapshots carry no node signature)
|
|
9
|
+
* receiptConsistency — always SKIPPED (same reason)
|
|
10
|
+
*/
|
|
11
|
+
import { type CerVerificationResult } from './cerProtocol';
|
|
12
|
+
export interface VerifyCodeModeOptions {
|
|
13
|
+
/** Actual output hash (sha256:...) to compare against snapshot.outputHash. */
|
|
14
|
+
outputHash?: string;
|
|
15
|
+
/** Actual code hash to compare against snapshot.codeHash. */
|
|
16
|
+
codeHash?: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Verify a Code Mode snapshot and return a structured CerVerificationResult.
|
|
20
|
+
*
|
|
21
|
+
* @param snapshot - The NexArtSnapshotV1 object to verify
|
|
22
|
+
* @param options - Optional actual hashes to compare against the snapshot
|
|
23
|
+
*/
|
|
24
|
+
export declare function verifyCodeModeSnapshotDetailed(snapshot: unknown, options?: VerifyCodeModeOptions): CerVerificationResult;
|
|
25
|
+
//# sourceMappingURL=verifyDetailed.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verifyDetailed.d.ts","sourceRoot":"","sources":["../../../../verifyDetailed.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAA6B,KAAK,qBAAqB,EAAqC,MAAM,eAAe,CAAC;AAEzH,MAAM,WAAW,qBAAqB;IACpC,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AA6BD;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,OAAO,EACjB,OAAO,GAAE,qBAA0B,GAClC,qBAAqB,CAuCvB"}
|
|
@@ -8,11 +8,11 @@
|
|
|
8
8
|
* See package.json for the canonical npm version.
|
|
9
9
|
*/
|
|
10
10
|
/** SDK version - must match package.json version */
|
|
11
|
-
export declare const SDK_VERSION = "1.
|
|
11
|
+
export declare const SDK_VERSION = "1.10.0";
|
|
12
12
|
/** Protocol version - defines runtime semantics and determinism guarantees */
|
|
13
13
|
export declare const PROTOCOL_VERSION = "1.2.0";
|
|
14
14
|
/** Protocol phase - phase 3 = stable, production-ready */
|
|
15
15
|
export declare const PROTOCOL_PHASE = 3;
|
|
16
16
|
/** Combined version string for display */
|
|
17
|
-
export declare const VERSION_STRING = "v1.
|
|
17
|
+
export declare const VERSION_STRING = "v1.10.0 (Protocol v1.2.0)";
|
|
18
18
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../../version.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,oDAAoD;AACpD,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../../version.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,oDAAoD;AACpD,eAAO,MAAM,WAAW,WAAW,CAAC;AAEpC,8EAA8E;AAC9E,eAAO,MAAM,gBAAgB,UAAU,CAAC;AAExC,0DAA0D;AAC1D,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC,0CAA0C;AAC1C,eAAO,MAAM,cAAc,8BAAoD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nexart/codemode-sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.10.0",
|
|
4
4
|
"description": "NexArt Code Mode SDK - Deterministic, reproducible, verifiable generative art runtime. Agent-first design for AI coding assistants.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/cjs/browser.cjs",
|