Skip to content

dependabit / manifest/src / safeValidateManifest

Function: safeValidateManifest()

ts
function safeValidateManifest(data): {
  data?: {
     dependencies: {
        accessMethod: "context7" | "arxiv" | "openapi" | "github-api" | "http";
        auth?: {
           secretEnvVar?: string;
           type: "token" | "oauth" | "basic" | "none";
        };
        changeHistory: {
           detectedAt: string;
           falsePositive: boolean;
           issueNumber?: number;
           newVersion?: string;
           oldVersion?: string;
           severity: "breaking" | "major" | "minor";
        }[];
        currentStateHash: string;
        currentVersion?: string;
        description?: string;
        detectedAt: string;
        detectionConfidence: number;
        detectionMethod:   | "llm-analysis"
           | "manual"
           | "package-json"
           | "requirements-txt"
           | "code-comment";
        id: string;
        lastChanged?: string;
        lastChecked: string;
        monitoring?: {
           checkFrequency: "hourly" | "daily" | "weekly" | "monthly";
           enabled: boolean;
           ignoreChanges: boolean;
           severityOverride?: "breaking" | "major" | "minor";
        };
        name: string;
        referencedIn: {
           context?: string;
           file: string;
           line?: number;
        }[];
        type:   | "reference-implementation"
           | "schema"
           | "documentation"
           | "research-paper"
           | "api-example"
           | "other";
        url: string;
     }[];
     generatedAt: string;
     generatedBy: {
        action: string;
        llmModel?: string;
        llmProvider: string;
        version: string;
     };
     repository: {
        branch: string;
        commit: string;
        name: string;
        owner: string;
     };
     statistics: {
        averageConfidence: number;
        byAccessMethod: Record<string, number>;
        byDetectionMethod: Record<string, number>;
        byType: Record<string, number>;
        falsePositiveRate?: number;
        totalDependencies: number;
     };
     version: "1.0.0";
  };
  error?: ValidationError;
  success: boolean;
};

Defined in: packages/manifest/src/validator.ts:85

Safe validation that returns success/error result

Parameters

ParameterType
dataunknown

Returns

