Skip to content

ci(greptile): require manual review requests - #11

Merged
scttbnsn merged 1 commit into
dev/repository-standardsfrom
ci/greptile-manual-only
Aug 14, 2026
Merged

ci(greptile): require manual review requests#11
scttbnsn merged 1 commit into
dev/repository-standardsfrom
ci/greptile-manual-only

Conversation

@scttbnsn

@scttbnsn scttbnsn commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add the organization Greptile config with automatic reviews disabled
  • validate the config as JSON and pin its exact manual-only policy in the standards gate
  • leave the vendor integration disabled and make no caller or path-policy changes

Verification

  • RED: python3 .github/tests/greptile_config_contract_test.py failed because greptile.json was absent
  • GREEN: focused contract and all 12 community-health contract tests
  • Python compile plus YAML/JSON parse
  • markdownlint-cli2 0.23.2, actionlint 1.7.12, and zizmor with no findings
  • git diff --check

Summary by CodeRabbit

  • Chores
    • Added repository configuration to automatically skip certain review checks.
    • Added validation to ensure the configuration remains correctly formatted and unchanged.
  • Tests
    • Added automated contract coverage for the review configuration.

@coderabbitai

coderabbitai Bot commented Aug 14, 2026

Copy link
Copy Markdown

Review Change Stack

Important

Review skipped

No new commits to review since the last review.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: a69a0829-5e15-49d4-9a34-d33234dce186

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: b8b399e1-12b2-44d8-882f-6b67ef595b9c

📥 Commits

Reviewing files that changed from the base of the PR and between 71ba4ae and fc61df3.

📒 Files selected for processing (3)
  • .github/tests/greptile_config_contract_test.py
  • .github/workflows/standards-validation.yml
  • greptile.json

📝 Walkthrough

Walkthrough

The change adds greptile.json with skipReview set to "AUTOMATIC", adds a unittest contract for the exact configuration, and runs that test in the standards validation workflow.

Changes

Greptile configuration

Layer / File(s) Summary
Configuration contract
greptile.json, .github/tests/greptile_config_contract_test.py
Adds the skipReview configuration and verifies that the JSON contains exactly {"skipReview": "AUTOMATIC"}.
Workflow validation
.github/workflows/standards-validation.yml
Runs the Greptile configuration contract test during standards validation.

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

Merge Risk: ⚪ Minimal · up to fc61d

This PR adds a narrowly scoped manual-review-only configuration and validates it through the repository’s checks; no actionable merge-blocking risk remains.

Possibly related PRs

  • CodesWhat/.github#9: Updates the same standards validation workflow with a different Greptile configuration contract test.

Suggested reviewers: biggest-littlest, alargecompany

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
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.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the main change: configuring Greptile to require manual review requests.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ci/greptile-manual-only

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

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

@ALARGECOMPANY

Copy link
Copy Markdown
Member

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Aug 14, 2026

Copy link
Copy Markdown
⚠️ Action not completed

Already reviewed.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@biggest-littlest biggest-littlest left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Verified the exact manual-only config contract and green standards gates.

@scttbnsn
scttbnsn merged commit 22feaaa into dev/repository-standards Aug 14, 2026
4 checks passed
scttbnsn added a commit that referenced this pull request Aug 14, 2026
* docs(standards): add organization health defaults

Adds organization-wide community health defaults, validation, ownership, contribution guidance, security policy, and hardened workflow checks.

