Skip to content

Use oxlint for lint guardrail - #181

Merged
malkoG merged 1 commit into
devfrom
agent/use-oxlint-guardrail
Jul 19, 2026
Merged

malkoG merged 1 commit into
devfrom
agent/use-oxlint-guardrail

Conversation

@malkoG

@malkoG malkoG commented Jul 19, 2026 •

Copy link
Copy Markdown
Member

Summary

  • Replace the broken ESLint 9 lint command with oxlint src --deny-warnings.
  • Swap the dev dependency from eslint to oxlint@0.16.5 so the linter runs on the current local Node 22.5.1 toolchain.
  • Clean up existing oxlint warnings so the new guardrail starts at zero warnings and will fail on future warnings.

Why

pnpm lint was documented as a guardrail, but it failed immediately because the repository did not have an ESLint flat config. Oxlint gives this codebase a fast TS/TSX lint guardrail with minimal configuration.

Notes

Latest oxlint currently requires Node ^20.19.0 || >=22.12.0; this workspace is on Node 22.5.1, so this PR pins oxlint@0.16.5. Once the repo upgrades its Node baseline, oxlint can be bumped.

Validation

  • pnpm lint
  • pnpm typecheck

Summary by CodeRabbit

  • Bug Fixes

    • Improved event details so location information displays correctly when country visibility is enabled.
    • Status badges now consistently reflect RSVP status.
    • Improved handling of request payloads across event, group, poll, discussion, and administration workflows.
    • Added accurate accessibility signaling for required date fields.
  • Chores

    • Updated linting to use Oxlint for more consistent code quality checks.

@coderabbitai

coderabbitai Bot commented Jul 19, 2026 •

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: f2deb65f-7f5c-4752-bac2-fe357ad77fd2

📥 Commits

Reviewing files that changed from the base of the PR and between 56d3767 and 512fcf7.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (19)
  • package.json
  • src/components/DateTimePicker.tsx
  • src/components/EventCalendar.tsx
  • src/routes/admin/banners.tsx
  • src/routes/admin/event-categories/index.tsx
  • src/routes/admin/place-categories/index.tsx
  • src/routes/calendar/index.tsx
  • src/routes/events/$eventId/dashboard/attendees.tsx
  • src/routes/events/$eventId/dashboard/discussions.tsx
  • src/routes/index.tsx
  • src/server/api/admin/banner-routes.ts
  • src/server/api/admin/catalog-routes.ts
  • src/server/api/admin/directory-routes.ts
  • src/server/api/discussion-routes.ts
  • src/server/api/event-notice-routes.ts
  • src/server/api/event-routes.ts
  • src/server/api/forwarding.ts
  • src/server/api/group-routes.ts
  • src/server/api/poll-routes.ts

📝 Walkthrough

Walkthrough

The pull request replaces ESLint with Oxlint, adjusts several frontend rendering and state details, refactors admin save request construction, and standardizes request-body handling across server forwarding routes.

Changes

Application and API updates

Layer / File(s) Summary
Lint and UI adjustments
package.json, src/components/*, src/routes/calendar/index.tsx, src/routes/events/..., src/routes/index.tsx
Oxlint replaces ESLint, while accessibility, event-location, calendar initialization, attendee status, state usage, and unused imports are updated.
Admin save request construction
src/routes/admin/banners.tsx, src/routes/admin/event-categories/index.tsx, src/routes/admin/place-categories/index.tsx
Admin save handlers build typed RequestInit objects before passing options to fetch.
JSON forwarding contract
src/server/api/forwarding.ts
forwardJson normalizes null parsed bodies to empty objects before invoking non-null mutate callbacks.
Route payload forwarding
src/server/api/*-routes.ts
Server route payload mappers directly spread or return request bodies across admin, discussion, event, notice, group, and poll endpoints.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch agent/use-oxlint-guardrail

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@malkoG
malkoG marked this pull request as ready for review July 19, 2026 08:40
@malkoG
malkoG merged commit d590344 into dev Jul 19, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant