/** * @fileoverview ReasoningBank Integration for Learning Loop * @module @skillsmith/core/learning/ReasoningBankIntegration * @see SMI-1520: Integrate learning loop with V3 intelligence module * * Provides integration between Skillsmith's signal collection and * Claude-Flow V3's ReasoningBank for pattern storage and learning. */ import type { ISignalCollector } from './interfaces.js'; import type { SignalEvent, SignalFilter, RecommendationContext, SignalMetadata, DismissReason } from './types.js'; export type { IntelligenceConfig, TrajectoryStep, TrajectoryVerdict, SimilarPattern, PatternSearchOptions, IReasoningBank, SkillVerdict, BatchVerdictResult, ReasoningBankIntegrationConfig, } from './ReasoningBankIntegration.types.js'; export { TRAJECTORY_REWARDS, CONFIDENCE_THRESHOLDS, DEFAULT_CONFIG, } from './ReasoningBankIntegration.types.js'; export { hasConfidentVerdict, indicatesPreference, indicatesRejection, } from './ReasoningBankIntegration.helpers.js'; import type { SkillVerdict, BatchVerdictResult, ReasoningBankIntegrationConfig } from './ReasoningBankIntegration.types.js'; /** * ReasoningBankIntegration bridges Skillsmith's learning loop with V3's intelligence module. * * This class: * 1. Implements ISignalCollector for drop-in replacement * 2. Converts user signals to ReasoningBank trajectories * 3. Provides verdict queries for learned skill confidence * 4. Maintains backwards compatibility via dual-write mode * * @example * ```typescript * const integration = new ReasoningBankIntegration({ * intelligenceConfig: { enableNeural: true }, * enableDualWrite: true, * }) * await integration.initialize() * * await integration.recordAccept('anthropic/commit', context) * const verdict = await integration.getVerdict('anthropic/commit') * ``` */ export declare class ReasoningBankIntegration implements ISignalCollector { private config; private reasoningBank; private legacyCollector; private initialized; constructor(config?: ReasoningBankIntegrationConfig); initialize(): Promise; isInitialized(): boolean; recordAccept(skillId: string, context: RecommendationContext, metadata?: SignalMetadata): Promise; recordDismiss(skillId: string, context: RecommendationContext, reason?: DismissReason): Promise; recordUsage(skillId: string, frequency: 'daily' | 'weekly'): Promise; recordAbandonment(skillId: string, daysSinceInstall: number): Promise; recordUninstall(skillId: string, daysSinceInstall: number): Promise; getSignals(filter: SignalFilter, limit?: number): Promise; getSignalCount(): Promise; getSignalsForSkill(skillId: string): Promise; getVerdict(skillId: string): Promise; getBatchVerdicts(skillIds: string[]): Promise; getTopSkillsByConfidence(limit?: number): Promise; private ensureInitialized; private createTrajectory; private recordTrajectoryInternal; } /** * Create and initialize a ReasoningBankIntegration instance */ export declare function createReasoningBankIntegration(config?: ReasoningBankIntegrationConfig): Promise; //# sourceMappingURL=ReasoningBankIntegration.d.ts.map