All-in-one IoT Platform - Device management, data collection, processing and visualization.
This report summarizes scanner evidence for thingsboard/thingsboard, a Java project with 22,630 GitHub stars. SynthScan examined 1,873,547 lines of code across 13170 source files, recording 707 pattern matches distributed across 17 syntactic categories. The legacy adjusted pattern signal is 1.7 (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? 373 finding(s).
Are imports declared and package/API names verified? 321 finding(s).
Are wrappers, guards, and repeated structures necessary? 187 finding(s).
Which changes need focused human review? 707 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 707 distinct pattern matches across 17 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 |
|---|---|---|---|---|
| CRITICAL | ui-ngx/src/app/shared/components/toast.directive.ts | 79 | this.toastComponentRef.instance.actionButton._elementRef.nativeElement.click(); | CODE |
| CRITICAL | ui-ngx/src/app/shared/components/toast.directive.ts | 144 | this.toastComponentRef.instance.actionButton._elementRef.nativeElement.click(); | CODE |
| CRITICAL | ui-ngx/src/app/shared/components/toast.directive.ts | 187 | this.snackBarRef.instance.actionButton._elementRef.nativeElement.click(); | CODE |
| CRITICAL | …components/dashboard-page/dashboard-state.component.ts | 68 | this.dashboard = deepClone(this.ctx.stateController.dashboardCtrl.dashboardCtx.getDashboard()); | CODE |
| CRITICAL | …components/dashboard-page/dashboard-state.component.ts | 91 | this.stateSubscription = this.ctx.stateController.dashboardCtrl.dashboardCtx.stateChanged.subscribe(() => { | CODE |
| CRITICAL | …/components/dashboard-page/dashboard-page.component.ts | 729 | this.layouts.main.layoutCtx.layoutDataChanged.unsubscribe(); | CODE |
| CRITICAL | …/components/dashboard-page/dashboard-page.component.ts | 730 | this.layouts.right.layoutCtx.layoutDataChanged.unsubscribe(); | CODE |
| CRITICAL | …/components/dashboard-page/dashboard-page.component.ts | 1385 | const widget = this.layouts.main.layoutCtx.widgets.widgetByIndex(0); | CODE |
| CRITICAL | …d-page/layout/select-dashboard-breakpoint.component.ts | 30 | this.layoutDataChanged$ = this.dashboardCtrl.layouts.main.layoutCtx.layoutDataChanged.subscribe(() => { | CODE |
| CRITICAL | …ome/components/alarm-rules/alarm-rules-table-config.ts | 368 | table.entityDetailsPanel.matTabGroup._tabs.changes.pipe( | CODE |
| CRITICAL | …s/home/components/widget/widget-container.component.ts | 348 | this.widget.widgetContext.dashboard.stateController.dashboardCtrl.dashboardCtx.getDashboard(), this.widget.w | CODE |
| CRITICAL | …app/modules/home/components/widget/widget.component.ts | 1542 | const dashboard = deepClone(this.widgetContext.stateController.dashboardCtrl.dashboardCtx.getDashboard()); | CODE |
| CRITICAL | …app/modules/home/components/widget/widget.component.ts | 1581 | const dashboard = deepClone(this.widgetContext.stateController.dashboardCtrl.dashboardCtx.getDashboard()); | CODE |
| CRITICAL | …nts/widget/lib/maps/data-layer/polylines-data-layer.ts | 296 | L.DomUtil.addClass(map.pm.Draw.Cut._hintMarker.getTooltip()._container, 'tb-place-item-label'); | CODE |
| CRITICAL | …ents/widget/lib/maps/data-layer/polygons-data-layer.ts | 276 | L.DomUtil.addClass(map.pm.Draw.Cut._hintMarker.getTooltip()._container, 'tb-place-item-label'); | CODE |
| CRITICAL | …nents/widget/lib/settings/common/gradient.component.ts | 177 | ...this.gradientFormGroup.value.gradientAdvanced.gradientList.map(item => item.color), | CODE |
| CRITICAL | …nents/widget/lib/settings/common/gradient.component.ts | 180 | ...this.gradientFormGroup.value.gradient.gradientList.map(item => item.color), | CODE |
| CRITICAL | …/home/components/widget/lib/chart/time-series-chart.ts | 406 | this.ctx.dashboard.gridster.el.removeEventListener('scroll', this.onParentScroll); | CODE |
| CRITICAL | …/home/components/widget/lib/chart/time-series-chart.ts | 809 | this.ctx.dashboard.gridster.el.addEventListener('scroll', this.onParentScroll); | CODE |
| CRITICAL⚡ | …/home/components/widget/lib/maps-legacy/leaflet-map.ts | 232 | this.map.pm.Draw.tbMarker._hintMarker.setTooltipContent(tooltipText); | CODE |
| CRITICAL⚡ | …/home/components/widget/lib/maps-legacy/leaflet-map.ts | 237 | this.map.pm.Draw.tbCircle._hintMarker.setTooltipContent(tooltipText); | CODE |
| CRITICAL⚡ | …/home/components/widget/lib/maps-legacy/leaflet-map.ts | 247 | this.map.pm.Draw.tbRectangle._hintMarker.setTooltipContent(tooltipText); | CODE |
| CRITICAL⚡ | …/home/components/widget/lib/maps-legacy/leaflet-map.ts | 257 | this.map.pm.Draw.tbPolygon._hintMarker.setTooltipContent(tooltipText); | CODE |
| CRITICAL | …ome/components/scheduler/scheduler-events.component.ts | 980 | this.component.dataSource.selection.changed.subscribe(() => { | CODE |
| CRITICAL | …ts/calculated-fields/calculated-fields-table-config.ts | 293 | table.entityDetailsPanel.matTabGroup._tabs.changes.pipe( | CODE |
| CRITICAL | …ts/metrics/calculated-field-metrics-table.component.ts | 177 | this.popoverComponent.tbComponentRef.instance.metricDataApplied.subscribe((value) => { | CODE |
| CRITICAL | …rguments/calculated-field-arguments-table.component.ts | 194 | this.popoverComponent.tbComponentRef.instance.argumentsDataApplied.subscribe(({ entityName, ...value }) => { | CODE |
| CRITICAL | …ulated-field-geofencing-zone-groups-table.component.ts | 172 | this.popoverComponent.tbComponentRef.instance.geofencingDataApplied.subscribe(({ entityName, ...value }) => { | CODE |
| CRITICAL | …me/pages/converter/converters-table-config.resolver.ts | 205 | table.entityDetailsPanel.matTabGroup._tabs.changes.pipe( | CODE |
| CRITICAL | …notification/sent/sent-notification-dialog.componet.ts | 248 | delay = (this.notificationRequestForm.value.additionalConfig.time.valueOf() - this.minDate().valueOf()) / 1000; | CODE |
| CRITICAL | …es/home/pages/integration/integrations-table-config.ts | 334 | table.entityDetailsPanel.matTabGroup._tabs.changes.pipe( | CODE |
| CRITICAL | …pages/agent/component/agent-app-arguments.component.ts | 198 | this.popoverComponent.tbComponentRef.instance.argumentApplied.subscribe((value: AgentAppArgument) => { | CODE |
| CRITICAL | …dules/home/pages/rulechain/rulechain-page.component.ts | 1020 | const nodeOutputEdges = this.ruleChainCanvas.modelService.model.edges.filter(edge => edge.source === connect | CODE |
| CRITICAL | …dules/home/pages/rulechain/rulechain-page.component.ts | 1059 | const nodeInputEdges = this.ruleChainCanvas.modelService.model.edges.filter(edge => edge.destination === inp | CODE |
| CRITICAL | …/widget/lib/html_container/examples/angular_tabs_js.md | 23 | const stateSub = ctx.stateController.dashboardCtrl.dashboardCtx.stateChanged.subscribe(() => { | CODE |
| CRITICAL⚡ | …ard/server/dao/sql/tenant/TenantProfileRepository.java | 20 | @Query("SELECT new org.thingsboard.server.common.data.EntityInfo(t.id, 'TENANT_PROFILE', t.name) " + | CODE |
| CRITICAL⚡ | …ard/server/dao/sql/tenant/TenantProfileRepository.java | 30 | @Query("SELECT new org.thingsboard.server.common.data.EntityInfo(t.id, 'TENANT_PROFILE', t.name) " + | CODE |
| CRITICAL⚡ | …ard/server/dao/sql/tenant/TenantProfileRepository.java | 40 | @Query("SELECT new org.thingsboard.server.common.data.EntityInfo(t.id, 'TENANT_PROFILE', t.name) " + | CODE |
| CRITICAL⚡ | …ard/server/dao/sql/tenant/TenantProfileRepository.java | 47 | @Query("SELECT new org.thingsboard.server.common.data.edqs.fields.TenantProfileFields(t.id, t.createdTime, t.name," | CODE |
| CRITICAL | …hingsboard/server/dao/sql/tenant/TenantRepository.java | 21 | @Query("SELECT new org.thingsboard.server.dao.model.sql.TenantInfoEntity(t, p.name) " + | CODE |
| CRITICAL | …hingsboard/server/dao/sql/tenant/TenantRepository.java | 33 | @Query("SELECT new org.thingsboard.server.dao.model.sql.TenantInfoEntity(t, p.name) " + | CODE |
| CRITICAL | …hingsboard/server/dao/sql/tenant/TenantRepository.java | 46 | @Query("SELECT new org.thingsboard.server.common.data.edqs.fields.TenantFields(t.id, t.createdTime, t.title, t.versi | CODE |
| CRITICAL | …rd/server/dao/sql/entityview/EntityViewRepository.java | 64 | @Query("SELECT new org.thingsboard.server.common.data.EntityInfo(a.id, 'ENTITY_VIEW', a.name) " + | CODE |
| CRITICAL | …rd/server/dao/sql/entityview/EntityViewRepository.java | 146 | @Query("SELECT new org.thingsboard.server.common.data.edqs.fields.EntityViewFields(e.id, e.createdTime, e.tenantId," | CODE |
| CRITICAL | …d/server/dao/sql/settings/AdminSettingsRepository.java | 29 | @Query("SELECT new org.thingsboard.server.common.data.EntityInfo(settings.id, 'ADMIN_SETTINGS', settings.key) " + | CODE |
| CRITICAL | …rg/thingsboard/server/dao/sql/role/RoleRepository.java | 47 | @Query("SELECT new org.thingsboard.server.common.data.edqs.fields.RoleFields(r.id, r.createdTime, " + | CODE |
| CRITICAL | …sboard/server/dao/sql/widget/WidgetTypeRepository.java | 51 | @Query("SELECT new org.thingsboard.server.dao.model.sql.WidgetTypeIdFqnEntity(wtd.id, wtd.fqn) FROM WidgetTypeDetail | CODE |
| CRITICAL | …sboard/server/dao/sql/widget/WidgetTypeRepository.java | 72 | @Query("SELECT new org.thingsboard.server.common.data.edqs.fields.WidgetTypeFields(w.id, w.createdTime, w.tenantId," | CODE |
| CRITICAL | …sboard/server/dao/sql/widget/WidgetTypeRepository.java | 76 | @Query(value = "SELECT new org.thingsboard.server.common.data.util.TbPair(i.type, count(i)) FROM RuleNodeEntity i GR | CODE |
| CRITICAL | …ard/server/dao/sql/widget/WidgetsBundleRepository.java | 147 | @Query("SELECT new org.thingsboard.server.common.data.edqs.fields.WidgetsBundleFields(w.id, w.createdTime, w.tenantI | CODE |
| CRITICAL | …rd/server/dao/sql/widget/WidgetTypeInfoRepository.java | 209 | @Query("SELECT new org.thingsboard.server.common.data.EntityInfo(w.id, 'WIDGET_TYPE', w.name) " + | CODE |
| CRITICAL | …rd/server/dao/sql/widget/WidgetTypeInfoRepository.java | 215 | @Query("SELECT new org.thingsboard.server.common.data.EntityInfo(w.id, 'WIDGET_TYPE', w.name) " + | CODE |
| CRITICAL | …board/server/dao/sql/asset/AssetProfileRepository.java | 24 | @Query("SELECT new org.thingsboard.server.common.data.asset.AssetProfileInfo(a.id, a.tenantId, a.name, a.image, a.de | CODE |
| CRITICAL⚡ | …board/server/dao/sql/asset/AssetProfileRepository.java | 35 | @Query("SELECT new org.thingsboard.server.common.data.asset.AssetProfileInfo(a.id, a.tenantId, a.name, a.image, a.de | CODE |
| CRITICAL⚡ | …board/server/dao/sql/asset/AssetProfileRepository.java | 42 | @Query("SELECT new org.thingsboard.server.common.data.asset.AssetProfileInfo(a.id, a.tenantId, a.name, a.image, a.de | CODE |
| CRITICAL⚡ | …board/server/dao/sql/asset/AssetProfileRepository.java | 51 | @Query("SELECT new org.thingsboard.server.common.data.asset.AssetProfileInfo(a.id, a.tenantId, a.name, a.image, a.de | CODE |
| CRITICAL⚡ | …board/server/dao/sql/asset/AssetProfileRepository.java | 61 | @Query("SELECT new org.thingsboard.server.common.data.asset.AssetProfileInfo(a.id, a.tenantId, a.name, a.image, a.de | CODE |
| CRITICAL⚡ | …board/server/dao/sql/asset/AssetProfileRepository.java | 65 | @Query("SELECT new org.thingsboard.server.common.data.asset.AssetProfileInfo(a.id, a.tenantId, a.name, a.image, a.de | CODE |
| CRITICAL⚡ | …board/server/dao/sql/asset/AssetProfileRepository.java | 75 | @Query("SELECT new org.thingsboard.server.common.data.EntityInfo(ap.id, 'ASSET_PROFILE', ap.name) " + | CODE |
| CRITICAL⚡ | …board/server/dao/sql/asset/AssetProfileRepository.java | 81 | @Query("SELECT new org.thingsboard.server.common.data.EntityInfo(a.id, 'ASSET_PROFILE', a.name) " + | CODE |
| 183 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ui-ngx/generate-icon-metadata.js | 18 | async function getMaterialIconMetadataAndUpdated(iconsBundle){ | CODE |
| LOW | ui-ngx/src/app/core/utils.ts | 30 | export function onParentScrollOrWindowResize(el: Node): Observable<Event> { | CODE |
| LOW | ui-ngx/src/app/core/utils.ts | 297 | export function checkNumericStringAndConvert(val: string): number | string { | CODE |
| LOW | ui-ngx/src/app/core/http/http-utils.ts | 41 | export function defaultHttpOptionsFromParams(queryParams?: QueryParams, config?: RequestConfig) { | CODE |
| LOW | ui-ngx/src/app/core/http/http-utils.ts | 49 | export function defaultHttpOptionsFromConfig(config?: RequestConfig) { | CODE |
| LOW | …meta-reducers/init-state-from-local-storage.reducer.ts | 8 | export function initStateFromLocalStorage( | CODE |
| LOW | ui-ngx/src/app/shared/models/notification.models.ts | 808 | export function notificationAiAssistantConfig(store: Store<AppState>, | CODE |
| LOW | ui-ngx/src/app/shared/models/tenant.model.ts | 138 | export function createTenantProfileConfiguration(type: TenantProfileType): TenantProfileConfiguration { | CODE |
| LOW | ui-ngx/src/app/shared/models/vc.models.ts | 106 | export function createDefaultEntityTypesVersionCreate(): {[entityType: string]: EntityTypeVersionCreateConfig} { | CODE |
| LOW | ui-ngx/src/app/shared/models/vc.models.ts | 162 | export function createDefaultEntityTypesVersionLoad(): {[entityType: string]: EntityTypeVersionLoadConfig} { | CODE |
| LOW | ui-ngx/src/app/shared/models/vc.models.ts | 275 | export function entityExportDataToJsonString(data: EntityExportData<any>): string { | CODE |
| LOW | ui-ngx/src/app/shared/models/integration.models.ts | 380 | export function getIntegrationHelpLinkByType(type: IntegrationType): string { | CODE |
| LOW | …/src/app/shared/models/lwm2m-security-config.models.ts | 74 | export function getDefaultClientSecurityConfig(securityConfigMode: Lwm2mSecurityType, endPoint = ''): ClientSecurityConf | CODE |
| LOW | …/src/app/shared/models/lwm2m-security-config.models.ts | 95 | export function getDefaultServerSecurityConfig(): ServerSecurityConfig { | CODE |
| LOW | ui-ngx/src/app/shared/models/alarm-rule.models.ts | 160 | export function toAlarmRuleFilterPredicate(type: ValueAlarmRuleFilterPredicateType, | CODE |
| LOW | ui-ngx/src/app/shared/models/alarm-rule.models.ts | 301 | export function areFilterAndPredicateArgumentsValid(obj: any, args: Record<string, CalculatedFieldArgument>): boolean { | CODE |
| LOW | ui-ngx/src/app/shared/models/alarm-rule.models.ts | 315 | export function areFiltersAndPredicateArgumentsValid(obj: any, args: Record<string, CalculatedFieldArgument>): boolean { | CODE |
| LOW⚡ | ui-ngx/src/app/shared/models/alarm-rule.models.ts | 333 | export function areAlarmRuleConditionFilterArgumentsValid(condition: AlarmRuleCondition, | CODE |
| LOW⚡ | ui-ngx/src/app/shared/models/alarm-rule.models.ts | 338 | export function isAlarmRuleConditionScheduleArgumentValid(condition: AlarmRuleCondition, | CODE |
| LOW⚡ | ui-ngx/src/app/shared/models/alarm-rule.models.ts | 344 | export function areAlarmRuleArgumentsValid(alarmRule: AlarmRule, args: Record<string, CalculatedFieldArgument>): boolean | CODE |
| LOW⚡ | ui-ngx/src/app/shared/models/alarm-rule.models.ts | 350 | export function isPredicateArgumentsValid(predicates: any, args: Record<string, CalculatedFieldArgument>): boolean { | CODE |
| LOW | ui-ngx/src/app/shared/models/settings.models.ts | 406 | export function smsProviderConfigurationValidator(required: boolean): ValidatorFn { | CODE |
| LOW | ui-ngx/src/app/shared/models/settings.models.ts | 447 | export function createSmsProviderConfiguration(type: SmsProviderType): SmsProviderConfiguration { | CODE |
| LOW | ui-ngx/src/app/shared/models/page/page-link.ts | 33 | export function defaultPageLinkSearchFunction(searchProperty?: string): PageLinkSearchFunction<any> { | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 53 | export function entityKeyTypeToDataKeyType(entityKeyType: EntityKeyType): DataKeyType { | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 71 | export function dataKeyTypeToEntityKeyType(dataKeyType: DataKeyType): EntityKeyType { | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 145 | export function entityKeyValueTypeToFilterPredicateType(valueType: EntityKeyValueType): FilterPredicateType { | CODE |
| LOW⚡ | ui-ngx/src/app/shared/models/query/query.models.ts | 157 | export function createDefaultFilterPredicateInfo(valueType: EntityKeyValueType, complex: boolean): KeyFilterPredicateInf | CODE |
| LOW⚡ | ui-ngx/src/app/shared/models/query/query.models.ts | 165 | export function createDefaultFilterPredicateUserInfo(): KeyFilterPredicateUserInfo { | CODE |
| LOW⚡ | ui-ngx/src/app/shared/models/query/query.models.ts | 175 | export function createDefaultFilterPredicate(valueType: EntityKeyValueType, complex: boolean): KeyFilterPredicate { | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 248 | export function getDynamicSourcesForAllowUser(allow: boolean): DynamicValueSourceType[] { | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 484 | function simpleKeyFilterPredicateToText(translate: TranslateService, | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 533 | export function keyFilterInfosToKeyFilters(keyFilterInfos: Array<KeyFilterInfo>): Array<KeyFilter> { | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 553 | export function keyFiltersToKeyFilterInfos(keyFilters: Array<KeyFilter>): Array<KeyFilterInfo> { | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 597 | export function keyFilterPredicateInfoToKeyFilterPredicate(keyFilterPredicateInfo: KeyFilterPredicateInfo): KeyFilterPre | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 611 | export function keyFilterPredicateToKeyFilterPredicateInfo(keyFilterPredicate: KeyFilterPredicate): KeyFilterPredicateIn | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 659 | export function filterToUserFilterInfoList(filter: Filter, translate: TranslateService): Array<UserFilterInputInfo> { | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 670 | export function keyFilterInfoToUserFilterInfoList(keyFilterInfo: KeyFilterInfo, translate: TranslateService): Array<User | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 676 | export function predicateInfoToUserFilterInfoList(key: EntityKey, | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 704 | export function generateUserFilterValueLabel(key: string, valueType: EntityKeyValueType, | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 799 | export function entityDataPageLinkSortDirection(pageLink: EntityDataPageLink): SortDirection { | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 807 | export function createDefaultEntityDataPageLink(pageSize: number): EntityDataPageLink { | CODE |
| LOW | ui-ngx/src/app/shared/models/query/query.models.ts | 943 | export function updateDatasourceFromEntityInfo(datasource: Datasource, entity: EntityInfo, createFilter = false) { | CODE |
| LOW | …src/app/shared/models/ace/service-completion.models.ts | 116 | export function observableReturnTypeVariable(variableType: string): FunctionArgType { | CODE |
| LOW⚡ | …src/app/shared/models/ace/service-completion.models.ts | 130 | export function observableArrayReturnType(objectType: string): FunctionArgType { | CODE |
| LOW⚡ | …src/app/shared/models/ace/service-completion.models.ts | 137 | export function observableBaseDataReturnType(): FunctionArgType { | CODE |
| LOW⚡ | …src/app/shared/models/ace/service-completion.models.ts | 144 | export function observableArrayBaseDataReturnType(): FunctionArgType { | CODE |
| LOW⚡ | …src/app/shared/models/ace/service-completion.models.ts | 151 | export function observablePageDataReturnType(objectType: string): FunctionArgType { | CODE |
| LOW | ui-ngx/src/app/shared/models/ace/tbel/worker-tbel.js | 3251 | function createPredicateIndexFinder(dir) { | CODE |
| LOW | ui-ngx/src/app/shared/models/ace/tbel/worker-tbel.js | 6456 | function comprehensiveArrayExpression(context) { | CODE |
| LOW | ui-ngx/src/app/shared/models/ace/tbel/worker-tbel.js | 7162 | function destructuringPatternRecursive(context, options) { | CODE |
| LOW | ui-ngx/src/app/shared/models/ace/tbel/worker-tbel.js | 7314 | function destructuringPatternMatch(tokens, value) { | CODE |
| LOW | ui-ngx/src/app/shared/models/ace/tbel/worker-tbel.js | 8912 | function destructuringAssignOrJsonValue(context) { | CODE |
| LOW | ui-ngx/src/app/shared/models/ace/tbel/worker-tbel.js | 9896 | function isNonAsciiIdentifierStart(code) { | CODE |
| LOW | ui-ngx/src/app/shared/models/ace/tbel/worker-tbel.js | 11954 | function usedSoFarInCurrentFunction(bindingName) { | CODE |
| LOW | …app/modules/home/models/searchable-component.models.ts | 7 | export function instanceOfSearchableComponent(object: any): object is ISearchableComponent { | CODE |
| LOW | …les/home/components/widget/lib/canvas-digital-gauge.ts | 607 | function determineTimeseriesLabelY(options: CanvasDigitalGaugeOptions, labelY: number, fontSizeFactor: number){ | CODE |
| LOW | …ules/home/components/widget/lib/table-widget.models.ts | 125 | export function entityDataSortOrderFromString(strSortOrder: string, columns: EntityColumn[]): EntityDataSortOrder { | CODE |
| LOW | …ules/home/components/widget/lib/table-widget.models.ts | 316 | export function getCellContentFunctionInfo(widgetContext: WidgetContext, keySettings: TableWidgetDataKeySettings, ...arg | CODE |
| LOW⚡ | …ules/home/components/widget/lib/table-widget.models.ts | 371 | export function getColumnDefaultVisibility(keySettings: TableWidgetDataKeySettings, ctx?: WidgetContext): boolean { | CODE |
| 114 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | build.sh | 21 | COMMENT | |
| LOW | build.sh | 41 | # docker run --rm --privileged multiarch/qemu-user-static --reset -p yes | COMMENT |
| LOW | ui-ngx/src/app/app.component.scss | 1 | // SPDX-FileCopyrightText: Copyright The ThingsBoard Authors | COMMENT |
| LOW | …x/src/app/modules/home/dialogs/home-dialogs.service.ts | 261 | // const tasks: Observable<Array<EntityGroup>>[] = []; | COMMENT |
| LOW | …me/pages/dashboard/dashboards-table-config.resolver.ts | 341 | // } | COMMENT |
| LOW | …modules/home/pages/iot-hub/iot-hub-home.component.scss | 61 | overflow: hidden; | COMMENT |
| LOW | …dules/setup/pages/setup/activate-platform.component.ts | 581 | if (!getCurrentAuthState(this.store).isUserLoaded) { | COMMENT |
| LOW | tools/src/main/python/one-way-ssl-mqtt-client.py | 41 | # Blocking call that processes network traffic, dispatches callbacks and | COMMENT |
| LOW | tools/src/main/python/two-way-ssl-mqtt-client.py | 41 | # handles reconnecting. | COMMENT |
| LOW | transport/snmp/src/main/resources/tb-snmp-transport.yml | 1 | # | COMMENT |
| LOW | transport/snmp/src/main/resources/tb-snmp-transport.yml | 21 | # Defines ZooKeeper connectivity, timeouts, and cluster node registration settings for service coordination. | COMMENT |
| LOW | transport/snmp/src/main/resources/tb-snmp-transport.yml | 141 | parallelism_level: "${SNMP_RESPONSE_PROCESSING_PARALLELISM_LEVEL:4}" | COMMENT |
| LOW | transport/snmp/src/main/resources/tb-snmp-transport.yml | 241 | # Using JAAS Configuration for specifying multiple SASL mechanisms on a broker | COMMENT |
| LOW | …nsport/lwm2m/src/main/resources/tb-lwm2m-transport.yml | 1 | # | COMMENT |
| LOW | …nsport/lwm2m/src/main/resources/tb-lwm2m-transport.yml | 21 | # Controls ZooKeeper-based service discovery and cluster coordination for microservice deployments. | COMMENT |
| LOW | …nsport/lwm2m/src/main/resources/tb-lwm2m-transport.yml | 121 | evictionRunsMs: "${REDIS_POOL_CONFIG_EVICTION_RUNS_MS:30000}" | COMMENT |
| LOW | …nsport/lwm2m/src/main/resources/tb-lwm2m-transport.yml | 161 | # Enable/disable lvm2m transport protocol. | COMMENT |
| LOW | …nsport/lwm2m/src/main/resources/tb-lwm2m-transport.yml | 361 | # Enable/Disable using of Confluent Cloud | COMMENT |
| LOW | …nsport/lwm2m/src/main/resources/tb-lwm2m-transport.yml | 381 | endpoint-url: "${TB_QUEUE_KAFKA_CONFLUENT_OAUTH_ENDPOINT_URL:}" | COMMENT |
| LOW | transport/http/src/main/resources/tb-http-transport.yml | 1 | # | COMMENT |
| LOW | transport/http/src/main/resources/tb-http-transport.yml | 161 | COMMENT | |
| LOW | transport/http/src/main/resources/tb-http-transport.yml | 281 | # Optional: OAuth2 scope/audience requested for the token. Required by some IdPs for client-credentials (e.g. Az | COMMENT |
| LOW | transport/mqtt/src/main/resources/tb-mqtt-transport.yml | 1 | # | COMMENT |
| LOW | transport/mqtt/src/main/resources/tb-mqtt-transport.yml | 21 | # Defines connection, session, retry settings and the node directory path for ZooKeeper-based cluster coordination. | COMMENT |
| LOW | transport/mqtt/src/main/resources/tb-mqtt-transport.yml | 181 | # Server certificate private key password (optional) | COMMENT |
| LOW | transport/mqtt/src/main/resources/tb-mqtt-transport.yml | 201 | # If there is no activity, the session will be closed, and all subscriptions will be deleted. | COMMENT |
| LOW | transport/mqtt/src/main/resources/tb-mqtt-transport.yml | 301 | sasl.mechanism: "${TB_QUEUE_KAFKA_CONFLUENT_SASL_MECHANISM:PLAIN}" | COMMENT |
| LOW | transport/coap/src/main/resources/tb-coap-transport.yml | 1 | # | COMMENT |
| LOW | transport/coap/src/main/resources/tb-coap-transport.yml | 21 | # ZooKeeper connection parameters. Used for service discovery. | COMMENT |
| LOW | transport/coap/src/main/resources/tb-coap-transport.yml | 141 | # Default PSM Activity Timer if not specified in device profile | COMMENT |
| LOW | transport/coap/src/main/resources/tb-coap-transport.yml | 181 | # Configures the CoAP and CoAP/DTLS server endpoints, including bind addresses, timeouts, and TLS credentials. | COMMENT |
| LOW | transport/coap/src/main/resources/tb-coap-transport.yml | 201 | # <li> A positive value defines generated CID size in bytes.</li> | COMMENT |
| LOW | transport/coap/src/main/resources/tb-coap-transport.yml | 221 | # enum { | COMMENT |
| LOW | transport/coap/src/main/resources/tb-coap-transport.yml | 321 | sasl.config: "${TB_QUEUE_KAFKA_CONFLUENT_SASL_JAAS_CONFIG:org.apache.kafka.common.security.plain.PlainLoginModule | COMMENT |
| LOW | …test/resources/docker-compose.postgres-test-extras.yml | 1 | # | COMMENT |
| LOW | …/chirpstack/configuration/chirpstack/region_eu868.toml | 41 | server="tcp://$MQTT_BROKER_HOST:1883" | COMMENT |
| LOW | …/chirpstack/configuration/chirpstack/region_eu868.toml | 61 | # Set the "clean session" flag in the connect message when this client | COMMENT |
| LOW | …/chirpstack/configuration/chirpstack/region_eu868.toml | 161 | COMMENT | |
| LOW | …/chirpstack/configuration/chirpstack/region_eu868.toml | 181 | # RX1 data-rate offset | COMMENT |
| LOW | …/chirpstack/configuration/chirpstack/region_eu868.toml | 201 | # try to schedule the downlink in RX2, failing that it will try RX1. | COMMENT |
| LOW | msa/vc-executor/src/main/resources/tb-vc-executor.yml | 1 | # | COMMENT |
| LOW | msa/vc-executor/src/main/resources/tb-vc-executor.yml | 21 | # Controls ZooKeeper-based service discovery and cluster coordination for microservice deployments. | COMMENT |
| LOW | msa/vc-executor/src/main/resources/tb-vc-executor.yml | 101 | # Using JAAS Configuration for specifying multiple SASL mechanisms on a broker | COMMENT |
| LOW | msa/vc-executor/src/main/resources/tb-vc-executor.yml | 121 | - key: max.poll.records | COMMENT |
| LOW | msa/web-report/config/default.yml | 21 | # Dashboard idle wait time (ms) | COMMENT |
| LOW | msa/web-report/config/custom-environment-variables.yml | 1 | # | COMMENT |
| LOW | msa/web-report/config/custom-environment-variables.yml | 21 | dashboardIdleWaitTime: "DASHBOARD_IDLE_WAIT_TIME" | COMMENT |
| LOW | …xecutor/src/main/resources/tb-integration-executor.yml | 1 | # | COMMENT |
| LOW | …xecutor/src/main/resources/tb-integration-executor.yml | 21 | spring.servlet.multipart.max-request-size: "${SPRING_SERVLET_MULTIPART_MAX_REQUEST_SIZE:50MB}" # Total request size for | COMMENT |
| LOW | …xecutor/src/main/resources/tb-integration-executor.yml | 161 | endpoint-url: "${TB_QUEUE_KAFKA_CONFLUENT_OAUTH_ENDPOINT_URL:}" | COMMENT |
| LOW | …xecutor/src/main/resources/tb-integration-executor.yml | 181 | other: # DEPRECATED. In this section you can specify custom parameters for Kafka consumer/producer and expose the en | COMMENT |
| LOW | …xecutor/src/main/resources/tb-integration-executor.yml | 561 | # CoAP bind address | COMMENT |
| LOW | …xecutor/src/main/resources/tb-integration-executor.yml | 581 | max_transmission_unit: "${COAP_DTLS_MAX_TRANSMISSION_UNIT:1024}" | COMMENT |
| LOW | …xecutor/src/main/resources/tb-integration-executor.yml | 701 | # This mechanism only applies to the handling of MQTT Publish, Subscribe, Unsubscribe and Pubrel messages. | COMMENT |
| LOW | …ration/mqtt/src/main/resources/tb-mqtt-integration.yml | 81 | # Maximum allowed JavaScript execution errors before JavaScript will be blacklisted | COMMENT |
| LOW | …ration/mqtt/src/main/resources/tb-mqtt-integration.yml | 101 | max_attempts: "${TB_MQTT_CLIENT_RETRANSMISSION_MAX_ATTEMPTS:3}" | COMMENT |
| LOW | …ration/coap/src/main/resources/tb-coap-integration.yml | 121 | # DTLS maximum fragment length (RFC 6066, Section 4). | COMMENT |
| LOW | dao/src/test/resources/cassandra-test.yaml | 1 | # Cassandra storage config YAML | COMMENT |
| LOW | dao/src/test/resources/cassandra-test.yaml | 21 | # a random token, which will lead to hot spots. | COMMENT |
| LOW | dao/src/test/resources/cassandra-test.yaml | 41 | max_hints_delivery_threads: 2 | COMMENT |
| 82 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …/src/app/shared/components/markdown-sanitize.helper.ts | 6 | 'default', 'defer', 'placeholder', 'loading', 'error', | CODE |
| LOW | …/src/app/shared/components/markdown-sanitize.helper.ts | 14 | 'else if', 'else', 'empty', 'error', 'placeholder', 'loading', | CODE |
| LOW | …mponents/resource/resource-autocomplete.component.html | 18 | [placeholder]="placeholder" | CODE |
| LOW | …ules/home/components/ai/ai-prompt-input.component.html | 17 | [placeholder]="placeholder" | CODE |
| LOW | …vice-install-dialog/device-install-dialog.component.ts | 55 | export type WizardStepType = 'connectivity' | 'placeholder' | 'instruction' | 'form' | 'progress'; | CODE |
| LOW | …vice-install-dialog/device-install-dialog.component.ts | 655 | type: 'placeholder', | CODE |
| LOW | …ce-install-dialog/device-install-dialog.component.html | 13 | @case ('placeholder') { | CODE |
| LOW | …porting/template/components/report-component.models.ts | 195 | value: '<p style="line-height: 1.5;">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero orc | CODE |
| LOW | …porting/template/components/report-component.models.ts | 195 | value: '<p style="line-height: 1.5;">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero orc | CODE |
| LOW | …porting/template/components/report-component.models.ts | 213 | '<p style="line-height: 1.5;" >Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero orci, f | CODE |
| LOW | …porting/template/components/report-component.models.ts | 213 | '<p style="line-height: 1.5;" >Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero orci, f | CODE |
| LOW | …porting/template/components/report-component.models.ts | 239 | '<p style="line-height: 1.5;">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero orci, | CODE |
| LOW | …porting/template/components/report-component.models.ts | 239 | '<p style="line-height: 1.5;">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero orci, | CODE |
| LOW | …porting/template/components/report-component.models.ts | 288 | '<p style="line-height: 1.5;">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero orci, | CODE |
| LOW | …porting/template/components/report-component.models.ts | 288 | '<p style="line-height: 1.5;">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec libero orci, | CODE |
| LOW | ui-ngx/src/assets/locale/locale.constant-it_IT.json | 42 | "placeholder": "Incolla la tua chiave di licenza", | CODE |
| LOW | ui-ngx/src/assets/locale/locale.constant-tr_TR.json | 42 | "placeholder": "Lisans anahtarınızı yapıştırın", | CODE |
| LOW | ui-ngx/src/assets/locale/locale.constant-ja_JP.json | 42 | "placeholder": "ライセンスキーを貼り付け", | CODE |
| LOW | ui-ngx/src/assets/locale/locale.constant-zh_CN.json | 42 | "placeholder": "粘贴您的许可证密钥", | CODE |
| LOW | ui-ngx/src/assets/locale/locale.constant-es_ES.json | 42 | "placeholder": "Pega tu clave de licencia", | CODE |
| LOW | ui-ngx/src/assets/locale/locale.constant-pt_BR.json | 42 | "placeholder": "Cole sua chave de licença", | CODE |
| LOW | ui-ngx/src/assets/locale/locale.constant-de_DE.json | 42 | "placeholder": "Lizenzschlüssel einfügen", | CODE |
| LOW | ui-ngx/src/assets/locale/locale.constant-fr_FR.json | 42 | "placeholder": "Collez votre clé de licence", | CODE |
| LOW | ui-ngx/src/assets/locale/locale.constant-zh_TW.json | 13427 | "placeholder": "貼上授權金鑰", | CODE |
| LOW | ui-ngx/src/assets/locale/locale.constant-da_DK.json | 42 | "placeholder": "Indsæt din licensnøgle", | CODE |
| LOW | ui-ngx/src/assets/locale/locale.constant-en_US.json | 42 | "placeholder": "Paste your license key", | CODE |
| LOW | ui-ngx/src/assets/locale/locale.constant-nl_NL.json | 42 | "placeholder": "Plak je licentiesleutel", | CODE |
| LOW | …gx/src/assets/help/en_US/notification/alarm_comment.md | 50 | to user 'John Doe'. The following template: | CODE |
| LOW | …src/assets/help/en_US/notification/alarm_assignment.md | 54 | to user 'John Doe'. The following template: | CODE |
| LOW | …ard/server/dao/service/AgentAppProfileServiceTest.java | 92 | env -> env.put("TB_GW_ACCESS_TOKEN", "placeholder")); | CODE |
| LOW⚡ | …ard/server/dao/service/AgentAppProfileServiceTest.java | 115 | env.put("TB_GW_CLIENT_ID", "placeholder"); | CODE |
| LOW⚡ | …ard/server/dao/service/AgentAppProfileServiceTest.java | 116 | env.put("TB_GW_USERNAME", "placeholder"); | CODE |
| LOW⚡ | …ard/server/dao/service/AgentAppProfileServiceTest.java | 117 | env.put("TB_GW_PASSWORD", "placeholder"); | CODE |
| LOW | …ard/server/dao/service/AgentAppProfileServiceTest.java | 130 | env -> env.put("TB_GW_CLIENT_ID", "placeholder")); | CODE |
| LOW | …ard/server/dao/service/AgentAppProfileServiceTest.java | 217 | env -> env.put("TB_GW_ACCESS_TOKEN", "placeholder")); | CODE |
| LOW | …ard/server/dao/service/AgentAppProfileServiceTest.java | 286 | env -> env.put("TB_GW_ACCESS_TOKEN", "placeholder"))); | CODE |
| LOW | …ard/server/dao/service/AgentAppProfileServiceTest.java | 441 | env.put("CLOUD_ROUTING_KEY", "placeholder"); | CODE |
| LOW | …ard/server/dao/service/AgentAppProfileServiceTest.java | 442 | env.put("CLOUD_ROUTING_SECRET", "placeholder"); | CODE |
| LOW | …d/server/dao/sql/settings/AdminSettingsRepository.java | 32 | @Param("placeholder") String placeholder); | CODE |
| LOW | …/server/dao/sql/integration/IntegrationRepository.java | 65 | @Param("placeholder") String placeholder); | CODE |
| LOW⚡ | …ingsboard/server/dao/sql/rule/RuleChainRepository.java | 86 | @Param("placeholder") String placeholder); | CODE |
| LOW | …g/thingsboard/server/dao/sql/ai/AiModelRepository.java | 82 | @Param("placeholder") String placeholder); | STRING |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 28 | DockerComposeConfig config = createEdgeConfig("placeholder", "placeholder", "placeholder"); | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 36 | .put("CLOUD_ROUTING_SECRET", "placeholder") | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 37 | .put("CLOUD_RPC_HOST", "placeholder"); | CODE |
| LOW | …t/config/DockerComposeConfigProfileValidationTest.java | 73 | .put("TB_GW_ACCESS_TOKEN", "placeholder"); | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 96 | .put("TB_GW_CLIENT_ID", "placeholder") | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 97 | .put("TB_GW_USERNAME", "placeholder") | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 98 | .put("TB_GW_PASSWORD", "placeholder"); | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 108 | .put("TB_GW_USERNAME", "placeholder") | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 109 | .put("TB_GW_PASSWORD", "placeholder"); | CODE |
| LOW | …t/config/DockerComposeConfigProfileValidationTest.java | 133 | .put("TB_GW_ACCESS_TOKEN", "placeholder"); | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 146 | .put("host", "placeholder") | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 148 | .put("accessToken", "placeholder"); | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 157 | .put("host", "placeholder") | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 158 | .put("username", "placeholder") | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 159 | .put("password", "placeholder"); | CODE |
| LOW⚡ | …t/config/DockerComposeConfigProfileValidationTest.java | 168 | .put("host", "placeholder") | CODE |
| LOW | …t/config/DockerComposeConfigProfileValidationTest.java | 180 | .put("host", "placeholder") | CODE |
| LOW | …t/config/DockerComposeConfigProfileValidationTest.java | 181 | .put("TB_GW_HOST", "placeholder") | CODE |
| 16 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | transport/snmp/src/main/resources/tb-snmp-transport.yml | 296 | # Maximum timeout in milliseconds to handle api request from transport microservice by server | COMMENT |
| MEDIUM | …nsport/lwm2m/src/main/resources/tb-lwm2m-transport.yml | 21 | # Controls ZooKeeper-based service discovery and cluster coordination for microservice deployments. | COMMENT |
| MEDIUM | …nsport/lwm2m/src/main/resources/tb-lwm2m-transport.yml | 417 | # Maximum timeout in milliseconds to handle api request from transport microservice by server | COMMENT |
| MEDIUM | transport/http/src/main/resources/tb-http-transport.yml | 53 | # Controls ZooKeeper-based service discovery and cluster coordination for microservice deployments. | COMMENT |
| MEDIUM | transport/http/src/main/resources/tb-http-transport.yml | 316 | # Maximum timeout in milliseconds to handle api request from transport microservice by server | COMMENT |
| MEDIUM | transport/mqtt/src/main/resources/tb-mqtt-transport.yml | 350 | # Maximum timeout in milliseconds to handle api request from transport microservice by server | COMMENT |
| MEDIUM | transport/coap/src/main/resources/tb-coap-transport.yml | 368 | # Maximum timeout in milliseconds to handle api request from transport microservice by server | COMMENT |
| MEDIUM | msa/vc-executor/src/main/resources/tb-vc-executor.yml | 21 | # Controls ZooKeeper-based service discovery and cluster coordination for microservice deployments. | COMMENT |
| MEDIUM | msa/vc-executor/src/main/resources/tb-vc-executor.yml | 249 | # Identifies this microservice instance by type and optional unique ID for cluster coordination. | COMMENT |
| MEDIUM | …xecutor/src/main/resources/tb-integration-executor.yml | 219 | # Maximum timeout in milliseconds to handle api request from transport microservice by server | COMMENT |
| MEDIUM | …xecutor/src/main/resources/tb-integration-executor.yml | 357 | # Maximum timeout in milliseconds to handle api request from integration executor microservice by server | COMMENT |
| MEDIUM⚡ | …xecutor/src/main/resources/tb-integration-executor.yml | 645 | # Identifies this microservice instance by type, unique ID, and the list of supported/excluded integration types. | COMMENT |
| MEDIUM⚡ | …xecutor/src/main/resources/tb-integration-executor.yml | 651 | # Allow to enable integration on service/microservice integration executor. Allowed values: OCEANCONNECT, SIGFOX, TH | COMMENT |
| MEDIUM⚡ | …xecutor/src/main/resources/tb-integration-executor.yml | 653 | # List of integrations to exclude from processing on service/microservice integration executor. Allowed values: OCEA | COMMENT |
| MEDIUM | report/src/main/resources/tb-report.yml | 194 | # Identifies this microservice instance by type and provides the base URL of the ThingsBoard Core service. | COMMENT |
| MEDIUM | application/src/main/resources/thingsboard.yml | 126 | # Controls ZooKeeper-based service discovery and cluster coordination for microservice deployments. | COMMENT |
| MEDIUM | application/src/main/resources/thingsboard.yml | 200 | # In microservice deployments, the web-ui (Express.js) has its own header configuration | COMMENT |
| MEDIUM | application/src/main/resources/thingsboard.yml | 2340 | # Maximum timeout in milliseconds to handle api request from transport microservice by server | COMMENT |
| MEDIUM | application/src/main/resources/thingsboard.yml | 2576 | # Maximum timeout in milliseconds to handle api request from integration executor microservice by server | COMMENT |
| MEDIUM | application/src/main/resources/thingsboard.yml | 2625 | # Report service mode: 'local' or 'remote' (with tb-report microservice) | COMMENT |
| MEDIUM | application/src/main/resources/thingsboard.yml | 2653 | # Allow to enable integration on service/microservice integration executor. Allowed values: OCEANCONNECT, SIGFOX, TH | COMMENT |
| MEDIUM | application/src/main/resources/thingsboard.yml | 2655 | # List of integrations to exclude from processing on service/microservice integration executor. Allowed values: OCEA | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …/src/app/shared/components/markdown-sanitize.helper.ts | 43 | // ─── Public API ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …/src/app/shared/components/markdown-sanitize.helper.ts | 76 | // ─── Phase helpers ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …/src/app/shared/components/markdown-sanitize.helper.ts | 112 | // ─── Control flow extraction ───────────────────────────────────────── | COMMENT |
| MEDIUM | …/src/app/shared/components/markdown-sanitize.helper.ts | 190 | // ─── Low-level helpers ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | …pages/agent/agent-profile-merged-profiles.component.ts | 167 | // ── profile-row rendering ────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …pages/agent/agent-profile-merged-profiles.component.ts | 253 | // ── per-row actions ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …pages/agent/agent-profile-merged-profiles.component.ts | 336 | // ── bulk-action sub-row rendering ────────────────────────────────────────── | COMMENT |
| MEDIUM | …pages/agent/agent-profile-merged-profiles.component.ts | 376 | // ── data loading ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | msa/js-executor/test/oAuthBearerProvider.test.ts | 60 | // ─── Helpers ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | msa/js-executor/test/oAuthBearerProvider.test.ts | 73 | // ─── Tests ──────────────────────────────────────────────────────────────────── | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …board/server/transport/lwm2m/client/SwLwM2MDevice.java | 114 | // Step 1: start downloading | COMMENT |
| LOW⚡ | …board/server/transport/lwm2m/client/SwLwM2MDevice.java | 124 | // Step 2: downloading in progress | COMMENT |
| LOW⚡ | …board/server/transport/lwm2m/client/SwLwM2MDevice.java | 132 | // Step 3: downloading finished | COMMENT |
| LOW⚡ | …board/server/transport/lwm2m/client/FwLwM2MDevice.java | 131 | // Step 1: state = 1 | COMMENT |
| LOW⚡ | …board/server/transport/lwm2m/client/FwLwM2MDevice.java | 140 | // Step 2: state = 2 | COMMENT |
| LOW | application/src/main/resources/thingsboard.yml | 1183 | # WARNING: The default configuration allows cross-origin requests from ANY domain with credentials. | COMMENT |
| LOW⚡ | …rd/server/service/trendz/DefaultTrendzSyncService.java | 272 | // Step 1: Check if Trendz is reachable (get raw JSON response) | COMMENT |
| LOW⚡ | …rd/server/service/trendz/DefaultTrendzSyncService.java | 282 | // Step 2: Try to parse JSON response into the TrendzInfo structure | COMMENT |
| LOW | …rd/server/service/trendz/DefaultTrendzSyncService.java | 294 | // Step 3: Validate version field is present and the Trendz version is supported | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …board/server/transport/lwm2m/client/SwLwM2MDevice.java | 114 | // Step 1: start downloading | COMMENT |
| LOW⚡ | …board/server/transport/lwm2m/client/SwLwM2MDevice.java | 124 | // Step 2: downloading in progress | COMMENT |
| LOW⚡ | …board/server/transport/lwm2m/client/SwLwM2MDevice.java | 132 | // Step 3: downloading finished | COMMENT |
| LOW⚡ | …board/server/transport/lwm2m/client/FwLwM2MDevice.java | 131 | // Step 1: state = 1 | COMMENT |
| LOW⚡ | …board/server/transport/lwm2m/client/FwLwM2MDevice.java | 140 | // Step 2: state = 2 | COMMENT |
| LOW⚡ | …rd/server/service/trendz/DefaultTrendzSyncService.java | 272 | // Step 1: Check if Trendz is reachable (get raw JSON response) | COMMENT |
| LOW⚡ | …rd/server/service/trendz/DefaultTrendzSyncService.java | 282 | // Step 2: Try to parse JSON response into the TrendzInfo structure | COMMENT |
| LOW | …rd/server/service/trendz/DefaultTrendzSyncService.java | 294 | // Step 3: Validate version field is present and the Trendz version is supported | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …/chirpstack/configuration/chirpstack/region_eu868.toml | 1 | # This file contains an example EU868 configuration. | COMMENT |
| MEDIUM⚡ | application/src/main/resources/thingsboard.yml | 2231 | # Define the maximum number of records that can be polled from tb_edge topics per request. | COMMENT |
| MEDIUM⚡ | application/src/main/resources/thingsboard.yml | 2238 | # Define the maximum number of records that can be polled from tb_edge.notifications.SERVICE_ID topics. | COMMENT |
| MEDIUM⚡ | application/src/main/resources/thingsboard.yml | 2244 | # Define the maximum number of records that can be polled from tb_edge_event.notifications.TENANT_ID.EDGE_ID t | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …sboard/server/controller/TbResourceControllerTest.java | 0 | {"xxx": {"config":{"actions":{"elementclick":[ {"customresources":[{"url":{"entitytype":"tb_resource","id": "tb-resource | STRING |
| HIGH | …gsboard/server/controller/DashboardControllerTest.java | 0 | {"xxx": {"config":{"actions":{"elementclick":[ {"customresources":[{"url":{"entitytype":"tb_resource","id": "tb-resource | STRING |
| HIGH | …er/service/resource/sql/BaseTbResourceServiceTest.java | 0 | {"xxx": {"config":{"actions":{"elementclick":[ {"customresources":[{"url":{"entitytype":"tb_resource","id": "tb-resource | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ui-ngx/src/assets/locale/locale.constant-en_US.json | 13957 | "content-before": "<p>To connect the device you need to get the device credentials. We recommend usi | CODE |
| LOW | dao/src/test/resources/cassandra-test.yaml | 440 | # Warning: before enabling this property make sure to ntp is installed | COMMENT |
| LOW | …ava/org/thingsboard/server/common/data/EntityType.java | 90 | // TODO DON'T FORGET TO ADD NEW ENTITY TYPES TO THE END OF THE LIST NOT TO BREAK ORDINALS | COMMENT |
| LOW | application/src/main/resources/thingsboard.yml | 1255 | # Before enabling this, make sure you have set up the following tables in the new DB: | COMMENT |
| LOW | application/src/main/resources/thingsboard.yml | 1711 | # SNMP bind port. Zero (random) by default. When using SNMP TRAPs - make sure to specify some static value, e.g. 162 | COMMENT |
| LOW | …ngsboard/server/install/ThingsboardInstallService.java | 117 | // TODO DON'T FORGET to update SUPPORTED_FAMILIES_FOR_UPGRADE and MIN_CE_VERSION_FOR_UPGRADE in Defa | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | msa/black-box-tests/README.md | 110 | -DblackBoxTests.ttnPassword=YOUR_API_KEY | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/src/main/python/check_yml_file.py | 23 | CODE | |
| LOW | …c/main/python/license-headers/check_license_headers.py | 256 | CODE | |
| LOW | …c/main/python/license-headers/check_license_headers.py | 908 | CODE | |
| LOW | …c/main/python/license-headers/check_license_headers.py | 602 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …erver/dao/sql/query/EntityKeyMappingCitusJoinTest.java | 26 | * {@link EntityKeyMapping#buildLatestJoins}. The Citus branches are the most intricate SQL in the Citus PR | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …gsboard/rule/engine/report/TbGenerateReportV2Node.java | 75 | //TODO: implement job completion callback | COMMENT |
| LOW | …/org/thingsboard/server/edqs/util/RepositoryUtils.java | 87 | case STATE_ENTITY_OWNER -> throw new RuntimeException("Not implemented!"); // TODO: implement | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/src/main/python/check_yml_file.py | 47 | # Check if it's a property line | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …c/main/python/license-headers/check_license_headers.py | 8 | CODE |