@liuhange/dsh-data-quality-scoring 2.0.0 → 2.0.2

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/package.json CHANGED
@@ -1,39 +1,53 @@
1
- {
2
- "name": "@liuhange/dsh-data-quality-scoring",
3
- "description": "Data quality scoring plugin: multi-dimensional scoring (completeness/accuracy/consistency/timeliness) with weighted total and improvement suggestions",
4
- "version": "2.0.0",
5
- "publishConfig": {
6
- "access": "public"
7
- },
8
- "repository": {
9
- "type": "git",
10
- "url": "git+https://github.com/liuhange789/data-asset-inspector.git",
11
- "directory": "packages/data-asset/data-quality-scoring"
12
- },
13
- "type": "module",
14
- "main": "lib/index.js",
15
- "types": "lib/types/index.d.ts",
16
- "exports": {
17
- ".": {
18
- "types": "./lib/types/index.d.ts",
19
- "default": "./lib/index.js"
20
- },
21
- "./invariant": {
22
- "types": "./lib/types/invariant.d.ts",
23
- "default": "./lib/invariant.js"
24
- },
25
- "./src/*": "./src/*",
26
- "./package.json": "./package.json"
27
- },
28
- "files": [
29
- "lib/index.js",
30
- "lib/invariant.js",
31
- "lib/types/**/*.d.ts"
32
- ],
33
- "license": "MIT",
34
- "peerDependencies": {
35
- "@deepseek-ai/cordis": "^0.1.0",
36
- "@deepseek-ai/dsh-tools": "^0.1.0",
37
- "@liuhange/dsh-data-asset-shared": "^2.0.0"
38
- }
39
- }
1
+ {
2
+ "name": "@liuhange/dsh-data-quality-scoring",
3
+ "description": "Data quality scoring plugin: multi-dimensional scoring (completeness/accuracy/consistency/timeliness) with weighted total and improvement suggestions Also known as @deepseek-ai/dsh-data-quality-scoring.",
4
+ "version": "2.0.2",
5
+ "publishConfig": {
6
+ "access": "public"
7
+ },
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/liuhange789/data-asset-inspector.git",
11
+ "directory": "packages/data-asset/data-quality-scoring"
12
+ },
13
+ "type": "module",
14
+ "main": "lib/index.js",
15
+ "types": "lib/types/index.d.ts",
16
+ "exports": {
17
+ ".": {
18
+ "types": "./lib/types/index.d.ts",
19
+ "default": "./lib/index.js"
20
+ },
21
+ "./invariant": {
22
+ "types": "./lib/types/invariant.d.ts",
23
+ "default": "./lib/invariant.js"
24
+ },
25
+ "./src/*": "./src/*",
26
+ "./package.json": "./package.json"
27
+ },
28
+ "files": [
29
+ "lib/index.js",
30
+ "lib/invariant.js",
31
+ "lib/types/**/*.d.ts"
32
+ ],
33
+ "license": "MIT",
34
+ "scripts": {
35
+ "typecheck": "tsc --noEmit",
36
+ "test": "vitest run",
37
+ "build": "tsc"
38
+ },
39
+ "peerDependencies": {
40
+ "@deepseek-ai/cordis": "^4.0.0",
41
+ "@deepseek-ai/dsh-tools": "0.0.1-rc.1",
42
+ "@liuhange/dsh-data-asset-shared": "^2.0.0"
43
+ },
44
+ "keywords": [
45
+ "deepseek-harness",
46
+ "dsh-plugin",
47
+ "data-asset",
48
+ "data-asset-inspector",
49
+ "shujintong",
50
+ "数据资产"
51
+ ],
52
+ "homepage": "https://github.com/liuhange789/data-asset-inspector#readme"
53
+ }
@@ -1,5 +0,0 @@
1
- import type { ScoringContext, DimensionScoringResult } from './types.js';
2
- export declare class AccuracyScorer {
3
- score(context: ScoringContext): DimensionScoringResult;
4
- }
5
- //# sourceMappingURL=accuracyScorer.d.ts.map
@@ -1,6 +0,0 @@
1
- import type { ScoringContext, DimensionScoringResult } from './types.js';
2
- export declare class CompletenessScorer {
3
- score(context: ScoringContext): DimensionScoringResult;
4
- private isMissing;
5
- }
6
- //# sourceMappingURL=completenessScorer.d.ts.map
@@ -1,6 +0,0 @@
1
- import type { ScoringContext, DimensionScoringResult } from './types.js';
2
- export declare class ConsistencyScorer {
3
- score(context: ScoringContext): DimensionScoringResult;
4
- private checkConstraint;
5
- }
6
- //# sourceMappingURL=consistencyScorer.d.ts.map
@@ -1,3 +0,0 @@
1
- import type { QualityScoringConfig } from '@liuhange/dsh-data-asset-shared';
2
- export declare const defaultScoringRules: QualityScoringConfig;
3
- //# sourceMappingURL=defaultScoringRules.d.ts.map
@@ -1,5 +0,0 @@
1
- import type { Context } from '@deepseek-ai/cordis';
2
- export declare const name = "data-quality-scoring";
3
- export declare const inject: string[];
4
- export declare function apply(ctx: Context): void;
5
- //# sourceMappingURL=index.d.ts.map
@@ -1,3 +0,0 @@
1
- export declare const invariant = "data-quality-scoring";
2
- export declare function install(): void;
3
- //# sourceMappingURL=invariant.d.ts.map
@@ -1,5 +0,0 @@
1
- import type { DimensionScoringResult, QualityIssue } from './types.js';
2
- export declare class IssueCollector {
3
- collect(dimensionResults: DimensionScoringResult[]): QualityIssue[];
4
- }
5
- //# sourceMappingURL=issueCollector.d.ts.map
@@ -1,6 +0,0 @@
1
- import type { QualityScoringResult } from './types.js';
2
- export declare class QualityReportGenerator {
3
- writeJson(filePath: string, result: QualityScoringResult): Promise<void>;
4
- writeMarkdown(filePath: string, result: QualityScoringResult): Promise<void>;
5
- }
6
- //# sourceMappingURL=qualityReportGenerator.d.ts.map
@@ -1,6 +0,0 @@
1
- import type { QualityDimensions } from './types.js';
2
- import type { QualityScoringConfig } from '@liuhange/dsh-data-asset-shared';
3
- export declare class SuggestionGenerator {
4
- generate(dimensions: QualityDimensions, thresholds: QualityScoringConfig['thresholds']): string[];
5
- }
6
- //# sourceMappingURL=suggestionGenerator.d.ts.map
@@ -1,5 +0,0 @@
1
- import type { ScoringContext, DimensionScoringResult } from './types.js';
2
- export declare class TimelinessScorer {
3
- score(context: ScoringContext): DimensionScoringResult;
4
- }
5
- //# sourceMappingURL=timelinessScorer.d.ts.map
@@ -1,54 +0,0 @@
1
- export type QualityDimension = 'completeness' | 'accuracy' | 'consistency' | 'timeliness';
2
- export type IssueSeverity = 'low' | 'medium' | 'high';
3
- export interface ScoreDataQualityParams {
4
- filePath: string;
5
- outputPathDir?: string;
6
- }
7
- export interface QualityIssue {
8
- dimension: QualityDimension;
9
- description: string;
10
- location: string;
11
- severity: IssueSeverity;
12
- }
13
- export interface DimensionScore {
14
- score: number;
15
- weight: number;
16
- weightNormalized: number;
17
- subScores?: Record<string, number>;
18
- issues: QualityIssue[];
19
- suggestion?: string;
20
- }
21
- export interface QualityDimensions {
22
- completeness: DimensionScore;
23
- accuracy: DimensionScore;
24
- consistency: DimensionScore;
25
- timeliness: DimensionScore;
26
- }
27
- export interface QualityScoringResult {
28
- totalScore: number;
29
- dimensions: QualityDimensions;
30
- issues: QualityIssue[];
31
- suggestions: string[];
32
- weightsNormalized: boolean;
33
- scoredAt: string;
34
- }
35
- export interface ScoreDataQualityResult {
36
- jsonReportPath: string;
37
- markdownReportPath: string;
38
- report: QualityScoringResult;
39
- totalScore: number;
40
- dimensions: QualityDimensions;
41
- status: 'SUCCESS' | 'FAILED';
42
- configStatus: string;
43
- }
44
- export interface ScoringContext {
45
- records: Record<string, unknown>[];
46
- fieldNames: string[];
47
- config: unknown;
48
- }
49
- export interface DimensionScoringResult {
50
- score: number;
51
- issues: QualityIssue[];
52
- subScores?: Record<string, number>;
53
- }
54
- //# sourceMappingURL=types.d.ts.map
@@ -1,10 +0,0 @@
1
- import type { QualityDimensions } from './types.js';
2
- import type { QualityScoringConfig } from '@liuhange/dsh-data-asset-shared';
3
- export declare class WeightedScoreCalculator {
4
- calculate(dimensions: QualityDimensions, weights: QualityScoringConfig['weights']): {
5
- totalScore: number;
6
- weightsNormalized: boolean;
7
- normalizedWeights: QualityScoringConfig['weights'];
8
- };
9
- }
10
- //# sourceMappingURL=weightedScoreCalculator.d.ts.map