Skip to content

chore: expand CodeRabbit config with per-package review guidance - #75

Merged
SaharPak merged 2 commits into
mainfrom
chore/coderabbit-config
Jul 2, 2026
Merged

chore: expand CodeRabbit config with per-package review guidance#75
SaharPak merged 2 commits into
mainfrom
chore/coderabbit-config

Conversation

@SaharPak

@SaharPak SaharPak commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Add per-package path_instructions so CodeRabbit reviews packages/core, packages/cli, and packages/web (and markdown docs) with the right context.
  • Enable the ESLint and markdownlint tools so reviews lean on the linting the repo already uses.
  • Ignore build/dependency output (dist, .turbo, node_modules, snapshots) on top of the existing lockfile filter.
  • Disable the review poem and turn on knowledge base learnings.

This builds on the existing minimal .coderabbit.yaml on main.

Notes

CodeRabbit reads its config from the PR base branch, so these settings take effect for new PRs once this is merged into main.

Summary by CodeRabbit

  • Chores
    • Updated code review configuration to adjust review behavior, expand path filtering exclusions, and add scoped review guidance for specific packages and file types.

Add path_instructions for core/cli/web packages and markdown docs,
enable ESLint and markdownlint tools, ignore build/dependency output,
disable the review poem, and turn on knowledge base learnings.
@coderabbitai

coderabbitai Bot commented Jun 11, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

The .coderabbit.yaml configuration file is updated to adjust CodeRabbit's review behavior. The schema reference URL is modernized, top-level settings disable poem summaries and early access features, path filters exclude build output and generated files, and new path-scoped instructions provide targeted review guidance for core packages and documentation.

Changes

Configuration Updates

Layer / File(s) Summary
Review settings and path-scoped instructions
.coderabbit.yaml
Schema reference updated to coderabbit.ai/integrations URL; early_access set to false and reviews.poem disabled; path_filters extended with exclusions for dist, .turbo, node_modules, and *.snap files; new path_instructions section added with scoped review guidance for packages/core, packages/cli, packages/web, and Markdown files.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: expanding the CodeRabbit config with per-package review guidance, which is the primary focus of the PR.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/coderabbit-config

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

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (1)
.coderabbit.yaml (1)

16-21: 💤 Low value

Consider excluding additional common artifacts.

The current exclusions cover the main build artifacts. You might also consider excluding:

  • **/.next/** (if using Next.js)
  • **/coverage/** (test coverage reports)
  • **/.cache/** (various tool caches)

Only add these if they're relevant to your project structure.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.coderabbit.yaml around lines 16 - 21, Update the path_filters list to add
additional common artifact excludes if relevant: add entries like
"!**/.next/**", "!**/coverage/**", and "!**/.cache/**" alongside the existing
filters (e.g., the current path_filters containing "!**/pnpm-lock.yaml",
"!**/dist/**", "!**/.turbo/**", "!**/node_modules/**", "!**/*.snap") so these
folders are ignored by the CI/toolchain when applicable to the project.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.coderabbit.yaml:
- Around line 41-45: The repo enables eslint and markdownlint in
.coderabbit.yaml but lacks repository-level configurations; add or confirm
ESLint config (e.g., create an .eslintrc.* or eslint.config.* file or add an
"eslintConfig" section to package.json) and add a markdownlint config (e.g.,
.markdownlintrc, .markdownlint.json or markdownlint settings in package.json) so
the tools referenced under tools: eslint and markdownlint can run; ensure the
config files are committed to the repo root and include any required plugins or
rules referenced by your codebase.

---

Nitpick comments:
In @.coderabbit.yaml:
- Around line 16-21: Update the path_filters list to add additional common
artifact excludes if relevant: add entries like "!**/.next/**",
"!**/coverage/**", and "!**/.cache/**" alongside the existing filters (e.g., the
current path_filters containing "!**/pnpm-lock.yaml", "!**/dist/**",
"!**/.turbo/**", "!**/node_modules/**", "!**/*.snap") so these folders are
ignored by the CI/toolchain when applicable to the project.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 05e584d5-2589-450a-8268-2908e6b1da8e

