thefrontside / thefrontside/effectionx
Lint the repository with Oxlint
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 12
- Forks
- 4
- Avg merge
- 3h 17m
- Merged PRs (30d)
- 1
Description
Parent Quest: #254
Story
As an effectionx contributor, I want pnpm lint to use Oxlint, so repository linting and future Effection policy rules share one static-analysis engine without changing my local or CI workflow.
Current gap
Biome currently performs repository linting. It cannot host the JavaScript policy rules intended for @effectionx/lint, so keeping it as the primary linter would require contributors and CI to operate two overlapping lint systems.
Contract
Oxlint becomes the repository’s sole linter while preserving the pnpm lint entrypoint.
- Oxlint is pinned to an exact version.
- The committed configuration explicitly declares enabled rules, severities, plugins, ignores, and overrides instead of relying on changing recommended defaults.
- Every behavior currently enforced by the Biome configuration is either represented by an equivalent Oxlint rule or recorded as an intentional migration difference.
- Existing accepted source remains clean unless a documented difference identifies a genuine issue that must be corrected.
- CI and editor integration use the committed configuration.
- Once #253 and this story are delivered, Biome has no remaining formatting or linting responsibility and is removed.
Acceptance
pnpm lintinvokes Oxlint and remains the command used by CI.- A deliberate violation of an enabled rule makes
pnpm lintfail, and correcting it makes the command pass. - Running
pnpm linttwice against an unchanged checkout produces the same diagnostics and exit status. - The migration records the disposition of the existing Biome lint rules and overrides.
- Repository lint, typecheck, build, format, and tests pass after the migration.
- No Effection-specific policy rules are introduced by this story.
Evidence
The implementation records the rule mapping and the output of:
pnpm lint
pnpm fmt:check
pnpm check
pnpm build
pnpm test
pnpm test:node
Dependencies
- Depends on #253 so formatter churn is settled before the lint engine changes.
- Blocks the
@effectionx/lintchild story in #254.
Out of scope
- Effection-specific lint rules
- Deno lint compatibility
- Executable policy documents
- README or CI policy orchestration beyond retaining the existing lint job
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the existing pnpm lint entrypoint and Biome configuration, then run the listed lint, format, typecheck, build, and test commands to establish the migration baseline. Configure pinned Oxlint behavior, document every Biome rule disposition, and verify that deliberate violations fail while the complete command set passes consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- ci-cd, tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100