specforge-mcp 0.1.1 → 0.2.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/README.md +31 -1
- package/dist/config/version.d.ts +2 -0
- package/dist/config/version.d.ts.map +1 -0
- package/dist/config/version.js +9 -0
- package/dist/config/version.js.map +1 -0
- package/dist/config/version.ts +11 -0
- package/dist/engine/detectors/library-detector-langs2.d.ts.map +1 -1
- package/dist/engine/detectors/library-detector-langs2.js.map +1 -1
- package/dist/engine/mermaid-generator.d.ts.map +1 -1
- package/dist/engine/mermaid-generator.js +12 -2
- package/dist/engine/mermaid-generator.js.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/tools/create-spec-hu/hu-body-generators.d.ts.map +1 -1
- package/dist/tools/create-spec-hu/hu-body-generators.js +7 -1
- package/dist/tools/create-spec-hu/hu-body-generators.js.map +1 -1
- package/dist/tools/create-spec-tech/ficha-content.d.ts.map +1 -1
- package/dist/tools/create-spec-tech/ficha-content.js +4 -2
- package/dist/tools/create-spec-tech/ficha-content.js.map +1 -1
- package/dist/tools/create-spec.d.ts.map +1 -1
- package/dist/tools/create-spec.js +4 -3
- package/dist/tools/create-spec.js.map +1 -1
- package/dist/tools/register-spec-tools/core-spec-tools.d.ts.map +1 -1
- package/dist/tools/register-spec-tools/core-spec-tools.js +4 -0
- package/dist/tools/register-spec-tools/core-spec-tools.js.map +1 -1
- package/dist/types/spec/core.d.ts +1 -0
- package/dist/types/spec/core.d.ts.map +1 -1
- package/dist/types/spec/inputs.d.ts +1 -0
- package/dist/types/spec/inputs.d.ts.map +1 -1
- package/package.json +27 -18
- package/src/config/version.ts +11 -0
- package/dist/engine/agent-generator.test.d.ts +0 -2
- package/dist/engine/agent-generator.test.d.ts.map +0 -1
- package/dist/engine/agent-generator.test.js +0 -556
- package/dist/engine/agent-generator.test.js.map +0 -1
- package/dist/engine/analyzer.test.d.ts +0 -2
- package/dist/engine/analyzer.test.d.ts.map +0 -1
- package/dist/engine/analyzer.test.js +0 -1461
- package/dist/engine/analyzer.test.js.map +0 -1
- package/dist/engine/auditor.test.d.ts +0 -2
- package/dist/engine/auditor.test.d.ts.map +0 -1
- package/dist/engine/auditor.test.js +0 -2075
- package/dist/engine/auditor.test.js.map +0 -1
- package/dist/engine/doc-generator.test.d.ts +0 -2
- package/dist/engine/doc-generator.test.d.ts.map +0 -1
- package/dist/engine/doc-generator.test.js +0 -961
- package/dist/engine/doc-generator.test.js.map +0 -1
- package/dist/engine/estimator.test.d.ts +0 -2
- package/dist/engine/estimator.test.d.ts.map +0 -1
- package/dist/engine/estimator.test.js +0 -334
- package/dist/engine/estimator.test.js.map +0 -1
- package/dist/engine/skill-generator.test.d.ts +0 -2
- package/dist/engine/skill-generator.test.d.ts.map +0 -1
- package/dist/engine/skill-generator.test.js +0 -742
- package/dist/engine/skill-generator.test.js.map +0 -1
- package/dist/engine/validator.test.d.ts +0 -2
- package/dist/engine/validator.test.d.ts.map +0 -1
- package/dist/engine/validator.test.js +0 -2371
- package/dist/engine/validator.test.js.map +0 -1
- package/dist/engine/web-fetcher.test.d.ts +0 -2
- package/dist/engine/web-fetcher.test.d.ts.map +0 -1
- package/dist/engine/web-fetcher.test.js +0 -360
- package/dist/engine/web-fetcher.test.js.map +0 -1
- package/dist/i18n/index.test.d.ts +0 -2
- package/dist/i18n/index.test.d.ts.map +0 -1
- package/dist/i18n/index.test.js +0 -375
- package/dist/i18n/index.test.js.map +0 -1
- package/dist/index.test.d.ts +0 -2
- package/dist/index.test.d.ts.map +0 -1
- package/dist/index.test.js +0 -124
- package/dist/index.test.js.map +0 -1
- package/dist/resources/patterns.test.d.ts +0 -2
- package/dist/resources/patterns.test.d.ts.map +0 -1
- package/dist/resources/patterns.test.js +0 -142
- package/dist/resources/patterns.test.js.map +0 -1
- package/dist/resources/process.test.d.ts +0 -2
- package/dist/resources/process.test.d.ts.map +0 -1
- package/dist/resources/process.test.js +0 -48
- package/dist/resources/process.test.js.map +0 -1
- package/dist/resources/registry.test.d.ts +0 -2
- package/dist/resources/registry.test.d.ts.map +0 -1
- package/dist/resources/registry.test.js +0 -138
- package/dist/resources/registry.test.js.map +0 -1
- package/dist/resources/specs.test.d.ts +0 -2
- package/dist/resources/specs.test.d.ts.map +0 -1
- package/dist/resources/specs.test.js +0 -130
- package/dist/resources/specs.test.js.map +0 -1
- package/dist/resources/templates.test.d.ts +0 -2
- package/dist/resources/templates.test.d.ts.map +0 -1
- package/dist/resources/templates.test.js +0 -119
- package/dist/resources/templates.test.js.map +0 -1
- package/dist/smoke.test.d.ts +0 -2
- package/dist/smoke.test.d.ts.map +0 -1
- package/dist/smoke.test.js +0 -229
- package/dist/smoke.test.js.map +0 -1
- package/dist/storage/base-store.test.d.ts +0 -2
- package/dist/storage/base-store.test.d.ts.map +0 -1
- package/dist/storage/base-store.test.js +0 -180
- package/dist/storage/base-store.test.js.map +0 -1
- package/dist/storage/global-store.test.d.ts +0 -2
- package/dist/storage/global-store.test.d.ts.map +0 -1
- package/dist/storage/global-store.test.js +0 -327
- package/dist/storage/global-store.test.js.map +0 -1
- package/dist/storage/index.test.d.ts +0 -2
- package/dist/storage/index.test.d.ts.map +0 -1
- package/dist/storage/index.test.js +0 -56
- package/dist/storage/index.test.js.map +0 -1
- package/dist/storage/knowledge-store.test.d.ts +0 -2
- package/dist/storage/knowledge-store.test.d.ts.map +0 -1
- package/dist/storage/knowledge-store.test.js +0 -368
- package/dist/storage/knowledge-store.test.js.map +0 -1
- package/dist/storage/metrics-store.test.d.ts +0 -2
- package/dist/storage/metrics-store.test.d.ts.map +0 -1
- package/dist/storage/metrics-store.test.js +0 -212
- package/dist/storage/metrics-store.test.js.map +0 -1
- package/dist/storage/pattern-store.test.d.ts +0 -2
- package/dist/storage/pattern-store.test.d.ts.map +0 -1
- package/dist/storage/pattern-store.test.js +0 -224
- package/dist/storage/pattern-store.test.js.map +0 -1
- package/dist/storage/spec-store.test.d.ts +0 -2
- package/dist/storage/spec-store.test.d.ts.map +0 -1
- package/dist/storage/spec-store.test.js +0 -227
- package/dist/storage/spec-store.test.js.map +0 -1
- package/dist/tools/audit.test.d.ts +0 -2
- package/dist/tools/audit.test.d.ts.map +0 -1
- package/dist/tools/audit.test.js +0 -169
- package/dist/tools/audit.test.js.map +0 -1
- package/dist/tools/challenge-spec.test.d.ts +0 -2
- package/dist/tools/challenge-spec.test.d.ts.map +0 -1
- package/dist/tools/challenge-spec.test.js +0 -782
- package/dist/tools/challenge-spec.test.js.map +0 -1
- package/dist/tools/check-versions.test.d.ts +0 -2
- package/dist/tools/check-versions.test.d.ts.map +0 -1
- package/dist/tools/check-versions.test.js +0 -214
- package/dist/tools/check-versions.test.js.map +0 -1
- package/dist/tools/clarify-requirements.test.d.ts +0 -2
- package/dist/tools/clarify-requirements.test.d.ts.map +0 -1
- package/dist/tools/clarify-requirements.test.js +0 -161
- package/dist/tools/clarify-requirements.test.js.map +0 -1
- package/dist/tools/consult-docs.test.d.ts +0 -2
- package/dist/tools/consult-docs.test.d.ts.map +0 -1
- package/dist/tools/consult-docs.test.js +0 -140
- package/dist/tools/consult-docs.test.js.map +0 -1
- package/dist/tools/create-spec.test.d.ts +0 -2
- package/dist/tools/create-spec.test.d.ts.map +0 -1
- package/dist/tools/create-spec.test.js +0 -233
- package/dist/tools/create-spec.test.js.map +0 -1
- package/dist/tools/define-ui-contract.test.d.ts +0 -2
- package/dist/tools/define-ui-contract.test.d.ts.map +0 -1
- package/dist/tools/define-ui-contract.test.js +0 -479
- package/dist/tools/define-ui-contract.test.js.map +0 -1
- package/dist/tools/design-schema.test.d.ts +0 -2
- package/dist/tools/design-schema.test.d.ts.map +0 -1
- package/dist/tools/design-schema.test.js +0 -301
- package/dist/tools/design-schema.test.js.map +0 -1
- package/dist/tools/detect-agent.test.d.ts +0 -2
- package/dist/tools/detect-agent.test.d.ts.map +0 -1
- package/dist/tools/detect-agent.test.js +0 -133
- package/dist/tools/detect-agent.test.js.map +0 -1
- package/dist/tools/detect-drift.test.d.ts +0 -2
- package/dist/tools/detect-drift.test.d.ts.map +0 -1
- package/dist/tools/detect-drift.test.js +0 -312
- package/dist/tools/detect-drift.test.js.map +0 -1
- package/dist/tools/discover-mcps.test.d.ts +0 -2
- package/dist/tools/discover-mcps.test.d.ts.map +0 -1
- package/dist/tools/discover-mcps.test.js +0 -345
- package/dist/tools/discover-mcps.test.js.map +0 -1
- package/dist/tools/estimate.test.d.ts +0 -2
- package/dist/tools/estimate.test.d.ts.map +0 -1
- package/dist/tools/estimate.test.js +0 -137
- package/dist/tools/estimate.test.js.map +0 -1
- package/dist/tools/generate-adr.test.d.ts +0 -2
- package/dist/tools/generate-adr.test.d.ts.map +0 -1
- package/dist/tools/generate-adr.test.js +0 -206
- package/dist/tools/generate-adr.test.js.map +0 -1
- package/dist/tools/generate-checklist.test.d.ts +0 -2
- package/dist/tools/generate-checklist.test.d.ts.map +0 -1
- package/dist/tools/generate-checklist.test.js +0 -201
- package/dist/tools/generate-checklist.test.js.map +0 -1
- package/dist/tools/generate-docs.test.d.ts +0 -2
- package/dist/tools/generate-docs.test.d.ts.map +0 -1
- package/dist/tools/generate-docs.test.js +0 -183
- package/dist/tools/generate-docs.test.js.map +0 -1
- package/dist/tools/generate-execution-plan.test.d.ts +0 -2
- package/dist/tools/generate-execution-plan.test.d.ts.map +0 -1
- package/dist/tools/generate-execution-plan.test.js +0 -643
- package/dist/tools/generate-execution-plan.test.js.map +0 -1
- package/dist/tools/generate-rules.test.d.ts +0 -2
- package/dist/tools/generate-rules.test.d.ts.map +0 -1
- package/dist/tools/generate-rules.test.js +0 -148
- package/dist/tools/generate-rules.test.js.map +0 -1
- package/dist/tools/generate-skill.test.d.ts +0 -2
- package/dist/tools/generate-skill.test.d.ts.map +0 -1
- package/dist/tools/generate-skill.test.js +0 -138
- package/dist/tools/generate-skill.test.js.map +0 -1
- package/dist/tools/generate-sub-agent.test.d.ts +0 -2
- package/dist/tools/generate-sub-agent.test.d.ts.map +0 -1
- package/dist/tools/generate-sub-agent.test.js +0 -162
- package/dist/tools/generate-sub-agent.test.js.map +0 -1
- package/dist/tools/generate-tests.test.d.ts +0 -2
- package/dist/tools/generate-tests.test.d.ts.map +0 -1
- package/dist/tools/generate-tests.test.js +0 -222
- package/dist/tools/generate-tests.test.js.map +0 -1
- package/dist/tools/init-constitution.test.d.ts +0 -2
- package/dist/tools/init-constitution.test.d.ts.map +0 -1
- package/dist/tools/init-constitution.test.js +0 -398
- package/dist/tools/init-constitution.test.js.map +0 -1
- package/dist/tools/init-project.test.d.ts +0 -2
- package/dist/tools/init-project.test.d.ts.map +0 -1
- package/dist/tools/init-project.test.js +0 -158
- package/dist/tools/init-project.test.js.map +0 -1
- package/dist/tools/integrate-pm.test.d.ts +0 -2
- package/dist/tools/integrate-pm.test.d.ts.map +0 -1
- package/dist/tools/integrate-pm.test.js +0 -558
- package/dist/tools/integrate-pm.test.js.map +0 -1
- package/dist/tools/learn.test.d.ts +0 -2
- package/dist/tools/learn.test.d.ts.map +0 -1
- package/dist/tools/learn.test.js +0 -123
- package/dist/tools/learn.test.js.map +0 -1
- package/dist/tools/list-specs.test.d.ts +0 -2
- package/dist/tools/list-specs.test.d.ts.map +0 -1
- package/dist/tools/list-specs.test.js +0 -110
- package/dist/tools/list-specs.test.js.map +0 -1
- package/dist/tools/manage-context.test.d.ts +0 -2
- package/dist/tools/manage-context.test.d.ts.map +0 -1
- package/dist/tools/manage-context.test.js +0 -359
- package/dist/tools/manage-context.test.js.map +0 -1
- package/dist/tools/manage-git.test.d.ts +0 -2
- package/dist/tools/manage-git.test.d.ts.map +0 -1
- package/dist/tools/manage-git.test.js +0 -882
- package/dist/tools/manage-git.test.js.map +0 -1
- package/dist/tools/orchestrate.test.d.ts +0 -2
- package/dist/tools/orchestrate.test.d.ts.map +0 -1
- package/dist/tools/orchestrate.test.js +0 -1117
- package/dist/tools/orchestrate.test.js.map +0 -1
- package/dist/tools/reconcile-spec.test.d.ts +0 -2
- package/dist/tools/reconcile-spec.test.d.ts.map +0 -1
- package/dist/tools/reconcile-spec.test.js +0 -259
- package/dist/tools/reconcile-spec.test.js.map +0 -1
- package/dist/tools/register-platform-tools.test.d.ts +0 -2
- package/dist/tools/register-platform-tools.test.d.ts.map +0 -1
- package/dist/tools/register-platform-tools.test.js +0 -404
- package/dist/tools/register-platform-tools.test.js.map +0 -1
- package/dist/tools/register-spec-tools.test.d.ts +0 -2
- package/dist/tools/register-spec-tools.test.d.ts.map +0 -1
- package/dist/tools/register-spec-tools.test.js +0 -407
- package/dist/tools/register-spec-tools.test.js.map +0 -1
- package/dist/tools/reverse-engineer.test.d.ts +0 -2
- package/dist/tools/reverse-engineer.test.d.ts.map +0 -1
- package/dist/tools/reverse-engineer.test.js +0 -206
- package/dist/tools/reverse-engineer.test.js.map +0 -1
- package/dist/tools/schemas.d.ts +0 -20
- package/dist/tools/schemas.d.ts.map +0 -1
- package/dist/tools/schemas.js +0 -133
- package/dist/tools/schemas.js.map +0 -1
- package/dist/tools/schemas.test.d.ts +0 -2
- package/dist/tools/schemas.test.d.ts.map +0 -1
- package/dist/tools/schemas.test.js +0 -245
- package/dist/tools/schemas.test.js.map +0 -1
- package/dist/tools/set-locale.test.d.ts +0 -2
- package/dist/tools/set-locale.test.d.ts.map +0 -1
- package/dist/tools/set-locale.test.js +0 -74
- package/dist/tools/set-locale.test.js.map +0 -1
- package/dist/tools/suggest-mcps.test.d.ts +0 -2
- package/dist/tools/suggest-mcps.test.d.ts.map +0 -1
- package/dist/tools/suggest-mcps.test.js +0 -198
- package/dist/tools/suggest-mcps.test.js.map +0 -1
- package/dist/tools/suggest-stack.test.d.ts +0 -2
- package/dist/tools/suggest-stack.test.d.ts.map +0 -1
- package/dist/tools/suggest-stack.test.js +0 -181
- package/dist/tools/suggest-stack.test.js.map +0 -1
- package/dist/tools/suggest-tooling.test.d.ts +0 -2
- package/dist/tools/suggest-tooling.test.d.ts.map +0 -1
- package/dist/tools/suggest-tooling.test.js +0 -213
- package/dist/tools/suggest-tooling.test.js.map +0 -1
- package/dist/tools/summarize-spec.test.d.ts +0 -2
- package/dist/tools/summarize-spec.test.d.ts.map +0 -1
- package/dist/tools/summarize-spec.test.js +0 -180
- package/dist/tools/summarize-spec.test.js.map +0 -1
- package/dist/tools/update-status.test.d.ts +0 -2
- package/dist/tools/update-status.test.d.ts.map +0 -1
- package/dist/tools/update-status.test.js +0 -142
- package/dist/tools/update-status.test.js.map +0 -1
- package/dist/tools/validate.test.d.ts +0 -2
- package/dist/tools/validate.test.d.ts.map +0 -1
- package/dist/tools/validate.test.js +0 -137
- package/dist/tools/validate.test.js.map +0 -1
|
@@ -1,327 +0,0 @@
|
|
|
1
|
-
// global-store.test.ts — Unit tests for global config, templates, and pricing store
|
|
2
|
-
import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest';
|
|
3
|
-
import { mkdtemp, rm } from 'node:fs/promises';
|
|
4
|
-
import { join } from 'node:path';
|
|
5
|
-
import { tmpdir } from 'node:os';
|
|
6
|
-
// Mock base-store to redirect globalDataDir to temp directory
|
|
7
|
-
let tempDir;
|
|
8
|
-
vi.mock('./base-store.js', async (importOriginal) => {
|
|
9
|
-
const original = await importOriginal();
|
|
10
|
-
return {
|
|
11
|
-
...original,
|
|
12
|
-
globalDataDir: () => join(tempDir, 'global'),
|
|
13
|
-
};
|
|
14
|
-
});
|
|
15
|
-
// Import AFTER mock is set up
|
|
16
|
-
const { getGlobalConfig, saveGlobalConfig, updateGlobalConfig, setDefaultLocale, setDefaultExperienceLevel, setHourlyRate, getTemplates, getTemplate, setTemplate, deleteTemplate, listTemplateKeys, getPricing, getPricingTier, setPricingTier, deletePricingTier, } = await import('./global-store.js');
|
|
17
|
-
beforeEach(async () => {
|
|
18
|
-
tempDir = await mkdtemp(join(tmpdir(), 'sdd-global-store-test-'));
|
|
19
|
-
});
|
|
20
|
-
afterEach(async () => {
|
|
21
|
-
await rm(tempDir, { recursive: true, force: true });
|
|
22
|
-
vi.restoreAllMocks();
|
|
23
|
-
});
|
|
24
|
-
// =============================================================================
|
|
25
|
-
// Global Config
|
|
26
|
-
// =============================================================================
|
|
27
|
-
describe('getGlobalConfig', () => {
|
|
28
|
-
it('should return defaults when no config file exists', async () => {
|
|
29
|
-
const config = await getGlobalConfig();
|
|
30
|
-
expect(config.defaultLocale).toBe('en');
|
|
31
|
-
expect(config.defaultExperienceLevel).toBe('intermediate');
|
|
32
|
-
expect(config.hourlyRate).toBe(50);
|
|
33
|
-
expect(config.pricingOpusPerMToken).toBe(15);
|
|
34
|
-
expect(config.pricingSonnetPerMToken).toBe(3);
|
|
35
|
-
});
|
|
36
|
-
it('should return saved config after saveGlobalConfig', async () => {
|
|
37
|
-
const custom = {
|
|
38
|
-
defaultLocale: 'es',
|
|
39
|
-
defaultExperienceLevel: 'senior',
|
|
40
|
-
hourlyRate: 100,
|
|
41
|
-
pricingOpusPerMToken: 20,
|
|
42
|
-
pricingSonnetPerMToken: 5,
|
|
43
|
-
};
|
|
44
|
-
await saveGlobalConfig(custom);
|
|
45
|
-
const config = await getGlobalConfig();
|
|
46
|
-
expect(config).toEqual(custom);
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
|
-
describe('saveGlobalConfig', () => {
|
|
50
|
-
it('should persist full config to disk', async () => {
|
|
51
|
-
const config = {
|
|
52
|
-
defaultLocale: 'pt',
|
|
53
|
-
defaultExperienceLevel: 'junior',
|
|
54
|
-
hourlyRate: 30,
|
|
55
|
-
pricingOpusPerMToken: 10,
|
|
56
|
-
pricingSonnetPerMToken: 2,
|
|
57
|
-
};
|
|
58
|
-
await saveGlobalConfig(config);
|
|
59
|
-
const loaded = await getGlobalConfig();
|
|
60
|
-
expect(loaded).toEqual(config);
|
|
61
|
-
});
|
|
62
|
-
it('should overwrite existing config', async () => {
|
|
63
|
-
await saveGlobalConfig({
|
|
64
|
-
defaultLocale: 'en',
|
|
65
|
-
defaultExperienceLevel: 'intermediate',
|
|
66
|
-
hourlyRate: 50,
|
|
67
|
-
pricingOpusPerMToken: 15,
|
|
68
|
-
pricingSonnetPerMToken: 3,
|
|
69
|
-
});
|
|
70
|
-
await saveGlobalConfig({
|
|
71
|
-
defaultLocale: 'es',
|
|
72
|
-
defaultExperienceLevel: 'senior',
|
|
73
|
-
hourlyRate: 200,
|
|
74
|
-
pricingOpusPerMToken: 25,
|
|
75
|
-
pricingSonnetPerMToken: 6,
|
|
76
|
-
});
|
|
77
|
-
const config = await getGlobalConfig();
|
|
78
|
-
expect(config.hourlyRate).toBe(200);
|
|
79
|
-
expect(config.defaultLocale).toBe('es');
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
describe('updateGlobalConfig', () => {
|
|
83
|
-
it('should partially update config and return merged result', async () => {
|
|
84
|
-
const result = await updateGlobalConfig({ hourlyRate: 75 });
|
|
85
|
-
expect(result.hourlyRate).toBe(75);
|
|
86
|
-
expect(result.defaultLocale).toBe('en'); // default preserved
|
|
87
|
-
expect(result.defaultExperienceLevel).toBe('intermediate'); // default preserved
|
|
88
|
-
});
|
|
89
|
-
it('should persist partial updates', async () => {
|
|
90
|
-
await updateGlobalConfig({ defaultLocale: 'es' });
|
|
91
|
-
const config = await getGlobalConfig();
|
|
92
|
-
expect(config.defaultLocale).toBe('es');
|
|
93
|
-
expect(config.hourlyRate).toBe(50); // default preserved
|
|
94
|
-
});
|
|
95
|
-
it('should apply multiple sequential updates', async () => {
|
|
96
|
-
await updateGlobalConfig({ hourlyRate: 100 });
|
|
97
|
-
await updateGlobalConfig({ defaultLocale: 'pt' });
|
|
98
|
-
await updateGlobalConfig({ pricingOpusPerMToken: 20 });
|
|
99
|
-
const config = await getGlobalConfig();
|
|
100
|
-
expect(config.hourlyRate).toBe(100);
|
|
101
|
-
expect(config.defaultLocale).toBe('pt');
|
|
102
|
-
expect(config.pricingOpusPerMToken).toBe(20);
|
|
103
|
-
});
|
|
104
|
-
});
|
|
105
|
-
describe('setDefaultLocale', () => {
|
|
106
|
-
it('should update only the defaultLocale field', async () => {
|
|
107
|
-
const result = await setDefaultLocale('es');
|
|
108
|
-
expect(result.defaultLocale).toBe('es');
|
|
109
|
-
expect(result.hourlyRate).toBe(50);
|
|
110
|
-
});
|
|
111
|
-
it('should persist the locale change', async () => {
|
|
112
|
-
await setDefaultLocale('pt');
|
|
113
|
-
const config = await getGlobalConfig();
|
|
114
|
-
expect(config.defaultLocale).toBe('pt');
|
|
115
|
-
});
|
|
116
|
-
});
|
|
117
|
-
describe('setDefaultExperienceLevel', () => {
|
|
118
|
-
it('should update only the experience level', async () => {
|
|
119
|
-
const result = await setDefaultExperienceLevel('senior');
|
|
120
|
-
expect(result.defaultExperienceLevel).toBe('senior');
|
|
121
|
-
expect(result.defaultLocale).toBe('en');
|
|
122
|
-
});
|
|
123
|
-
it('should persist the experience level change', async () => {
|
|
124
|
-
await setDefaultExperienceLevel('junior');
|
|
125
|
-
const config = await getGlobalConfig();
|
|
126
|
-
expect(config.defaultExperienceLevel).toBe('junior');
|
|
127
|
-
});
|
|
128
|
-
});
|
|
129
|
-
describe('setHourlyRate', () => {
|
|
130
|
-
it('should update only the hourly rate', async () => {
|
|
131
|
-
const result = await setHourlyRate(150);
|
|
132
|
-
expect(result.hourlyRate).toBe(150);
|
|
133
|
-
expect(result.defaultLocale).toBe('en');
|
|
134
|
-
});
|
|
135
|
-
it('should persist the rate change', async () => {
|
|
136
|
-
await setHourlyRate(200);
|
|
137
|
-
const config = await getGlobalConfig();
|
|
138
|
-
expect(config.hourlyRate).toBe(200);
|
|
139
|
-
});
|
|
140
|
-
it('should handle zero rate', async () => {
|
|
141
|
-
const result = await setHourlyRate(0);
|
|
142
|
-
expect(result.hourlyRate).toBe(0);
|
|
143
|
-
});
|
|
144
|
-
});
|
|
145
|
-
// =============================================================================
|
|
146
|
-
// Templates
|
|
147
|
-
// =============================================================================
|
|
148
|
-
describe('getTemplates', () => {
|
|
149
|
-
it('should return empty object when no templates file exists', async () => {
|
|
150
|
-
const templates = await getTemplates();
|
|
151
|
-
expect(templates).toEqual({});
|
|
152
|
-
});
|
|
153
|
-
});
|
|
154
|
-
describe('getTemplate', () => {
|
|
155
|
-
it('should return null when template does not exist', async () => {
|
|
156
|
-
const template = await getTemplate('nonexistent');
|
|
157
|
-
expect(template).toBeNull();
|
|
158
|
-
});
|
|
159
|
-
it('should return the template after it is set', async () => {
|
|
160
|
-
const tmpl = { sections: ['metadata', 'behavior'], format: 'markdown' };
|
|
161
|
-
await setTemplate('feature', tmpl);
|
|
162
|
-
const result = await getTemplate('feature');
|
|
163
|
-
expect(result).toEqual(tmpl);
|
|
164
|
-
});
|
|
165
|
-
});
|
|
166
|
-
describe('setTemplate', () => {
|
|
167
|
-
it('should store a new template', async () => {
|
|
168
|
-
const tmpl = { name: 'Bug Fix', sections: ['description', 'steps'] };
|
|
169
|
-
await setTemplate('bugfix', tmpl);
|
|
170
|
-
const result = await getTemplate('bugfix');
|
|
171
|
-
expect(result).toEqual(tmpl);
|
|
172
|
-
});
|
|
173
|
-
it('should overwrite an existing template', async () => {
|
|
174
|
-
await setTemplate('feature', { version: 1 });
|
|
175
|
-
await setTemplate('feature', { version: 2 });
|
|
176
|
-
const result = await getTemplate('feature');
|
|
177
|
-
expect(result).toEqual({ version: 2 });
|
|
178
|
-
});
|
|
179
|
-
it('should not affect other templates', async () => {
|
|
180
|
-
await setTemplate('a', { val: 'A' });
|
|
181
|
-
await setTemplate('b', { val: 'B' });
|
|
182
|
-
const a = await getTemplate('a');
|
|
183
|
-
const b = await getTemplate('b');
|
|
184
|
-
expect(a).toEqual({ val: 'A' });
|
|
185
|
-
expect(b).toEqual({ val: 'B' });
|
|
186
|
-
});
|
|
187
|
-
});
|
|
188
|
-
describe('deleteTemplate', () => {
|
|
189
|
-
it('should return true when deleting existing template', async () => {
|
|
190
|
-
await setTemplate('to-delete', { temp: true });
|
|
191
|
-
const result = await deleteTemplate('to-delete');
|
|
192
|
-
expect(result).toBe(true);
|
|
193
|
-
});
|
|
194
|
-
it('should remove the template from storage', async () => {
|
|
195
|
-
await setTemplate('to-delete', { temp: true });
|
|
196
|
-
await deleteTemplate('to-delete');
|
|
197
|
-
const result = await getTemplate('to-delete');
|
|
198
|
-
expect(result).toBeNull();
|
|
199
|
-
});
|
|
200
|
-
it('should return false when deleting non-existent template', async () => {
|
|
201
|
-
const result = await deleteTemplate('nonexistent');
|
|
202
|
-
expect(result).toBe(false);
|
|
203
|
-
});
|
|
204
|
-
it('should not affect other templates when deleting', async () => {
|
|
205
|
-
await setTemplate('keep', { val: 'keep' });
|
|
206
|
-
await setTemplate('remove', { val: 'remove' });
|
|
207
|
-
await deleteTemplate('remove');
|
|
208
|
-
const kept = await getTemplate('keep');
|
|
209
|
-
expect(kept).toEqual({ val: 'keep' });
|
|
210
|
-
});
|
|
211
|
-
});
|
|
212
|
-
describe('listTemplateKeys', () => {
|
|
213
|
-
it('should return empty array when no templates exist', async () => {
|
|
214
|
-
const keys = await listTemplateKeys();
|
|
215
|
-
expect(keys).toEqual([]);
|
|
216
|
-
});
|
|
217
|
-
it('should return all template keys', async () => {
|
|
218
|
-
await setTemplate('feature', { type: 'feature' });
|
|
219
|
-
await setTemplate('bugfix', { type: 'bugfix' });
|
|
220
|
-
await setTemplate('refactor', { type: 'refactor' });
|
|
221
|
-
const keys = await listTemplateKeys();
|
|
222
|
-
expect(keys).toHaveLength(3);
|
|
223
|
-
expect(keys).toContain('feature');
|
|
224
|
-
expect(keys).toContain('bugfix');
|
|
225
|
-
expect(keys).toContain('refactor');
|
|
226
|
-
});
|
|
227
|
-
it('should not include deleted keys', async () => {
|
|
228
|
-
await setTemplate('a', { val: 1 });
|
|
229
|
-
await setTemplate('b', { val: 2 });
|
|
230
|
-
await deleteTemplate('a');
|
|
231
|
-
const keys = await listTemplateKeys();
|
|
232
|
-
expect(keys).toEqual(['b']);
|
|
233
|
-
});
|
|
234
|
-
});
|
|
235
|
-
// =============================================================================
|
|
236
|
-
// Pricing
|
|
237
|
-
// =============================================================================
|
|
238
|
-
describe('getPricing', () => {
|
|
239
|
-
it('should return empty object when no pricing file exists', async () => {
|
|
240
|
-
const pricing = await getPricing();
|
|
241
|
-
expect(pricing).toEqual({});
|
|
242
|
-
});
|
|
243
|
-
});
|
|
244
|
-
describe('getPricingTier', () => {
|
|
245
|
-
it('should return null when tier does not exist', async () => {
|
|
246
|
-
const tier = await getPricingTier('nonexistent');
|
|
247
|
-
expect(tier).toBeNull();
|
|
248
|
-
});
|
|
249
|
-
it('should return the tier after it is set', async () => {
|
|
250
|
-
const tier = { small: 500, medium: 2000, large: 5000 };
|
|
251
|
-
await setPricingTier('feature', tier);
|
|
252
|
-
const result = await getPricingTier('feature');
|
|
253
|
-
expect(result).toEqual(tier);
|
|
254
|
-
});
|
|
255
|
-
});
|
|
256
|
-
describe('setPricingTier', () => {
|
|
257
|
-
it('should store a new pricing tier', async () => {
|
|
258
|
-
const tier = { basic: 100, premium: 300 };
|
|
259
|
-
await setPricingTier('support', tier);
|
|
260
|
-
const result = await getPricingTier('support');
|
|
261
|
-
expect(result).toEqual(tier);
|
|
262
|
-
});
|
|
263
|
-
it('should overwrite an existing tier', async () => {
|
|
264
|
-
await setPricingTier('plan', { price: 10 });
|
|
265
|
-
await setPricingTier('plan', { price: 20 });
|
|
266
|
-
const result = await getPricingTier('plan');
|
|
267
|
-
expect(result).toEqual({ price: 20 });
|
|
268
|
-
});
|
|
269
|
-
it('should not affect other tiers', async () => {
|
|
270
|
-
await setPricingTier('basic', { price: 10 });
|
|
271
|
-
await setPricingTier('premium', { price: 50 });
|
|
272
|
-
const basic = await getPricingTier('basic');
|
|
273
|
-
const premium = await getPricingTier('premium');
|
|
274
|
-
expect(basic).toEqual({ price: 10 });
|
|
275
|
-
expect(premium).toEqual({ price: 50 });
|
|
276
|
-
});
|
|
277
|
-
});
|
|
278
|
-
describe('deletePricingTier', () => {
|
|
279
|
-
it('should return true when deleting existing tier', async () => {
|
|
280
|
-
await setPricingTier('to-delete', { cost: 99 });
|
|
281
|
-
const result = await deletePricingTier('to-delete');
|
|
282
|
-
expect(result).toBe(true);
|
|
283
|
-
});
|
|
284
|
-
it('should remove the tier from storage', async () => {
|
|
285
|
-
await setPricingTier('to-delete', { cost: 99 });
|
|
286
|
-
await deletePricingTier('to-delete');
|
|
287
|
-
const result = await getPricingTier('to-delete');
|
|
288
|
-
expect(result).toBeNull();
|
|
289
|
-
});
|
|
290
|
-
it('should return false when deleting non-existent tier', async () => {
|
|
291
|
-
const result = await deletePricingTier('nonexistent');
|
|
292
|
-
expect(result).toBe(false);
|
|
293
|
-
});
|
|
294
|
-
it('should not affect other tiers when deleting', async () => {
|
|
295
|
-
await setPricingTier('keep', { cost: 50 });
|
|
296
|
-
await setPricingTier('remove', { cost: 100 });
|
|
297
|
-
await deletePricingTier('remove');
|
|
298
|
-
const kept = await getPricingTier('keep');
|
|
299
|
-
expect(kept).toEqual({ cost: 50 });
|
|
300
|
-
});
|
|
301
|
-
});
|
|
302
|
-
// =============================================================================
|
|
303
|
-
// Cross-store isolation
|
|
304
|
-
// =============================================================================
|
|
305
|
-
describe('store isolation', () => {
|
|
306
|
-
it('should not mix config, templates, and pricing data', async () => {
|
|
307
|
-
await saveGlobalConfig({
|
|
308
|
-
defaultLocale: 'es',
|
|
309
|
-
defaultExperienceLevel: 'senior',
|
|
310
|
-
hourlyRate: 100,
|
|
311
|
-
pricingOpusPerMToken: 15,
|
|
312
|
-
pricingSonnetPerMToken: 3,
|
|
313
|
-
});
|
|
314
|
-
await setTemplate('feat', { sections: ['a'] });
|
|
315
|
-
await setPricingTier('tier1', { cost: 42 });
|
|
316
|
-
const config = await getGlobalConfig();
|
|
317
|
-
const templates = await getTemplates();
|
|
318
|
-
const pricing = await getPricing();
|
|
319
|
-
expect(config.defaultLocale).toBe('es');
|
|
320
|
-
expect(templates.feat).toEqual({ sections: ['a'] });
|
|
321
|
-
expect(pricing.tier1).toEqual({ cost: 42 });
|
|
322
|
-
// Ensure they are independent
|
|
323
|
-
expect(Object.keys(templates)).not.toContain('defaultLocale');
|
|
324
|
-
expect(Object.keys(pricing)).not.toContain('defaultLocale');
|
|
325
|
-
});
|
|
326
|
-
});
|
|
327
|
-
//# sourceMappingURL=global-store.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"global-store.test.js","sourceRoot":"","sources":["../../src/storage/global-store.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../src/storage/index.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
// Tests for storage/index.ts — barrel re-export file.
|
|
2
|
-
// Verifies all named exports and namespace exports are present.
|
|
3
|
-
import { describe, it, expect } from 'vitest';
|
|
4
|
-
import { hashProjectPath, readJson, writeJson, projectDataDir, globalDataDir, specStore, metricsStore, patternStore, knowledgeStore, globalStore, } from './index.js';
|
|
5
|
-
describe('storage/index.ts barrel exports', () => {
|
|
6
|
-
it('should export hashProjectPath as a function', () => {
|
|
7
|
-
expect(typeof hashProjectPath).toBe('function');
|
|
8
|
-
});
|
|
9
|
-
it('should export readJson as a function', () => {
|
|
10
|
-
expect(typeof readJson).toBe('function');
|
|
11
|
-
});
|
|
12
|
-
it('should export writeJson as a function', () => {
|
|
13
|
-
expect(typeof writeJson).toBe('function');
|
|
14
|
-
});
|
|
15
|
-
it('should export projectDataDir as a function', () => {
|
|
16
|
-
expect(typeof projectDataDir).toBe('function');
|
|
17
|
-
});
|
|
18
|
-
it('should export globalDataDir as a function', () => {
|
|
19
|
-
expect(typeof globalDataDir).toBe('function');
|
|
20
|
-
});
|
|
21
|
-
it('should export specStore as a namespace object', () => {
|
|
22
|
-
expect(specStore).toBeDefined();
|
|
23
|
-
expect(typeof specStore).toBe('object');
|
|
24
|
-
});
|
|
25
|
-
it('should export metricsStore as a namespace object', () => {
|
|
26
|
-
expect(metricsStore).toBeDefined();
|
|
27
|
-
expect(typeof metricsStore).toBe('object');
|
|
28
|
-
});
|
|
29
|
-
it('should export patternStore as a namespace object', () => {
|
|
30
|
-
expect(patternStore).toBeDefined();
|
|
31
|
-
expect(typeof patternStore).toBe('object');
|
|
32
|
-
});
|
|
33
|
-
it('should export knowledgeStore as a namespace object', () => {
|
|
34
|
-
expect(knowledgeStore).toBeDefined();
|
|
35
|
-
expect(typeof knowledgeStore).toBe('object');
|
|
36
|
-
});
|
|
37
|
-
it('should export globalStore as a namespace object', () => {
|
|
38
|
-
expect(globalStore).toBeDefined();
|
|
39
|
-
expect(typeof globalStore).toBe('object');
|
|
40
|
-
});
|
|
41
|
-
it('should export all 5 base-store functions', () => {
|
|
42
|
-
const baseFunctions = [hashProjectPath, readJson, writeJson, projectDataDir, globalDataDir];
|
|
43
|
-
for (const fn of baseFunctions) {
|
|
44
|
-
expect(fn).toBeDefined();
|
|
45
|
-
expect(typeof fn).toBe('function');
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
it('should export all 5 namespace stores', () => {
|
|
49
|
-
const stores = [specStore, metricsStore, patternStore, knowledgeStore, globalStore];
|
|
50
|
-
for (const store of stores) {
|
|
51
|
-
expect(store).toBeDefined();
|
|
52
|
-
expect(typeof store).toBe('object');
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
});
|
|
56
|
-
//# sourceMappingURL=index.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/storage/index.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge-store.test.d.ts","sourceRoot":"","sources":["../../src/storage/knowledge-store.test.ts"],"names":[],"mappings":""}
|