@aiready/doc-drift 0.14.16 → 0.14.18

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.
@@ -1,6 +1,6 @@
1
1
 
2
2
  
3
- > @aiready/doc-drift@0.14.15 build /Users/pengcao/projects/aiready/packages/doc-drift
3
+ > @aiready/doc-drift@0.14.17 build /Users/pengcao/projects/aiready/packages/doc-drift
4
4
  > tsup src/index.ts src/cli.ts --format cjs,esm --dts
5
5
 
6
6
  CLI Building entry: src/cli.ts, src/index.ts
@@ -9,15 +9,15 @@
9
9
  CLI Target: es2020
10
10
  CJS Build start
11
11
  ESM Build start
12
- CJS dist/index.js 9.11 KB
13
12
  CJS dist/cli.js 9.79 KB
14
- CJS ⚡️ Build success in 286ms
15
- ESM dist/cli.mjs 1.07 KB
13
+ CJS dist/index.js 9.11 KB
14
+ CJS ⚡️ Build success in 68ms
16
15
  ESM dist/index.mjs 989.00 B
16
+ ESM dist/cli.mjs 1.07 KB
17
17
  ESM dist/chunk-IQBAXGOK.mjs 7.48 KB
18
- ESM ⚡️ Build success in 287ms
18
+ ESM ⚡️ Build success in 67ms
19
19
  DTS Build start
20
- DTS ⚡️ Build success in 3510ms
20
+ DTS ⚡️ Build success in 1375ms
21
21
  DTS dist/cli.d.ts 108.00 B
22
22
  DTS dist/index.d.ts 2.09 KB
23
23
  DTS dist/cli.d.mts 108.00 B
@@ -1,7 +1,7 @@
1
1
 
2
2
  
3
- > @aiready/doc-drift@0.14.15 format-check /Users/pengcao/projects/aiready/packages/doc-drift
3
+ > @aiready/doc-drift@0.14.16 format-check /Users/pengcao/projects/aiready/packages/doc-drift
4
4
  > prettier --check . --ignore-path ../../.prettierignore
5
5
 
6
6
  Checking formatting...
7
- package.jsonREADME.mdsrc/__tests__/analyzer.test.tssrc/__tests__/provider.test.tssrc/__tests__/scoring.test.tssrc/analyzer.tssrc/cli.tssrc/constants.tssrc/heuristics.tssrc/index.tssrc/provider.tssrc/scoring.tssrc/types.tstsconfig.jsonAll matched files use Prettier code style!
7
+ package.jsonREADME.mdsrc/__tests__/analyzer.test.tssrc/__tests__/contract.test.tssrc/__tests__/provider.test.tssrc/__tests__/scoring.test.tssrc/analyzer.tssrc/cli.tssrc/constants.tssrc/heuristics.tssrc/index.tssrc/provider.tssrc/scoring.tssrc/types.tstsconfig.jsonAll matched files use Prettier code style!
@@ -1,5 +1,5 @@
1
1
 
2
2
  
3
- > @aiready/doc-drift@0.14.15 lint /Users/pengcao/projects/aiready/packages/doc-drift
3
+ > @aiready/doc-drift@0.14.16 lint /Users/pengcao/projects/aiready/packages/doc-drift
4
4
  > eslint src --ext .ts
5
5
 
@@ -1,51 +1,64 @@
1
1
 
2
2
  
3
- > @aiready/doc-drift@0.14.15 test /Users/pengcao/projects/aiready/packages/doc-drift
3
+ > @aiready/doc-drift@0.14.17 test /Users/pengcao/projects/aiready/packages/doc-drift
4
4
  > vitest run
5
5
 
