← GINA CodeRabbit CuratorCONTENT HISTORY

Update to GINA CodeRabbit Curator

Snapshot Sep 30, 2026 · 23:14 UTC · version 1.0.0

Collection source: not recorded for this historical snapshot.

WHAT CHANGED · RULE-BASED ANALYSIS

First saved snapshot

No earlier snapshot is available to establish a change.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Curate CodeRabbit learnings CSV exports. Use when Codex needs to review, merge, globalize, de-duplicate, scope, remove one-off rules, document superseded or contradictory rules, create a git-tracked cleanup draft, or generate review reports for CodeRabbit learnings databases such as learnings.csv.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 229
    },
    {
      "relative_path": "scripts/__pycache__/build_review_index.cpython-312.pyc",
      "size_in_bytes": 2257
    },
    {
      "relative_path": "scripts/__pycache__/generate_merged_rules_report.cpython-312.pyc",
      "size_in_bytes": 4224
    },
    {
      "relative_path": "scripts/__pycache__/validate_learnings_csv.cpython-312.pyc",
      "size_in_bytes": 3464
    },
    {
      "relative_path": "scripts/build_review_index.py",
      "size_in_bytes": 1000
    },
    {
      "relative_path": "scripts/generate_merged_rules_report.py",
      "size_in_bytes": 2208
    },
    {
      "relative_path": "scripts/validate_learnings_csv.py",
      "size_in_bytes": 2100
    }
  ],
  "name": "coderabbit-learnings-curator",
  "skill_md_contents": "---\nname: coderabbit-learnings-curator\ndescription: Curate CodeRabbit learnings CSV exports. Use when Codex needs to review, merge, globalize, de-duplicate, scope, remove one-off rules, document superseded or contradictory rules, create a git-tracked cleanup draft, or generate review reports for CodeRabbit learnings databases such as learnings.csv.\n---\n\n# CodeRabbit Learnings Curator\n\n## Goal\n\nTurn a raw CodeRabbit learnings export into an auditable first draft that a reviewer can inspect, correct, and import back into CodeRabbit.\n\n## Required Outputs\n\nCreate these files in a local git repo:\n\n- `learnings.csv`: curated draft using the original CSV schema.\n- `review-index.md`: numbered raw export, one original rule per section.\n- `merged-rules.md`: for each merged rule, list original rules first and the resulting merged rule after.\n- `cleanup-notes.md`: summarize merge decisions, removals, scope changes, contradictions, and questions.\n\nCommit the untouched raw export before editing. Keep curated changes uncommitted unless the user asks for a commit.\n\n## Workflow\n\n1. Copy or move the raw `learnings.csv` into a temporary local git repo.\n2. Commit the raw CSV as the baseline.\n3. Run `scripts/build_review_index.py` to create `review-index.md`.\n4. Inspect rules by repository, file pattern, usage count, and repeated wording.\n5. Draft curated rows with deliberate scope:\n   - `GLOBAL`: use only for rules that are truly independent of company/repo context.\n   - `GINA Solution`: use for cross-repo company rules.\n   - Repository name: use for local implementation facts or conventions.\n6. Merge only when the resulting rule is clearer and still technically true.\n7. Remove one-off rules unless they document security, external contracts, explicit team policy, contradictions, or recurring false positives.\n8. Never silently delete contradictory rules. Keep the current rule, remove or supersede the older rule, and document the decision in `cleanup-notes.md`.\n9. Prefer preserving author intent over enforcing a global style. For example, say to keep explicit-property or positional-only record style as the author intended instead of converting everything to one style.\n10. Run `scripts/generate_merged_rules_report.py` after updating `learnings.csv`.\n11. Run `scripts/validate_learnings_csv.py` before reporting status.\n\n## Curation Heuristics\n\nTreat a rule as a good global or company-scope candidate when it appears in multiple repositories, names a shared library, describes shared CI/build behavior, or captures a company-wide review preference.\n\nKeep a rule repository-scoped when it depends on a specific module, route, framework version, data contract, UI behavior, or known future task in that repo.\n\nRemove or deprioritize rules with low usage when they describe a single PR, one exact file, or temporary implementation detail. Keep low-usage rules when they prevent security regressions or explain external behavior the reviewer cannot infer from code.\n\nFor test conventions, split mixed rules into narrow rules. Avoid combining framework/tooling choices, `sut` naming, `[Fact(DisplayName=...)]`, and fixture-field placement unless the same scope really owns all of them.\n\nFor review reports, show originals before merged output so the human reviewer can judge whether the merge preserved meaning.\n\n## Scripts\n\nUse these scripts from the skill folder:\n\n```bash\npython scripts/build_review_index.py learnings.csv review-index.md\npython scripts/generate_merged_rules_report.py learnings.csv review-index.md merged-rules.md\npython scripts/validate_learnings_csv.py learnings.csv --removed-sources 104,151,152,169 --removed-sources 121,140,145,148,149\n```\n\n`--removed-sources` is optional and can be repeated for source-id groups that the reviewer asked to remove.\n"
}

SHA-256 of public snapshot: c07577395eef33cdd48437faff9176a9c37df2c97ea003fbacd353558cde9c89