VS.
Agentic AI Development SDLCPractice Standard
00/14

Practice Standard · Data & AI

Agentic AI
Development SDLC

AGENT
HUMAN

The end-to-end process for delivering software with agentic coding assistants: readiness baseline, risk-tiered autonomy, phase gates, DORA guardrails, and the accountability model. Built on one thesis — outcome variance is a context and gating problem, and the fix is the repository, the gates, and the metrics.

FIG.00Pipeline — Ticket → Release7 GATES
TICKETINPUTSpec committedRequirementsGATE 01Merged ADRDesignGATE 02Approved planPlanningGATE 03In-scope diffImplementationGATE 04Tests approvedVerificationGATE 05Approved PRReviewGATE 06Provenance intactReleaseGATE 07RELEASESHIPPED
One agent-carried signal runs ticket to release; seven human gates sit across it, and no path reaches production without passing every one.
⎇ Classical SDLC & Git reference⬡ How the models underneath work⬟ Delivery frameworks

Section 01

Purpose & Scope

What this page governs, who owns it, and where it yields to stricter agreements.

This page is the practice standard for using agentic coding assistants on delivery engagements. It governs how agents are used — the repository preparation, the gates, the review obligations, and the metrics — not whether they are used. Teams are held to it. Where a per-engagement client agreement imposes stricter constraints on tooling, data handling, or review, the client agreement wins. Nothing on this page authorises a tool or a data flow that an engagement contract forbids.

FieldValue
Approved toolsClaude Code (CLI / web / IDE), GitHub Copilot in agent mode. Anything else requires security review before first use.
Engagements in scopeAll delivery engagements, internal accelerators, and practice assets. Client agreements override where stricter.
Review cadenceQuarterly, and after any agent-attributed incident
Version1.0

§ The thesis of this page

The variance in outcomes between engineers using agentic assistants is not primarily a skill or prompting problem — it is a context and gating problem. A strong engineer in an unprepared repository produces poor agent output; an average engineer in a well-instrumented repository with clear gates produces good, reviewable output. The goal of this SDLC is therefore not to teach prompting. It is to make agent output reviewable, reproducible, and attributable by fixing the repository, the gates, and the metrics.

Section 02

Why Outcomes Vary

Same tool, same task, wildly different results. The spread is observable on any engagement running agents today.

Put the same agentic assistant and the same ticket in front of two engineers and the outputs diverge far beyond what their relative experience predicts: one produces a small, well-scoped diff with passing tests and a reviewable narrative; the other produces a sprawling change that consumes more review time than it saved in writing time. The spread is not random. It traces to four causes, and each one is a property of the environment and process, not of the person.

FIG.02Fault → Control Routing
FAULT · ENVIRONMENT & PROCESSCONTROL THAT FIXES IT
F01Context starvation

The repo tells the agent nothing about itself — no instruction file, no conventions, no commands. The agent guesses, and its guesses read plausible.

F02No plan gate

Code is generated before intent is agreed. The human reviews an implementation of a plan they never saw, and cannot separate design disagreement from defect.

F03Unbounded scope

One prompt asked to do six things. The diff touches thirty files, review becomes skimming, and skimming becomes approval.

F04Unowned output

No named human is accountable for the merged code. When it breaks, the incident review finds a prompt, not an author.

Every source of variance is an environment fault, and each patches to one downstream control — three of the four are human gates. Hover a fault to trace its fix.

The rest of this page is the fix for each. Section 4 repairs context starvation, Section 6 installs the plan gate, Section 5 bounds scope by risk, and Section 7 names the owner.

Section 03

How a Coding Agent Actually 10×'s a Single Consultant

Not typing speed. Six specific mechanisms, each with a concrete pattern a consultant can run this week.

The claim that agents make engineers faster is usually argued from the wrong mechanism. Autocomplete-style speed is the smallest effect. The real multipliers are structural — they change what one person can hold, supervise, and finish. Each mechanism below names the practice pattern and the worked example.

