An AI prompt optimizer for writing better prompts and getting better AI results.
This report summarizes scanner evidence for linshenkx/prompt-optimizer, a TypeScript project with 40,062 GitHub stars. SynthScan examined 444,010 lines of code across 2033 source files, recording 294 pattern matches distributed across 6 syntactic categories. The legacy adjusted pattern signal is 0.8 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 177 finding(s).
Are imports declared and package/API names verified? 117 finding(s).
Are wrappers, guards, and repeated structures necessary? 150 finding(s).
Which changes need focused human review? 294 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 294 distinct pattern matches across 6 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/e2e/favorite-management.spec.ts | 78 | async function closeFavoritesDrawerIfOpen(page: Page): Promise<void> { | CODE |
| LOW | tests/e2e/favorite-management.spec.ts | 86 | async function createFavoriteWithReproData( | CODE |
| LOW | tests/e2e/fixtures.ts | 14 | function shouldIgnoreConsoleMessage(message: string): boolean { | CODE |
| LOW | tests/e2e/e2e-vcr-guide.md | 133 | function getFixtureNameFromRequest(request: any): string { | CODE |
| LOW | tests/e2e/data-management-tasks.spec.ts | 31 | async function assertNoHorizontalOverflow(page: Page) { | CODE |
| LOW | tests/e2e/analysis/pro-multi.spec.ts | 20 | async function getPromptPanelEvaluationScore(page: Page): Promise<number> { | CODE |
| LOW | tests/e2e/analysis/pro-multi.spec.ts | 41 | async function triggerPromptPanelAnalyze(page: Page): Promise<void> { | CODE |
| LOW | tests/e2e/analysis/pro-multi.spec.ts | 48 | async function expectPromptAnalysisStarted(page: Page): Promise<void> { | CODE |
| LOW | tests/e2e/test/image-image2image-generate.spec.ts | 8 | async function openSelectAndWaitForVisibleOptions(page: any, select: any) { | CODE |
| LOW | tests/e2e/test/image-image2image-generate.spec.ts | 60 | async function selectPreferredMultimodalTextModel(page: any, select: any) { | CODE |
| LOW | tests/e2e/helpers/vcr.ts | 113 | export function throwIfCurrentTestHasVCRFailure(): void { | CODE |
| LOW | tests/e2e/helpers/vcr.ts | 126 | export async function waitForConditionOrVCRFailure( | CODE |
| LOW | tests/e2e/helpers/evaluation.ts | 6 | export async function clickEvaluateButtonWithin(container: Locator): Promise<void> { | CODE |
| LOW | tests/e2e/helpers/evaluation.ts | 46 | export async function openEvaluationDrawerFromBadge(badge: Locator): Promise<Locator> { | CODE |
| LOW | tests/e2e/helpers/evaluation.ts | 91 | export async function openEvaluationDrawerFromHoverCard(page: Page): Promise<Locator> { | CODE |
| LOW | tests/e2e/helpers/evaluation.ts | 132 | export async function expectStructuredCompareDrawer(drawer: Locator): Promise<void> { | CODE |
| LOW | tests/e2e/helpers/evaluation.ts | 155 | export async function expectPromptVersionTagVisible( | CODE |
| LOW | tests/e2e/helpers/analysis.ts | 167 | export async function closeEvaluationPanelIfOpen(page: Page): Promise<void> { | CODE |
| LOW | tests/e2e/helpers/analysis.ts | 190 | export async function verifyAnalyzeButtonDisabledWhenEmpty( | CODE |
| LOW | tests/e2e/helpers/optimize.ts | 119 | export async function expectOutputByTestIdNotEmpty(page: Page, testId: string, opts?: { timeoutMs?: number }) { | CODE |
| LOW | tests/e2e/helpers/optimize.ts | 139 | export async function expectOptimizedResultNotEmpty(page: Page, mode: OptimizeWorkspaceMode) { | CODE |
| LOW | tests/e2e/helpers/optimize.ts | 207 | export async function verifyOptimizeButtonDisabledWhenEmpty(page: Page, mode: OptimizeWorkspaceMode) { | CODE |
| LOW | tests/e2e/helpers/optimize.ts | 245 | export async function selectProMultiMessageForOptimization(page: Page, index: number) { | CODE |
| LOW | tests/e2e/helpers/optimize.ts | 255 | export async function clickProMultiOptimizeButton(page: Page) { | CODE |
| LOW | …ssion-persistence/model-default-and-cross-mode.spec.ts | 114 | async function openSelectAndWaitForOptions(page: any, select: any) { | CODE |
| LOW | …on-persistence/template-default-and-cross-mode.spec.ts | 108 | async function openSelectAndWaitForOptions(page: any, select: any) { | CODE |
| LOW | …e/session-persistence/workspace-source-preview.spec.ts | 72 | async function expectReadableThroughLastLine(modal: Locator, source: 'ORIGINAL' | 'WORKSPACE') { | CODE |
| LOW | …2e/session-persistence/workspace-clear-content.spec.ts | 79 | async function expectOriginalPromptValue(page: Page, mode: ClearableWorkspaceMode, value: string) { | CODE |
| LOW | …2e/session-persistence/workspace-clear-content.spec.ts | 119 | async function expectTestInputClearedIfAvailable(page: Page, mode: ClearableWorkspaceMode) { | CODE |
| LOW | …2e/session-persistence/workspace-clear-content.spec.ts | 126 | async function seedAndPersistDerivedState(page: Page, mode: ClearableWorkspaceMode) { | CODE |
| LOW | …2e/session-persistence/workspace-clear-content.spec.ts | 278 | async function fillPromptWithoutWaitingForActions(page: Page, mode: ClearableWorkspaceMode, value: string) { | CODE |
| LOW | …2e/session-persistence/workspace-clear-content.spec.ts | 313 | async function expectProMultiSeedMessage(page: Page, visible: boolean) { | CODE |
| LOW | …ssion-persistence/image-multiimage-persistence.spec.ts | 23 | async function expectMultiImagePromptValue( | CODE |
| LOW | …-single-source-refactor/bug-fix-testresults-display.md | 494 | export function useBasicWorkspaceOperations(options: { | CODE |
| LOW | …sion-persistence-plans/architecture-migration-guide.md | 194 | export function useBasicWorkspaceOperations(options: UseBasicWorkspaceOperationsOptions) { | CODE |
| LOW | …n-persistence-plans/architecture-migration-analysis.md | 260 | export function useBasicWorkspaceOperations(options) { | CODE |
| LOW | …hives/118-desktop-auto-update-system/implementation.md | 223 | function createDetailedErrorResponse(error) { | CODE |
| LOW | …es/127-multi-turn-dialogue-mode-optimization/design.md | 690 | export function useConversationOptimization( | CODE |
| LOW | docs/archives/117-pinia-refactoring/fix-plan.md | 184 | export function createPreferenceServiceStub( | CODE |
| LOW | …s/archives/117-pinia-refactoring/code-review-claude.md | 105 | export function createScopedPiniaServices() { | CODE |
| LOW | …-import-export-architecture-refactor/implementation.md | 24 | class DataManager { | CODE |
| LOW | docs/testing/e2e-selector-strategy.md | 280 | export async function verifyAnalyzeButtonDisabledWhenEmpty( | CODE |
| LOW | docs/architecture/import-export-interface-design.md | 126 | class DataManager { | CODE |
| LOW | docs/architecture/storage-refactoring-summary.md | 106 | export function createTemplateLanguageService(storageProvider: IStorageProvider): TemplateLanguageService { | CODE |
| LOW | docs/architecture/storage-refactoring-summary.md | 111 | export function createTemplateLanguageService( | CODE |
| LOW | docs/architecture/llm-refactor.md | 188 | export async function convertLegacyToTextModelConfigWithRegistry( | CODE |
| LOW | scripts/release-notes.js | 66 | function getReleaseNotesRelativePath(version, locale, cwd = process.cwd()) { | CODE |
| LOW | scripts/release-notes.js | 154 | function isNoChangeProductSubsection(body) { | CODE |
| LOW | scripts/release-notes.js | 190 | function validateProductSubsectionOrder(content, locale) { | CODE |
| LOW | scripts/release-notes.js | 236 | function validateReleaseNotesContent(content, version, locale, options = {}) { | CODE |
| LOW | scripts/release-notes.js | 428 | function buildReleaseNotesTemplate({ version, locale, commitDraft = [] }) { | CODE |
| LOW | scripts/release-notes.js | 556 | function prepareReleaseNotesForGitHubBody(content, version, cwd = process.cwd()) { | CODE |
| LOW | …/tests/unit/components/TemporaryVariablesPanel.spec.ts | 174 | function createPanelManagerFixture() { | CODE |
| LOW | packages/ui/tests/utils/pinia-test-helpers.ts | 32 | export function createPreferenceServiceStub( | CODE |
| LOW | packages/ui/src/composables/ui/useSelectMenuViewport.ts | 7 | export function getSelectMenuViewportLayout( | CODE |
| LOW | packages/ui/src/composables/ui/useCompactModalBack.ts | 53 | export async function releaseCompactOverlayHistory() { | CODE |
| LOW | …kages/ui/src/composables/ui/useAppUpdatePreparation.ts | 4 | export function createAppUpdatePreparation(options: { | CODE |
| LOW | …ges/ui/src/composables/app/useAppPromptGardenImport.ts | 893 | async function buildStorableGardenSnapshot( | CODE |
| LOW | …rc/composables/variable/useVariableAwareInputBridge.ts | 62 | export function useVariableAwareInputBridge(params: UseVariableAwareInputBridgeParams) { | CODE |
| LOW | …src/composables/variable/useVariableValueGeneration.ts | 46 | export function useVariableValueGeneration( | CODE |
| 90 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | README.md | 314 | -e VITE_CUSTOM_API_KEY_ollama=dummy_key | CODE |
| LOW | README.zh-CN.md | 311 | -e VITE_CUSTOM_API_KEY_ollama=dummy_key | CODE |
| LOW | docs/user/multi-custom-models_en.md | 44 | VITE_CUSTOM_API_KEY_qwen25=ollama-dummy-key | CODE |
| LOW | docs/user/multi-custom-models_en.md | 49 | VITE_CUSTOM_API_KEY_qwen3=ollama-dummy-key | CODE |
| LOW | docs/user/multi-custom-models_en.md | 74 | VITE_CUSTOM_API_KEY_local=dummy-key | CODE |
| LOW | docs/user/multi-custom-models_en.md | 139 | VITE_CUSTOM_API_KEY_ollama=dummy-key | CODE |
| LOW | docs/user/multi-custom-models_en.md | 152 | -e VITE_CUSTOM_API_KEY_ollama=dummy-key \ | CODE |
| LOW | docs/user/multi-custom-models_en.md | 171 | VITE_CUSTOM_API_KEY_ollama=dummy-key | CODE |
| LOW | docs/user/multi-custom-models.md | 190 | -e VITE_CUSTOM_API_KEY_ollama=dummy-key \ | CODE |
| LOW | docs/user/multi-custom-models.md | 209 | VITE_CUSTOM_API_KEY_ollama=dummy-key | CODE |
| LOW | docs/archives/125-test-area-refactor/test-area.md | 193 | :placeholder="placeholder" | CODE |
| LOW | …s/archives/122-naive-ui-migration/functional-design.md | 186 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/README.md | 128 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/tests/unit/components/DataManager.spec.ts | 142 | props: ['value', 'options', 'placeholder', 'filterable', 'disabled'], | CODE |
| LOW | packages/ui/tests/unit/components/DataManager.spec.ts | 151 | 'placeholder', | CODE |
| LOW | …es/ui/tests/unit/components/VariableAwareInput.spec.ts | 37 | expect(wrapper.props('placeholder')).toBe('请输入内容') | CODE |
| LOW | …s/ui/tests/unit/components/FavoriteImportPanel.spec.ts | 64 | props: ['value', 'type', 'placeholder', 'autosize'], | CODE |
| LOW | packages/ui/tests/unit/components/ContextEditor.spec.ts | 87 | template: '<textarea v-if="type === \'textarea\'" class="n-input" :value="value" :placeholder="placeholder" :disable | CODE |
| LOW | packages/ui/tests/unit/components/ContextEditor.spec.ts | 88 | props: ['value', 'type', 'placeholder', 'autosize', 'size', 'disabled', 'readonly', 'rows'], | CODE |
| LOW⚡ | …/unit/components/FavoriteReproducibilityEditor.spec.ts | 53 | template: '<input class="n-input" :placeholder="placeholder" :value="value" @input="$emit(\'update:value\', $event.t | CODE |
| LOW⚡ | …/unit/components/FavoriteReproducibilityEditor.spec.ts | 54 | props: ['value', 'placeholder', 'type', 'autosize'], | CODE |
| LOW⚡ | …/unit/components/FavoriteReproducibilityEditor.spec.ts | 60 | props: ['value', 'options', 'clearable', 'placeholder'], | CODE |
| LOW | …ests/unit/components/PromptPanelSourceFeedback.spec.ts | 39 | OutputDisplay: { props: ['placeholder'], template: '<div />', methods: { forceRefreshContent() {}, forceExitEdit | CODE |
| LOW⚡ | …ests/unit/components/PromptPanelSourceFeedback.spec.ts | 131 | expect(wrapper.getComponent(OutputDisplay).props('placeholder')).toBe(pending.text()) | CODE |
| LOW⚡ | …ests/unit/components/PromptPanelSourceFeedback.spec.ts | 140 | const placeholder = wrapper.getComponent(OutputDisplay).props('placeholder') | CODE |
| LOW⚡ | …ests/unit/components/PromptPanelSourceFeedback.spec.ts | 143 | expect(wrapper.getComponent(OutputDisplay).props('placeholder')).toBe(placeholder) | CODE |
| LOW | …es/ui/tests/unit/components/ImportExportDialog.spec.ts | 56 | props: ['value', 'type', 'placeholder', 'autosize', 'readonly'], | CODE |
| LOW | …/tests/unit/components/FavoriteAuxiliaryMobile.spec.ts | 35 | props: ['value', 'placeholder'], emits: ['update:value'], | CODE |
| LOW | …/tests/unit/components/FavoriteAuxiliaryMobile.spec.ts | 36 | template: '<input :value="value" :placeholder="placeholder" @input="$emit(\'update:value\', $event.target.value)" /> | CODE |
| LOW | …/tests/unit/components/TemporaryVariablesPanel.spec.ts | 194 | const getVariablePlaceholder = (_name: string) => 'placeholder' | CODE |
| LOW | …kages/ui/tests/unit/components/FavoriteManager.spec.ts | 82 | props: ['value', 'placeholder', 'clearable', 'type', 'autosize', 'class'], | CODE |
| LOW | …kages/ui/tests/unit/components/FavoriteManager.spec.ts | 96 | props: ['value', 'options', 'placeholder', 'multiple', 'clearable', 'filterable', 'maxTagCount', 'class'], | CODE |
| LOW | …kages/ui/tests/unit/components/FavoriteManager.spec.ts | 200 | props: ['modelValue', 'placeholder', 'showAllOption'], | CODE |
| LOW | …ckages/ui/tests/unit/components/VariableEditor.spec.ts | 24 | props: ['value', 'placeholder', 'disabled', 'clearable', 'type', 'autosize'], | CODE |
| LOW | …es/ui/tests/unit/components/SaveFavoriteDialog.spec.ts | 97 | props: ['value', 'options', 'placeholder', 'filterable', 'size'], | CODE |
| LOW | …ests/unit/components/FavoriteShareExportDialog.spec.ts | 51 | props: ['value', 'placeholder'], | CODE |
| LOW | …es/ui/tests/unit/components/FavoriteEditorForm.spec.ts | 59 | props: ['value', 'options', 'placeholder', 'getShow', 'clearable'], | CODE |
| LOW | …es/ui/tests/unit/components/FavoriteEditorForm.spec.ts | 100 | props: ['value', 'type', 'placeholder', 'autosize', 'maxlength', 'showCount', 'readonly'], | CODE |
| LOW | …es/ui/tests/unit/components/FavoriteEditorForm.spec.ts | 110 | props: ['value', 'options', 'placeholder', 'disabled'], | CODE |
| LOW | …es/ui/tests/unit/components/FavoriteEditorForm.spec.ts | 148 | props: ['modelValue', 'placeholder', 'showAllOption'], | CODE |
| LOW | …es/ui/tests/integration/context-editor-persist.spec.ts | 82 | template: '<textarea v-if="type === \'textarea\'" class="n-input" :value="value" :placeholder="placeholder" :disable | CODE |
| LOW | …es/ui/tests/integration/context-editor-persist.spec.ts | 83 | props: ['value', 'type', 'placeholder', 'autosize', 'size', 'disabled', 'readonly'], | CODE |
| LOW | packages/ui/docs/COMPONENT_API.md | 268 | arguments: { to: 'user@example.com', subject: 'Test' }, | CODE |
| LOW | packages/ui/src/components/OutputDisplayCore.vue | 226 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/src/components/OutputDisplayCore.vue | 241 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/src/components/ModelIdSelector.vue | 3 | :placeholder="placeholder" :disabled="disabled" :loading="loading" :size="size" | CODE |
| LOW | packages/ui/src/components/OutputDisplay.vue | 14 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/src/components/OutputDisplay.vue | 47 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/src/components/InputWithSelect.vue | 8 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/src/components/OutputDisplayFullscreen.vue | 18 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/src/components/TextModelSelector.vue | 4 | :size="size" :disabled="disabled" :placeholder="placeholder" :aria-label="ariaLabel" | CODE |
| LOW | packages/ui/src/components/TestInputSection.vue | 37 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/src/components/TestInputSection.vue | 57 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/src/components/InputPanel.vue | 98 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/src/components/InputPanel.vue | 120 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/src/components/InputPanel.vue | 170 | :placeholder="placeholder" | CODE |
| LOW | packages/ui/src/components/ImageModelSelector.vue | 4 | :placeholder="placeholder" :disabled="disabled" :size="size" :aria-label="ariaLabel" | CODE |
| LOW | packages/ui/src/components/media/AppPreviewImage.vue | 12 | <slot name="placeholder" /> | CODE |
| LOW | packages/ui/src/i18n/locales/zh-CN/image.ts | 136 | "placeholder": "请输入配置名称" | CODE |
| LOW | packages/ui/src/i18n/locales/zh-CN/image.ts | 140 | "placeholder": "请输入显示名称" | CODE |
| 49 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/development/mcp-server-progress.md | 112 | MCP_DEFAULT_MODEL_API_KEY=your-api-key | CODE |
| HIGH | docs/development/mcp-server-progress.md | 133 | "MCP_DEFAULT_MODEL_API_KEY": "your-api-key" | CODE |
| HIGH | docs/user/multi-custom-models_en.md | 22 | VITE_CUSTOM_API_KEY_<suffix>=your-api-key # Required | CODE |
| HIGH | docs/user/multi-custom-models.md | 22 | VITE_CUSTOM_API_KEY_<suffix>=your-api-key # 必需 | CODE |
| HIGH | docs/archives/121-multi-custom-models-support/README.md | 123 | VITE_CUSTOM_API_KEY_qwen3=your-api-key | CODE |
| HIGH | docs/archives/121-multi-custom-models-support/README.md | 128 | VITE_CUSTOM_API_KEY_qwen2_5=your-api-key | CODE |
| HIGH | packages/core/tests/helpers/real-llm.ts | 194 | console.log('例如:VITE_OPENAI_API_KEY=your_api_key'); | CODE |
| HIGH | mkdocs/docs/en/deployment/docker-basic.md | 21 | VITE_CUSTOM_API_KEY_<suffix>=your-api-key | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | docs/user/context-mode_en.md | 32 | ### Step 0: Enter Multi-message | COMMENT |
| LOW⚡ | docs/user/context-mode_en.md | 37 | ### Step 1: Build the conversation context | COMMENT |
| LOW⚡ | docs/user/context-mode_en.md | 44 | ### Step 2: Select the message to optimize | COMMENT |
| LOW⚡ | docs/user/context-mode_en.md | 48 | ### Step 3: Pick model & template | COMMENT |
| LOW | docs/user/context-mode_en.md | 60 | ### Step 4: Understand V0/V1 | COMMENT |
| LOW | docs/user/context-mode_en.md | 69 | ### Step 5: Validate with the test area | COMMENT |
| LOW | docs/user/context-mode_en.md | 81 | ### Step 0: Enter Variable mode | COMMENT |
| LOW | docs/user/context-mode_en.md | 86 | ### Step 1: Write prompts with {{var}} | COMMENT |
| LOW | docs/user/context-mode_en.md | 98 | ### Step 2: Provide variable values | COMMENT |
| LOW | docs/user/context-mode_en.md | 109 | ### Step 4: Optimize with a suitable template | COMMENT |
| LOW | …n-persistence-plans/architecture-migration-analysis.md | 259 | // Step 1: 创建新的 Operations composable | COMMENT |
| LOW | …n-persistence-plans/architecture-migration-analysis.md | 273 | // Step 2: 组件直接消费 store | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …es/127-multi-turn-dialogue-mode-optimization/design.md | 561 | --- | COMMENT |
| LOW | …es/127-multi-turn-dialogue-mode-optimization/design.md | 581 | COMMENT | |
| LOW | …es/127-multi-turn-dialogue-mode-optimization/design.md | 641 | await optimizeMessage("v3"); | COMMENT |
| LOW | …es/127-multi-turn-dialogue-mode-optimization/design.md | 661 | // 7. 用户打开历史记录面板 | COMMENT |
| LOW | docs/testing/ai-automation/electron-mcp-guide.md | 261 | COMMENT | |
| LOW | packages/ui/src/components/TemplateManager.vue | 1301 | // a.href = url; | COMMENT |
| LOW | …es/ui/src/components/app-layout/PromptOptimizerApp.vue | 481 | // - 确保 PreferenceService 中的历史偏好能够加载(但不影响路由驱动的行为) | COMMENT |
| LOW | …core/tests/integration/storage-implementations.test.ts | 61 | // createProvider: () => new DexieStorageProvider(), | COMMENT |
| LOW | packages/core/tests/helpers/README.md | 181 | ```typescript | COMMENT |
| LOW | …ore/src/services/model/advancedParameterDefinitions.ts | 201 | // advancedParameterDefinitions.reduce((acc, def) => { | COMMENT |
| LOW | packages/core/src/services/evaluation/types.ts | 521 | request: EvaluationRequest, | COMMENT |
| LOW | packages/core/src/services/evaluation/types.ts | 541 | // - evaluation-pro-multi-prompt-only (Pro模式/多消息模式/仅提示词评估) | COMMENT |
| LOW | packages/desktop/dev-app-update.yml | 1 | provider: github | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …tes/optimize/context/context-analytical-optimize_en.ts | 60 | def process_data(data): | CODE |
| LOW | …plates/optimize/context/context-analytical-optimize.ts | 69 | def process_data(data): | CODE |