Repository navigation
Review for essential changes and single source of truth - #286
Merged
Merged
Conversation
- simplicity: also flags changes the task does not need - new single-source reviewer: one home per fact, missed homes - code-structure: duplication moves to single-source - code-functionality: checks other call paths to changed behaviour - fixer changes only what a finding needs
Each concern now has one reviewer: concurrency stays with performance, boolean parameters and long functions with readability, re-derived values with single-source, other entry points with code-functionality. Drops repeated text within prompts and the stale README exception in orca.md.
…cern per function
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Reviews now check two more things:
The reviewer prompts were then checked one by one, and for overlap, by separate review agents. This PR also fixes what they found.
New checks
simplicitychecks that each hunk is needed for the task (the user's request in the final review). It flags drive-by refactors, renames, reformatting and unrelated fixes. It does not flag what keeps the repo consistent: updated callers, removing code left unused, tests, docs, formatter output, fixes for review findings, or work another task of the plan owns. The slug is unchanged, sosimplicity.mdoverride files still work.single-sourcereviewer. It searches the repo for other places that encode a fact the change adds, alters or removes. It reports new copies, places left on the old version, contradicting rules and repeated explanations. It ignores duplication the change does not touch, and plans, research notes and superseded ADR text.code-functionalitychecks that the change delivers the whole task, that every caller of changed behaviour still works, and what a failure part-way leaves behind.One owner per concern
code-structuretosingle-source; premature abstraction stays withsimplicity.code-functionality.performancekeeps contention and parallelism: it skips code with no performance implications, where races still happen.single-source's; a path the new behaviour does not reach iscode-functionality's..orca/reviewers/orca.mddrops rules built-in reviewers already cover.Other fixes
testwhen no test file changed, since missing tests are its job.testalso checks that a test can fail, is deterministic, and that removed or weakened tests don't lose coverage.security: an argument vector (os.proc) is the fix for shell injection, not a finding; input is untrusted only if someone other than the operator or author can set it. Adds argument injection and weak crypto.scala-fp: runs on.sctoo; loads thedirect-style-scalaskill when available; no longer contradicts it (AtomicReferencewith pure updates,.catchingfor foreign exceptions); adds fork ownership,ResourceScope, raw JDK concurrency andnull.code-structure: no findings cap; judges only the structure the change adds; follows the repo's file convention instead of assuming one type per file.orca.md: matchesAGENTS.mdagain (sanctioned mutable state, subprocess exceptions), adds run/backend vocabulary, failure types, listener andWorkspaceWrite.checkrules, and now also runs on.mdand.propertieschanges.initial-review.md: a reviewer may read code its scope points to.fix.md: the fixer changes only what a finding needs, at every location it lists.AGENTS.mdanddocs/using/reviewers.mdupdated.single-sourcewill be picked for almost every task, andorca.mdnow runs on doc changes, so runs cost more reviewer turns.flowtests pass.