바이브코딩 다이어리

23 프로젝트 폴더 정리

미노스빌더 2026. 5. 7. 19:28

23 프로젝트 폴더 정리

 

moai adk의 기본 워크플로우는 plan(spec) > run(&test) > sync 다. 

바이브 코딩 작업을 하다보면 .. 그외에 다양한 작업이 생긴다. 

실험도 하게되고,

브레인스토밍도 하고,

자료 조사도 시키고 …

무엇보다…

테스트 결과물을 산출하고 > 다시 그 결과물을 분석하고 > 반영하고 

이런 작업을 많이 하게 되는데….

작업을 하면서 그 때 그 때 즉흥적으로 폴더를 만들고 진행하다보니 폴더 구조가 일관성이 없다. 

experiments, reports, research 폴더를 만들고 정리했다.

 

spec 문서 체계도 정비를 했다. 

개발을 진행하다보니 spec 수가 많아져서 폴더를 만들고 분리했다. 

spec 내에 infrastructure, operations, product, quality 폴더를 만들었다.

 

그외에도 이것저것 정리를 했는데..

그 결과물이 아래에 있다. 

여전히 복잡하다. 허허

 

이 과정 또한 바이브 코딩으로 진행했는데..

상당한 시간과 반복이 소요되었다. 

순간으로 보면 상당히 지루하고 지치는 작업이지만

이 또한 바이브 코딩의 학습의 시간인듯하다. 



inmyrace-poc-2nd/

├── app/                            # FastAPI 백엔드 애플리케이션 (Phase 1)

│   ├── main.py                     # FastAPI 앱 진입점 + 예외 핸들러

│   ├── config.py                   # 설정 관리 + 운영 검증

│   ├── database.py                 # SQLAlchemy 비동기 세션

│   ├── models/                     # SQLAlchemy ORM 모델

│   │   ├── base.py                 # Base 클래스

│   │   ├── user.py                 # User 모델

│   │   ├── activity.py             # Activity 모델

│   │   ├── wellness.py             # Wellness 모델

│   │   └── runner_profile.py       # RunnerProfile 모델 + JSONB

│   ├── schemas/                    # Pydantic v2 스키마

│   │   └── runner_profile.py       # 프로필 요청/응답 스키마

│   ├── routers/                    # API 엔드포인트

│   │   ├── profiles.py             # 프로필 CRUD API

│   │   ├── activities.py           # 활동 조회 API

│   │   ├── wellness.py             # 웰니스 조회 API

│   │   ├── upload.py               # FIT 업로드 API

│   │   ├── reports.py              # 리포트 API

│   │   ├── auth.py                 # 인증 API

│   │   └── ai_health.py            # AI 상태 체크 API

│   └── services/                   # 비즈니스 로직

│       ├── profile_service.py      # 프로필 CRUD 서비스

│       ├── report_generator.py     # 리포트 생성 서비스

│       ├── report_converter.py     # 리포트 변환 서비스

│       ├── report_template.py      # 리포트 템플릿 엔진

│       ├── comparison_report_generator.py # 3-LLM 비교 리포트

│       ├── profile_prompt_mapping.py # 한국어 AI 프롬프트 매핑

│       └── ai_analysis/             # AI 분석 엔진 (4-Layer Architecture)

│           ├── __init__.py

│           ├── config.py            # AI 설정

│           ├── pipeline.py          # 분석 파이프라인 v1

│           ├── pipeline_v2.py       # 분석 파이프라인 v2

│           ├── orchestrator.py      # 분석 오케스트레이터

│           ├── provider_factory.py  # LLM 프로바이더 팩토리

│           ├── template_engine.py   # 템플릿 엔진

│           ├── rate_limiter.py      # API 호출 제한

│           ├── error_recovery.py    # 오류 복구

│           ├── token_tracker.py     # 토큰 사용량 추적

│           ├── contradiction_resolver.py # 모순 해결

│           ├── priority_sorter.py   # 우선순위 정렬

│           ├── causal_chain_builder.py # 인과 체인 구축

│           ├── report_sections.py   # 리포트 섹션 정의

│           ├── data_inventory.py    # 데이터 인벤토리

