---
id: ADR-CRM-ACT-012
title: Activity history is written by the database at commit; tasks keep stamps only
product_area: crm
module: activities-tasks
revision: 1
status: proposed
design_intent: proposed
source_sha:
  services-crm: a8d1364f1dd44b723bb5f9acba12f983e9ec8d69
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
decision: >-
  Settle committed interaction history through the database’s history-only change stream,
  while tasks retain attribution stamps without full revision history pending Product’s
  decision.
constrains:
  - DOM-CRM-ACT-001
  - DOM-CRM-ACT-003
  - SVC-CRM-ACT-activities
  - SVC-CRM-ACT-tasks
  - WF-CRM-ACT-001
  - WF-CRM-ACT-002
origin: >-
  Andrew's ruling D-49 (Version History in the activity sheet via shared audit views); CRM
  record history design (services-crm docs/record-history.md); task history is open
  question OQ-CRM-ACT-001.
alternatives:
  - option: Write interaction revisions separately from application save code.
    why_not: >-
      Each write path would need to remember capture and preserve its integrity outside
      the established database settlement.
  - option: Add complete task revision history immediately.
    why_not: >-
      The planning layer leaves task history open, so this requires a product decision and
      additional capture and read infrastructure.
consequences:
  - >-
    Ordinary application write paths do not directly maintain or erase interaction
    revisions.
  - History authority can read retained revisions after the live interaction is deleted.
  - >-
    Task stamps show current creation, modification, assignment and closure attribution
    but do not reconstruct the sequence of changes.
supersedes: []
evidence:
  - >-
    services-crm at a8d1364f: aws/crm.change-events.ts (activity stream, history only);
    docs/record-history.md; docs/change-events.md §5;
    modules/activities/history/activity-history.config.ts; lib/record-history/routes.ts.
---

# Activity history is written by the database at commit; tasks keep stamps only

## Context

Interaction readers need an account of changed context after correction and deletion. Task stamps provide attribution without an edit history.

## Decision

The activity stream captures owned context and settles revisions at commit without a reaction handler. Shared routes present revision sections with current reference names. The cited history presentation decision does not answer the separate task-history question.

## Alternatives Considered

The structured alternatives describe concrete competing designs and their tradeoffs. Where the origin records an existing ruling, it remains the authority; an observed implementation does not establish Product’s rejection of every alternative.

## Consequences

Interaction revision capture covers the declared database stream. Tasks retain their latest attribution and closing facts rather than a reconstructable history.
