FEAT-OBL-001: Assess Obligation
FEAT-OBL-001: Assess Obligation
| Reference Number | Version | Effective Date | Supersedes | Authority Level |
|---|---|---|---|---|
| FEAT-OBL-001 | 1.2 | 2026-09-23 | 1.1 | Normative |
I. Purpose
This FEAT orchestrates lawful obligation creation. It creates the immutable obligation event row with event_type = ASSESSMENT and, when the caller is also performing settlement in the same workflow, coordinates the lawful satisfaction handoff to FEAT-OBL-003.
II. Execution Context
1. Required Inputs
seat_id: The target student seat.internal_ref: Stable reference for the continuing obligation-producing relationship.correlation_id: Unique identifier for the individual liability instance.source_ref: Opaque upstream authority reference supplied by the owning domain.source_version_ref: Immutable version snapshot reference supplied by the owning domain.obligation_type: Lawful assessment category.due_at: Contractual due boundary for the assessment.viewable_at: Optional visibility boundary for the assessment.idempotency_key: Unique request identifier.
2. Resolved Context (MANDATORY)
class_id: Resolved viaseat_id.actor_seat_id: Resolved from the lawful caller context when required.
III. Orchestration Logic
1. Verification Phase (Read-Only)
- Scope Validation: Verify the assessment is valid for the target
seat_idandclass_id. - Lineage Validation: Verify the supplied
internal_ref,source_ref, andsource_version_refare lawful for the owning domain. - Temporal Validation: Verify the requested
due_atandviewable_atsatisfy the authoritative temporal boundary contract.
2. Mutation Phase (Atomic Transaction)
- Assessment Recording:
- Call
DOM-OBLto create an immutableASSESSMENTevent row.
- Call
- Fulfillment Attempt:
- If the lawful caller requests settlement in the same workflow, delegate to
FEAT-OBL-003.
- If the lawful caller requests settlement in the same workflow, delegate to
- Audit Trace:
- Emit
ACT-OBL-001viaDOM-OPSwith mandatorycorrelation_id.
- Emit
IV. Invariants & Constraints
- Atomic Assessment: An obligation MUST NOT be created without an accompanying immutable assessment event.
- State Consistency: If settlement is requested in the same workflow, the satisfaction FEAT MUST reference the lawful Ledger transaction for
PAYMENTor record a waiver with no Ledger effect. - Idempotency: Retrying an assessment with the same lawful lineage and
idempotency_keyMUST NOT create duplicate assessments.
V. Audit Requirements
The DOM-OPS audit log MUST contain:
correlation_idseat_idinternal_refobligation_typeoutcome: (ASSESSMENT | PAYMENT | WAIVED)
VI. Dependencies
docs/FEATURE-EXECUTION/FEAT-CORE-000_FEATURE_EXECUTION_CONSTITUTIONAL_DIRECTIVE.mddocs/DOMAIN/DOM-OBL-001_OBLIGATIONS_DOMAIN.md
Edit canonical source on GitHub
Last updated: 2026-09-25