📥 Commits

Reviewing files that changed from the base of the PR and between facea8e and b99db73.

📒 Files selected for processing (1)
  • .coderabbit.yaml

Comment thread .coderabbit.yaml
Comment on lines +41 to +45
tools:
eslint:
enabled: true
markdownlint:
enabled: true

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Description: Verify that ESLint and markdownlint configuration files exist

echo "=== ESLint config ==="
fd -t f -d 2 '\.eslintrc\.(js|cjs|json|yaml|yml)$|eslint\.config\.(js|mjs|cjs)$' . || echo "No .eslintrc.* or eslint.config.* found"
rg -l '"eslintConfig"' package.json || echo "No eslintConfig in package.json"

echo "=== markdownlint config ==="
fd -t f -d 2 '\.markdownlint\.(json|yaml|yml|cjs|mjs)$|\.markdownlintrc$' . || echo "No .markdownlint config found"

Repository: TechImmigrants/cv-builder

Length of output: 151


Ensure ESLint/markdownlint configs exist in the repo when enabling them in .coderabbit.yaml.

.coderabbit.yaml enables eslint and markdownlint, but package.json contains no eslintConfig. Add or confirm the repo-level ESLint config (.eslintrc.* or eslint.config.*) and markdownlint config (.markdownlintrc* / markdownlint settings) so CodeRabbit can run both tools correctly.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.coderabbit.yaml around lines 41 - 45, The repo enables eslint and
markdownlint in .coderabbit.yaml but lacks repository-level configurations; add
or confirm ESLint config (e.g., create an .eslintrc.* or eslint.config.* file or
add an "eslintConfig" section to package.json) and add a markdownlint config
(e.g., .markdownlintrc, .markdownlint.json or markdownlint settings in
package.json) so the tools referenced under tools: eslint and markdownlint can
run; ensure the config files are committed to the repo root and include any
required plugins or rules referenced by your codebase.

@amirbahador-hub
amirbahador-hub self-requested a review June 12, 2026 17:32
Comment thread .coderabbit.yaml
stays consistent with the core package's data model.
- path: "**/*.md"
instructions: >
Docs for an open-source project. Check clarity and that setup/commands

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

No a lot of them are the prompts templates not the Docs

Comment thread .coderabbit.yaml
New rules/archetypes/evaluator behavior should have matching vitest tests.
- path: "packages/cli/**"
instructions: >
CLI for the CV builder. Watch for unhandled errors, confusing output,

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This doesn't match with our cli, because our cli is not traditional cli it's prompt as code, it uses users code agents to do this

Comment thread .coderabbit.yaml
path_instructions:
- path: "packages/core/**"
instructions: >
This is the core CV evaluation/builder logic. Prioritize correctness of

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Core is orchestrator, the logic is everywhere in intelligence, ingestions, server, frontend, prompts and so on

@SaharPak

SaharPak commented Jul 2, 2026

Copy link
Copy Markdown
Contributor Author

Thanks for expanding the CodeRabbit config! Per-package review guidance is now in the MVP integration branch. This makes automated PR review much more useful going forward. Appreciate the polish!

@SaharPak
SaharPak merged commit d9cc9d8 into main Jul 2, 2026
3 checks passed
SaharPak added a commit that referenced this pull request Jul 2, 2026
* docs: align repository documentation with MVP status

Documentation-only audit. No code, evaluator, or rule changes; no new
features; no Cloudflare work; no changes to PR #37 or #78.

User-facing copy fixed:
- README.md: replace misleading ASCII diagram (3 rewrites / Tailored CV)
  with the actual MVP outputs (Score, Issues, Strengths, ATS verdict,
  Archetype); clarify that /evaluate-cv ./my-resume.pdf works only
  because Claude Code reads PDFs natively (the local CLI/web UI parse
  .md and .txt only).
- apps/web-ui layout.tsx: Next.js metadata description replaced with
  honest CV-evaluator copy (no longer 'Build a tailored resume...').
- apps/web-ui/README.md: list all three routes (/, /results, /feedback),
  note the static-export + privacy-first posture.
