@vibescope/mcp-server 0.4.9 → 0.5.1
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/CHANGELOG.md +84 -84
- package/README.md +194 -194
- package/dist/api-client/tasks.d.ts +1 -0
- package/dist/cli-init.js +21 -21
- package/dist/cli.js +26 -26
- package/dist/handlers/tasks.js +7 -1
- package/dist/handlers/tool-docs.js +1216 -1216
- package/dist/index.js +73 -73
- package/dist/templates/agent-guidelines.d.ts +1 -1
- package/dist/templates/agent-guidelines.js +205 -205
- package/dist/templates/help-content.js +1621 -1621
- package/dist/tools/bodies-of-work.js +6 -6
- package/dist/tools/cloud-agents.js +22 -22
- package/dist/tools/milestones.js +2 -2
- package/dist/tools/requests.js +1 -1
- package/dist/tools/session.js +11 -11
- package/dist/tools/sprints.js +9 -9
- package/dist/tools/tasks.js +43 -35
- package/dist/tools/worktrees.js +14 -14
- package/dist/utils.js +11 -11
- package/docs/TOOLS.md +2687 -2685
- package/package.json +53 -53
- package/scripts/generate-docs.ts +212 -212
- package/scripts/version-bump.ts +203 -203
- package/src/api-client/blockers.ts +86 -86
- package/src/api-client/bodies-of-work.ts +194 -194
- package/src/api-client/chat.ts +50 -50
- package/src/api-client/connectors.ts +152 -152
- package/src/api-client/cost.ts +185 -185
- package/src/api-client/decisions.ts +87 -87
- package/src/api-client/deployment.ts +313 -313
- package/src/api-client/discovery.ts +81 -81
- package/src/api-client/fallback.ts +52 -52
- package/src/api-client/file-checkouts.ts +115 -115
- package/src/api-client/findings.ts +100 -100
- package/src/api-client/git-issues.ts +88 -88
- package/src/api-client/ideas.ts +112 -112
- package/src/api-client/index.ts +592 -592
- package/src/api-client/milestones.ts +83 -83
- package/src/api-client/organizations.ts +185 -185
- package/src/api-client/progress.ts +94 -94
- package/src/api-client/project.ts +181 -181
- package/src/api-client/requests.ts +54 -54
- package/src/api-client/session.ts +220 -220
- package/src/api-client/sprints.ts +227 -227
- package/src/api-client/subtasks.ts +57 -57
- package/src/api-client/tasks.ts +451 -450
- package/src/api-client/types.ts +32 -32
- package/src/api-client/validation.ts +60 -60
- package/src/api-client/worktrees.ts +53 -53
- package/src/api-client.test.ts +847 -847
- package/src/api-client.ts +2728 -2728
- package/src/cli-init.ts +558 -558
- package/src/cli.test.ts +284 -284
- package/src/cli.ts +204 -204
- package/src/handlers/__test-setup__.ts +240 -240
- package/src/handlers/__test-utils__.ts +89 -89
- package/src/handlers/blockers.test.ts +468 -468
- package/src/handlers/blockers.ts +172 -172
- package/src/handlers/bodies-of-work.test.ts +704 -704
- package/src/handlers/bodies-of-work.ts +526 -526
- package/src/handlers/chat.test.ts +185 -185
- package/src/handlers/chat.ts +101 -101
- package/src/handlers/cloud-agents.test.ts +438 -438
- package/src/handlers/cloud-agents.ts +156 -156
- package/src/handlers/connectors.test.ts +834 -834
- package/src/handlers/connectors.ts +229 -229
- package/src/handlers/cost.test.ts +462 -462
- package/src/handlers/cost.ts +285 -285
- package/src/handlers/decisions.test.ts +382 -382
- package/src/handlers/decisions.ts +153 -153
- package/src/handlers/deployment.test.ts +551 -551
- package/src/handlers/deployment.ts +570 -570
- package/src/handlers/discovery.test.ts +206 -206
- package/src/handlers/discovery.ts +433 -433
- package/src/handlers/fallback.test.ts +537 -537
- package/src/handlers/fallback.ts +194 -194
- package/src/handlers/file-checkouts.test.ts +750 -750
- package/src/handlers/file-checkouts.ts +185 -185
- package/src/handlers/findings.test.ts +633 -633
- package/src/handlers/findings.ts +239 -239
- package/src/handlers/git-issues.test.ts +631 -631
- package/src/handlers/git-issues.ts +136 -136
- package/src/handlers/ideas.test.ts +644 -644
- package/src/handlers/ideas.ts +207 -207
- package/src/handlers/index.ts +93 -93
- package/src/handlers/milestones.test.ts +475 -475
- package/src/handlers/milestones.ts +180 -180
- package/src/handlers/organizations.test.ts +826 -826
- package/src/handlers/organizations.ts +315 -315
- package/src/handlers/progress.test.ts +269 -269
- package/src/handlers/progress.ts +77 -77
- package/src/handlers/project.test.ts +546 -546
- package/src/handlers/project.ts +245 -245
- package/src/handlers/requests.test.ts +303 -303
- package/src/handlers/requests.ts +99 -99
- package/src/handlers/roles.test.ts +305 -305
- package/src/handlers/roles.ts +219 -219
- package/src/handlers/session.test.ts +998 -998
- package/src/handlers/session.ts +1105 -1105
- package/src/handlers/sprints.test.ts +732 -732
- package/src/handlers/sprints.ts +537 -537
- package/src/handlers/tasks.test.ts +931 -931
- package/src/handlers/tasks.ts +1144 -1137
- package/src/handlers/tool-categories.test.ts +66 -66
- package/src/handlers/tool-docs.test.ts +511 -511
- package/src/handlers/tool-docs.ts +1595 -1595
- package/src/handlers/types.test.ts +259 -259
- package/src/handlers/types.ts +176 -176
- package/src/handlers/validation.test.ts +582 -582
- package/src/handlers/validation.ts +164 -164
- package/src/handlers/version.ts +63 -63
- package/src/index.test.ts +674 -674
- package/src/index.ts +884 -884
- package/src/setup.test.ts +243 -243
- package/src/setup.ts +410 -410
- package/src/templates/agent-guidelines.ts +233 -233
- package/src/templates/help-content.ts +1751 -1751
- package/src/token-tracking.test.ts +463 -463
- package/src/token-tracking.ts +167 -167
- package/src/tools/blockers.ts +122 -122
- package/src/tools/bodies-of-work.ts +283 -283
- package/src/tools/chat.ts +72 -72
- package/src/tools/cloud-agents.ts +101 -101
- package/src/tools/connectors.ts +191 -191
- package/src/tools/cost.ts +111 -111
- package/src/tools/decisions.ts +111 -111
- package/src/tools/deployment.ts +455 -455
- package/src/tools/discovery.ts +76 -76
- package/src/tools/fallback.ts +111 -111
- package/src/tools/features.ts +154 -154
- package/src/tools/file-checkouts.ts +145 -145
- package/src/tools/findings.ts +101 -101
- package/src/tools/git-issues.ts +130 -130
- package/src/tools/ideas.ts +162 -162
- package/src/tools/index.ts +145 -145
- package/src/tools/milestones.ts +118 -118
- package/src/tools/organizations.ts +224 -224
- package/src/tools/persona-templates.ts +25 -25
- package/src/tools/progress.ts +73 -73
- package/src/tools/project.ts +210 -210
- package/src/tools/requests.ts +68 -68
- package/src/tools/roles.ts +112 -112
- package/src/tools/session.ts +181 -181
- package/src/tools/sprints.ts +298 -298
- package/src/tools/tasks.ts +583 -575
- package/src/tools/tools.test.ts +222 -222
- package/src/tools/types.ts +9 -9
- package/src/tools/validation.ts +75 -75
- package/src/tools/version.ts +34 -34
- package/src/tools/worktrees.ts +66 -66
- package/src/tools.test.ts +416 -416
- package/src/utils.test.ts +1014 -1014
- package/src/utils.ts +586 -586
- package/src/validators.test.ts +223 -223
- package/src/validators.ts +249 -249
- package/src/version.ts +162 -162
- package/tsconfig.json +16 -16
- package/vitest.config.ts +14 -14
package/src/version.ts
CHANGED
|
@@ -1,162 +1,162 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Version checking utilities
|
|
3
|
-
*
|
|
4
|
-
* Compares the locally installed version against the latest published
|
|
5
|
-
* version on npm to detect available updates. Uses a file-based cache
|
|
6
|
-
* (~/.vibescope/version-cache.json) with 1-hour TTL to avoid hitting
|
|
7
|
-
* the npm registry on every startup.
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'fs';
|
|
11
|
-
import { resolve, dirname, join } from 'path';
|
|
12
|
-
import { fileURLToPath } from 'url';
|
|
13
|
-
import { homedir } from 'os';
|
|
14
|
-
|
|
15
|
-
const NPM_REGISTRY_URL = 'https://registry.npmjs.org/@vibescope/mcp-server';
|
|
16
|
-
const PACKAGE_NAME = '@vibescope/mcp-server';
|
|
17
|
-
const CACHE_DIR = join(homedir(), '.vibescope');
|
|
18
|
-
const CACHE_PATH = join(CACHE_DIR, 'version-cache.json');
|
|
19
|
-
const CACHE_TTL_MS = 60 * 60 * 1000; // 1 hour
|
|
20
|
-
|
|
21
|
-
interface VersionCache {
|
|
22
|
-
latestVersion: string;
|
|
23
|
-
fetchedAt: number; // epoch ms
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export interface VersionInfo {
|
|
27
|
-
current: string;
|
|
28
|
-
latest: string | null;
|
|
29
|
-
updateAvailable: boolean;
|
|
30
|
-
error?: string;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* Get the current locally installed version from package.json
|
|
35
|
-
*/
|
|
36
|
-
export function getLocalVersion(): string {
|
|
37
|
-
try {
|
|
38
|
-
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
39
|
-
const pkgPath = resolve(__dirname, '..', 'package.json');
|
|
40
|
-
const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
|
|
41
|
-
return pkg.version;
|
|
42
|
-
} catch {
|
|
43
|
-
return 'unknown';
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* Read version from file-based cache if still valid
|
|
49
|
-
*/
|
|
50
|
-
function readVersionCache(): string | null {
|
|
51
|
-
try {
|
|
52
|
-
if (!existsSync(CACHE_PATH)) return null;
|
|
53
|
-
const raw = JSON.parse(readFileSync(CACHE_PATH, 'utf-8')) as VersionCache;
|
|
54
|
-
if (Date.now() - raw.fetchedAt < CACHE_TTL_MS) {
|
|
55
|
-
return raw.latestVersion;
|
|
56
|
-
}
|
|
57
|
-
return null; // expired
|
|
58
|
-
} catch {
|
|
59
|
-
return null;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* Write version to file-based cache
|
|
65
|
-
*/
|
|
66
|
-
function writeVersionCache(version: string): void {
|
|
67
|
-
try {
|
|
68
|
-
if (!existsSync(CACHE_DIR)) {
|
|
69
|
-
mkdirSync(CACHE_DIR, { recursive: true });
|
|
70
|
-
}
|
|
71
|
-
const cache: VersionCache = { latestVersion: version, fetchedAt: Date.now() };
|
|
72
|
-
writeFileSync(CACHE_PATH, JSON.stringify(cache, null, 2) + '\n');
|
|
73
|
-
} catch {
|
|
74
|
-
// Non-critical — silently ignore write failures
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* Fetch the latest published version from npm registry
|
|
80
|
-
*/
|
|
81
|
-
export async function getLatestVersion(options?: { bypassCache?: boolean }): Promise<string | null> {
|
|
82
|
-
// Check cache first (unless bypassed)
|
|
83
|
-
if (!options?.bypassCache) {
|
|
84
|
-
const cached = readVersionCache();
|
|
85
|
-
if (cached) return cached;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
try {
|
|
89
|
-
const controller = new AbortController();
|
|
90
|
-
const timeout = setTimeout(() => controller.abort(), 3000);
|
|
91
|
-
|
|
92
|
-
const response = await fetch(`${NPM_REGISTRY_URL}/latest`, {
|
|
93
|
-
signal: controller.signal,
|
|
94
|
-
headers: { 'Accept': 'application/json' },
|
|
95
|
-
});
|
|
96
|
-
|
|
97
|
-
clearTimeout(timeout);
|
|
98
|
-
|
|
99
|
-
if (!response.ok) return null;
|
|
100
|
-
|
|
101
|
-
const data = (await response.json()) as { version?: string };
|
|
102
|
-
const version = data.version ?? null;
|
|
103
|
-
|
|
104
|
-
// Write to cache on successful fetch
|
|
105
|
-
if (version) writeVersionCache(version);
|
|
106
|
-
|
|
107
|
-
return version;
|
|
108
|
-
} catch {
|
|
109
|
-
return null;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
/**
|
|
114
|
-
* Compare semver strings. Returns true if latest > current.
|
|
115
|
-
*/
|
|
116
|
-
function isNewer(current: string, latest: string): boolean {
|
|
117
|
-
const parse = (v: string) => v.split('.').map(Number);
|
|
118
|
-
const c = parse(current);
|
|
119
|
-
const l = parse(latest);
|
|
120
|
-
|
|
121
|
-
for (let i = 0; i < 3; i++) {
|
|
122
|
-
if ((l[i] ?? 0) > (c[i] ?? 0)) return true;
|
|
123
|
-
if ((l[i] ?? 0) < (c[i] ?? 0)) return false;
|
|
124
|
-
}
|
|
125
|
-
return false;
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
/**
|
|
129
|
-
* Check if an update is available
|
|
130
|
-
*/
|
|
131
|
-
export async function checkVersion(options?: { bypassCache?: boolean }): Promise<VersionInfo> {
|
|
132
|
-
const current = getLocalVersion();
|
|
133
|
-
const latest = await getLatestVersion(options);
|
|
134
|
-
|
|
135
|
-
if (!latest) {
|
|
136
|
-
return {
|
|
137
|
-
current,
|
|
138
|
-
latest: null,
|
|
139
|
-
updateAvailable: false,
|
|
140
|
-
error: 'Could not reach npm registry to check for updates',
|
|
141
|
-
};
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
return {
|
|
145
|
-
current,
|
|
146
|
-
latest,
|
|
147
|
-
updateAvailable: isNewer(current, latest),
|
|
148
|
-
};
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
/**
|
|
152
|
-
* Get the update warning message for server instructions, or null if up to date
|
|
153
|
-
*/
|
|
154
|
-
export async function getUpdateWarning(): Promise<string | null> {
|
|
155
|
-
const info = await checkVersion();
|
|
156
|
-
|
|
157
|
-
if (info.updateAvailable && info.latest) {
|
|
158
|
-
return `⚠️ UPDATE AVAILABLE: Vibescope MCP server v${info.current} is outdated. Latest version is v${info.latest}. Before starting work, inform the user that an update is available and recommend running the \`check_mcp_version\` tool, or ask them to update with: npm install -g ${PACKAGE_NAME}@latest (or npx @vibescope/mcp-server@latest for auto-update on next run).`;
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
return null;
|
|
162
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* Version checking utilities
|
|
3
|
+
*
|
|
4
|
+
* Compares the locally installed version against the latest published
|
|
5
|
+
* version on npm to detect available updates. Uses a file-based cache
|
|
6
|
+
* (~/.vibescope/version-cache.json) with 1-hour TTL to avoid hitting
|
|
7
|
+
* the npm registry on every startup.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'fs';
|
|
11
|
+
import { resolve, dirname, join } from 'path';
|
|
12
|
+
import { fileURLToPath } from 'url';
|
|
13
|
+
import { homedir } from 'os';
|
|
14
|
+
|
|
15
|
+
const NPM_REGISTRY_URL = 'https://registry.npmjs.org/@vibescope/mcp-server';
|
|
16
|
+
const PACKAGE_NAME = '@vibescope/mcp-server';
|
|
17
|
+
const CACHE_DIR = join(homedir(), '.vibescope');
|
|
18
|
+
const CACHE_PATH = join(CACHE_DIR, 'version-cache.json');
|
|
19
|
+
const CACHE_TTL_MS = 60 * 60 * 1000; // 1 hour
|
|
20
|
+
|
|
21
|
+
interface VersionCache {
|
|
22
|
+
latestVersion: string;
|
|
23
|
+
fetchedAt: number; // epoch ms
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface VersionInfo {
|
|
27
|
+
current: string;
|
|
28
|
+
latest: string | null;
|
|
29
|
+
updateAvailable: boolean;
|
|
30
|
+
error?: string;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Get the current locally installed version from package.json
|
|
35
|
+
*/
|
|
36
|
+
export function getLocalVersion(): string {
|
|
37
|
+
try {
|
|
38
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
39
|
+
const pkgPath = resolve(__dirname, '..', 'package.json');
|
|
40
|
+
const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
|
|
41
|
+
return pkg.version;
|
|
42
|
+
} catch {
|
|
43
|
+
return 'unknown';
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Read version from file-based cache if still valid
|
|
49
|
+
*/
|
|
50
|
+
function readVersionCache(): string | null {
|
|
51
|
+
try {
|
|
52
|
+
if (!existsSync(CACHE_PATH)) return null;
|
|
53
|
+
const raw = JSON.parse(readFileSync(CACHE_PATH, 'utf-8')) as VersionCache;
|
|
54
|
+
if (Date.now() - raw.fetchedAt < CACHE_TTL_MS) {
|
|
55
|
+
return raw.latestVersion;
|
|
56
|
+
}
|
|
57
|
+
return null; // expired
|
|
58
|
+
} catch {
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Write version to file-based cache
|
|
65
|
+
*/
|
|
66
|
+
function writeVersionCache(version: string): void {
|
|
67
|
+
try {
|
|
68
|
+
if (!existsSync(CACHE_DIR)) {
|
|
69
|
+
mkdirSync(CACHE_DIR, { recursive: true });
|
|
70
|
+
}
|
|
71
|
+
const cache: VersionCache = { latestVersion: version, fetchedAt: Date.now() };
|
|
72
|
+
writeFileSync(CACHE_PATH, JSON.stringify(cache, null, 2) + '\n');
|
|
73
|
+
} catch {
|
|
74
|
+
// Non-critical — silently ignore write failures
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Fetch the latest published version from npm registry
|
|
80
|
+
*/
|
|
81
|
+
export async function getLatestVersion(options?: { bypassCache?: boolean }): Promise<string | null> {
|
|
82
|
+
// Check cache first (unless bypassed)
|
|
83
|
+
if (!options?.bypassCache) {
|
|
84
|
+
const cached = readVersionCache();
|
|
85
|
+
if (cached) return cached;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
try {
|
|
89
|
+
const controller = new AbortController();
|
|
90
|
+
const timeout = setTimeout(() => controller.abort(), 3000);
|
|
91
|
+
|
|
92
|
+
const response = await fetch(`${NPM_REGISTRY_URL}/latest`, {
|
|
93
|
+
signal: controller.signal,
|
|
94
|
+
headers: { 'Accept': 'application/json' },
|
|
95
|
+
});
|
|
96
|
+
|
|
97
|
+
clearTimeout(timeout);
|
|
98
|
+
|
|
99
|
+
if (!response.ok) return null;
|
|
100
|
+
|
|
101
|
+
const data = (await response.json()) as { version?: string };
|
|
102
|
+
const version = data.version ?? null;
|
|
103
|
+
|
|
104
|
+
// Write to cache on successful fetch
|
|
105
|
+
if (version) writeVersionCache(version);
|
|
106
|
+
|
|
107
|
+
return version;
|
|
108
|
+
} catch {
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Compare semver strings. Returns true if latest > current.
|
|
115
|
+
*/
|
|
116
|
+
function isNewer(current: string, latest: string): boolean {
|
|
117
|
+
const parse = (v: string) => v.split('.').map(Number);
|
|
118
|
+
const c = parse(current);
|
|
119
|
+
const l = parse(latest);
|
|
120
|
+
|
|
121
|
+
for (let i = 0; i < 3; i++) {
|
|
122
|
+
if ((l[i] ?? 0) > (c[i] ?? 0)) return true;
|
|
123
|
+
if ((l[i] ?? 0) < (c[i] ?? 0)) return false;
|
|
124
|
+
}
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* Check if an update is available
|
|
130
|
+
*/
|
|
131
|
+
export async function checkVersion(options?: { bypassCache?: boolean }): Promise<VersionInfo> {
|
|
132
|
+
const current = getLocalVersion();
|
|
133
|
+
const latest = await getLatestVersion(options);
|
|
134
|
+
|
|
135
|
+
if (!latest) {
|
|
136
|
+
return {
|
|
137
|
+
current,
|
|
138
|
+
latest: null,
|
|
139
|
+
updateAvailable: false,
|
|
140
|
+
error: 'Could not reach npm registry to check for updates',
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
return {
|
|
145
|
+
current,
|
|
146
|
+
latest,
|
|
147
|
+
updateAvailable: isNewer(current, latest),
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
/**
|
|
152
|
+
* Get the update warning message for server instructions, or null if up to date
|
|
153
|
+
*/
|
|
154
|
+
export async function getUpdateWarning(): Promise<string | null> {
|
|
155
|
+
const info = await checkVersion();
|
|
156
|
+
|
|
157
|
+
if (info.updateAvailable && info.latest) {
|
|
158
|
+
return `⚠️ UPDATE AVAILABLE: Vibescope MCP server v${info.current} is outdated. Latest version is v${info.latest}. Before starting work, inform the user that an update is available and recommend running the \`check_mcp_version\` tool, or ask them to update with: npm install -g ${PACKAGE_NAME}@latest (or npx @vibescope/mcp-server@latest for auto-update on next run).`;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
return null;
|
|
162
|
+
}
|
package/tsconfig.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"target": "ES2022",
|
|
4
|
-
"module": "NodeNext",
|
|
5
|
-
"moduleResolution": "NodeNext",
|
|
6
|
-
"declaration": true,
|
|
7
|
-
"outDir": "./dist",
|
|
8
|
-
"rootDir": "./src",
|
|
9
|
-
"strict": true,
|
|
10
|
-
"esModuleInterop": true,
|
|
11
|
-
"skipLibCheck": true,
|
|
12
|
-
"forceConsistentCasingInFileNames": true
|
|
13
|
-
},
|
|
14
|
-
"include": ["src/**/*"],
|
|
15
|
-
"exclude": ["node_modules", "dist", "**/*.test.ts", "**/__test-*.ts", "src/handlers/checkouts.ts", "src/handlers/knowledge-query.ts", "src/handlers/roles.ts"]
|
|
16
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ES2022",
|
|
4
|
+
"module": "NodeNext",
|
|
5
|
+
"moduleResolution": "NodeNext",
|
|
6
|
+
"declaration": true,
|
|
7
|
+
"outDir": "./dist",
|
|
8
|
+
"rootDir": "./src",
|
|
9
|
+
"strict": true,
|
|
10
|
+
"esModuleInterop": true,
|
|
11
|
+
"skipLibCheck": true,
|
|
12
|
+
"forceConsistentCasingInFileNames": true
|
|
13
|
+
},
|
|
14
|
+
"include": ["src/**/*"],
|
|
15
|
+
"exclude": ["node_modules", "dist", "**/*.test.ts", "**/__test-*.ts", "src/handlers/checkouts.ts", "src/handlers/knowledge-query.ts", "src/handlers/roles.ts"]
|
|
16
|
+
}
|
package/vitest.config.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { defineConfig } from 'vitest/config';
|
|
2
|
-
|
|
3
|
-
export default defineConfig({
|
|
4
|
-
test: {
|
|
5
|
-
globals: true,
|
|
6
|
-
environment: 'node',
|
|
7
|
-
include: ['src/**/*.test.ts'],
|
|
8
|
-
setupFiles: ['./src/handlers/__test-setup__.ts'],
|
|
9
|
-
coverage: {
|
|
10
|
-
provider: 'v8',
|
|
11
|
-
reporter: ['text', 'json', 'html'],
|
|
12
|
-
},
|
|
13
|
-
},
|
|
14
|
-
});
|
|
1
|
+
import { defineConfig } from 'vitest/config';
|
|
2
|
+
|
|
3
|
+
export default defineConfig({
|
|
4
|
+
test: {
|
|
5
|
+
globals: true,
|
|
6
|
+
environment: 'node',
|
|
7
|
+
include: ['src/**/*.test.ts'],
|
|
8
|
+
setupFiles: ['./src/handlers/__test-setup__.ts'],
|
|
9
|
+
coverage: {
|
|
10
|
+
provider: 'v8',
|
|
11
|
+
reporter: ['text', 'json', 'html'],
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
});
|