Skip to content

chore: customize Greptile reviews for PRKS - #206

Open
Fooftilly wants to merge 2 commits into
masterfrom
chore/greptile-review-config
Open

Fooftilly wants to merge 2 commits into
masterfrom
chore/greptile-review-config

Conversation

@Fooftilly

@Fooftilly Fooftilly commented Sep 25, 2026 •

Copy link
Copy Markdown
Owner

Summary

Add repository-native Greptile review customization so automated reviews focus on PRKS-specific failure modes instead of generic style advice.

Changes

  • add .greptile/config.json
    • balanced strictness and Base effort
    • exclude vendored/generated/binary-heavy paths
    • prioritize correctness, regressions, security, data integrity, persistence/filesystem safety, concurrency/state lifecycle, and regression coverage
    • add scoped rules for:
      • privacy-safe logging
      • database/migration safety
      • managed-file lifecycle
      • test storage isolation
      • DESIGN.md compliance
      • workspace/TabContext ownership
      • E2E quality
      • GitHub Actions safety
  • add .greptile/files.json
    • provide Greptile with scoped PRKS authority files
    • keep backend/frontend/test context localized
    • treat docs/work-identity-model.md as staged/in-transition architecture rather than assuming every slice is already implemented

Intent

Improve signal-to-noise in Greptile reviews without making reviews globally more nitpicky or duplicating all repository guidance into another large policy document.

Validation

Configuration-only change; no runtime behavior is modified.

Summary by CodeRabbit

  • Chores
    • Added repository review guidance covering security, privacy, migrations, managed files, testing, UI, workspace context, and workflow safety.
    • Added scoped guidance for reviewing repository-wide and area-specific changes.

greptile-apps[bot]

This comment was marked as off-topic.

@qodo-code-review

Copy link
Copy Markdown

PR Summary by Qodo

Customize Greptile reviews for PRKS-specific risks

⚙️ Configuration changes ✨ Enhancement 🕐 10-20 Minutes

Grey Divider

AI Description

• Prioritizes PRKS-specific correctness, security, lifecycle, and regression risks.
• Excludes vendored, generated, storage, artifact, and binary-heavy paths from review.
• Supplies scoped authority documents while distinguishing staged architecture from implemented
 behavior.
Diagram

graph TD
  S["Scoped Rules"] --> C["Review Config"] --> G["Greptile Review"] --> F["Focused Findings"]
  I["Ignored Paths"] --> C
  A["Authority Files"] --> G
  P["Pull Request"] --> G
Loading
High-Level Assessment

The scoped configuration is the appropriate approach: it keeps Greptile guidance close to repository authority files without duplicating those documents or applying every domain rule globally. A single large policy or unscoped authority list would increase maintenance cost and irrelevant review feedback.

Files changed (2) +108 / -0

Other (2) +108 / -0
config.jsonDefine PRKS-focused Greptile review policy +57/-0

Define PRKS-focused Greptile review policy

• Configures balanced review strictness, base effort, excluded paths, and actionable correctness-first instructions. Adds scoped rules covering privacy, migrations, managed files, test isolation, UI contracts, workspace ownership, E2E quality, and workflow safety.

.greptile/config.json

files.jsonMap repository authority files to review scopes +51/-0

Map repository authority files to review scopes

• Registers repository-wide and domain-specific guidance for Greptile, localizing backend, frontend, design, and testing context. Marks the work identity model as staged architecture and limits it to related implementation areas.

.greptile/files.json

@coderabbitai

coderabbitai Bot commented Sep 25, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: Fooftilly/PRKS/.coderabbit.yaml

Review profile: ASSERTIVE

Plan: Advanced

Run ID: eb3a9246-41bf-460f-b2fa-0418a26f1f2d

📥 Commits

Reviewing files that changed from the base of the PR and between b1560f6 and 9ef7b6d.

📒 Files selected for processing (2)
  • .greptile/config.json
  • .greptile/files.json