│           ├── stability_metrics.py # 안정성 메트릭

│           ├── fallback.py          # 폴백 처리

│           ├── deps.py              # 의존성 주입

│           ├── agents/              # 도메인 에이전트

│           │   ├── base.py          # 에이전트 기본 클래스

│           │   ├── cardio.py        # 심평 분석 에이전트

│           │   ├── biomechanics.py  # 생체역학 에이전트

│           │   ├── conditioning.py  # 컨디셔닝 에이전트

│           │   ├── pacing.py        # 페이싱 에이전트

│           │   ├── coaching.py      # 코칭 에이전트

│           │   ├── synthesis.py     # 종합 에이전트

│           │   ├── critic.py        # 비평 에이전트

│           │   └── micro/           # 15개 마이크로 에이전트

│           │       ├── base_micro.py    # 마이크로 에이전트 기본 클래스

│           │       ├── micro_registry.py # 에이전트 레지스트리

│           │       ├── ma_01_hr_zone.py ~ ma_15_injury_risk.py

│           ├── models/              # AI 분석 데이터 모델

│           │   └── agent_inputs.py  # 에이전트 입력 모델

│           ├── prompts/             # AI 프롬프트 템플릿

│           │   ├── cardio_prompt.py

│           │   ├── coaching_prompt.py

│           │   ├── synthesis_prompt.py

│           │   ├── biomechanics_prompt.py

│           │   ├── conditioning_prompt.py

│           │   ├── profile_mapping.py

│           │   └── micro/

│           │       ├── base_prompt_template.py

│           │       └── criteria/          # MA-01~15 평가 기준 정의

│           ├── providers/           # LLM 프로바이더 구현

│           │   ├── base.py          # 프로바이더 기본 클래스

│           │   ├── gemini.py        # Google Gemini

│           │   ├── groq.py          # Groq

│           │   └── upstage.py       # Upstage

│           ├── validators/          # AI 출력 검증

│           ├── evaluators/          # 리포트 품질 평가

│           │   └── report_metrics.py

│           └── templates/           # 리포트 템플릿 시스템

│               ├── macros/          # 재사용 템플릿 매크로

│               └── slots/           # 동적 템플릿 슬롯

├── scripts/                        # 유틸리티 스크립트 (하위 디렉토리 구조)

│   ├── lib/                        # 핵심 라이브러리

│   │   ├── fit_analysis.py         # FIT 러닝 데이터 분석 엔진

│   │   ├── fit_models.py           # FIT 분석 Pydantic 모델

│   │   ├── garmin_api.py           # Garmin FIT 다운로드 + fitparse 파싱

│   │   └── token_store.py          # AES-256-GCM 암호화 토큰 저장소

│   ├── util/                       # 유틸리티 CLI 스크립트

│   │   ├── di_token.py             # DI OAuth2 토큰 교환

│   │   ├── cleanup_completion.py   # 정리 완료 유틸리티

│   │   ├── docs_consolidation.py   # 문서 통합 유틸리티

│   │   └── final_report_m04.py     # 리포트 생성 유틸리티

│   ├── demo/                       # 데모 스크립트

│   │   ├── demo_pipeline.py        # 파이프라인 데모 스크립트

│   │   └── real_llm_pipeline.py    # 실제 LLM 파이프라인 테스트

│   ├── experiment/                 # 실험 스크립트

│   │   ├── llm_comparison_test.py  # LLM 비교 실험

│   │   ├── evaluate_report_quality.py     # 리포트 품질 평가 v1

│   │   ├── evaluate_report_quality_v2.py  # 리포트 품질 평가 v2

│   │   └── run_temperature_experiment.py  # 온도 실험

│   ├── report/                     # 리포트 생성 스크립트

│   │   ├── generate_daily_report.py       # 일일 리포트 생성

│   │   ├── run_comparison_report.py       # 비교 리포트 실행

│   │   ├── run_llm_comparison_reports.py  # LLM 비교 리포트 실행

│   │   └── run_pipeline_report.py         # 파이프라인 리포트 실행

│   └── debug/                      # 디버깅 스크립트

│       └── debug_prompt_tokens.py  # 프롬프트 토큰 디버깅

