Skip to content

fix(ops): correct Stripe search query syntax for churn metric

6ed7105
Select commit
Loading
Failed to load commit list.
Merged

feat(ops): Business tab scaffolding (PR A — backend + raw JSON) #2076

fix(ops): correct Stripe search query syntax for churn metric
6ed7105
Select commit
Loading
Failed to load commit list.
SonarQubeCloud / SonarCloud Code Analysis failed May 9, 2026 in 5m 55s

Quality Gate failed

Failed conditions
C Security Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Annotations

Check warning on line 97 in web/src/pages/OpsPage/charts/ErrorRateChart.tsx

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Move this component definition out of the parent component and pass data as props.

See more on https://sonarcloud.io/project/issues?id=2anki_server&issues=AZ4MVOwgqhWZoRilK6_E&open=AZ4MVOwgqhWZoRilK6_E&pullRequest=2075

Check warning on line 69 in src/services/observability/instrumentedAxios.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Change this code to not construct the URL's path from user-controlled data.

See more on https://sonarcloud.io/project/issues?id=2anki_server&issues=AZ4MVOsKqhWZoRilK6_C&open=AZ4MVOsKqhWZoRilK6_C&pullRequest=2075

Check warning on line 189 in src/services/ops/BusinessMetricsService.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

This assertion is unnecessary since it does not change the type of the expression.

See more on https://sonarcloud.io/project/issues?id=2anki_server&issues=AZ4NL_oJBOAiju0VhGl_&open=AZ4NL_oJBOAiju0VhGl_&pullRequest=2075

Check warning on line 103 in web/src/pages/OpsPage/charts/LatencyByRouteChart.tsx

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Move this component definition out of the parent component and pass data as props.

See more on https://sonarcloud.io/project/issues?id=2anki_server&issues=AZ4MVOw5qhWZoRilK6_H&open=AZ4MVOw5qhWZoRilK6_H&pullRequest=2075

Check warning on line 69 in src/services/observability/instrumentedAxios.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Change this code to not construct the URL from user-controlled data.

See more on https://sonarcloud.io/project/issues?id=2anki_server&issues=AZ4MVOsKqhWZoRilK6_B&open=AZ4MVOsKqhWZoRilK6_B&pullRequest=2075

Check warning on line 194 in src/services/ops/BusinessMetricsService.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Prefer using nullish coalescing operator (`??=`) instead of an assignment expression, as it is simpler to read.

See more on https://sonarcloud.io/project/issues?id=2anki_server&issues=AZ4NL_oJBOAiju0VhGmA&open=AZ4NL_oJBOAiju0VhGmA&pullRequest=2075

Check warning on line 134 in src/services/observability/instrumentedAxios.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Prefer using nullish coalescing operator (`??=`) instead of an assignment expression, as it is simpler to read.

See more on https://sonarcloud.io/project/issues?id=2anki_server&issues=AZ4MVOsKqhWZoRilK6_A&open=AZ4MVOsKqhWZoRilK6_A&pullRequest=2075

Check warning on line 188 in src/services/ops/BusinessMetricsService.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

This assertion is unnecessary since it does not change the type of the expression.

See more on https://sonarcloud.io/project/issues?id=2anki_server&issues=AZ4NL_oJBOAiju0VhGl-&open=AZ4NL_oJBOAiju0VhGl-&pullRequest=2075

Check warning on line 84 in web/src/pages/OpsPage/charts/InboundVolumeChart.tsx

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Move this component definition out of the parent component and pass data as props.

See more on https://sonarcloud.io/project/issues?id=2anki_server&issues=AZ4MVOwxqhWZoRilK6_G&open=AZ4MVOwxqhWZoRilK6_G&pullRequest=2075

Check warning on line 83 in web/src/pages/OpsPage/charts/OutboundByServiceChart.tsx

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Move this component definition out of the parent component and pass data as props.

See more on https://sonarcloud.io/project/issues?id=2anki_server&issues=AZ4MVOwoqhWZoRilK6_F&open=AZ4MVOwoqhWZoRilK6_F&pullRequest=2075

Check warning on line 80 in web/src/pages/OpsPage/opsHelpers.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

This assertion is unnecessary since it does not change the type of the expression.

See more on https://sonarcloud.io/project/issues?id=2anki_server&issues=AZ4MVOxBqhWZoRilK6_I&open=AZ4MVOxBqhWZoRilK6_I&pullRequest=2075

Check warning on line 26 in src/routes/middleware/RequireOpsAccess.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Prefer using an optional chain expression instead, as it's more concise and easier to read.

See more on https://sonarcloud.io/project/issues?id=2anki_server&issues=AZ4MVOwEqhWZoRilK6_D&open=AZ4MVOwEqhWZoRilK6_D&pullRequest=2075