🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

@absolutejs/manifest

Package Overview
Dependencies
Maintainers
1
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@absolutejs/manifest - npm Package Compare versions

Comparing version
0.7.1
to
0.7.2
+20
-4
dist/cli.js

@@ -437,9 +437,17 @@ #!/usr/bin/env bun

}
const { artifactImports, buildExternals, optional, range, tested } = value;
const {
artifactImports,
artifactReferences,
buildExternals,
optional,
range,
tested
} = value;
const artifactImportList = parseStringList(artifactImports);
const artifactReferenceList = parseStringList(artifactReferences, true);
const externalList = parseStringList(buildExternals, true);
if (runtime.length === 0 || typeof range !== "string" || range.length === 0 || typeof tested !== "string" || !EXACT_VERSION.test(tested) || optional !== undefined && typeof optional !== "boolean" || artifactImportList === undefined || externalList === undefined || new Set(artifactImportList).size !== artifactImportList.length || new Set(externalList).size !== externalList.length) {
if (runtime.length === 0 || typeof range !== "string" || range.length === 0 || typeof tested !== "string" || !EXACT_VERSION.test(tested) || optional !== undefined && typeof optional !== "boolean" || artifactImportList === undefined || artifactReferenceList === undefined || externalList === undefined || new Set(artifactImportList).size !== artifactImportList.length || new Set(artifactReferenceList).size !== artifactReferenceList.length || new Set(externalList).size !== externalList.length) {
issues.push({
code: "invalid_policy",
message: `absolutejs.runtimePeers["${runtime}"] requires a non-empty range, exact tested version, optional boolean, explicit unique artifactImports, and unique buildExternals`,
message: `absolutejs.runtimePeers["${runtime}"] requires a non-empty range, exact tested version, optional boolean, explicit unique artifactImports, unique artifactReferences, and unique buildExternals`,
runtime

@@ -451,2 +459,3 @@ });

artifactImports: artifactImportList,
artifactReferences: artifactReferenceList,
buildExternals: externalList,

@@ -540,2 +549,9 @@ optional: optional === true,

});
for (const reference of policy.artifactReferences ?? [])
if (!Object.values(artifacts).some((contents) => contents.includes(reference)))
issues.push({
code: "artifact_reference_missing",
message: `built JavaScript must retain the dynamic reference ${JSON.stringify(reference)} for host-owned runtime ${runtime}`,
runtime
});
}

@@ -746,3 +762,3 @@ return issues.length === 0 ? { issues: [], ok: true } : { issues, ok: false };

//# debugId=CDAAD994FD5C054C64756E2164756E21
//# debugId=158590DDEB43CAE864756E2164756E21
//# sourceMappingURL=cli.js.map

@@ -647,9 +647,17 @@ // @bun

}
const { artifactImports, buildExternals, optional, range, tested } = value;
const {
artifactImports,
artifactReferences,
buildExternals,
optional,
range,
tested
} = value;
const artifactImportList = parseStringList(artifactImports);
const artifactReferenceList = parseStringList(artifactReferences, true);
const externalList = parseStringList(buildExternals, true);
if (runtime.length === 0 || typeof range !== "string" || range.length === 0 || typeof tested !== "string" || !EXACT_VERSION.test(tested) || optional !== undefined && typeof optional !== "boolean" || artifactImportList === undefined || externalList === undefined || new Set(artifactImportList).size !== artifactImportList.length || new Set(externalList).size !== externalList.length) {
if (runtime.length === 0 || typeof range !== "string" || range.length === 0 || typeof tested !== "string" || !EXACT_VERSION.test(tested) || optional !== undefined && typeof optional !== "boolean" || artifactImportList === undefined || artifactReferenceList === undefined || externalList === undefined || new Set(artifactImportList).size !== artifactImportList.length || new Set(artifactReferenceList).size !== artifactReferenceList.length || new Set(externalList).size !== externalList.length) {
issues.push({
code: "invalid_policy",
message: `absolutejs.runtimePeers["${runtime}"] requires a non-empty range, exact tested version, optional boolean, explicit unique artifactImports, and unique buildExternals`,
message: `absolutejs.runtimePeers["${runtime}"] requires a non-empty range, exact tested version, optional boolean, explicit unique artifactImports, unique artifactReferences, and unique buildExternals`,
runtime

@@ -661,2 +669,3 @@ });

artifactImports: artifactImportList,
artifactReferences: artifactReferenceList,
buildExternals: externalList,

@@ -750,2 +759,9 @@ optional: optional === true,

});
for (const reference of policy.artifactReferences ?? [])
if (!Object.values(artifacts).some((contents) => contents.includes(reference)))
issues.push({
code: "artifact_reference_missing",
message: `built JavaScript must retain the dynamic reference ${JSON.stringify(reference)} for host-owned runtime ${runtime}`,
runtime
});
}

@@ -776,3 +792,3 @@ return issues.length === 0 ? { issues: [], ok: true } : { issues, ok: false };

//# debugId=8009D22535851E1064756E2164756E21
//# debugId=D1FD94F105058A1964756E2164756E21
//# sourceMappingURL=index.js.map
+2
-1
export type RuntimePeerPolicy = {
artifactImports: readonly string[];
artifactReferences?: readonly string[];
buildExternals?: readonly string[];

@@ -9,3 +10,3 @@ optional?: boolean;

export type PackageRuntimePolicyIssue = {
code: "artifact_import_missing" | "dependency_conflict" | "dev_dependency_mismatch" | "external_missing" | "invalid_policy" | "optional_mismatch" | "peer_range_mismatch" | "unclassified_peer";
code: "artifact_import_missing" | "artifact_reference_missing" | "dependency_conflict" | "dev_dependency_mismatch" | "external_missing" | "invalid_policy" | "optional_mismatch" | "peer_range_mismatch" | "unclassified_peer";
message: string;

@@ -12,0 +13,0 @@ runtime?: string;

{
"name": "@absolutejs/manifest",
"version": "0.7.1",
"version": "0.7.2",
"description": "The AbsoluteJS package manifest contract. Every @absolutejs/* package exports a typed manifest (settings schema, env requirements, adapter slots, wiring recipes, AI tools) from its ./manifest subpath; this package is the contract those manifests are written against, plus bridges that turn any manifest into an AI tool map or a remote MCP tool registry.",

@@ -5,0 +5,0 @@ "repository": {

@@ -159,2 +159,3 @@ # @absolutejs/manifest

"artifactImports": ["@absolutejs/agency"],
"artifactReferences": [],
"range": ">=0.7.1 <0.8.0",

@@ -192,3 +193,6 @@ "tested": "0.7.1",

JavaScript because it was bundled. An empty `artifactImports` array is the
explicit declaration that a peer is type-only; omission is never that
explicit declaration that no static import survives. A dynamically resolved
peer must instead declare stable `artifactReferences` strings that survive in
the built JavaScript (for example, a host `node_modules/sharp` lookup); only a
peer with both evidence arrays empty is type-only. Omission is never a
declaration. Keep compatibility windows conservative; supporting a new pre-1.0

@@ -195,0 +199,0 @@ minor requires a deliberate package release.

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display