deepsource-mcp-server
Version:
Model Context Protocol server for DeepSource
106 lines (98 loc) • 1.91 kB
text/typescript
/**
* @fileoverview Analysis-related models for DeepSource integration.
* @packageDocumentation
*/
import { AnalysisRunStatus } from '../types/analysis.js';
/**
* DeepSource project information
* @public
*/
export interface DeepSourceProject {
id: string;
name: string;
key: string;
defaultBranch: string;
dsn: string;
isPrivate: boolean;
provider: string;
createdAt: string;
updatedAt: string;
}
/**
* DeepSource issue representation
* @public
*/
export interface DeepSourceIssue {
id: string;
title: string;
category: string;
analyzer: string;
severity: string;
occurrences: Array<{
path: string;
beginLine: number;
beginColumn: number;
endLine: number;
endColumn: number;
}>;
}
/**
* Occurrence distribution by analyzer
* @public
*/
export interface OccurrenceDistributionByAnalyzer {
analyzerShortcode: string;
count: number;
}
/**
* Occurrence distribution by category
* @public
*/
export interface OccurrenceDistributionByCategory {
category: string;
count: number;
}
/**
* Run summary statistics
* @public
*/
export interface RunSummary {
issuesIntroduced: number;
issuesResolved: number;
issuesPrevented: number;
issuesFixed: number;
totalIssues: number;
occurrencesIntroduced: number;
occurrencesResolved: number;
occurrencesPrevented: number;
occurrencesFixed: number;
}
/**
* DeepSource analysis run
* @public
*/
export interface DeepSourceRun {
runUid: string;
commitOid: string;
status: AnalysisRunStatus;
summary: RunSummary;
createdAt: string;
analyzers: string[];
branchName?: string;
checks?: Array<{
analyzer: string;
status: string;
issues: {
introduced: number;
resolved: number;
prevented: number;
fixed: number;
total: number;
};
}>;
commitMessage?: string;
author?: {
name: string;
email: string;
};
}