Files
AIclinicalresearch/tests/run_tests.sh
HaHafeng fa72beea6c feat(platform): Complete Postgres-Only architecture refactoring (Phase 1-7)
Major Changes:
- Implement Platform-Only architecture pattern (unified task management)
- Add PostgresCacheAdapter for unified caching (platform_schema.app_cache)
- Add PgBossQueue for job queue management (platform_schema.job)
- Implement CheckpointService using job.data (generic for all modules)
- Add intelligent threshold-based dual-mode processing (THRESHOLD=50)
- Add task splitting mechanism (auto chunk size recommendation)
- Refactor ASL screening service with smart mode selection
- Refactor DC extraction service with smart mode selection
- Register workers for ASL and DC modules

Technical Highlights:
- All task management data stored in platform_schema.job.data (JSONB)
- Business tables remain clean (no task management fields)
- CheckpointService is generic (shared by all modules)
- Zero code duplication (DRY principle)
- Follows 3-layer architecture principle
- Zero additional cost (no Redis needed, save 8400 CNY/year)

Code Statistics:
- New code: ~1750 lines
- Modified code: ~500 lines
- Test code: ~1800 lines
- Documentation: ~3000 lines

Testing:
- Unit tests: 8/8 passed
- Integration tests: 2/2 passed
- Architecture validation: passed
- Linter errors: 0

Files:
- Platform layer: PostgresCacheAdapter, PgBossQueue, CheckpointService, utils
- ASL module: screeningService, screeningWorker
- DC module: ExtractionController, extractionWorker
- Tests: 11 test files
- Docs: Updated 4 key documents

Status: Phase 1-7 completed, Phase 8-9 pending
2025-12-13 16:10:04 +08:00

51 lines
1.1 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# Linux/Mac脚本 - 运行缺失值处理功能测试
echo "========================================"
echo "缺失值处理功能 - 自动化测试"
echo "========================================"
echo
# 检查Python是否安装
if ! command -v python3 &> /dev/null; then
echo "[错误] Python未安装"
exit 1
fi
echo "[1/3] 检查Python服务状态..."
if ! curl -s http://localhost:8001/health > /dev/null 2>&1; then
echo "[警告] Python服务未运行请先启动服务"
echo " cd extraction_service"
echo " python main.py"
echo
exit 1
fi
echo "[OK] Python服务运行正常"
echo
echo "[2/3] 检查依赖..."
python3 -c "import pandas, numpy, requests" 2> /dev/null
if [ $? -ne 0 ]; then
echo "[警告] 缺少依赖,正在安装..."
pip3 install pandas numpy requests
fi
echo "[OK] 依赖检查完成"
echo
echo "[3/3] 运行测试..."
echo
python3 test_fillna_operations.py
echo
echo "========================================"
echo "测试完成"
echo "========================================"