├── tests/                          # 테스트 (85%+ 커버리지)

│   ├── conftest.py                 # 공통 픽스처 (SQLite in-memory)

│   ├── fixtures/                   # 테스트 데이터

│   │   ├── fit/                    # FIT 테스트 픽스처 (Phase 2 이관)

│   │   ├── mock_garmin_responses.json

│   │   └── ai_analysis_samples/

│   ├── services/                   # 서비스 계층 테스트

│   │   └── ai_analysis/            # AI 분석 엔진 테스트 (43개 파일)

│   └── scripts/                    # 스크립트 테스트

├── alembic/                        # 데이터베이스 마이그레이션

│   └── versions/                   # 마이그레이션 스크립트

├── docs/                           # 기술 설계 및 분석 문서

│   └── setup/                      # 설정 가이드

│       └── macos-setup.md          # macOS 개발 환경 설정

├── .moai/                          # MoAI-ADK 설정 및 문서

│   ├── project/                    # 프로젝트 핵심 문서 (5개)

│   │   ├── product.md              # 제품 문서 (What)

│   │   ├── tech.md                 # 기술 스택 (With What)

│   │   ├── structure.md            # 프로젝트 구조 (How - Structure)

│   │   ├── workflow-guide.md       # 워크플로우 가이드 (How - Process)

│   │   ├── maintenance.md          # 유지보수 절차 (How - Ops)

│   │   ├── brand/                  # 브랜드 컨텍스트

│   │   ├── codemaps/               # 아키텍처 문서

│   │   └── db/                     # 데이터베이스 문서

│   ├── specs/                      # SPEC 문서 (카테고리별)

│   │   ├── infrastructure/         # DB, Infrastructure SPEC

│   │   ├── operations/             # DevOps, CI/CD SPEC

│   │   ├── product/                # Features, User Stories SPEC

│   │   └── quality/                # Testing, Security SPEC

│   ├── config/                     # MoAI 설정 (config.yaml + sections/)

│   ├── archive/                    # 보존 이관 문서

│   │   ├── feedback/               # 고아 피드백 (18개)

│   │   ├── history/                # 작업 히스토리

│   │   └── research/               # 브레인스토밍 등

│   ├── experiments/                # 실험 결과

│   │   ├── active/                 # 최근 실험 결과

│   │   └── archive/                # 이전 실험 결과

│   ├── reports/                    # 리포트

│   │   ├── coverage/               # 커버리지 리포트

│   │   ├── security/               # 보안 리포트

│   │   ├── mx-scans/               # MX 태그 스캔

│   │   ├── project/                # 프로젝트 리포트

│   │   │   ├── daily/

│   │   │   └── weekly/

│   │   ├── retrospectives/         # 회고

│   │   └── setup/                  # 설정 리포트

│   ├── research/                   # 연구 문서

│   │   ├── garmin/                 # Garmin 심측 분석

│   │   ├── evolution/              # 진화 로그

│   │   ├── learning/               # 학습

│   │   └── verification/           # 검증

│   ├── inbox/                      # 임시 작업 공간 (워크플로우 규칙)

│   ├── design/                     # 디자인 시스템

│   ├── state/                      # 상태 저장소

│   ├── plans/                      # 계획 문서

│   │   └── roadmap/                # 로드맵

│   ├── logs/                       # 로그

│   └── backups/                    # 백업

├── .github/                        # GitHub 설정

│   └── workflows/                  # CI/CD 워크플로우

├── Dockerfile                      # 멀티스테이지 Docker 빌드

├── docker-compose.yml              # PostgreSQL + API 서비스

├── pyproject.toml                  # 프로젝트 설정 (uv 기반)

├── alembic.ini                     # Alembic 설정

├── CLAUDE.md                       # MoAI 프레임워크 지시사항

└── README.md                       # 프로젝트 README 



'바이브코딩 다이어리' 카테고리의 다른 글

25 회고  (0) 2026.05.21
22 몇가지 상황들  (0) 2026.04.30
21 리포트 검토 그리고 문제점  (0) 2026.04.30
20. 러너프로필(수동 수집 정보)  (1) 2026.04.21
19. FIT 데이터 분석  (1) 2026.04.21