Skip to content

RFC-012: Artifact Lifecycle Protocol (ALP) — 4. Lifecycle States

AIGP SpecificationRFC-012: Artifact Lifecycle Protocol (ALP) › 4. Lifecycle States

← 3. Artifact Types · Section index · 5. Protocol Messages →

4. Lifecycle States

DRAFT
PROMOTE (agent submits for review)
REVIEW
PROMOTE (approver approves)
APPROVED
EXECUTE (orchestrator runs)
EXECUTING
COMPLETED FAILED
ARCHIVE
ARCHIVED

4.1 State Definitions

State Description Allowed Transitions
DRAFT Artifact created by agent, not yet submitted REVIEW
REVIEW Submitted for approval, pending review APPROVED, DRAFT (rejected)
APPROVED Approved for execution, awaiting orchestrator EXECUTING
EXECUTING Currently being executed by the orchestrator COMPLETED, FAILED
COMPLETED Execution succeeded ARCHIVED
FAILED Execution failed, compensation MAY be triggered ARCHIVED
ARCHIVED Terminal state, immutable record None

4.2 State Transition Rules

  1. An artifact in DRAFT MAY only be promoted to REVIEW by the producing agent.
  2. An artifact in REVIEW MAY only be promoted to APPROVED by an authorized approver (see 8).
  3. An artifact in REVIEW MAY be demoted to DRAFT with a rejection reason.
  4. An artifact in APPROVED MAY only transition to EXECUTING via the runbook-service orchestrator.
  5. An artifact in EXECUTING SHALL transition to COMPLETED or FAILED no other transitions are valid.
  6. An artifact in FAILED SHALL trigger compensation evaluation (see 9).
  7. An artifact in COMPLETED or FAILED MAY be archived after a configurable retention period.
  8. An artifact in ARCHIVED MUST NOT be modified. It is an immutable audit record.

4.3 Signing at Transitions

Every state transition MUST produce a new signature entry:

{
"transition": "DRAFTREVIEW",
"timestamp": "2026-05-04T10:05:00Z",
"actor": "agent-remediation-v1",
"content_hash": "sha256:a1b2c3d4e5f6...",
"previous_hash": "sha256:0000000000...",
"signature": "hmac-sha256=e7f8g9h0..."
}

The content_hash is computed over the artifact content at the moment of transition. The previous_hash chains to the prior transition’s content_hash, forming a hash chain. Any break in the chain indicates tampering.


← 3. Artifact Types · Section index · 5. Protocol Messages →