Included review availability: Your plan provides up to 10 included reviews per hour; 7 remain after this review.


📝 Walkthrough

Walkthrough

Adds Greptile review settings, scoped rules for repository areas, and mappings from guidance documents to descriptions and applicable paths.

Changes

Review configuration

Layer / File(s) Summary
Review settings and guidance mapping
.greptile/config.json, .greptile/files.json
The configuration sets review options and ignored paths, and adds seven scoped rules with severity assignments. The guidance mapping lists repository documents with descriptions and applicable path scopes.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Other

Merge Risk: ⚪ Minimal · up to 9ef7b

No actionable merge risk remains from the review configuration change; it is ready for normal merge checks.

Architecture Summary

Architecture risk: 🔵 Low · up to 9ef7b

The changed surface does not map to a changed system, dependency edge, entrypoint, or external dependency.

Changed systems: None identified.

Architecture concerns
No architecture-level concerns identified.

Review details

Before / after behavior

  • observed — Modified behavior in .greptile/config.json: Adds review settings, ignored path patterns, and instructions limiting findings to actionable, concrete issues and requiring repository-rule context when applicable.
  • observed — Modified behavior in .greptile/config.json: Adds seven scoped rules covering backend logging, database migrations, managed files, test storage, frontend design and workspace ownership, E2E tests, and GitHub Actions workflows, with assigned severity levels.
  • observed — Modified behavior in .greptile/files.json: Adds a files configuration array mapping guidance documents to descriptions. Backend, frontend, test, E2E, design, and work-identity-model entries include scopes limiting their applicability; the work-identity-model scope covers specified backend, frontend, and test filename patterns.
