Skip to content

Conversation

rdonigian
Copy link
Contributor

No description provided.

@rdonigian rdonigian requested a review from CarsonF as a code owner May 14, 2025 15:37
Copy link
Contributor

coderabbitai bot commented May 14, 2025

📝 Walkthrough

Walkthrough

Two new documentation files have been added, each providing comprehensive front-end development guidelines for the CORD Field project. These documents detail project structure, coding standards, React and CSS guidelines, form development practices, common errors, and a system for tagged code comments to support maintainable and safe development.

Changes

Files Change Summary
.github/copilot-instructions.md,
.junie/guidelines.md
Added detailed front-end development guideline documents for the CORD Field project, covering project structure, coding standards, React and CSS best practices, form usage, error avoidance, and a tagged comment system. No code or exported entity changes were made.

Note

⚡️ AI Code Reviews for VS Code, Cursor, Windsurf

CodeRabbit now has a plugin for VS Code, Cursor and Windsurf. This brings AI code reviews directly in the code editor. Each commit is reviewed immediately, finding bugs before the PR is raised. Seamless context handoff to your AI code agent ensures that you can easily incorporate review feedback.
Learn more here.


Note

⚡️ Faster reviews with caching

CodeRabbit now supports caching for code and dependencies, helping speed up reviews. This means quicker feedback, reduced wait times, and a smoother review experience overall. Cached data is encrypted and stored securely. This feature will be automatically enabled for all accounts on May 16th. To opt out, configure Review - Disable Cache at either the organization or repository level. If you prefer to disable all data retention across your organization, simply turn off the Data Retention setting under your Organization Settings.
Enjoy the performance boost—your workflow just got faster.


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
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link
Contributor

@coderabbitai coderabbitai bot left a 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

🔭 Outside diff range comments (1)
.github/copilot-instructions.md (1)

1-341: 🛠️ Refactor suggestion

Consolidate duplicate documentation.
This content closely mirrors .junie/guidelines.md. Maintaining two identical files can lead to drift. Consider merging into a single source of truth (with cross-links) to improve maintainability.

🧰 Tools
🪛 LanguageTool

[style] ~7-~7: This phrase is redundant. Consider writing “details”.
Context: ...g., field data management; replace with specific details if available]. It connects to the CORD ...

(SPECIFIC_DETAILS)


[uncategorized] ~13-~13: The official spelling of this programming framework is “Node.js”.
Context: ...ion Instructions ### Prerequisites 1. NodeJS (current version or LTS recommended, >=...

(NODE_JS)


