mirror of
https://github.com/callstack/agent-device.git
synced 2026-09-14 20:06:34 +08:00
e229957602
Phase-5 §5.5 folder move (server side; the daemon/client/ split shipped in #962). Extracts the process-bootstrap / server-runtime cluster into src/daemon/server/ as a pure, behaviorless path codemod — no logic changes. Moved (server bootstrap/runtime — the layer that spins up the daemon and owns the platform graph; each imported only by the bootstrap layer + each other): src/daemon-runtime.ts -> src/daemon/server/daemon-runtime.ts src/daemon/http-server.ts -> src/daemon/server/http-server.ts src/daemon/transport.ts -> src/daemon/server/transport.ts src/daemon/server-lifecycle.ts -> src/daemon/server/server-lifecycle.ts src/daemon/server-shutdown.ts -> src/daemon/server/server-shutdown.ts Left in src/daemon/ root (request core / shared wire helpers, out of scope): request-router.ts, handlers/, session-store.ts, lease-registry.ts, context.ts (the daemon's request layer) and http-contract.ts / http-health.ts / http-errors.ts / config.ts (HTTP wire contract + daemon config shared across client, remote, and cli — not server-only). Left: src/daemon.ts (the thin process entry) stays at src/ with the other package entrypoints; it is coupled to its physical path by four non-import string references (rslib entry, config dev-mode sentinel, process-identity detection regex, daemon-client launch srcPath), so moving it is beyond a pure import codemod. Rewrote every from/import/import()/type-only specifier per importer (resolve-based path.relative recompute) across src and test, and renamed the fallow health-baseline key for http-server.ts. daemon-runtime's static platforms/ import is now inside the daemon-server seam the layering lint (#984 R3) allows. Verification: tsc --noEmit 0; layering check (branch script) unchanged (3 pre-existing R3 violations, 0 new); oxfmt clean; oxlint --deny-warnings 0; fallow audit --base origin/main clean (14 files); rslib build 0 (internal/daemon entry still emits); vitest 17 passed (daemon-entrypoint, http-server-rpc-validation, server-shutdown + 3 provider-integration).
742 lines
16 KiB
JSON
742 lines
16 KiB
JSON
{
|
|
"finding_counts": {
|
|
"scripts/integration-progress.mjs": {
|
|
"crap_critical": {
|
|
"count": 1
|
|
},
|
|
"crap_high": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 3
|
|
}
|
|
},
|
|
"src/__tests__/cli-config.test.ts": {
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/__tests__/client-metro-companion.test.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/__tests__/runtime-diagnostics-router.test.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/__tests__/runtime-public.test.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/cli.ts": {
|
|
"complexity_critical": {
|
|
"count": 1
|
|
},
|
|
"crap_critical": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/cli/auth-session.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/cli/commands/connection-runtime.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"crap_high": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/cli/commands/connection.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"crap_high": {
|
|
"count": 2
|
|
},
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/cli/commands/react-devtools.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/client/client-companion-tunnel-worker.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 3
|
|
}
|
|
},
|
|
"src/client/client-companion-tunnel.ts": {
|
|
"crap_high": {
|
|
"count": 2
|
|
},
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/metro/client-metro.ts": {
|
|
"crap_moderate": {
|
|
"count": 3
|
|
}
|
|
},
|
|
"src/client/client-shared.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/commands/admin.ts": {
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/commands/capture-diff-screenshot.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/commands/capture-snapshot.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/commands/diagnostics-format.ts": {
|
|
"complexity_critical": {
|
|
"count": 1
|
|
},
|
|
"crap_critical": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/commands/diagnostics.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/commands/interaction-resolution.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/kernel/contracts.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/core/batch.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/core/dispatch.ts": {
|
|
"complexity_critical": {
|
|
"count": 1
|
|
},
|
|
"crap_critical": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/remote/daemon-artifacts.ts": {
|
|
"crap_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/daemon/client/daemon-client-lifecycle.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/client/daemon-client-metadata.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/client/daemon-client-rpc.ts": {
|
|
"crap_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/daemon/client/daemon-client.ts": {
|
|
"complexity_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/daemon/__tests__/network-log.test.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/android-snapshot-freshness.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/app-log.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/device-ready.ts": {
|
|
"complexity_critical": {
|
|
"count": 1
|
|
},
|
|
"crap_critical": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/__tests__/interaction.test.ts": {
|
|
"crap_moderate": {
|
|
"count": 5
|
|
}
|
|
},
|
|
"src/daemon/handlers/__tests__/record-trace.test.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/__tests__/replay-heal.test.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/__tests__/session-close-shutdown.test.ts": {
|
|
"crap_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/daemon/handlers/__tests__/session-open-runtime.test.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/__tests__/session.test.ts": {
|
|
"crap_high": {
|
|
"count": 4
|
|
},
|
|
"crap_moderate": {
|
|
"count": 7
|
|
}
|
|
},
|
|
"src/daemon/handlers/find.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 3
|
|
}
|
|
},
|
|
"src/daemon/handlers/interaction-common.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/interaction-touch-reference-frame.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/interaction-touch.ts": {
|
|
"crap_moderate": {
|
|
"count": 3
|
|
}
|
|
},
|
|
"src/daemon/handlers/record-trace-recording.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/record-trace.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/session-inventory.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/session-observability.ts": {
|
|
"crap_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/daemon/handlers/session-open-surface.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/session-open.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/session-perf.ts": {
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/session-runtime.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/session-state.ts": {
|
|
"complexity_critical": {
|
|
"count": 2
|
|
},
|
|
"crap_critical": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/daemon/handlers/session-test-artifacts.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/handlers/snapshot-capture.ts": {
|
|
"crap_moderate": {
|
|
"count": 3
|
|
}
|
|
},
|
|
"src/daemon/handlers/snapshot-settings.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/server/http-server.ts": {
|
|
"complexity_critical": {
|
|
"count": 1
|
|
},
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"crap_critical": {
|
|
"count": 1
|
|
},
|
|
"crap_high": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/daemon/install-source-resolution.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/network-log.ts": {
|
|
"complexity_critical": {
|
|
"count": 1
|
|
},
|
|
"crap_critical": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/recording-gestures.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/runtime-hints.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/selector-runtime.ts": {
|
|
"crap_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/daemon/selectors-match.ts": {
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/utils/selectors-parse.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/daemon/selectors-resolve.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/daemon/session-selector.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/android/app-parsers.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/android/manifest.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/android/scroll-hints.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/android/ui-hierarchy.ts": {
|
|
"crap_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/platforms/boot-diagnostics.ts": {
|
|
"complexity_critical": {
|
|
"count": 1
|
|
},
|
|
"crap_critical": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/ios/__tests__/index.test.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/apple/core/apps.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/platforms/apple/core/devices.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/ios/interactions.ts": {
|
|
"complexity_critical": {
|
|
"count": 1
|
|
},
|
|
"crap_critical": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/apple/os/macos/helper.ts": {
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/apple/core/perf.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/apple/core/runner/runner-transport.ts": {
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/apple/core/runner/runner-xctestrun.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/apple/core/screenshot-status-bar.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/platforms/apple/core/screenshot.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/apple/core/simulator.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/linux/atspi-bridge.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/platforms/linux/input-actions.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/remote/remote-config-core.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/remote/remote-connection-state.ts": {
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/remote/upload-client.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/screenshot-diff/__tests__/screenshot-diff.test.ts": {
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/cli/parser/args.ts": {
|
|
"complexity_critical": {
|
|
"count": 2
|
|
},
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
},
|
|
"crap_critical": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/utils/cli-config.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/utils/cli-option-schema.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/kernel/device.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/utils/exec.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/snapshot/mobile-snapshot-semantics.ts": {
|
|
"crap_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/utils/output.ts": {
|
|
"crap_moderate": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"src/utils/retry.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/screenshot-diff/screenshot-diff-non-text.ts": {
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/screenshot-diff/screenshot-diff.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/utils/scroll-edge-state.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/utils/selector-build.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/utils/selector-is-predicates.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/snapshot/snapshot-diff.ts": {
|
|
"complexity_moderate": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/snapshot/snapshot-lines.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/utils/source-value.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/utils/text-surface.ts": {
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"src/utils/update-check.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"test/integration/provider-scenarios/android-lifecycle.test.ts": {
|
|
"complexity_critical": {
|
|
"count": 1
|
|
},
|
|
"crap_critical": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"test/integration/provider-scenarios/daemon-http-server.test.ts": {
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"test/integration/provider-scenarios/ios-record-trace.test.ts": {
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"test/integration/provider-scenarios/macos-world.ts": {
|
|
"complexity_high": {
|
|
"count": 1
|
|
},
|
|
"crap_high": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"test/integration/provider-scenarios/remote-daemon-client.test.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"test/integration/smoke-open-remote-config.test.ts": {
|
|
"crap_high": {
|
|
"count": 2
|
|
}
|
|
},
|
|
"test/integration/test-helpers.ts": {
|
|
"crap_moderate": {
|
|
"count": 1
|
|
}
|
|
},
|
|
"test/skillgym/suites/agent-device-smoke-suite.ts": {
|
|
"crap_critical": {
|
|
"count": 1
|
|
}
|
|
}
|
|
},
|
|
"runtime_coverage_findings": [],
|
|
"target_keys": [
|
|
"src/daemon/handlers/session.ts:complexity",
|
|
"src/daemon/handlers/session-replay-runtime.ts:high impact",
|
|
"src/snapshot/snapshot-processing.ts:high impact",
|
|
"src/daemon/handlers/session-device-utils.ts:high impact",
|
|
"src/commands/cli-grammar/common.ts:high impact",
|
|
"src/client/client-shared.ts:high impact",
|
|
"src/replay/script.ts:complexity",
|
|
"src/commands/selector-read-utils.ts:high impact",
|
|
"src/core/interaction-targeting.ts:high impact",
|
|
"src/daemon/android-snapshot-freshness.ts:high impact",
|
|
"src/compat/maestro/support.ts:high impact",
|
|
"src/daemon/handlers/session-replay-heal.ts:complexity",
|
|
"src/platforms/boot-diagnostics.ts:complexity",
|
|
"src/utils/output.ts:high impact",
|
|
"src/daemon/session-routing.ts:high impact",
|
|
"src/cli/commands/connection-runtime.ts:complexity",
|
|
"src/daemon/context.ts:high impact",
|
|
"src/utils/success-text.ts:high impact",
|
|
"src/platforms/apple/core/apps.ts:complexity",
|
|
"src/compat/maestro/runtime-targets.ts:high impact",
|
|
"src/utils/timeouts.ts:high impact",
|
|
"src/replay/script-utils.ts:high impact",
|
|
"src/daemon/handlers/session-open-target.ts:high impact",
|
|
"src/utils/selector-is-predicates.ts:high impact",
|
|
"src/cli/parser/args.ts:high impact",
|
|
"src/daemon/snapshot-presentation/tree.ts:high impact",
|
|
"src/utils/rect-center.ts:high impact",
|
|
"src/utils/process-identity.ts:high impact",
|
|
"src/daemon/app-log-process.ts:high impact",
|
|
"src/snapshot/snapshot-lines.ts:high impact",
|
|
"src/daemon/handlers/session-test-sharding.ts:high impact",
|
|
"src/platforms/android/ui-hierarchy.ts:high impact",
|
|
"src/platforms/linux/snapshot.ts:high impact",
|
|
"src/utils/parsing.ts:high impact",
|
|
"src/daemon/handlers/session-state.ts:complexity",
|
|
"src/daemon/request-cancel.ts:high impact",
|
|
"src/platforms/android/settings.ts:complexity",
|
|
"src/utils/text-surface.ts:high impact",
|
|
"src/utils/selector-build.ts:high impact",
|
|
"src/core/batch.ts:complexity",
|
|
"src/kernel/device.ts:high impact",
|
|
"src/daemon/network-log.ts:high impact",
|
|
"src/commands/cli-grammar/selectors.ts:untested risk",
|
|
"src/platforms/ios/xml.ts:high impact",
|
|
"src/utils/keyed-lock.ts:high impact",
|
|
"src/daemon/handlers/session-test-infrastructure.ts:high impact",
|
|
"src/daemon/app-log-stream.ts:high impact",
|
|
"src/utils/rect-visibility.ts:high impact",
|
|
"src/cli.ts:complexity",
|
|
"src/daemon/handlers/session-test-artifacts.ts:high impact",
|
|
"src/platforms/android/app-parsers.ts:high impact",
|
|
"src/utils/source-value.ts:high impact",
|
|
"src/platforms/android/sdk.ts:high impact",
|
|
"src/client/client-companion-tunnel-worker.ts:complexity"
|
|
]
|
|
}
|