Whether you lead engineering or write code, you’ve probably noticed how much software development has changed over the past few years. AI has reshaped the pace, cost structure, architecture approaches, talent landscape, and security strategies of software engineering. What has remained unchanged, though, is that companies and, ultimately, developers must still own the code they ship, even when it comes from autonomous AI agents.
The widespread use of AI to generate code and documentation, scaffold tests, and refactor existing logic has created a new dynamic in project delivery. Team velocity now depends less on how fast engineers can write code and more on how effectively they can verify it.
This article outlines practical strategies and decision-making frameworks that help teams keep software quality in step with AI acceleration.
Why AI-generated code still needs human oversight
AI can produce vast amounts of code in seconds, but that speed comes with a higher defect rate. In a December 2025 analysis of 470 open-source pull requests (PRs), CodeRabbit found that AI-co-authored PRs contained about 1.7 times as many issues as human-only PRs. Logic and correctness issues were 75% more common.
A May 2026 report from Model Evaluation and Threat Research (METR) points in the same direction. Frontier AI agents still show significantly worse judgment and reliability than human experts, especially on open-ended tasks where progress is hard to verify cheaply. An earlier METR analysis found that repository maintainers would not have merged roughly half of the test-passing PRs that AI agents wrote between mid-2024 and late 2025.
These studies predate the latest models, yet human-in-the-loop oversight remains critical as of late 2026. Engineers must apply rigorous verification across three dimensions:
- Architectural and product fit: Ensuring new logic aligns with broader systemic patterns and product requirements.
- Security and maintainability: Preventing hidden vulnerabilities and technical debt that raise long-term maintenance costs.
- Edge cases and assumptions: Identifying unresolved edge cases and implicit assumptions embedded in AI-generated code.
Yet human verification capacity does not scale to keep pace with the speed at which AI can produce code. A June 2026 GitLab survey of 1,528 developers and technology buyers supports this view. Of the respondents, 85% agreed that AI has shifted the bottleneck from writing code to reviewing and validating it. How well a team manages this shift depends on its feedback loops and modes of AI use.
No two teams are the same: feedback loops and AI use modes
The strength of a team’s feedback loops shapes whether AI accelerates delivery or only produces more code to fix.
- Weak feedback loops: For teams with weak review processes, unclear ownership, poor tests, and slow deployments, more code typically means a heavier review burden and more rework. The extra code does not translate into a proportional increase in value.
- Strong feedback loops: Teams with solid reviews, clear ownership, reliable tests, and fast deployments can use AI to move and learn faster. These teams use tests, continuous integration (CI), code reviews, and production signals as data to reduce uncertainty, identify issues, and adjust early.
How teams use AI matters as well. Two extremes, where teams either over-restrict AI use or rely on AI too much, carry the most risk.
Over-restriction of AI use
Banning or severely limiting AI tools results in missed opportunities across development, testing, debugging, evidence-gathering, and exploration. Teams that fail to capitalize on AI capabilities often fall behind competitors that adopt AI well. In certain workflows such as prototyping, not using AI can effectively put professionals behind vibe-coders.
Over-reliance on AI
Unquestioningly trusting AI output leads to review fatigue, hidden assumptions, more bugs, and costly downstream rework. The same GitLab survey illustrates the risk: 82% of respondents said AI-generated code poses a risk of creating a new form of technical debt that their organizations are not yet prepared to manage.
The optimal path is a tailored middle ground where AI accelerates exploration and action, while engineers retain ownership of context, judgment, and verification. Project risk, codebase maturity, quality requirements, and team culture shape where the line falls. As a rule, the stronger a team’s feedback loops, the more autonomy AI can take on.
Using the OODA loop to verify AI output
To keep verification in step with AI-generated code, engineers can adapt a decision-making framework originally introduced by United States Air Force Colonel John Boyd. The framework is known as the Observe, Orient, Decide, Act (OODA) loop.
The OODA Loop is a non-linear framework that breaks decision-making into four continuous, interconnected phases:
- Observe: Gather real-time facts, such as diagnostic data, logs, user reports, and system telemetry.
- Orient: Synthesize incoming data through the lens of project context, business domain logic, architectural rules, and past failure patterns.
- Decide: Formulate testable hypotheses and determine the minimal step needed to validate each one.
- Act: Execute the change (e.g., run a targeted test, apply code, or inspect execution traces) and feed the resulting evidence back into the loop.
Orientation stays with humans
AI tools perform well at Observing, such as summarizing logs, and at Acting, such as writing code or test scripts. Current AI systems still lack human Orientation, however.
Even with strong context engineering, AI cannot fully grasp legacy system trade-offs, unspoken business domain rules, organizational security boundaries, or production histories. In software testing, for instance, this limitation can produce tests that look valid but reuse outdated assumptions or misread the business domain. To prevent such cases, engineers must own context, intent, judgment, and verification.
To keep AI-assisted workflows on course, engineers must use feedback loops to refine their Orientation continuously before approving changes. Automated CI checks, unit and integration tests, code reviews, and production telemetry all feed those loops.
Cut software engineering and design costs by over 50% by engaging thoroughly vetted experts across 15+ global hubs.
Talk to our expertsHow code reviews must evolve for AI-generated code
As AI increases code volume, line-by-line review becomes insufficient. Code review must evolve from simple inspection into risk-based verification.
1. Structured PR descriptions
To streamline human verification and enable faster, more focused reviews, PR authors can explicitly document:
- What code was human-written vs. AI-assisted.
- What specific evidence shows the change is correct.
- Which assumptions remain unresolved or need close inspection by reviewers.
Smaller, more structured PRs free up the time and attention bandwidth needed for effective reviews. The reviewers can use these resources to check the change against broader architecture, conventions, edge cases, security expectations, performance needs, and maintenance costs. This is where human-driven Orientation comes into play, with the in-depth domain, business, and architecture context needed to drive the project in the right direction.
2. Automated checks before review
Automated unit tests, integration runs, and linting pipelines should run before any human reviews the PR. Passing tests provide baseline verification, not proof of correctness. The risk grows when the same AI agent writes both the code and its tests, because errors in the code can carry over into the tests. Independent tests, ideally with human-defined test cases, let reviewers focus on architectural fit, security implications, and edge-case handling.
3. Maintaining context with project context files
Teams can apply context engineering by maintaining project-level markdown files, such as CLAUDE.md or memory banks, that capture architectural guidelines, security rules, and style conventions. These files help AI assistants generate code that better aligns with team standards. However, human review remains indispensable for catching details that fall outside the model’s context.
Practical tips: orient before you act
Applied to AI-assisted software development, the OODA loop suggests a simple rule: orient before you act. Four habits put that rule into practice.
- Treat AI output as an option, not a finished artifact. Evaluate each suggestion against project context before acting on it, and use feedback to decide what ships.
- Keep PRs small. Smaller changes are easier to verify in context. Use AI before review to support human verification, for example by gathering evidence from logs and test results.
- Scale automation to risk. Low-risk changes, such as documentation or internal tooling, can move with more automation and lighter review. High-risk areas, such as authentication, payments, and data migrations, warrant deeper human verification.
- Measure quality, not output. Counting how much code a team produces says little about whether that code works. The next section covers what to track instead.
Measuring productivity when AI writes the code
Traditional metrics, such as lines of code written or PRs merged, are misleading when AI is involved. AI makes generating large volumes of code effortless, whatever its quality. To assess software health and delivery speed accurately, organizations should shift toward metrics that capture quality and flow:
- Review latency: Time that PRs wait for verification and approval.
- Rework rate: Share of code that needs significant refactoring after review.
- Rollback and incident frequency: Production stability following new releases.
- Long-term maintainability: System health and readability over time.
Teams should read these metrics together. Faster reviews that raise the rework rate signal rubber-stamping, not progress.
Bottom line: speed does not equal progress
AI has shifted the bottleneck in software engineering from writing code to verifying it, and speed alone does not equal progress. Teams that keep quality ahead of AI speed build strong feedback loops and keep humans in charge of context and judgment. They focus code review on risk and architecture, measure quality and flow, and avoid both over-restriction and over-reliance on AI. Teams that invest in verification as seriously as they invest in generation will turn AI speed into lasting quality.



















