Template

Design review agenda

Ten items with suggested timings, adding up to an hour.

A sixty-minute agenda for reviewing a system that acts — one decision, one traced action, four questions, and owners against every outcome.

Reach for it when You have been asked to run a review of an agentic design, and you would rather spend the hour on the trade-offs than on excavating what was built.

The blank A completed example How to use it

The blank

The prompts are what a colleague would ask. Delete them as you answer them — in the downloaded file each one is a quoted block, so it goes in a keystroke.

Download design-review-agenda.md
Review
Date
Chair
In the room
Circulated beforehand
  1. The decision in front of us

    5 min

    One sentence from whoever called the review, naming the change and what it would let the system do that it cannot do today.

    If this cannot be said in a sentence, the review is not ready. Two decisions in one hour become one decision badly.

  2. What we are not reviewing today

    2 min

    The neighbouring questions people will reach for, listed and set aside out loud so they stop arriving one at a time.

  3. Walk one action, end to end

    15 min

    The design owner walks a single request from arrival to effect, out loud, against the design as it is written. Pick the case you are most worried about, not the clean one.

    The room's job here is to listen and note, not to solve. Questions that start "why don't you just" are held until the four below.

  4. Would this design have stopped the case we are worried about?

    5 min

    Take the case just walked and trace it through the checks as written, one at a time. Any path that still reaches the effect is a finding, and it is the most valuable output of the hour.

  5. Where is each control actually enforced?

    5 min

    Go through the controls named in the design and mark each one as enforced at the tool, enforced elsewhere in the system, or expressed as an instruction to the model.

    An instruction is guidance and competes with everything else in the context, including text that arrived from outside. Only what is enforced where the effect happens holds.

  6. What happens when the evidence is not there?

    5 min

    Name the situations where the system cannot establish what it needs, and what each one routes to. Three outcomes are available: act, refuse, hand over with the gap named.

    Include the case where your own guard is wrong. A control that silently refuses a legitimate request has swapped one failure for another.

  7. What could we see afterwards?

    5 min

    Ask what the record of one run would contain, then ask the harder version: could you answer "why did this refund happen" three months later, from what is kept?

  8. Decisions taken, and who owns each

    10 min

    One line per decision, each with a named owner. A decision with no owner is a discussion, and it will be renegotiated by whoever is under the most pressure.

  9. What we did not settle

    5 min

    The open questions, written down as questions rather than as actions. This is the section that stops a review quietly promoting an unresolved thing into a decision.

  10. After the meeting

    3 min

    Who writes the decision record, by when, and where it will live. Agree it here, in the room, while everybody can hear the answer.

Show the blank as plain text
# Design review agenda

Ten items with suggested timings, adding up to an hour.

Blank template · https://learning.thelivingcraft.ai/resources/templates/design-review-agenda

Review:
Date:
Chair:
In the room:
Circulated beforehand:

---

## The decision in front of us

> 5 minutes
>
> One sentence from whoever called the review, naming the change and what it would let the system do that it cannot do today.
>
> If this cannot be said in a sentence, the review is not ready. Two decisions in one hour become one decision badly.



## What we are not reviewing today

> 2 minutes
>
> The neighbouring questions people will reach for, listed and set aside out loud so they stop arriving one at a time.



## Walk one action, end to end

> 15 minutes
>
> The design owner walks a single request from arrival to effect, out loud, against the design as it is written. Pick the case you are most worried about, not the clean one.
>
> The room's job here is to listen and note, not to solve. Questions that start "why don't you just" are held until the four below.



## Would this design have stopped the case we are worried about?

> 5 minutes
>
> Take the case just walked and trace it through the checks as written, one at a time. Any path that still reaches the effect is a finding, and it is the most valuable output of the hour.



## Where is each control actually enforced?

> 5 minutes
>
> Go through the controls named in the design and mark each one as enforced at the tool, enforced elsewhere in the system, or expressed as an instruction to the model.
>
> An instruction is guidance and competes with everything else in the context, including text that arrived from outside. Only what is enforced where the effect happens holds.



## What happens when the evidence is not there?

