-
Notifications
You must be signed in to change notification settings - Fork 440
🤖 AGENTS.md consolidation and updates #7194
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
Conversation
|
Warning Rate limit exceeded@DrJKL has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 15 minutes and 48 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe changes consolidate and reorganize project guidelines by eliminating redundancy. Changes
Sequence Diagram(s)✨ Finishing touches🧪 Generate unit tests (beta)
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 |
🎭 Playwright Test Results⏰ Completed at: 12/05/2025, 10:11:09 PM UTC 📈 Summary
📊 Test Reports by Browser
🎉 Click on the links above to view detailed test results for each browser configuration. |
🎨 Storybook Build Status✅ Build completed successfully! ⏰ Completed at: 12/05/2025, 10:01:39 PM UTC 🔗 Links🎉 Your Storybook is ready for review! |
Bundle Size ReportSummary
Category Glance Per-category breakdownApp Entry Points — 3.2 MB (baseline 3.2 MB) • ⚪ 0 BMain entry bundles and manifests
Graph Workspace — 975 kB (baseline 975 kB) • ⚪ 0 BGraph editor runtime, canvas, workflow orchestration
Views & Navigation — 6.54 kB (baseline 6.54 kB) • ⚪ 0 BTop-level views, pages, and routed surfaces
Panels & Settings — 298 kB (baseline 298 kB) • ⚪ 0 BConfiguration panels, inspectors, and settings screens
UI Components — 173 kB (baseline 173 kB) • ⚪ 0 BReusable component library chunks
Data & Services — 12.5 kB (baseline 12.5 kB) • ⚪ 0 BStores, services, APIs, and repositories
Utilities & Hooks — 2.94 kB (baseline 2.94 kB) • ⚪ 0 BHelpers, composables, and utility bundles
Vendor & Third-Party — 8.56 MB (baseline 8.56 MB) • ⚪ 0 BExternal libraries and shared vendor chunks
Other — 3.81 MB (baseline 3.81 MB) • ⚪ 0 BBundles that do not match a named category
|
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: 3
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (3)
.cursorrules(0 hunks)AGENTS.md(1 hunks)CLAUDE.md(2 hunks)
💤 Files with no reviewable changes (1)
- .cursorrules
🧰 Additional context used
🧠 Learnings (15)
📚 Learning: 2025-11-24T19:47:34.324Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: src/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:34.324Z
Learning: Applies to src/**/*.{vue,ts,tsx} : Follow Vue 3 composition API style guide
Applied to files:
AGENTS.mdCLAUDE.md
📚 Learning: 2025-11-24T19:47:02.860Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-11-24T19:47:02.860Z
Learning: Applies to src/**/*.vue : Follow Vue 3 style guide and naming conventions
Applied to files:
AGENTS.mdCLAUDE.md
📚 Learning: 2025-11-24T19:46:52.279Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: .cursorrules:0-0
Timestamp: 2025-11-24T19:46:52.279Z
Learning: Applies to **/*.vue : Follow Vue 3 style guide and naming conventions
Applied to files:
AGENTS.mdCLAUDE.md
📚 Learning: 2025-11-24T19:47:14.779Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:14.779Z
Learning: Applies to **/*.{vue,html} : Never use `dark:` or `dark-theme:` Tailwind variants - instead use semantic values from `style.css` theme, e.g. `bg-node-component-surface`
Applied to files:
AGENTS.mdCLAUDE.md
📚 Learning: 2025-11-24T19:47:14.779Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:14.779Z
Learning: Applies to **/*.vue : Never use `:class="[]"` to merge class names - always use `import { cn } from '@/utils/tailwindUtil'` for class merging in Vue templates
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:48:03.270Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: tests-ui/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:48:03.270Z
Learning: Check tests-ui/README.md for test guidelines
Applied to files:
AGENTS.mdCLAUDE.md
📚 Learning: 2025-12-05T06:11:09.374Z
Learnt from: DrJKL
Repo: Comfy-Org/ComfyUI_frontend PR: 7177
File: src/platform/assets/components/UploadModelFooter.vue:72-78
Timestamp: 2025-12-05T06:11:09.374Z
Learning: For the ComfyUI_frontend repository, avoid suggesting comments that would be redundant when the code is already self-explanatory through descriptive naming (e.g., filenames, prop names, aria-labels). The project prefers clean code without unnecessary documentation comments.
Applied to files:
AGENTS.mdCLAUDE.md
📚 Learning: 2025-11-24T19:46:52.279Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: .cursorrules:0-0
Timestamp: 2025-11-24T19:46:52.279Z
Learning: Applies to **/*.vue : Never use deprecated PrimeVue components (Dropdown, OverlayPanel, Calendar, InputSwitch, Sidebar, Chips, TabMenu, Steps, InlineMessage)
Applied to files:
AGENTS.mdCLAUDE.md
📚 Learning: 2025-11-24T19:47:02.860Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-11-24T19:47:02.860Z
Learning: Applies to src/**/*.vue : Use the Vue 3 Composition API instead of the Options API when writing Vue components (exception: when overriding or extending PrimeVue components for compatibility)
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:48:23.088Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-24T19:48:23.088Z
Learning: Applies to **/*.{ts,tsx,vue} : Enforce ESLint rules for Vue + TypeScript including: no floating promises, no unused imports, and i18n raw text restrictions in templates
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:46:52.279Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: .cursorrules:0-0
Timestamp: 2025-11-24T19:46:52.279Z
Learning: Applies to **/*.vue : Do not use deprecated PrimeVue components (Dropdown, OverlayPanel, Calendar, InputSwitch, Sidebar, Chips, TabMenu, Steps, InlineMessage). Use replacements: Select, Popover, DatePicker, ToggleSwitch, Drawer, AutoComplete, Tabs, Stepper, Message respectively
Applied to files:
AGENTS.mdCLAUDE.md
📚 Learning: 2025-11-24T19:47:14.779Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:14.779Z
Learning: Never mention Claude/AI in commits
Applied to files:
CLAUDE.md
📚 Learning: 2025-11-24T19:48:23.088Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-24T19:48:23.088Z
Learning: Applies to **/*.{ts,tsx,js,vue} : Organize imports by sorting and grouping by plugin, and run `pnpm format` before committing
Applied to files:
CLAUDE.md
📚 Learning: 2025-11-24T19:48:23.088Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-24T19:48:23.088Z
Learning: Applies to **/*.{ts,tsx,js,vue} : Use 2-space indentation, single quotes, no semicolons, and maintain 80-character line width as configured in `.prettierrc`
Applied to files:
CLAUDE.md
📚 Learning: 2025-11-24T19:47:14.779Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:14.779Z
Learning: Use Git commit prefix format: [feat], [bugfix], [docs]
Applied to files:
CLAUDE.md
⏰ 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). (4)
- GitHub Check: setup
- GitHub Check: lint-and-format
- GitHub Check: test
- GitHub Check: collect
🔇 Additional comments (12)
AGENTS.md (10)
1-32: Clear project structure documentation.The section effectively introduces the repository layout with appropriate versioning and framework details.
34-48: Nx architecture section is clear and purposeful.Good explanation of Nx's role with concrete features.
49-60: Command reference is well-organized and comprehensive.Covers all key development operations with clear descriptions.
61-86: Coding style guidelines are thorough and consistent with learnings.Properly emphasizes TypeScript, Composition API, and ESLint rules.
87-100: Testing guidelines are clear and pragmatic.Good balance between prescription and flexibility.
101-107: Pull request guidelines emphasize quality and maintainability.Clear expectations for PR authors.
108-110: Security section is minimal but covers the essential point.Appropriate baseline guidance.
151-151: Verify i18n locale file path is current.Line 151 references placing translation entries in
src/locales/en/main.json. Please confirm this is the current path for new translations in the project.
154-232: External resources, settings, and feature flags sections provide excellent reference material.Well-structured with practical TypeScript examples and clear API usage patterns. Links and documentation references are comprehensive.
234-242: Common pitfalls section is excellent and aligns with project learnings.Correctly emphasizes TypeScript strictness, Tailwind semantic values, and
cnutility usage. The concrete examples (especially lines 241-242) will help developers avoid frequent mistakes.CLAUDE.md (2)
5-25: Repository setup and workflow sections are clear and well-scoped.Appropriately Claude-specific while delegating detailed guidelines to AGENTS.md and subdirectory documentation. Prerequisites are specific and helpful.
26-30: Git conventions are clear, concise, and aligned with project learnings.Lowercase prefix format is properly specified with examples. Policy against mentioning Claude/AI is clear.
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: 1
♻️ Duplicate comments (1)
AGENTS.md (1)
140-152: Add explicit list of deprecated PrimeVue components and replacements.Line 152 directs developers to "Avoid new usage of PrimeVue components" but provides no guidance on which components are deprecated or what replacements to use. This is a continuation of the feedback from the previous review. Since
.cursorrulesis being deleted in this consolidation, this critical information must be present in AGENTS.md. Based on learnings, nine specific deprecated components have documented replacements.Add this list before line 152 to provide actionable guidance:
## Development Guidelines + ### Deprecated PrimeVue Components + + Do not use the following deprecated PrimeVue components. Use the listed replacements instead: + + | Deprecated | Replacement | + |---|---| + | Dropdown | Select | + | OverlayPanel | Popover | + | Calendar | DatePicker | + | InputSwitch | ToggleSwitch | + | Sidebar | Drawer | + | Chips | AutoComplete | + | TabMenu | Tabs | + | Steps | Stepper | + | InlineMessage | Message | + 1. Leverage VueUse functions for performance-enhancing stylesAnd update line 152 from:
- 11. Avoid new usage of PrimeVue components + 12. Never use the deprecated PrimeVue components listed above
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
📒 Files selected for processing (1)
AGENTS.md(1 hunks)
🧰 Additional context used
🧠 Learnings (26)
📚 Learning: 2025-11-24T19:47:34.324Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: src/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:34.324Z
Learning: Applies to src/**/*.{vue,ts,tsx} : Follow Vue 3 composition API style guide
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:02.860Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-11-24T19:47:02.860Z
Learning: Applies to src/**/*.vue : Follow Vue 3 style guide and naming conventions
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:46:52.279Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: .cursorrules:0-0
Timestamp: 2025-11-24T19:46:52.279Z
Learning: Applies to **/*.vue : Follow Vue 3 style guide and naming conventions
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:48:23.088Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-24T19:48:23.088Z
Learning: Applies to **/*.{ts,tsx,js,vue} : Organize imports by sorting and grouping by plugin, and run `pnpm format` before committing
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:14.779Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:14.779Z
Learning: Applies to **/*.{ts,tsx,js,jsx,vue} : Use camelCase for variable and setting names in TypeScript/Vue files
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:02.860Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: .github/copilot-instructions.md:0-0
Timestamp: 2025-11-24T19:47:02.860Z
Learning: Applies to src/**/*.vue : Use the Vue 3 Composition API instead of the Options API when writing Vue components (exception: when overriding or extending PrimeVue components for compatibility)
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:48:23.088Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-24T19:48:23.088Z
Learning: Applies to **/*.vue : Use TypeScript with Vue 3 Single File Components (`.vue` files)
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:34.324Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: src/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:34.324Z
Learning: Applies to src/**/*.{ts,tsx,vue} : Implement proper TypeScript types throughout the codebase
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:48:23.088Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-24T19:48:23.088Z
Learning: Applies to **/*.vue : Name Vue components in PascalCase (e.g., `MenuHamburger.vue`)
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:34.324Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: src/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:34.324Z
Learning: Applies to src/**/*.{ts,tsx,vue} : Avoid using ts-expect-error; use proper TypeScript types instead
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:46:52.279Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: .cursorrules:0-0
Timestamp: 2025-11-24T19:46:52.279Z
Learning: Applies to **/*.{vue,ts,tsx} : Use vue-i18n in Composition API for any string literals and place new translation entries in src/locales/en/main.json
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:46:52.279Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: .cursorrules:0-0
Timestamp: 2025-11-24T19:46:52.279Z
Learning: Applies to **/*.vue : Do not use deprecated PrimeVue components (Dropdown, OverlayPanel, Calendar, InputSwitch, Sidebar, Chips, TabMenu, Steps, InlineMessage). Use replacements: Select, Popover, DatePicker, ToggleSwitch, Drawer, AutoComplete, Tabs, Stepper, Message respectively
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:46:52.279Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: .cursorrules:0-0
Timestamp: 2025-11-24T19:46:52.279Z
Learning: Applies to **/*.vue : Never use deprecated PrimeVue components (Dropdown, OverlayPanel, Calendar, InputSwitch, Sidebar, Chips, TabMenu, Steps, InlineMessage)
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:45.616Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: src/components/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:45.616Z
Learning: Applies to src/components/**/*.vue : Replace PrimeVue Dropdown component with Select
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:45.616Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: src/components/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:45.616Z
Learning: Applies to src/components/**/*.vue : Replace PrimeVue OverlayPanel component with Popover
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:45.616Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: src/components/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:45.616Z
Learning: Applies to src/components/**/*.vue : Replace PrimeVue InlineMessage component with Message
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:45.616Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: src/components/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:45.616Z
Learning: Applies to src/components/**/*.vue : Replace PrimeVue InputSwitch component with ToggleSwitch
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:45.616Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: src/components/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:45.616Z
Learning: Applies to src/components/**/*.vue : Replace PrimeVue Sidebar component with Drawer
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:45.616Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: src/components/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:45.616Z
Learning: Applies to src/components/**/*.vue : Replace PrimeVue Calendar component with DatePicker
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:45.616Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: src/components/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:45.616Z
Learning: Applies to src/components/**/*.vue : Replace PrimeVue TabMenu component with Tabs without panels
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:45.616Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: src/components/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:45.616Z
Learning: Applies to src/components/**/*.vue : Replace PrimeVue Steps component with Stepper without panels
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:14.779Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:14.779Z
Learning: Applies to **/*.{vue,html} : Never use `dark:` or `dark-theme:` Tailwind variants - instead use semantic values from `style.css` theme, e.g. `bg-node-component-surface`
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:47:14.779Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-11-24T19:47:14.779Z
Learning: Applies to **/*.vue : Never use `:class="[]"` to merge class names - always use `import { cn } from '@/utils/tailwindUtil'` for class merging in Vue templates
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:48:03.270Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: tests-ui/CLAUDE.md:0-0
Timestamp: 2025-11-24T19:48:03.270Z
Learning: Check tests-ui/README.md for test guidelines
Applied to files:
AGENTS.md
📚 Learning: 2025-12-05T06:11:09.374Z
Learnt from: DrJKL
Repo: Comfy-Org/ComfyUI_frontend PR: 7177
File: src/platform/assets/components/UploadModelFooter.vue:72-78
Timestamp: 2025-12-05T06:11:09.374Z
Learning: For the ComfyUI_frontend repository, avoid suggesting comments that would be redundant when the code is already self-explanatory through descriptive naming (e.g., filenames, prop names, aria-labels). The project prefers clean code without unnecessary documentation comments.
Applied to files:
AGENTS.md
📚 Learning: 2025-11-24T19:48:23.088Z
Learnt from: CR
Repo: Comfy-Org/ComfyUI_frontend PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-24T19:48:23.088Z
Learning: Applies to **/*.{ts,tsx,vue} : Enforce ESLint rules for Vue + TypeScript including: no floating promises, no unused imports, and i18n raw text restrictions in templates
Applied to files:
AGENTS.md
⏰ 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). (4)
- GitHub Check: setup
- GitHub Check: test
- GitHub Check: lint-and-format
- GitHub Check: collect
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
snomiao
left a comment
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.
LGTM
christian-byrne
left a comment
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.
Thoughts?
|
|
||
| ## Monorepo Architecture | ||
|
|
||
| The project now uses **Nx** for build orchestration and task management: |
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.
| The project now uses **Nx** for build orchestration and task management: | |
| The project uses **Nx** for build orchestration and task management: |
|
|
||
| The project now uses **Nx** for build orchestration and task management: | ||
|
|
||
| - **Task Orchestration**: Commands like `dev`, `build`, `lint`, and `test:browser` run via Nx |
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.
Wonder if we should explain how to do browser tests locally like
- Stash, generate baseline for the test
- Stash pop, run the test
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.
We have some of that in the README in browser_tests
| - E2E: `browser_tests/**/*.spec.ts` | ||
| - Litegraph Specific: `src/lib/litegraph/test/` | ||
| - Coverage: text/json/html reporters enabled | ||
| - aim to cover critical logic and new features |
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.
Don't want to add something about change detector tess?
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.
YES. YES I DO.
| - PRs: Include clear description, linked issues (`- Fixes #123`), and screenshots/GIFs for UI changes. | ||
| - Quality gates: `pnpm lint`, `pnpm typecheck`, and relevant tests must pass. Keep PRs focused and small. | ||
|
|
||
| - Commits: Use `[skip ci]` for locale-only updates when appropriate |
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.
| - Commits: Use `[skip ci]` for locale-only updates when appropriate |
| - Quality gates: `pnpm lint`, `pnpm typecheck`, and relevant tests must pass. Keep PRs focused and small. | ||
|
|
||
| - Commits: Use `[skip ci]` for locale-only updates when appropriate | ||
| - PRs: Include clear description, linked issues (`- Fixes #123`), and screenshots/GIFs for UI changes |
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.
| - PRs: Include clear description, linked issues (`- Fixes #123`), and screenshots/GIFs for UI changes | |
| - PRs: Include clear description, linked issues (`- Fixes #123`). Keep it extremely concise and information-dense. Don't use emojis or add excessive headers/sections. Following the PR description template in the .github folder. |
|
|
||
| - Commits: Use `[skip ci]` for locale-only updates when appropriate | ||
| - PRs: Include clear description, linked issues (`- Fixes #123`), and screenshots/GIFs for UI changes | ||
| - Quality gates: `pnpm lint`, `pnpm typecheck`, and relevant tests must pass |
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.
| - Quality gates: `pnpm lint`, `pnpm typecheck`, and relevant tests must pass | |
| - Quality gates: `pnpm lint`, `pnpm typecheck`, `pnpm knip` and relevant tests must pass | |
| - Never use `--no-verify` to bypass failing tests. Identify the issue and present root cause analysis and possible solutions if you are unable to solve quickly yourself. |
| - Commits: Use `[skip ci]` for locale-only updates when appropriate | ||
| - PRs: Include clear description, linked issues (`- Fixes #123`), and screenshots/GIFs for UI changes | ||
| - Quality gates: `pnpm lint`, `pnpm typecheck`, and relevant tests must pass | ||
| - Keep PRs focused and small |
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.
| - Keep PRs focused and small | |
| - Keep PRs focused and small. If it looks like the current changes will have 300+ lines of non-test code, suggest ways it could be broken into multiple PRs |
| - NEVER use `--no-verify` flag when committing | ||
| - NEVER delete or disable tests to make them pass | ||
| - NEVER circumvent quality checks | ||
| - NEVER use `dark:` or `dark-theme:` tailwind variants. Instead use a semantic value from the `style.css` theme, e.g. `bg-node-component-surface` |
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.
| - NEVER use `dark:` or `dark-theme:` tailwind variants. Instead use a semantic value from the `style.css` theme, e.g. `bg-node-component-surface` | |
| - NEVER use the `dark:` tailwind variant. Instead use a semantic value from the `style.css` theme, e.g. `bg-node-component-surface` |
| ## Settings and Feature Flags Quick Reference | ||
|
|
||
| ### Settings Usage | ||
|
|
||
| ```typescript | ||
| const settingStore = useSettingStore() | ||
| const value = settingStore.get('Comfy.SomeSetting') // Get setting | ||
| await settingStore.set('Comfy.SomeSetting', newValue) // Update setting | ||
| ``` | ||
|
|
||
| ### Dynamic Defaults | ||
|
|
||
| ```typescript | ||
| { | ||
| id: 'Comfy.Example.Setting', | ||
| defaultValue: () => window.innerWidth < 1024 ? 'small' : 'large' // Runtime context | ||
| } | ||
| ``` | ||
|
|
||
| ### Version-Based Defaults | ||
|
|
||
| ```typescript | ||
| { | ||
| id: 'Comfy.Example.Feature', | ||
| defaultValue: 'legacy', | ||
| defaultsByInstallVersion: { '1.25.0': 'enhanced' } // Gradual rollout | ||
| } | ||
| ``` | ||
|
|
||
| ### Feature Flags | ||
|
|
||
| ```typescript | ||
| if (api.serverSupportsFeature('feature_name')) { // Check capability | ||
| // Use enhanced feature | ||
| } | ||
| const value = api.getServerFeature('config_name', defaultValue) // Get config | ||
| ``` | ||
|
|
||
| **Documentation:** | ||
|
|
||
| - Settings system: `docs/SETTINGS.md` | ||
| - Feature flags system: `docs/FEATURE_FLAGS.md` |
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.
| ## Settings and Feature Flags Quick Reference | |
| ### Settings Usage | |
| ```typescript | |
| const settingStore = useSettingStore() | |
| const value = settingStore.get('Comfy.SomeSetting') // Get setting | |
| await settingStore.set('Comfy.SomeSetting', newValue) // Update setting | |
| ``` | |
| ### Dynamic Defaults | |
| ```typescript | |
| { | |
| id: 'Comfy.Example.Setting', | |
| defaultValue: () => window.innerWidth < 1024 ? 'small' : 'large' // Runtime context | |
| } | |
| ``` | |
| ### Version-Based Defaults | |
| ```typescript | |
| { | |
| id: 'Comfy.Example.Feature', | |
| defaultValue: 'legacy', | |
| defaultsByInstallVersion: { '1.25.0': 'enhanced' } // Gradual rollout | |
| } | |
| ``` | |
| ### Feature Flags | |
| ```typescript | |
| if (api.serverSupportsFeature('feature_name')) { // Check capability | |
| // Use enhanced feature | |
| } | |
| const value = api.getServerFeature('config_name', defaultValue) // Get config | |
| ``` | |
| **Documentation:** | |
| - Settings system: `docs/SETTINGS.md` | |
| - Feature flags system: `docs/FEATURE_FLAGS.md` |
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.
Agents can find this easily
| 8. Follow Vue 3 style guide and naming conventions | ||
| 9. Use Vite for fast development and building | ||
| 10. Use vue-i18n in composition API for any string literals. Place new translation entries in src/locales/en/main.json | ||
| 11. Avoid new usage of PrimeVue components |
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.
| 11. Avoid new usage of PrimeVue components | |
| 11. Avoid new usage of PrimeVue components | |
| 12. Write tests for all changes, especially bug fixes to catch future regressions | |
| 13. Write code that is expressive and self-documenting to the furthest degree possible. This reduces the need for code comments which can get out of sync with the code itself. Try to avoid comments unless absolutely necessary | |
| 14. Whenever a new piece of code is written, the author should ask themselves 'is there a simpler way to introduce the same functionality?'. If the answer is yes, the simpler course should be chosen. | |
| 15. Refactoring should be used to make complex code simpler. |
|
I'll do all of these as a follow-up after the meeting. |
## Summary Addresses Christian's fantastic comments. ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-7198-Address-comments-from-7194-2c16d73d365081aaa7a1ea06c2d86ec0) by [Unito](https://www.unito.io)
Summary
Unify some of the different documentation intended for LLM consumption.
┆Issue is synchronized with this Notion page by Unito