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.
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.
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? 308 finding(s).
Are imports declared and package/API names verified? 553 finding(s).
Are wrappers, guards, and repeated structures necessary? 12 finding(s).
Which changes need focused human review? 872 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 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.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | frontend/resources/translations/el-GR.json | 512 | "placeholder": "Χωρίς τίτλο" | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 897 | "placeholder": "Table of Contents" | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 900 | "placeholder": "Type '/' for commands" | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 903 | "placeholder": "Untitled" | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 906 | "placeholder": "Click to add image", | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 909 | "placeholder": "Click to upload image" | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 913 | "placeholder": "Enter image URL" | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 917 | "placeholder": "Please input the prompt for AI to generate image" | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 921 | "placeholder": "Please input the prompt for Stability AI to generate image" | CODE |
| LOW | frontend/resources/translations/el-GR.json | 933 | "placeholder": "Paste or type an image link" | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 952 | "placeholder": "Select language" | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 956 | "placeholder": "Paste or type a link", | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 962 | "placeholder": "Enter link URL" | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 966 | "placeholder": "Enter link title" | CODE |
| LOW⚡ | frontend/resources/translations/el-GR.json | 970 | "placeholder": "Mention a person or a page or date...", | CODE |
| LOW | frontend/resources/translations/el-GR.json | 1067 | "placeholder": { | CODE |
| LOW | frontend/resources/translations/it-IT.json | 1365 | "placeholder": "Senza titolo" | CODE |
| LOW⚡ | frontend/resources/translations/it-IT.json | 1716 | "placeholder": "Digita '/' per i comandi" | CODE |
| LOW⚡ | frontend/resources/translations/it-IT.json | 1719 | "placeholder": "Senza titolo" | CODE |
| LOW⚡ | frontend/resources/translations/it-IT.json | 1722 | "placeholder": "Fare clic per aggiungere l'immagine", | CODE |
| LOW⚡ | frontend/resources/translations/it-IT.json | 1725 | "placeholder": "Clicca per caricare l'immagine" | CODE |
| LOW⚡ | frontend/resources/translations/it-IT.json | 1729 | "placeholder": "Inserisci l'URL dell'immagine" | CODE |
| LOW⚡ | frontend/resources/translations/it-IT.json | 1733 | "placeholder": "Inserisci la richiesta affinché AI generi l'immagine" | CODE |
| LOW⚡ | frontend/resources/translations/it-IT.json | 1737 | "placeholder": "Inserisci la richiesta affinché Stability AI generi l'immagine" | CODE |
| LOW | frontend/resources/translations/it-IT.json | 1748 | "placeholder": "Incolla o digita un link immagine" | CODE |
| LOW⚡ | frontend/resources/translations/it-IT.json | 1767 | "placeholder": "Seleziona la lingua" | CODE |
| LOW⚡ | frontend/resources/translations/it-IT.json | 1771 | "placeholder": "Incolla o digita un link", | CODE |
| LOW⚡ | frontend/resources/translations/it-IT.json | 1777 | "placeholder": "Inserisci l'URL del collegamento" | CODE |
| LOW⚡ | frontend/resources/translations/it-IT.json | 1781 | "placeholder": "Inserisci il titolo del collegamento" | CODE |
| LOW⚡ | frontend/resources/translations/it-IT.json | 1785 | "placeholder": "Menziona una persona, una pagina o una data...", | CODE |
| LOW | frontend/resources/translations/it-IT.json | 1876 | "placeholder": { | CODE |
| LOW | frontend/resources/translations/th-TH.json | 1327 | "placeholder": "ไม่มีชื่อ" | CODE |
| LOW | frontend/resources/translations/th-TH.json | 1857 | "placeholder": "วางลิงค์วิดีโอ", | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1901 | "placeholder": "สารบัญ" | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1904 | "placeholder": "พิมพ์ '/' เพื่อดูคำสั่ง" | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1907 | "placeholder": "ไม่มีชื่อเรื่อง" | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1910 | "placeholder": "คลิกเพื่อเพิ่มรูปภาพ", | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1913 | "placeholder": "คลิกเพื่ออัปโหลดรูปภาพ" | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1917 | "placeholder": "ป้อน URL รูปภาพ" | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1921 | "placeholder": "โปรดระบุคำขอให้ AI สร้างรูปภาพ" | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1925 | "placeholder": "โปรดระบุคำขอใช้ Stability AI สร้างรูปภาพ" | CODE |
| LOW | frontend/resources/translations/th-TH.json | 1938 | "placeholder": "วางหรือพิมพ์ลิงก์รูปภาพ" | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1972 | "placeholder": "เลือกภาษา", | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1980 | "placeholder": "วางหรือพิมพ์ลิงก์", | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1986 | "placeholder": "ป้อน URL ลิงก์" | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1990 | "placeholder": "ป้อนชื่อหัวเรื่องลิงก์" | CODE |
| LOW⚡ | frontend/resources/translations/th-TH.json | 1994 | "placeholder": "ระบุบุคคลหรือหน้าหรือวันที่...", | CODE |
| LOW | frontend/resources/translations/th-TH.json | 2136 | "placeholder": { | CODE |
| LOW | frontend/resources/translations/th-TH.json | 2524 | "placeholder": "พิมพ์เพื่อค้นหา...", | CODE |
| LOW | frontend/resources/translations/ko-KR.json | 1389 | "placeholder": "제목 없음" | CODE |
| LOW | frontend/resources/translations/ko-KR.json | 1956 | "placeholder": "비디오 링크 붙여넣기", | CODE |
| LOW⚡ | frontend/resources/translations/ko-KR.json | 2000 | "placeholder": "목차" | CODE |
| LOW⚡ | frontend/resources/translations/ko-KR.json | 2003 | "placeholder": "명령어를 입력하려면 '/'를 입력하세요" | CODE |
| LOW⚡ | frontend/resources/translations/ko-KR.json | 2006 | "placeholder": "제목 없음" | CODE |
| LOW⚡ | frontend/resources/translations/ko-KR.json | 2009 | "placeholder": "이미지 추가하려면 클릭", | CODE |
| LOW⚡ | frontend/resources/translations/ko-KR.json | 2012 | "placeholder": "이미지 업로드하려면 클릭" | CODE |
| LOW⚡ | frontend/resources/translations/ko-KR.json | 2016 | "placeholder": "이미지 URL 입력" | CODE |
| LOW⚡ | frontend/resources/translations/ko-KR.json | 2020 | "placeholder": "AI가 이미지를 생성할 프롬프트를 입력하세요" | CODE |
| LOW⚡ | frontend/resources/translations/ko-KR.json | 2024 | "placeholder": "Stability AI가 이미지를 생성할 프롬프트를 입력하세요" | CODE |
| LOW | frontend/resources/translations/ko-KR.json | 2037 | "placeholder": "이미지 링크를 붙여넣거나 입력하세요" | CODE |
| 493 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | frontend/rust-lib/flowy-ai/tests/complete_test/mod.rs | 301 | // "**[Improved]**\nBracketed tag format.\n\n", | COMMENT |
| LOW | frontend/rust-lib/flowy-ai/src/ai_manager.rs | 581 | self.chats.insert(*chat_id, chat.clone()); | COMMENT |
| LOW | frontend/rust-lib/flowy-ai/src/local_ai/controller.rs | 361 | Ok(enabled) | COMMENT |
| LOW | frontend/rust-lib/flowy-ai/src/local_ai/controller.rs | 381 | // | COMMENT |
| LOW | frontend/rust-lib/flowy-ai/src/local_ai/controller.rs | 401 | // self | COMMENT |
| LOW | …event-integration-test/tests/chat/chat_message_test.rs | 141 | // user_localhost_af_cloud().await; | COMMENT |
| LOW | …event-integration-test/tests/chat/chat_message_test.rs | 161 | // assert_eq!(all.messages[0].author_type, 3); | COMMENT |
| LOW | …event-integration-test/tests/folder/local_test/test.rs | 1 | use event_integration_test::event_builder::EventBuilder; | COMMENT |
| LOW | …event-integration-test/tests/folder/local_test/test.rs | 21 | // | COMMENT |
| LOW | …event-integration-test/tests/folder/local_test/test.rs | 281 | // - view1-1-1 | COMMENT |
| LOW | …tests/user/af_cloud_test/import_af_data_folder_test.rs | 121 | // General | COMMENT |
| LOW | …tests/user/af_cloud_test/import_af_data_folder_test.rs | 341 | // .get_collab_doc_state(&doc_1.id, CollabType::Document) | COMMENT |
| LOW | …ration-test/tests/document/local_test/snapshot_test.rs | 21 | assert_eq!(snapshot_metas.len(), 1); | COMMENT |
| LOW | …ration-test/tests/document/local_test/snapshot_test.rs | 41 | // tokio::time::sleep(Duration::from_secs(1)).await; | COMMENT |
| LOW | …/rust-lib/lib-infra/tests/task_test/task_order_test.rs | 101 | // let mut tasks = vec![]; | COMMENT |
| LOW | …/rust-lib/build-tool/flowy-derive/src/proto_buf/mod.rs | 61 | // | COMMENT |
| LOW | …rust-lib/build-tool/flowy-derive/src/dart_event/mod.rs | 1 | use proc_macro2::TokenStream; | COMMENT |
| LOW | …rust-lib/build-tool/flowy-derive/src/dart_event/mod.rs | 21 | // | COMMENT |
| LOW | …-lib/build-tool/flowy-codegen/src/protobuf_file/mod.rs | 81 | // // 1. generate the proto files to proto_file_dir | COMMENT |
| LOW | …-lib/build-tool/flowy-codegen/src/protobuf_file/mod.rs | 101 | // .filter_map(|e| e.ok()) | COMMENT |
| LOW | …-lib/build-tool/flowy-codegen/src/protobuf_file/mod.rs | 121 | // &proto_file_output_path, | COMMENT |
| LOW | frontend/rust-lib/flowy-database2/build.rs | 1 | fn main() { | COMMENT |
| LOW | frontend/rust-lib/flowy-database2/src/event_map.rs | 101 | .event(DatabaseEvent::GetDatabaseCustomPrompts, get_database_custom_prompts_handler) | COMMENT |
| LOW | frontend/rust-lib/flowy-database2/src/event_map.rs | 141 | #[event(input = "DatabaseViewIdPB")] | COMMENT |
| LOW | frontend/rust-lib/flowy-database2/src/event_map.rs | 161 | /// FieldTypeOption class. | COMMENT |
| LOW | frontend/rust-lib/flowy-database2/src/event_map.rs | 181 | /// [UpdateFieldType] event is used to update the current Field's type. | COMMENT |
| LOW | frontend/rust-lib/flowy-database2/src/event_map.rs | 201 | COMMENT | |
| LOW | frontend/rust-lib/flowy-database2/src/event_map.rs | 261 | /// | COMMENT |
| LOW | …wy-database2/src/services/database/database_observe.rs | 181 | // Imagine the current state of rows is: | COMMENT |
| LOW | …/rust-lib/flowy-database2/src/services/group/action.rs | 101 | async fn load_group_data(&mut self) -> FlowyResult<()>; | COMMENT |
| LOW | …/rust-lib/flowy-database2/src/services/group/action.rs | 121 | /// Returns a new type option data for the grouping field if it's altered. | COMMENT |
| LOW | …/rust-lib/flowy-database2/src/services/group/action.rs | 141 | fn did_create_row(&mut self, row: &Row, index: usize) -> Vec<GroupRowsNotificationPB>; | COMMENT |
| LOW | …/rust-lib/flowy-database2/src/services/group/action.rs | 161 | /// Returns a the removed group when this occurs. | COMMENT |
| LOW | …ib/flowy-database2/src/services/group/configuration.rs | 221 | /// Reset the memory cache of the groups and update the group configuration | COMMENT |
| LOW | …ib/flowy-database2/src/services/group/group_builder.rs | 41 | pub to_group_id: &'a str, | COMMENT |
| LOW | …e2/src/services/field/type_options/type_option_cell.rs | 61 | /// This function is designed to handle the comparison of cells that might not be initialized. The cells are | COMMENT |
| LOW | …tabase2/src/services/field/type_options/type_option.rs | 61 | /// Otherwise, providing a custom protobuf type as its `CellProtobufType`. | COMMENT |
| LOW | …tabase2/src/services/field/type_options/type_option.rs | 81 | &self, | COMMENT |
| LOW | …ces/field/type_options/date_type_option/date_filter.rs | 421 | } | COMMENT |
| LOW | …ces/field/type_options/date_type_option/date_filter.rs | 441 | // Some(1728889260), | COMMENT |
| LOW | …ces/field/type_options/date_type_option/date_filter.rs | 461 | // false, | COMMENT |
| LOW | …ces/field/type_options/date_type_option/date_filter.rs | 481 | // ), | COMMENT |
| LOW | …ces/field/type_options/date_type_option/date_filter.rs | 501 | // Some(1728986400), | COMMENT |
| LOW | …ces/field/type_options/date_type_option/date_filter.rs | 521 | // true, | COMMENT |
| LOW | …ces/field/type_options/date_type_option/date_filter.rs | 541 | // ), | COMMENT |
| LOW | …ces/field/type_options/date_type_option/date_filter.rs | 561 | // Some(1729094400), | COMMENT |
| LOW | …ces/field/type_options/date_type_option/date_filter.rs | 581 | // false, | COMMENT |
| LOW | …ces/field/type_options/date_type_option/date_filter.rs | 601 | // ); | COMMENT |
| LOW | …ib/flowy-database2/src/services/cell/cell_operation.rs | 21 | COMMENT | |
| LOW | …ib/flowy-database2/src/services/cell/cell_operation.rs | 61 | /// Applies a changeset to a given cell, returning the new `Cell` and | COMMENT |
| LOW | frontend/rust-lib/flowy-user-pub/src/cloud.rs | 61 | COMMENT | |
| LOW | frontend/rust-lib/flowy-user-pub/src/cloud.rs | 101 | /// Sets the encryption secret for secure communication. | COMMENT |
| LOW | frontend/rust-lib/flowy-server/src/server.rs | 81 | /// # Arguments | COMMENT |
| LOW | frontend/rust-lib/flowy-server/src/server.rs | 101 | fn folder_service(&self) -> Arc<dyn FolderCloudService>; | COMMENT |
| LOW | frontend/rust-lib/flowy-server/src/local_server/util.rs | 21 | CollabType::Database => default_database_data(object_id).await.map_err(Into::into), | COMMENT |
| LOW | frontend/rust-lib/flowy-document/src/event_handler.rs | 341 | COMMENT | |
| LOW | frontend/rust-lib/flowy-document/src/event_handler.rs | 361 | /// length: 5, | COMMENT |
| LOW | …d/rust-lib/flowy-document/src/parser/external/utils.rs | 441 | // input <a href="https://www.google.com">Google</a> | COMMENT |
| LOW | frontend/rust-lib/flowy-storage-pub/src/cloud.rs | 21 | /// | COMMENT |
| LOW | frontend/rust-lib/flowy-folder/src/manager.rs | 881 | items: favorite_descendant_views, | COMMENT |
| 213 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | …i_image_block_component/layouts/image_grid_layout.dart | 80 | /// ┌─────┐┌─┐┌─┐ | COMMENT |
| MEDIUM⚡ | …i_image_block_component/layouts/image_grid_layout.dart | 83 | /// └─────┘└────┘ | COMMENT |
| MEDIUM⚡ | …i_image_block_component/layouts/image_grid_layout.dart | 86 | /// ┌─────┐┌────┐ | COMMENT |
| MEDIUM⚡ | …i_image_block_component/layouts/image_grid_layout.dart | 89 | /// └─────┘└────┘ | COMMENT |
| MEDIUM⚡ | …i_image_block_component/layouts/image_grid_layout.dart | 92 | /// ┌─────┐┌─────┐ | COMMENT |
| MEDIUM⚡ | …i_image_block_component/layouts/image_grid_layout.dart | 94 | /// └─────┘└─────┘ | COMMENT |
| MEDIUM⚡ | …i_image_block_component/layouts/image_grid_layout.dart | 97 | /// ┌──────────┐ | COMMENT |
| MEDIUM⚡ | …i_image_block_component/layouts/image_grid_layout.dart | 99 | /// └──────────┘ | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | frontend/scripts/white_label/font_white_label.sh | 124 | # Create a backup of the original file | COMMENT |
| MEDIUM | frontend/scripts/white_label/font_white_label.sh | 173 | # Create a backup of the original file | COMMENT |
| MEDIUM | frontend/scripts/white_label/i18n_white_label.sh | 66 | # Create a temporary file for the transformation | COMMENT |
| MEDIUM | frontend/scripts/tool/update_local_ai_rev.sh | 17 | # Define the crates to update | COMMENT |
| MEDIUM | …ppflowy_flutter/packages/appflowy_backend/pubspec.yaml | 31 | # The following section is specific to Flutter. | COMMENT |
| MEDIUM | …flutter/packages/appflowy_backend/example/pubspec.yaml | 37 | # The following section is specific to Flutter. | COMMENT |
| MEDIUM | …flutter/packages/appflowy_popover/example/pubspec.yaml | 53 | # The following section is specific to Flutter packages. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | frontend/scripts/makefile/web.toml | 0 | protobuf_file_paths = glob_array ${tauri_backend_service_path}/models if not array_is_empty ${protobuf_file_paths} echo | STRING |
| HIGH | frontend/scripts/makefile/tool.toml | 0 | protobuf_file_paths = glob_array ${tauri_backend_service_path}/models if not array_is_empty ${protobuf_file_paths} echo | STRING |
| HIGH | frontend/scripts/makefile/tauri.toml | 0 | protobuf_file_paths = glob_array ${tauri_backend_service_path}/models if not array_is_empty ${protobuf_file_paths} echo | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | frontend/scripts/white_label/font_white_label.sh | 55 | # Check if source directory exists | COMMENT |
| LOW | frontend/scripts/white_label/i18n_white_label.sh | 55 | # Check if directory exists and has JSON files | COMMENT |
| LOW | frontend/scripts/white_label/i18n_white_label.sh | 68 | # Check if transformation was successful | COMMENT |
| LOW | frontend/scripts/install_dev_env/install_linux.sh | 41 | # Check if the current version is 3.27.4 | COMMENT |
| LOW | frontend/scripts/install_dev_env/install_macos.sh | 44 | # Check if the current version is 3.27.4 | COMMENT |
| LOW | frontend/scripts/install_dev_env/install_windows.sh | 51 | # Check if the current version is 3.27.4 | COMMENT |
| LOW | frontend/scripts/install_dev_env/install_ios.sh | 47 | # Check if the current version is 3.27.4 | COMMENT |
| LOW | …nd/scripts/code_generation/freezed/generate_freezed.sh | 58 | # Check if the pubspec.yaml file exists and contains the freezed dependency | COMMENT |
| LOW | frontend/scripts/tool/update_collab_source.sh | 30 | # Check if AppFlowy-Collab directory exists | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | frontend/rust-lib/flowy-ai/src/local_ai/prompt/mod.rs | 4 | pub const OPEN_AI_QA_FLEX_FORMAT: &str = r#"Use Markdown for formatting. Start responses naturally—avoid formal phrases | CODE |
| MEDIUM | frontend/rust-lib/flowy-ai/src/local_ai/prompt/mod.rs | 6 | const 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.dart | 22 | // we utilize the same helper functions there. | COMMENT |
| MEDIUM | …ntend/appflowy_flutter/lib/shared/clipboard_state.dart | 5 | /// Essentially for document in-app json paste, we need to be able | COMMENT |
| MEDIUM | …flutter/lib/shared/popup_menu/appflowy_popup_menu.dart | 1324 | /// and the button will utilize an [InkWell] for taps. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | frontend/Makefile.toml | 34 | # If you update the macOS's CRATE_TYPE, don't forget to update the | COMMENT |
| LOW | frontend/Makefile.toml | 34 | # If you update the macOS's CRATE_TYPE, don't forget to update the | COMMENT |
| MEDIUM | frontend/scripts/makefile/tests.toml | 1 | # If you want to test a single file with single case, you can try this command: | COMMENT |
| MEDIUM | …flutter/packages/appflowy_backend/example/pubspec.yaml | 41 | # included with your application, so that you can use the icons in | COMMENT |
| MEDIUM | …flutter/packages/appflowy_popover/example/pubspec.yaml | 56 | # included with your application, so that you can use the icons in | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …/rust-lib/flowy-ai/src/offline/offline_message_sync.rs | 106 | // TODO: implement background sync | COMMENT |
| LOW | …/rust-lib/flowy-ai/src/offline/offline_message_sync.rs | 126 | // TODO: implement background sync | COMMENT |
| LOW | …/rust-lib/flowy-ai/src/offline/offline_message_sync.rs | 156 | // TODO: implement background sync | COMMENT |
| LOW | …/rust-lib/flowy-ai/src/offline/offline_message_sync.rs | 229 | // TODO: implement background sync | COMMENT |
| LOW | …/rust-lib/flowy-ai/src/offline/offline_message_sync.rs | 242 | // TODO: implement background sync | COMMENT |
| LOW | frontend/rust-lib/flowy-user/src/notification.rs | 21 | // TODO: implement reminder observer | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | CHANGELOG.md | 425 | - Fixed numbered lists generated by AI to maintain the same index as the input | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ppflowy_flutter/lib/user/application/user_service.dart | 306 | // NOTE: This function is irreversible and will delete the current user's account. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …space/presentation/settings/pages/fix_data_widget.dart | 36 | class WorkspaceDataManager { | CODE |