[uncategorized] ~14-~14: The official spelling of this programming framework is “Node.js”.
Context: ...bject missing blob property), upgrade NodeJS. 2. Corepack enabled (corepack enable...

(NODE_JS)


[uncategorized] ~130-~130: Loose punctuation mark.
Context: ...aphql. ### Project Structure - src/: Source code - src/api/`: GraphQL que...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~132-~132: Loose punctuation mark.
Context: ...and API-related files. - src/common/: Utility TypeScript files (types, interf...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~133-~133: Loose punctuation mark.
Context: ...lidation schemas). - src/components/: Reusable React components (mostly TSX, ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~134-~134: Loose punctuation mark.
Context: ...Final Form components). - src/hooks/: Custom React hooks (TypeScript). - `s...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~135-~135: Loose punctuation mark.
Context: ...ct hooks (TypeScript). - src/scenes/: Application-specific, non-reusable comp...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~136-~136: Loose punctuation mark.
Context: ...les), with subfolders. - src/server/: Razzle server configuration files. - ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~137-~137: Loose punctuation mark.
Context: ...er configuration files. - src/theme/: MUI theme configuration files. ### Cod...

(UNLIKELY_OPENING_PUNCTUATION)


[style] ~143-~143: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...React components, classes, and enums. - Use kebab-case for new folders and files. -...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[style] ~144-~144: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...kebab-case for new folders and files. - Use single quotes for strings, 2 spaces for...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[formatting] ~156-~156: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards for safe property acce...

(MULTIPLE_PUNCTATION_MARKS_1)


[style] ~163-~163: This is not the usual sequence for adjectives that have no special emphasis.
Context: ...eventDefault()` unless necessary. - For new small components: - Pass most props to wrap...

(EN_ADJ_ORDER)


[formatting] ~167-~167: Did you mean “?”
Context: ...rd />). - Use optional chaining (?.`) or type guards for object properties....

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~265-~265: Possible missing comma found.
Context: ...re src/api components have consistent interfaces matching designs. - Only access propert...

(AI_HYDRA_LEO_MISSING_COMMA)


[formatting] ~296-~296: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards (e.g., `if ('foo' in o...

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~329-~329: Loose punctuation mark.
Context: ... practice or model code. - edge-case: Necessary deviation from standards. -...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~330-~330: Loose punctuation mark.
Context: ...tion from standards. - best-practice: Adherence to coding standards. - `ant...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~331-~331: Loose punctuation mark.
Context: ... to coding standards. - anti-pattern: Code to avoid (pending refactor). - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~332-~332: Loose punctuation mark.
Context: ... to avoid (pending refactor). - todo: Needs improvement or refactoring. - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~333-~333: Loose punctuation mark.
Context: ...ovement or refactoring. - workaround: Temporary fix for a limitation. - `pe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~334-~334: Loose punctuation mark.
Context: ... fix for a limitation. - performance: Optimized code. - security: Securit...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~335-~335: Loose punctuation mark.
Context: ...ormance: Optimized code. - security: Security-critical code. - test`: Exe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~336-~336: Loose punctuation mark.
Context: ...ity: Security-critical code. - test: Exemplary test case. - design-alignm...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~337-~337: Loose punctuation mark.
Context: ...mplary test case. - design-alignment: Matches or deviates from design specs. ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~338-~338: Loose punctuation mark.
Context: ...tes from design specs. - type-safety: Safe property access. - Optionally add ...

(UNLIKELY_OPENING_PUNCTUATION)

♻️ Duplicate comments (3)
.junie/guidelines.md (3)

7-7: Placeholder needs real content.
The placeholder [describe functionality briefly, e.g., field data management; replace with specific details if available] should be replaced with an actual project overview.

🧰 Tools
🪛 LanguageTool

[style] ~7-~7: This phrase is redundant. Consider writing “details”.
Context: ...g., field data management; replace with specific details if available]. It connects to the CORD ...

(SPECIFIC_DETAILS)


13-14: Use official Node.js spelling.
Replace NodeJS with Node.js to use the correct official spelling.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~13-~13: The official spelling of this programming framework is “Node.js”.
Context: ...ion Instructions ### Prerequisites 1. NodeJS (current version or LTS recommended, >=...

(NODE_JS)


[uncategorized] ~14-~14: The official spelling of this programming framework is “Node.js”.
Context: ...bject missing blob property), upgrade NodeJS. 2. Corepack enabled (corepack enable...

(NODE_JS)


70-70: Add missing article for clarity.
Modify to:

-- End-to-end (E2E) tests: Located in `test` directory (if applicable).
+- End-to-end (E2E) tests: Located in the `test` directory (if applicable).
🧰 Tools
🪛 LanguageTool

[uncategorized] ~70-~70: You might be missing the article “the” here.
Context: .... - End-to-end (E2E) tests: Located in test` directory (if applicable). ### Ru...

(AI_EN_LECTOR_MISSING_DETERMINER_THE)

🧹 Nitpick comments (4)
.github/copilot-instructions.md (4)

1-1: Filename may not reflect content.
The filename copilot-instructions.md suggests guidance for GitHub Copilot, but the document contains front-end development guidelines. Consider renaming the file or relocating it to better match its purpose.


7-7: Placeholder needs real content.
The placeholder [describe functionality briefly, e.g., field data management; replace with specific details if available] should be replaced with an actual overview of the front-end’s functionality to improve clarity.

🧰 Tools
🪛 LanguageTool

[style] ~7-~7: This phrase is redundant. Consider writing “details”.
Context: ...g., field data management; replace with specific details if available]. It connects to the CORD ...

(SPECIFIC_DETAILS)


13-14: Use official Node.js spelling.
Replace NodeJS with Node.js to match the official name.

-1. NodeJS (current version or LTS recommended, >= 18.x as per `package.json`).
+1. Node.js (current version or LTS recommended, >= 18.x as per `package.json`).

-   - Check version with `node -v`. If compilation errors occur (e.g., `Buffer` object missing `blob` property), upgrade NodeJS.
+   - Check version with `node -v`. If compilation errors occur (e.g., `Buffer` object missing `blob` property), upgrade Node.js.
🧰 Tools
🪛 LanguageTool

[uncategorized] ~13-~13: The official spelling of this programming framework is “Node.js”.
Context: ...ion Instructions ### Prerequisites 1. NodeJS (current version or LTS recommended, >=...

(NODE_JS)


[uncategorized] ~14-~14: The official spelling of this programming framework is “Node.js”.
Context: ...bject missing blob property), upgrade NodeJS. 2. Corepack enabled (corepack enable...

(NODE_JS)


70-70: Add missing article for clarity.
Modify to:

-- End-to-end (E2E) tests: Located in `test` directory (if applicable).
+- End-to-end (E2E) tests: Located in the `test` directory (if applicable).
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 72b3a57 and 6a23d40.

📒 Files selected for processing (2)
  • .github/copilot-instructions.md (1 hunks)
  • .junie/guidelines.md (1 hunks)
🧰 Additional context used
🪛 LanguageTool
.junie/guidelines.md

[style] ~7-~7: This phrase is redundant. Consider writing “details”.
Context: ...g., field data management; replace with specific details if available]. It connects to the CORD ...

(SPECIFIC_DETAILS)


[uncategorized] ~13-~13: The official spelling of this programming framework is “Node.js”.
Context: ...ion Instructions ### Prerequisites 1. NodeJS (current version or LTS recommended, >=...

(NODE_JS)