FIG.03Leverage Map
JUDGEMENT THE HUMAN STILL SUPPLIES →EFFORT SAVED →3.13.23.33.43.53.6BIGGEST SINGLE UNLOCK
3.1Codebase archaeology3.2Exploration cost collapse3.3Parallelism3.4Elimination of dead-weight work3.5The always-available first reviewer3.6Knowledge levelling
Plotted by effort saved against judgement still required, 3.1 codebase archaeology is the clear outlier — the largest ROI, and it is not typing speed.

Consultants repeatedly land in large, undocumented, unfamiliar client codebases. Traditionally that costs two to four weeks before a first meaningful contribution — weeks spent reading, tracing, and interrupting the one client engineer who remembers why the batch job exists. An agent pointed at the repository produces a module map, a data-flow trace, a dependency inventory, and a concrete answer to “where would I change X” in hours.

Worked example

Day one on a new engagement: point the agent at the repo and ask for (1) a module map with responsibilities, (2) the end-to-end trace of one core business flow, (3) the dependency inventory with versions and known risks, (4) the three places a specific change would need to touch. Verify the trace against the code before trusting it. By day two you are discussing the change with the client instead of asking where the entry point is.

Target metric: time-to-first-meaningful-PR on a new engagement. This is where the largest ROI sits — not in typing speed.

The shape of a supervised day

FIG.03·BSupervised Day — Parallel LanesILLUSTRATIVE
Worktree A · test backfillTier 1
agent autonomous
review gate
Worktree B · dependency upgradeTier 1
agent autonomous
review gate
Main focus · auth design (human-led)Tier 3
design
agent analysis-only
implement + accept line-by-line
09101112131415161718

The two Tier 1 lanes run under agent autonomy on separate worktrees and wait at the review gate. The Tier 3 lane is human-led with the agent in analysis-only mode. The lanes never share files.

Two Tier-1 agent lanes finish early and park at a human review gate while one Tier-3, human-led lane runs the whole day — the consultant is in the reviewing seat, not the typing seat.

3.7 · The amplifier caveat

An agent multiplies judgement; it does not supply it. A consultant with good judgement gets leverage. A consultant without it produces bad decisions at ten times the rate — wrapped in confident, well-formatted code that passes casual review.

This is precisely why the rest of this page exists. Every section that follows — the readiness baseline, the risk tiers, the gates, the metrics — is the machinery that keeps the multiplier pointed at good judgement.

Section 04 · Phase 0

The AI-Readiness Baseline

Definition of Ready for AI. A repository is not agent-ready until every item holds — score your current engagement's repo against it.

FIG.04Readiness Gauge
1234560/6NOT READY
▲ HARD THRESHOLD — ALL SIX REQUIRED
The Definition of Ready is a hard threshold: the repo reads NOT READY until all six segments fill, then flips to AGENT-READY.

This is an onboarding task, not polish

Bringing the repository to this baseline is an engagement onboarding task, owned by the tech lead in week one. It is scheduled work with a named owner — not optional polish to get to when the sprint quietens down. Every later section of this page assumes it is done.

Section 05

Risk Tiers → Autonomy Levels

The governance backbone. Autonomy is not a property of the tool or the engineer — it is a property of the work.

FIG.05Autonomy Ladder
TICKETPLANBUILDREVIEWMERGE
Tier 1 — LowAgent runs almost the whole way
PR review
Tier 2 — StandardAgent stops at the plan gate
Plan approval
Tier 3 — HighAgent barely leaves the gate
Analyse-only
Tier sets how far the agent travels before a human gate: Tier 1 runs nearly to merge, Tier 2 stops at plan approval, Tier 3’s gate sits almost immediately.
TierWork typeAgent autonomyRequired gateReviewer
Tier 1 — LowBoilerplate, tests, docs, lint fixes, dependency bumps, formattingAgent may work autonomouslyStandard PR reviewAny qualified engineer
Tier 2 — StandardFeature work within existing modules, refactors, bug fixesAgent proposes a plan; human approves the plan before code is generatedApproved plan, then passing testsNamed human reviewer
Tier 3 — HighAuthentication, cryptography, data models, migrations, public/client-facing interfaces, IaC, anything export- or IP-sensitiveAgent may analyse and propose only. Human implements, or accepts line-by-line with justificationLine-by-line acceptance with justificationArchitect sign-off required

