-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
deps: use oxfmt 0.8 #5633
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
deps: use oxfmt 0.8 #5633
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR updates the oxfmt formatter from version 0.5.0 to 0.8.0 and applies the new formatting rules across the codebase, primarily reformatting multi-line object literals and function parameters for improved readability.
Key Changes:
- Updated oxfmt from 0.5.0 to 0.8.0 with corresponding configuration schema changes
- Updated related dependencies (@types/node, lint-staged)
- Applied automatic formatting changes throughout the codebase (multi-line object literals, function parameters, type definitions)
- Modified CI workflow to enforce format checking
- Added flaky test skips for Windows platform
Reviewed Changes
Copilot reviewed 76 out of 77 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| pnpm-workspace.yaml | Updated oxfmt to 0.8.0, @types/node to 24.9.1, lint-staged to 16.2.5, and added oxfmt to minimumReleaseAgeExclude |
| .oxfmtrc.json | Migrated configuration from old oxfmt 0.5 format to new 0.8 schema with simplified property names |
| package.json | Added "fmt" script for running oxfmt |
| .github/workflows/ci.yml | Removed the fallback error suppression for format check, making it a required passing step |
| plugins/view/vitest.config.ts | Added timeout configurations for flaky Windows tests |
| plugins/view/test/view.test.ts | Added Windows platform skip for flaky tests |
| packages/cluster/test/master/after-start.test.ts | Added Windows platform skip and reorganized afterEach placement |
| plugins/logrotator/test/logrotator.test.ts | Extended platform skip from Windows-only to Windows and macOS |
| plugins/schedule/test/customTypeWithoutStart.test.ts | Added Windows platform skip for flaky tests |
| packages/core/src/utils/index.ts | Reformatted ternary operator formatting |
| tegg/core/dal-runtime/src/BaseSqlMap.ts | Reformatted multi-line string template to single line |
| All other files | Applied automatic oxfmt 0.8 formatting for multi-line objects, function parameters, and type definitions |
Files not reviewed (1)
- pnpm-lock.yaml: Language not supported
|
Important Review skippedMore than 25% of the files skipped due to max files limit. The review is being skipped to prevent a low-quality review. 188 files out of 295 files are above the max files limit of 100. Please upgrade to Pro plan to get higher limits. You can disable this status message by setting the WalkthroughThis PR upgrades oxfmt from 0.5.0 to 0.8.0 and migrates the formatting configuration to a Prettier-compatible schema. It applies the new formatter across the codebase, reformatting object literals, type annotations, and function parameters. The CI workflow now fails hard on formatting mismatches instead of silently continuing. Timeouts and Windows platform skips are added to select tests. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes The diff is predominantly homogeneous formatting changes (object literals, type annotations, parameter lists moved to multi-line style with trailing commas) applied consistently across 60+ files. Despite the high file count, the repetitive nature of these changes requires straightforward verification. A few behavioral modifications (Windows/macOS test skips, timeout configuration, CI workflow failure behavior) are minor and localized, adding minimal review complexity. Possibly related PRs
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
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. Comment |
Deploying egg with
|
| Latest commit: |
d954486
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://99095ae9.egg-cci.pages.dev |
| Branch Preview URL: | https://use-oxfmt-0-8-v2.egg-cci.pages.dev |
Summary of ChangesHello @fengmk2, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request focuses on a major update to the project's code formatter, Highlights
Ignored Files
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
Deploying egg-v3 with
|
| Latest commit: |
d954486
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://9f6a52f9.egg-v3.pages.dev |
| Branch Preview URL: | https://use-oxfmt-0-8-v2.egg-v3.pages.dev |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request updates the project's dependencies to use oxfmt version 0.8 and includes formatting changes across multiple files to align with the new version's standards. The changes primarily involve adjusting whitespace and line breaks for improved readability. The review focuses on identifying potential issues related to code correctness and maintainability.
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## next #5633 +/- ##
=======================================
Coverage 87.51% 87.51%
=======================================
Files 565 565
Lines 11005 11007 +2
Branches 1242 1243 +1
=======================================
+ Hits 9631 9633 +2
Misses 1292 1292
Partials 82 82 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (2)
plugins/logrotator/test/rotate_by_day.test.ts (1)
1-160: Consider migrating assertions from vitestexpect()to Node.jsassert.Per coding guidelines, test files matching
plugins/**/test/**should use Node.jsassertfor assertions in Vitest tests. This file uses vitest'sexpect()throughout (lines 33, 37, 47, 56–60, 67, 76, 92, 99, 116–120, 132–136, 143, 150). While this formatting PR correctly applies oxfmt 0.8 formatting, consider raising a follow-up issue to standardize test assertions across the logrotator plugin to align with the coding guidelines.This can be addressed in a follow-up PR focused on test framework standardization rather than formatting. Would you like me to help identify all test files in the repository that need similar updates?
plugins/multipart/test/ts.test.ts (1)
55-59: Consider using Node.js assert in plugin tests (guideline).Replace Vitest expect here with assert.deepStrictEqual for consistency. Non-blocking.
Apply this diff to this block:- expect(data.body).toEqual({ - foo: 'bar', - luckyscript: 'egg', - work: 'with Node.js', - }); + assert.deepStrictEqual(data.body, { + foo: 'bar', + luckyscript: 'egg', + work: 'with Node.js', + });And add the import at the top of the file:
+import assert from 'node:assert';As per coding guidelines.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (76)
.github/workflows/ci.yml(1 hunks).oxfmtrc.json(1 hunks)package.json(1 hunks)packages/cluster/src/agent_worker.ts(1 hunks)packages/cluster/src/master.ts(2 hunks)packages/cluster/src/utils/mode/base/agent.ts(1 hunks)packages/cluster/src/utils/mode/base/app.ts(1 hunks)packages/cluster/src/utils/mode/impl/worker_threads/agent.ts(1 hunks)packages/cluster/test/fixtures/apps/messenger/agent.js(1 hunks)packages/cluster/test/fixtures/apps/messenger/app.js(1 hunks)packages/cluster/test/master/after-start.test.ts(2 hunks)packages/cookies/src/cookies.ts(1 hunks)packages/cookies/test/cookies.test.ts(5 hunks)packages/core/src/utils/index.ts(1 hunks)packages/errors/src/base.ts(1 hunks)packages/path-matching/test/index.test.ts(1 hunks)packages/router/src/EggRouter.ts(1 hunks)packages/router/src/Router.ts(1 hunks)packages/router/src/types.ts(1 hunks)packages/router/test/Router.test.ts(4 hunks)plugins/jsonp/test/fixtures/jsonp-test/app/router.js(1 hunks)plugins/logrotator/test/logrotator.test.ts(1 hunks)plugins/logrotator/test/rotate_by_day.test.ts(1 hunks)plugins/mock/src/lib/app.ts(1 hunks)plugins/multipart/src/app/extend/context.ts(1 hunks)plugins/multipart/test/enable-pathToRegexpModule.test.ts(2 hunks)plugins/multipart/test/file-mode.test.ts(1 hunks)plugins/multipart/test/stream-mode-with-filematch-glob.test.ts(2 hunks)plugins/multipart/test/stream-mode-with-filematch.test.ts(2 hunks)plugins/multipart/test/ts.test.ts(1 hunks)plugins/onerror/src/lib/error_view.ts(1 hunks)plugins/onerror/test/onerror.test.ts(1 hunks)plugins/schedule/src/lib/load_schedule.ts(1 hunks)plugins/schedule/test/customTypeWithoutStart.test.ts(1 hunks)plugins/schedule/test/detect-error.test.ts(1 hunks)plugins/schedule/test/executeError-task-generator.test.ts(1 hunks)plugins/schedule/test/immediate.test.ts(1 hunks)plugins/schedule/test/subscription.test.ts(2 hunks)plugins/security/src/config/config.default.ts(1 hunks)plugins/security/src/lib/extend/safe_curl.ts(1 hunks)plugins/security/test/fixtures/apps/helper-app/app/router.js(1 hunks)plugins/security/test/ssrf.test.ts(2 hunks)plugins/typebox-validate/test/fixtures/apps/typebox-validate-test/app/controller/home.ts(1 hunks)plugins/view-nunjucks/test/fixtures/example/app/router.js(1 hunks)plugins/view-nunjucks/test/fixtures/view-helper/app/router.js(1 hunks)plugins/view-nunjucks/test/view/cache.test.ts(2 hunks)plugins/view-nunjucks/test/view/security.test.ts(4 hunks)plugins/view/test/view.test.ts(1 hunks)plugins/view/vitest.config.ts(1 hunks)pnpm-workspace.yaml(4 hunks)site/.vitepress/config.mts(2 hunks)tegg/core/common-util/src/ModuleConfig.ts(1 hunks)tegg/core/common-util/test/ModuleConfig.test.ts(4 hunks)tegg/core/core-decorator/test/decorators.test.ts(3 hunks)tegg/core/core-decorator/test/fixtures/decators/ConstructorObject.ts(1 hunks)tegg/core/dal-runtime/src/BaseSqlMap.ts(1 hunks)tegg/core/eventbus-decorator/src/EventBus.ts(1 hunks)tegg/core/loader/src/LoaderUtil.ts(1 hunks)tegg/core/metadata/test/LoadUnit.test.ts(3 hunks)tegg/core/orm-decorator/src/builder/IndexMetaBuilder.ts(1 hunks)tegg/core/runtime/test/fixtures/modules/inject-constructor-context-to-singleton/object.ts(2 hunks)tegg/core/test-util/src/TestLoader.ts(1 hunks)tegg/core/types/src/dynamic-inject.ts(1 hunks)tegg/plugin/controller/src/lib/impl/http/HTTPMethodRegister.ts(1 hunks)tegg/plugin/dal/src/lib/DataSource.ts(1 hunks)tegg/plugin/tegg/test/EggCompatible.test.ts(1 hunks)tegg/plugin/tegg/test/ModuleConfig.test.ts(1 hunks)tegg/standalone/standalone/test/index.test.ts(1 hunks)tools/create-egg/test/cli.test.ts(2 hunks)tools/scripts/test/start-without-demon-1.test.ts(1 hunks)tools/scripts/test/start-without-demon-2.test.ts(1 hunks)tools/scripts/test/start-without-demon-4.test.ts(2 hunks)tools/scripts/test/start.test.ts(2 hunks)tools/scripts/test/stop.test.ts(2 hunks)tools/scripts/test/ts.test.ts(4 hunks)tools/scripts/test/utils.ts(1 hunks)
🧰 Additional context used
📓 Path-based instructions (17)
**/*.ts
📄 CodeRabbit inference engine (AGENTS.md)
**/*.ts: Prefer TypeScript and ESM: write sources and exports in .ts (ESM-first) rather than CommonJS
Use two-space indentation, trailing commas, and semicolons (Prettier/oxlint defaults)
Name files in lowercase with hyphens (e.g., loader-context.ts)
Name classes in PascalCase
Name functions and variables in camelCase
Re-export types thoughtfully to keep the public API stable
Files:
tools/create-egg/test/cli.test.tsplugins/multipart/test/stream-mode-with-filematch-glob.test.tspackages/cookies/test/cookies.test.tstegg/standalone/standalone/test/index.test.tsplugins/typebox-validate/test/fixtures/apps/typebox-validate-test/app/controller/home.tstools/scripts/test/stop.test.tsplugins/onerror/src/lib/error_view.tsplugins/view/vitest.config.tstools/scripts/test/ts.test.tsplugins/onerror/test/onerror.test.tstegg/core/test-util/src/TestLoader.tsplugins/logrotator/test/rotate_by_day.test.tspackages/core/src/utils/index.tsplugins/multipart/test/enable-pathToRegexpModule.test.tstegg/core/loader/src/LoaderUtil.tspackages/cluster/src/agent_worker.tstools/scripts/test/start-without-demon-1.test.tspackages/cookies/src/cookies.tsplugins/multipart/src/app/extend/context.tsplugins/view/test/view.test.tstools/scripts/test/start.test.tsplugins/mock/src/lib/app.tspackages/router/test/Router.test.tstegg/plugin/dal/src/lib/DataSource.tspackages/path-matching/test/index.test.tspackages/cluster/src/utils/mode/base/app.tstegg/core/core-decorator/test/decorators.test.tsplugins/multipart/test/ts.test.tsplugins/view-nunjucks/test/view/security.test.tstegg/core/eventbus-decorator/src/EventBus.tsplugins/multipart/test/stream-mode-with-filematch.test.tspackages/router/src/types.tspackages/cluster/test/master/after-start.test.tstools/scripts/test/start-without-demon-2.test.tstools/scripts/test/utils.tsplugins/view-nunjucks/test/view/cache.test.tsplugins/schedule/test/immediate.test.tstegg/core/orm-decorator/src/builder/IndexMetaBuilder.tstegg/core/runtime/test/fixtures/modules/inject-constructor-context-to-singleton/object.tstegg/core/common-util/test/ModuleConfig.test.tsplugins/schedule/test/subscription.test.tsplugins/security/test/ssrf.test.tstools/scripts/test/start-without-demon-4.test.tstegg/core/metadata/test/LoadUnit.test.tsplugins/schedule/src/lib/load_schedule.tspackages/router/src/Router.tsplugins/logrotator/test/logrotator.test.tstegg/core/common-util/src/ModuleConfig.tstegg/plugin/controller/src/lib/impl/http/HTTPMethodRegister.tstegg/core/core-decorator/test/fixtures/decators/ConstructorObject.tspackages/router/src/EggRouter.tstegg/core/dal-runtime/src/BaseSqlMap.tspackages/cluster/src/utils/mode/impl/worker_threads/agent.tsplugins/multipart/test/file-mode.test.tsplugins/schedule/test/detect-error.test.tsplugins/schedule/test/customTypeWithoutStart.test.tstegg/core/types/src/dynamic-inject.tstegg/plugin/tegg/test/EggCompatible.test.tspackages/errors/src/base.tspackages/cluster/src/master.tsplugins/security/src/config/config.default.tsplugins/schedule/test/executeError-task-generator.test.tstegg/plugin/tegg/test/ModuleConfig.test.tspackages/cluster/src/utils/mode/base/agent.tsplugins/security/src/lib/extend/safe_curl.ts
**/test/**/*.test.ts
📄 CodeRabbit inference engine (AGENTS.md)
**/test/**/*.test.ts: Place test suites following Vitest discovery: /test//*.test.ts
Mirror the repository test pattern when adding new suites
Files:
tools/create-egg/test/cli.test.tsplugins/multipart/test/stream-mode-with-filematch-glob.test.tspackages/cookies/test/cookies.test.tstegg/standalone/standalone/test/index.test.tstools/scripts/test/stop.test.tstools/scripts/test/ts.test.tsplugins/onerror/test/onerror.test.tsplugins/logrotator/test/rotate_by_day.test.tsplugins/multipart/test/enable-pathToRegexpModule.test.tstools/scripts/test/start-without-demon-1.test.tsplugins/view/test/view.test.tstools/scripts/test/start.test.tspackages/router/test/Router.test.tspackages/path-matching/test/index.test.tstegg/core/core-decorator/test/decorators.test.tsplugins/multipart/test/ts.test.tsplugins/view-nunjucks/test/view/security.test.tsplugins/multipart/test/stream-mode-with-filematch.test.tspackages/cluster/test/master/after-start.test.tstools/scripts/test/start-without-demon-2.test.tsplugins/view-nunjucks/test/view/cache.test.tsplugins/schedule/test/immediate.test.tstegg/core/common-util/test/ModuleConfig.test.tsplugins/schedule/test/subscription.test.tsplugins/security/test/ssrf.test.tstools/scripts/test/start-without-demon-4.test.tstegg/core/metadata/test/LoadUnit.test.tsplugins/logrotator/test/logrotator.test.tsplugins/multipart/test/file-mode.test.tsplugins/schedule/test/detect-error.test.tsplugins/schedule/test/customTypeWithoutStart.test.tstegg/plugin/tegg/test/EggCompatible.test.tsplugins/schedule/test/executeError-task-generator.test.tstegg/plugin/tegg/test/ModuleConfig.test.ts
{packages/**,plugins/**,tools/!(egg-bin)/**}/**/*.ts
📄 CodeRabbit inference engine (CLAUDE.md)
{packages/**,plugins/**,tools/!(egg-bin)/**}/**/*.ts: For isolatedDeclarations support, all exported functions/methods/getters must have explicit return type annotations
Avoid computed property names with symbols in class declarations (no get SYM)
Add explicit type annotations for class properties when needed (no inferred exported property types)
Exported symbols must use unique symbol type (e.g., export const X: unique symbol = Symbol('x'))
Files:
tools/create-egg/test/cli.test.tsplugins/multipart/test/stream-mode-with-filematch-glob.test.tspackages/cookies/test/cookies.test.tsplugins/typebox-validate/test/fixtures/apps/typebox-validate-test/app/controller/home.tstools/scripts/test/stop.test.tsplugins/onerror/src/lib/error_view.tsplugins/view/vitest.config.tstools/scripts/test/ts.test.tsplugins/onerror/test/onerror.test.tsplugins/logrotator/test/rotate_by_day.test.tspackages/core/src/utils/index.tsplugins/multipart/test/enable-pathToRegexpModule.test.tspackages/cluster/src/agent_worker.tstools/scripts/test/start-without-demon-1.test.tspackages/cookies/src/cookies.tsplugins/multipart/src/app/extend/context.tsplugins/view/test/view.test.tstools/scripts/test/start.test.tsplugins/mock/src/lib/app.tspackages/router/test/Router.test.tspackages/path-matching/test/index.test.tspackages/cluster/src/utils/mode/base/app.tsplugins/multipart/test/ts.test.tsplugins/view-nunjucks/test/view/security.test.tsplugins/multipart/test/stream-mode-with-filematch.test.tspackages/router/src/types.tspackages/cluster/test/master/after-start.test.tstools/scripts/test/start-without-demon-2.test.tstools/scripts/test/utils.tsplugins/view-nunjucks/test/view/cache.test.tsplugins/schedule/test/immediate.test.tsplugins/schedule/test/subscription.test.tsplugins/security/test/ssrf.test.tstools/scripts/test/start-without-demon-4.test.tsplugins/schedule/src/lib/load_schedule.tspackages/router/src/Router.tsplugins/logrotator/test/logrotator.test.tspackages/router/src/EggRouter.tspackages/cluster/src/utils/mode/impl/worker_threads/agent.tsplugins/multipart/test/file-mode.test.tsplugins/schedule/test/detect-error.test.tsplugins/schedule/test/customTypeWithoutStart.test.tspackages/errors/src/base.tspackages/cluster/src/master.tsplugins/security/src/config/config.default.tsplugins/schedule/test/executeError-task-generator.test.tspackages/cluster/src/utils/mode/base/agent.tsplugins/security/src/lib/extend/safe_curl.ts
{packages/!(cookies)/**/test/**/*.test.ts,plugins/**/test/**/*.test.ts}
📄 CodeRabbit inference engine (CLAUDE.md)
Vitest test files must follow the naming pattern test/**/*.test.ts
Files:
plugins/multipart/test/stream-mode-with-filematch-glob.test.tsplugins/onerror/test/onerror.test.tsplugins/logrotator/test/rotate_by_day.test.tsplugins/multipart/test/enable-pathToRegexpModule.test.tsplugins/view/test/view.test.tspackages/router/test/Router.test.tspackages/path-matching/test/index.test.tsplugins/multipart/test/ts.test.tsplugins/view-nunjucks/test/view/security.test.tsplugins/multipart/test/stream-mode-with-filematch.test.tspackages/cluster/test/master/after-start.test.tsplugins/view-nunjucks/test/view/cache.test.tsplugins/schedule/test/immediate.test.tsplugins/schedule/test/subscription.test.tsplugins/security/test/ssrf.test.tsplugins/logrotator/test/logrotator.test.tsplugins/multipart/test/file-mode.test.tsplugins/schedule/test/detect-error.test.tsplugins/schedule/test/customTypeWithoutStart.test.tsplugins/schedule/test/executeError-task-generator.test.ts
{packages/**/test/**,plugins/**/test/**}
📄 CodeRabbit inference engine (CLAUDE.md)
Use Node.js assert for assertions in Vitest tests
Files:
plugins/multipart/test/stream-mode-with-filematch-glob.test.tspackages/cookies/test/cookies.test.tsplugins/typebox-validate/test/fixtures/apps/typebox-validate-test/app/controller/home.tsplugins/onerror/test/onerror.test.tsplugins/logrotator/test/rotate_by_day.test.tsplugins/jsonp/test/fixtures/jsonp-test/app/router.jsplugins/multipart/test/enable-pathToRegexpModule.test.tsplugins/view/test/view.test.tspackages/router/test/Router.test.tspackages/path-matching/test/index.test.tsplugins/multipart/test/ts.test.tsplugins/view-nunjucks/test/view/security.test.tsplugins/view-nunjucks/test/fixtures/view-helper/app/router.jsplugins/multipart/test/stream-mode-with-filematch.test.tspackages/cluster/test/master/after-start.test.tsplugins/view-nunjucks/test/view/cache.test.tsplugins/schedule/test/immediate.test.tsplugins/schedule/test/subscription.test.tsplugins/security/test/ssrf.test.tsplugins/view-nunjucks/test/fixtures/example/app/router.jspackages/cluster/test/fixtures/apps/messenger/agent.jsplugins/logrotator/test/logrotator.test.tspackages/cluster/test/fixtures/apps/messenger/app.jsplugins/multipart/test/file-mode.test.tsplugins/schedule/test/detect-error.test.tsplugins/schedule/test/customTypeWithoutStart.test.tsplugins/schedule/test/executeError-task-generator.test.tsplugins/security/test/fixtures/apps/helper-app/app/router.js
packages/**/test/**/*.test.ts
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
packages/**/test/**/*.test.ts: Name test files as test/**/*.test.ts and run them with Vitest
Use import { describe, it } from 'vitest' in tests
Use Node.js built-in assert module for test assertions
Files:
packages/cookies/test/cookies.test.tspackages/router/test/Router.test.tspackages/path-matching/test/index.test.tspackages/cluster/test/master/after-start.test.ts
{packages/cookies/test/**/*.test.ts,tools/egg-bin/test/**/*.test.ts}
📄 CodeRabbit inference engine (CLAUDE.md)
Mocha test suites (cookies, egg-bin) must use test/**/*.test.ts
Files:
packages/cookies/test/cookies.test.ts
tegg/**/?(*.)@(test|spec).{ts,tsx,js,mjs}
📄 CodeRabbit inference engine (tegg/CLAUDE.md)
In tests, use BackgroundTaskHelper for async tasks instead of setTimeout/setImmediate
Files:
tegg/standalone/standalone/test/index.test.tstegg/core/core-decorator/test/decorators.test.tstegg/core/common-util/test/ModuleConfig.test.tstegg/core/metadata/test/LoadUnit.test.tstegg/plugin/tegg/test/EggCompatible.test.tstegg/plugin/tegg/test/ModuleConfig.test.ts
**/test/fixtures/**
📄 CodeRabbit inference engine (AGENTS.md)
Put reusable test data under test/fixtures/
Files:
plugins/typebox-validate/test/fixtures/apps/typebox-validate-test/app/controller/home.tsplugins/jsonp/test/fixtures/jsonp-test/app/router.jsplugins/view-nunjucks/test/fixtures/view-helper/app/router.jstegg/core/runtime/test/fixtures/modules/inject-constructor-context-to-singleton/object.tsplugins/view-nunjucks/test/fixtures/example/app/router.jspackages/cluster/test/fixtures/apps/messenger/agent.jspackages/cluster/test/fixtures/apps/messenger/app.jstegg/core/core-decorator/test/fixtures/decators/ConstructorObject.tsplugins/security/test/fixtures/apps/helper-app/app/router.js
{package.json,packages/**/package.json,plugins/**/package.json,tools/**/package.json}
📄 CodeRabbit inference engine (CLAUDE.md)
All packages must require Node.js >= 22.18.0 (set engines.node to ">=22.18.0")
Files:
package.json
{packages/!(cookies)/**/vitest.config.ts,plugins/**/vitest.config.ts}
📄 CodeRabbit inference engine (CLAUDE.md)
Vitest config must export a typed config (e.g., const config: UserWorkspaceConfig = defineProject(...); export default config)
Files:
plugins/view/vitest.config.ts
{packages/**/vitest.config.ts,plugins/**/vitest.config.ts}
📄 CodeRabbit inference engine (CLAUDE.md)
Packages using Vitest must include a vitest.config.ts and import test functions from vitest
Files:
plugins/view/vitest.config.ts
tegg/**/src/**/*.{ts,tsx,js,mjs}
📄 CodeRabbit inference engine (tegg/CLAUDE.md)
Use ESM syntax only (import/export); do not use require/module.exports or CommonJS-only files
Files:
tegg/core/test-util/src/TestLoader.tstegg/core/loader/src/LoaderUtil.tstegg/plugin/dal/src/lib/DataSource.tstegg/core/eventbus-decorator/src/EventBus.tstegg/core/orm-decorator/src/builder/IndexMetaBuilder.tstegg/core/common-util/src/ModuleConfig.tstegg/plugin/controller/src/lib/impl/http/HTTPMethodRegister.tstegg/core/dal-runtime/src/BaseSqlMap.tstegg/core/types/src/dynamic-inject.ts
tegg/**/src/**/*.{ts,tsx}
📄 CodeRabbit inference engine (tegg/CLAUDE.md)
tegg/**/src/**/*.{ts,tsx}: Use .js extensions in TypeScript import specifiers to target ESM output
Do not inject ctx/app directly; inject specific services instead
SingletonProto must not inject ContextProto
Files:
tegg/core/test-util/src/TestLoader.tstegg/core/loader/src/LoaderUtil.tstegg/plugin/dal/src/lib/DataSource.tstegg/core/eventbus-decorator/src/EventBus.tstegg/core/orm-decorator/src/builder/IndexMetaBuilder.tstegg/core/common-util/src/ModuleConfig.tstegg/plugin/controller/src/lib/impl/http/HTTPMethodRegister.tstegg/core/dal-runtime/src/BaseSqlMap.tstegg/core/types/src/dynamic-inject.ts
packages/**/src/**/*.{ts,tsx}
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Use TypeScript for all source files in packages (no JavaScript source files)
Files:
packages/core/src/utils/index.tspackages/cluster/src/agent_worker.tspackages/cookies/src/cookies.tspackages/cluster/src/utils/mode/base/app.tspackages/router/src/types.tspackages/router/src/Router.tspackages/router/src/EggRouter.tspackages/cluster/src/utils/mode/impl/worker_threads/agent.tspackages/errors/src/base.tspackages/cluster/src/master.tspackages/cluster/src/utils/mode/base/agent.ts
pnpm-workspace.yaml
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Define dependency versions via the catalog section in pnpm-workspace.yaml and reference them with "catalog:"
Files:
pnpm-workspace.yaml
tegg/plugin/*/test?(s)/**/?(*.)@(test|spec).{ts,tsx}
📄 CodeRabbit inference engine (tegg/CLAUDE.md)
Plugin packages should add tests using Vitest and @eggjs/mock
Files:
tegg/plugin/tegg/test/EggCompatible.test.tstegg/plugin/tegg/test/ModuleConfig.test.ts
🧠 Learnings (13)
📚 Learning: 2025-09-18T07:56:17.417Z
Learnt from: CR
PR: eggjs/egg#0
File: AGENTS.md:0-0
Timestamp: 2025-09-18T07:56:17.417Z
Learning: Run pnpm run test locally before submitting changes
Applied to files:
tools/create-egg/test/cli.test.ts
📚 Learning: 2025-10-18T11:59:58.226Z
Learnt from: CR
PR: eggjs/egg#0
File: CLAUDE.md:0-0
Timestamp: 2025-10-18T11:59:58.226Z
Learning: Applies to {packages/cookies/test/**/*.test.ts,tools/egg-bin/test/**/*.test.ts} : Mocha test suites (cookies, egg-bin) must use test/**/*.test.ts
Applied to files:
packages/cookies/test/cookies.test.ts
📚 Learning: 2025-10-18T11:59:58.226Z
Learnt from: CR
PR: eggjs/egg#0
File: CLAUDE.md:0-0
Timestamp: 2025-10-18T11:59:58.226Z
Learning: Applies to plugins/*/package.json : Plugins must include scripts: build (tsdown && rimraf dist *.tsbuildinfo && tsc -p tsconfig.build.json), typecheck (tsc --noEmit), lint (oxlint --type-aware), test (vitest run), prepublishOnly (pnpm run build)
Applied to files:
package.json.github/workflows/ci.yml
📚 Learning: 2025-10-19T15:39:04.502Z
Learnt from: CR
PR: eggjs/egg#0
File: tegg/CLAUDE.md:0-0
Timestamp: 2025-10-19T15:39:04.502Z
Learning: Applies to tegg/core/*/package.json : Core packages must define standard scripts: "typecheck": "tsc --noEmit", "clean": "rimraf dist *.tsbuildinfo", "build": "tsdown && npm run clean && tsc -p tsconfig.build.json"
Applied to files:
package.json
📚 Learning: 2025-10-18T11:59:58.226Z
Learnt from: CR
PR: eggjs/egg#0
File: CLAUDE.md:0-0
Timestamp: 2025-10-18T11:59:58.226Z
Learning: Applies to {packages/**/package.json,plugins/**/package.json,tools/**/package.json} : Include script "lint:fix" that runs oxlint with --fix (e.g., "pnpm run lint -- --fix")
Applied to files:
package.json
📚 Learning: 2025-10-18T11:59:58.226Z
Learnt from: CR
PR: eggjs/egg#0
File: CLAUDE.md:0-0
Timestamp: 2025-10-18T11:59:58.226Z
Learning: Applies to {packages/**/vitest.config.ts,plugins/**/vitest.config.ts} : Packages using Vitest must include a vitest.config.ts and import test functions from vitest
Applied to files:
plugins/view/vitest.config.ts
📚 Learning: 2025-10-18T11:59:58.226Z
Learnt from: CR
PR: eggjs/egg#0
File: CLAUDE.md:0-0
Timestamp: 2025-10-18T11:59:58.226Z
Learning: Applies to {packages/!(cookies)/**/vitest.config.ts,plugins/**/vitest.config.ts} : Vitest config must export a typed config (e.g., const config: UserWorkspaceConfig = defineProject(...); export default config)
Applied to files:
plugins/view/vitest.config.ts
📚 Learning: 2025-09-18T07:56:17.417Z
Learnt from: CR
PR: eggjs/egg#0
File: AGENTS.md:0-0
Timestamp: 2025-09-18T07:56:17.417Z
Learning: For features affecting HTTP or process orchestration, add regression tests that exercise both the CommonJS and TypeScript example apps
Applied to files:
tools/scripts/test/ts.test.ts
📚 Learning: 2025-09-18T07:56:17.417Z
Learnt from: CR
PR: eggjs/egg#0
File: AGENTS.md:0-0
Timestamp: 2025-09-18T07:56:17.417Z
Learning: Applies to **/*.ts : Use two-space indentation, trailing commas, and semicolons (Prettier/oxlint defaults)
Applied to files:
.oxfmtrc.json
📚 Learning: 2025-10-19T15:39:04.502Z
Learnt from: CR
PR: eggjs/egg#0
File: tegg/CLAUDE.md:0-0
Timestamp: 2025-10-19T15:39:04.502Z
Learning: Applies to tegg/**/src/**/*.{ts,tsx} : SingletonProto must not inject ContextProto
Applied to files:
tegg/core/runtime/test/fixtures/modules/inject-constructor-context-to-singleton/object.ts
📚 Learning: 2025-09-14T08:41:30.618Z
Learnt from: CR
PR: eggjs/egg#0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-09-14T08:41:30.618Z
Learning: Applies to packages/**/test/**/*.test.ts : Use Node.js built-in assert module for test assertions
Applied to files:
tegg/core/common-util/test/ModuleConfig.test.ts
📚 Learning: 2025-10-18T11:59:58.226Z
Learnt from: CR
PR: eggjs/egg#0
File: CLAUDE.md:0-0
Timestamp: 2025-10-18T11:59:58.226Z
Learning: Applies to {packages/**/package.json,plugins/**/package.json,tools/**/package.json} : Use catalog: versions for external dependencies defined in pnpm-workspace.yaml
Applied to files:
pnpm-workspace.yaml
📚 Learning: 2025-09-14T08:41:30.618Z
Learnt from: CR
PR: eggjs/egg#0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-09-14T08:41:30.618Z
Learning: Applies to pnpm-workspace.yaml : Define dependency versions via the catalog section in pnpm-workspace.yaml and reference them with "catalog:"
Applied to files:
pnpm-workspace.yaml
🧬 Code graph analysis (12)
tools/scripts/test/stop.test.ts (1)
tools/scripts/test/utils.ts (1)
Coffee(8-13)
plugins/logrotator/test/rotate_by_day.test.ts (1)
plugins/logrotator/test/utils.ts (1)
getFixtures(3-5)
tools/scripts/test/start-without-demon-1.test.ts (1)
tools/scripts/test/utils.ts (1)
Coffee(8-13)
packages/router/test/Router.test.ts (2)
packages/router/src/Router.ts (3)
url(495-505)url(521-527)Router(55-1180)packages/router/src/Layer.ts (1)
url(165-215)
tegg/plugin/dal/src/lib/DataSource.ts (1)
packages/egg/src/index.ts (1)
ObjectInfo(101-101)
tegg/core/core-decorator/test/decorators.test.ts (1)
packages/egg/src/index.ts (1)
ObjectInitType(99-99)
tools/scripts/test/start-without-demon-2.test.ts (1)
tools/scripts/test/utils.ts (1)
Coffee(8-13)
plugins/view-nunjucks/test/view/cache.test.ts (1)
plugins/view-nunjucks/test/fixtures/example/app/router.js (1)
fs(3-3)
tegg/core/runtime/test/fixtures/modules/inject-constructor-context-to-singleton/object.ts (1)
packages/egg/src/index.ts (1)
Inject(105-105)
plugins/schedule/src/lib/load_schedule.ts (2)
plugins/schedule/src/config/config.default.ts (1)
EggScheduleConfig(6-18)plugins/schedule/src/lib/types.ts (1)
EggScheduleTask(8-8)
tegg/core/common-util/src/ModuleConfig.ts (1)
packages/utils/src/import.ts (1)
importResolve(275-361)
plugins/security/src/lib/extend/safe_curl.ts (1)
plugins/security/src/config/config.default.ts (1)
SSRFCheckAddressFunction(50-50)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (8)
- GitHub Check: Test (macos-latest, 24, 5/5)
- GitHub Check: Test bin (ubuntu-latest, 22, 0/3)
- GitHub Check: Test bin (windows-latest, 22, 0/3)
- GitHub Check: Test bin (windows-latest, 22, 1/3)
- GitHub Check: typecheck
- GitHub Check: Analyze (javascript-typescript)
- GitHub Check: Analyze (actions)
- GitHub Check: Cloudflare Pages: egg-v3
🔇 Additional comments (87)
site/.vitepress/config.mts (1)
147-150: Formatting changes align with oxfmt 0.8 upgrade.The object literals for the Contributing navigation items (both English and Chinese) are now consistently formatted as multi-line structures per the new Prettier-compatible style. The data values remain unchanged, and the formatting is applied consistently across both locales.
Also applies to: 206-209
tegg/core/orm-decorator/src/builder/IndexMetaBuilder.ts (1)
33-35: Formatting update looks good.The multi-line object literal formatting aligns with oxfmt 0.8 and Prettier defaults, including the proper trailing comma on line 34. The semantic logic of the function call remains unchanged.
plugins/jsonp/test/fixtures/jsonp-test/app/router.js (1)
10-12: Formatting change approved.The multi-line reformatting of the
whiteListobject preserves the semantic content and aligns with the oxfmt 0.8 upgrade. The indentation is correct and consistent with the rest of the file.plugins/security/test/fixtures/apps/helper-app/app/router.js (1)
3-3: Valid formatter improvement: simplified unnecessary escaping.The new oxfmt formatter correctly simplified the string literal by removing the unnecessary escape sequence. The double quote doesn't require escaping inside a single-quoted string, and the semantic value remains identical. The test logic is unaffected.
tegg/plugin/controller/src/lib/impl/http/HTTPMethodRegister.ts (1)
73-75: Formatting change looks good.The Array.from initialization has been reformatted to multiline style, which aligns with the oxfmt 0.8 upgrade. The logic, types, and runtime behavior remain unchanged and correct.
tegg/plugin/dal/src/lib/DataSource.ts (1)
65-66: LGTM: Formatting aligns with oxfmt 0.8.0 upgrade.The decorator has been reformatted to its own line for improved readability. No functional changes.
tegg/core/eventbus-decorator/src/EventBus.ts (1)
44-47: LGTM! Formatter upgrade applied correctly.The return type annotations have been reformatted to multi-line object shapes by oxfmt 0.8. The type contracts remain identical, and the formatting aligns with Prettier defaults as specified in the coding guidelines.
Also applies to: 53-56
plugins/security/test/ssrf.test.ts (2)
93-95: Formatting looks good.The object literal is properly expanded to multi-line format with correct 2-space indentation and trailing comma.
133-135: Formatting looks good.The object literal is properly expanded to multi-line format with correct 2-space indentation and trailing comma. The generic type annotation on the
safeCurlcall is preserved correctly.plugins/typebox-validate/test/fixtures/apps/typebox-validate-test/app/controller/home.ts (1)
15-21: LGTM! Formatting change aligns with oxfmt 0.8.0.The multi-line formatting improves readability and is consistent with the PR objective to apply the new oxfmt formatter across the codebase.
plugins/logrotator/test/rotate_by_day.test.ts (1)
16-19: Formatting change aligns with oxfmt 0.8 defaults.The multi-line object literal formatting with trailing commas follows the Prettier/oxfmt 0.8 conventions specified in the coding guidelines. The semantic behavior of
fs.rmSyncremains unchanged.tegg/core/test-util/src/TestLoader.ts (1)
18-20: LGTM! Formatting change aligns with oxfmt 0.8 upgrade.The reformatting of the
globby.synccall to a multi-line format with proper indentation and trailing comma is consistent with Prettier/oxlint defaults and the PR objectives.tegg/core/loader/src/LoaderUtil.ts (1)
72-74: LGTM! Formatting change aligns with oxfmt 0.8 upgrade.The multi-line formatting of the Error options object follows the new formatter's style with proper two-space indentation and trailing comma. No functional change—the error message and cause remain identical.
plugins/view/vitest.config.ts (1)
6-7: Verify that the extended timeout values are necessary.The timeout values are set to 20 seconds, which is 4× the default Vitest timeout. While the configuration is correct, ensure these generous timeouts are truly needed for the view plugin tests and aren't masking performance issues.
plugins/view-nunjucks/test/fixtures/view-helper/app/router.js (1)
13-15: LGTM! Formatting change aligns with oxfmt 0.8 upgrade.The renderString arguments have been reformatted to a multi-line object literal with trailing comma. No behavioral changes.
packages/cluster/src/agent_worker.ts (1)
43-45: LGTM! Formatting change aligns with oxfmt 0.8 upgrade.The ConsoleLogger initialization has been reformatted to a multi-line object literal with trailing comma. No behavioral changes.
package.json (1)
37-37: LGTM! Convenient addition for manual formatting.The new
fmtscript provides a convenient way to run oxfmt formatting across the codebase, complementing the existingfmtcheckscript.tools/scripts/test/start.test.ts (1)
152-154: LGTM! Formatting change aligns with oxfmt 0.8 upgrade.The
coffee.forkcalls have been reformatted to use multi-line options objects with trailing commas. No behavioral changes.Also applies to: 171-173
tools/scripts/test/utils.ts (1)
8-13: LGTM! Formatting change aligns with oxfmt 0.8 upgrade.The
Coffeetype alias has been reformatted to a multi-line format with trailing commas. No type or behavioral changes.tools/scripts/test/start-without-demon-1.test.ts (1)
125-127: LGTM! Formatting change aligns with oxfmt 0.8 upgrade.The
coffee.forkcall has been reformatted to use a multi-line options object with trailing comma. No behavioral changes.packages/cluster/src/utils/mode/impl/worker_threads/agent.ts (1)
51-53: LGTM! Formatting change aligns with oxfmt 0.8 upgrade.The
Workerconstructor call has been reformatted to a multi-line format with trailing comma. No behavioral changes.packages/cluster/src/master.ts (1)
68-70: LGTM! Formatting changes align with oxfmt 0.8 upgrade.The
ConsoleLoggerinitialization andterminalLinkcall have been reformatted to multi-line object literals with trailing commas. No behavioral changes.Also applies to: 112-114
tools/scripts/test/ts.test.ts (1)
55-57: LGTM: Formatting changes align with oxfmt upgrade.The object literals in
request()calls have been consistently reformatted to multi-line style. No functional changes detected.Also applies to: 72-74, 89-91, 123-125
packages/cluster/test/fixtures/apps/messenger/app.js (1)
29-32: LGTM: Consistent formatting change.Object literal reformatted to multi-line style, consistent with the oxfmt upgrade. No functional changes.
.github/workflows/ci.yml (1)
52-52: LGTM: CI now enforces formatting checks.Removing the
|| exit 0fallback causes the job to fail when formatting issues are detected, aligning with the stricter formatting enforcement introduced by the oxfmt upgrade.tools/scripts/test/start-without-demon-4.test.ts (1)
99-102: LGTM: Formatting changes align with oxfmt upgrade.The object literals in
fs.rm()calls have been reformatted to multi-line style. No functional changes detected.Also applies to: 111-114
plugins/view/test/view.test.ts (1)
12-13: LGTM: Reasonable workaround for Windows flakiness.The test suite is now conditionally skipped on Windows due to hook timeout issues. The TODO comment provides context for the skip.
plugins/logrotator/test/logrotator.test.ts (1)
12-13: LGTM: Extended platform skip for flakiness.The skip condition now includes both Windows and macOS (darwin), addressing test flakiness on both platforms. The comment has been updated accordingly.
tools/create-egg/test/cli.test.ts (1)
150-153: LGTM: Formatting changes align with oxfmt upgrade.The object literals in
execaCommandSync()calls have been reformatted to multi-line style. No functional changes detected.Also applies to: 204-207
packages/cluster/src/utils/mode/base/app.ts (1)
96-108: LGTM: Formatting change aligns with oxfmt upgrade.Constructor parameter destructuring has been reformatted to multi-line style. No functional or type signature changes.
packages/router/src/EggRouter.ts (1)
269-271: LGTM! Formatting improvement.The options object is now formatted across multiple lines with a trailing comma, improving readability. This is a formatting-only change with no functional impact.
packages/cluster/test/fixtures/apps/messenger/agent.js (1)
32-35: LGTM! Formatting improvement.The payload object is now formatted across multiple lines with a trailing comma. This is a formatting-only change with no functional impact.
plugins/onerror/test/onerror.test.ts (1)
324-327: LGTM! Formatting improvement.The
fs.rmSyncoptions object is now formatted across multiple lines with a trailing comma. This is a formatting-only change with no functional impact.tools/scripts/test/start-without-demon-2.test.ts (1)
101-103: LGTM! Formatting improvement.The options object for
coffee.forkis now formatted across multiple lines with a trailing comma. This is a formatting-only change with no functional impact.packages/path-matching/test/index.test.ts (1)
29-32: LGTM! Formatting improvement.The options object for
match()is now formatted across multiple lines with a trailing comma. This is a formatting-only change with no functional impact.tegg/core/core-decorator/test/decorators.test.ts (3)
111-122: LGTM! Formatting improvement.The object literals in the test array are now formatted across multiple lines with trailing commas. This is a formatting-only change with no functional impact.
144-156: LGTM! Formatting improvement.The property test objects are now formatted across multiple lines with trailing commas. This is a formatting-only change with no functional impact.
183-186: LGTM! Formatting improvement.The constructor qualifier object is now formatted across multiple lines with a trailing comma. This is a formatting-only change with no functional impact.
tegg/core/metadata/test/LoadUnit.test.ts (1)
35-39: LGTM! Formatting improvement.The qualifier objects passed to
getEggPrototype()are now formatted across multiple lines with trailing commas. These are formatting-only changes with no functional impact.Also applies to: 41-45, 68-72, 74-78, 80-84, 110-114
plugins/view-nunjucks/test/view/security.test.ts (1)
233-235: LGTM! Formatting improvement.The query objects are now formatted across multiple lines with trailing commas. These are formatting-only changes with no functional impact on the security tests.
Also applies to: 245-247, 257-259, 269-271
packages/core/src/utils/index.ts (1)
17-17: LGTM! Formatting change is consistent with the oxfmt upgrade.The Istanbul ignore comment placement has been adjusted by the formatter with no impact on functionality.
plugins/view-nunjucks/test/fixtures/example/app/router.js (1)
46-48: LGTM! Multi-line object formatting applied consistently.The object literal has been reformatted to a multi-line structure with a trailing comma, consistent with the updated formatter configuration.
plugins/view-nunjucks/test/view/cache.test.ts (1)
27-29: LGTM! Consistent multi-line formatting for options objects.The
fs.readFileSyncoptions have been reformatted to multi-line blocks, aligning with the updated formatter rules.Also applies to: 126-128
plugins/mock/src/lib/app.ts (1)
78-80: LGTM! Constructor arguments reformatted consistently.The object literals passed to
AgentandApplicationClassconstructors have been reformatted to multi-line with trailing commas. The spread operator and all properties remain unchanged.Also applies to: 86-88
tegg/core/dal-runtime/src/BaseSqlMap.ts (1)
259-259: LGTM! SQL WHERE clause formatting simplified.The WHERE clause construction has been collapsed to a single-line expression while maintaining identical functionality.
pnpm-workspace.yaml (1)
53-53: LGTM! Dependency updates are appropriate for the oxfmt upgrade.The changes include:
- Core update: oxfmt ^0.5.0 → ^0.8.0
- Minor updates: @types/node and lint-staged
- Correctly adds
@oxfmt/*andoxfmttominimumReleaseAgeExcludeto allow immediate adoption of formatter updatesAll updates follow the catalog pattern as per coding guidelines.
Also applies to: 149-149, 174-174, 232-232, 238-238
plugins/schedule/src/lib/load_schedule.ts (1)
18-21: LGTM! Type annotation reformatted to multi-line structure.The inline type annotation has been expanded to a multi-line block format while preserving the exact same type structure.
plugins/security/src/lib/extend/safe_curl.ts (1)
10-12: LGTM! Type alias reformatted consistently.The
HttpClientOptionstype alias has been expanded to a multi-line format, consistent with the updated formatter configuration.tools/scripts/test/stop.test.ts (2)
200-202: Formatting-only change confirmed.Coffee.fork third-argument options are unchanged; switching to a multi-line object is noop.
352-354: Formatting-only change confirmed.Multi-line spread for options preserves cwd and semantics.
tegg/core/common-util/src/ModuleConfig.ts (1)
169-171: No-op reformat of importResolve options.Options object is unchanged; readability improved.
plugins/security/src/config/config.default.ts (1)
182-187: Reformat only; defaults preserved.supportedRequests keeps the same path and methods; style aligns with formatter.
plugins/multipart/src/app/extend/context.ts (1)
350-352: Formatting-only change; behavior intact.The limits spread and downstream normalization remain the same.
plugins/onerror/src/lib/error_view.ts (1)
162-167: Type annotation formatting only.Return type members unchanged; readability improved.
plugins/schedule/test/customTypeWithoutStart.test.ts (2)
8-9: LGTM: Windows test skip is appropriate.The conditional skip correctly addresses the documented timeout flakiness on Windows while preserving test coverage on other platforms.
12-15: LGTM: Formatting change aligns with oxfmt upgrade.The multi-line object literal with trailing comma follows Prettier conventions and matches the broader formatting changes in this PR.
packages/router/src/types.ts (1)
3-5: LGTM: Formatting-only change.The type alias reformatting is consistent with the oxfmt upgrade and maintains identical semantics.
.oxfmtrc.json (1)
2-8: LGTM: Configuration migration is well-structured.The Prettier-compatible schema with explicit settings aligns with the coding guidelines (two-space indentation, trailing commas, semicolons). The
$schemareference enables IDE validation. Based on learningspackages/cluster/src/utils/mode/base/agent.ts (1)
66-76: LGTM: Formatting change with no behavioral impact.The multi-line destructuring improves readability while maintaining identical type signatures and runtime behavior.
packages/errors/src/base.ts (1)
20-27: LGTM: Method signature formatting improves readability.The multi-line format makes the complex generic constraints and rest parameters easier to parse without changing runtime behavior or types.
tegg/core/core-decorator/test/fixtures/decators/ConstructorObject.ts (1)
47-53: LGTM: Decorator formatting is consistent with style upgrade.The multi-line decorator placement improves readability in this test fixture without affecting decorator application order or behavior.
tegg/core/runtime/test/fixtures/modules/inject-constructor-context-to-singleton/object.ts (2)
30-33: LGTM: Formatting-only change.The multi-line constructor parameter format is consistent with the oxfmt upgrade.
45-48: LGTM: Formatting-only change.The multi-line constructor parameter format maintains consistent styling across the test fixture.
tegg/plugin/tegg/test/EggCompatible.test.ts (1)
148-151: LGTM: Test assertion formatting improves readability.The multi-line object literal makes the expected structure more visible without changing assertion logic.
plugins/schedule/test/immediate.test.ts (1)
30-33: LGTM — formatting-only.Multi-line object with trailing comma; no behavioral change.
packages/cookies/src/cookies.ts (1)
111-114: LGTM — reflow only.Options object reformatted; logic unchanged.
plugins/schedule/test/executeError-task-generator.test.ts (1)
9-12: LGTM — formatting-only.Readability improved; behavior preserved.
plugins/multipart/test/stream-mode-with-filematch-glob.test.ts (1)
55-59: LGTM — assertion objects reformatted.Equivalent expectations; no semantic change.
Also applies to: 100-104
plugins/multipart/test/stream-mode-with-filematch.test.ts (1)
54-58: LGTM — formatting-only.Multi-line object literals with trailing commas; behavior unchanged.
Also applies to: 122-126
packages/router/src/Router.ts (1)
164-168: LGTM — reflow only.Options preserved; no runtime impact.
plugins/multipart/test/enable-pathToRegexpModule.test.ts (2)
53-57: Formatting-only change; OK.Object literal expansion preserves semantics.
98-102: Formatting-only change; OK.Consistent with repo-wide oxfmt 0.8 style.
plugins/schedule/test/subscription.test.ts (2)
30-33: Formatting-only change; OK.Multiline mm.cluster options; no behavior change.
49-52: Formatting-only change; OK.Matches oxfmt multi-line object style.
tegg/core/common-util/test/ModuleConfig.test.ts (4)
23-25: Formatting-only change; OK.Trailing commas and multi-line object; no behavior change.
36-41: Formatting-only change; OK.Consistent structure; assertions unchanged.
63-71: Formatting-only change; OK.Array/object layout only.
111-116: Formatting-only change; OK.Multi-line array with trailing comma; fine.
plugins/schedule/test/detect-error.test.ts (1)
11-15: Formatting-only change; OK.Multiline mm.cluster options; semantics intact.
plugins/multipart/test/file-mode.test.ts (1)
72-76: LGTM! Formatting improvement from oxfmt upgrade.The test assertion object has been reformatted to multi-line format with trailing commas, improving readability while preserving test behavior.
tegg/plugin/tegg/test/ModuleConfig.test.ts (1)
46-51: LGTM! Formatting improvement from oxfmt upgrade.The nested assertion object has been reformatted to multi-line format, making the structure more readable while maintaining the same test expectations.
packages/router/test/Router.test.ts (1)
941-944: LGTM! Formatting improvement from oxfmt upgrade.The router URL generation calls have been reformatted to use multi-line object literals for named parameters, improving readability. The test coverage remains intact, verifying both the object-based and positional parameter styles.
Also applies to: 949-952, 970-973, 996-999, 1411-1414, 1419-1422
packages/cookies/test/cookies.test.ts (1)
741-746: LGTM! Formatting improvement from oxfmt upgrade.Cookie configuration objects have been reformatted to multi-line format with trailing commas, improving readability of the test setup. All property values remain unchanged, preserving test behavior.
Also applies to: 946-951, 1135-1140, 1174-1179, 1215-1220
tegg/standalone/standalone/test/index.test.ts (1)
188-193: Formatting-only reflow; no semantic changes.Multiline object + trailing commas align with formatter rules. Looks good.
tegg/core/types/src/dynamic-inject.ts (1)
3-5: Type alias formatting LGTM.Only layout/semicolon changes; type remains identical.
packages/cluster/test/master/after-start.test.ts (2)
29-30: Good isolation improvement.Moving
afterEach(mm.restore)inside the describe block properly scopes the cleanup to this test suite, preventing mock leakage while keeping the app lifecycle (managed by beforeAll/afterAll) intact.
9-10: The Windows skip is not masking real bugs—it's addressing a known environmental issue.This skip pattern is widespread across the codebase (40+ tests), consistently applied to cluster, process, and timing-sensitive operations. Related test files (e.g.,
packages/cluster/test/options.test.ts,packages/cluster/test/agent_worker.test.ts) have identical TODOs citing "Hook timed out in 20000ms"—indicating Windows CI environment timing issues, not code defects. This is a pragmatic, established workaround, not a hidden bug.Likely an incorrect or invalid review comment.
Summary by CodeRabbit
Chores
Tests
Style
CI/CD