REQ-FUN-097

In-process lifecycle hooks fire on board-item state transitions and sign-off lifecycle events

ID
REQ-FUN-097
Category
Functional Requirements
Status
approved
Priority
P0
Created
2026-05-10T18:38:09.693Z
Approved
2026-05-10T18:38:55.284Z
Updated
2026-05-10T18:38:55.284Z

What

System SHALL fire in-process lifecycle hooks on board-item state transitions (item.queued, item.claimed, item.released, item.completed, item.failed, item.abandoned) and on sign-off lifecycle events (signoff.requested, signoff.approved, signoff.rejected, signoff.expired).

Why

Inspired by AoE; gives synchronous pre-commit veto power to side effects (e.g. worktree provisioning) without bloating the outbox. See arch_decision_lifecycle_hooks memory.

How

Hooks registered at process start; immutable at runtime; run inside the parent DB transaction; raise HookFailure to roll back. Each invocation logged in audit_log.

Done when

Registered handlers receive event payload synchronously before the transition is committed; HookFailure rolls back the parent transaction atomically; audit row records action='hook.<event>.<hook_name>'.

Out of scope

Webhook flavour (post-MVP); dynamic hook registration.

established project management guidelines Mapping

Primary Knowledge Area
Integration Management
Secondary KA
Communications Management
Primary Process Group
Executing
established project management guidelines Deliverables
Work Board (Bulletin Board) Items, Sign-off / Formal Acceptance

In-process hooks let local subscribers react to lifecycle events - the integration extension surface.