§ Escalation rule

When unsure of the tier, treat it as the higher one.

Classify the work — tap an item

Section 06

The SDLC, Phase by Phase

For every phase: what the agent does, what the human owns, and the artifact that gates the transition to the next phase.

⬡ What the agent does

Drafts a specification from the ticket: goals, non-goals, constraints, open questions, proposed acceptance criteria.

◎ What the human owns

Owns and signs the acceptance criteria. Resolves the open questions with the client — the agent cannot know what was agreed in the steering call.

⛨ Gate: Spec committed to the repo

The signed spec is committed to the repository so future agent sessions read it as context rather than re-deriving intent from the code. A spec that lives in a ticket system or a chat thread is invisible to the next session.

§ The highest-leverage control on this page

The human approves the implementation plan before any code is written. This is the single most-skipped gate in practice, and skipping it is where most agent-related review pain originates. Plans are cheap to read and cheap to reject; diffs are neither.

The whole lifecycle on one screen

FIG.06Swimlane — Agent / Human / Artifact × 7 Phases
Agentcarries the volume
Draft spec from ticket
2–3 options + trade-offs
Stepwise implementation plan
Implement per tier
Implement to green
Adversarial self-review
Draft changelog & notes
Humancarries the judgement
Sign acceptance criteria
Decide the direction
Approve the plan
Scope-discipline check
Write/approve test first
Review the diff
Own the release
Artifactgates the next phase
Committed spec
Merged ADR
Approved plan
In-scope diff
Tests passing
Approved PR
Provenance chain
Three lanes across seven gated phases: the agent lane carries the volume, the human lane carries the judgement, and every phase closes on a committed artifact — with plan approval (P3) the highest-leverage control.

The Blueprint · End-to-End Map

How the Whole Lifecycle Connects

Every phase, block, and gate on one canvas. Hover a block to trace what it needs and what it unlocks; click to pin its detail. Turn on loops to see the governance and feedback that make it a living system.

ROLE:PHASE:
LegendFlow · needs beforeLoop · feeds backContextAgentHumanArtifactHighest-leverage gate
THE BLUEPRINTPHASE 0READINESSPHASE 1REQUIREMENTSPHASE 2DESIGNPHASE 3PLANNINGPHASE 4BUILDPHASE 5REVIEWPHASE 6RELEASEInstruction fileOne-command loopCoverage floorNo-go + secretsADR & spec dirClient ticketDraft specAcceptance criteriaCommitted spec2–3 design optionsDesign decisionDraft ADRMerged ADRRisk-tier callImplementation planPlan approval ★Approved planAcceptance testAgent implementsScope checkIn-scope diffTests to greenSCA + license scanAdversarial reviewHuman reviewApproved PRProvenance chainRelease decisionDORA pairPractice library
7Phases
30Blocks
5Committed gates
8Human control points
7Agent tasks

No path from ticket to release routes around a human gate. The agent carries the volume; the human carries the judgement.

Section 07

The Accountability Principle

One sentence. It carries the weight of everything else on this page.

The human who merges is the author,
regardless of who or what typed it.

In practice this means three things. You can be asked to explain any line you merged, at any later point, and be expected to answer. “The agent wrote it” is never an incident response — it names a tool, not a cause, and it will not appear in a client-facing RCA. And authorship carries the same professional obligation it always did: merging code you do not understand was malpractice before agents existed, and it is malpractice now, at higher speed.

Section 08

Measuring It — DORA as the Guardrail

Whether delivery actually improved is the only question leadership should be asking. DORA answers it; tool-usage metrics do not.

8.1 · Why DORA and not AI-native metrics

The metrics vendors surface for AI tools measure tool usage, not delivery outcomes. A high acceptance rate is compatible with a rising defect rate; a large count of generated lines is compatible with a slowing team. The following are banned as success criteria on any engagement governed by this page:

Suggestion acceptance rateLines of code generatedTokens consumedVendor-estimated “time saved”Number of prompts per day

