Skip to content

feat(review-requests): student attaches files for provider review + completeness feedback (PB-005)#137

Merged
ma7moudalysalem merged 1 commit into
mainfrom
feat/support-request-attachments-pb005
Jul 7, 2026
Merged

feat(review-requests): student attaches files for provider review + completeness feedback (PB-005)#137
ma7moudalysalem merged 1 commit into
mainfrom
feat/support-request-attachments-pb005

Conversation

@ma7moudalysalem

Copy link
Copy Markdown
Owner

The docx bug: a student "can't upload files for the provider to review, and the provider has nowhere to review them — only status changes." The feature didn't exist. Built on the existing document vault (no new storage).

  • Migration — nullable Document.ScholarshipProviderReviewRequestId FK (SetNull) + ProviderFeedback column. Both nullable → safe.
  • Student attaches vaulted files to an open request (UploadDocumentCommand gains an optional, student-guarded review-request link). New "Attach a file" control + download list on the student page.
  • Provider sees + downloads the files on the incoming-request card (download authz extended to the request's provider) and gives optional completeness feedback on completion — shown to the student.

Also answers the audit-log question: the accept command audited as PaymentCaptured with "captured payment" on every accept, so in free mode the log read "captured payment" despite no money moving. Re-audited as a neutral "accepted review request".

tsc/eslint/dotnet build clean; 146 unit tests green.

…ompleteness feedback (PB-005)

The docx bug: a student "can't upload files for the provider to review, and the
provider has nowhere to review them — only status changes." The feature did not
exist. Built it on the EXISTING document vault (no new storage):

- MIGRATION: nullable Document.ScholarshipProviderReviewRequestId FK (SetNull) +
  ProviderFeedback column on the request. Both nullable — safe, no data change.
- Student attaches vaulted files to an open request (UploadDocumentCommand gains
  an optional review-request link, guarded to the request's own student while it
  is Submitted/Pending/UnderReview). New "Attach a file" control + download list
  on the student review-requests page.
- Provider sees + downloads the attached files on the incoming-request card
  (download authz extended: the request's provider may fetch its documents), and
  gives optional completeness feedback when completing — shown to the student.
- DTO carries Documents[] + ProviderFeedback (enriched post-projection).

Also fixes the audit-log question: the accept command audited as PaymentCaptured
with the summary "captured payment" on EVERY accept, so in free mode (payments
off, fee 0, Stripe bypassed) the log still read "captured payment" even though no
money moved. Re-audited as a neutral "accepted review request" (the real capture
is recorded on the Payment side).

Server build clean; 146 unit tests green.
Copilot AI review requested due to automatic review settings July 7, 2026 10:48
@ma7moudalysalem ma7moudalysalem merged commit 9fb0e7e into main Jul 7, 2026
@ma7moudalysalem ma7moudalysalem deleted the feat/support-request-attachments-pb005 branch July 7, 2026 10:48

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants