Remove Redundant Test Cases - Implementation Plan
For agentic workers: REQUIRED: Use superpowers:subagent-driven-development (if subagents available) or superpowers:executing-plans to implement this plan. Steps use checkbox (
- [ ]) syntax for tracking.
Goal: Remove all vitest test files and infrastructure, keeping only the 14 continuous test suites and their dependencies.
Architecture: Delete all .test.ts files, vitest-only support files, unused fixtures, and empty directories. Update package.json scripts to point to continuous suites. Clean up vitest.config.ts and CI references.
Tech Stack: Shell (deletion), JSON editing (package.json), TypeScript config editing
Chunk 1: Delete Vitest Test Files
Task 1: Delete test/unit/ directory (63 test files)
Files:
-
Delete:
test/unit/(entire directory tree) -
Step 1: Delete the entire test/unit directory
rm -rf test/unit/
- Step 2: Verify deletion
ls test/unit/ 2>&1
# Expected: "No such file or directory"
Task 2: Delete test/suites/ directory (6 test files)
Files:
-
Delete:
test/suites/(entire directory tree) -
Step 1: Delete the entire test/suites directory
rm -rf test/suites/
- Step 2: Verify deletion
ls test/suites/ 2>&1
# Expected: "No such file or directory"
Task 3: Delete test/integration/ directory (6 test files)
Files:
-
Delete:
test/integration/(entire directory tree) -
Step 1: Delete the entire test/integration directory
rm -rf test/integration/
- Step 2: Verify deletion
ls test/integration/ 2>&1
# Expected: "No such file or directory"
Task 4: Delete test/rag/ test files (9 test files, keep fixtures/rag/)
Files:
-
Delete:
test/rag/ChunkerFactory.test.ts -
Delete:
test/rag/ChunkerRegistry.test.ts -
Delete:
test/rag/markdown-table-chunking.test.ts -
Delete:
test/rag/multifile-diversity.test.ts -
Delete:
test/rag/rag-stream-integration.test.ts -
Delete:
test/rag/ragIntegration.test.ts -
Delete:
test/rag/integration/(directory) -
Delete:
test/rag/resilience/(directory) -
Step 1: Delete RAG test files and subdirectories
rm -f test/rag/ChunkerFactory.test.ts test/rag/ChunkerRegistry.test.ts test/rag/markdown-table-chunking.test.ts test/rag/multifile-diversity.test.ts test/rag/rag-stream-integration.test.ts test/rag/ragIntegration.test.ts
rm -rf test/rag/integration/ test/rag/resilience/
- Step 2: Verify only empty directory remains, then remove it
ls test/rag/
# Expected: empty directory
rmdir test/rag/
Task 5: Delete remaining test directories with test files
Files:
-
Delete:
test/adapters/(entire tree) -
Delete:
test/multimodal/(entire tree) -
Delete:
test/sdk/(entire tree) -
Delete:
test/providers/(entire tree) -
Delete:
test/server/(entire tree) -
Step 1: Delete all remaining test directories
rm -rf test/adapters/ test/multimodal/ test/sdk/ test/providers/ test/server/
- Step 2: Verify deletion
for dir in test/adapters test/multimodal test/sdk test/providers test/server; do ls "$dir" 2>&1; done
# Expected: all "No such file or directory"
Task 6: Delete test files outside test/ directory
Files:
-
Delete:
src/lib/workflow/__tests__/workflow.test.ts -
Delete:
src/lib/workflow/__tests__/(directory) -
Delete:
examples/projects/enterprise-app/tests/integration.test.ts -
Delete:
examples/projects/enterprise-app/tests/(directory) -
Step 1: Delete external test files
rm -rf src/lib/workflow/__tests__/
rm -rf examples/projects/enterprise-app/tests/
Chunk 2: Delete Support Files and Unused Fixtures
Task 7: Delete vitest-only support files (9 files)
Files:
-
Delete:
test/setup.ts -
Delete:
test/types/global.ts -
Delete:
test/types/(directory, after global.ts removed - keep mcp.ts!) -
Delete:
test/utils/server-test-utils.ts -
Delete:
test/utils/continuousTestHelpers.ts -
Delete:
test/utils/(directory) -
Delete:
test/debug-redis-write.mts -
Delete:
test/audit/agent-test-tracing-journey.ts -
Delete:
test/audit/(directory) -
Delete:
test/file-processor-test-suite.ts -
Delete:
test/global-endpoint-tests.ts -
Step 1: Delete support files (preserve test/types/mcp.ts!)
rm -f test/setup.ts test/debug-redis-write.mts test/file-processor-test-suite.ts test/global-endpoint-tests.ts
rm -f test/types/global.ts
rm -rf test/utils/ test/audit/
- Step 2: Verify mcp.ts is preserved
ls test/types/mcp.ts
# Expected: file exists
Task 8: Delete unused fixture directories (9 directories)
Files:
-
Delete:
test/fixtures/archive/ -
Delete:
test/fixtures/audio/ -
Delete:
test/fixtures/code/ -
Delete:
test/fixtures/document/ -
Delete:
test/fixtures/ebook/ -
Delete:
test/fixtures/font/ -
Delete:
test/fixtures/image/ -
Delete:
test/fixtures/media/ -
Delete:
test/fixtures/video/ -
Step 1: Delete unused fixture directories
rm -rf test/fixtures/archive/ test/fixtures/audio/ test/fixtures/code/ test/fixtures/document/ test/fixtures/ebook/ test/fixtures/font/ test/fixtures/image/ test/fixtures/media/ test/fixtures/video/
- Step 2: Verify kept fixtures remain
ls test/fixtures/rag/ test/fixtures/servers/
ls test/fixtures/transactions.csv test/fixtures/merchant-summary.csv test/fixtures/valid-sample.pdf test/fixtures/multi-page.pdf test/fixtures/sample-screenshot.png test/fixtures/meta-ads-campaign-performance.csv test/fixtures/meta-ads-account-metrics.json test/fixtures/zod-sample.ts
# Expected: all exist
Task 9: Delete unused individual fixture files (17 files)
Files:
-
Delete:
test/fixtures/basic.csv -
Delete:
test/fixtures/escaped.csv -
Delete:
test/fixtures/quoted.csv -
Delete:
test/fixtures/sample.tsv -
Delete:
test/fixtures/large.csv -
Delete:
test/fixtures/malformed.csv -
Delete:
test/fixtures/not-a-csv -
Delete:
test/fixtures/invalid.pdf -
Delete:
test/fixtures/extensionless-csv-1 -
Delete:
test/fixtures/extensionless-csv-2 -
Delete:
test/fixtures/extensionless-json-1 -
Delete:
test/fixtures/extensionless-json-2 -
Delete:
test/fixtures/extensionless-xml -
Delete:
test/fixtures/extensionless-yaml -
Delete:
test/fixtures/file-1 -
Delete:
test/fixtures/file-2 -
Delete:
test/fixtures/file-3 -
Step 1: Delete unused fixture files
rm -f test/fixtures/basic.csv test/fixtures/escaped.csv test/fixtures/quoted.csv test/fixtures/sample.tsv test/fixtures/large.csv test/fixtures/malformed.csv test/fixtures/not-a-csv test/fixtures/invalid.pdf test/fixtures/extensionless-csv-1 test/fixtures/extensionless-csv-2 test/fixtures/extensionless-json-1 test/fixtures/extensionless-json-2 test/fixtures/extensionless-xml test/fixtures/extensionless-yaml test/fixtures/file-1 test/fixtures/file-2 test/fixtures/file-3
Chunk 3: Update Configuration Files
Task 10: Update package.json test scripts
Files:
-
Modify:
package.json(lines 62-77) -
Step 1: Replace vitest test scripts with continuous suite scripts
Replace the "Testing" section (lines 62-77) with:
"// Testing (Continuous Test Suites)": "",
"test": "npx tsx test/continuous-test-suite.ts",
"test:context": "npx tsx test/continuous-test-suite-context.ts",
"test:evaluation": "npx tsx test/continuous-test-suite-evaluation.ts",
"test:mcp": "npx tsx test/continuous-test-suite-mcp-http.ts",
"test:media": "npx tsx test/continuous-test-suite-media-gen.ts",
"test:memory": "npx tsx test/continuous-test-suite-memory.ts",
"test:observability": "npx tsx test/continuous-test-suite-observability.ts",
"test:ppt": "npx tsx test/continuous-test-suite-ppt.ts",
"test:providers": "npx tsx test/continuous-test-suite-providers.ts",
"test:rag": "npx tsx test/continuous-test-suite-rag.ts",
"test:servers": "npx tsx test/continuous-test-suite-servers.ts",
"test:tracing": "npx tsx test/continuous-test-suite-tracing.ts",
"test:tts": "npx tsx test/continuous-test-suite-tts.ts",
"test:workflow": "npx tsx test/continuous-test-suite-workflow.ts",
"test:performance": "tsx tools/testing/performanceMonitor.ts",
- Step 2: Remove legacy test scripts
Remove these lines:
"test:legacy": "npx tsx test/continuous-test-suite.ts",
"test:comparison": "pnpm run test && pnpm run test:legacy",
- Step 3: Update pre-push script reference
On line 119, change:
"pre-push": "pnpm run validate:commit && pnpm run validate:env && pnpm run validate && pnpm run test",
to:
"pre-push": "pnpm run validate:commit && pnpm run validate:env && pnpm run validate",
(Remove pnpm run test from pre-push since continuous suites need API keys and shouldn't run on every push)
Task 11: Clean up vitest.config.ts
Files:
-
Modify:
vitest.config.ts -
Step 1: Strip test configuration, keep only resolve aliases
Replace vitest.config.ts content with minimal config that preserves resolve aliases for any remaining build tooling:
import { defineConfig } from "vitest/config";
import path from "path";
import { fileURLToPath } from "url";
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
export default defineConfig({
// Path resolution for imports
resolve: {
alias: {
"@": path.resolve(__dirname, "./src"),
"@test": path.resolve(__dirname, "./test"),
},
},
});
Task 12: Update CI workflow
Files:
-
Modify:
.github/workflows/ci.yml(line 65) -
Step 1: Update ESLint test directory linting
On line 65, change:
npx eslint test/ --max-warnings=10
to:
npx eslint test/continuous-test-suite*.ts test/zod-schema-test-function.ts --max-warnings=10
- Step 2: Update quality-gate coverage step
On lines 259-263, change:
- name: 🎯 Code Coverage Analysis
run: |
echo "🎯 Running tests with coverage..."
pnpm run test:run --coverage || echo "Tests completed with warnings"
continue-on-error: true
to:
- name: 🎯 Test Suite Validation
run: |
echo "🎯 Continuous test suites are run separately with API keys"
echo "Skipping automated test execution in CI"
continue-on-error: true
Chunk 4: Verification
Task 13: Verify final state
- Step 1: Verify no .test.ts files remain
find test/ -name "*.test.ts" -o -name "*.spec.ts" 2>/dev/null
find src/ -name "*.test.ts" -o -name "*.spec.ts" 2>/dev/null
# Expected: no output
- Step 2: Verify all 14 continuous suites exist
ls test/continuous-test-suite*.ts | wc -l
# Expected: 14
- Step 3: Verify dependencies exist
ls test/zod-schema-test-function.ts test/types/mcp.ts test/fixtures/zod-sample.ts
# Expected: all exist
- Step 4: Verify fixtures exist
ls test/fixtures/rag/ test/fixtures/servers/ test/fixtures/transactions.csv test/fixtures/merchant-summary.csv test/fixtures/valid-sample.pdf test/fixtures/multi-page.pdf test/fixtures/sample-screenshot.png
# Expected: all exist
- Step 5: Verify build still works
pnpm run build
# Expected: success
- Step 6: Verify TypeScript compilation
npx tsc --noEmit --strict --project tsconfig.json
# Expected: 0 TypeScript errors
- Step 7: Verify test/ directory is clean
ls test/
# Expected: only continuous-test-suite*.ts, zod-schema-test-function.ts, fixtures/, types/, shell scripts, TESTING_SCRIPTS.md, and test-all-providers.sh / run-all-providers-sequential.sh