Implement backend support for the Profile → Identity Document page to allow volunteers to upload, view, and replace government-issued identity documents. The implementation should support secure document upload (S3 + DB), retrieval of document status and metadata for UI display, secure preview/download via pre-signed URLs, and system-controlled replacement of documents. Volunteers must not be able to manually delete identity documents; existing documents should only be removed after a successful replacement upload. Expiry handling and related status flags should be supported as defined in the requirements.
Reference: saayam-for-all/ba#47
Requirement document: saayam-for-all/prod#127
Implement backend support for the Profile → Identity Document page to allow volunteers to upload, view, and replace government-issued identity documents. The implementation should support secure document upload (S3 + DB), retrieval of document status and metadata for UI display, secure preview/download via pre-signed URLs, and system-controlled replacement of documents. Volunteers must not be able to manually delete identity documents; existing documents should only be removed after a successful replacement upload. Expiry handling and related status flags should be supported as defined in the requirements.
Reference: saayam-for-all/ba#47
Requirement document: saayam-for-all/prod#127