Skip to content

Add Beneficiary Notification & Acknowledgment to Inheritance Contract #497

@ONEONUORA

Description

@ONEONUORA

Component: Contracts (Inheritance) | Effort: 3-4 days | Priority: MEDIUM

Current State

Beneficiaries are added to plans but have no on-chain acknowledgment or notification mechanism.

Missing Functions

Beneficiary acknowledgment functions:

  • notify_beneficiary() - Mark beneficiary as notified
  • acknowledge_beneficiary_status() - Beneficiary acknowledges they're listed
  • get_beneficiary_acknowledgment() - Check if beneficiary acknowledged
  • require_acknowledgment() - Require acknowledgment before claim
  • get_unacknowledged_beneficiaries() - List beneficiaries who haven't acknowledged

Why This Matters

  • Legal validity: Beneficiaries should know they're listed
  • Fraud prevention: Beneficiaries confirm their details
  • Communication: Track who has been notified
  • Compliance: Some jurisdictions require beneficiary notification

Tasks

  • Add BeneficiaryAcknowledgment struct (plan_id, beneficiary_index, acknowledged_at, notification_sent_at)
  • Implement notify_beneficiary() function
    • Mark notification sent
    • Store notification timestamp
    • Emit BeneficiaryNotified event
  • Implement acknowledge_beneficiary_status() function
    • Beneficiary confirms their listing
    • Store acknowledgment timestamp
    • Emit BeneficiaryAcknowledged event
  • Add get_beneficiary_acknowledgment() view
  • Optionally require acknowledgment before claim
  • Add get_unacknowledged_beneficiaries() view
  • Add notification tracking storage
  • Add tests for acknowledgment flow
  • Document acknowledgment requirements

Acceptance Criteria

  • Beneficiaries can be notified on-chain
  • Acknowledgment tracked per beneficiary
  • Optional acknowledgment requirement before claim
  • Notification history stored
  • Tests cover acknowledgment scenarios
  • Documentation complete

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions