한 줄 목표
시연자 PC의 LM Studio 없이 Spring Boot Server + PostgreSQL + 별도 AI Runtime을 재현 가능한 HTTPS demo 환경에 연결합니다.
배포 구조
Client → Spring Boot Server → PostgreSQL
│
└→ AI Runtime → External LLM API / Cloud Endpoint
└→ pinned Knowledge Bundle
Server image에는 LLM Provider SDK와 API Key를 넣지 않습니다. Server는 AI Runtime base URL과 service credential만 압니다.
Server 저장소 구현 범위
설정 소유권
| 설정 |
소유 |
| DB URL/credential, JWT, CORS |
Server deployment |
| AI Runtime URL/service auth/deadline |
Server deployment |
| Provider API Key/model/prompt/agent |
AI Runtime deployment |
| Context Pack/Workflow Catalog bundle version |
Knowledge release, AI Runtime pin |
Smoke 흐름
/health와 DB readiness
- Login·tenant isolation
POST /api/v1/ai-runs → 202 + aiRunId
- Server → AI Runtime contract/version 확인
- 후보 결정 → Task 검토·승인 → Worker Link → 응답·완료
- Server 재시작 뒤 미완료 Run/Event 복구
- AI Runtime timeout에서 가짜 후보 없이 수동 처리 가능
완료 조건
경계 밖
관계
2026-08-04 · 배포 실패를 성공처럼 숨기지 않기
현재 배포 Workflow의 kubectl ... || echo 형태는 실제 rollout 실패도 성공한 Job처럼 보이게 할 수 있으므로 제거합니다.
한 줄 목표
시연자 PC의 LM Studio 없이 Spring Boot Server + PostgreSQL + 별도 AI Runtime을 재현 가능한 HTTPS demo 환경에 연결합니다.
배포 구조
Server image에는 LLM Provider SDK와 API Key를 넣지 않습니다. Server는 AI Runtime base URL과 service credential만 압니다.
Server 저장소 구현 범위
prodprofile, Flywayvalidate, connection pool 제한/health분리AI_RUNTIME_BASE_URL, service credential, timeout/concurrency, required contract/knowledge version 구성설정 소유권
Smoke 흐름
/health와 DB readinessPOST /api/v1/ai-runs→202 + aiRunId완료 조건
경계 밖
fowoco/aifowoco/knowledge관계
2026-08-04 · 배포 실패를 성공처럼 숨기지 않기
현재 배포 Workflow의
kubectl ... || echo형태는 실제 rollout 실패도 성공한 Job처럼 보이게 할 수 있으므로 제거합니다.infrarunbook으로 안내kubectl set image뒤kubectl rollout status --timeout=...확인