From 03e7fb443cc87e58c293992ec3406e133274d735 Mon Sep 17 00:00:00 2001 From: ZeR020 <88128532+ZeR020@users.noreply.github.com> Date: Sat, 9 May 2026 01:00:22 +0530 Subject: [PATCH] chore: full codebase review trigger --- src/config.ts | 1 + src/index.ts | 1 + src/plugin.ts | 1 + src/services/ai/ai-provider-factory.ts | 1 + src/services/ai/opencode-provider.ts | 1 + src/services/ai/provider-config.ts | 1 + src/services/ai/providers/anthropic-messages.ts | 1 + src/services/ai/providers/base-provider.ts | 1 + src/services/ai/providers/google-gemini.ts | 1 + src/services/ai/providers/openai-chat-completion.ts | 1 + src/services/ai/providers/openai-responses.ts | 1 + src/services/ai/session/ai-session-manager.ts | 1 + src/services/ai/session/session-types.ts | 1 + src/services/ai/tools/tool-schema.ts | 1 + src/services/ai/validators/user-profile-validator.ts | 1 + src/services/api-handlers.ts | 1 + src/services/auto-capture.ts | 1 + src/services/cleanup-service.ts | 1 + src/services/client.ts | 1 + src/services/context.ts | 1 + src/services/deduplication-service.ts | 1 + src/services/embedding.ts | 1 + src/services/jsonc.ts | 1 + src/services/language-detector.ts | 1 + src/services/logger.ts | 1 + src/services/memory-conflicts.ts | 1 + src/services/memory-lifecycle.ts | 1 + src/services/memory-scoring-service.ts | 1 + src/services/memory-scoring.ts | 1 + src/services/migration-service.ts | 1 + src/services/platform-server.ts | 1 + src/services/privacy.ts | 1 + src/services/retrieval-context.ts | 1 + src/services/secret-resolver.ts | 1 + src/services/sqlite/connection-manager.ts | 1 + src/services/sqlite/schema.ts | 1 + src/services/sqlite/shard-manager.ts | 1 + src/services/sqlite/sqlite-bootstrap.ts | 1 + src/services/sqlite/transcript-manager.ts | 1 + src/services/sqlite/types.ts | 1 + src/services/sqlite/vector-search.ts | 1 + src/services/tags.ts | 1 + src/services/transcript-capture.ts | 1 + src/services/user-memory-learning.ts | 1 + src/services/user-profile/profile-context.ts | 1 + src/services/user-profile/profile-utils.ts | 1 + src/services/user-profile/types.ts | 1 + src/services/user-profile/user-profile-manager.ts | 1 + src/services/user-prompt/user-prompt-manager.ts | 1 + src/services/utils/safe-transforms.ts | 1 + src/services/vector-backends/backend-factory.ts | 1 + src/services/vector-backends/exact-scan-backend.ts | 1 + src/services/vector-backends/nsw-backend.ts | 1 + src/services/vector-backends/types.ts | 1 + src/services/vector-backends/usearch-backend.ts | 1 + src/services/web-server.ts | 1 + src/types/index.ts | 1 + src/types/usearch.d.ts | 1 + src/web/app.js | 1 + src/web/i18n.js | 1 + tests/adaptive-overfetch.test.ts | 1 + tests/ai-provider-config.test.ts | 1 + tests/anthropic-provider.test.ts | 1 + tests/config-resolution.test.ts | 1 + tests/config.test.ts | 1 + tests/contextual-decay.test.ts | 1 + tests/embedding-cache-api.test.ts | 1 + tests/embedding-cache.test.ts | 1 + tests/embedding-degradation.test.ts | 1 + tests/language-detector.test.ts | 1 + tests/memory-engine.test.ts | 1 + tests/memory-scope.test.ts | 1 + tests/memory-scoring.test.ts | 1 + tests/nsw-backend.test.ts | 1 + tests/openai-chat-completion-provider.test.ts | 1 + tests/opencode-provider.test.ts | 1 + tests/plugin-loader-contract.test.ts | 1 + tests/privacy.test.ts | 1 + tests/profile-tool-runtime.test.ts | 1 + tests/profile-write.test.ts | 1 + tests/project-scope.test.ts | 1 + tests/query-aware-injection.test.ts | 1 + tests/schema-version.test.ts | 1 + tests/semantic-dedup-ingest.test.ts | 1 + tests/structured-format.test.ts | 1 + tests/tags.test.ts | 1 + tests/token-budget.test.ts | 1 + tests/tool-scope.test.ts | 1 + tests/vector-backends/backend-factory.test.ts | 1 + tests/vector-backends/exact-scan-backend.test.ts | 1 + tests/vector-backends/migration-fallback.test.ts | 1 + tests/vector-backends/usearch-backend.test.ts | 1 + tests/vector-search-backend-integration.test.ts | 1 + tests/wal-batch.test.ts | 1 + tests/windows-path.test.ts | 1 + 95 files changed, 95 insertions(+) diff --git a/src/config.ts b/src/config.ts index 4d62c66..761896e 100644 --- a/src/config.ts +++ b/src/config.ts @@ -1005,3 +1005,4 @@ export function isConfigured(): boolean { // The system should check specific sub-configurations when features are invoked. return true; } +// audit: src/config.ts diff --git a/src/index.ts b/src/index.ts index 2dc5b7c..0c68fa3 100644 --- a/src/index.ts +++ b/src/index.ts @@ -693,3 +693,4 @@ function formatMemoriesForCompaction(memories: any[]): string { return sections.join("\n"); } +// audit: src/index.ts diff --git a/src/plugin.ts b/src/plugin.ts index 085ca1b..bbdeefa 100644 --- a/src/plugin.ts +++ b/src/plugin.ts @@ -6,3 +6,4 @@ export const id = typeof pkg.name === "string" && pkg.name.trim() ? pkg.name.trim() : "opencode-mem0"; export { OpenCodeMemPlugin }; export default { id, server: OpenCodeMemPlugin } satisfies PluginModule; +// audit: src/plugin.ts diff --git a/src/services/ai/ai-provider-factory.ts b/src/services/ai/ai-provider-factory.ts index a7a7714..4e3661e 100644 --- a/src/services/ai/ai-provider-factory.ts +++ b/src/services/ai/ai-provider-factory.ts @@ -57,3 +57,4 @@ export class AIProviderFactory { return getAISessionManager().cleanupExpiredSessions(); } } +// audit: src/services/ai/ai-provider-factory.ts diff --git a/src/services/ai/opencode-provider.ts b/src/services/ai/opencode-provider.ts index 53108fd..661e288 100644 --- a/src/services/ai/opencode-provider.ts +++ b/src/services/ai/opencode-provider.ts @@ -297,3 +297,4 @@ export async function generateStructuredOutput(options: { }); return result.output as T; } +// audit: src/services/ai/opencode-provider.ts diff --git a/src/services/ai/provider-config.ts b/src/services/ai/provider-config.ts index 9913702..1b57348 100644 --- a/src/services/ai/provider-config.ts +++ b/src/services/ai/provider-config.ts @@ -33,3 +33,4 @@ export function buildMemoryProviderConfig( iterationTimeout: overrides.iterationTimeout ?? config.autoCaptureIterationTimeout, }; } +// audit: src/services/ai/provider-config.ts diff --git a/src/services/ai/providers/anthropic-messages.ts b/src/services/ai/providers/anthropic-messages.ts index d488e59..79f8a92 100644 --- a/src/services/ai/providers/anthropic-messages.ts +++ b/src/services/ai/providers/anthropic-messages.ts @@ -237,3 +237,4 @@ export class AnthropicMessagesProvider extends BaseAIProvider { return null; } } +// audit: src/services/ai/providers/anthropic-messages.ts diff --git a/src/services/ai/providers/base-provider.ts b/src/services/ai/providers/base-provider.ts index 2de3545..7517ee4 100644 --- a/src/services/ai/providers/base-provider.ts +++ b/src/services/ai/providers/base-provider.ts @@ -61,3 +61,4 @@ export abstract class BaseAIProvider { abstract supportsSession(): boolean; } +// audit: src/services/ai/providers/base-provider.ts diff --git a/src/services/ai/providers/google-gemini.ts b/src/services/ai/providers/google-gemini.ts index 188485a..73f74d8 100644 --- a/src/services/ai/providers/google-gemini.ts +++ b/src/services/ai/providers/google-gemini.ts @@ -271,3 +271,4 @@ export class GoogleGeminiProvider extends BaseAIProvider { return { success: false, error: `Max iterations (${maxIterations}) reached`, iterations }; } } +// audit: src/services/ai/providers/google-gemini.ts diff --git a/src/services/ai/providers/openai-chat-completion.ts b/src/services/ai/providers/openai-chat-completion.ts index b62c537..c3507ff 100644 --- a/src/services/ai/providers/openai-chat-completion.ts +++ b/src/services/ai/providers/openai-chat-completion.ts @@ -434,3 +434,4 @@ export class OpenAIChatCompletionProvider extends BaseAIProvider { }; } } +// audit: src/services/ai/providers/openai-chat-completion.ts diff --git a/src/services/ai/providers/openai-responses.ts b/src/services/ai/providers/openai-responses.ts index 70ce73d..058f975 100644 --- a/src/services/ai/providers/openai-responses.ts +++ b/src/services/ai/providers/openai-responses.ts @@ -233,3 +233,4 @@ export class OpenAIResponsesProvider extends BaseAIProvider { return data; } } +// audit: src/services/ai/providers/openai-responses.ts diff --git a/src/services/ai/session/ai-session-manager.ts b/src/services/ai/session/ai-session-manager.ts index 6147b7f..283fef7 100644 --- a/src/services/ai/session/ai-session-manager.ts +++ b/src/services/ai/session/ai-session-manager.ts @@ -320,3 +320,4 @@ export const aiSessionManager = { return getAISessionManager().getLastSequence.bind(getAISessionManager()); }, } as unknown as AISessionManager; +// audit: src/services/ai/session/ai-session-manager.ts diff --git a/src/services/ai/session/session-types.ts b/src/services/ai/session/session-types.ts index 64c6cd0..411cb99 100644 --- a/src/services/ai/session/session-types.ts +++ b/src/services/ai/session/session-types.ts @@ -41,3 +41,4 @@ export interface SessionUpdateParams { conversationId?: string; metadata?: Record; } +// audit: src/services/ai/session/session-types.ts diff --git a/src/services/ai/tools/tool-schema.ts b/src/services/ai/tools/tool-schema.ts index f48970c..18fe808 100644 --- a/src/services/ai/tools/tool-schema.ts +++ b/src/services/ai/tools/tool-schema.ts @@ -62,3 +62,4 @@ export class ToolSchemaConverter { }; } } +// audit: src/services/ai/tools/tool-schema.ts diff --git a/src/services/ai/validators/user-profile-validator.ts b/src/services/ai/validators/user-profile-validator.ts index 845e106..e11220e 100644 --- a/src/services/ai/validators/user-profile-validator.ts +++ b/src/services/ai/validators/user-profile-validator.ts @@ -118,3 +118,4 @@ export class UserProfileValidator { return errors; } } +// audit: src/services/ai/validators/user-profile-validator.ts diff --git a/src/services/api-handlers.ts b/src/services/api-handlers.ts index 7061a1a..1d073ae 100644 --- a/src/services/api-handlers.ts +++ b/src/services/api-handlers.ts @@ -1260,3 +1260,4 @@ export async function handleConflictStats(): Promise< return { success: false, error: "Internal error" }; } } +// audit: src/services/api-handlers.ts diff --git a/src/services/auto-capture.ts b/src/services/auto-capture.ts index 7aa0478..81f2ef7 100644 --- a/src/services/auto-capture.ts +++ b/src/services/auto-capture.ts @@ -376,3 +376,4 @@ async function generateSummary( tags: (result.data.tags || []).map((t: string) => t.toLowerCase().trim()), }; } +// audit: src/services/auto-capture.ts diff --git a/src/services/cleanup-service.ts b/src/services/cleanup-service.ts index 45bfd64..8565da8 100644 --- a/src/services/cleanup-service.ts +++ b/src/services/cleanup-service.ts @@ -131,3 +131,4 @@ export class CleanupService { } export const cleanupService = new CleanupService(); +// audit: src/services/cleanup-service.ts diff --git a/src/services/client.ts b/src/services/client.ts index 027acc9..a3cc619 100644 --- a/src/services/client.ts +++ b/src/services/client.ts @@ -453,3 +453,4 @@ export class LocalMemoryClient { } export const memoryClient = new LocalMemoryClient(); +// audit: src/services/client.ts diff --git a/src/services/context.ts b/src/services/context.ts index 51a02ba..f7e2e22 100644 --- a/src/services/context.ts +++ b/src/services/context.ts @@ -136,3 +136,4 @@ export function formatContextForPrompt( return parts.join("\n"); } +// audit: src/services/context.ts diff --git a/src/services/deduplication-service.ts b/src/services/deduplication-service.ts index 0caf71d..1ee1359 100644 --- a/src/services/deduplication-service.ts +++ b/src/services/deduplication-service.ts @@ -300,3 +300,4 @@ export class DeduplicationService { } export const deduplicationService = new DeduplicationService(); +// audit: src/services/deduplication-service.ts diff --git a/src/services/embedding.ts b/src/services/embedding.ts index 37dd755..7dea445 100644 --- a/src/services/embedding.ts +++ b/src/services/embedding.ts @@ -210,3 +210,4 @@ export class EmbeddingService { } export const embeddingService = EmbeddingService.getInstance(); +// audit: src/services/embedding.ts diff --git a/src/services/jsonc.ts b/src/services/jsonc.ts index 7959907..0d29bce 100644 --- a/src/services/jsonc.ts +++ b/src/services/jsonc.ts @@ -83,3 +83,4 @@ export function stripJsoncComments(content: string): string { // Remove trailing commas before } or ] return result.replace(/,\s*([}\]])/g, "$1"); } +// audit: src/services/jsonc.ts diff --git a/src/services/language-detector.ts b/src/services/language-detector.ts index 091af42..1681721 100644 --- a/src/services/language-detector.ts +++ b/src/services/language-detector.ts @@ -37,3 +37,4 @@ export function getLanguageName(code: string): string { } return lang?.name || "English"; } +// audit: src/services/language-detector.ts diff --git a/src/services/logger.ts b/src/services/logger.ts index f99b659..ae83589 100644 --- a/src/services/logger.ts +++ b/src/services/logger.ts @@ -114,3 +114,4 @@ export function warn(message: string, data?: unknown) { export function error(message: string, data?: unknown) { logWithLevel("error", message, data); } +// audit: src/services/logger.ts diff --git a/src/services/memory-conflicts.ts b/src/services/memory-conflicts.ts index ed852ef..8a640a2 100644 --- a/src/services/memory-conflicts.ts +++ b/src/services/memory-conflicts.ts @@ -684,3 +684,4 @@ export function getAllUnresolvedConflicts( return allConflicts.sort((a, b) => b.detectedAt - a.detectedAt).slice(0, limit); } +// audit: src/services/memory-conflicts.ts diff --git a/src/services/memory-lifecycle.ts b/src/services/memory-lifecycle.ts index 5dbc44d..4e1264f 100644 --- a/src/services/memory-lifecycle.ts +++ b/src/services/memory-lifecycle.ts @@ -548,3 +548,4 @@ export async function runLifecycleMaintenance(): Promise { _lifecycleIsRunning = false; } } +// audit: src/services/memory-lifecycle.ts diff --git a/src/services/memory-scoring-service.ts b/src/services/memory-scoring-service.ts index bfbbfb5..148a06c 100644 --- a/src/services/memory-scoring-service.ts +++ b/src/services/memory-scoring-service.ts @@ -239,3 +239,4 @@ export async function runOneTimeScoringRecalculation(): Promise<{ }> { return recalculateAllScores(true); } +// audit: src/services/memory-scoring-service.ts diff --git a/src/services/memory-scoring.ts b/src/services/memory-scoring.ts index 8cddaba..fb7baae 100644 --- a/src/services/memory-scoring.ts +++ b/src/services/memory-scoring.ts @@ -657,3 +657,4 @@ export function recordAccess(currentAccessCount: number): { lastAccessed: Date.now(), }; } +// audit: src/services/memory-scoring.ts diff --git a/src/services/migration-service.ts b/src/services/migration-service.ts index 465c35b..19b42d1 100644 --- a/src/services/migration-service.ts +++ b/src/services/migration-service.ts @@ -350,3 +350,4 @@ export class MigrationService { } export const migrationService = new MigrationService(); +// audit: src/services/migration-service.ts diff --git a/src/services/platform-server.ts b/src/services/platform-server.ts index 91952af..30cc843 100644 --- a/src/services/platform-server.ts +++ b/src/services/platform-server.ts @@ -108,3 +108,4 @@ export function serve(options: ServeOptions): Promise { return createNodeServer(options); } +// audit: src/services/platform-server.ts diff --git a/src/services/privacy.ts b/src/services/privacy.ts index e98a886..70c26ac 100644 --- a/src/services/privacy.ts +++ b/src/services/privacy.ts @@ -6,3 +6,4 @@ export function isFullyPrivate(content: string): boolean { const stripped = stripPrivateContent(content).trim(); return stripped === "[REDACTED]" || stripped === ""; } +// audit: src/services/privacy.ts diff --git a/src/services/retrieval-context.ts b/src/services/retrieval-context.ts index e66a047..fc0b8c9 100644 --- a/src/services/retrieval-context.ts +++ b/src/services/retrieval-context.ts @@ -404,3 +404,4 @@ export function calculateDiversityPenalty( return 0; } +// audit: src/services/retrieval-context.ts diff --git a/src/services/secret-resolver.ts b/src/services/secret-resolver.ts index b39f4f3..7d21187 100644 --- a/src/services/secret-resolver.ts +++ b/src/services/secret-resolver.ts @@ -67,3 +67,4 @@ export function resolveSecretValue(value: string | undefined): string | undefine return value; } +// audit: src/services/secret-resolver.ts diff --git a/src/services/sqlite/connection-manager.ts b/src/services/sqlite/connection-manager.ts index efbd71e..1f1bc65 100644 --- a/src/services/sqlite/connection-manager.ts +++ b/src/services/sqlite/connection-manager.ts @@ -236,3 +236,4 @@ function emergencyFlush(): void { process.once("SIGINT", emergencyFlush); process.once("SIGTERM", emergencyFlush); process.once("beforeExit", emergencyFlush); +// audit: src/services/sqlite/connection-manager.ts diff --git a/src/services/sqlite/schema.ts b/src/services/sqlite/schema.ts index 1b02b71..d4cdb95 100644 --- a/src/services/sqlite/schema.ts +++ b/src/services/sqlite/schema.ts @@ -78,3 +78,4 @@ export function runMigrations( } } } +// audit: src/services/sqlite/schema.ts diff --git a/src/services/sqlite/shard-manager.ts b/src/services/sqlite/shard-manager.ts index 3be7cdf..1856bfd 100644 --- a/src/services/sqlite/shard-manager.ts +++ b/src/services/sqlite/shard-manager.ts @@ -401,3 +401,4 @@ export class ShardManager { } export const shardManager = new ShardManager(); +// audit: src/services/sqlite/shard-manager.ts diff --git a/src/services/sqlite/sqlite-bootstrap.ts b/src/services/sqlite/sqlite-bootstrap.ts index 6c2a6c4..2f9afb6 100644 --- a/src/services/sqlite/sqlite-bootstrap.ts +++ b/src/services/sqlite/sqlite-bootstrap.ts @@ -126,3 +126,4 @@ export function getDatabase(): new (path: string) => Database { } return DatabaseImpl; } +// audit: src/services/sqlite/sqlite-bootstrap.ts diff --git a/src/services/sqlite/transcript-manager.ts b/src/services/sqlite/transcript-manager.ts index b7f388e..7cb7b5b 100644 --- a/src/services/sqlite/transcript-manager.ts +++ b/src/services/sqlite/transcript-manager.ts @@ -279,3 +279,4 @@ export class TranscriptManager { } export const transcriptManager = new TranscriptManager(); +// audit: src/services/sqlite/transcript-manager.ts diff --git a/src/services/sqlite/types.ts b/src/services/sqlite/types.ts index cfdaf9e..e64e0f6 100644 --- a/src/services/sqlite/types.ts +++ b/src/services/sqlite/types.ts @@ -84,3 +84,4 @@ export interface SearchResult { contextBoost?: number; finalScore?: number; } +// audit: src/services/sqlite/types.ts diff --git a/src/services/sqlite/vector-search.ts b/src/services/sqlite/vector-search.ts index d7ace73..8bc8a20 100644 --- a/src/services/sqlite/vector-search.ts +++ b/src/services/sqlite/vector-search.ts @@ -994,3 +994,4 @@ export class VectorSearch { } export const vectorSearch = new VectorSearch(); +// audit: src/services/sqlite/vector-search.ts diff --git a/src/services/tags.ts b/src/services/tags.ts index 14fd7b6..f135909 100644 --- a/src/services/tags.ts +++ b/src/services/tags.ts @@ -187,3 +187,4 @@ export function getTags(directory: string): { project: getProjectTagInfo(directory), }; } +// audit: src/services/tags.ts diff --git a/src/services/transcript-capture.ts b/src/services/transcript-capture.ts index e950504..83af551 100644 --- a/src/services/transcript-capture.ts +++ b/src/services/transcript-capture.ts @@ -92,3 +92,4 @@ export async function cleanupOldTranscripts(): Promise { return transcriptManager.deleteOldTranscripts(cutoffTime); } +// audit: src/services/transcript-capture.ts diff --git a/src/services/user-memory-learning.ts b/src/services/user-memory-learning.ts index 71aa337..dfb85e6 100644 --- a/src/services/user-memory-learning.ts +++ b/src/services/user-memory-learning.ts @@ -302,3 +302,4 @@ async function analyzeUserProfile( return rawData as UserProfileData; } +// audit: src/services/user-memory-learning.ts diff --git a/src/services/user-profile/profile-context.ts b/src/services/user-profile/profile-context.ts index 6578d14..038280a 100644 --- a/src/services/user-profile/profile-context.ts +++ b/src/services/user-profile/profile-context.ts @@ -52,3 +52,4 @@ export function getUserProfileContext(userId: string): string | null { return parts.join("\n"); } +// audit: src/services/user-profile/profile-context.ts diff --git a/src/services/user-profile/profile-utils.ts b/src/services/user-profile/profile-utils.ts index 8e58005..a692c1b 100644 --- a/src/services/user-profile/profile-utils.ts +++ b/src/services/user-profile/profile-utils.ts @@ -38,3 +38,4 @@ export const safeObject = (obj: any, fallback: T): T => { } return result && typeof result === "object" && !Array.isArray(result) ? (result as T) : fallback; }; +// audit: src/services/user-profile/profile-utils.ts diff --git a/src/services/user-profile/types.ts b/src/services/user-profile/types.ts index 2705f33..a118f4b 100644 --- a/src/services/user-profile/types.ts +++ b/src/services/user-profile/types.ts @@ -48,3 +48,4 @@ export interface UserProfileChangelog { profileDataSnapshot: string; createdAt: number; } +// audit: src/services/user-profile/types.ts diff --git a/src/services/user-profile/user-profile-manager.ts b/src/services/user-profile/user-profile-manager.ts index 61b8a60..9da3eae 100644 --- a/src/services/user-profile/user-profile-manager.ts +++ b/src/services/user-profile/user-profile-manager.ts @@ -418,3 +418,4 @@ export class UserProfileManager { } export const userProfileManager = new UserProfileManager(); +// audit: src/services/user-profile/user-profile-manager.ts diff --git a/src/services/user-prompt/user-prompt-manager.ts b/src/services/user-prompt/user-prompt-manager.ts index 160dcfc..9f4d501 100644 --- a/src/services/user-prompt/user-prompt-manager.ts +++ b/src/services/user-prompt/user-prompt-manager.ts @@ -303,3 +303,4 @@ export class UserPromptManager { } export const userPromptManager = new UserPromptManager(); +// audit: src/services/user-prompt/user-prompt-manager.ts diff --git a/src/services/utils/safe-transforms.ts b/src/services/utils/safe-transforms.ts index 3f92fc9..dc7cb72 100644 --- a/src/services/utils/safe-transforms.ts +++ b/src/services/utils/safe-transforms.ts @@ -38,3 +38,4 @@ export function safeJSONParse(jsonString: unknown): unknown { return undefined; } } +// audit: src/services/utils/safe-transforms.ts diff --git a/src/services/vector-backends/backend-factory.ts b/src/services/vector-backends/backend-factory.ts index f1cd4aa..70d4bc8 100644 --- a/src/services/vector-backends/backend-factory.ts +++ b/src/services/vector-backends/backend-factory.ts @@ -146,3 +146,4 @@ export async function createVectorBackend( return exactScanBackend; } } +// audit: src/services/vector-backends/backend-factory.ts diff --git a/src/services/vector-backends/exact-scan-backend.ts b/src/services/vector-backends/exact-scan-backend.ts index a23917d..8ae52f7 100644 --- a/src/services/vector-backends/exact-scan-backend.ts +++ b/src/services/vector-backends/exact-scan-backend.ts @@ -125,3 +125,4 @@ export class ExactScanBackend implements VectorBackend { return dot / (Math.sqrt(magA) * Math.sqrt(magB)); } } +// audit: src/services/vector-backends/exact-scan-backend.ts diff --git a/src/services/vector-backends/nsw-backend.ts b/src/services/vector-backends/nsw-backend.ts index 55a4ee6..2e3f0cb 100644 --- a/src/services/vector-backends/nsw-backend.ts +++ b/src/services/vector-backends/nsw-backend.ts @@ -335,3 +335,4 @@ export class NSWBackend implements VectorBackend { return new Float32Array(value); } } +// audit: src/services/vector-backends/nsw-backend.ts diff --git a/src/services/vector-backends/types.ts b/src/services/vector-backends/types.ts index bb11be1..9d65d56 100644 --- a/src/services/vector-backends/types.ts +++ b/src/services/vector-backends/types.ts @@ -45,3 +45,4 @@ export interface VectorBackendFactoryOptions { createUSearchBackend?: () => VectorBackend; createNSWBackend?: () => VectorBackend; } +// audit: src/services/vector-backends/types.ts diff --git a/src/services/vector-backends/usearch-backend.ts b/src/services/vector-backends/usearch-backend.ts index 1201543..0b47d74 100644 --- a/src/services/vector-backends/usearch-backend.ts +++ b/src/services/vector-backends/usearch-backend.ts @@ -265,3 +265,4 @@ export class USearchBackend implements VectorBackend { } } } +// audit: src/services/vector-backends/usearch-backend.ts diff --git a/src/services/web-server.ts b/src/services/web-server.ts index e9d7493..8bf90e8 100644 --- a/src/services/web-server.ts +++ b/src/services/web-server.ts @@ -532,3 +532,4 @@ export async function startWebServer(config: WebServerConfig): Promise { lucide.createIcons(); }); +// audit: src/web/app.js diff --git a/src/web/i18n.js b/src/web/i18n.js index e02929f..11e646c 100644 --- a/src/web/i18n.js +++ b/src/web/i18n.js @@ -265,3 +265,4 @@ window.t = t; window.getLanguage = getLanguage; window.setLanguage = setLanguage; window.applyLanguage = applyLanguage; +// audit: src/web/i18n.js diff --git a/tests/adaptive-overfetch.test.ts b/tests/adaptive-overfetch.test.ts index 8897f47..2eef523 100644 --- a/tests/adaptive-overfetch.test.ts +++ b/tests/adaptive-overfetch.test.ts @@ -323,3 +323,4 @@ describe("VectorSearch adaptive over-fetch", () => { expect(expectedLimit).toBeLessThanOrEqual(5 * 8); }); }); +// audit: tests/adaptive-overfetch.test.ts diff --git a/tests/ai-provider-config.test.ts b/tests/ai-provider-config.test.ts index 4f90730..c3926ff 100644 --- a/tests/ai-provider-config.test.ts +++ b/tests/ai-provider-config.test.ts @@ -239,3 +239,4 @@ describe("AI provider config", () => { expect(capturedBody?.temperature).toBeUndefined(); }); }); +// audit: tests/ai-provider-config.test.ts diff --git a/tests/anthropic-provider.test.ts b/tests/anthropic-provider.test.ts index 9738756..5aa58bf 100644 --- a/tests/anthropic-provider.test.ts +++ b/tests/anthropic-provider.test.ts @@ -105,3 +105,4 @@ describe("AnthropicMessagesProvider", () => { expect(capturedBody?.max_tokens).toBe(2048); }); }); +// audit: tests/anthropic-provider.test.ts diff --git a/tests/config-resolution.test.ts b/tests/config-resolution.test.ts index e5003f7..6a7b484 100644 --- a/tests/config-resolution.test.ts +++ b/tests/config-resolution.test.ts @@ -82,3 +82,4 @@ describe("project-scoped config resolution", () => { expect(CONFIG.opencodeProvider).toBeUndefined(); }); }); +// audit: tests/config-resolution.test.ts diff --git a/tests/config.test.ts b/tests/config.test.ts index a113f53..b9522a9 100644 --- a/tests/config.test.ts +++ b/tests/config.test.ts @@ -108,3 +108,4 @@ describe("config", () => { }); }); }); +// audit: tests/config.test.ts diff --git a/tests/contextual-decay.test.ts b/tests/contextual-decay.test.ts index 6291780..33dd380 100644 --- a/tests/contextual-decay.test.ts +++ b/tests/contextual-decay.test.ts @@ -325,3 +325,4 @@ describe("contextual-decay", () => { }); }); }); +// audit: tests/contextual-decay.test.ts diff --git a/tests/embedding-cache-api.test.ts b/tests/embedding-cache-api.test.ts index 9b8023f..a548473 100644 --- a/tests/embedding-cache-api.test.ts +++ b/tests/embedding-cache-api.test.ts @@ -38,3 +38,4 @@ describe("handleEmbeddingCacheStats", () => { expect(result.data?.rate).toBeCloseTo(1 / 3, 5); }); }); +// audit: tests/embedding-cache-api.test.ts diff --git a/tests/embedding-cache.test.ts b/tests/embedding-cache.test.ts index f571ffb..0b9842c 100644 --- a/tests/embedding-cache.test.ts +++ b/tests/embedding-cache.test.ts @@ -147,3 +147,4 @@ describe("EmbeddingService LRU cache", () => { expect(stats.rate).toBe(0.5); }); }); +// audit: tests/embedding-cache.test.ts diff --git a/tests/embedding-degradation.test.ts b/tests/embedding-degradation.test.ts index 6329033..5cee522 100644 --- a/tests/embedding-degradation.test.ts +++ b/tests/embedding-degradation.test.ts @@ -277,3 +277,4 @@ describe("VectorSearch FTS5 fallback when embedding unavailable", () => { expect(results[0].vectorSimilarity).toBeGreaterThan(0.5); // 1 - 0.1 = 0.9 }); }); +// audit: tests/embedding-degradation.test.ts diff --git a/tests/language-detector.test.ts b/tests/language-detector.test.ts index 2875117..e682d93 100644 --- a/tests/language-detector.test.ts +++ b/tests/language-detector.test.ts @@ -42,3 +42,4 @@ describe("getLanguageName", () => { expect(getLanguageName("xyz")).toBe("English"); }); }); +// audit: tests/language-detector.test.ts diff --git a/tests/memory-engine.test.ts b/tests/memory-engine.test.ts index 6e733c3..aedd4bd 100644 --- a/tests/memory-engine.test.ts +++ b/tests/memory-engine.test.ts @@ -787,3 +787,4 @@ describe("Memory Engine Integration", () => { }); }); }); +// audit: tests/memory-engine.test.ts diff --git a/tests/memory-scope.test.ts b/tests/memory-scope.test.ts index 5bad8b7..c2754d9 100644 --- a/tests/memory-scope.test.ts +++ b/tests/memory-scope.test.ts @@ -126,3 +126,4 @@ describe("memory scope", () => { expect(res.results.map((r: any) => r.id)).toEqual(["shard-a", "shard-b"]); }); }); +// audit: tests/memory-scope.test.ts diff --git a/tests/memory-scoring.test.ts b/tests/memory-scoring.test.ts index c7488ab..10c8476 100644 --- a/tests/memory-scoring.test.ts +++ b/tests/memory-scoring.test.ts @@ -193,3 +193,4 @@ describe("memory-scoring", () => { }); }); }); +// audit: tests/memory-scoring.test.ts diff --git a/tests/nsw-backend.test.ts b/tests/nsw-backend.test.ts index 05a932f..2757c00 100644 --- a/tests/nsw-backend.test.ts +++ b/tests/nsw-backend.test.ts @@ -377,3 +377,4 @@ describe("NSW backend factory integration", () => { expect(backend.getBackendName()).toBe("exact-scan"); }); }); +// audit: tests/nsw-backend.test.ts diff --git a/tests/openai-chat-completion-provider.test.ts b/tests/openai-chat-completion-provider.test.ts index c9a921f..7f04e68 100644 --- a/tests/openai-chat-completion-provider.test.ts +++ b/tests/openai-chat-completion-provider.test.ts @@ -444,3 +444,4 @@ describe("OpenAIChatCompletionProvider", () => { expect(result.success).toBe(false); }); }); +// audit: tests/openai-chat-completion-provider.test.ts diff --git a/tests/opencode-provider.test.ts b/tests/opencode-provider.test.ts index c1a6766..4f46e6b 100644 --- a/tests/opencode-provider.test.ts +++ b/tests/opencode-provider.test.ts @@ -177,3 +177,4 @@ describe("state management", () => { expect(isProviderConnected("gemini")).toBe(false); }); }); +// audit: tests/opencode-provider.test.ts diff --git a/tests/plugin-loader-contract.test.ts b/tests/plugin-loader-contract.test.ts index 292a95e..4a6b464 100644 --- a/tests/plugin-loader-contract.test.ts +++ b/tests/plugin-loader-contract.test.ts @@ -81,3 +81,4 @@ describe("OpenCode 1.3.x plugin-loader contract", () => { } }); }); +// audit: tests/plugin-loader-contract.test.ts diff --git a/tests/privacy.test.ts b/tests/privacy.test.ts index 399192d..f1d509e 100644 --- a/tests/privacy.test.ts +++ b/tests/privacy.test.ts @@ -72,3 +72,4 @@ describe("privacy", () => { }); }); }); +// audit: tests/privacy.test.ts diff --git a/tests/profile-tool-runtime.test.ts b/tests/profile-tool-runtime.test.ts index 06f0fa8..08bbc01 100644 --- a/tests/profile-tool-runtime.test.ts +++ b/tests/profile-tool-runtime.test.ts @@ -210,3 +210,4 @@ describe("memory tool profile runtime behavior", () => { ); }); }); +// audit: tests/profile-tool-runtime.test.ts diff --git a/tests/profile-write.test.ts b/tests/profile-write.test.ts index 30ab96a..5b9d1f7 100644 --- a/tests/profile-write.test.ts +++ b/tests/profile-write.test.ts @@ -211,3 +211,4 @@ describe("UserProfileManager – explicit preference writes", () => { expect(last.changeType).toBe("update"); }); }); +// audit: tests/profile-write.test.ts diff --git a/tests/project-scope.test.ts b/tests/project-scope.test.ts index 26a7d41..354f55c 100644 --- a/tests/project-scope.test.ts +++ b/tests/project-scope.test.ts @@ -75,3 +75,4 @@ describe("project scope identity", () => { expect(rootTag.projectPath).toBe(nestedTag.projectPath); }); }); +// audit: tests/project-scope.test.ts diff --git a/tests/query-aware-injection.test.ts b/tests/query-aware-injection.test.ts index 743bc84..a515a85 100644 --- a/tests/query-aware-injection.test.ts +++ b/tests/query-aware-injection.test.ts @@ -227,3 +227,4 @@ describe("query-aware-injection", () => { }); }); }); +// audit: tests/query-aware-injection.test.ts diff --git a/tests/schema-version.test.ts b/tests/schema-version.test.ts index d64ffef..56bc713 100644 --- a/tests/schema-version.test.ts +++ b/tests/schema-version.test.ts @@ -106,3 +106,4 @@ describe("schema versioning", () => { db.close(); }); }); +// audit: tests/schema-version.test.ts diff --git a/tests/semantic-dedup-ingest.test.ts b/tests/semantic-dedup-ingest.test.ts index 0c0c909..fbf008f 100644 --- a/tests/semantic-dedup-ingest.test.ts +++ b/tests/semantic-dedup-ingest.test.ts @@ -240,3 +240,4 @@ describe("semantic deduplication at ingest", () => { expect(count).toBe(2); }); }); +// audit: tests/semantic-dedup-ingest.test.ts diff --git a/tests/structured-format.test.ts b/tests/structured-format.test.ts index d62ad18..d79b355 100644 --- a/tests/structured-format.test.ts +++ b/tests/structured-format.test.ts @@ -161,3 +161,4 @@ describe("structured-format", () => { }); }); }); +// audit: tests/structured-format.test.ts diff --git a/tests/tags.test.ts b/tests/tags.test.ts index dd1bd18..92702f0 100644 --- a/tests/tags.test.ts +++ b/tests/tags.test.ts @@ -30,3 +30,4 @@ describe("tags", () => { }); }); }); +// audit: tests/tags.test.ts diff --git a/tests/token-budget.test.ts b/tests/token-budget.test.ts index ebb3313..f34f8b7 100644 --- a/tests/token-budget.test.ts +++ b/tests/token-budget.test.ts @@ -151,3 +151,4 @@ describe("token-budget", () => { expect(result).toContain("memory two"); }); }); +// audit: tests/token-budget.test.ts diff --git a/tests/tool-scope.test.ts b/tests/tool-scope.test.ts index b5b20b0..779fa15 100644 --- a/tests/tool-scope.test.ts +++ b/tests/tool-scope.test.ts @@ -170,3 +170,4 @@ describe("tool memory scope", () => { expect(lastListScope).toBe("project"); }); }); +// audit: tests/tool-scope.test.ts diff --git a/tests/vector-backends/backend-factory.test.ts b/tests/vector-backends/backend-factory.test.ts index bd6f68b..e6a4430 100644 --- a/tests/vector-backends/backend-factory.test.ts +++ b/tests/vector-backends/backend-factory.test.ts @@ -117,3 +117,4 @@ describe("vector backend factory", () => { expect(backend.getBackendName()).toBe("exact-scan"); }); }); +// audit: tests/vector-backends/backend-factory.test.ts diff --git a/tests/vector-backends/exact-scan-backend.test.ts b/tests/vector-backends/exact-scan-backend.test.ts index fc1cbfd..da6829c 100644 --- a/tests/vector-backends/exact-scan-backend.test.ts +++ b/tests/vector-backends/exact-scan-backend.test.ts @@ -110,3 +110,4 @@ describe("ExactScanBackend", () => { expect(result).toEqual([]); }); }); +// audit: tests/vector-backends/exact-scan-backend.test.ts diff --git a/tests/vector-backends/migration-fallback.test.ts b/tests/vector-backends/migration-fallback.test.ts index c562ce8..c4e72c5 100644 --- a/tests/vector-backends/migration-fallback.test.ts +++ b/tests/vector-backends/migration-fallback.test.ts @@ -88,3 +88,4 @@ describe("migration with backend abstraction", () => { expect(results.map((r) => r.id)).toEqual(["a"]); }); }); +// audit: tests/vector-backends/migration-fallback.test.ts diff --git a/tests/vector-backends/usearch-backend.test.ts b/tests/vector-backends/usearch-backend.test.ts index a4599e3..1b331e8 100644 --- a/tests/vector-backends/usearch-backend.test.ts +++ b/tests/vector-backends/usearch-backend.test.ts @@ -148,3 +148,4 @@ describe("USearchBackend", () => { expect(result.map((x) => x.id)).toEqual(["alpha"]); }); }); +// audit: tests/vector-backends/usearch-backend.test.ts diff --git a/tests/vector-search-backend-integration.test.ts b/tests/vector-search-backend-integration.test.ts index 6d5683b..c421f05 100644 --- a/tests/vector-search-backend-integration.test.ts +++ b/tests/vector-search-backend-integration.test.ts @@ -221,3 +221,4 @@ describe("vector search backend integration", () => { expect(typeof results[0]?.similarity).toBe("number"); }); }); +// audit: tests/vector-search-backend-integration.test.ts diff --git a/tests/wal-batch.test.ts b/tests/wal-batch.test.ts index c65f52b..a8cde52 100644 --- a/tests/wal-batch.test.ts +++ b/tests/wal-batch.test.ts @@ -151,3 +151,4 @@ describe("WAL batch write API", () => { expect(rows2).toHaveLength(1); }); }); +// audit: tests/wal-batch.test.ts diff --git a/tests/windows-path.test.ts b/tests/windows-path.test.ts index 18fd0a2..1eaadb5 100644 --- a/tests/windows-path.test.ts +++ b/tests/windows-path.test.ts @@ -94,3 +94,4 @@ describe("Windows Path Handling", () => { }); }); }); +// audit: tests/windows-path.test.ts