Files
zkxw/web-admin/graphify-out/GRAPH_REPORT.md
T
zlwuandCursor 381315173d merge: bring storage-release QC completed filter into OA deploy branch
Default pending tab to QC-complete samples with optional filter.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-16 12:20:30 +08:00

23 KiB

Graph Report - src (2026-07-16)

Corpus Check

  • Large corpus: 881 files · ~586,999 words. Semantic extraction will be expensive (many Claude tokens). Consider running on a subfolder, or use --no-semantic to run AST-only.

Summary

  • 3025 nodes · 4249 edges · 59 communities detected
  • Extraction: 78% EXTRACTED · 22% INFERRED · 0% AMBIGUOUS · INFERRED: 956 edges (avg confidence: 0.8)
  • Token cost: 0 input · 0 output

Community Hubs (Navigation)

God Nodes (most connected - your core abstractions)

  1. get() - 292 edges
  2. push() - 92 edges
  3. WebSocketClient - 26 edges
  4. emit() - 26 edges
  5. set() - 20 edges
  6. handleDynamicRoutes() - 18 edges
  7. parseProtocolStandardImportText() - 17 edges
  8. scopeQuery() - 16 edges
  9. MenuProcessor - 16 edges
  10. TableCache - 14 edges

Surprising Connections (you probably didn't know these)

  • handleBatchDelete() --calls--> withFullscreenLoading() [INFERRED] views/basic-info/customer/index.vue → utils/fullscreen-loading.ts
  • dash() --calls--> formatDisplayOrDash() [INFERRED] components/business/infusion-schedule-outbound-chain-view/index.vue → utils/datetime-display.ts
  • dash() --calls--> formatDisplayOrDash() [INFERRED] components/business/clinical-schedule-payment-detail/index.vue → utils/datetime-display.ts
  • fmtMoney() --calls--> formatMoneyDisplay() [INFERRED] components/business/clinical-schedule-payment-detail/index.vue → utils/money-format.ts
  • defaultInstallmentRatios() --calls--> push() [INFERRED] utils/protocol-payment-installment.ts → views/operations/storage-facility/index.vue

Communities

Community 0 - "Community 0"

Cohesion: 0.01 Nodes (206): fetchAccessLogList(), fetchActiveRegions(), fetchCategoryList(), fetchCategoryParameters(), fetchCellProductPriceList(), fetchCellProductTypeList(), fetchChannelAccount(), fetchChannelAgreementPrices() (+198 more)

Community 1 - "Community 1"

Cohesion: 0.01 Nodes (128): fetchCellProductSpecList(), fetchUploadAttachment(), fetchMyProductionTasks(), fetchMyQcTaskList(), fetchQcTaskDetail(), fetchQcTaskList(), FireworkSystem, handleReportUpload() (+120 more)

Community 2 - "Community 2"

Cohesion: 0.01 Nodes (14): fetchCreateCheckupInstitution(), fetchCreateCheckupInstitutionInvoice(), fetchDeleteProjectSystemItem(), fetchDeptTree(), fetchGetRoleList(), fetchNotDeletedRegions(), fetchPostBoundUserIds(), fetchRegionList() (+6 more)

Community 3 - "Community 3"

Cohesion: 0.03 Nodes (89): batchSavePilotCheckup(), deletePilotCheckupActualItem(), fetchCheckupInstitutionList(), fetchCheckupInstitutionPackageDetail(), fetchCheckupInstitutionPackages(), fetchPilotCheckupActualItems(), fetchPilotCheckupDetail(), fetchPilotCheckupList() (+81 more)

Community 4 - "Community 4"

Cohesion: 0.03 Nodes (58): fetchCheckupInstitutionInvoices(), fetchCheckupInstitutionProjects(), fetchCreateCheckupInstitutionProject(), fetchUpdateCheckupInstitutionProject(), fetchCreateEnvDetectItem(), fetchDeleteEnvDetectItem(), fetchEnvDetectItemDetail(), fetchEnvDetectItemList() (+50 more)

Community 5 - "Community 5"

Cohesion: 0.04 Nodes (56): buildInboundBasicSection(), buildInboundCellStorageViewSections(), buildInboundResearchDonationViewSections(), buildReceptionSection(), buildTransportSection(), resolveInboundProtocolStatus(), buildBaseFields(), buildFeeSection() (+48 more)

Community 6 - "Community 6"

Cohesion: 0.04 Nodes (69): formatNowDatetime(), formatTodayDate(), addPaymentDetail(), applyFqPaymentDefaults(), applyPaymentPresetForMode(), createEmptyTransport(), datetimeToYmd(), defaultInstallmentStartDateYmd() (+61 more)

Community 7 - "Community 7"

Cohesion: 0.04 Nodes (41): fetchGetMenuList(), fetchGetMenuCodes(), fetchGetUserInfo(), fetchLogin(), fetchUpdateProfile(), fetchUploadProfileAvatar(), MenuProcessor, RouteRegistry (+33 more)

Community 8 - "Community 8"

Cohesion: 0.03 Nodes (46): fetchStorageSlotSelectOptions(), useSettingsHandlers(), useSettingsPanel(), useSettingsState(), RoutePermissionValidator, useCeremony(), useTheme(), if() (+38 more)

Community 9 - "Community 9"

Cohesion: 0.04 Nodes (43): fetchOaAppDraft(), fetchOaAppList(), fetchOaFlowPreview(), fetchOaGroupList(), fetchOaRoleList(), fetchOaRoleUsers(), fetchOaTemplateDetail(), fetchOaTemplates() (+35 more)

Community 10 - "Community 10"

Cohesion: 0.04 Nodes (58): completePilotApplication(), deletePilotApplication(), fetchFullmoonTodoList(), fetchPilotApplicationList(), fetchUpdateFullmoonTodoInsurance(), startPilotApplication(), voidPilotApplication(), fetchCollectionProtocolDetail() (+50 more)

Community 11 - "Community 11"

Cohesion: 0.03 Nodes (24): fetchProductionWorkOrderQcInfo(), fetchQcMaterialBatchDetail(), fetchQcMaterialBatchList(), fetchQcMaterialBatchOptions(), fetchQcMaterialList(), fetchQcMaterialOptions(), fetchUpdateQcMaterialBatch(), dash() (+16 more)

Community 12 - "Community 12"

Cohesion: 0.04 Nodes (46): fetchCreateCustomer(), fetchCustomerList(), fetchDeleteCustomer(), fetchUpdateCustomer(), updateInfusionScheduleStatus(), handleDialogClose(), handleAdd(), handleBatchDelete() (+38 more)

Community 13 - "Community 13"

Cohesion: 0.04 Nodes (36): handleBlur(), handleFocus(), handleInput(), fetchClinicalReceiptConfirmed(), fetchClinicalRefundConfirmed(), buildConfirmedParams(), buildPendingParams(), formatAmount() (+28 more)

Community 14 - "Community 14"

Cohesion: 0.05 Nodes (48): fetchEthnicList(), applyDonationBundleToForm(), createEmptyTransport(), ensureEthnicOptionInList(), handleOpenForAdd(), if(), loadEthnicOptions(), normalizeSampleRow() (+40 more)

Community 15 - "Community 15"

Cohesion: 0.05 Nodes (41): fetchOaInstanceDetail(), fetchOaTasks(), fetchProductionReceptionBySampleCode(), fetchProductionReceptionSubmit(), fetchProductionReceptionUpdate(), currentPrinterName(), load(), openDetail() (+33 more)

Community 16 - "Community 16"

Cohesion: 0.05 Nodes (24): fetchCreateMenu(), fetchDeleteMenu(), fetchMenuTree(), fetchRoleOptions(), fetchUpdateMenu(), collectIds(), postorder(), preorder() (+16 more)

Community 17 - "Community 17"

Cohesion: 0.1 Nodes (2): WebSocketClient, TableCache

Community 18 - "Community 18"

Cohesion: 0.06 Nodes (29): fetchInfusionScheduleMgmtDetail(), qcAttachmentFullUrl(), qcDownloadAttachment(), qcPreviewAttachment(), handleDownloadAttachment(), attachmentFullUrl(), dash(), handleAttachmentDownload() (+21 more)

Community 19 - "Community 19"

Cohesion: 0.08 Nodes (33): fetchRefreshToken(), toLogin(), base64ToBytes(), bytesToBase64(), decryptJson(), deriveKey(), encryptJson(), fromBase64Url() (+25 more)

Community 20 - "Community 20"

Cohesion: 0.09 Nodes (8): getDefaultLanguage(), checkStorageCompatibility(), StorageConfig, getSystemStorage(), getSysVersion(), StorageKeyManager, StorageCompatibilityManager, validateStorageData()

Community 21 - "Community 21"

Cohesion: 0.07 Nodes (21): fetchDictDataOptions(), fetchDeleteMaterialBatch(), fetchMaterialBatchList(), fetchMaterialBatchOptions(), fetchMaterialList(), fetchMaterialOptions(), fetchUpdateMaterialBatch(), fetchMaterialUsageList() (+13 more)

Community 22 - "Community 22"

Cohesion: 0.08 Nodes (12): ComponentLoader, IframeRouteManager, RouteTransformer, getFirstMenuPath(), getFirstSecondLevelMenuPath(), isIframe(), isNavigableMenuItem(), isWorkbenchMenuItem() (+4 more)

Community 23 - "Community 23"

Cohesion: 0.08 Nodes (20): createEmptySnapshots(), normalizeConfiguredReagents(), normalizeConsumables(), normalizeDataCollections(), normalizeReagents(), normalizeStepOutputs(), serializeAttachments(), serializeEquipmentIds() (+12 more)

Community 24 - "Community 24"

Cohesion: 0.09 Nodes (30): fetchAddTaskStep(), fetchCopyTaskStep(), fetchDeleteTaskStep(), fetchDispatchProductionTaskSteps(), fetchForwardProductionTask(), fetchProductionTaskDetail(), fetchProductionTaskEditorInit(), fetchProductionTaskList() (+22 more)

Community 25 - "Community 25"

Cohesion: 0.09 Nodes (22): fetchMineProductionWorkOrderTabStepCounts(), fetchMineProductionWorkOrderTabStepCountsDeduped(), fetchProductionWorkOrderCellProductOptions(), fetchProductionWorkOrderDetail(), fetchProductionWorkOrderList(), fetchProductionWorkOrderQcDispatchOptions(), fetchProductionWorkOrderTabStepCounts(), fetchProductionWorkOrderTabStepCountsDeduped() (+14 more)

Community 26 - "Community 26"

Cohesion: 0.07 Nodes (14): fetchUserList(), formatHandoverUserLabel(), formatNowDatetime(), fullFileUrl(), handlePreviewAttachment(), isVideoFile(), remoteSearchHandoverUsers(), resetHandoverForm() (+6 more)

Community 27 - "Community 27"

Cohesion: 0.09 Nodes (12): fetchMineQcWorkOrderTabUnfinishedCounts(), fetchOutboundQcDetail(), fetchQcWorkOrderDetail(), fetchQcWorkOrderList(), fetchQcWorkOrdersBySample(), fetchQcWorkOrderTabUnfinishedCounts(), reload(), reloadTabCounts() (+4 more)

Community 28 - "Community 28"

Cohesion: 0.12 Nodes (15): addCopyButton(), highlightCode(), insertLineNumbers(), isBlockProcessed(), markBlockAsProcessed(), processBlock(), setupHighlightDirective(), setupRippleDirective() (+7 more)

Community 29 - "Community 29"

Cohesion: 0.13 Nodes (18): fetchCellSampleTypeList(), fetchCreateCellSampleType(), fetchDeleteCellSampleType(), fetchUpdateCellSampleType(), handleAdd(), handleDelete(), handleDropdownCommand(), handleEdit() (+10 more)

Community 30 - "Community 30"

Cohesion: 0.19 Nodes (15): fetchAttachmentDownloadUrl(), attachmentFullUrl(), ensureUniqueZipEntryName(), fetchAttachmentBlob(), getAttachmentExtension(), resolveAttachmentFileName(), sanitizeZipPathSegment(), applyInboundLabStorageCodePrefix() (+7 more)

Community 31 - "Community 31"

Cohesion: 0.2 Nodes (11): fetchMarkQcMaterialUsageFullyUsed(), canMarkFullyUsed(), displayPurpose(), displayReceiver(), displayUseTime(), getChangeTypeLabel(), getChangeTypeTagType(), handleMarkFullyUsed() (+3 more)

Community 32 - "Community 32"

Cohesion: 0.16 Nodes (10): useTable(), useTableImpl(), getColumnChecks(), useTableColumns(), createErrorHandler(), createSmartDebounce(), defaultResponseAdapter(), extractPagination() (+2 more)

Community 33 - "Community 33"

Cohesion: 0.27 Nodes (14): useChart(), useChartComponent(), useChartOps(), colourBlend(), getCssVar(), getDarkColor(), getLightColor(), handleElementThemeColor() (+6 more)

Community 34 - "Community 34"

Cohesion: 0.33 Nodes (13): buildProtocolPaymentFlowSteps(), dash(), financeReceiptTime(), formatAmount(), hasFinanceReceipt(), hasFinanceRefund(), hasReceiptSubmit(), hasRefundSubmit() (+5 more)

Community 35 - "Community 35"

Cohesion: 0.19 Nodes (6): fetchServiceOrderTxnList(), handleReset(), handleSearch(), handleTabChange(), loadData(), switchTab()

Community 37 - "Community 37"

Cohesion: 0.21 Nodes (7): handleReset(), handleSearch(), handleToggleSelect(), loadData(), onReviewSubmitted(), rowId(), isSelected()

Community 38 - "Community 38"

Cohesion: 0.42 Nodes (9): buildPaymentFlowSteps(), dash(), formatAmount(), hasFinanceReceipt(), hasFinanceRefund(), hasReceiptSubmit(), hasRefundSubmit(), receiptSubmitTime() (+1 more)

Community 39 - "Community 39"

Cohesion: 0.24 Nodes (4): addMaterialRow(), nextMaterialRowKey(), onRequisitionSelect(), removeMaterialRow()

Community 40 - "Community 40"

Cohesion: 0.25 Nodes (2): handleTouchEnd(), setTransition()

Community 42 - "Community 42"

Cohesion: 0.28 Nodes (4): fetchMyProductionMaterialConsumptions(), handleReset(), handleSearch(), loadData()

Community 43 - "Community 43"

Cohesion: 0.31 Nodes (4): annotateForkEdges(), chainApiToElements(), walkAncestorBranch(), walkAncestorParents()

Community 46 - "Community 46"

Cohesion: 0.39 Nodes (6): isIgnorableScriptError(), normalizeErrorMessage(), registerPromiseErrorHandler(), registerResourceErrorHandler(), scriptErrorHandler(), setupErrorHandle()

Community 47 - "Community 47"

Cohesion: 0.36 Nodes (1): TableHeightCalculator

Community 49 - "Community 49"

Cohesion: 0.33 Nodes (2): logApiCryptoBootInfo(), maskSecret()

Community 50 - "Community 50"

Cohesion: 0.38 Nodes (4): handleFocus(), handleInput(), parseDecimalToNumber(), sanitizeDecimalInput()

Community 51 - "Community 51"

Cohesion: 0.4 Nodes (2): isUnfinishedQcWorkOrder(), resolveQcWorkOrderUnfinishedBadgeCount()

Community 52 - "Community 52"

Cohesion: 0.47 Nodes (3): isPaymentDueWithinWarnWindow(), parsePaymentDueYmd(), startOfLocalDay()

Community 54 - "Community 54"

Cohesion: 0.5 Nodes (2): formatProtocolDocDeleteConfirm(), formatProtocolDocSubject()

Community 55 - "Community 55"

Cohesion: 0.5 Nodes (2): parseEquipmentIds(), syncEquipmentNamesFromOptions()

Community 57 - "Community 57"

Cohesion: 0.5 Nodes (2): focusInput(), handleKeydown()

Community 58 - "Community 58"

Cohesion: 0.4 Nodes (1): fetchQcMaterialAmountAuthUsers()

Community 60 - "Community 60"

Cohesion: 0.67 Nodes (2): if(), logSidebarMenu()

Community 65 - "Community 65"

Cohesion: 1.0 Nodes (2): getSettingDefaults(), resetToDefaults()

Community 67 - "Community 67"

Cohesion: 1.0 Nodes (2): copyTextToClipboard(), copyTextWithFallback()

Community 68 - "Community 68"

Cohesion: 1.0 Nodes (2): getSourceProtocolAttachment(), normalizeAttachmentFiles()

Community 78 - "Community 78"

Cohesion: 1.0 Nodes (2): emptyTabCounts(), useProductionWorkOrderTabStepCounts()

Community 80 - "Community 80"

Cohesion: 1.0 Nodes (2): initialProgress(), useQcWorkOrderAttachmentExport()

Community 81 - "Community 81"

Cohesion: 1.0 Nodes (2): emptyTabCounts(), useQcWorkOrderTabUnfinishedCounts()

Knowledge Gaps

  • Thin community Community 17 (42 nodes): WebSocketClient, .calculateReconnectDelay(), .clearAllTimers(), .clearConnectionTimers(), .clearTimer(), .close(), .closeCurrentSocketForReconnect(), .connect(), .connectionStatusText(), .constructor(), .destroyInstance(), .flushMessageQueue(), .getInstance(), .getReadyStateText(), .handleClose(), .handleConnectionTimeout(), .handleError(), .handleMessage(), .handleOpen(), .init(), .isWebSocketConnected(), .reconnect(), .resetHeartbeat(), .send(), .startHeartbeat(), .startPing(), TableCache, .cleanupExpired(), .clear(), .clearByTags(), .clearCurrentSearch(), .clearPagination(), .constructor(), .evictLRU(), .generateKey(), .generateTags(), .get(), .getStats(), .log(), .set(), index.ts, tableCache.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 40 (9 nodes): cleanupEventListeners(), handleTouchEnd(), handleTouchMove(), handleTouchStart(), handleWheelScroll(), if(), setTransition(), setupEventListeners(), index.vue Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 47 (8 nodes): TableHeightCalculator, .calculate(), .calculateOffset(), .calculatePaginationOffset(), .constructor(), .getHeaderHeight(), useTableHeight(), useTableHeight.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 49 (7 nodes): App.vue, main.ts, refreshButtonAutoIcons(), refreshPanelTitleIcons(), logApiCryptoBootInfo(), maskSecret(), console.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 51 (6 nodes): formatQcWorkOrderUnfinishedBadgeCount(), isUnfinishedQcWorkOrder(), qcWorkOrderUnfinishedBadgeTitle(), resolveQcWorkOrderUnfinishedBadgeCount(), sumQcWorkOrderGroupUnfinishedBadgeCount(), qc-work-order-unfinished-badge.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 54 (5 nodes): formatProtocolDocBatchDeleteConfirm(), formatProtocolDocDeleteConfirm(), formatProtocolDocSubject(), getProtocolDocTypeLabel(), protocol-doc-label.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 55 (5 nodes): equipmentOptionLabel(), joinEquipmentIds(), parseEquipmentIds(), syncEquipmentNamesFromOptions(), equipment-select.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 57 (5 nodes): focusInput(), handleKeydown(), if(), search(), index.vue Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 58 (5 nodes): fetchBatchRevokeQcMaterialAmountAuth(), fetchGrantQcMaterialAmountAuth(), fetchQcMaterialAmountAuthUsers(), fetchRevokeQcMaterialAmountAuth(), qc-material-amount-auth.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 60 (4 nodes): if(), logSidebarMenu(), index.vue, SidebarSubmenu.vue Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 65 (3 nodes): getSettingDefaults(), resetToDefaults(), setting.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 67 (3 nodes): copyTextToClipboard(), copyTextWithFallback(), copy-text.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 68 (3 nodes): getSourceProtocolAttachment(), normalizeAttachmentFiles(), protocol-source-attachment.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 78 (3 nodes): emptyTabCounts(), useProductionWorkOrderTabStepCounts(), useProductionWorkOrderTabStepCounts.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 80 (3 nodes): initialProgress(), useQcWorkOrderAttachmentExport(), useQcWorkOrderAttachmentExport.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 81 (3 nodes): emptyTabCounts(), useQcWorkOrderTabUnfinishedCounts(), useQcWorkOrderTabUnfinishedCounts.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.

Suggested Questions

Questions this graph is uniquely positioned to answer:

  • Why does get() connect Community 0 to Community 1, Community 2, Community 3, Community 4, Community 6, Community 7, Community 8, Community 9, Community 10, Community 11, Community 12, Community 13, Community 14, Community 15, Community 16, Community 18, Community 21, Community 24, Community 25, Community 26, Community 27, Community 29, Community 35, Community 42, Community 43, Community 58? High betweenness centrality (0.284) - this node is a cross-community bridge.
  • Why does push() connect Community 1 to Community 2, Community 3, Community 4, Community 5, Community 6, Community 8, Community 9, Community 10, Community 11, Community 14, Community 15, Community 17, Community 19, Community 23, Community 24, Community 25, Community 26, Community 27, Community 30, Community 39? High betweenness centrality (0.279) - this node is a cross-community bridge.
  • Why does handleDynamicRoutes() connect Community 7 to Community 8, Community 15, Community 22, Community 25, Community 27? High betweenness centrality (0.046) - this node is a cross-community bridge.
  • Are the 291 inferred relationships involving get() (e.g. with buildNodeCodePathFromFlat() and collectLeafFacilityNodesInTreeOrder()) actually correct? get() has 291 INFERRED edges - model-reasoned connections that need verification.
  • Are the 91 inferred relationships involving push() (e.g. with refreshQcMenuBadges() and collectLeafFacilityNodesInTreeOrder()) actually correct? push() has 91 INFERRED edges - model-reasoned connections that need verification.
  • Are the 25 inferred relationships involving emit() (e.g. with handleSubmit() and handleDialogClose()) actually correct? emit() has 25 INFERRED edges - model-reasoned connections that need verification.
  • Are the 19 inferred relationships involving set() (e.g. with buildNodeCodePathFromFlat() and collectLeafFacilityNodesInTreeOrder()) actually correct? set() has 19 INFERRED edges - model-reasoned connections that need verification.