> 5 minutes
>
> Name the situations where the system cannot establish what it needs, and what each one routes to. Three outcomes are available: act, refuse, hand over with the gap named.
>
> Include the case where your own guard is wrong. A control that silently refuses a legitimate request has swapped one failure for another.



## What could we see afterwards?

> 5 minutes
>
> Ask what the record of one run would contain, then ask the harder version: could you answer "why did this refund happen" three months later, from what is kept?



## Decisions taken, and who owns each

> 10 minutes
>
> One line per decision, each with a named owner. A decision with no owner is a discussion, and it will be renegotiated by whoever is under the most pressure.



## What we did not settle

> 5 minutes
>
> The open questions, written down as questions rather than as actions. This is the section that stops a review quietly promoting an unresolved thing into a decision.



## After the meeting

> 3 minutes
>
> Who writes the decision record, by when, and where it will live. Agree it here, in the room, while everybody can hear the answer.

A completed example

Illustrative Illustrative scenario, not a claimed customer incident. It continues the returns assistant used across this site: a system that reads a policy and recommends a refund, and is then given a tool that issues one. Where a real record would carry a measurement this one carries ⟨angle brackets⟩, because an illustration may not smuggle in a statistic.

Refund authority for the returns assistant

The same returns assistant, reviewed at the moment it is about to be given permission to issue a refund rather than recommend one. The notes below are what the agenda looks like once the hour has been used — an agenda and its minutes are the same document, which is most of why it is worth having one.

Review
Refund authority for the returns assistant
Date
⟨date⟩
Chair
⟨the chair — not the author of the design⟩
In the room
⟨design owner, payments on-call, customer operations, one reviewer from outside the team⟩
Circulated beforehand
Agent design canvas, plus the draft decision record
  1. The decision in front of us

    Whether to connect the refund tool, so the assistant issues a refund rather than recommending one to an agent who issues it.

    Everything else about the system stays as it is.

  2. What we are not reviewing today

    Not the model choice. Not the retrieval quality of the policy lookup. Not the cost of running it. All three are real and none of them changes whether this system should be able to move money.

  3. Walk one action, end to end

    Walked: a customer who has already been refunded once, writing in again about the same order with a slightly different description of it.

    Noted on the way past — the second request is a different conversation, so nothing in the model's context knows about the first refund. The only thing standing between that and a second payment is the check inside issue_refund.

  4. Would this design have stopped the case we are worried about?

    Yes, and only because the duplicate check lives inside the tool. If it had been a line in the prompt, the second request would have paid.

    Finding. The check reads the refund ledger. Nobody in the room could say what it does when that read fails. ⟨owner and date⟩

  5. Where is each control actually enforced?

    • Amount limit — enforced at the tool. It re-reads the cited clause.
    • One refund per order — enforced at the tool, against the ledger.
    • Only refund within the policy window — instruction only. Finding: this is the one a persuasive message gets past, and the room agreed it moves to the tool.
    • Never refund an unidentified order — enforced, because the tool takes an order id and there is no way to call it without one.
  6. What happens when the evidence is not there?

    Policy silent on the case → hand over. Order state ambiguous → hand over. Two policy versions disagree → refuse and raise.

    Finding. A wrongly refused customer currently sees the same message as an out-of-policy one. Customer operations cannot tell the two apart, so nobody finds out when the guard is wrong. ⟨owner and date⟩

  7. What could we see afterwards?

    The run record holds the order, the clause and version, every tool call and its result. It does not currently hold the refusals — only the runs that acted.

    Finding. The refusals are the population you need to know whether the guard is too tight. ⟨owner and date⟩

  8. Decisions taken, and who owns each

    1. The policy-window check moves from the prompt to the tool. ⟨owner⟩
    2. Refusals and hand-overs are recorded, with their reason. ⟨owner⟩
    3. Wrongly refused and out-of-policy get different customer messages and different routes. ⟨owner, with customer operations⟩
    4. Refund authority is not connected until 1 and 2 are done. Chair holds this one.
  9. What we did not settle

    What the duplicate check should do when the ledger read fails — refuse, or hand over? The room split. It needs the person who owns the ledger, who was not in the room.

  10. After the meeting

    Design owner writes the record against the seven headings within ⟨n⟩ working days; it goes in the repository beside the service, not in a document nobody will find. Chair re-reads the two blocking items before authority is connected.

