← All templates
Template 11

Template 11 — Retirement Checklist

ID
11-retirement-checklist
Version
1
Last revised
2026-05-14
Owner
AI CoE Lead (drives + signs) · Department Champion (informs) · Platform team (executes)

Purpose

The clean-shutdown procedure for an agent that's been retired. Triggered by KPI failure, replacement, ROI below break-even, owner departure, or scope no longer relevant.

This is the gate that prevents zombie agents — the framework's most-cited failure pattern at maturity. Without a retirement procedure, credentials linger, audit logs grow forever, new agents accidentally inherit old scope, and users hit dead-end workflows with no replacement path.

  • When you use it: When any retirement trigger fires (defined in Agent Card §13).
  • Who fills it: CoE Lead drives. Platform team executes technical revocation. Department Champion informs the affected users.
  • Time: 1–2 weeks calendar time (announce, transition, revoke, archive, close).
  • Output: Signed checklist + registry status → Retired.

Worked example (AP Accountant invoice reconciliation, hypothetical 2027 retirement)

Retirement Checklist — finance-invoice-recon v1.0

Trigger: Replacement by NetSuite-native AI matching feature (superior accuracy + integrated) Decision date: 2027-07-15 Target retirement date: 2027-08-15 Owner of retirement: Morteza Moradi (CoE Lead) + Mike Chen (Finance Champion)


1. Trigger and rationale