* ci(greptile): require manual review requests (#11)
scttbnsn added a commit that referenced this pull request Aug 14, 2026
* docs(standards): add organization health defaults

Adds organization-wide community health defaults, validation, ownership, contribution guidance, security policy, and hardened workflow checks.

* ci(greptile): require manual review requests (#11)

* ci(workflows): add reusable CI foundation (#13)

* ci(workflows): add reusable CI foundation

* fix(workflows): harden reusable release contracts
scttbnsn added a commit that referenced this pull request Aug 14, 2026
* docs(standards): add organization health defaults

Adds organization-wide community health defaults, validation, ownership, contribution guidance, security policy, and hardened workflow checks.

* ci(greptile): require manual review requests (#11)

* ci(workflows): add reusable CI foundation (#13)

* ci(workflows): add reusable CI foundation

* fix(workflows): harden reusable release contracts

* feat(quality): standardize long-run reporting (#15)

* feat(quality): add normalized reporting foundation

* test(quality): run reporting contracts in standards validation

* fix(quality): align report validator with schema

* test(quality): verify GitHub integration outputs

* fix(quality): enforce report contract boundaries

* fix(quality): decode reports as utf-8

* test(quality): pin fixture encoding
@scttbnsn
scttbnsn deleted the ci/greptile-manual-only branch August 14, 2026 21:49
scttbnsn added a commit that referenced this pull request Aug 15, 2026
* docs(standards): add organization health defaults

Adds organization-wide community health defaults, validation, ownership, contribution guidance, security policy, and hardened workflow checks.

* ci(greptile): require manual review requests (#11)

* ci(workflows): add reusable CI foundation (#13)

* ci(workflows): add reusable CI foundation

* fix(workflows): harden reusable release contracts

* feat(quality): standardize long-run reporting (#15)

* feat(quality): add normalized reporting foundation

* test(quality): run reporting contracts in standards validation

* fix(quality): align report validator with schema

* test(quality): verify GitHub integration outputs

* fix(quality): enforce report contract boundaries

* fix(quality): decode reports as utf-8

* test(quality): pin fixture encoding

* ci(profile): make asset generation read-only (#10)

* ci(profile): make asset generation read-only

* fix(profile): restrict asset validation egress

* ci(review): add deduplicated Greptile summon (#9)

* ci(review): add deduplicated Greptile summon

* fix(review): serialize exact-head Greptile summons

* test(review): lock Greptile security controls
scttbnsn added a commit that referenced this pull request Aug 16, 2026
* docs(standards): add organization health defaults

Adds organization-wide community health defaults, validation, ownership, contribution guidance, security policy, and hardened workflow checks.

* ci(greptile): require manual review requests (#11)

* ci(workflows): add reusable CI foundation (#13)

* ci(workflows): add reusable CI foundation

* fix(workflows): harden reusable release contracts

* feat(quality): standardize long-run reporting (#15)

* feat(quality): add normalized reporting foundation

* test(quality): run reporting contracts in standards validation

* fix(quality): align report validator with schema

* test(quality): verify GitHub integration outputs

* fix(quality): enforce report contract boundaries

* fix(quality): decode reports as utf-8

* test(quality): pin fixture encoding

* ci(profile): make asset generation read-only (#10)

* ci(profile): make asset generation read-only

* fix(profile): restrict asset validation egress

* ci(review): add deduplicated Greptile summon (#9)

* ci(review): add deduplicated Greptile summon

* fix(review): serialize exact-head Greptile summons

* test(review): lock Greptile security controls

* ci(workflows): add run-test and run-lint toggles to go-ci (#19)

go-ci.yml's test and lint jobs ran unconditionally, so a Go-less repo
that only wants the language-agnostic workflow-security (zizmor) job
couldn't call it. Add run-test/run-lint boolean inputs, mirroring the
existing run-govulncheck/run-workflow-security/etc. toggle pattern,
defaulting to true so existing callers see no behavior change.

Fixes: #18
scttbnsn added a commit that referenced this pull request Aug 16, 2026
* docs(standards): add organization health defaults

Adds organization-wide community health defaults, validation, ownership, contribution guidance, security policy, and hardened workflow checks.

* ci(greptile): require manual review requests (#11)

* ci(workflows): add reusable CI foundation (#13)

* ci(workflows): add reusable CI foundation

* fix(workflows): harden reusable release contracts

* feat(quality): standardize long-run reporting (#15)

* feat(quality): add normalized reporting foundation

* test(quality): run reporting contracts in standards validation

* fix(quality): align report validator with schema

* test(quality): verify GitHub integration outputs

* fix(quality): enforce report contract boundaries

* fix(quality): decode reports as utf-8

* test(quality): pin fixture encoding

* ci(profile): make asset generation read-only (#10)

* ci(profile): make asset generation read-only

* fix(profile): restrict asset validation egress

* ci(review): add deduplicated Greptile summon (#9)

* ci(review): add deduplicated Greptile summon

* fix(review): serialize exact-head Greptile summons

* test(review): lock Greptile security controls

* ci(workflows): add run-test and run-lint toggles to go-ci (#19)

go-ci.yml's test and lint jobs ran unconditionally, so a Go-less repo
that only wants the language-agnostic workflow-security (zizmor) job
couldn't call it. Add run-test/run-lint boolean inputs, mirroring the
existing run-govulncheck/run-workflow-security/etc. toggle pattern,
defaulting to true so existing callers see no behavior change.

Fixes: #18

* ci(workflows): add module-directory input to node-ci (#22)

* ci(workflows): add module-directory input to node-ci

Mirrors go-ci's module-directory idiom: a string input defaulting to
"." threaded into each fixed script's env as MODULE_DIRECTORY, so a
repo with several independently-gated Node projects can call node-ci
once per project. The default preserves current behavior for existing
callers.

Extends the reusable CI contract test to assert the new input and its
threading, matching how run-test/run-lint were added for go-ci in #19.

* test(workflows): assert module-directory threads into all three node jobs
scttbnsn added a commit that referenced this pull request Aug 16, 2026
* docs(standards): add organization health defaults

Adds organization-wide community health defaults, validation, ownership, contribution guidance, security policy, and hardened workflow checks.

* ci(greptile): require manual review requests (#11)

* ci(workflows): add reusable CI foundation (#13)

* ci(workflows): add reusable CI foundation

* fix(workflows): harden reusable release contracts

* feat(quality): standardize long-run reporting (#15)

* feat(quality): add normalized reporting foundation

* test(quality): run reporting contracts in standards validation

* fix(quality): align report validator with schema

* test(quality): verify GitHub integration outputs

* fix(quality): enforce report contract boundaries

* fix(quality): decode reports as utf-8

* test(quality): pin fixture encoding

* ci(profile): make asset generation read-only (#10)

* ci(profile): make asset generation read-only

* fix(profile): restrict asset validation egress

* ci(review): add deduplicated Greptile summon (#9)

* ci(review): add deduplicated Greptile summon

* fix(review): serialize exact-head Greptile summons

* test(review): lock Greptile security controls

* ci(workflows): add run-test and run-lint toggles to go-ci (#19)

go-ci.yml's test and lint jobs ran unconditionally, so a Go-less repo
that only wants the language-agnostic workflow-security (zizmor) job
couldn't call it. Add run-test/run-lint boolean inputs, mirroring the
existing run-govulncheck/run-workflow-security/etc. toggle pattern,
defaulting to true so existing callers see no behavior change.

Fixes: #18

* ci(workflows): add module-directory input to node-ci (#22)

* ci(workflows): add module-directory input to node-ci

Mirrors go-ci's module-directory idiom: a string input defaulting to
"." threaded into each fixed script's env as MODULE_DIRECTORY, so a
repo with several independently-gated Node projects can call node-ci
once per project. The default preserves current behavior for existing
callers.

Extends the reusable CI contract test to assert the new input and its
threading, matching how run-test/run-lint were added for go-ci in #19.

* test(workflows): assert module-directory threads into all three node jobs

* docs(onboarding): record the qlty alignment baseline (#24)
scttbnsn added a commit that referenced this pull request Aug 16, 2026
* docs(standards): add organization health defaults

Adds organization-wide community health defaults, validation, ownership, contribution guidance, security policy, and hardened workflow checks.

* ci(greptile): require manual review requests (#11)

* ci(workflows): add reusable CI foundation (#13)

* ci(workflows): add reusable CI foundation

* fix(workflows): harden reusable release contracts

* feat(quality): standardize long-run reporting (#15)

* feat(quality): add normalized reporting foundation

* test(quality): run reporting contracts in standards validation

* fix(quality): align report validator with schema

* test(quality): verify GitHub integration outputs

* fix(quality): enforce report contract boundaries

* fix(quality): decode reports as utf-8

* test(quality): pin fixture encoding

* ci(profile): make asset generation read-only (#10)

* ci(profile): make asset generation read-only

* fix(profile): restrict asset validation egress

* ci(review): add deduplicated Greptile summon (#9)

* ci(review): add deduplicated Greptile summon

* fix(review): serialize exact-head Greptile summons

* test(review): lock Greptile security controls

* ci(workflows): add run-test and run-lint toggles to go-ci (#19)

go-ci.yml's test and lint jobs ran unconditionally, so a Go-less repo
that only wants the language-agnostic workflow-security (zizmor) job
couldn't call it. Add run-test/run-lint boolean inputs, mirroring the
existing run-govulncheck/run-workflow-security/etc. toggle pattern,
defaulting to true so existing callers see no behavior change.

Fixes: #18

* ci(workflows): add module-directory input to node-ci (#22)

* ci(workflows): add module-directory input to node-ci

Mirrors go-ci's module-directory idiom: a string input defaulting to
"." threaded into each fixed script's env as MODULE_DIRECTORY, so a
repo with several independently-gated Node projects can call node-ci
once per project. The default preserves current behavior for existing
callers.

Extends the reusable CI contract test to assert the new input and its
threading, matching how run-test/run-lint were added for go-ci in #19.

* test(workflows): assert module-directory threads into all three node jobs

* docs(onboarding): record the qlty alignment baseline (#24)

* docs(onboarding): align with the codified standards registry (#26)

* docs(onboarding): align with the codified standards registry

- docs(onboarding): name Codecov as the coverage cloud; Qlty Cloud App and
  maintainability badge stay, checks stay non-required
- docs(onboarding): trivy deprecated in favor of Grype, including the qlty
  plugin blocks in the two reference configs (drydock#753, portwing#135)
- docs(onboarding): CodeRabbit free Pro is public-only; private repos use
  cross-account human review
- docs(onboarding): add the greptile.json contract and the label-gated
  second-opinion caller

* docs(onboarding): reword the CodeRabbit private-repo claim as org policy

- docs(onboarding): free-plan private-repo reviews exist but are
  rate-limited and never fired here; the skip is policy, not a plan fact
- docs(onboarding): pair the Greptile caller with auto-applied CodeRabbit
  labeling so the second-opinion label is criteria-driven
scttbnsn added a commit that referenced this pull request Aug 16, 2026
* docs(standards): add organization health defaults

Adds organization-wide community health defaults, validation, ownership, contribution guidance, security policy, and hardened workflow checks.

* ci(greptile): require manual review requests (#11)

* ci(workflows): add reusable CI foundation (#13)

* ci(workflows): add reusable CI foundation

* fix(workflows): harden reusable release contracts

* feat(quality): standardize long-run reporting (#15)

* feat(quality): add normalized reporting foundation

* test(quality): run reporting contracts in standards validation

* fix(quality): align report validator with schema

* test(quality): verify GitHub integration outputs

* fix(quality): enforce report contract boundaries

* fix(quality): decode reports as utf-8

* test(quality): pin fixture encoding

* ci(profile): make asset generation read-only (#10)

* ci(profile): make asset generation read-only

* fix(profile): restrict asset validation egress

* ci(review): add deduplicated Greptile summon (#9)

* ci(review): add deduplicated Greptile summon

* fix(review): serialize exact-head Greptile summons

* test(review): lock Greptile security controls

* ci(workflows): add run-test and run-lint toggles to go-ci (#19)

go-ci.yml's test and lint jobs ran unconditionally, so a Go-less repo
that only wants the language-agnostic workflow-security (zizmor) job
couldn't call it. Add run-test/run-lint boolean inputs, mirroring the
existing run-govulncheck/run-workflow-security/etc. toggle pattern,
defaulting to true so existing callers see no behavior change.

Fixes: #18

* ci(workflows): add module-directory input to node-ci (#22)

* ci(workflows): add module-directory input to node-ci

Mirrors go-ci's module-directory idiom: a string input defaulting to
"." threaded into each fixed script's env as MODULE_DIRECTORY, so a
repo with several independently-gated Node projects can call node-ci
once per project. The default preserves current behavior for existing
callers.

Extends the reusable CI contract test to assert the new input and its
threading, matching how run-test/run-lint were added for go-ci in #19.

* test(workflows): assert module-directory threads into all three node jobs

* docs(onboarding): record the qlty alignment baseline (#24)

* docs(onboarding): align with the codified standards registry (#26)

* docs(onboarding): align with the codified standards registry

- docs(onboarding): name Codecov as the coverage cloud; Qlty Cloud App and
  maintainability badge stay, checks stay non-required
- docs(onboarding): trivy deprecated in favor of Grype, including the qlty
  plugin blocks in the two reference configs (drydock#753, portwing#135)
- docs(onboarding): CodeRabbit free Pro is public-only; private repos use
  cross-account human review
- docs(onboarding): add the greptile.json contract and the label-gated
  second-opinion caller

* docs(onboarding): reword the CodeRabbit private-repo claim as org policy

- docs(onboarding): free-plan private-repo reviews exist but are
  rate-limited and never fired here; the skip is policy, not a plan fact
- docs(onboarding): pair the Greptile caller with auto-applied CodeRabbit
  labeling so the second-opinion label is criteria-driven

* chore(repo): meet our own onboarding checklist (#28)

* chore(repo): meet our own onboarding checklist

- chore(repo): MIT LICENSE (infrastructure repos are MIT; products AGPL)
- docs(repo): root AGENTS.md with repo-specific rules and validation
- build(hooks): lefthook with commit-msg + pre-push mirroring CI via
  scripts/validate.sh

* fix(hooks): tighten the commit-msg exemptions and mirror zizmor's CI flags

- fix(hooks): merge/revert exemptions match git's generated subjects only,
  so a hand-typed 'Merge ...' subject no longer bypasses the check
- fix(hooks): require a non-whitespace character after the colon
- fix(hooks): zizmor runs --no-online-audits locally, matching CI's
  online-audits: false for local/CI parity

* fix(hooks): exempt only git-generated merge and revert subjects
scttbnsn added a commit that referenced this pull request Aug 17, 2026
* docs(standards): add organization health defaults

Adds organization-wide community health defaults, validation, ownership, contribution guidance, security policy, and hardened workflow checks.

* ci(greptile): require manual review requests (#11)

* ci(workflows): add reusable CI foundation (#13)

* ci(workflows): add reusable CI foundation

* fix(workflows): harden reusable release contracts

* feat(quality): standardize long-run reporting (#15)

* feat(quality): add normalized reporting foundation

* test(quality): run reporting contracts in standards validation

* fix(quality): align report validator with schema

* test(quality): verify GitHub integration outputs

* fix(quality): enforce report contract boundaries

* fix(quality): decode reports as utf-8

* test(quality): pin fixture encoding

* ci(profile): make asset generation read-only (#10)

* ci(profile): make asset generation read-only

* fix(profile): restrict asset validation egress

* ci(review): add deduplicated Greptile summon (#9)

* ci(review): add deduplicated Greptile summon

* fix(review): serialize exact-head Greptile summons

* test(review): lock Greptile security controls

* ci(workflows): add run-test and run-lint toggles to go-ci (#19)

go-ci.yml's test and lint jobs ran unconditionally, so a Go-less repo
that only wants the language-agnostic workflow-security (zizmor) job
couldn't call it. Add run-test/run-lint boolean inputs, mirroring the
existing run-govulncheck/run-workflow-security/etc. toggle pattern,
defaulting to true so existing callers see no behavior change.

Fixes: #18

* ci(workflows): add module-directory input to node-ci (#22)

* ci(workflows): add module-directory input to node-ci

Mirrors go-ci's module-directory idiom: a string input defaulting to
"." threaded into each fixed script's env as MODULE_DIRECTORY, so a
repo with several independently-gated Node projects can call node-ci
once per project. The default preserves current behavior for existing
callers.

Extends the reusable CI contract test to assert the new input and its
threading, matching how run-test/run-lint were added for go-ci in #19.

* test(workflows): assert module-directory threads into all three node jobs

* docs(onboarding): record the qlty alignment baseline (#24)

* docs(onboarding): align with the codified standards registry (#26)

* docs(onboarding): align with the codified standards registry

- docs(onboarding): name Codecov as the coverage cloud; Qlty Cloud App and
  maintainability badge stay, checks stay non-required
- docs(onboarding): trivy deprecated in favor of Grype, including the qlty
  plugin blocks in the two reference configs (drydock#753, portwing#135)
- docs(onboarding): CodeRabbit free Pro is public-only; private repos use
  cross-account human review
- docs(onboarding): add the greptile.json contract and the label-gated
  second-opinion caller

* docs(onboarding): reword the CodeRabbit private-repo claim as org policy

- docs(onboarding): free-plan private-repo reviews exist but are
  rate-limited and never fired here; the skip is policy, not a plan fact
- docs(onboarding): pair the Greptile caller with auto-applied CodeRabbit
  labeling so the second-opinion label is criteria-driven

* chore(repo): meet our own onboarding checklist (#28)

* chore(repo): meet our own onboarding checklist

- chore(repo): MIT LICENSE (infrastructure repos are MIT; products AGPL)
- docs(repo): root AGENTS.md with repo-specific rules and validation
- build(hooks): lefthook with commit-msg + pre-push mirroring CI via
  scripts/validate.sh

* fix(hooks): tighten the commit-msg exemptions and mirror zizmor's CI flags

- fix(hooks): merge/revert exemptions match git's generated subjects only,
  so a hand-typed 'Merge ...' subject no longer bypasses the check
- fix(hooks): require a non-whitespace character after the colon
- fix(hooks): zizmor runs --no-online-audits locally, matching CI's
  online-audits: false for local/CI parity

* fix(hooks): exempt only git-generated merge and revert subjects

* docs(community): org-default code of conduct + community checklist (#30)

* docs(community): add org-default code of conduct and community checklist items

CODE_OF_CONDUCT.md is Contributor Covenant 2.0 (drydock's tuned copy) with
the org contact security@codeswhat.com, cascading to every repo without a
local one. Onboarding checklist gains the cascade-first rule and the
Discussions on/off split for product vs meta repos.

* test(community): assert the code of conduct in the community-health contract
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.

3 participants