Change Log
beta · Family governance-docs · Phase undefined · Sizes lean, full · ~3,800 tokens
The standing register of every change requested against an agreed baseline and what was decided about each one: one row per request, never deleted, with status kept apart from decision. Distinct from the change request it tracks (one document per occasion) and from a software changelog (a release-notes artifact with no requester, decider, or decision field at all).
Fast reference for using the change-log bundle. For the full reasoning, history, and sources, read
change-log_companion.md.
When to use
Section titled “When to use”- A baseline already exists, or is about to be agreed, that someone outside the immediate team will hold you to: a spec, a PRD, a scope and a budget a sponsor signed off on. Something is being proposed against it.
- More than one person needs a standing, shared answer to “what changed here, and who agreed to it,” not just an explanation of the one change under discussion right now.
- Requests get decided in ways that are not automatically remembered: in a meeting, in a chat thread, in someone’s head. This log is the place a decision becomes durable enough to survive the person who made it moving on.
- A sponsor or governance body will eventually ask how far the baseline has actually moved in total, not just what the most recent change was. That question is answered by summing rows, never by reading one (see Pick a variant, below, and Cumulative Effect in the full variant).
When NOT to use
Section titled “When NOT to use”- Nothing has been baselined yet. This log tracks change against something that already exists and has been agreed; a document still being drafted or negotiated has no baseline yet for a change to be measured against. Route that activity through whatever process produces the first agreed version.
- It is a software release. A software changelog is a different, adjacent artifact under the same word: it is written for users and contributors, and it carries no requester, decider, or decision field at all. Route release notes there, not here.
- The team already runs PRINCE2 and keeps requests for change inside its issue register. That is a named, defensible methodology choice, not a gap this log exists to close. Decide explicitly which artifact holds the function; do not run both without saying so.
- Change routes through one person’s ongoing judgment against an emergent backlog, with no baseline that carries weight outside the team. A standing change log adds process a team like this does not need. Adopt one once a baseline exists that someone outside the team can hold the project to: a contract, a regulator, or a sponsor-signed scope and budget.
Change log, or change request?
Section titled “Change log, or change request?”The two are easy to conflate because one feeds the other. They are not interchangeable.
| Change log | Change request | |
|---|---|---|
| What it is | The standing register: one row per request | One document, filed to describe and justify a single change |
| Lifecycle | Never finished; every disposition stays on it | Filed once, decided, then archived |
| Deletion | No row is ever removed, whatever was decided | N/A, it is a single document |
| Audience | Whoever needs the cumulative, governing picture | Whoever must decide this one request |
The request feeds a row into the log; the log is not a second copy of the request, and the request is not a substitute for the log. If your team runs PRINCE2, the same relationship holds inside the issue register instead, by that methodology’s own design (see When NOT to use, above).
Pick a variant
Section titled “Pick a variant”- Lean (default): Purpose and Boundary, Status Vocabulary, Change Log, Authority and Escalation. A complete working register a team can populate and govern from the first submitted request, without a formal delivery hand-off, a standing cumulative figure anyone asks for, or a question about who keeps the log.
- Full: adds Implementation and Traceability (the target and actual delivery dates, kept apart from the decision date, plus links back to the request document and to related logs), Cumulative Effect (the running total of approved change against the baseline as first agreed), and Review and Ownership (a named keeper and a stated cadence). Move to full once a sponsor or governance body will ask, weeks later, how far the baseline has moved in total; once the decision date and the delivery date genuinely diverge often enough that conflating them would mislead a reader; or once the log needs a named owner because more than one person could plausibly be asked to keep it.
Grow lean into full by adding the three sections; the first four keep their name, order, and table. The scaling signal is whether anyone outside the team will ask about the baseline’s total movement or the gap between deciding and delivering, not how large the project is.
Quality rubric (self-grade)
Section titled “Quality rubric (self-grade)”Score each row 0, 1, or 2. Below 11 out of 16, the first reader who actually tries to trace one change through this log, from request to decision to delivery, will hit a row they cannot follow: a status standing in for a decision, a baseline named only as “the project,” or an escalation nobody can confirm was ever resolved. A lean log carries no delivery, cumulative, or ownership section to trace, so it is scored, and cleared, against a smaller table; see the scope table below.
| # | Criterion | 0 | 1 | 2 |
|---|---|---|---|---|
| 1 | Boundary is drawn | No line says which baseline, by artifact and version, this log tracks | A baseline is named, but nothing says what is deliberately left out | You can point at the sentence naming the exact baseline artifact and version, and at the sentence ruling out at least one named neighbor (the request document, a software changelog, an issue register) |
| 2 | Decision kept separate | Only a status list appears; no separate decision value is defined anywhere | A decision value exists, but a closed or denied row does not show which one it received | You can point at any closed row and name both its status and its decision, because the two are recorded as separate fields, never folded into one word |
| 3 | Rows never deleted | A rejected, withdrawn, or postponed request cannot be found on the table, and nothing states closed rows stay | A closed row exists, but nothing about it or the log’s own framing rules out that it could be quietly removed later | You can point at a row with a non-approved outcome, still on the table, carrying its reason, and the log states plainly that no row is ever removed once decided |
| 4 | Baseline named per row | A row names no baseline artifact, or names only “the project” or “the plan” | A baseline artifact is named on most rows, but its version is missing, blank, or inconsistent row to row | Every row names the exact artifact and version it would change, and a reader could go find that version without asking the keeper what it meant |
| 5 | Authority threshold stated | No decider is named, or the only statement is that “the team decides” | A decider is named, but nothing states the point at which a change must go above them | You can point at a stated threshold, in figures or scope terms, and at any row marked escalated, name who it went to and what decision is being waited on |
| 6 | Delivery dated separately (full) | One date field stands for both when a change was decided and when it shipped | Two date fields exist, but at least one implemented row leaves the actual date blank or repeats the decision date | Every implemented row carries a decision date and a separate actual date, and where they diverge, that gap is visible rather than absorbed into a single stamp |
| 7 | Cumulative effect computed (full) | No running total appears, or one appears without saying which rows produced it | A total is stated, but a reader cannot trace it back to specific rows above it | The section names the specific approved rows the total was computed from, and does not present an illustrative figure from elsewhere as though it were this log’s own measured number |
| 8 | Named keeper, current review (full) | No individual is named as keeper, or no cadence is stated | A keeper and a cadence are both named, but the log’s last-reviewed date is older than that cadence allows | A specific person is named as keeper; the cadence is stated as this team’s own choice; and the last-reviewed date falls inside it |
Rubric scope by variant
Section titled “Rubric scope by variant”| Variant | Rows scored | Maximum | Threshold |
|---|---|---|---|
| lean | 1-5 | 10 | 7 |
| full | 1-8 | 16 | 11 |
Lean ships no Implementation and Traceability, Cumulative Effect, or Review and Ownership section, so rows 6 through 8 grade content it does not carry; score a lean log against rows 1 through 5 only. A lean log at 7 out of 10 clears a comparable bar to a full log at 11 out of 16.
Named anti-patterns (the usual wrecks)
Section titled “Named anti-patterns (the usual wrecks)”- A status standing in for a decision. “Closed” tells a reader the row stopped moving, not which way it went; a change can be closed because it was approved, or closed because it was rejected, and the word alone cannot say which. Fix: a decision field, kept apart from status, on every row that is no longer open.
- A rejected or withdrawn row quietly removed. Deleting a row that went the wrong way erases the record that the request was ever considered, and invites the same request to come back with nobody able to say it was already declined and why. Fix: every disposition stays on the table, with its reason, for as long as the log exists.
- The baseline left unnamed. “Tracks changes to the project” tells a reader nothing they could check. Without an artifact and a version, two readers can disagree about which document a row is even changing. Fix: name the baseline, by artifact and version, in the Purpose and Boundary section and again on every row.
- Authority named without a threshold. “The board approves changes” says who decides, not when a change is small enough to skip them. Without a stated threshold, every request becomes its own argument about whether to ask. Fix: state the threshold before it is tested, not the first time a change reaches it.
- One date doing the work of two (full). Recording only an “approval date” and letting it stand for both the decision and the delivery hides exactly the gap a later reader, or an auditor, most needs to see. Fix: a decision date and a separate actual date, on every implemented row.
- A cumulative figure asserted instead of computed (full). A running total that does not trace back to the specific rows behind it is a guess wearing the shape of a measurement. Fix: name the rows the total was built from, every time it is stated.
- A log with no named keeper, or a review date nobody kept current (full). A register nobody owns and nobody actually reopens is a file, not an instrument, however complete its rows look on the day it was written. Fix: one named person as keeper, and a last-reviewed date that stays inside its own stated cadence.
- Collapsing this log into the request it tracks, or into a software changelog. The request is one document about one change; this log is the standing register that outlives any single request. A software changelog serves users and contributors and carries no requester, decider, or decision field at all. A log that has quietly become either has stopped doing this artifact’s job. Fix: keep the two documents apart, and route release notes to the artifact built for them.
No paired skill (yet)
Section titled “No paired skill (yet)”There is no governance skill in the product-on-purpose org today that this bundle’s pairs_with could
point to, so it adopts [] until one exists. The one pm-skills name that looks like a match,
utility-pm-changelog-curator, drafts software changelog entries from git history: a different artifact
under the same word, not this one (see When NOT to use, above). Until a governance-side skill exists, this
template is filled by hand.
The artifacts
Section titled “The artifacts”change-log_template-lean.md · ~3,800 tokens
---title: "{{project_name}} Change Log"project: "{{project_name}}"status: "{{status}}"doc_type: change-logsize: leansource_template: change-logsource_template_version: 0.1.0---
<!--LEAN CHANGE LOG. The smallest change log that is still a real one: the baseline (or baselines) it tracksand what does not belong in it, the status and decision vocabulary stated once, the load-bearing tableitself (one row per change request, and no row is ever deleted), and the authority that decides plus thepoint at which a change goes above it. Use it when the team decides and closes its own changes without aformal delivery hand-off, a standing cumulative figure anyone asks for, or more than one person who couldplausibly be asked to keep the log. To grow it into the governance-grade form (seechange-log_template-full.md), ADD sections; never rename or reorder the ones below, because the fullvariant is a strict superset of this one.
WHAT A CHANGE LOG IS. Three named bodies describe the same job in close to the same words. PMI's ownerrata to the PMBOK Guide states it plainly: "The change log is used to record all submitted changerequests." The European Commission's PM² guide adds the verb the log actually serves: "A Change Log isused to document, monitor and control all project changes (see Appendix B)." The Association for ProjectManagement's glossary states the outcome named: "A record of all project changes: proposed, authorised,rejected or deferred." It is a standing, cumulative register, kept apart from the request document itselfand from the decision recorded about each row. See change-log_companion.md section 1.
IT IS NOT THE CHANGE REQUEST, AND IT IS NOT A SOFTWARE CHANGELOG. A change request is one document, filedto describe and justify a single proposed change; this log is the standing register that gets one row perrequest, whatever its eventual disposition. A software changelog is a different artifact under theidentical word: "A changelog is a file which contains a curated, chronologically ordered list of notablechanges for each version of a project." It is written for users and contributors, with no requester,decider, decision, or status field at all. See change-log_companion.md section 1 and section 8.
PRINCE2 KEEPS THIS INSIDE ITS ISSUE REGISTER, BY DESIGN. A team already running PRINCE2 records a requestfor change as one of its issue types ("Issues must be recorded in the issue register") and names a changelog only as an alternative place to write the eventual decision. This is a named methodology choice, not agap this template is filling. See change-log_companion.md section 1 and section 5.
HOW TO FILL THIS IN1. Read the comment under each heading: WHAT, WHY (with a companion pointer), ASK, GOOD, WEAK, TRAP; the status list and the table also carry PRIORITY and ROW HINT.2. Replace each {{placeholder}}. The Change Log table is the heart; no row is ever deleted, including a rejected, withdrawn, or postponed one, and each row names the baseline it would change, by artifact and version.3. If a section does not apply, write "N/A" and one line of why, rather than deleting it.4. This document is never finished, but before you share it: self-grade against change-log_guide.md, then DELETE every HTML comment. They are guidance, not content.-->
# {{project_name}} Change Log
## Purpose and Boundary
<!-- WHAT A short statement of which baseline, or baselines, this log tracks, by artifact and version, and what does not belong in it. WHY The name collides with two other documents a reader will meet under similar words, and the first job of this section is to rule them out before the table starts. A software changelog exists for a different purpose, stated in its own governing convention: "To make it easier for users and contributors to see precisely what notable changes have been made between each release (or version) of the project." It carries no requester, decider, or decision field at all. PRINCE2 is the named exception on the methodology side: it keeps a request for change inside its issue register and names a change log only as an alternative place the decision "should be documented in the issue register or change log." Deep dive: change-log_companion.md section 3 (Purpose and Boundary). ASK Which baseline, or baselines, does this log track, by artifact and version? What does not belong here: the change request document itself (a separate document that feeds one row into this log), a software changelog, or, if this team runs PRINCE2, its issue register? Who is expected to read this log? GOOD "This log tracks change requests against the Business License Renewal Requirements specification, currently version 2.0. It is not the change request form itself (each request is filed as its own document; this log gets one row per request) and not a software changelog (no code releases are tracked here)." WEAK "Tracks changes to the project." (no baseline named by artifact or version, and does not say what is deliberately left out) TRAP Treating a single request document as though it were this log, or letting this log absorb a software release's changelog. Name the baseline and rule the neighbors out before the table starts. -->
{{purpose_and_boundary}}
## Status Vocabulary
<!-- WHAT The status values a change request can hold on this log, and, kept apart from status, the decision values that record what was actually decided. WHY No two published sources use the same status list, and naming both up front is what keeps the table itself short. PM²'s guide offers "Submitted, Investigating, Waiting for approval, Approved, Rejected, Postponed, Merged or Implemented" as one sourced default (its own appendix names the second value "Assessing: Use this status to initiate an assessment" instead, an inconsistency in the source itself, not a choice this template is making for you); Connecticut DSS offers "Submitted, In Review, Approved, Denied, Deferred, Withdrawn, or Closed" as an alternative. Decision is kept distinct from status, following PM²'s own field: "There are four possible decisions: approve, reject, postpone or merge the change request." HHS's own "Closed" value shows why the split matters: "The change request is no longer considered an active project threat and can be closed with or without resolution." That sentence never says which way it went. Deep dive: change-log_companion.md section 3 (Status Vocabulary) and section 6 (which statuses, and is the decision a status). ASK What status values does this log use, stated once so every row is comparable? What decision values are possible, kept apart from status? What priority scale does the Change Log table below assume? PRIORITY State the list here, once, rather than letting each row invent its own values. If a published source you are borrowing from is internally inconsistent about a value's name (as PM²'s own guide is), say so rather than silently picking one and hiding the source's own disagreement. ROW HINT A good status value says what triggers moving into it. A weak one is a bare word with nothing to distinguish it from its neighbors, or a status like "Closed" that never says which way the decision went. GOOD "Status: Submitted, Investigating, Waiting for approval, Approved, Rejected, Postponed, Merged, Implemented. Decision, kept apart from status: Approve, Reject, Postpone, or Merge. Priority: Critical, High, Medium, Low." WEAK "Open or Closed." (two values, no decision field, and Closed hides whether the request was approved or rejected) TRAP Treating "Closed" as though it says what was decided. A closed row still needs its own Decision field stated, or a reader cannot tell an approved change from a rejected one. -->
**Status values:** {{status_values}}
**Decision values (kept apart from status):** {{decision_values}}
**Priority scale:** {{priority_scale}}
## Change Log
<!-- WHAT The load-bearing table, one row per change request: an identifier, its category, a one-line description of the change, the baseline it would change (by artifact and version), who requested it and when, its priority, its status, the decision made and the reason for it, and who decided it and when. WHY HHS states the rule the whole table exists to keep: "Each change request should be recorded as a single line item. Do not combine multiple requests under one change request ID." No row is ever deleted for having gone the wrong way: APM's own definition already names rejected and deferred outcomes as part of what the log records, not exceptions to it ("proposed, authorised, rejected or deferred"), and Connecticut carries "Withdrawn" and "Deferred" as ordinary statuses, not removals. Keeping a rejected row on record "prevents the same request from being resubmitted without understanding why it was declined." Three or more of the published field lists checked for this bundle share an identifier, a description, the date raised, and a status; most also carry a requester and a priority. This template adds two fields beyond that shared spine: the baseline each request would change, following HHS's own shared data element: "The product version that the suggested change is for." The second is the decision with its reason, kept beside the row (HHS's own spreadsheet carries this as a field named "Final Resolution & Rationale", and Connecticut's own log carries a Resolution/Comments column). Who decided a change and when belong here, in lean; the full variant adds the surrounding delivery detail without adding a new field's worth of judgment to this table. Deep dive: change-log_companion.md section 3 (Change Log). ASK For each change request: what is its identifier and category? What is the change, in one line? Which baseline does it change, by artifact and version? Who requested it, and when? What is its priority and current status? What was decided, and why? Who decided it, and when? PRIORITY No row is ever deleted, including a rejected, withdrawn, or postponed one. Decision is a distinct field from status, never folded into it. Baseline is named by artifact and version, never left as "the plan." ROW HINT A good row names the baseline by artifact and version, states the decision and its reason in the same cell, and names one person as decider. A weak row leaves the decision blank because the status column looks like it already says enough. GOOD | CHG-014 | Scope | Add a 10-day grace-period reminder email before a business license lapses | Business License Renewal Requirements | 2.0 | Dana Okafor, 2026-04-03 | Medium | Approved, with a condition | Reduces late-renewal calls to the service desk; condition is a confirmed sender identity for the reminder email | Luis Ferreira, 2026-04-15 | WEAK | CHG-014 | | Reminder email | | | | | Approved | | | TRAP Recording only a status and leaving the decision cell blank, or deleting a row once a request is rejected. Both leave the next reader unable to tell what actually happened to that request. -->
| ID | Category | Change | Baseline artifact | Baseline version | Requested by (date) | Priority | Status | Decision (and reason) | Decided by (date) ||---|---|---|---|---|---|---|---|---|---|| {{change_id}} | {{category}} | {{change_description}} | {{baseline_artifact}} | {{baseline_version}} | {{requested_by_date}} | {{priority}} | {{status}} | {{decision_and_reason}} | {{decided_by_date}} |
## Authority and Escalation
<!-- WHAT Who may decide which changes on this log, and the point at which a change goes above that person or group. WHY Every source found on this subject is actually about who holds the authority to decide; escalation is simply what happens when a change exceeds it, which is why this section carries this name rather than the more common "Escalation" alone. PRINCE2's practitioner literature states the role plainly: "The change authority is a person or group to whom the project board may delegate responsibility for reviewing and approving change requests or off-specifications." HHS supplies a worked threshold from its own program: "a project manager (PM) may be authorized to personally approve changes with a project impact of less than $5,000" (HHS's own figure, reported here as its example, not as a rule this template sets for every project). PM² carries the same idea as a per-row flag rather than a policy statement: "Escalation to the Directing or Steering layer is needed? (Yes or No)." Deep dive: change-log_companion.md section 3 (Authority and Escalation). ASK Who decides a change on this log, by default? At what point does a change go above that person or group, stated as a threshold rather than left to a judgment call each time? What is currently escalated, to whom, and what decision is being waited on? PRIORITY State the threshold before it is needed, not the first time a change tests it. Escalate to get a decision, never to assign fault for the change itself. ROW HINT A good escalation entry names the change, who it went to, the date, and the decision being waited on. A weak entry says only "escalated," with nothing else a reader could follow up on. GOOD "Authority: Luis Ferreira, licensing program manager, decides any change to the renewal service's own screens, wording, or reminder schedule. A change to a fee, an eligibility rule, or a statutory deadline goes to the licensing board, because those are set outside the service. Currently escalated: CHG-017, to the licensing board on 2026-04-22, waiting on whether a late fee may be waived after a service outage." WEAK "Whoever is around approves it." (no named authority, no threshold, and nothing to check an escalation against) TRAP Naming a board as the decider without stating which changes it actually decides. Without a threshold, every row becomes its own judgment call about whether to ask. -->
**Authority:** {{authority}}
**Escalation threshold:** {{escalation_threshold}}
**Currently escalated:** {{escalation_record}}change-log_template-full.md · ~5,950 tokens
---title: "{{project_name}} Change Log"project: "{{project_name}}"log_keeper: "{{log_keeper}}"last_reviewed: "{{date}}"review_cadence: "{{cadence}}"status: "{{status}}"doc_type: change-logsize: fullsource_template: change-logsource_template_version: 0.1.0---
<!--FULL CHANGE LOG. Everything in the lean variant, plus what happened once a change was decided (the targetand actual delivery dates, kept apart from the decision date, and links back to the request and to relatedlogs), the running total of approved change against the baseline as first agreed, and a named keeper witha stated review cadence. Use it when a sponsor or governance body will ask, weeks later, how far thebaseline has actually moved in total, when the decision date and the delivery date genuinely diverge oftenenough that conflating them would mislead a reader, or when the log needs a named owner because more thanone person could plausibly be asked to keep it.
This is a STRICT SUPERSET of change-log_template-lean.md: the first four sections are identical in nameand order, with the same table. If you are growing from lean, add the last three sections; do not reorder.
WHAT A CHANGE LOG IS. Three named bodies describe the same job in close to the same words. PMI's ownerrata to the PMBOK Guide states it plainly: "The change log is used to record all submitted changerequests." The European Commission's PM² guide adds the verb the log actually serves: "A Change Log isused to document, monitor and control all project changes (see Appendix B)." The Association for ProjectManagement's glossary states the outcome named: "A record of all project changes: proposed, authorised,rejected or deferred." It is a standing, cumulative register, kept apart from the request document itselfand from the decision recorded about each row. See change-log_companion.md section 1.
IT IS NOT THE CHANGE REQUEST, AND IT IS NOT A SOFTWARE CHANGELOG. A change request is one document, filedto describe and justify a single proposed change; this log is the standing register that gets one row perrequest, whatever its eventual disposition. A software changelog is a different artifact under theidentical word: "A changelog is a file which contains a curated, chronologically ordered list of notablechanges for each version of a project." It is written for users and contributors, with no requester,decider, decision, or status field at all. See change-log_companion.md section 1 and section 8.
PRINCE2 KEEPS THIS INSIDE ITS ISSUE REGISTER, BY DESIGN. A team already running PRINCE2 records a requestfor change as one of its issue types ("Issues must be recorded in the issue register") and names a changelog only as an alternative place to write the eventual decision. This is a named methodology choice, not agap this template is filling. See change-log_companion.md section 1 and section 5.
HOW TO FILL THIS IN1. Read the comment under each heading: WHAT, WHY (with a companion pointer), ASK, GOOD, WEAK, TRAP; the status list and every table also carry PRIORITY and ROW HINT.2. Replace each {{placeholder}}. The Change Log table is the heart; no row is ever deleted, including a rejected, withdrawn, or postponed one, and each row names the baseline it would change, by artifact and version.3. If a section does not apply, write "N/A" and one line of why, rather than deleting it.4. This document is never finished, but before you share it: self-grade against change-log_guide.md, then DELETE every HTML comment. They are guidance, not content.-->
# {{project_name}} Change Log
## Purpose and Boundary
<!-- WHAT A short statement of which baseline, or baselines, this log tracks, by artifact and version, and what does not belong in it. WHY The name collides with two other documents a reader will meet under similar words, and the first job of this section is to rule them out before the table starts. A software changelog exists for a different purpose, stated in its own governing convention: "To make it easier for users and contributors to see precisely what notable changes have been made between each release (or version) of the project." It carries no requester, decider, or decision field at all. PRINCE2 is the named exception on the methodology side: it keeps a request for change inside its issue register and names a change log only as an alternative place the decision "should be documented in the issue register or change log." Deep dive: change-log_companion.md section 3 (Purpose and Boundary). ASK Which baseline, or baselines, does this log track, by artifact and version? What does not belong here: the change request document itself (a separate document that feeds one row into this log), a software changelog, or, if this team runs PRINCE2, its issue register? Who is expected to read this log? GOOD "This log tracks change requests against the Business License Renewal Requirements specification, currently version 2.0. It is not the change request form itself (each request is filed as its own document; this log gets one row per request) and not a software changelog (no code releases are tracked here)." WEAK "Tracks changes to the project." (no baseline named by artifact or version, and does not say what is deliberately left out) TRAP Treating a single request document as though it were this log, or letting this log absorb a software release's changelog. Name the baseline and rule the neighbors out before the table starts. -->
{{purpose_and_boundary}}
## Status Vocabulary
<!-- WHAT The status values a change request can hold on this log, and, kept apart from status, the decision values that record what was actually decided. WHY No two published sources use the same status list, and naming both up front is what keeps the table itself short. PM²'s guide offers "Submitted, Investigating, Waiting for approval, Approved, Rejected, Postponed, Merged or Implemented" as one sourced default (its own appendix names the second value "Assessing: Use this status to initiate an assessment" instead, an inconsistency in the source itself, not a choice this template is making for you); Connecticut DSS offers "Submitted, In Review, Approved, Denied, Deferred, Withdrawn, or Closed" as an alternative. Decision is kept distinct from status, following PM²'s own field: "There are four possible decisions: approve, reject, postpone or merge the change request." HHS's own "Closed" value shows why the split matters: "The change request is no longer considered an active project threat and can be closed with or without resolution." That sentence never says which way it went. Deep dive: change-log_companion.md section 3 (Status Vocabulary) and section 6 (which statuses, and is the decision a status). ASK What status values does this log use, stated once so every row is comparable? What decision values are possible, kept apart from status? What priority scale does the Change Log table below assume? PRIORITY State the list here, once, rather than letting each row invent its own values. If a published source you are borrowing from is internally inconsistent about a value's name (as PM²'s own guide is), say so rather than silently picking one and hiding the source's own disagreement. ROW HINT A good status value says what triggers moving into it. A weak one is a bare word with nothing to distinguish it from its neighbors, or a status like "Closed" that never says which way the decision went. GOOD "Status: Submitted, Investigating, Waiting for approval, Approved, Rejected, Postponed, Merged, Implemented. Decision, kept apart from status: Approve, Reject, Postpone, or Merge. Priority: Critical, High, Medium, Low." WEAK "Open or Closed." (two values, no decision field, and Closed hides whether the request was approved or rejected) TRAP Treating "Closed" as though it says what was decided. A closed row still needs its own Decision field stated, or a reader cannot tell an approved change from a rejected one. -->
**Status values:** {{status_values}}
**Decision values (kept apart from status):** {{decision_values}}
**Priority scale:** {{priority_scale}}
## Change Log
<!-- WHAT The load-bearing table, one row per change request: an identifier, its category, a one-line description of the change, the baseline it would change (by artifact and version), who requested it and when, its priority, its status, the decision made and the reason for it, and who decided it and when. WHY HHS states the rule the whole table exists to keep: "Each change request should be recorded as a single line item. Do not combine multiple requests under one change request ID." No row is ever deleted for having gone the wrong way: APM's own definition already names rejected and deferred outcomes as part of what the log records, not exceptions to it ("proposed, authorised, rejected or deferred"), and Connecticut carries "Withdrawn" and "Deferred" as ordinary statuses, not removals. Keeping a rejected row on record "prevents the same request from being resubmitted without understanding why it was declined." Three or more of the published field lists checked for this bundle share an identifier, a description, the date raised, and a status; most also carry a requester and a priority. This template adds two fields beyond that shared spine: the baseline each request would change, following HHS's own shared data element: "The product version that the suggested change is for." The second is the decision with its reason, kept beside the row (HHS's own spreadsheet carries this as a field named "Final Resolution & Rationale", and Connecticut's own log carries a Resolution/Comments column). Who decided a change and when belong here, in lean; the full variant adds the surrounding delivery detail without adding a new field's worth of judgment to this table. Deep dive: change-log_companion.md section 3 (Change Log). ASK For each change request: what is its identifier and category? What is the change, in one line? Which baseline does it change, by artifact and version? Who requested it, and when? What is its priority and current status? What was decided, and why? Who decided it, and when? PRIORITY No row is ever deleted, including a rejected, withdrawn, or postponed one. Decision is a distinct field from status, never folded into it. Baseline is named by artifact and version, never left as "the plan." ROW HINT A good row names the baseline by artifact and version, states the decision and its reason in the same cell, and names one person as decider. A weak row leaves the decision blank because the status column looks like it already says enough. GOOD | CHG-014 | Scope | Add a 10-day grace-period reminder email before a business license lapses | Business License Renewal Requirements | 2.0 | Dana Okafor, 2026-04-03 | Medium | Approved, with a condition | Reduces late-renewal calls to the service desk; condition is a confirmed sender identity for the reminder email | Luis Ferreira, 2026-04-15 | WEAK | CHG-014 | | Reminder email | | | | | Approved | | | TRAP Recording only a status and leaving the decision cell blank, or deleting a row once a request is rejected. Both leave the next reader unable to tell what actually happened to that request. -->
| ID | Category | Change | Baseline artifact | Baseline version | Requested by (date) | Priority | Status | Decision (and reason) | Decided by (date) ||---|---|---|---|---|---|---|---|---|---|| {{change_id}} | {{category}} | {{change_description}} | {{baseline_artifact}} | {{baseline_version}} | {{requested_by_date}} | {{priority}} | {{status}} | {{decision_and_reason}} | {{decided_by_date}} |
## Authority and Escalation
<!-- WHAT Who may decide which changes on this log, and the point at which a change goes above that person or group. WHY Every source found on this subject is actually about who holds the authority to decide; escalation is simply what happens when a change exceeds it, which is why this section carries this name rather than the more common "Escalation" alone. PRINCE2's practitioner literature states the role plainly: "The change authority is a person or group to whom the project board may delegate responsibility for reviewing and approving change requests or off-specifications." HHS supplies a worked threshold from its own program: "a project manager (PM) may be authorized to personally approve changes with a project impact of less than $5,000" (HHS's own figure, reported here as its example, not as a rule this template sets for every project). PM² carries the same idea as a per-row flag rather than a policy statement: "Escalation to the Directing or Steering layer is needed? (Yes or No)." Deep dive: change-log_companion.md section 3 (Authority and Escalation). ASK Who decides a change on this log, by default? At what point does a change go above that person or group, stated as a threshold rather than left to a judgment call each time? What is currently escalated, to whom, and what decision is being waited on? PRIORITY State the threshold before it is needed, not the first time a change tests it. Escalate to get a decision, never to assign fault for the change itself. ROW HINT A good escalation entry names the change, who it went to, the date, and the decision being waited on. A weak entry says only "escalated," with nothing else a reader could follow up on. GOOD "Authority: Luis Ferreira, licensing program manager, decides any change to the renewal service's own screens, wording, or reminder schedule. A change to a fee, an eligibility rule, or a statutory deadline goes to the licensing board, because those are set outside the service. Currently escalated: CHG-017, to the licensing board on 2026-04-22, waiting on whether a late fee may be waived after a service outage." WEAK "Whoever is around approves it." (no named authority, no threshold, and nothing to check an escalation against) TRAP Naming a board as the decider without stating which changes it actually decides. Without a threshold, every row becomes its own judgment call about whether to ask. -->
**Authority:** {{authority}}
**Escalation threshold:** {{escalation_threshold}}
**Currently escalated:** {{escalation_record}}
## Implementation and Traceability
<!-- WHAT What happened once a change was decided: the target delivery date and the actual delivery date, kept apart from the decision date; what was actually updated and to which version; and links out to the change request document and to any related issue, risk, or decision. WHY The date a change is decided is not the date it ships, and a real audit shows exactly how that gap becomes a problem when nobody tracks it: an inspector general's review of a real change-order system found "the approval date in eBuilder represents the date that the staff finalized the approval process for a change order and not the Governing Boards authorization date." PM² keeps the two dates apart for exactly this reason: "The target date for the change to be delivered." and, separately, "The date on which the change was actually delivered." Traceability out to other logs is PM²'s own field, stated directly: "The ID(s) of the tasks (in the Project Work Plan) that implement the change, and/or the IDs of related issues, risks or decisions." PM²'s own Implemented status is the sourced definition of what closes this section out: "the work implementing this change has been incorporated into the Project Work Plan." A second, independent source names a matching field for the same event: "Date Request Integrated into Project Plan." Deep dive: change-log_companion.md section 3 (Implementation and Traceability). ASK For each decided change: what is the target delivery date? What is the actual delivery date, once it exists, and does it differ from the target? What was actually updated, and to which version? What does this row link back to: the change request document, and any issue, risk, or decision it came from? PRIORITY Target date and actual date are two fields, never one; a row with only one date cannot show whether delivery slipped. Link out to the request and to related logs rather than copying their detail into this table. ROW HINT A good row names the artifact updated and its new version, and links to the request document by ID rather than restating it. A weak row says "delivered" with no date it can be checked against. GOOD | CHG-014 | 2026-05-01 | 2026-05-06 | Business License Renewal Requirements, 2.0 to 2.1 | Change request CHG-014; no issue or risk raised this | WEAK | CHG-014 | | Done | | | TRAP Recording a single "approval date" and letting it stand for both the decision and the delivery. The two events genuinely differ, and a reader who only sees one date cannot tell which one it is. -->
| ID | Target date | Actual date | Updated (artifact, version) | Links ||---|---|---|---|---|| {{change_id}} | {{target_date}} | {{actual_date}} | {{updated_artifact_version}} | {{links}} |
## Cumulative Effect
<!-- WHAT The running total of approved change against the baseline as it was first agreed, computed from this log's own rows rather than read off any single one of them. WHY No single row shows drift; only the sum of many rows does, and this is the section this bundle's research added rather than inherited from any single published field list. An APM practitioner names the function directly: the register "provides an audit history of how the change has been managed and shows the additional time/cost/scope that has been approved since the project scope was first agreed." A real inspector general's audit computed exactly this, approved change as a percentage of the original contract value, because a list of individual entries does not itself show the compounding effect against a baseline. A practitioner's own illustration of the same mechanism states, "By week eight, the cumulative impact of those small changes had shifted the schedule by two weeks." That line is stated here as an illustration of the mechanism, not a measured finding; nothing in this bundle's research measured how often or how far real projects actually drift this way. Deep dive: change-log_companion.md section 3 (Cumulative Effect). ASK Since the baseline was first agreed, how many changes have been approved? What is the running total effect on schedule, cost, and scope, computed from the rows above rather than asserted on its own? Is the total worth a decision-maker's attention yet? GOOD "Since Business License Renewal Requirements v2.0 was baselined, two changes have been approved (CHG-011, CHG-014). Together they add one week of schedule and no new cost (illustrative figures, computed from the rows above, not a measured industry finding)." WEAK "Several small changes have been approved." (no total, computed from nothing, and gives a decision-maker nothing to act on) TRAP Treating a week-eight-style figure from a published example as though it were a measured rate for how projects typically drift. It is one practitioner's illustration of the mechanism, not a finding this bundle's research measured. -->
{{cumulative_effect}}
## Review and Ownership
<!-- WHAT The named keeper of this log, the cadence at which it is reviewed, and what closes an approved row against its baseline. WHY A register nobody owns and nobody reviews is a file, not an instrument. Named sources do not agree on the keeper's title: one program names the Change Manager as the one who enters requests: "The Change Manager enters the CR into the CR Log." Another names a Change Request Coordinator instead, "responsible for maintaining the Change Request Log on behalf of the Change Management Lead." No source read separates the person who decides a change from the person who writes its row as a general rule, so this template asks for a named keeper and leaves the title to the team. Only one figure on review cadence is sourced at all, and it concerns reviewing change requests, not the log as a standing artifact: "the review process may happen daily but should happen at least weekly for even the simplest projects." Any other cadence, including the one this section asks you to state, is this team's own choice, not a practice this bundle recommends. Closing each approved row against its baseline is sourced: "For approved or merged changes, the Project Manager (PM) should incorporate all related actions into the Project Work Plan and update the related documentation and logs (i.e. Risk, Issue, Change and Decision Logs and other plans)." The Implemented status above, and the integration column named in the sourced alternative field, are the row's record of it. A periodic audit of the whole log beyond that is this library's own position, not sourced practice. Deep dive: change-log_companion.md section 3 (Review and Ownership). ASK Who is the one named keeper of this log? How often is it reviewed, and by whom? What closes an approved row: the Implemented status, an integration record, or something else this team states? Is the cadence stated here this team's own choice, or does it borrow a figure that was sourced for something else? GOOD "Kept by Dana Okafor, Service Owner. Reviewed every two weeks alongside the service's status report; the cadence is this team's own choice, not a borrowed practice. A row closes once its Implemented status is set and the artifact it updated is confirmed at the new version. Last reviewed 2026-05-06." WEAK "Reviewed regularly." (no keeper named, no stated cadence, and no rule for what actually closes a row) TRAP Borrowing the one sourced cadence figure, which concerns reviewing open change requests, and presenting it as if it were a sourced recommendation for reviewing this log as a standing artifact. State your own cadence and say plainly that it is a choice. -->
{{review_and_ownership}}---title: "Acme Analytics - Reporting Platform Modernization Change Log"project: "Reporting Platform Modernization"log_keeper: "Marta Reyes (Program Manager, Reporting Platform Modernization)"last_reviewed: "2026-08-17"review_cadence: "Weekly with workstream leads, the same day as the RAID log and issue log review"status: activerelated: ["../change-request/change-request_example.md (CR-SV-01, the one request this log carries a row for)", "../issue-log/issue-log_example.md (the program issue log; its Purpose and Threshold section states that a change request never lands there)", "../raid-log/raid-log_example.md (the program RAID log)", "../risk-register/risk-register_example.md (the program risk register)", "../prd/prd_example.md (Saved Views for Dashboards PRD, the baseline CR-SV-01 targets)"]doc_type: change-logsize: fullsource_template: change-logsource_template_version: 0.1.0---
> **Worked example.** A filled `change-log`, full variant, for the Reporting Platform Modernization program> at the fictional Acme Analytics - the same program the> [`prd`](../prd/prd_example.md), [`change-request`](../change-request/change-request_example.md),> [`issue-log`](../issue-log/issue-log_example.md), [`risk-register`](../risk-register/risk-register_example.md),> [`raid-log`](../raid-log/raid-log_example.md), and [`kpi-dashboard`](../kpi-dashboard/kpi-dashboard_example.md)> examples already cover. `change-log` joined the `governance-docs` family as its fifth member on 2026-09-27> under [ADR 0061](../../docs/internal/decisions/0061-change-log-joins-governance-docs-as-a-fifth-member.md),> so this log is shown as it stood at its own 2026-08-17 review, once CR-SV-01's decision had landed; the> risk register, the RAID log, the issue log and the KPI dashboard keep their 2026-07-20 review. *(Corrected 2026-09-30: this> log shared that 2026-07-20 review until the change request it carries moved to August with the corrected> 2.4.0 release date.)* It carries one row, `CR-SV-01`, the change> request [`change-request_example.md`](../change-request/change-request_example.md) already shows in full;> this document is the standing register that request feeds, not a second copy of it. All names, figures,> and dates not already established in the library's Acme Analytics thread are illustrative.
# Acme Analytics - Reporting Platform Modernization Change Log
## Purpose and Boundary
This log tracks requests to change any artifact the Reporting Platform Modernization program has alreadybaselined. Today that means one artifact: the [Saved Views for Dashboards PRD](../prd/prd_example.md),currently at version 0.3.0. It is not the request document itself: each request, like[CR-SV-01](../change-request/change-request_example.md), stands as a document of its own, and this log getsexactly one row per request, whatever the eventual disposition turns out to be. It is not the program'srelease notes either, which announce what actually shipped to the people using it and carry no requester,decider, or decision field of their own; a release is a release, not a change against this program'sbaseline. It is not a separate decision log: this program records a change's decision inside this log's ownDecision column rather than standing up a second artifact for it, a choice stated here rather than left fora reader to guess at. And it is not where the [issue log](../issue-log/issue-log_example.md) sends anything:that log's own Purpose and Threshold section already states that a request for change on this program ishanded straight to this log's process the day it is raised, so no row on the issue log ever carries one, andno row here originates from a resolved issue either. Read by the program manager, the workstream leads whoneed to know what was asked against their own baseline, and the steering group on the rare row that reachesit.
## Status Vocabulary
**Status values:** Submitted, Under review, Approved, Postponed, Rejected, Implemented. This program foldedtwo stages of a published eight-value list into one Under review stage rather than tracking each assessmentstep on its own, and has dropped a Merged value entirely: no two requests on this program have ever neededto be combined into one, and the vocabulary does not carry a value nobody has used.
**Decision values (kept apart from status):** Approved, Rejected, Postponed. A closed row's status alonenever tells a reader which way a request went; the Decision column, right of Status in the table below,always says so, along with the reason.
**Priority scale:** High, Medium, Low, or Not set. Not set applies when a request's priority has not actuallybeen set - not "Low" standing in for "we have not looked at this yet," but its own honest label, used belowon the program's one row so far.
## Change Log
No row on this log is ever removed, whatever was decided. Only one request has been raised against thisprogram's baseline since it was first agreed, and its disposition was not to approve it.
| ID | Category | Change | Baseline artifact | Baseline version | Requested by (date) | Priority | Status | Decision (and reason) | Decided by (date) ||---|---|---|---|---|---|---|---|---|---|| CR-SV-01 | Scope | Scheduled Email Delivery for Saved Views: a recurring scheduled-email send for a saved view a user has already captured, a piece of a non-goal the PRD named and set aside when the underlying feature shipped | Saved Views for Dashboards PRD | 0.3.0 | Priya Nair (PM, Reporting), 2026-08-04 | Not set - a real estimate, and the priority that would follow from it, was deliberately left for a cycle with room to do the work justice | Postponed | Postponed - building it this quarter would displace platform engineering work the program has already committed to; revisit once a release has room, rather than build it now or rule it out for good | Marta Reyes (Program Manager, Reporting Platform Modernization), 2026-08-14 |
## Authority and Escalation
**Authority:** the program manager, Marta Reyes, decides anything that commits no new cost and leaves theprogram's own Q3 launch date exactly where it already sits.
**Escalation threshold:** a request that would either commit new cost or move the Q3 launch date needs thesteering group's own sign-off before it can be approved - the same body the risk register and the RAID logescalate to when a risk or an issue outgrows the program manager's authority on its own.
**Currently escalated:** nothing on this log. CR-SV-01's postponement sat entirely inside Marta Reyes's ownauthority: postponing a request neither commits new cost today nor moves the Q3 date, so nothing about thedecision needed to go above Marta Reyes.
## Implementation and Traceability
| ID | Target date | Actual date | Updated (artifact, version) | Links ||---|---|---|---|---|| CR-SV-01 | Not set - no release has been scoped yet that could carry this work | Not applicable - nothing has shipped | None. The [Saved Views for Dashboards PRD](../prd/prd_example.md) stays at version 0.3.0, unchanged by this request | [Change request CR-SV-01](../change-request/change-request_example.md), raised from account-management feedback, not from anything already on this program's other logs; it has not fed a row back onto any of them either |
## Cumulative Effect
Since the [Saved Views for Dashboards PRD](../prd/prd_example.md) was baselined at version 0.3.0, this loghas approved zero changes against it. Its one row, CR-SV-01, was postponed rather than approved, so it addsnothing to that total: a request only counts toward the running figure once its Decision column readsApproved, and this one does not. *(Illustrative: this program's baseline has not moved since it was firstagreed, and the total above is read straight off the single row in the table, not asserted on its own.)*
## Review and Ownership
Kept by Marta Reyes, the program manager, who also keeps this program's risk register, RAID log, and issuelog. This log's own review has not needed a cadence of its own: it joins the weekly workstream review theRAID log and issue log already hold, on the same day, rather than pulling the workstream leads into a secondmeeting for one artifact. A row closes once its status reaches Implemented and the artifact it named isconfirmed at the new baseline version named in the row above; CR-SV-01 has not reached that point, and is notexpected to until a later cycle takes the work back up. Last reviewed 2026-08-17; next review 2026-08-24.
*(All names, figures, and dates are illustrative.)*Provenance
Section titled “Provenance”The reasoning, the history and every source, in the repository:
- Companion - the long-form argument: why these sections, where the sources disagree, and what the bundle refuses to claim
- History - what changed in this bundle, and when
- Research log - every source consulted, with what each one actually supports
- Catalog metadata - the machine-readable record this page is generated from
Catalog record: 7 sections across 1 format(s).