ts
{
  data?: {
     dependencies: {
        accessMethod: "context7" | "arxiv" | "openapi" | "github-api" | "http";
        auth?: {
           secretEnvVar?: string;
           type: "token" | "oauth" | "basic" | "none";
        };
        changeHistory: {
           detectedAt: string;
           falsePositive: boolean;
           issueNumber?: number;
           newVersion?: string;
           oldVersion?: string;
           severity: "breaking" | "major" | "minor";
        }[];
        currentStateHash: string;
        currentVersion?: string;
        description?: string;
        detectedAt: string;
        detectionConfidence: number;
        detectionMethod:   | "llm-analysis"
           | "manual"
           | "package-json"
           | "requirements-txt"
           | "code-comment";
        id: string;
        lastChanged?: string;
        lastChecked: string;
        monitoring?: {
           checkFrequency: "hourly" | "daily" | "weekly" | "monthly";
           enabled: boolean;
           ignoreChanges: boolean;
           severityOverride?: "breaking" | "major" | "minor";
        };
        name: string;
        referencedIn: {
           context?: string;
           file: string;
           line?: number;
        }[];
        type:   | "reference-implementation"
           | "schema"
           | "documentation"
           | "research-paper"
           | "api-example"
           | "other";
        url: string;
     }[];
     generatedAt: string;
     generatedBy: {
        action: string;
        llmModel?: string;
        llmProvider: string;
        version: string;
     };
     repository: {
        branch: string;
        commit: string;
        name: string;
        owner: string;
     };
     statistics: {
        averageConfidence: number;
        byAccessMethod: Record<string, number>;
        byDetectionMethod: Record<string, number>;
        byType: Record<string, number>;
        falsePositiveRate?: number;
        totalDependencies: number;
     };
     version: "1.0.0";
  };
  error?: ValidationError;
  success: boolean;
}
NameTypeDefault valueDefined in
data?{ dependencies: { accessMethod: "context7" | "arxiv" | "openapi" | "github-api" | "http"; auth?: { secretEnvVar?: string; type: "token" | "oauth" | "basic" | "none"; }; changeHistory: { detectedAt: string; falsePositive: boolean; issueNumber?: number; newVersion?: string; oldVersion?: string; severity: "breaking" | "major" | "minor"; }[]; currentStateHash: string; currentVersion?: string; description?: string; detectedAt: string; detectionConfidence: number; detectionMethod: | "llm-analysis" | "manual" | "package-json" | "requirements-txt" | "code-comment"; id: string; lastChanged?: string; lastChecked: string; monitoring?: { checkFrequency: "hourly" | "daily" | "weekly" | "monthly"; enabled: boolean; ignoreChanges: boolean; severityOverride?: "breaking" | "major" | "minor"; }; name: string; referencedIn: { context?: string; file: string; line?: number; }[]; type: | "reference-implementation" | "schema" | "documentation" | "research-paper" | "api-example" | "other"; url: string; }[]; generatedAt: string; generatedBy: { action: string; llmModel?: string; llmProvider: string; version: string; }; repository: { branch: string; commit: string; name: string; owner: string; }; statistics: { averageConfidence: number; byAccessMethod: Record<string, number>; byDetectionMethod: Record<string, number>; byType: Record<string, number>; falsePositiveRate?: number; totalDependencies: number; }; version: "1.0.0"; }-packages/manifest/src/validator.ts:87
data.dependencies{ accessMethod: "context7" | "arxiv" | "openapi" | "github-api" | "http"; auth?: { secretEnvVar?: string; type: "token" | "oauth" | "basic" | "none"; }; changeHistory: { detectedAt: string; falsePositive: boolean; issueNumber?: number; newVersion?: string; oldVersion?: string; severity: "breaking" | "major" | "minor"; }[]; currentStateHash: string; currentVersion?: string; description?: string; detectedAt: string; detectionConfidence: number; detectionMethod: | "llm-analysis" | "manual" | "package-json" | "requirements-txt" | "code-comment"; id: string; lastChanged?: string; lastChecked: string; monitoring?: { checkFrequency: "hourly" | "daily" | "weekly" | "monthly"; enabled: boolean; ignoreChanges: boolean; severityOverride?: "breaking" | "major" | "minor"; }; name: string; referencedIn: { context?: string; file: string; line?: number; }[]; type: | "reference-implementation" | "schema" | "documentation" | "research-paper" | "api-example" | "other"; url: string; }[]-packages/manifest/src/schema.ts:145
data.generatedAtstring-packages/manifest/src/schema.ts:130
data.generatedBy{ action: string; llmModel?: string; llmProvider: string; version: string; }-packages/manifest/src/schema.ts:131
data.generatedBy.actionstring-packages/manifest/src/schema.ts:132
data.generatedBy.llmModel?string-packages/manifest/src/schema.ts:135
data.generatedBy.llmProviderstring-packages/manifest/src/schema.ts:134
data.generatedBy.versionstring-packages/manifest/src/schema.ts:133
data.repository{ branch: string; commit: string; name: string; owner: string; }-packages/manifest/src/schema.ts:138
data.repository.branchstring-packages/manifest/src/schema.ts:141
data.repository.commitstring-packages/manifest/src/schema.ts:142
data.repository.namestring-packages/manifest/src/schema.ts:140
data.repository.ownerstring-packages/manifest/src/schema.ts:139
data.statistics{ averageConfidence: number; byAccessMethod: Record<string, number>; byDetectionMethod: Record<string, number>; byType: Record<string, number>; falsePositiveRate?: number; totalDependencies: number; }-packages/manifest/src/schema.ts:147
data.statistics.averageConfidencenumber-packages/manifest/src/schema.ts:152
data.statistics.byAccessMethodRecord<string, number>-packages/manifest/src/schema.ts:150
data.statistics.byDetectionMethodRecord<string, number>-packages/manifest/src/schema.ts:151
data.statistics.byTypeRecord<string, number>-packages/manifest/src/schema.ts:149
data.statistics.falsePositiveRate?number-packages/manifest/src/schema.ts:153
data.statistics.totalDependenciesnumber-packages/manifest/src/schema.ts:148
data.version"1.0.0"ManifestVersionSchemapackages/manifest/src/schema.ts:129
error?ValidationError-packages/manifest/src/validator.ts:88
successboolean-packages/manifest/src/validator.ts:86

Released under the MIT License.