
For your team
Teams by Function
Module · How AI-written code enters your repo
The Engineering Team AI Check
Your team ships more code than it used to, and a growing share of it was drafted by a model. That is fine, until the day something breaks and nobody can say who wrote the line or whether anyone read it. This module checks the five habits that keep AI-assisted engineering honest: review discipline, test coverage on generated code, security scanning, clear ownership, and the prompts and configs that shape it all living in the repo.
What the five levels look like
Every dimension in this assessment is scored 1 to 5. This is what the levels mean, dimension by dimension. The graded report diagnoses where your own answers land and what to do about it.
AI code gets reviewed
- 1No review
- 2Skimmed quickly
- 3Reviewed like normal
- 4Reviewed more closely
- 5Extra scrutiny, enforced
At the low end: Unreviewed AI code is a stranger committing directly to your main branch. Route every generated change through the same pull request and approval your team already uses for human work. What good looks like: Holding AI code to a higher bar than hand-written code is the right instinct while trust is still forming. Keep the practice as volume grows; the temptation to rubber-stamp rises with the diff count.
Generated code is tested
- 1No tests
- 2Model wrote tests
- 3Some human tests
- 4Coverage required
- 5Coverage plus review
At the low end: Generated code with no tests is a guess you have promoted to production. Require the same coverage you would demand of any change touching the same path. What good looks like: Real coverage that a person reviewed is what lets your team accept AI speed without inheriting AI blind spots. Keep watching for tests that pass by describing the bug rather than catching it.
Security scanning runs
- 1No scanning
- 2Manual, occasional
- 3Scanned sometimes
- 4Scanned in pipeline
- 5Blocking, enforced gate
At the low end: Generated code merges faster than a human can audit it, so the audit has to be automated. Put a scanner in the pipeline this month, starting with secrets and dependency checks. What good looks like: A blocking scan that every change must clear is exactly the backstop AI velocity needs. Keep the rules current; the vulnerable patterns a model favours shift as its training does.
Someone owns the module
- 1Nobody owns it
- 2Whoever prompted it
- 3Loose ownership
- 4Named owner
- 5Owner who understands it
At the low end: A module nobody owns is technical debt with the lights off. Assign a named engineer to every generated component who can maintain it as if they had written it themselves. What good looks like: An owner who genuinely understands the module closes the gap between generating code and comprehending it. Protect that understanding through handovers; ownership that lapses is how orphaned code accumulates.
Prompts live in the repo
- 1In chat histories
- 2On someone's laptop
- 3Shared informally
- 4In the repo
- 5Versioned and reviewed
At the low end: A prompt in a chat window is a build input you cannot audit or reproduce. Move the prompts and configs that shape your output into the repo where the rest of your source lives. What good looks like: Versioned, reviewed prompts and configs mean your AI-shaped behaviour is as reproducible as your code. Treat prompt changes like code changes; a quiet edit can shift output as much as a logic change.