zephyrdark 29f727970d fix: add transaction safety and type validation to PriceCollector
- Implement per-ticker commits to ensure atomic operations per data source
- Add rollback on exception to prevent partial data corruption
- Add _safe_float() and _safe_int() helper methods for defensive type conversion
- Validate column count after DataFrame reset to catch schema issues early
- Skip records with missing essential values (close price) with debug logging
- Remove final db.commit() since commits now happen per ticker in the loop

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 23:46:16 +09:00

Galaxy-PO

Integrated Quant Portfolio Management Application

Tech Stack

  • Backend: FastAPI, Python 3.14, SQLAlchemy, PostgreSQL
  • Frontend: Next.js 15, React 19, TypeScript, Tailwind CSS
  • Infrastructure: Docker, Docker Compose

Development

Prerequisites

  • Docker & Docker Compose
  • Python 3.14
  • Node.js 24

Quick Start

# Start all services
docker-compose up -d

# Backend only (development)
cd backend
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --reload

# Frontend only (development)
cd frontend
npm install
npm run dev

Project Structure

galaxy-po/
├── backend/           # FastAPI backend
├── frontend/          # Next.js frontend
├── docker-compose.yml
└── docs/plans/        # Implementation plans
Description
No description provided
Readme 1.4 MiB
Languages
Python 50.6%
TypeScript 48.7%
CSS 0.3%
Dockerfile 0.3%