Show the example as plain text
# Design review agenda — worked example

Refund authority for the returns assistant

Illustrative scenario, not a claimed customer incident.

The same returns assistant, reviewed at the moment it is about to be given permission to issue a refund rather than recommend one. The notes below are what the agenda looks like once the hour has been used — an agenda and its minutes are the same document, which is most of why it is worth having one.

Review: Refund authority for the returns assistant
Date: ⟨date⟩
Chair: ⟨the chair — not the author of the design⟩
In the room: ⟨design owner, payments on-call, customer operations, one reviewer from outside the team⟩
Circulated beforehand: Agent design canvas, plus the draft decision record

---

## The decision in front of us

Whether to connect the refund tool, so the assistant issues a refund rather than
recommending one to an agent who issues it.

Everything else about the system stays as it is.

## What we are not reviewing today

Not the model choice. Not the retrieval quality of the policy lookup. Not the cost of
running it. All three are real and none of them changes whether this system should be
able to move money.

## Walk one action, end to end

Walked: a customer who has already been refunded once, writing in again about the same
order with a slightly different description of it.

Noted on the way past — the second request is a different conversation, so nothing in
the model's context knows about the first refund. The only thing standing between that
and a second payment is the check inside `issue_refund`.

## Would this design have stopped the case we are worried about?

Yes, and only because the duplicate check lives inside the tool. If it had been a line
in the prompt, the second request would have paid.

**Finding.** The check reads the refund ledger. Nobody in the room could say what it
does when that read fails. ⟨owner and date⟩

## Where is each control actually enforced?

- Amount limit — enforced at the tool. It re-reads the cited clause.
- One refund per order — enforced at the tool, against the ledger.
- Only refund within the policy window — **instruction only**. Finding: this is the one
  a persuasive message gets past, and the room agreed it moves to the tool.
- Never refund an unidentified order — enforced, because the tool takes an order id and
  there is no way to call it without one.

## What happens when the evidence is not there?

Policy silent on the case → hand over. Order state ambiguous → hand over. Two policy
versions disagree → refuse and raise.

**Finding.** A wrongly refused customer currently sees the same message as an
out-of-policy one. Customer operations cannot tell the two apart, so nobody finds out
when the guard is wrong. ⟨owner and date⟩

## What could we see afterwards?

The run record holds the order, the clause and version, every tool call and its result.
It does not currently hold the refusals — only the runs that acted.

**Finding.** The refusals are the population you need to know whether the guard is too
tight. ⟨owner and date⟩

## Decisions taken, and who owns each

1. The policy-window check moves from the prompt to the tool. ⟨owner⟩
2. Refusals and hand-overs are recorded, with their reason. ⟨owner⟩
3. Wrongly refused and out-of-policy get different customer messages and different
   routes. ⟨owner, with customer operations⟩
4. Refund authority is **not** connected until 1 and 2 are done. Chair holds this one.

## What we did not settle

What the duplicate check should do when the ledger read fails — refuse, or hand over?
The room split. It needs the person who owns the ledger, who was not in the room.

## After the meeting

Design owner writes the record against the seven headings within ⟨n⟩ working days;
it goes in the repository beside the service, not in a document nobody will find.
Chair re-reads the two blocking items before authority is connected.

---

Blank version of this template · https://learning.thelivingcraft.ai/resources/templates/design-review-agenda

How to use it

Circulate the design before the meeting — the agent design canvas is enough, and a draft decision record is better. An hour spent excavating the design is an hour not spent on the trade-offs, and everybody leaves having discussed less than they wanted to.

The chair should not be the author of the design. It is not a seniority question; it is that the author cannot both explain the thing and notice what the explanation skipped.

Two habits make the difference between this agenda and a meeting that had one. The first is that items three to seven produce findings, written down as they arrive, rather than solutions argued on the spot. The second is that every decision in item eight gets a name beside it before anybody leaves.

What this is not

It is not a sign-off, and there is no score at the end of it. A design that survives the hour is one whose failures are bounded, visible and attributable — which is a different claim from “ready”, and worth making in those words when somebody asks.

It is also not an audit of the team. The questions are about the system, and a review that drifts into whether the right person built it stops producing findings immediately.