They may be observed as diagnostics. They may never be reported as results. DORA’s four keys measure whether software delivery improved — report those.

8.2 · The four keys, and how agentic development moves each

MetricWhat agentic development typically doesThe trap
Lead time for changesthroughputUsually improves — plans, scaffolding, and first-draft implementation compress the writing phase.Time shifts from writing into reviewing. Measure end-to-end including review latency, not coding time — a lead-time number that excludes review is measuring the wrong half of the work.
Deployment frequencythroughputUsually improves — smaller units of work become cheap to finish and ship.More and larger PRs queue behind a constant review capacity. Frequency gains evaporate at the review bottleneck unless review itself is resourced.
Change failure ratestabilityThe canary. If this rises, agent output is being merged without genuine comprehension.Treat any sustained rise as a process failure, not a tooling problem — the gates in Sections 5 and 6 are being skipped somewhere. Fix the process, not the model settings.
Failed deployment recovery timestabilityThe honest test of comprehension: code nobody truly understands is slow to fix under pressure.This metric degrades quietly and shows up late. By the time recovery time is visibly worse, the comprehension debt was accumulated quarters ago.

8.3 · The core warning

Agentic development inflates throughput metrics first and degrades stability metrics later. The two failure curves are offset in time, and the offset is exactly the honeymoon during which bad practice gets institutionalised.

FIG.08·AThroughput / Stability QuadrantILLUSTRATIVE
THROUGHPUT →STABILITY →ELITElow / lowbaselinehoneymoongates held
Agentic delivery pushes you right (throughput) — the honeymoon lets it also pull you down (stability); the gates are what carry you up-and-right instead.
FIG.08·BThe Metrics HoneymoonILLUSTRATIVE
throughput index stability index
100Q1Q2Q3Q4Q5Q6looks like runaway successthe bill arrives◄ DIVERGENCE
Reporting only throughput looks like runaway success for two quarters; at the divergence point the deferred stability cost arrives.

Reporting rule

Throughput and stability must always be reported as a pair. Never present one without the other. A deployment-frequency chart without the change-failure-rate chart next to it is not a partial result — it is a misleading one.

8.4 · Sourcing

Cite the most recent DORA / State of DevOps report by name and year when presenting this section to a client or leadership. As a reference point: the DORA State of DevOps report 2024 found that increased AI adoption correlated with small decreases in both delivery throughput and stability — evidence that adoption without the gates on this page does not automatically improve delivery. Later DORA research frames AI as an amplifier of existing organisational strengths and weaknesses rather than a uniform accelerant.

Verify current findings — including DORA’s published AI-related capability guidance — against the latest report before publishing or presenting; do not rely on remembered figures, including the ones in this paragraph.

LAST VERIFIED: 2026-07 · RE-VERIFY BEFORE EACH CLIENT PRESENTATION

8.5 · Supporting measures

MeasureWhat it tells you
Revert and rework rateHow much merged work gets undone — the fastest proxy for comprehension debt.
Review turnaround timeWhere the reclaimed writing time actually went. Rising turnaround means the bottleneck moved, not disappeared.
Coverage delta on touched filesWhether agent-assisted changes leave files better-tested than they found them.
Time-to-first-meaningful-PR on new engagementsThe consultant-specific headline metric from Section 3.1 — the largest ROI is here.
Proportion of PRs merged with an approved planDirect compliance measure for the planning gate — the most-skipped control on this page.

§ 8.6 · Baseline discipline

Capture all of these metrics for at least one full delivery cycle before rollout. Without a baseline the numbers are advocacy, not evidence — and the first sceptical stakeholder will treat them accordingly.

Section 09

Safety, Compliance & Client Constraints

Written for regulated, IP-sensitive client contexts — where data handling constraints are contractual, not theoretical.

Data boundary

Which tool, which tenant, zero-retention configuration, and whether client code may leave the approved environment — confirmed in writing, per engagement, before first use. Never assumed from a previous engagement: the same tool under the same vendor can sit under a different contract, tenant, and retention posture from one client to the next.

§Export control & IP