6
6
  [?25l
7
-  RUN  v4.0.18 /Users/pengcao/projects/aiready/packages/doc-drift
7
+  RUN  v4.1.2 /Users/pengcao/projects/aiready/packages/doc-drift
8
8
 
9
9
  [?2026h
10
10
   ❯ src/__tests__/analyzer.test.ts [queued]
11
11
 
12
-  Test Files 0 passed (3)
12
+  Test Files 0 passed (4)
13
13
   Tests 0 passed (0)
14
-  Start at 23:35:29
15
-  Duration 213ms
14
+  Start at 19:25:18
15
+  Duration 355ms
16
16
  [?2026l[?2026h
17
17
   ❯ src/__tests__/analyzer.test.ts [queued]
18
-  ❯ src/__tests__/provider.test.ts [queued]
18
+  ❯ src/__tests__/contract.test.ts [queued]
19
19
   ❯ src/__tests__/scoring.test.ts [queued]
20
20
 
21
-  Test Files 0 passed (3)
21
+  Test Files 0 passed (4)
22
22
   Tests 0 passed (0)
23
-  Start at 23:35:29
24
-  Duration 1.01s
23
+  Start at 19:25:18
24
+  Duration 455ms
25
25
  [?2026l[?2026h
26
26
   ❯ src/__tests__/analyzer.test.ts [queued]
27
+  ❯ src/__tests__/contract.test.ts [queued]
28
+  ❯ src/__tests__/provider.test.ts [queued]
29
+  ❯ src/__tests__/scoring.test.ts [queued]
30
+
31
+  Test Files 0 passed (4)
32
+  Tests 0 passed (0)
33
+  Start at 19:25:18
34
+  Duration 987ms
35
+ [?2026l[?2026h
36
+  ❯ src/__tests__/analyzer.test.ts [queued]
37
+  ❯ src/__tests__/contract.test.ts [queued]
27
38
   ❯ src/__tests__/provider.test.ts [queued]
28
39
   ❯ src/__tests__/scoring.test.ts 0/2
29
40
 
30
-  Test Files 0 passed (3)
41
+  Test Files 0 passed (4)
31
42
   Tests 0 passed (2)
32
-  Start at 23:35:29
33
-  Duration 1.31s
34
- [?2026l[?2026h ✓ src/__tests__/scoring.test.ts (2 tests) 2ms
35
- ✓ src/__tests__/provider.test.ts (2 tests) 5ms
43
+  Start at 19:25:18
44
+  Duration 1.40s
45
+ [?2026l[?2026h ✓ src/__tests__/scoring.test.ts (2 tests) 2ms
46
+ ✓ src/__tests__/analyzer.test.ts (1 test) 44ms
36
47
 
37
48
 
38
-  ❯ src/__tests__/analyzer.test.ts 1/1
49
+  ❯ src/__tests__/contract.test.ts 0/1
50
+  ❯ src/__tests__/provider.test.ts [queued]
39
51
 
40
-  Test Files 2 passed (3)
41
-  Tests 5 passed (5)
42
-  Start at 23:35:29
43
-  Duration 1.41s
44
- [?2026l ✓ src/__tests__/analyzer.test.ts (1 test) 40ms
52
+  Test Files 2 passed (4)
53
+  Tests 3 passed (4)
54
+  Start at 19:25:18
55
+  Duration 1.60s
56
+ [?2026l ✓ src/__tests__/contract.test.ts (1 test) 11ms
57
+ ✓ src/__tests__/provider.test.ts (2 tests) 5ms
45
58
 
46
-  Test Files  3 passed (3)
47
-  Tests  5 passed (5)
48
-  Start at  23:35:29
49
-  Duration  1.51s (transform 823ms, setup 0ms, import 3.20s, tests 47ms, environment 0ms)
59
+  Test Files  4 passed (4)
60
+  Tests  6 passed (6)
61
+  Start at  19:25:18
62
+  Duration  1.75s (transform 1.92s, setup 0ms, import 4.64s, tests 61ms, environment 0ms)
50
63
 
51
64
  [?25h
@@ -1,5 +1,5 @@
1
1
 
2
2
  
3
- > @aiready/doc-drift@0.14.15 type-check /Users/pengcao/projects/aiready/packages/doc-drift
3
+ > @aiready/doc-drift@0.14.16 type-check /Users/pengcao/projects/aiready/packages/doc-drift
4
4
  > tsc --noEmit
5
5
 
package/package.json CHANGED
@@ -1,23 +1,23 @@
1
1
  {
2
2
  "name": "@aiready/doc-drift",
3
- "version": "0.14.16",
3
+ "version": "0.14.18",
4
4
  "description": "AI-Readiness: Documentation Drift Detection",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
7
7
  "types": "dist/index.d.ts",
8
8
  "dependencies": {
9
- "@typescript-eslint/typescript-estree": "^8.0.0",
10
- "commander": "^14.0.0",
11
- "glob": "^13.0.0",
12
- "picocolors": "^1.0.0",
13
- "@aiready/core": "0.24.19"
9
+ "@typescript-eslint/typescript-estree": "^8.58.0",
10
+ "commander": "^14.0.3",
11
+ "glob": "^13.0.6",
12
+ "picocolors": "^1.1.1",
13
+ "@aiready/core": "0.24.21"
14
14
  },
15
15
  "devDependencies": {
16
- "@types/node": "^24.0.0",
17
- "@typescript-eslint/types": "^8.0.0",
18
- "tsup": "^8.0.2",
19
- "typescript": "^5.4.5",
20
- "vitest": "^4.0.0"
16
+ "@types/node": "^24.12.2",
17
+ "@typescript-eslint/types": "^8.58.0",
18
+ "tsup": "^8.5.1",
19
+ "typescript": "^6.0.2",
20
+ "vitest": "^4.1.2"
21
21
  },
22
22
  "exports": {
23
23
  ".": {
@@ -35,6 +35,7 @@
35
35
  "type-check": "tsc --noEmit",
36
36
  "format-check": "prettier --check . --ignore-path ../../.prettierignore",
37
37
  "format": "prettier --write . --ignore-path ../../.prettierignore",
38
- "lint:fix": "eslint . --fix"
38
+ "lint:fix": "eslint . --fix",
39
+ "test:coverage": "vitest run --coverage"
39
40
  }
40
41
  }
@@ -0,0 +1,48 @@
1
+ import { describe, it, expect, vi } from 'vitest';
2
+ import { DOC_DRIFT_PROVIDER } from '../provider';
3
+ import { validateSpokeOutput } from '@aiready/core';
4
+
5
+ // Mock core functions to avoid actual FS access
6
+ vi.mock('@aiready/core', async (importOriginal) => {
7
+ const actual = await importOriginal<typeof import('@aiready/core')>();
8
+ return {
9
+ ...actual,
10
+ scanFiles: vi.fn().mockResolvedValue(['file1.ts']),
11
+ readFileContent: vi.fn().mockImplementation((file) => {
12
+ if (file === 'file1.ts') {
13
+ return `
14
+ /**
15
+ * Test function
16
+ * @param a Some param
17
+ */
18
+ export function test(a: number) { return a; }
19
+ `;
20
+ }
21
+ return '';
22
+ }),
23
+ };
24
+ });
25
+
26
+ describe('Doc Drift Contract Validation', () => {
27
+ it('should produce output matching the SpokeOutput contract', async () => {
28
+ const options = {
29
+ rootDir: './test',
30
+ };
31
+
32
+ const output = await DOC_DRIFT_PROVIDER.analyze(options);
33
+
34
+ // 1. Structural Validation
35
+ const validation = validateSpokeOutput('doc-drift', output);
36
+ if (!validation.valid) {
37
+ console.error('Contract Validation Errors:', validation.errors);
38
+ }
39
+ expect(validation.valid).toBe(true);
40
+
41
+ // 2. Scoring Validation
42
+ const score = DOC_DRIFT_PROVIDER.score(output, options);
43
+ expect(score).toBeDefined();
44
+ expect(typeof score.score).toBe('number');
45
+ expect(score.score).toBeGreaterThanOrEqual(0);
46
+ expect(score.score).toBeLessThanOrEqual(100);
47
+ });
48
+ });
package/tsconfig.json CHANGED
@@ -2,7 +2,8 @@
2
2
  "extends": "../../tsconfig.json",
3
3
  "compilerOptions": {
4
4
  "outDir": "dist",
5
- "rootDir": "src"
5
+ "rootDir": "src",
6
+ "ignoreDeprecations": "6.0"
6
7
  },
7
8
  "include": ["src/**/*"]
8
9
  }