Release Notes - Final Milestone
Live App: mymentornet.org
Overview
This release marks the official 1.0.0 final version of MyMentorNet. It
consolidates the post-MVP development cycle across backend, web, and mobile
clients, and delivers the complete containerized product for the course
final release.
MyMentorNet pairs structured mentor / mentee programmes with a real-time
social feed and an administrative console, supported by three advanced
recommendation engines and a documented production deployment path.
Key Highlights
- End-to-end mentorship lifecycle from request to rating, including shared
goal definition, tasks, milestones, meetings, extension, and termination - Full social feed with image attachments, hashtags, comments, comment
likes, reposts and quote-shares, bookmarks, edit history, soft-delete
with restore, and follower-aware profile-visibility controls - Real-time engagement updates over STOMP/WebSocket, with an unread badge
and a new-posts pill for the active feed - Three independently toggleable recommendation engines for follow
suggestions, mentor matching, and the For-You feed - Polymorphic reporting and admin moderation tools for posts, mentors,
and mentorships - ESCO and ISCED-F taxonomy autocomplete plus hybrid location entry on
profiles, with explicit profile-visibility and notification preference
controls - Schema.org and Activity Streams 2.0 representations of feed resources
- Operator-ready deployment with a documented runbook, a custom Neo4j +
Graph Data Science image, and an expanded acceptance-test suite
Core Product Features
Mentorship Lifecycle
- Mentorship request, accept, terminate, auto-end, and cancellation flows
with a preserved timeline and explicit cleanup endpoint - Shared goal definition with gating on dependent screens
- Tasks, milestones, and a chronological progress timeline rendered on
both clients - Mentor capacity setting on the profile with overload warnings
- Mentee-side rating prompt after a mentorship ends, with running average
on the mentor's profile - Mentor-initiated extension flow with a 1 / 3 / 6 month picker
- My Mentorships page on the web with active and past tabs, paginated
history
Meetings and Availability
- Create, reschedule, and cancel meetings between matched mentor and mentee
- Weekly calendar view with availability blocks and meeting overlays
- Real upcoming-meeting hydration on the home page
Social Feed
- Posts with up to four image attachments, strict magic-byte validation,
and a dedicated feed-media download endpoint that does not leak
chat-only uploads - Hashtags, threaded comments, comment likes, reposts, quote-shares with
attribution rendering, and bookmarks - Search filters for date range, language, hashtag, and author, plus
viewer-side keyword mute - Trending-hashtags rail and live engagement counters
- Edit history viewer, soft-delete with restore-via-undo toast
- Server-side, follower-aware enforcement of mentee profile visibility on
every feed read path - Activity Streams 2.0 and Schema.org JSON-LD coverage of feed objects
for downstream consumers - Engagement notifications for likes, comments, shares, and follows
Recommendation Engines
- Multi-signal follow ranker combining Personalized PageRank, second-hop
reach, recent engagement, direct interaction, cold-start popularity,
interest overlap, and an optional semantic-affinity signal, computed
over a Neo4j 5 follow graph kept in sync with PostgreSQL via
after-commit listeners - Advanced mentor matcher with weighted profile signals, paired with an
LLM-authored explanation that is required to reference the candidate's
profile before being returned to the client - For-You feed pipeline with candidate generation, scoring, MMR
re-ranking, configurable diversity floor, and contextual bandit
exposure hooks - Each ranker is independently toggleable and gracefully degrades to its
legacy counterpart when external dependencies are absent
Profile and Identity
- ESCO, ISCED-F, and Wikidata taxonomy autocomplete on the profile editor
- Hybrid location entry storing both free-text city and explicit
latitude / longitude - Mentee affiliation across DTO, entity, and UI
- Profile-visibility toggle with surname and photo masking
- Notification preferences toggles
- Optional follow / unfollow with isFollowing surfacing on profile reads
- User-authored posts section on profile pages
Administration and Moderation
- Admin user list and lookup endpoints with an admin self-view fix
- Ban / unban controls and ban-aware login handling on web and mobile
- Polymorphic report queue covering posts, mentors, and mentorships, with
an admin moderation console - Admin-to-user direct messaging composer and inbox with a From-admin
badge - Mentor and mentee dashboard statistics endpoints
Authentication and Security
- Layered spam-bot defences on registration: signed form-token plus a
hidden honeypot field - Tightened authorisation header handling across web and mobile
- Server-side enforcement of profile-visibility privacy on every feed
read path - Banned-user login flow with a clear client-side message
Web Improvements
- Mentee mentor-rating prompt with average display on profiles
- Mentor extend-mentorship modal with 1 / 3 / 6 month options
- Feed search filters, viewer keyword mute, repost and quote-share
rendering, comment likes, and trending hashtags rail - Live STOMP feed subscription with unread badge and new-posts pill
- Profile-editor improvements including hybrid location, ESCO / ISCED-F
autocomplete, mentee affiliation, mentor capacity, and notification
preferences - Admin console with user moderation, broadcast composer, inbox, and
report queue - Multiple responsive-behavior and form-validation fixes
Mobile Improvements
- Feed tab with image-bearing posts, likes, comments, blog posts, and
trending hashtags - Mentorship actions, admin panel, custom modals, and auto-redirects
- Mentorship progress timeline and meeting notes
- Auth-session fix and integration with Feed, meetings, and milestone APIs
- Banned-user login handling
- Screen tests for messages, profile, and feed
Backend Improvements
- Spring Boot 3.5 / Java 21 / Maven baseline maintained through V52 of
the Flyway chain - Spring Data Neo4j integration with a dual transaction manager gated by
configuration, mirroring follow relationships from PostgreSQL via
after-commit JPA listeners - Advanced mentor and follow rankers wired behind dedicated feature flags
- For-You feed pipeline with pluggable signal API
- Soft-delete lifecycle, edit history, and trending support on feed posts
- Comment-likes endpoints, viewerHasLiked / viewerHasBookmarked
projections, and accurate engagement counts in list responses - Polymorphic reporting service backed by a single audit-ready schema
- Admin moderation, messaging, and ban / unban services
- Mentorship rating-read endpoints (single mentorship and paginated
mentor list) - Cross-feature E2E workflow test suite and stability rewrites for the
flakier acceptance scenarios
Infrastructure and DevOps
- Operator-facing backend deployment guide covering local Docker, bare
JVM, droplet deployment, Flyway, backup, Neo4j, and a runbook - Custom Neo4j 5 + Graph Data Science 2.13.4 Docker image to avoid the
runtime plugin-download race observed on CI runners - Production-grade Docker Compose stack with health-checked dependencies
between PostgreSQL, Neo4j, and the backend - Resend integration for outbound verification and password-reset emails,
with a no-op fallback for local development - Comprehensive
.env.exampledocumenting every configurable knob - Expanded acceptance test suite (AT-02, AT-04, AT-05, AT-07, AT-17
through AT-22) under Playwright with stability rewrites for the
slower-runner flakes - Mock data seed scripts for a pre-populated demo environment
Quality, Standards, and Testing
- Significant unit-test coverage growth across backend (JUnit + Mockito),
web (Vitest), and mobile (Jest) - Cross-feature backend E2E workflow tests covering the mentorship and
feed surfaces - Mobile screen tests for messages, profile, and feed
- Documentation updates across the wiki for acceptance scenarios,
architecture notes, and standards coverage
Included Work
This final release includes all merged work between:
v1.0.0-mvpfinal-milestone
Full changelog:
v1.0.0-mvp...final-milestone
Contributors
Developed and maintained by the BounSWE 2026 Group 7 team
(Boğaziçi University CMPE 354).
- Amin Abu-Hilga — @LifelongWay
- Övgü Su Afşar — @ovguAfsar
- Muhammet Sami Çakmak — @muhammetsami
- Beratcan Doğan — @BERATCANS
- İbrahim Kayan — @ibrahimkayan
- Burak Öğüt — @burakogut5
- Mehmet Bora Sarıoğlu — @mehmetborasarioglu