chore: enable no-console oxlint rule (#30521)

Enables oxlint's `no-console` rule as an error with Biome's existing
allow list (`error`, `info`, `warn`) and turns off the overlapping Biome
`noConsole` rule.

Removes the only violation, a `console.debug` in `WorkspaceTerminal`'s
fit fallback, leaving an empty `catch` with a comment.

<details>
<summary>Implementation plan and findings</summary>

- Move `no-console` from the migration backlog to the suspicious section
of `site/.oxlintrc.jsonc`, matching Biome's options so behavior is
unchanged.
- Set Biome `noConsole` to `off` (oxlint owns it), following #29950.
- The only violation was the Biome-suppressed `console.debug` in
`site/src/modules/terminal/WorkspaceTerminal.tsx`. Options considered:
migrate the suppression to oxlint, allow `debug` repo-wide, or drop the
log. Chose dropping the log since the failure is expected and transient.
- Validated with `pnpm run lint:oxlint`, `pnpm run lint:check`, and
`biome format` on changed files.

</details>

_Generated by Coder Agents on behalf of @jeremyruppel._
This commit is contained in:
Jeremy Ruppel
2026-10-08 19:52:08 +00:00
committed by GitHub
parent 0efb574355
commit ac33ffa9de
3 changed files with 4 additions and 10 deletions
+1 -6
View File
@@ -83,12 +83,7 @@
"useIterableCallbackReturn": "off",
"noUnknownAtRules": "off", // Allow Tailwind directives
"noEmptyInterface": "off", // oxlint owns no-empty-interface
"noConsole": {
"level": "error",
"options": {
"allow": ["error", "info", "warn"]
}
}
"noConsole": "off" // oxlint owns no-console
},
"complexity": {
"noImportantStyles": "off", // TODO: check and fix !important styles
+1 -1
View File
@@ -151,6 +151,7 @@
"no-const-enum": "error",
"no-control-regex": "error",
"no-debugger": "error",
"no-console": ["error", { "allow": ["error", "info", "warn"] }],
"no-document-cookie": "error",
"eqeqeq": ["error", "always", { "null": "ignore" }],
"no-duplicate-case": "error",
@@ -215,7 +216,6 @@
"no-noninteractive-tabindex": "off", // a11y/noNoninteractiveTabindex (small)
"interactive-supports-focus": "off", // a11y/useFocusableInteractive (small)
"iframe-has-title": "off", // a11y/useIframeTitle (small)
"no-console": "off", // suspicious/noConsole (small, coder error rule: Biome suppression to migrate)
"exhaustive-deps": "off", // correctness/useExhaustiveDependencies (large: reimplementation; Biome suppressions to migrate)
"no-restricted-imports": [
"error",
@@ -188,9 +188,8 @@ export const WorkspaceTerminal = ({
try {
fitAddon.fit();
fitAddon.fit();
} catch (error) {
// biome-ignore lint/suspicious/noConsole: Expected transient fit failure while xterm initializes.
console.debug("Terminal fit skipped: renderer not ready", error);
} catch {
// Expected transient fit failure while xterm initializes.
}
}, []);