Where the engagement touches export-controlled technology or sensitive IP, obtain explicit legal sign-off on agent use before the first prompt. Do not infer permission from silence — silence means the question has not been answered, not that the answer is yes.

Supply chain

Run software composition analysis on every agent-suggested dependency. Hallucinated and typosquatted package names are a live, exploited attack vector — attackers register packages at the names agents plausibly invent. License scanning on everything added. Enable duplicate-detection / public-code filtering where the tool offers it.

Production data never enters a prompt

No exceptions in the default posture, and no “anonymised” carve-out without explicit sign-off from the data owner and the compliance function — anonymisation claims are assertions to be verified, not permissions to be assumed. Use synthetic fixtures; the readiness baseline requires them anyway.

Regulatory posture

Internal coding assistants generally sit in the lowest risk category under the EU AI Act, meaning obligations centre on transparency and staff AI literacy rather than conformity assessment. Confirm this classification with the compliance function per engagement and record the date of confirmation — it is their call to make and their signature to give, not engineering's to assert.

Incident path — when agent-attributed code causes a client-visible defect

Treat it as any client-visible defect first: fix or roll back under the normal incident process. The agent's involvement changes the follow-up, not the triage.

Section 10

Anti-Patterns

Named, because people remember names better than rules. Each one carries its own mark — and a link back to the gate it violates.

AP01

Vibe merging

Approving a diff you cannot explain. The code looked plausible, the tests were green, and nobody in the room can say what it does.

AP02

The mega-prompt

One prompt asked to do six unrelated things. The result is one unreviewable diff instead of six reviewable ones.

AP03

Self-marking homework

The agent writes both the code and the test that validates it, and nobody reads the test. The suite passes because it was written to.

AP04

Context starvation

No agent instruction file, so the agent guesses conventions. Every session re-guesses differently, and the codebase drifts.

AP05

Chat-history-as-documentation

The design reasoning lives in a transcript that expires with the session. The next engineer — human or agent — starts from zero.

AP06

Autonomy creep

Tier 3 work quietly handled at Tier 1 autonomy because it was faster this once. The tier table only works if the inconvenient rows are enforced.

AP07

The metrics honeymoon

Celebrating throughput while stability drifts. Two quarters of applause, then a change-failure-rate chart nobody wants to present.

Section 11

Living Practice Library

The feedback loop that actually collapses variance over time — individual discoveries become practice defaults.

Every engagement discovers things: a prompt pattern that reliably produces reviewable plans, an instruction-file section that stops a recurring class of mistake, a tier call that was not obvious. The loop is mandatory in both directions — anything that worked goes back into the repo’s agent instruction file, so the next session on that engagement benefits, and into the practice-level library, so the next engagement starts where this one finished. Variance between consultants collapses precisely as fast as this loop runs.

FIG.11Variance-Collapse Flywheel
Engagement discovery
a pattern works
Repo instruction file
next session benefits
Practice library
next engagement benefits
New baseline
variance collapses
A closed loop: every engagement’s discovery feeds the repo and the practice library, so the next engagement starts further ahead — variance collapses as fast as the loop turns.

What belongs in the library

AssetWhy it is there
Instruction file templates by stackPython/data, TypeScript/web, Terraform, Databricks — a consultant starts from the right template, not a blank file.
Plan templatesThe stepwise implementation-plan format from Section 6, ready to fill.
ADR templatesDecision, context, options considered, consequences — the format agents draft into.
PR templateWith the AI-involvement declaration from Appendix B.
Tier-classification examplesReal, anonymised judgement calls — especially the ones that were escalated.
Reusable promptsCodebase archaeology, adversarial review, and test-first delegation — the three from Section 3 that transfer between engagements.

Section 12

Adoption & Rollout

Sequencing matters more than content. A correct standard introduced in the wrong order becomes shelfware.

FIG.12Adoption Sequence — Ordered
01
STEP 01/06

Lead with evidence of variance

Open with three real PRs from a live engagement showing the spread — same tool, same week, radically different review burden. Not with the framework. The framework is the answer; the PRs are the question that makes anyone care.

02
STEP 02/06

Co-sign before publishing

