2.3 KiB
2.3 KiB
Repository API Report
이 문서는 각 리포지토리 모듈의 공개 API 명세를 정리합니다. 모든 서비스 레이어는 여기에 명시된 함수 시그니처를 따라야 합니다. uid는 어댑터 레이어에서 자동으로 주입되므로 서비스 레이어에서 전달해서는 안 됩니다.
Session Repository
Path: src/common/repositories/session/
getById(id: string)create(type: 'ask' | 'listen' = 'ask')getAllByUserId()updateTitle(id: string, title: string)deleteWithRelatedData(id:string)end(id: string)updateType(id: string, type: 'ask' | 'listen')touch(id: string)getOrCreateActive(requestedType: 'ask' | 'listen' = 'ask')endAllActiveSessions()
User Repository
Path: src/common/repositories/user/
findOrCreate(user: object)getById()saveApiKey(apiKey: string, provider: string)update(updateData: object)deleteById()
Preset Repository
Path: src/common/repositories/preset/
getPresets()getPresetTemplates()create(options: { title: string, prompt: string })update(id: string, options: { title: string, prompt: string })delete(id: string)
Ask Repository (AI Messages)
Path: src/features/ask/repositories/
addAiMessage(options: { sessionId: string, role: string, content: string, model?: string })getAllAiMessagesBySessionId(sessionId: string)
STT Repository (Transcripts)
Path: src/features/listen/stt/repositories/
addTranscript(options: { sessionId: string, speaker: string, text: string })getAllTranscriptsBySessionId(sessionId: string)
Summary Repository
Path: src/features/listen/summary/repositories/
saveSummary(options: { sessionId: string, tldr: string, text: string, bullet_json: string, action_json: string, model?: string })getSummaryBySessionId(sessionId: string)
Settings Repository (Presets)
Path: src/features/settings/repositories/
(Note: This is largely a duplicate of the main Preset Repository and might be a candidate for future refactoring.)
getPresets()getPresetTemplates()createPreset(options: { title: string, prompt: string })updatePreset(id: string, options: { title: string, prompt: string })deletePreset(id: string)