AI Slop Code Risk Monitor

AppFlowy-IO/AppFlowy

SlopCodeMonitor badge for AppFlowy-IO/AppFlowy Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

Bring projects, wikis, and teams together with AI. AppFlowy is the AI collaborative workspace where you achieve more without losing control of your data. The leading open source Notion alternative.

2.3 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for AppFlowy-IO/AppFlowy, a Dart project with 78,028 GitHub stars. SynthScan examined 510,680 lines of code across 3169 source files, recording 872 pattern matches distributed across 12 syntactic categories. The legacy adjusted pattern signal is 2.3 (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.

2.3
Adjusted Signal
2.3
Raw Pattern Score
100%
Time Factor
2026-10-28
Last Push
78.0K
Stars
Dart
Language
510.7K
Lines of Code
3.2K
Files
872
Pattern Hits
2026-10-31
Scan Date
0.00
HC Hit Rate

Risk Review · Payload v1

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.

Cognitive Ownership Risk 3.3/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 308 finding(s).

Hallucinated Dependency & Supply Chain Risk 7.2/100 · LOW

Are imports declared and package/API names verified? 553 finding(s).

Agent Over-Engineering Ratio 0.5/100 · LOW

Are wrappers, guards, and repeated structures necessary? 12 finding(s).

PR Review Velocity Impact 8.8/100 · LOW

Which changes need focused human review? 872 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

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.

Severity Breakdown

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.

CRITICAL 0HIGH 4MEDIUM 23LOW 845

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 872 distinct pattern matches across 12 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.

Fake / Example Data553 hits · 764 pts
SeverityFileLineSnippetContext
LOWfrontend/resources/translations/el-GR.json512 "placeholder": "Χωρίς τίτλο"CODE
LOW⚡frontend/resources/translations/el-GR.json897 "placeholder": "Table of Contents"CODE
LOW⚡frontend/resources/translations/el-GR.json900 "placeholder": "Type '/' for commands"CODE
LOW⚡frontend/resources/translations/el-GR.json903 "placeholder": "Untitled"CODE
LOW⚡frontend/resources/translations/el-GR.json906 "placeholder": "Click to add image",CODE
LOW⚡frontend/resources/translations/el-GR.json909 "placeholder": "Click to upload image"CODE
LOW⚡frontend/resources/translations/el-GR.json913 "placeholder": "Enter image URL"CODE
LOW⚡frontend/resources/translations/el-GR.json917 "placeholder": "Please input the prompt for AI to generate image"CODE
LOW⚡frontend/resources/translations/el-GR.json921 "placeholder": "Please input the prompt for Stability AI to generate image"CODE
LOWfrontend/resources/translations/el-GR.json933 "placeholder": "Paste or type an image link"CODE
LOW⚡frontend/resources/translations/el-GR.json952 "placeholder": "Select language"CODE
LOW⚡frontend/resources/translations/el-GR.json956 "placeholder": "Paste or type a link",CODE
LOW⚡frontend/resources/translations/el-GR.json962 "placeholder": "Enter link URL"CODE
LOW⚡frontend/resources/translations/el-GR.json966 "placeholder": "Enter link title"CODE
LOW⚡frontend/resources/translations/el-GR.json970 "placeholder": "Mention a person or a page or date...",CODE
LOWfrontend/resources/translations/el-GR.json1067 "placeholder": {CODE
LOWfrontend/resources/translations/it-IT.json1365 "placeholder": "Senza titolo"CODE
LOW⚡frontend/resources/translations/it-IT.json1716 "placeholder": "Digita '/' per i comandi"CODE
LOW⚡frontend/resources/translations/it-IT.json1719 "placeholder": "Senza titolo"CODE
LOW⚡frontend/resources/translations/it-IT.json1722 "placeholder": "Fare clic per aggiungere l'immagine",CODE
LOW⚡frontend/resources/translations/it-IT.json1725 "placeholder": "Clicca per caricare l'immagine"CODE
LOW⚡frontend/resources/translations/it-IT.json1729 "placeholder": "Inserisci l'URL dell'immagine"CODE
LOW⚡frontend/resources/translations/it-IT.json1733 "placeholder": "Inserisci la richiesta affinché AI generi l'immagine"CODE
LOW⚡frontend/resources/translations/it-IT.json1737 "placeholder": "Inserisci la richiesta affinché Stability AI generi l'immagine"CODE
LOWfrontend/resources/translations/it-IT.json1748 "placeholder": "Incolla o digita un link immagine"CODE
LOW⚡frontend/resources/translations/it-IT.json1767 "placeholder": "Seleziona la lingua"CODE
LOW⚡frontend/resources/translations/it-IT.json1771 "placeholder": "Incolla o digita un link",CODE
LOW⚡frontend/resources/translations/it-IT.json1777 "placeholder": "Inserisci l'URL del collegamento"CODE
LOW⚡frontend/resources/translations/it-IT.json1781 "placeholder": "Inserisci il titolo del collegamento"CODE
LOW⚡frontend/resources/translations/it-IT.json1785 "placeholder": "Menziona una persona, una pagina o una data...",CODE
LOWfrontend/resources/translations/it-IT.json1876 "placeholder": {CODE
LOWfrontend/resources/translations/th-TH.json1327 "placeholder": "ไม่มีชื่อ"CODE
LOWfrontend/resources/translations/th-TH.json1857 "placeholder": "วางลิงค์วิดีโอ",CODE
LOW⚡frontend/resources/translations/th-TH.json1901 "placeholder": "สารบัญ"CODE
LOW⚡frontend/resources/translations/th-TH.json1904 "placeholder": "พิมพ์ '/' เพื่อดูคำสั่ง"CODE
LOW⚡frontend/resources/translations/th-TH.json1907 "placeholder": "ไม่มีชื่อเรื่อง"CODE
LOW⚡frontend/resources/translations/th-TH.json1910 "placeholder": "คลิกเพื่อเพิ่มรูปภาพ",CODE
LOW⚡frontend/resources/translations/th-TH.json1913 "placeholder": "คลิกเพื่ออัปโหลดรูปภาพ"CODE
LOW⚡frontend/resources/translations/th-TH.json1917 "placeholder": "ป้อน URL รูปภาพ"CODE
LOW⚡frontend/resources/translations/th-TH.json1921 "placeholder": "โปรดระบุคำขอให้ AI สร้างรูปภาพ"CODE
LOW⚡frontend/resources/translations/th-TH.json1925 "placeholder": "โปรดระบุคำขอใช้ Stability AI สร้างรูปภาพ"CODE
LOWfrontend/resources/translations/th-TH.json1938 "placeholder": "วางหรือพิมพ์ลิงก์รูปภาพ"CODE
LOW⚡frontend/resources/translations/th-TH.json1972 "placeholder": "เลือกภาษา",CODE
LOW⚡frontend/resources/translations/th-TH.json1980 "placeholder": "วางหรือพิมพ์ลิงก์",CODE
LOW⚡frontend/resources/translations/th-TH.json1986 "placeholder": "ป้อน URL ลิงก์"CODE
LOW⚡frontend/resources/translations/th-TH.json1990 "placeholder": "ป้อนชื่อหัวเรื่องลิงก์"CODE
LOW⚡frontend/resources/translations/th-TH.json1994 "placeholder": "ระบุบุคคลหรือหน้าหรือวันที่...",CODE
LOWfrontend/resources/translations/th-TH.json2136 "placeholder": {CODE
LOWfrontend/resources/translations/th-TH.json2524 "placeholder": "พิมพ์เพื่อค้นหา...",CODE
LOWfrontend/resources/translations/ko-KR.json1389 "placeholder": "제목 없음"CODE
LOWfrontend/resources/translations/ko-KR.json1956 "placeholder": "비디오 링크 붙여넣기",CODE
LOW⚡frontend/resources/translations/ko-KR.json2000 "placeholder": "목차"CODE
LOW⚡frontend/resources/translations/ko-KR.json2003 "placeholder": "명령어를 입력하려면 '/'를 입력하세요"CODE
LOW⚡frontend/resources/translations/ko-KR.json2006 "placeholder": "제목 없음"CODE
LOW⚡frontend/resources/translations/ko-KR.json2009 "placeholder": "이미지 추가하려면 클릭",CODE
LOW⚡frontend/resources/translations/ko-KR.json2012 "placeholder": "이미지 업로드하려면 클릭"CODE
LOW⚡frontend/resources/translations/ko-KR.json2016 "placeholder": "이미지 URL 입력"CODE
LOW⚡frontend/resources/translations/ko-KR.json2020 "placeholder": "AI가 이미지를 생성할 프롬프트를 입력하세요"CODE
LOW⚡frontend/resources/translations/ko-KR.json2024 "placeholder": "Stability AI가 이미지를 생성할 프롬프트를 입력하세요"CODE
LOWfrontend/resources/translations/ko-KR.json2037 "placeholder": "이미지 링크를 붙여넣거나 입력하세요"CODE
493 more matches not shown…
Over-Commented Block273 hits · 266 pts
SeverityFileLineSnippetContext
LOWfrontend/rust-lib/flowy-ai/tests/complete_test/mod.rs301// "**[Improved]**\nBracketed tag format.\n\n",COMMENT
LOWfrontend/rust-lib/flowy-ai/src/ai_manager.rs581 self.chats.insert(*chat_id, chat.clone());COMMENT
LOWfrontend/rust-lib/flowy-ai/src/local_ai/controller.rs361 Ok(enabled)COMMENT
LOWfrontend/rust-lib/flowy-ai/src/local_ai/controller.rs381 //COMMENT
LOWfrontend/rust-lib/flowy-ai/src/local_ai/controller.rs401 // selfCOMMENT
LOW…event-integration-test/tests/chat/chat_message_test.rs141// user_localhost_af_cloud().await;COMMENT
LOW…event-integration-test/tests/chat/chat_message_test.rs161// assert_eq!(all.messages[0].author_type, 3);COMMENT
LOW…event-integration-test/tests/folder/local_test/test.rs1use event_integration_test::event_builder::EventBuilder;COMMENT
LOW…event-integration-test/tests/folder/local_test/test.rs21//COMMENT
LOW…event-integration-test/tests/folder/local_test/test.rs281 // - view1-1-1COMMENT
LOW…tests/user/af_cloud_test/import_af_data_folder_test.rs121 // GeneralCOMMENT
LOW…tests/user/af_cloud_test/import_af_data_folder_test.rs341 // .get_collab_doc_state(&doc_1.id, CollabType::Document)COMMENT
LOW…ration-test/tests/document/local_test/snapshot_test.rs21 assert_eq!(snapshot_metas.len(), 1);COMMENT
LOW…ration-test/tests/document/local_test/snapshot_test.rs41// tokio::time::sleep(Duration::from_secs(1)).await;COMMENT
LOW…/rust-lib/lib-infra/tests/task_test/task_order_test.rs101// let mut tasks = vec![];COMMENT
LOW…/rust-lib/build-tool/flowy-derive/src/proto_buf/mod.rs61//COMMENT
LOW…rust-lib/build-tool/flowy-derive/src/dart_event/mod.rs1use proc_macro2::TokenStream;COMMENT
LOW…rust-lib/build-tool/flowy-derive/src/dart_event/mod.rs21//COMMENT
LOW…-lib/build-tool/flowy-codegen/src/protobuf_file/mod.rs81// // 1. generate the proto files to proto_file_dirCOMMENT
LOW…-lib/build-tool/flowy-codegen/src/protobuf_file/mod.rs101// .filter_map(|e| e.ok())COMMENT
LOW…-lib/build-tool/flowy-codegen/src/protobuf_file/mod.rs121// &proto_file_output_path,COMMENT
LOWfrontend/rust-lib/flowy-database2/build.rs1fn main() {COMMENT
LOWfrontend/rust-lib/flowy-database2/src/event_map.rs101 .event(DatabaseEvent::GetDatabaseCustomPrompts, get_database_custom_prompts_handler)COMMENT
LOWfrontend/rust-lib/flowy-database2/src/event_map.rs141 #[event(input = "DatabaseViewIdPB")]COMMENT
LOWfrontend/rust-lib/flowy-database2/src/event_map.rs161 /// FieldTypeOption class.COMMENT
LOWfrontend/rust-lib/flowy-database2/src/event_map.rs181 /// [UpdateFieldType] event is used to update the current Field's type.COMMENT
LOWfrontend/rust-lib/flowy-database2/src/event_map.rs201COMMENT
LOWfrontend/rust-lib/flowy-database2/src/event_map.rs261 ///COMMENT
LOW…wy-database2/src/services/database/database_observe.rs181 // Imagine the current state of rows is:COMMENT
LOW…/rust-lib/flowy-database2/src/services/group/action.rs101 async fn load_group_data(&mut self) -> FlowyResult<()>;COMMENT
LOW…/rust-lib/flowy-database2/src/services/group/action.rs121 /// Returns a new type option data for the grouping field if it's altered.COMMENT
LOW…/rust-lib/flowy-database2/src/services/group/action.rs141 fn did_create_row(&mut self, row: &Row, index: usize) -> Vec<GroupRowsNotificationPB>;COMMENT
LOW…/rust-lib/flowy-database2/src/services/group/action.rs161 /// Returns a the removed group when this occurs.COMMENT
LOW…ib/flowy-database2/src/services/group/configuration.rs221 /// Reset the memory cache of the groups and update the group configurationCOMMENT
LOW…ib/flowy-database2/src/services/group/group_builder.rs41 pub to_group_id: &'a str,COMMENT
LOW…e2/src/services/field/type_options/type_option_cell.rs61 /// This function is designed to handle the comparison of cells that might not be initialized. The cells areCOMMENT
LOW…tabase2/src/services/field/type_options/type_option.rs61 /// Otherwise, providing a custom protobuf type as its `CellProtobufType`.COMMENT
LOW…tabase2/src/services/field/type_options/type_option.rs81 &self,COMMENT
LOW…ces/field/type_options/date_type_option/date_filter.rs421 }COMMENT
LOW…ces/field/type_options/date_type_option/date_filter.rs441 // Some(1728889260),COMMENT
LOW…ces/field/type_options/date_type_option/date_filter.rs461 // false,COMMENT
LOW…ces/field/type_options/date_type_option/date_filter.rs481 // ),COMMENT
LOW…ces/field/type_options/date_type_option/date_filter.rs501 // Some(1728986400),COMMENT
LOW…ces/field/type_options/date_type_option/date_filter.rs521 // true,COMMENT
LOW…ces/field/type_options/date_type_option/date_filter.rs541 // ),COMMENT
LOW…ces/field/type_options/date_type_option/date_filter.rs561 // Some(1729094400),COMMENT
LOW…ces/field/type_options/date_type_option/date_filter.rs581 // false,COMMENT
LOW…ces/field/type_options/date_type_option/date_filter.rs601 // );COMMENT
LOW…ib/flowy-database2/src/services/cell/cell_operation.rs21COMMENT
LOW…ib/flowy-database2/src/services/cell/cell_operation.rs61 /// Applies a changeset to a given cell, returning the new `Cell` andCOMMENT
LOWfrontend/rust-lib/flowy-user-pub/src/cloud.rs61COMMENT
LOWfrontend/rust-lib/flowy-user-pub/src/cloud.rs101 /// Sets the encryption secret for secure communication.COMMENT
LOWfrontend/rust-lib/flowy-server/src/server.rs81 /// # ArgumentsCOMMENT
LOWfrontend/rust-lib/flowy-server/src/server.rs101 fn folder_service(&self) -> Arc<dyn FolderCloudService>;COMMENT
LOWfrontend/rust-lib/flowy-server/src/local_server/util.rs21 CollabType::Database => default_database_data(object_id).await.map_err(Into::into),COMMENT
LOWfrontend/rust-lib/flowy-document/src/event_handler.rs341COMMENT
LOWfrontend/rust-lib/flowy-document/src/event_handler.rs361/// length: 5,COMMENT
LOW…d/rust-lib/flowy-document/src/parser/external/utils.rs441// input <a href="https://www.google.com">Google</a>COMMENT
LOWfrontend/rust-lib/flowy-storage-pub/src/cloud.rs21 ///COMMENT
LOWfrontend/rust-lib/flowy-folder/src/manager.rs881 items: favorite_descendant_views,COMMENT
213 more matches not shown…
Decorative Section Separators8 hits · 36 pts
SeverityFileLineSnippetContext
MEDIUM⚡…i_image_block_component/layouts/image_grid_layout.dart80/// ┌─────┐┌─┐┌─┐COMMENT
MEDIUM⚡…i_image_block_component/layouts/image_grid_layout.dart83/// └─────┘└────┘COMMENT
MEDIUM⚡…i_image_block_component/layouts/image_grid_layout.dart86/// ┌─────┐┌────┐COMMENT
MEDIUM⚡…i_image_block_component/layouts/image_grid_layout.dart89/// └─────┘└────┘COMMENT
MEDIUM⚡…i_image_block_component/layouts/image_grid_layout.dart92/// ┌─────┐┌─────┐COMMENT
MEDIUM⚡…i_image_block_component/layouts/image_grid_layout.dart94/// └─────┘└─────┘COMMENT
MEDIUM⚡…i_image_block_component/layouts/image_grid_layout.dart97/// ┌──────────┐COMMENT
MEDIUM⚡…i_image_block_component/layouts/image_grid_layout.dart99/// └──────────┘COMMENT
Self-Referential Comments7 hits · 21 pts
SeverityFileLineSnippetContext
MEDIUMfrontend/scripts/white_label/font_white_label.sh124 # Create a backup of the original fileCOMMENT
MEDIUMfrontend/scripts/white_label/font_white_label.sh173 # Create a backup of the original fileCOMMENT
MEDIUMfrontend/scripts/white_label/i18n_white_label.sh66 # Create a temporary file for the transformationCOMMENT
MEDIUMfrontend/scripts/tool/update_local_ai_rev.sh17 # Define the crates to updateCOMMENT
MEDIUM…ppflowy_flutter/packages/appflowy_backend/pubspec.yaml31# The following section is specific to Flutter.COMMENT
MEDIUM…flutter/packages/appflowy_backend/example/pubspec.yaml37# The following section is specific to Flutter.COMMENT
MEDIUM…flutter/packages/appflowy_popover/example/pubspec.yaml53# The following section is specific to Flutter packages.COMMENT
Cross-File Repetition3 hits · 15 pts
SeverityFileLineSnippetContext
HIGHfrontend/scripts/makefile/web.toml0protobuf_file_paths = glob_array ${tauri_backend_service_path}/models if not array_is_empty ${protobuf_file_paths} echo STRING
HIGHfrontend/scripts/makefile/tool.toml0protobuf_file_paths = glob_array ${tauri_backend_service_path}/models if not array_is_empty ${protobuf_file_paths} echo STRING
HIGHfrontend/scripts/makefile/tauri.toml0protobuf_file_paths = glob_array ${tauri_backend_service_path}/models if not array_is_empty ${protobuf_file_paths} echo STRING
Redundant / Tautological Comments9 hits · 14 pts
SeverityFileLineSnippetContext
LOWfrontend/scripts/white_label/font_white_label.sh55# Check if source directory existsCOMMENT
LOWfrontend/scripts/white_label/i18n_white_label.sh55 # Check if directory exists and has JSON filesCOMMENT
LOWfrontend/scripts/white_label/i18n_white_label.sh68 # Check if transformation was successfulCOMMENT
LOWfrontend/scripts/install_dev_env/install_linux.sh41# Check if the current version is 3.27.4COMMENT
LOWfrontend/scripts/install_dev_env/install_macos.sh44# Check if the current version is 3.27.4COMMENT
LOWfrontend/scripts/install_dev_env/install_windows.sh51# Check if the current version is 3.27.4COMMENT
LOWfrontend/scripts/install_dev_env/install_ios.sh47# Check if the current version is 3.27.4COMMENT
LOW…nd/scripts/code_generation/freezed/generate_freezed.sh58 # Check if the pubspec.yaml file exists and contains the freezed dependencyCOMMENT
LOWfrontend/scripts/tool/update_collab_source.sh30# Check if AppFlowy-Collab directory existsCOMMENT
AI Slop Vocabulary5 hits · 13 pts
SeverityFileLineSnippetContext
MEDIUMfrontend/rust-lib/flowy-ai/src/local_ai/prompt/mod.rs4pub const OPEN_AI_QA_FLEX_FORMAT: &str = r#"Use Markdown for formatting. Start responses naturally—avoid formal phrases CODE
MEDIUMfrontend/rust-lib/flowy-ai/src/local_ai/prompt/mod.rs6const OPEN_AI_QA_PARAGRAPH_FORMAT: &str = r#"Respond naturally in one paragraph. Avoid formal phrases like “Certainly,” CODE
MEDIUM…tion_test/desktop/document/document_deletion_test.dart22 // we utilize the same helper functions there.COMMENT
MEDIUM…ntend/appflowy_flutter/lib/shared/clipboard_state.dart5/// Essentially for document in-app json paste, we need to be ableCOMMENT
MEDIUM…flutter/lib/shared/popup_menu/appflowy_popup_menu.dart1324 /// and the button will utilize an [InkWell] for taps.COMMENT
Slop Phrases5 hits · 12 pts
SeverityFileLineSnippetContext
LOWfrontend/Makefile.toml34# If you update the macOS's CRATE_TYPE, don't forget to update theCOMMENT
LOWfrontend/Makefile.toml34# If you update the macOS's CRATE_TYPE, don't forget to update theCOMMENT
MEDIUMfrontend/scripts/makefile/tests.toml1# If you want to test a single file with single case, you can try this command:COMMENT
MEDIUM…flutter/packages/appflowy_backend/example/pubspec.yaml41 # included with your application, so that you can use the icons inCOMMENT
MEDIUM…flutter/packages/appflowy_popover/example/pubspec.yaml56 # included with your application, so that you can use the icons inCOMMENT
TODO Padding6 hits · 9 pts
SeverityFileLineSnippetContext
LOW…/rust-lib/flowy-ai/src/offline/offline_message_sync.rs106 // TODO: implement background syncCOMMENT
LOW…/rust-lib/flowy-ai/src/offline/offline_message_sync.rs126 // TODO: implement background syncCOMMENT
LOW…/rust-lib/flowy-ai/src/offline/offline_message_sync.rs156 // TODO: implement background syncCOMMENT
LOW…/rust-lib/flowy-ai/src/offline/offline_message_sync.rs229 // TODO: implement background syncCOMMENT
LOW…/rust-lib/flowy-ai/src/offline/offline_message_sync.rs242 // TODO: implement background syncCOMMENT
LOWfrontend/rust-lib/flowy-user/src/notification.rs21 // TODO: implement reminder observerCOMMENT
Synthetic Comment Markers1 hit · 5 pts
SeverityFileLineSnippetContext
HIGHCHANGELOG.md425- Fixed numbered lists generated by AI to maintain the same index as the inputCODE
Structural Annotation Overuse1 hit · 2 pts
SeverityFileLineSnippetContext
LOW…ppflowy_flutter/lib/user/application/user_service.dart306 // NOTE: This function is irreversible and will delete the current user's account.COMMENT
Hyper-Verbose Identifiers1 hit · 1 pts
SeverityFileLineSnippetContext
LOW…space/presentation/settings/pages/fix_data_widget.dart36class WorkspaceDataManager {CODE