feat: ship v0.6.0 with cockpit, knowledge base, and chapter bridge
Deliver P5 writer workflow: writing cockpit, manual knowledge CRUD with review, chapter bridge with optional AI, publish status, and stock buffer reminders. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Vendored
+47
-1
@@ -33,7 +33,14 @@ import type {
|
||||
SnapshotType,
|
||||
UpdateChapterParams,
|
||||
Volume,
|
||||
WordFreqResult
|
||||
WordFreqResult,
|
||||
KnowledgeEntry,
|
||||
CreateKnowledgeInput,
|
||||
KnowledgeStatus,
|
||||
KnowledgeType,
|
||||
CockpitSummary,
|
||||
ChapterBridgeResult,
|
||||
PublishStatus
|
||||
} from './types'
|
||||
|
||||
export interface ElectronAPI {
|
||||
@@ -77,6 +84,11 @@ export interface ElectronAPI {
|
||||
targetVolumeId: string,
|
||||
targetIndex: number
|
||||
) => Promise<IpcResult<Chapter>>
|
||||
setPublishStatus: (
|
||||
bookId: string,
|
||||
chapterId: string,
|
||||
publishStatus: PublishStatus
|
||||
) => Promise<IpcResult<Chapter>>
|
||||
}
|
||||
outline: {
|
||||
list: (bookId: string) => Promise<IpcResult<OutlineItem[]>>
|
||||
@@ -307,6 +319,40 @@ export interface ElectronAPI {
|
||||
handoffInteractive: (bookId: string, flowId: string) => Promise<IpcResult<InteractiveFlow>>
|
||||
abort: (flowId: string) => Promise<IpcResult<void>>
|
||||
}
|
||||
knowledge: {
|
||||
list: (
|
||||
bookId: string,
|
||||
filter?: { status?: KnowledgeStatus; type?: KnowledgeType; forgottenOnly?: boolean }
|
||||
) => Promise<IpcResult<KnowledgeEntry[]>>
|
||||
create: (bookId: string, input: CreateKnowledgeInput) => Promise<IpcResult<KnowledgeEntry>>
|
||||
update: (
|
||||
bookId: string,
|
||||
id: string,
|
||||
patch: Partial<CreateKnowledgeInput & { status: KnowledgeStatus }>
|
||||
) => Promise<IpcResult<KnowledgeEntry>>
|
||||
delete: (bookId: string, id: string) => Promise<IpcResult<void>>
|
||||
approve: (bookId: string, id: string) => Promise<IpcResult<KnowledgeEntry>>
|
||||
reject: (bookId: string, id: string) => Promise<IpcResult<KnowledgeEntry>>
|
||||
batchApprove: (bookId: string, ids: string[]) => Promise<IpcResult<number>>
|
||||
createFromBookmark: (bookId: string, bookmarkId: string) => Promise<IpcResult<KnowledgeEntry>>
|
||||
stats: (
|
||||
bookId: string
|
||||
) => Promise<IpcResult<{ buried: number; resolved: number; forgotten: number }>>
|
||||
}
|
||||
cockpit: {
|
||||
getSummary: (bookId: string, volumeId?: string) => Promise<IpcResult<CockpitSummary>>
|
||||
markSeen: (bookId: string) => Promise<IpcResult<void>>
|
||||
shouldShowOnOpen: (bookId: string) => Promise<IpcResult<boolean>>
|
||||
}
|
||||
bridge: {
|
||||
get: (
|
||||
bookId: string,
|
||||
chapterId: string,
|
||||
withAi?: boolean
|
||||
) => Promise<IpcResult<ChapterBridgeResult>>
|
||||
dismiss: (bookId: string, chapterId: string) => Promise<IpcResult<void>>
|
||||
shouldPrompt: (bookId: string, chapterId: string) => Promise<IpcResult<boolean>>
|
||||
}
|
||||
wordfreq: {
|
||||
analyze: (
|
||||
bookId: string,
|
||||
|
||||
Reference in New Issue
Block a user