[uncategorized] ~14-~14: The official spelling of this programming framework is “Node.js”.
Context: ...bject missing blob property), upgrade NodeJS. 2. Corepack enabled (corepack enable...

(NODE_JS)


[uncategorized] ~70-~70: You might be missing the article “the” here.
Context: .... - End-to-end (E2E) tests: Located in test` directory (if applicable). ### Ru...

(AI_EN_LECTOR_MISSING_DETERMINER_THE)


[uncategorized] ~130-~130: Loose punctuation mark.
Context: ...aphql. ### Project Structure - src/: Source code - src/api/`: GraphQL que...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~132-~132: Loose punctuation mark.
Context: ...and API-related files. - src/common/: Utility TypeScript files (types, interf...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~133-~133: Loose punctuation mark.
Context: ...lidation schemas). - src/components/: Reusable React components (mostly TSX, ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~134-~134: Loose punctuation mark.
Context: ...Final Form components). - src/hooks/: Custom React hooks (TypeScript). - `s...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~135-~135: Loose punctuation mark.
Context: ...ct hooks (TypeScript). - src/scenes/: Application-specific, non-reusable comp...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~136-~136: Loose punctuation mark.
Context: ...les), with subfolders. - src/server/: Razzle server configuration files. - ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~137-~137: Loose punctuation mark.
Context: ...er configuration files. - src/theme/: MUI theme configuration files. ### Cod...

(UNLIKELY_OPENING_PUNCTUATION)


[style] ~143-~143: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...React components, classes, and enums. - Use kebab-case for new folders and files. -...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[style] ~144-~144: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...kebab-case for new folders and files. - Use single quotes for strings, 2 spaces for...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[formatting] ~156-~156: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards for safe property acce...

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~160-~160: You might be missing the article “the” here.
Context: ...ty access. ### React Guidelines - Use key attribute only for dynamic lists (e...

(AI_EN_LECTOR_MISSING_DETERMINER_THE)


[style] ~163-~163: This is not the usual sequence for adjectives that have no special emphasis.
Context: ...eventDefault()` unless necessary. - For new small components: - Pass most props to wrap...

(EN_ADJ_ORDER)


[formatting] ~167-~167: Did you mean “?”
Context: ...rd />). - Use optional chaining (?.`) or type guards for object properties....

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~265-~265: Possible missing comma found.
Context: ...re src/api components have consistent interfaces matching designs. - Only access propert...

(AI_HYDRA_LEO_MISSING_COMMA)


[formatting] ~296-~296: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards (e.g., `if ('foo' in o...

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~329-~329: Loose punctuation mark.
Context: ... practice or model code. - edge-case: Necessary deviation from standards. -...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~330-~330: Loose punctuation mark.
Context: ...tion from standards. - best-practice: Adherence to coding standards. - `ant...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~331-~331: Loose punctuation mark.
Context: ... to coding standards. - anti-pattern: Code to avoid (pending refactor). - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~332-~332: Loose punctuation mark.
Context: ... to avoid (pending refactor). - todo: Needs improvement or refactoring. - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~333-~333: Loose punctuation mark.
Context: ...ovement or refactoring. - workaround: Temporary fix for a limitation. - `pe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~334-~334: Loose punctuation mark.
Context: ... fix for a limitation. - performance: Optimized code. - security: Securit...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~335-~335: Loose punctuation mark.
Context: ...ormance: Optimized code. - security: Security-critical code. - test`: Exe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~336-~336: Loose punctuation mark.
Context: ...ity: Security-critical code. - test: Exemplary test case. - design-alignm...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~337-~337: Loose punctuation mark.
Context: ...mplary test case. - design-alignment: Matches or deviates from design specs. ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~338-~338: Loose punctuation mark.
Context: ...tes from design specs. - type-safety: Safe property access. - Optionally add ...

(UNLIKELY_OPENING_PUNCTUATION)

.github/copilot-instructions.md

[style] ~7-~7: This phrase is redundant. Consider writing “details”.
Context: ...g., field data management; replace with specific details if available]. It connects to the CORD ...

(SPECIFIC_DETAILS)


[uncategorized] ~13-~13: The official spelling of this programming framework is “Node.js”.
Context: ...ion Instructions ### Prerequisites 1. NodeJS (current version or LTS recommended, >=...

(NODE_JS)


[uncategorized] ~14-~14: The official spelling of this programming framework is “Node.js”.
Context: ...bject missing blob property), upgrade NodeJS. 2. Corepack enabled (corepack enable...

(NODE_JS)


[uncategorized] ~130-~130: Loose punctuation mark.
Context: ...aphql. ### Project Structure - src/: Source code - src/api/`: GraphQL que...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~132-~132: Loose punctuation mark.
Context: ...and API-related files. - src/common/: Utility TypeScript files (types, interf...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~133-~133: Loose punctuation mark.
Context: ...lidation schemas). - src/components/: Reusable React components (mostly TSX, ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~134-~134: Loose punctuation mark.
Context: ...Final Form components). - src/hooks/: Custom React hooks (TypeScript). - `s...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~135-~135: Loose punctuation mark.
Context: ...ct hooks (TypeScript). - src/scenes/: Application-specific, non-reusable comp...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~136-~136: Loose punctuation mark.
Context: ...les), with subfolders. - src/server/: Razzle server configuration files. - ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~137-~137: Loose punctuation mark.
Context: ...er configuration files. - src/theme/: MUI theme configuration files. ### Cod...

(UNLIKELY_OPENING_PUNCTUATION)


[style] ~143-~143: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...React components, classes, and enums. - Use kebab-case for new folders and files. -...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[style] ~144-~144: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...kebab-case for new folders and files. - Use single quotes for strings, 2 spaces for...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[formatting] ~156-~156: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards for safe property acce...

(MULTIPLE_PUNCTATION_MARKS_1)


[style] ~163-~163: This is not the usual sequence for adjectives that have no special emphasis.
Context: ...eventDefault()` unless necessary. - For new small components: - Pass most props to wrap...

(EN_ADJ_ORDER)


[formatting] ~167-~167: Did you mean “?”
Context: ...rd />). - Use optional chaining (?.`) or type guards for object properties....

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~265-~265: Possible missing comma found.
Context: ...re src/api components have consistent interfaces matching designs. - Only access propert...

(AI_HYDRA_LEO_MISSING_COMMA)


[formatting] ~296-~296: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards (e.g., `if ('foo' in o...

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~329-~329: Loose punctuation mark.
Context: ... practice or model code. - edge-case: Necessary deviation from standards. -...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~330-~330: Loose punctuation mark.
Context: ...tion from standards. - best-practice: Adherence to coding standards. - `ant...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~331-~331: Loose punctuation mark.
Context: ... to coding standards. - anti-pattern: Code to avoid (pending refactor). - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~332-~332: Loose punctuation mark.
Context: ... to avoid (pending refactor). - todo: Needs improvement or refactoring. - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~333-~333: Loose punctuation mark.
Context: ...ovement or refactoring. - workaround: Temporary fix for a limitation. - `pe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~334-~334: Loose punctuation mark.
Context: ... fix for a limitation. - performance: Optimized code. - security: Securit...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~335-~335: Loose punctuation mark.
Context: ...ormance: Optimized code. - security: Security-critical code. - test`: Exe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~336-~336: Loose punctuation mark.
Context: ...ity: Security-critical code. - test: Exemplary test case. - design-alignm...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~337-~337: Loose punctuation mark.
Context: ...mplary test case. - design-alignment: Matches or deviates from design specs. ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~338-~338: Loose punctuation mark.
Context: ...tes from design specs. - type-safety: Safe property access. - Optionally add ...

(UNLIKELY_OPENING_PUNCTUATION)

⏰ Context from checks skipped due to timeout of 90000ms (1)
  • GitHub Check: run

@rdonigian rdonigian changed the title Copilot Instructions Markdown Create AI Guidelines Markdowns #3428 May 14, 2025
@rdonigian rdonigian changed the title Create AI Guidelines Markdowns #3428 Create AI Guidelines Markdowns May 14, 2025
Copy link
Member

@CarsonF CarsonF left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's a lot here that's incorrect.

There's a lot here that I don't feel like we need to call out.
"Use PascalCase for React Components"

@rdonigian rdonigian force-pushed the copilot-instructions branch from 6a23d40 to 383d05a Compare May 14, 2025 21:37
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

♻️ Duplicate comments (4)
.junie/guidelines.md (4)

7-7: Duplicate: Placeholder for project functionality description
This section also uses the “[describe functionality…]” placeholder. See related comment in .github/copilot‐instructions.md line 7.

🧰 Tools
🪛 LanguageTool

[style] ~7-~7: This phrase is redundant. Consider writing “details”.
Context: ...g., field data management; replace with specific details if available]. It connects to the CORD ...

(SPECIFIC_DETAILS)


13-14: Duplicate: Use “Node.js” spelling
Same correction applies here. Refer to comment in .github/copilot‐instructions.md lines 13–14.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~13-~13: The official spelling of this programming framework is “Node.js”.
Context: ...ion Instructions ### Prerequisites 1. NodeJS (current version or LTS recommended, >=...

(NODE_JS)


[uncategorized] ~14-~14: The official spelling of this programming framework is “Node.js”.
Context: ...bject missing blob property), upgrade NodeJS. 2. Corepack enabled (corepack enable...

(NODE_JS)


69-69: Duplicate: Fix typo in GraphQL section
The “correlated folders af” typo appears again. See related comment in .github/copilot‐instructions.md line 69.


115-116: Duplicate: Complete the Form Development section
This section is also missing its guidance/examples; see the comment in .github/copilot‐instructions.md line 115.

🧹 Nitpick comments (3)
.github/copilot-instructions.md (3)

13-14: Use official “Node.js” spelling
The bullets refer to “NodeJS”, but the correct, official name is “Node.js”. Please update both occurrences for consistency.

Apply:

-1. NodeJS (current version or LTS recommended, >= 18.x as per `package.json`).
-   - Check version with `node -v`. If compilation errors occur (e.g., `Buffer` object missing `blob` property), upgrade NodeJS.
+1. Node.js (current version or LTS recommended, >= 18.x as per `package.json`).
+   - Check version with `node -v`. If compilation errors occur (e.g., `Buffer` object missing `blob` property), upgrade Node.js.
🧰 Tools
🪛 LanguageTool

[uncategorized] ~13-~13: The official spelling of this programming framework is “Node.js”.
Context: ...ion Instructions ### Prerequisites 1. NodeJS (current version or LTS recommended, >=...

(NODE_JS)


[uncategorized] ~14-~14: The official spelling of this programming framework is “Node.js”.
Context: ...bject missing blob property), upgrade NodeJS. 2. Corepack enabled (corepack enable...

(NODE_JS)


69-69: Fix typo in GraphQL section
The phrase “defined in correlated folders af (e.g., *.ts or *.graphql)” looks like a typo. Consider changing to “defined in related folders (e.g., *.ts or *.graphql).”


1-2: Clarify the role of this document
The title and content largely duplicate the main guidelines in .junie/guidelines.md. If this file is specifically for Copilot/AI workflows, consider renaming the title or merging duplicate sections to reduce maintenance overhead.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 6a23d40 and 383d05a.

📒 Files selected for processing (2)
  • .github/copilot-instructions.md (1 hunks)
  • .junie/guidelines.md (1 hunks)
🧰 Additional context used
🪛 LanguageTool
.junie/guidelines.md

[style] ~7-~7: This phrase is redundant. Consider writing “details”.
Context: ...g., field data management; replace with specific details if available]. It connects to the CORD ...

(SPECIFIC_DETAILS)


[uncategorized] ~13-~13: The official spelling of this programming framework is “Node.js”.
Context: ...ion Instructions ### Prerequisites 1. NodeJS (current version or LTS recommended, >=...

(NODE_JS)


[uncategorized] ~14-~14: The official spelling of this programming framework is “Node.js”.
Context: ...bject missing blob property), upgrade NodeJS. 2. Corepack enabled (corepack enable...

(NODE_JS)


[uncategorized] ~75-~75: Loose punctuation mark.
Context: ...aphql. ### Project Structure - src/: Source code - src/api/`: GraphQL que...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~77-~77: Loose punctuation mark.
Context: ...and API-related files. - src/common/: Utility TypeScript files (types, interf...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~78-~78: Loose punctuation mark.
Context: ...lidation schemas). - src/components/: Reusable React components (mostly TSX, ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~79-~79: Loose punctuation mark.
Context: ...Final Form components). - src/hooks/: Custom React hooks (TypeScript). - `s...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~80-~80: Loose punctuation mark.
Context: ...ct hooks (TypeScript). - src/scenes/: Application-specific, non-reusable comp...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~81-~81: Loose punctuation mark.
Context: ...les), with subfolders. - src/server/: Razzle server configuration files. - ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~82-~82: Loose punctuation mark.
Context: ...er configuration files. - src/theme/: MUI theme configuration files. ### Cod...

(UNLIKELY_OPENING_PUNCTUATION)


[style] ~88-~88: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...React components, classes, and enums. - Use kebab-case for new folders and files. -...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[style] ~89-~89: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...kebab-case for new folders and files. - Use single quotes for strings, 2 spaces for...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[formatting] ~101-~101: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards for safe property acce...

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~105-~105: You might be missing the article “the” here.
Context: ...ty access. ### React Guidelines - Use key attribute only for dynamic lists (e...

(AI_EN_LECTOR_MISSING_DETERMINER_THE)


[style] ~108-~108: This is not the usual sequence for adjectives that have no special emphasis.
Context: ...eventDefault()` unless necessary. - For new small components: - Pass most props to wrap...

(EN_ADJ_ORDER)


[formatting] ~112-~112: Did you mean “?”
Context: ...rd />). - Use optional chaining (?.`) or type guards for object properties....

(MULTIPLE_PUNCTATION_MARKS_1)


[formatting] ~209-~209: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards (e.g., `if ('foo' in o...

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~236-~236: Loose punctuation mark.
Context: ... practice or model code. - edge-case: Necessary deviation from standards. -...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~237-~237: Loose punctuation mark.
Context: ...tion from standards. - best-practice: Adherence to coding standards. - `ant...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~238-~238: Loose punctuation mark.
Context: ... to coding standards. - anti-pattern: Code to avoid (pending refactor). - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~239-~239: Loose punctuation mark.
Context: ... to avoid (pending refactor). - todo: Needs improvement or refactoring. - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~240-~240: Loose punctuation mark.
Context: ...ovement or refactoring. - workaround: Temporary fix for a limitation. - `pe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~241-~241: Loose punctuation mark.
Context: ... fix for a limitation. - performance: Optimized code. - security: Securit...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~242-~242: Loose punctuation mark.
Context: ...ormance: Optimized code. - security: Security-critical code. - test`: Exe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~243-~243: Loose punctuation mark.
Context: ...ity: Security-critical code. - test: Exemplary test case. - design-alignm...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~244-~244: Loose punctuation mark.
Context: ...mplary test case. - design-alignment: Matches or deviates from design specs. ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~245-~245: Loose punctuation mark.
Context: ...tes from design specs. - type-safety: Safe property access. - Optionally add ...

(UNLIKELY_OPENING_PUNCTUATION)

.github/copilot-instructions.md

[style] ~7-~7: This phrase is redundant. Consider writing “details”.
Context: ...g., field data management; replace with specific details if available]. It connects to the CORD ...

(SPECIFIC_DETAILS)


[uncategorized] ~13-~13: The official spelling of this programming framework is “Node.js”.
Context: ...ion Instructions ### Prerequisites 1. NodeJS (current version or LTS recommended, >=...

(NODE_JS)


[uncategorized] ~14-~14: The official spelling of this programming framework is “Node.js”.
Context: ...bject missing blob property), upgrade NodeJS. 2. Corepack enabled (corepack enable...

(NODE_JS)


[uncategorized] ~75-~75: Loose punctuation mark.
Context: ...aphql. ### Project Structure - src/: Source code - src/api/`: GraphQL que...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~77-~77: Loose punctuation mark.
Context: ...and API-related files. - src/common/: Utility TypeScript files (types, interf...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~78-~78: Loose punctuation mark.
Context: ...lidation schemas). - src/components/: Reusable React components (mostly TSX, ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~79-~79: Loose punctuation mark.
Context: ...Final Form components). - src/hooks/: Custom React hooks (TypeScript). - `s...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~80-~80: Loose punctuation mark.
Context: ...ct hooks (TypeScript). - src/scenes/: Application-specific, non-reusable comp...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~81-~81: Loose punctuation mark.
Context: ...les), with subfolders. - src/server/: Razzle server configuration files. - ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~82-~82: Loose punctuation mark.
Context: ...er configuration files. - src/theme/: MUI theme configuration files. ### Cod...

(UNLIKELY_OPENING_PUNCTUATION)


[style] ~88-~88: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...React components, classes, and enums. - Use kebab-case for new folders and files. -...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[style] ~89-~89: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...kebab-case for new folders and files. - Use single quotes for strings, 2 spaces for...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[formatting] ~101-~101: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards for safe property acce...

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~105-~105: You might be missing the article “the” here.
Context: ...ty access. ### React Guidelines - Use key attribute only for dynamic lists (e...

(AI_EN_LECTOR_MISSING_DETERMINER_THE)


[style] ~108-~108: This is not the usual sequence for adjectives that have no special emphasis.
Context: ...eventDefault()` unless necessary. - For new small components: - Pass most props to wrap...

(EN_ADJ_ORDER)


[formatting] ~112-~112: Did you mean “?”
Context: ...rd />). - Use optional chaining (?.`) or type guards for object properties....

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~201-~201: Possible missing comma found.
Context: ...re src/api components have consistent interfaces matching designs. - Only access propert...

(AI_HYDRA_LEO_MISSING_COMMA)


[formatting] ~209-~209: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards (e.g., `if ('foo' in o...

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~236-~236: Loose punctuation mark.
Context: ... practice or model code. - edge-case: Necessary deviation from standards. -...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~237-~237: Loose punctuation mark.
Context: ...tion from standards. - best-practice: Adherence to coding standards. - `ant...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~238-~238: Loose punctuation mark.
Context: ... to coding standards. - anti-pattern: Code to avoid (pending refactor). - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~239-~239: Loose punctuation mark.
Context: ... to avoid (pending refactor). - todo: Needs improvement or refactoring. - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~240-~240: Loose punctuation mark.
Context: ...ovement or refactoring. - workaround: Temporary fix for a limitation. - `pe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~241-~241: Loose punctuation mark.
Context: ... fix for a limitation. - performance: Optimized code. - security: Securit...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~242-~242: Loose punctuation mark.
Context: ...ormance: Optimized code. - security: Security-critical code. - test`: Exe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~243-~243: Loose punctuation mark.
Context: ...ity: Security-critical code. - test: Exemplary test case. - design-alignm...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~244-~244: Loose punctuation mark.
Context: ...mplary test case. - design-alignment: Matches or deviates from design specs. ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~245-~245: Loose punctuation mark.
Context: ...tes from design specs. - type-safety: Safe property access. - Optionally add ...

(UNLIKELY_OPENING_PUNCTUATION)

⏰ Context from checks skipped due to timeout of 90000ms (1)
  • GitHub Check: run
🔇 Additional comments (1)
.junie/guidelines.md (1)

1-1: Validate file location and intent
The .junie directory may be unfamiliar to new contributors. Please confirm whether this file is intended for human developers, AI assistants, or both, and how it differs from .github/copilot-instructions.md.

@rdonigian rdonigian force-pushed the copilot-instructions branch from 383d05a to 0df8aab Compare May 15, 2025 12:35
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🔭 Outside diff range comments (1)
.github/copilot-instructions.md (1)

1-164: 🛠️ Refactor suggestion

Consolidate duplicate guidelines
This file and .junie/guidelines.md contain the same front-end development standards. To maintain a single source of truth and reduce duplication, consider merging into one shared document and referencing it where needed.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~7-~7: Loose punctuation mark.
Context: ...API v3. ### Project Structure - src/: Source code - src/api/: client setu...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~9-~9: Loose punctuation mark.
Context: ... operation management. - src/common/: Utility TypeScript files (types, interf...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~10-~10: Loose punctuation mark.
Context: ...ypes, interfaces). - src/components/: Reusable React components (mostly TSX, ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~11-~11: Loose punctuation mark.
Context: ...Final Form components). - src/hooks/: Custom React hooks (TypeScript). - `s...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~12-~12: Loose punctuation mark.
Context: ...ct hooks (TypeScript). - src/scenes/: Application-specific, non-reusable comp...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~13-~13: Loose punctuation mark.
Context: ...les), with subfolders. - src/server/: server-side code and configuration file...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~14-~14: Loose punctuation mark.
Context: ...nd configuration files. - src/theme/: MUI theme configuration files. ### Cod...

(UNLIKELY_OPENING_PUNCTUATION)


[formatting] ~30-~30: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards for safe property acce...

(MULTIPLE_PUNCTATION_MARKS_1)


[style] ~34-~34: This is not the usual sequence for adjectives that have no special emphasis.
Context: ...ty access. ### React Guidelines - For new small components: - Pass most props to wrap...

(EN_ADJ_ORDER)


[formatting] ~38-~38: Did you mean “?”
Context: ...rd />). - Use optional chaining (?.`) or type guards for object properties....

(MULTIPLE_PUNCTATION_MARKS_1)


[formatting] ~129-~129: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards (e.g., `if ('foo' in o...

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~152-~152: Loose punctuation mark.
Context: ... practice or model code. - edge-case: Necessary deviation from standards. -...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~153-~153: Loose punctuation mark.
Context: ...tion from standards. - best-practice: Adherence to coding standards. - `ant...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~154-~154: Loose punctuation mark.
Context: ... to coding standards. - anti-pattern: Code to avoid (pending refactor). - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~155-~155: Loose punctuation mark.
Context: ... to avoid (pending refactor). - todo: Needs improvement or refactoring. - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~156-~156: Loose punctuation mark.
Context: ...ovement or refactoring. - workaround: Temporary fix for a limitation. - `pe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~157-~157: Loose punctuation mark.
Context: ... fix for a limitation. - performance: Optimized code. - security: Securit...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~158-~158: Loose punctuation mark.
Context: ...ormance: Optimized code. - security: Security-critical code. - test`: Exe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~159-~159: Loose punctuation mark.
Context: ...ity: Security-critical code. - test: Exemplary test case. - design-alignm...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~160-~160: Loose punctuation mark.
Context: ...mplary test case. - design-alignment: Matches or deviates from design specs. ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~161-~161: Loose punctuation mark.
Context: ...tes from design specs. - type-safety: Safe property access. - Optionally add ...

(UNLIKELY_OPENING_PUNCTUATION)

♻️ Duplicate comments (1)
.github/copilot-instructions.md (1)

42-43: 🛠️ Refactor suggestion

Complete the Form Development section
The “Form Development” heading and initial bullet remain without guidance or examples. Please flesh out this section with details on using Final Form, react-final-form components, validation (e.g., Yup), and error handling patterns.

🧹 Nitpick comments (8)
.junie/guidelines.md (8)

1-4: Add a Table of Contents for better navigation
The document is extensive; a TOC at the top with links to major sections (Project Structure, Coding Standards, React Guidelines, etc.) will help contributors quickly find relevant guidance.


5-15: Project Structure Clarity
The directory list is clear. To onboard new team members faster, consider adding brief descriptions or linking to example files/patterns in each folder (e.g., how src/api/ is structured in practice).

🧰 Tools
🪛 LanguageTool

[uncategorized] ~7-~7: Loose punctuation mark.
Context: ...API v3. ### Project Structure - src/: Source code - src/api/: client setu...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~9-~9: Loose punctuation mark.
Context: ... operation management. - src/common/: Utility TypeScript files (types, interf...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~10-~10: Loose punctuation mark.
Context: ...ypes, interfaces). - src/components/: Reusable React components (mostly TSX, ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~11-~11: Loose punctuation mark.
Context: ...Final Form components). - src/hooks/: Custom React hooks (TypeScript). - `s...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~12-~12: Loose punctuation mark.
Context: ...ct hooks (TypeScript). - src/scenes/: Application-specific, non-reusable comp...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~13-~13: Loose punctuation mark.
Context: ...les), with subfolders. - src/server/: server-side code and configuration file...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~14-~14: Loose punctuation mark.
Context: ...nd configuration files. - src/theme/: MUI theme configuration files. ### Cod...

(UNLIKELY_OPENING_PUNCTUATION)


34-39: Enhance React Guidelines with a code snippet
The prose is solid—consider including a small TSX example showing prop forwarding vs. wrapper proliferation to illustrate the best practice in code.

🧰 Tools
🪛 LanguageTool

[style] ~34-~34: This is not the usual sequence for adjectives that have no special emphasis.
Context: ...ty access. ### React Guidelines - For new small components: - Pass most props to wrap...

(EN_ADJ_ORDER)


[formatting] ~38-~38: Did you mean “?”
Context: ...rd />). - Use optional chaining (?.`) or type guards for object properties....

(MULTIPLE_PUNCTATION_MARKS_1)


46-50: Include responsive breakpoints in CSS Guidelines
It’s valuable to mention MUI’s theme.breakpoints for adaptive layouts (e.g., sx={{ [theme.breakpoints.up('sm')]: { width: 400 } }}). A quick example will guide developers toward responsive design.


51-75: Consider visual aids for layout examples
The parent- vs. child-owned centering examples are clear; adding rendered screenshots or a simple diagram could further drive home the difference for visual learners.


76-100: Clarify sx prop style ordering rationale
You might briefly note how control-first ordering aligns with CSS specificity or MUI style resolution, giving deeper insight into why the pattern improves maintainability.


124-147: Broaden common errors section
In addition to unsafe property access, consider highlighting other frequent pitfalls (stale closures in hooks, missing key in lists, improper dependency arrays) with mini-examples to make this guidance more holistic.

🧰 Tools
🪛 LanguageTool

[formatting] ~129-~129: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards (e.g., `if ('foo' in o...

(MULTIPLE_PUNCTATION_MARKS_1)


150-164: Refine tagged comments grep command
The note suggests git grep "ai ", but tags use // ai. For precision, update the command to:

git grep "// ai"
🧰 Tools
🪛 LanguageTool

[uncategorized] ~152-~152: Loose punctuation mark.
Context: ... practice or model code. - edge-case: Necessary deviation from standards. -...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~153-~153: Loose punctuation mark.
Context: ...tion from standards. - best-practice: Adherence to coding standards. - `ant...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~154-~154: Loose punctuation mark.
Context: ... to coding standards. - anti-pattern: Code to avoid (pending refactor). - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~155-~155: Loose punctuation mark.
Context: ... to avoid (pending refactor). - todo: Needs improvement or refactoring. - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~156-~156: Loose punctuation mark.
Context: ...ovement or refactoring. - workaround: Temporary fix for a limitation. - `pe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~157-~157: Loose punctuation mark.
Context: ... fix for a limitation. - performance: Optimized code. - security: Securit...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~158-~158: Loose punctuation mark.
Context: ...ormance: Optimized code. - security: Security-critical code. - test`: Exe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~159-~159: Loose punctuation mark.
Context: ...ity: Security-critical code. - test: Exemplary test case. - design-alignm...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~160-~160: Loose punctuation mark.
Context: ...mplary test case. - design-alignment: Matches or deviates from design specs. ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~161-~161: Loose punctuation mark.
Context: ...tes from design specs. - type-safety: Safe property access. - Optionally add ...

(UNLIKELY_OPENING_PUNCTUATION)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 383d05a and 0df8aab.

📒 Files selected for processing (2)
  • .github/copilot-instructions.md (1 hunks)
  • .junie/guidelines.md (1 hunks)
🧰 Additional context used
🪛 LanguageTool
.junie/guidelines.md

[uncategorized] ~7-~7: Loose punctuation mark.
Context: ...API v3. ### Project Structure - src/: Source code - src/api/: client setu...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~9-~9: Loose punctuation mark.
Context: ... operation management. - src/common/: Utility TypeScript files (types, interf...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~10-~10: Loose punctuation mark.
Context: ...ypes, interfaces). - src/components/: Reusable React components (mostly TSX, ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~11-~11: Loose punctuation mark.
Context: ...Final Form components). - src/hooks/: Custom React hooks (TypeScript). - `s...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~12-~12: Loose punctuation mark.
Context: ...ct hooks (TypeScript). - src/scenes/: Application-specific, non-reusable comp...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~13-~13: Loose punctuation mark.
Context: ...les), with subfolders. - src/server/: server-side code and configuration file...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~14-~14: Loose punctuation mark.
Context: ...nd configuration files. - src/theme/: MUI theme configuration files. ### Cod...

(UNLIKELY_OPENING_PUNCTUATION)


[formatting] ~30-~30: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards for safe property acce...

(MULTIPLE_PUNCTATION_MARKS_1)


[style] ~34-~34: This is not the usual sequence for adjectives that have no special emphasis.
Context: ...ty access. ### React Guidelines - For new small components: - Pass most props to wrap...

(EN_ADJ_ORDER)


[formatting] ~38-~38: Did you mean “?”
Context: ...rd />). - Use optional chaining (?.`) or type guards for object properties....

(MULTIPLE_PUNCTATION_MARKS_1)


[formatting] ~129-~129: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards (e.g., `if ('foo' in o...

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~152-~152: Loose punctuation mark.
Context: ... practice or model code. - edge-case: Necessary deviation from standards. -...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~153-~153: Loose punctuation mark.
Context: ...tion from standards. - best-practice: Adherence to coding standards. - `ant...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~154-~154: Loose punctuation mark.
Context: ... to coding standards. - anti-pattern: Code to avoid (pending refactor). - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~155-~155: Loose punctuation mark.
Context: ... to avoid (pending refactor). - todo: Needs improvement or refactoring. - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~156-~156: Loose punctuation mark.
Context: ...ovement or refactoring. - workaround: Temporary fix for a limitation. - `pe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~157-~157: Loose punctuation mark.
Context: ... fix for a limitation. - performance: Optimized code. - security: Securit...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~158-~158: Loose punctuation mark.
Context: ...ormance: Optimized code. - security: Security-critical code. - test`: Exe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~159-~159: Loose punctuation mark.
Context: ...ity: Security-critical code. - test: Exemplary test case. - design-alignm...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~160-~160: Loose punctuation mark.
Context: ...mplary test case. - design-alignment: Matches or deviates from design specs. ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~161-~161: Loose punctuation mark.
Context: ...tes from design specs. - type-safety: Safe property access. - Optionally add ...

(UNLIKELY_OPENING_PUNCTUATION)

.github/copilot-instructions.md

[uncategorized] ~7-~7: Loose punctuation mark.
Context: ...API v3. ### Project Structure - src/: Source code - src/api/: client setu...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~9-~9: Loose punctuation mark.
Context: ... operation management. - src/common/: Utility TypeScript files (types, interf...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~10-~10: Loose punctuation mark.
Context: ...ypes, interfaces). - src/components/: Reusable React components (mostly TSX, ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~11-~11: Loose punctuation mark.
Context: ...Final Form components). - src/hooks/: Custom React hooks (TypeScript). - `s...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~12-~12: Loose punctuation mark.
Context: ...ct hooks (TypeScript). - src/scenes/: Application-specific, non-reusable comp...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~13-~13: Loose punctuation mark.
Context: ...les), with subfolders. - src/server/: server-side code and configuration file...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~14-~14: Loose punctuation mark.
Context: ...nd configuration files. - src/theme/: MUI theme configuration files. ### Cod...

(UNLIKELY_OPENING_PUNCTUATION)


[formatting] ~30-~30: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards for safe property acce...

(MULTIPLE_PUNCTATION_MARKS_1)


[style] ~34-~34: This is not the usual sequence for adjectives that have no special emphasis.
Context: ...ty access. ### React Guidelines - For new small components: - Pass most props to wrap...

(EN_ADJ_ORDER)


[formatting] ~38-~38: Did you mean “?”
Context: ...rd />). - Use optional chaining (?.`) or type guards for object properties....

(MULTIPLE_PUNCTATION_MARKS_1)


[formatting] ~129-~129: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards (e.g., `if ('foo' in o...

(MULTIPLE_PUNCTATION_MARKS_1)


[uncategorized] ~152-~152: Loose punctuation mark.
Context: ... practice or model code. - edge-case: Necessary deviation from standards. -...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~153-~153: Loose punctuation mark.
Context: ...tion from standards. - best-practice: Adherence to coding standards. - `ant...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~154-~154: Loose punctuation mark.
Context: ... to coding standards. - anti-pattern: Code to avoid (pending refactor). - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~155-~155: Loose punctuation mark.
Context: ... to avoid (pending refactor). - todo: Needs improvement or refactoring. - `...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~156-~156: Loose punctuation mark.
Context: ...ovement or refactoring. - workaround: Temporary fix for a limitation. - `pe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~157-~157: Loose punctuation mark.
Context: ... fix for a limitation. - performance: Optimized code. - security: Securit...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~158-~158: Loose punctuation mark.
Context: ...ormance: Optimized code. - security: Security-critical code. - test`: Exe...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~159-~159: Loose punctuation mark.
Context: ...ity: Security-critical code. - test: Exemplary test case. - design-alignm...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~160-~160: Loose punctuation mark.
Context: ...mplary test case. - design-alignment: Matches or deviates from design specs. ...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~161-~161: Loose punctuation mark.
Context: ...tes from design specs. - type-safety: Safe property access. - Optionally add ...

(UNLIKELY_OPENING_PUNCTUATION)

Comment on lines +42 to +43
- Use custom form components with Final Form and react-final-form in `src/components/form`.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Expand Form Development section with examples
Currently there’s only a single bullet. Please add details on form validation (Yup schemas or equivalent), field-level error handling, submission flows, and a sample react-final-form setup using your custom components.

🤖 Prompt for AI Agents
In .junie/guidelines.md around lines 42 to 43, the Form Development section is
too brief and lacks practical examples. Expand this section by adding detailed
explanations and examples covering form validation using Yup schemas or similar,
how to handle field-level errors, the submission flow process, and a sample
setup of react-final-form using the custom form components located in
src/components/form. This will provide clearer guidance on implementing robust
forms.

Comment on lines +18 to +31
- Use single quotes for strings, 2 spaces for indentation.
- Prefer arrow functions for callbacks, async/await for GraphQL queries/mutations.
- Use `const` for constants, minimize `let` usage (e.g., except in try/catch).
- Use destructuring for objects/arrays, template literals for strings.
- Follow SOLID principles for modular, reusable, maintainable code.
- Avoid code duplication, deeply nested statements, hard-coded values.
- Use constants/enums instead of magic numbers/strings.
- Avoid mutations (non-GraphQL):
- Prefer `const` over `let`.
- Use spread syntax (e.g., `{ ...object, foo: 'bar' }`) instead of modifying objects.
- Use strict TypeScript:
- Define all object shapes in `src/common` or generated GraphQL types in `src/api`.
- Use optional chaining (`?.`) or type guards for safe property access.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Specify tooling for enforcing coding standards
Recommend calling out which linter/formatter configurations (ESLint, Prettier, etc.) enforce these rules automatically. This reduces manual overhead and ensures consistency across commits.

🧰 Tools
🪛 LanguageTool

[formatting] ~30-~30: Did you mean “?”
Context: ...n src/api. - Use optional chaining (?.) or type guards for safe property acce...

(MULTIPLE_PUNCTATION_MARKS_1)

🤖 Prompt for AI Agents
In .junie/guidelines.md around lines 18 to 31, the guidelines list coding
standards but do not specify which tooling enforces them. Add a section
recommending specific linters and formatters like ESLint and Prettier, including
their configuration files, to automatically enforce these rules. This will help
maintain consistency and reduce manual code review overhead.

@rdonigian
Copy link
Contributor Author

There's a lot here that's incorrect.

There's a lot here that I don't feel like we need to call out. "Use PascalCase for React Components"

I cut out the fluff and erroneous info. Let me know what you think about the tagged comments, I imagine us being able to slowly iterate on the examples for the ai as we build new functionality.

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.

2 participants