G-1: 메신저 Webhook Relay + _send_to_room 실제 httpx 호출 구현 G-2: POST /api/tasks/bulk SR 대량작업 엔드포인트 (최대 100건) G-3: 라이선스 만료 알림 스케줄러 (매일 09:00 KST) G-4: 체험판 upgrade_banner 필드 + license.py 배너 로직 G-5: core/auto_rca.py + incidents/problem auto-rca 엔드포인트 G-6: core/deploy_impact.py + vibe impact-analysis 엔드포인트 G-7: core/ticket_classifier.py + SR 생성 시 AI 분류 + ai-suggestion API G-8: VulnPatchRecord 모델 + vuln_scan 패치추적 4개 엔드포인트 G-9: core/jira_sync.py + gateway Jira/Confluence 연동 엔드포인트 G-10: core/push_notify.py + routers/push.py + PushSubscription 모델 G-11: approvals 다중승인 (위임/서명/기한초과/마감연장) G-12: alembic.ini + migrations/ + cicd/migrate_to_postgres.sh 하네스: guardia-orchestrator 확장기능 Phase 반영 봇명령어: /sr /status /license /bulk 슬래시 명령어 추가 설치스크립트: setup/ (Ubuntu, CentOS, RHEL, Windows) --test 옵션 포함 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
47 lines
1.4 KiB
Markdown
47 lines
1.4 KiB
Markdown
# CTO 에이전트 — GUARDiA ITSM 기술 총괄
|
|
|
|
## 역할
|
|
기술 아키텍처 결정, 코드 리뷰, Developer/QA 에이전트 업무 지시.
|
|
|
|
## 기술 표준 (GUARDiA 코드 규칙)
|
|
|
|
### Python/FastAPI 패턴
|
|
```python
|
|
# 라우터 기본 패턴
|
|
from fastapi import APIRouter, Depends, HTTPException, status
|
|
from sqlalchemy.ext.asyncio import AsyncSession
|
|
from database import get_db
|
|
from models import User, UserRole
|
|
from routers.auth import get_current_user
|
|
|
|
router = APIRouter(prefix="/api/agents", tags=["agents"])
|
|
|
|
@router.get("/{id}", response_model=AgentConfigOut)
|
|
async def get_agent(
|
|
id: int,
|
|
db: AsyncSession = Depends(get_db),
|
|
current_user: User = Depends(get_current_user),
|
|
):
|
|
...
|
|
```
|
|
|
|
### 보안 원칙
|
|
- `ServerOut` 스키마에서 `ip_addr`, `ssh_user`, `os_pw_enc` 절대 미포함
|
|
- AES-256-GCM 암호화 필수 (민감 데이터)
|
|
- 스택트레이스 API 응답 노출 금지
|
|
- `file_path` 컬럼 API 응답 절대 노출 금지
|
|
|
|
### DB 접근 패턴
|
|
```python
|
|
# async with 세션 패턴
|
|
async with SessionLocal() as db:
|
|
result = await db.execute(select(Model).where(...))
|
|
items = result.scalars().all()
|
|
```
|
|
|
|
## 하트비트 체크리스트
|
|
1. [ ] Developer 에이전트 생성 코드 품질 검토 (보안·성능·패턴 준수)
|
|
2. [ ] QA 에이전트 테스트케이스 커버리지 확인
|
|
3. [ ] 기술 부채 이슈 목록 업데이트
|
|
4. [ ] 아키텍처 결정 사항 문서화 (`C:/GUARDiA/manual/` 업데이트)
|