🚥 Pre-merge checks | ✅ 8
✅ Passed checks (8 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately and concisely describes the repository-specific Greptile review configuration added by this pull request.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
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.
Prks Engineering Invariants ✅ Passed PASS: The PR changes only .greptile/config.json and .greptile/files.json. Both files are valid JSON and all referenced context files exist. The configured rules reinforce, rather than conflict wit…
Ui Design Contract ✅ Passed PASS: The authoritative PR diff changes only .greptile/config.json and .greptile/files.json. It contains no frontend source, UI, or user-visible interaction changes, so the UI design contract chec…
Offline And Sync Coherence ✅ Passed PASS: The review-scoped diff adds only .greptile/config.json and .greptile/files.json. It changes review guidance and context, not application offline, service-worker, persistence, or sync behavio…
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

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

Comment thread .greptile/files.json
Comment on lines +17 to +19
"path": "frontend/AGENTS.md",
"description": "Frontend runtime, workspace, TabContext, navigation, offline/PWA, interaction, and cross-boundary behavior invariants.",
"scope": ["frontend/**"]

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Remediation recommended

1. Backend sync reviews miss contracts 🐞 Bug ≡ Correctness

The frontend/AGENTS.md context is scoped exclusively to frontend/**, although
backend/AGENTS.md requires its offline/PWA contract and additional sync documents for backend sync
work. Backend-only changes to sync handlers and durable-operation behavior therefore omit the shared
contract that governs their correctness.
Agent Prompt
## Issue description
Backend sync reviews do not receive the shared frontend and offline/local-first contracts that `backend/AGENTS.md` explicitly requires.

## Fix Focus Areas
- .greptile/files.json[17-19]
- backend/AGENTS.md[7-19]

## Recommended Fix
Expand the scoped context for backend sync surfaces to include `frontend/AGENTS.md`, and add scoped entries for `docs/agent-context/sync-map.md`, `docs/agent-rules/offline-pwa.md`, and `docs/local-first-rollout-status.md`. Use backend sync and durable-operation path patterns so unrelated backend reviews do not load these documents.

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools

Comment thread .greptile/files.json
Comment on lines +40 to +43
"backend/db_*.py",
"backend/**/*work*.py",
"backend/**/*manifestation*.py",
"backend/**/*asset*.py",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Remediation recommended

2. Model reviews lose design context 🐞 Bug ≡ Correctness

The docs/work-identity-model.md scopes rely mainly on filenames containing work,
manifestation, or asset, rather than all implementation surfaces that use the model. Known
model-sensitive files such as backend/backup_restore.py, tests/test_backup_restore.py, and
generic E2E modules consequently receive no design context when changed.
Agent Prompt
## Issue description
The work-identity design context is selected by narrow filename patterns that exclude existing implementation and test files which exercise that model.

## Fix Focus Areas
- .greptile/files.json[39-47]
- backend/backup_restore.py[1249-1249]
- tests/e2e/test_app.py[1199-1223]

## Recommended Fix
Extend the document's scope with the existing backup/restore and generic E2E paths that implement or verify work identity. Audit current references to the model and its identifiers, then add each applicable path or a suitably bounded directory glob so model changes consistently receive this context.

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools

Comment thread .greptile/files.json
Comment on lines +31 to +34
{
"path": "tests/e2e/AGENTS.md",
"description": "Browser E2E isolation, synchronization, tiering, performance, and debugging policy.",
"scope": ["tests/e2e/**"]

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Remediation recommended

3. Tour reviews miss safety rules 🐞 Bug ≡ Correctness

The context list registers the general test and E2E instructions but omits
tests/ux_tour/AGENTS.md. Changes under tests/ux_tour/** therefore lack the suite-specific
artifact retention, isolation, discovery, and user-interaction requirements mandated by the
repository routing rules.
Agent Prompt
## Issue description
Greptile does not receive the dedicated UX Interaction Tour instructions when reviewing that test suite.

## Fix Focus Areas
- .greptile/files.json[26-35]
- tests/ux_tour/AGENTS.md[1-37]

## Recommended Fix
Add `tests/ux_tour/AGENTS.md` to the context files with scope `tests/ux_tour/**`. Keep the existing general `tests/AGENTS.md` entry so both the base test policy and the suite-specific refinements apply.

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools

@Fooftilly Fooftilly left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

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

Review (non-blocking)

One config conflict: commentTypes enables "style" while instructions (and this PR’s intent) ask Greptile not to leave generic formatting/naming/style comments. Greptile’s docs treat commentTypes as the hard category filter and recommend ["logic", "syntax"] to avoid style nitpicks.

Schema, referenced authority files, rule text vs PRKS AGENTS/DESIGN/SECURITY, and ignore/scope patterns otherwise look sound. Leaving Qodo’s separate files.json scope notes alone.

Comment thread .greptile/config.json
@@ -0,0 +1,57 @@
{
"strictness": 2,
"commentTypes": ["logic", "syntax", "style"],

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

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

commentTypes includes "style", but instructions forbid generic formatting/naming/stylistic comments, and Greptile’s nitpickiness docs say omit "style" (use ["logic", "syntax"]) for “code quality without style nitpicks.” Prefer dropping "style" so the category filter matches the stated PRKS review policy; keeping it fights the noise-reduction goal of this config.

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9ef7b6d062

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .greptile/files.json
{
"path": "backend/AGENTS.md",
"description": "Backend persistence, privacy-safe logging, filesystem, backup/restore, database, indexing, durability, and cross-domain invariants.",
"scope": ["backend/**"]

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Include production rules for test-only changes

When a PR changes only a test such as tests/test_backup_restore.py, this scope excludes backend/AGENTS.md, so Greptile will not receive the backend persistence rules that govern the behavior under test. The analogous frontend/** scope has the same problem for frontend/offline tests; add the corresponding test paths to these scopes, or leave the production authority files unscoped, so test-only reviews receive the required domain invariants.

AGENTS.md reference: AGENTS.md:L26-L26

Useful? React with 👍 / 👎.

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.

1 participant