FieldValue
TriggerNetSuite native AI matching released v2025.2 with 98% accuracy in our environment (vs our agent's 96%)
Decision authorityCoE Lead + Head of Finance
Decision date2027-07-15
Effective retirement date2027-08-15 (30-day transition)
RationaleNative integration eliminates the LLM call cost ($40/month) and provides better accuracy. AP team trained on native feature week of 2027-07-21.

2. Pre-retirement steps

#ActionOwnerDone?
1Announce retirement to AP team in #finance SlackMike Chen✅ 2027-07-15
2Brief Executive sponsor at next monthly 1:1CoE Lead✅ 2027-07-22
3Train AP team on NetSuite native feature (45-min Zoom + Loom recording)Mike Chen✅ 2027-07-21
4Update workflow documentation: AP reconciliation now uses NetSuite native featureMike Chen✅ 2027-07-25
5Confirm no upstream / downstream dependencies on the agent (Finance reports, dashboards, BI tools)Builder✅ 2027-07-28 — none found
6Run parallel for 1 week (both agent + native feature) to confirm native feature handles edge casesMike Chen✅ 2027-08-01 to 2027-08-07

3. Retirement-day procedure (2027-08-15)

#ActionOwnerDone?
1Disable the agent in n8n: set workflow finance-invoice-recon-prod to Inactive (do NOT delete)Platform team✅ 09:00
2Revoke agent-finance-invoice-recon identity in Microsoft Entra ID: set to Disabled (do NOT delete)Platform team✅ 09:05
3Revoke credentials: NetSuite OAuth + Anthropic API key + Gmail OAuth in AWS Secrets Manager — mark as Disabled (do NOT delete; needed for log decryption later)Platform team✅ 09:10
4Verify no new traces in LangSmith for next 1 hourBuilder✅ 10:30 — confirmed zero traces
5Update LaunchDarkly flag finance-invoice-recon-enabled → permanently Off (preserves the flag for audit)Builder✅ 09:15
6Update PagerDuty schedules finance-ai-primary + -backup to inactiveMike Chen✅ 10:00

4. Archive procedure

#ActionOwnerDone?
1Export LangSmith logs for full retention period to S3 Glacier under s3://acme-ai-audit-archive/finance-invoice-recon/Platform team✅ 2027-08-15 (~6GB exported)
2Set Glacier lifecycle to retain 7 years (SOX-adjacency for AP records)Platform team
3Move source repo github.com/acme/agents/finance-invoice-recon to github.com/acme/agents-retired/finance-invoice-reconBuilder
4Add RETIRED.md at the top of the archived repo with retirement date, reason, last working stateBuilder
5Archive Agent Card v1.0, runbook, all post-mortems, all eval reports — preserved in archived repoBuilder
6Update framework.md "agents retired" log with date + reason + key lessonsCoE Lead

5. Registry update

FieldPre-retirementPost-retirement
StatusProductionRetired
Retirement date(blank)2027-08-15
Retirement reason(blank)Replaced by NetSuite native AI matching v2025.2
Final ROI total(rolling)$5,310 (15 months × ~$354/month average)
Final incident count(rolling)0 Sev-1, 2 Sev-2 (both resolved), 11 Sev-3
Audit log archive location(blank)s3://acme-ai-audit-archive/finance-invoice-recon/
Source archive location(blank)github.com/acme/agents-retired/finance-invoice-recon
Replacement(blank)NetSuite native AI matching v2025.2 (departmental tool, not a registered agent)

6. Procurement check

#ActionOwnerDone?
1Notify Procurement of retirementCoE Lead✅ 2027-08-15
2Anthropic spend: agent was ~5% of total ($40/month) — no tier change neededProcurement✅ Logged for annual renewal review
3LangSmith seats: agent was 1 of 6 monitored agents — no seat changeProcurement✅ Logged
4n8n: workflow retired, but n8n still in use for other agents — no license changeProcurement

7. User re-pathing

UserRe-pathed toTrainingDone?
Sarah Patel (AP accountant)NetSuite native AI matchingLoom recording + 1-hour shadow session with Mike✅ 2027-07-21
Tom Riley (backup AP accountant)NetSuite native AI matchingSame Loom recording + manual review✅ 2027-08-04

8. Lessons fed back to framework

  • Retire when there's a better tool. Don't keep agents alive for political reasons. The native tool is more accurate AND cheaper. The Finance Champion proposed retirement himself.
  • 15-month run, net positive ROI. Agent generated ~$5,310 in net value across its lifetime. Pilot-to-retire was a successful cycle.
  • Vendor-embedded AI displacement is a normal retirement trigger. SaaS vendors increasingly ship native AI features. Plan for it — don't be surprised.
  • Logged in framework.md changelog 2027-08-16: "Retirement triggers should explicitly include 'replacement by vendor-embedded AI'."

Sign-off

RoleNameDate
CoE LeadMorteza Moradi2027-08-15
Department ChampionMike Chen2027-08-15
Platform team (technical revocation confirmed)Jess (IT)2027-08-15
Procurement (informed)(rotating)2027-08-15
Executive sponsor (informed)Jane Doe2027-08-25 (next monthly 1:1)

Status: Retired. All actions complete.


Blank template (copy below for your agent)

# Retirement Checklist — [Agent ID] v[X.X]

**Trigger:** [What triggered retirement]
**Decision date:** [YYYY-MM-DD]
**Target retirement date:** [YYYY-MM-DD]
**Owner of retirement:** [CoE Lead + Department Champion]

## 1. Trigger and rationale

| Field | Value |
|---|---|
| Trigger | [KPI failure / Replacement / ROI / Owner departure / Scope obsolete / Incident] |
| Decision authority | [Who decided] |
| Decision date | |
| Effective retirement date | |
| Rationale | |

## 2. Pre-retirement steps

| # | Action | Owner | Done? |
|---|---|---|---|
| 1 | Announce retirement to affected department | | |
| 2 | Brief Executive sponsor | | |
| 3 | Train users on replacement path (if any) | | |
| 4 | Update workflow documentation | | |
| 5 | Confirm no upstream / downstream dependencies | | |
| 6 | Parallel run (if applicable) | | |

## 3. Retirement-day procedure

| # | Action | Owner | Done? |
|---|---|---|---|
| 1 | Disable agent in orchestrator (do NOT delete) | Platform team | |
| 2 | Revoke agent identity in IdP (Disabled, not deleted) | Platform team | |
| 3 | Revoke credentials in secret manager (Disabled) | Platform team | |
| 4 | Verify no new executions for 1 hour | Builder | |
| 5 | Update kill switch / feature flag to permanently off | Builder | |
| 6 | Update on-call schedules to inactive | | |

## 4. Archive procedure

| # | Action | Owner | Done? |
|---|---|---|---|
| 1 | Export logs to cold storage per retention policy | Platform team | |
| 2 | Set retention lifecycle (≥ 6 months EU AI Act baseline; longer per sector regulation) | Platform team | |
| 3 | Move source repo to archive location | Builder | |
| 4 | Add RETIRED.md at top of archived repo | Builder | |
| 5 | Archive Agent Card + runbook + post-mortems + eval reports | Builder | |
| 6 | Update framework "agents retired" log | CoE Lead | |

## 5. Registry update

| Field | Post-retirement value |
|---|---|
| Status | **Retired** |
| Retirement date | |
| Retirement reason | |
| Final ROI total | |
| Final incident count | |
| Audit log archive location | |
| Source archive location | |
| Replacement (if any) | |

## 6. Procurement check

| # | Action | Owner | Done? |
|---|---|---|---|
| 1 | Notify Procurement | CoE Lead | |
| 2 | LLM spend impact | Procurement | |
| 3 | Observability seat impact | Procurement | |
| 4 | Other vendor commitments | Procurement | |

## 7. User re-pathing

| User | Re-pathed to | Training | Done? |
|---|---|---|---|
| | | | |

## 8. Lessons fed back to framework

- [Insight 1]
- [Insight 2]
- [Logged in framework.md changelog YYYY-MM-DD]

## Sign-off

| Role | Name | Date |
|---|---|---|
| CoE Lead | | |
| Department Champion | | |
| Platform team (revocation confirmed) | | |
| Procurement (informed) | | |
| Executive sponsor (informed) | | |

**Status:** Retired. All actions complete.

Usage notes

  • Disable, don't delete. Identities, credentials, repos — all move to Disabled / Archived state, not Deleted. You may need them for an audit. Disable is reversible; Delete usually isn't.
  • Logs are the long-tail obligation. Even after the agent stops running, logs may need to be retained for 6+ months (EU AI Act) or 7+ years (SOX). Plan archive cost.
  • Re-path users before disabling. Section 7 is what prevents resentment. "I came in Monday and the tool was gone" is the wrong experience.
  • Procurement check often surfaces hidden cost. Some LLM contracts have minimum commitments — retiring one agent may not save real money until renewal.
  • Lessons matter. Section 8 is what makes the framework get better over time. A retirement without lessons is a missed opportunity.

Common pitfalls

PitfallWhat it looks likeFix
Delete instead of disableIdentity, repo, logs all goneRe-set policy to disable + archive
Forget to revoke credentialsIdentity disabled but API key still in secret managerRevoke all credentials at retirement-day step
No log retention planLogs vanish at standard retention (30–90 days)Set Glacier lifecycle BEFORE disabling agent
Users surprisedAgent disappears, replacement not communicatedSection 2 + 7 are required
No registry updateRegistry still shows ProductionUpdate Status + retirement date + archive locations
Lessons not capturedFramework doesn't evolveSection 8 is mandatory
Zombie schedule entriesPagerDuty + monitoring alerts still activeDisable on retirement day

Framework cross-references

  • framework.md §11.2 (per-agent lifecycle — Retirement)
  • framework.md §30 (failure patterns — no retirement = zombie agents)
  • framework.md §17 (privileged identities — revocation)
  • framework.md §22.1 EU AI Act Article 19 (log retention post-decommission)
  • framework.md §22.2 NIST AI RMF MANAGE — decommissioning
  • framework.md §22.3 ISO/IEC 42001 Clause 8 (lifecycle)
  • workflows.md Step 16 (Retirement)
  • workflows.html → In Action view → node M18 (Retire when triggered)