The delivery lead and the security/compliance function review and co-sign this page before it ships, so it lands as a practice standard rather than one architect's opinion.

03
STEP 03/06

One diagram only

The phase table with agent/human/gate columns is the diagram. If explaining the SDLC needs two diagrams, it is too complex to adopt.

04
STEP 04/06

Ship copyable artifacts with the page

Instruction file template, PR template, readiness checklist, and one exemplar repo that passes the Definition of Ready. A standard nobody can copy from is a poster.

05
STEP 05/06

Pilot, don't mandate

Two teams, six weeks, an agreed DORA baseline captured before the pilot and re-measured after, results published internally regardless of what they show.

06
STEP 06/06

Run a clinic, not a broadcast

A 90-minute working session where each team makes its own repo agent-ready beats any presentation. People adopt what they have already half-built.

The six moves are a sequence, not a menu: each step is only safe to take once the one above it lands — evidence before framework, pilot before mandate.

Section 13

Appendices

The copyable artifacts. A standard nobody can copy from is a poster — start every engagement from these.

The root instruction file, complete and copyable. Replace the angle-bracket placeholders with engagement specifics; delete nothing without a reason. The same content, re-sectioned, serves as .github/copilot-instructions.md.

CLAUDE.md69 LN
# CLAUDE.md — agent instructions for <project-name>
 
> Read this before generating anything. It is the contract between this
> repository and every agent session that touches it.
 
## Stack
 
- Language: <e.g. Python 3.12 / TypeScript 5.x (strict)>
- Framework: <e.g. FastAPI 0.115 / Next.js 15 (App Router)>
- Data layer: <e.g. PostgreSQL 16 via SQLAlchemy 2.x>
- Infra: <e.g. Terraform 1.9, AWS. IaC is Tier 3 — see No-go paths>
- Package manager: <e.g. uv / pnpm — never mix with pip/npm directly>
 
## Architecture map
 
- `src/api/` HTTP layer. Thin controllers only — no business logic.
- `src/domain/` Business logic. Pure, no I/O, fully unit-tested.
- `src/adapters/` DB, queues, external services. Integration-tested.
- `src/jobs/` Scheduled work. Entry points in `jobs/__main__.py`.
- `tests/` Mirrors `src/`. Fixtures in `tests/fixtures/` only.
- `docs/adr/` Architecture Decision Records. Read before designing.
- `docs/specs/` Committed feature specs. Read before implementing.
 
## Commands (run these — do not invent variants)
 
- Lint: `make lint`
- Test: `make test` (single test: `make test T=path::test_name`)
- Build: `make build`
- All three must pass before any commit is proposed.
 
## Conventions
 
- Follow the patterns of the module you are editing; when in doubt, copy
the newest adjacent code, not the oldest.
- Errors: raise domain exceptions from `src/domain/errors.py`; never bare
`except:`; never silent fallback values.
- Logging: structured via the project logger; never `print`.
- Naming/formatting are enforced by the linter — do not hand-format.
 
## Forbidden patterns
 
- No new dependencies without an explicit human decision recorded in the
plan. Suggest, do not add.
- No changes to public API contracts without a Tier 3 review.
- No test deletions or assertion weakening to make a suite pass.
- No TODO comments as a substitute for doing the work or raising a question.
 
## No-go paths (do not modify)
 
- `migrations/` All database migrations — propose only.
- `infra/` Production IaC — propose only.
- `src/generated/` Generated code — regenerate, never edit.
- `vendor/` Vendored dependencies.
- `.env*` (except `.env.example`) and anything matching `*secret*`.
 
## Definition of done
 
- Lint, tests, and build pass via the commands above.
- New behaviour has tests a human has read and approved.
- The diff touches only files named in the approved plan.
- Docstrings updated; ADR drafted if a design decision was made.
 
## Known sharp edges
 
- <e.g. The ORM session is request-scoped; holding it across awaits
deadlocks under load. See docs/adr/0007.>
- <e.g. `make test` requires Docker running for the Postgres fixture.>
- <Add every hard-won surprise here. This section is why onboarding is
fast — for humans and agents alike.>