- apps/cli/README.md: same PDF-clarification note as the root README.
- package.json descriptions (root + core + cli): remove 'tailor /
  build' wording; describe the deterministic evaluator.
- packages/intelligence/README.md: list the eight shipped roles
  (matches README and the actual implementation) and correct the
  default archetype (Backend Engineer, not Software Engineer).
- packages/eval/README.md: drop the outdated LLM-provider claim; the
  MVP is fully deterministic.
- .claude/skills/cv-evaluation/SKILL.md: 'local MVP', not 'hosted
  product'; default archetype corrected.
- ROADMAP.md: status note added; Phase-1 / #74 / #75 / #76 / #85 / #87
  marked as recently shipped; only #37 and #78 remain in progress.

Historical docs marked with status notes (not rewritten, just flagged
as pre-release context): ARCHITECTURE.md, PROPOSAL.md, PHASE-1.md,
V1_SCOPE.md, MVP_DEMO_PLAN.md, PR_CLEANUP_HANDOFF.md,
POST_MERGE_VALIDATION.md, REMAINING_PRS_PLAN.md, PR85_ROLLBACK_PLAN.md.
Each now points readers to docs/MVP_RELEASE_STATUS.md.

New:
- docs/REPO_DOCS_AUDIT.md records the audit date, files reviewed,
  files changed, outdated claims found and fixed, historical docs
  left intentionally unchanged, remaining risks, and the validation
  results.

Validates: pnpm test (12/12), pnpm lint (0 errors), pnpm build (6/6,
fresh --force: emits /, /_not-found, /feedback, /results).

* docs: fix remaining Node version reference

docs/MVP_DEMO_PLAN.md still said 'Node 22+' in the prereqs section,
which conflicts with the actual repo metadata (Node >= 20.0.0 in
package.json) and with the authoritative setup guide in
docs/LOCAL_DEMO.md. Replace the prereqs with a short pointer to
LOCAL_DEMO.md plus a one-line accurate summary, so this historical
demo-readiness doc no longer contradicts current setup instructions.

docs/REPO_DOCS_AUDIT.md: remove the corresponding entry from the
'remaining documentation risks' list, fix the resulting item
numbering, and add a note recording that the Node-version item was
resolved before merge.

No code, evaluator, or rule changes. No new features. PR #37 and
PR #78 untouched.

Validates: pnpm test 12/12, pnpm lint 0 errors, pnpm build 6/6
(fresh --force, emits /, /_not-found, /feedback, /results).

* docs: address remaining CodeRabbit comments on PR #88

Two unresolved CodeRabbit comments fixed in this commit:

1. README.md — replace hard-coded '5 issues' in the evaluator diagram
   with the non-fixed wording 'Issues'. evaluate() returns a
   variable-length issues array; a fixed count would drift as scoring
   changes. The other diagram labels (Score, Strengths, ATS verdict,
   Archetype) are kept as-is because they describe deterministic
   outputs that do not vary in count.

2. packages/intelligence/README.md — the previous audit pass claimed
   this package ships eight roles and falls back to Backend Engineer.
   But packages/intelligence/src/archetypes/index.ts registers only
   three archetypes (Software Engineer, Product Manager, Data & ML
   Engineer) and DEFAULT_ARCHETYPE is softwareEngineer. Update the
   README to reflect the actual registry. Add a note clarifying that
   @cv-builder/core has a separate, broader legacy/runtime registry
   (7 roles) used by the CLI and Web UI, and that unifying the two
   registries is a follow-up — see docs/ARCHETYPE_GAP_AUDIT.md.

docs/REPO_DOCS_AUDIT.md updated to record that the
packages/intelligence/README.md archetype-inventory row was
corrected in two steps (the audit pass incorrectly bumped the
package claim to 8; this commit brings it back to 3 and adds the
@cv-builder/core note).

No code changes. No new features. PR #37 and PR #78 untouched.
Docs only.

Validates: pnpm test 12/12, pnpm lint 0 errors, pnpm build 6/6.

---------

Co-authored-by: Cleanup Bot <cleanup-bot@example.com>
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