Reviews – Frontend¶
Technical documentation for the Reviews frontend in Alan Home (eu-home-app). Intended for developers debugging or developing on the feature.
Routes and pages¶
| Route | Component | Purpose |
|---|---|---|
/reviews |
ReviewsHome |
List of pending actions (self, coachee, peer) and active reviews |
/reviews/:reviewId |
ViewReview |
View a single review (status, submissions, timeline) |
/reviews/:reviewId/select-reviewers |
PickReviewers |
Reviewee/coach: add reviewers to the review |
/reviews/:reviewId/validate-reviewers |
ValidateReviewers |
Coach: approve or reject reviewer submissions |
/reviews/:reviewId/:reviewSubmissionId |
WriteReview |
Reviewer: write or edit a submission (answers, publication) |
Data layer¶
Query options (OpenAPI)¶
| Function | Route | What it does |
|---|---|---|
searchReviewsQueryOptions(parameters) |
GET /reviews |
List reviews (filters: reviewee_ids, reviewer_ids, statuses, etc.) |
searchReviewSubmissionsQueryOptions(parameters) |
GET /reviews/{review_id}/review-submissions |
List submissions (filters: reviewer_ids, published, types) |
reviewQueryOptions(reviewId) |
GET /reviews/{review_id} |
Get a single review |
reviewSubmissionsQueryOptions(reviewId) |
GET /reviews/{review_id}/review-submissions |
List submissions for a review |
reviewSubmissionQueryOptions(reviewId, submissionId) |
GET /reviews/{review_id}/review-submissions/{review_submission_id} |
Get a single submission |
openApiPolicyCheckOptions(...) |
HEAD /{resource}?method={verb} |
ABAC policy checks (e.g. view answers, approve, publish) |
Mutations¶
Mutations in utils/reviews.tsx for creating submissions, updating answers, publishing, approving, rejecting, extending dates, releasing.
Types¶
Types come from @alaneu/openapi-codegen/src/generated/eu-tools (Schemas.Review, Schemas.ReviewSubmission, etc.). Status and submission-type labels are in REVIEW_STATUS_LABELS and REVIEW_SUBMISSION_STATUS_LABELS.
Flow (high level)¶
- Home: Load todos and active/coachee reviews via query options; render lists and links to
ViewReview,PickReviewers,ValidateReviewers, orWriteReview. - View review: Load review and submissions; show status, timeline, and actions (add reviewers, validate, write submission, extend dates, release) depending on policy.
- Select reviewers: Add submissions (reviewers) for the review; when enough are added, status moves to coach approval.
- Validate reviewers: Coach approves or rejects each submission; when enough are approved, status moves to self-review or submissions.
- Write review: Reviewer loads submission, edits answers, publishes. After all submissions are published, status becomes completed; coach can then release (PDF to Drive).
Permissions¶
Access is enforced by the backend via ABAC. The frontend uses openApiPolicyCheckOptions to show/hide or enable/disable actions (e.g. "Approve", "Publish", "View answers"). Policy IDs align with backend (e.g. reviewee, reviewer, reviewee-coach).