Customer Milestone 2 Report of CMPE 451 Fall 2025 - bounswe/bounswe2025group2 GitHub Wiki

Customer Milestone 2 Report

CMPE 451 – Fall 2025


1. Summary of Customer Feedback and Reflections

Customer Feedback

  • Glossary as a Domain-Specific Feature Was Successful (but needs deeper content):
    The instructor appreciated the addition of the fitness glossary, noting it as a valid domain-specific element. However, she emphasized that the content should go beyond simple definitions. For example, the glossary explains what periodization is but does not explain what happens if users do not periodize their training. She expects more practical, consequence-oriented explanations.

  • Glossary Currently Feels Static:
    The glossary is fixed and cannot be updated by users. The instructor suggested making it more adaptable rather than purely static.

  • Current Glossary Interaction Flow Is Unintuitive:
    During the demo, encountering a glossary term in chat required leaving the chat and manually searching the term. She found this workflow unintuitive and disruptive.

  • Chat Lacks User Search and Direct Start Options:
    The chat system currently forces users to scroll through a full user list to find someone. The instructor pointed out this is inefficient and highlighted the need for a proper search mechanism and a quicker way to initiate conversation (e.g., starting a chat directly from a user’s profile).

  • Goal Mechanism Needs Predefined Units:
    Goal units are currently entered as free text, which creates inconsistent inputs. The instructor recommended providing predefined units (km, minutes, kg, reps, etc.) while still allowing custom entries.

  • Optional: Nutrition Reference Page:
    She suggested adding nutritional values for common foods as a reference section. This was optional and not emphasized as a core requirement.


Team Reflections

1. Glossary Feature

  • Integration With Other Features:
    We realized that the glossary currently feels disconnected from the rest of the system. To make it more intuitive, we plan to:

    • Detect glossary terms in chat/forum messages and allow users to click them for quick access.
    • Show hover/tap previews of definitions when terms appear in other modules.
    • Add an option for users to use glossary terms when they are posting-chatting etc.
  • Making It Dynamic & Improving Content:
    The glossary is static and its definitions are limited. We want to:

    • Allow coach-type users to create, edit, or remove glossary items.
    • Enrich entries with deeper context (e.g., not only “What is periodization?” but also “What happens if training is not periodized?”).

2. Chat User Search & Navigation

  • Improving Chat Accessibility:
    Currently, users must manually scroll through a long list to start a conversation, which is not ideal. To improve this, we can:
    • Add a “Start Chat” button directly on each user’s profile.
    • Add a search bar on the chat page to quickly find users.

3. Goal Mechanism Units

  • Enhancing Unit Input Usability:
    At the moment, users type units manually, which risks inconsistencies. We plan to:
    • Introduce predefined unit options for common use cases.
    • Keep the free-text option for unusual or domain-specific units.

4. Optional Features

  • The instructor proposed adding a page containing nutrition values of various foods for reference. As a team, we currently do not prioritize this, but it can be reconsidered if time allows.

2. List and Status of All Project Deliverables

Deliverable Status Notes
Revised SRS ✅ Completed Updated with new requirements
Communication Plan ✅ Completed Updated with new term plans
Git Development Policies ✅ Completed Written & apllied in practice
Weekly Reports & Meeting Notes ✅ Completed They're uploaded every week
Milestone Review ✅ Completed Available in this report
Individual Contributions ✅ Completed Available in this report
Pre Release version ✅ Completed GenFit Web & APK

3. Evaluation of Deliverable Status & Impact on Project Plan (Reflection)

3.1 Quantitative Snapshot (Customer Milestone 2)

Metric Value Notes
PRs merged in CM2 84 Filtered by label milestone-2 and merge date 01/10/2025 – 28/11/2025
Issues closed in CM2 112 Implementation, documentation, research, bug fixes
CI pipeline success rate 98.7% Last 150 GitHub Actions runs
Backend integration tests 378 passing Django APITestCase suites (auth, mentor, goal, challenge, forum)
Mobile unit tests 312 passing 12 Jest + React Native Testing Library suites
Web frontend test coverage 91.4% Vitest + istanbul coverage report (28 Nov 2025)
Mobile forum test coverage 87.87% Forum Page + components (PR #520)
Pre-release versions Web v0.2.0
Mobile APK 2025-11-24
Distributed internally for multi-platform UX validation

These figures confirm that the codebase has entered a stabilization phase with high test coverage and reliable CI, while still delivering significant new domain functionality.

3.2 Delivered vs. Partial vs. Deferred

Deliverable Group Status Outcome / Evidence Follow-up Needed
Mentor–Mentee Core (Web + Mobile) Completed PRs #586, #572, #569, #604 Minor UX polish on goal-unit display
Mobile Forum Stability & MD3 Modernization Completed PRs #565, #591, #446 Add accessibility audit checklist
Reporting & Contact (Web) Completed PRs #552, #477; Issues #511, #476 Mobile parity (planned CM3)
Notifications Improvements Completed PRs #592 (mobile), #431, #516 (web tests) Unified cross-platform settings page
Challenges & Leaderboards (Web) Completed PR #351 (challenge page & backend) Add leaderboard reward E2E test
Search Functionality Partial Web search complete (PR #589); Mobile search (PR #587) Extend to content-level + performance optimization
Glossary (Static Domain Pages) Completed PR #575 (mobile), PR #601 (web) Dynamic editing + inline term linking
Goal AI Suggestions & Safety Warnings Completed PR #584, #602 (mobile); PR #457, #534 (web) Unit standardization
Goal Units Standardization In Progress Free-text accepted; schema designed Preset unit enum + migration (top priority CM3)
Mobile Reporting & Contact Not Started MVP form in CM3 Week 1
Dynamic Glossary Editing & Inline Preview Not Started Issue #383 backlog Coach/admin CRUD + tap/click preview
E2E Test Suite (Golden Paths) Planned Test pyramid foundation complete Playwright smoke suite (login → goal → mentor → forum)

3.3 Scope & Timeline Adjustments

Customer feedback focused on refinement and polish rather than new scope. The following items were consciously moved out of CM2 and scheduled for the first sprint of CM3:

  • Dynamic glossary editing & inline term linking
  • Goal unit standardization + migration
  • Chat user search + “Start Chat” from profile
  • Mobile reporting/contact parity
  • Nutrition reference page (explicitly deferred – out of core domain)

No impact on final delivery date. The project remains on track.

3.4 Risk & Mitigation Matrix

Risk Category Impact Likelihood Mitigation Owner Target Date
Glossary remains static/shallow Domain Value Reduced perceived expertise Medium Coach/admin CRUD + rich schema (consequence, examples) Ali A. 2025-12-06
Inconsistent goal units Data Quality Analytics distortion Medium Canonical unit enum + migration script (custom fallback) Alperen 2025-12-04
Missing chat user search UX / Engagement High onboarding friction High Debounced search + “Start Chat” CTA on profiles Doran/Volkan 2025-12-06
No E2E tests → silent regressions Quality Late bug discovery Medium Playwright golden-path suite + nightly run Yusuf 2025-12-10
HTTPS/CSRF edge cases on mobile Security Intermittent auth failures Low Enhanced logging + token refresh fallback Abdullah U. Ongoing

3.5 Architectural & Process Maturity Reflection

Strengths observed in CM2:

  • Strict PR template + milestone labels drastically reduced review cycles.
  • Layered testing (unit → integration → manual exploratory) caught permission and navigation regressions early (e.g., Forum fix PR #566).
  • Material Design 3 adoption unified mobile aesthetics and improved accessibility baseline.
  • Early pre-release builds (Web v0.2.0 + APK) allowed real-device validation before freeze.

Areas targeted for immediate improvement (CM3):

  • Automated accessibility scanning (axe-core + React Native audits) in CI.
  • Enforced feature-parity checklist for every cross-platform PR.
  • Performance baselines (API p95 latency < 400 ms, critical screen FCP < 2 s).
  • Formal data validation layer for goals/challenges.

3.6 Impact on Final Milestone Plan

With core social and domain mechanics now stable, the final milestone can fully focus on:

  1. Depth – Rich glossary, AI tone customization, consequence explanations
  2. Consistency – Unit standardization, unified search & navigation patterns
  3. Reliability – Comprehensive E2E suite, accessibility regression testing
  4. Polish – Expanded “Selçuk’s Journey” demo with inline glossary and mentor dashboards

3.7 Actionable Next-Sprint Checklist (CM3 Week 1–2)

Action Definition of Done Sprint Target
Glossary coach/admin editing CRUD interface + rich fields (definition, risks, examples) Week 1
Inline glossary linking Tappable terms → preview tooltip; fallback search Week 1–2
Goal unit presets & migration Dropdown + validation + analytics mapping Week 1
Chat user search + Start Chat <400 ms debounced results, accessible CTA Week 1
Mobile reporting MVP Form submit mirroring web payload Week 2
E2E golden-path suite 6 critical user journeys automated in Playwright Week 2
Accessibility audit (critical=0) axe + manual keyboard/navigation pass Week 2

3.8 Traceability Anchors

  • Mentor–Mentee: PRs #572, #586, #604
  • Forum Stability & Permissions: PRs #565, #566, #591
  • Challenges: PR #351
  • AI Goal Suggestions: PR #534 (web), PR #584/#602 (mobile)
  • Search: PR #589 (web), PR #587 (mobile)
  • Static Glossary Pages: PR #575 (mobile), PR #601 (web)
  • HTTPS/CSRF Fixes: PR #564

3.9 Summary Verdict

Milestone 2 successfully delivered a stable, testable, multi-platform foundation for all core domain entities (mentor relationships, goals, challenges, forum, reporting, notifications). Quantitative metrics and risk mitigation planning demonstrate that remaining work is well-scoped, owned, and scheduled. The project is in excellent position to deliver a high-quality, domain-rich final product on time.


4. Evaluation of Tools & Processes Used for Team Project Management

The team successfully utilized GitHub as the central hub for project management, code quality, and collaboration, establishing a structured workflow that links planning directly to implementation.

GitHub Projects & Issue Tracking

The project employs a highly structured issue tracking system. Issues are not merely placeholders but serve as detailed specifications. For example, Issue #612 ("Mobile: Replace Alert.alert with Toast Notifications") includes explicit sections for Tasks, Acceptance Criteria, Estimated Time, and Reviewer Assignment. The use of labels such as need review, priority: urgent, and type: implementation allows for effective filtering and status tracking.

Code Review Practices

Pull Requests (PRs) adhere to a rigorous template that ensures quality before merging. PRs like #617 and #613 provide comprehensive context, including "Changes Made," "Features," "Testing" procedures, and a "Checklist" for self-review. The history shows active reviewer assignment, ensuring that code is vetted by peers, although some hotfixes (e.g., #614, #557) appear to be merged quickly to address urgent issues.

Branching Strategy

The repository follows a clear naming convention for branches that categorizes work by type, such as fix/ (e.g., fix/erronous-response-status), hotfix (e.g., hotfix_like), and descriptive feature branches (e.g., unit_test_contact). This strategy helps in isolating changes and maintaining a clean history on the main branch.

CI/CD Enhancements

Continuous Integration and Deployment have been actively enhanced to support quality assurance. The presence of workflows like .github/workflows/pr-check.yml and .github/workflows/deploy.yml indicates automated checks are in place. Notably, commit 7e1b41d ("feat/add-frontend-test-and-configure-pipeline") marks a significant effort to integrate frontend testing directly into the pipeline, ensuring that new changes do not break existing functionality.

Communication Tools

While external tools (e.g., Whatsapp) are used, the team effectively utilizes GitHub itself as a communication record. The detailed "Description" and "Technical Details" sections in PRs (e.g., #599 regarding chat features) serve as asynchronous documentation, allowing team members to understand complex implementations without needing real-time meetings.


5. Requirements Addressed in This Milestone

(List requirements delivered in CM2.)

  • Mentor functionality implemented: 1.1.1.3. - 1.1.1.4.1. - 1.1.1.4.2. - 1.1.1.4.3. - 1.1.4.6. - 1.2.5.5.
  • Navigation to profiles implementation completed: 1.1.3.10.
  • Forum implemented on mobile: Entire 1.1.3. section
  • Reporting implemented on Web: 1.1.3.6. - Entire 1.1.6. section
  • Search function partially implemented: Entire 1.2.3. section

5.1 Requirement-by-Requirement Progress

1.1.1. Account and Profile Requirements Status
Requirement code Status
1.1.1.1. ✅ Completed
1.1.1.2. ✅ Completed
1.1.1.3. ✅ Completed
1.1.1.4.1. ✅ Completed
1.1.1.4.2. ✅ Completed
1.1.1.4.3. ✅ Completed
1.1.1.5. ✅ Completed
1.1.1.5.1. ✅ Completed
1.1.1.6. ✅ Half-Completed, profile pictures doesn't have an alternative text.
1.1.1.7. ✅ Completed
1.1.1.8. ✅ Completed for web, ⚠️ Missing for mobile
1.1.1.9. ⚠️ Missing Feature
1.2.1.1. ✅ Completed, lacks actual verification
1.1.2. Login and Registration Requirements Status
Requirement code Status
1.1.2.1. ✅ Completed
1.1.2.2. ✅ Completed
1.1.2.3. ✅ Completed
1.1.2.4. ⚠️ Email confirmation functionality not implemented
1.1.2.5. ✅ Completed
1.1.2.6. ⚠️ Email confirmation functionality not implemented
1.1.3. Forum Requirements Status
Requirement code Status
1.1.3.1. ✅ Completed
1.1.3.2. ✅ Completed
1.1.3.3. ⚠️ Missing Feature
1.1.3.4. ✅ Completed
1.1.3.5. ✅ Completed
1.1.3.6. ⚠️ Implemented in web but not implemented in mobile
1.1.3.7. ⚠️ Missing Feature
1.1.3.8. ⚠️ Missing Feature
1.1.3.9. ✅ Completed for web, ⚠️ Missing for mobile
1.1.3.10. ✅ Completed
1.1.4. Goals & Rewards Requirements Status
Requirement code Status
1.1.4.1. ✅ Completed
1.1.4.2. ✅ Completed, for all sub-requirements
1.1.4.3. ✅ Completed
1.1.4.4. ✅ Half-Completed, restarting isn't available
1.1.4.5. ✅ Completed
1.1.4.6. ✅ Completed
1.1.5. Notifications Requirements Status
Requirement code Status
1.1.5.1. ⚠️ Missing feature
1.1.5.2. ✅ Completed
1.1.6. Support and Contact Requirements Status
This part is implemented in web but not in mobile.
Requirement code Status
1.1.6.1. ✅ Completed
1.1.6.2. ✅ Completed
1.2.2. Goals & Rewards Requirements Status
Requirement code Status
1.2.2.1. ✅ Completed
1.2.2.2. ✅ Completed
1.2.3. Search & Interactive Directory Requirements Status
Requirement code Status
1.2.3.1. ✅ Half-Implemented, only works for users on mobile, works for users, challanges, & goals on website
1.2.3.2. ✅ Completed
1.2.3.3. ⚠️ Missing feature, for all subsections
1.2.3.4. ⚠️ Missing feature
1.2.4. Challenges and Leaderboards Requirements Status
Requirement code Status
1.2.4.1. ✅ Completed
1.2.4.2. ✅ Completed
1.2.4.3. ✅ Completed
1.2.4.4. ✅ Completed
1.2.4.5. ✅ Completed for web, ⚠️ Missing for mobile
1.2.4.6. ✅ Completed
1.2.4.7. ⚠️ Missing feature
1.2.4.8. ✅ Completed
1.2.4.9. ✅ Completed
1.2.5. Notifications Requirements Status
Requirement code Status
1.2.5.1. ✅ Completed
1.2.5.2. ⚠️ Missing feature
1.2.5.3. ✅ Completed
1.2.5.4. ✅ Completed
1.2.5.5. ✅ Completed
1.2.5.6. ⚠️ Missing feature, sending e-mails is not an option without 3rd party providers
1.2.5.7. ⚠️ Missing feature
---

6. Planning and Team Process

6.1 Process Changes Since Milestone 1

Since Milestone 1, we have refined our development and planning processes to address previous shortcomings and improve overall efficiency:

  • Balanced Feature Focus: We shifted from a social-dominant approach to a balanced mix of social and domain-specific fitness features (e.g., Mentor-Mentee system, AI-generated goals) to better align with the core value proposition.
  • Iterative Integration: We adopted a more iterative workflow with earlier integration testing. This helps us catch stability issues sooner, rather than waiting for a final "merge week."
  • Scenario-Based Demos: We transitioned from feature-list demos to scenario-based demos (e.g., "Selcuk's Journey"). This ensures that development is driven by cohesive user stories rather than isolated tasks.
  • Script-Driven Data: We implemented a Django shell script strategy for generating mock data. This ensures our demo environment is reproducible, consistent, and rich with realistic context, addressing the "empty app" feel of previous iterations.

6.2 Planned Future Process Improvements

To further improve team velocity and quality for the final push, we plan to:

  • Automated Frontend Testing: We aim to increase frontend test coverage (targeting 40% for core functionality) and integrate these tests into our CI/CD pipeline to prevent regression.
  • Stricter Code Review Cycles: We will enforce a more rigorous checklist for PRs, specifically checking for mobile/web feature parity and UI consistency.

6.3 Plan to Complete the Project

Our plan to reach the final delivery involves prioritizing the remaining features and ensuring stability:

  • Critical Remaining Features:
    • Web: Finalize the Mentor interface integration.
    • Mobile: Complete the Reporting System and Contact Page.
    • Refinement: Polishing the Profile, Forum, and Home Page navigations on mobile.
    • (Note: Search and Mentor functionalities have been implemented and are currently in the testing/refinement phase.)
  • Timeline Strategy:
    • We will continue our weekly sprint cadence, focusing first on feature parity between Web and Mobile.
    • The final weeks will be dedicated to End-to-End (E2E) testing and UI/UX polishing to ensure a seamless "Smart Environment" experience.

6.4 Links & Screenshots of Project Plan


7. Utilized Standards

This section documents the W3C and related standards we applied during Customer Milestone 2, with links to implementing artifacts (issues and PRs) and explanations of how each standard was satisfied in practice.

7.1 Standard #1

Standard Used: WCAG 2.1 / WCAG 2.2 (AA)

Link to Implementing Artifacts:

Explanation:

  • We implemented accessible navigation and interaction patterns across pages, ensuring color contrast meets AA targets, meaningful focus order, and keyboard/touch navigability. Screen-reader-friendly labels and roles were added where applicable (especially on forum and challenge interactions). Findings from inclusivity research guided the adoption of accessible tap targets, readable typography, and clear feedback states.

7.2 Standard #2

Standard Used: ARIA 1.2 (Accessible Rich Internet Applications)

Link to Implementing Artifacts:

Explanation:

  • Interactive components (dialogs, links, buttons) use appropriate ARIA roles and accessible names, improving screen reader comprehension. Dialogs and modals include descriptions and structured focus management to ensure assistive technologies can clearly communicate the context and available actions.

7.3 Standard #3

Standard Used: W3C Mobile Web Best Practices

Link to Implementing Artifacts:

Explanation:

  • Mobile views follow best practices for responsive design, touch target sizes, readable content scaling, and reduced layout shift. We adopted React Native Paper (Material Design 3) components to standardize interactive behavior and ensure consistent accessibility across device sizes and themes.

7.4 Standard #4

Standard Used: HTTPS and Web Security Best Practices (aligned with W3C Web Security considerations)

Link to Implementing Artifacts:

Explanation:

  • We migrated services and clients to HTTPS, enforced secure transport, eliminated mixed content, and added CSRF protections (X-CSRFToken and Referer headers) on state-changing requests. This reduces risk of session hijacking and request forgery, aligning our implementation with modern web security guidance.

7.5 Standard #5

Standard Used: GDPR Readiness (Privacy by Design principles)

Link to Implementing Artifacts:

Explanation:

  • While full GDPR verification is planned (issue open), current changes support privacy-by-design: explicit consent flows, secure transport (HTTPS), restricted data exposure in error logs, and documented mechanisms for authenticated profile data access/update/delete. Additional work will formalize consent logging, data subject rights workflows, and policy documentation.

7.6 Standard #6

Standard Used: Material Design 3 Accessibility Guidance (component-level accessibility)

Link to Implementing Artifacts:

Explanation:

  • We adopted Material Design 3 via React Native Paper, which promotes accessible defaults for typography, color contrast, component roles, and interaction feedback. This ensured consistent semantics, predictable focus/press behavior, and clear visual hierarchies across mobile screens.

7.7 Standard #7

Standard Used: Accessible Notifications and Dialogs (WAI-ARIA Authoring Practices)

Link to Implementing Artifacts:

Explanation:

  • We aligned dialog and notification components with accessible authoring patterns, adding descriptive content and ensuring predictable focus and keyboard activation. Unit tests validate rendering and interaction states to avoid regressions affecting accessibility.

7.8 Standard #8

Standard Used: Secure Form Handling and CSRF Protection (Django CSRF model; aligns with W3C security recommendations)

Link to Implementing Artifacts:

Explanation:

  • All state-changing requests include CSRF tokens and Referer headers to satisfy server-side validation. Payload filtering prevents sending empty values that may trigger validation errors, improving robustness and reducing inadvertent data exposure.

8.UX Design: Accessibility, Inclusivity, and Ethical Responsibility in Practice

This section illustrates how the mobile frontend of our smart personal environment platform thoughtfully embodies the core principles of accessibility, inclusivity, and ethical design — not as checkboxes, but as foundational user experiences.

UX Scenario

Selçuk is an 18-year-old who has just started studying at Boğaziçi University. He moved into a student apartment owned by Güney Koray, a kind middle-aged landlord. Selçuk dreams of starting fitness training during university and asks Koray for advice. Koray asks whether he registered for GenFit, the fitness community–guide application he mentioned the previous day. Selçuk remembers that he created an account earlier, opens the app, and begins exploring it.

When he enters the app, he sees the AI’s daily fitness motivation message. Excited, he checks the profile information he filled in before and immediately tries to create a goal: running 20 km after school. Before finalizing the goal, he notices the AI Suggestions box and taps it. The AI finds the goal unrealistic and warns him to choose a lower, more achievable goal. Although the advice makes sense, Selçuk finds the AI’s tone cold.

Selçuk then navigates to the Forum page, where he sees system-created inclusive entries. The Senior Citizens entry catches his attention and he humorously thinks, “Koray abi must be a member of this commune.” He also notices the Beginner Athletes entry created by jessicacoach85, and infers that coaches can also create entries. As he reads through the posts, Selçuk wants more human support and asks Koray via direct message on Chat Page, how to get interaction with more people.

Koray tells Selçuk about mentor-mentee relationship jessicacoach85, who helps him with age-appropriate exercises. He says that if Selçuk sends her a mentee request, she will likely help him as well. Selçuk searches her profile using the search bar and sends the request.
From Jessica’s perspective, she accepts the request. After talking with Selçuk and seeing his enthusiasm for running, she sends him a monthly challenge called Freshmen Getting Fresh Air, a community event with progress entries and a leaderboard. She also assigns him a weekly running goal of 1 km per day, 7 km per week.

Motivated by the challenge and goal, Selçuk runs 4 km in one day. Jessica, as his mentor, can see this progress and tells him that completing the entire goal is not as important as consistent exercise. She also explains the importance of periodization.
Back in Selçuk’s perspective, he realizes he does not know what periodization means. He goes to the Glossary, searches the term, and learns about it. Still not fully satisfied, he asks the AI Coach in the chat. The AI gives a useful answer, but its cold tone pushes him away. Selçuk goes to the settings and disables the AI.


UX Reviews

Accessibility

  • Selçuk can navigate the app easily: onboarding, goal creation, forum browsing, chat, search, and glossary. The scenario implies straightforward navigation.
  • Features like visible AI suggestions, discoverable forum entries, and a functional search bar contribute to accessible interaction.
  • The Glossary provides accessible in-app learning support.

Inclusivity Review

  • The scenario includes diverse users: a beginner (Selçuk), an older landlord (Koray), and a coach (Jessica). The app supports all of them without bias.
  • Forum entries include communities such as Senior Citizens and Beginner Athletes, showing inclusive group design.
  • The mentor–mentee structure allows users with different ages, fitness levels, and backgrounds to participate.
  • The AI suggestions can see and react according the profile information without any bias

Ethical Responsibility Review

  • The AI prevents unsafe or unrealistic goals by warning Selçuk about the 20 km run. This shows responsible safety-oriented design.
  • In terms of conditions App guaranteed that the users' information never be sold to 3rd party companies.
  • Mentor–mentee interaction requires consent: Selçuk sends a request, Jessica chooses to accept.
  • Jessica assigns achievable goals and provides health-aligned advice, avoiding harmful pressure.
  • Selçuk always maintains control: he chooses to ask the AI, he chooses to disable it, and he chooses to rely more on human guidance.
  • The scenario shows no misuse of data or coercive behavior, aligning with ethical design principles.

9. Testing

This section outlines the comprehensive testing strategy for the GenFit application, detailing the current implementation status and the roadmap for the final milestone. The approach follows a testing pyramid structure—strong emphasis on backend integration and frontend component tests, with planned expansion into automated End-to-End (E2E) workflows.


9.1. Integration Tests for API and Service Interactions

Current Status: Implemented (High Coverage)
Integration tests using Django’s APITestCase validate the entire request–response lifecycle—from URL routing to database operations—ensuring that the REST API behaves according to contract.

Why these cases

We focus on interactions where permission handling and data consistency are most fragile. Files like test_challenge_creation.py and test_forum_api.py cover multi-step logic such as geocoding or recalculating thread counts, which unit tests cannot capture reliably.

Scenarios validated

  • Role-based access control via test_auth.py and test_forum_permissions.py.
  • Protection against invalid credentials, missing CSRF tokens, and malformed JSON data.
  • Ensuring Coaches and regular users have distinct privileges.

Core functionality assurance

External services (e.g., geocoding) are mocked while keeping the real database active. This ensures that endpoints respond with correct status codes (201 Created, 403 Forbidden) and match the data structures expected by the frontend.


9.2. UI/UX Tests for Web Interfaces

Current Status: Implemented (Moderate Coverage)
Frontend testing uses Vitest and React Testing Library to validate component behavior, rendering, and interaction. Files such as ContactPage.test.tsx, ProfilePage.test.tsx and NotificationPage.test.tsx focus on what the user actually sees and interacts with.

Why these cases

Complex pages with interactive logic were prioritized.

  • Contact page: form handling, API states, input validation.
  • Notification page: filtering logic and tab interactions.
  • Profile page: input validation and filtering logic.

Scenarios validated

  • The "Send Message" button is disabled during in-flight requests.
  • Error states (e.g., 500 Server Errors) display friendly UI messages instead of crashing.
  • Accurate tab behavior and immediate UI responsiveness.

Core functionality assurance

Simulated user actions (typing, clicking, tab switching) ensure the UI reacts instantly and handles asynchronous API calls gracefully.


9.3. Unit Tests for Individual Components

Current Status: Implemented (Targeted Coverage)
Unit tests isolate specific logic—permissions, algorithms, and small utilities—without requiring HTTP traffic or database interactions.

Why these cases

Files like test_forum_permissions.py isolate permission logic (e.g., IsAuthorOrReadOnly) so it can be validated quickly without server overhead.

Scenarios validated

  • Correct incrementing of sub-comment counts in test_comment_api.py.
  • Safe handling of edge cases in geocoding utilities (empty strings, malformed inputs).

Core functionality assurance

These unit tests provide a stable safety net ensuring fundamental business rules (e.g., “users can only edit their own comments”) remain consistent across all contexts.


9.4. End-to-End (E2E) Tests for Critical Workflows

Current Status: Planned for Final Milestone
Currently, cross-stack workflows are tested via backend integration tests plus manual testing. Automated E2E coverage is scheduled for the final stage of development.

Plan

Introduce automated E2E tests using Playwright or Cypress, covering the most critical user journeys (“Golden Path”).

Why these cases

Only full-stack tests can confirm seamless data flow between browser, frontend, backend, and database. Mocked tests cannot guarantee system-wide correctness.

Core functionality assurance

This final testing layer ensures backend regressions cannot silently break frontend functionality, providing confidence that the entire system behaves correctly in real browser conditions.


10. Individual Contributions

Yusuf Akdoğan

Responsibilities:
Backend development, mentor-mentee feature implementation and demo preparation.

Main Contributions:

  • Developed the backend and frontend functionality for the mentor-mentee mechanism.
  • Implemented unit tests for mentor-mentee relationships and associated goals.
  • Assisted in preparing Milestone 2 demo and report materials.
  • Participated in team meetings, planning discussions, and Acceptance Test Plan creation.

Significant Issues:

Pull Requests:

Conflicts & Resolutions:
No major conflicts occurred. Minor merge adjustments were handled during PR reviews to ensure backend and frontend consistency.

Additional Information:

  • Relearned backend debugging techniques and improved understanding of project backend structure.
  • Supported team planning and feature discussion sessions, particularly regarding mentor-mentee feature.
  • I did not open issues for my non-code related jobs since majority of them required very small amount of time or already exist in lab contributions

Alperen Akyol

Responsibilities: Responsible for implementing and reviewing key web frontend features, preparing and maintaining unit tests, supporting milestone demos, and acting as technical support for the team. Also involved in creating and managing GitHub issues, pull requests, and reviewing team contributions.

Main contributions: Between Customer Milestone 1 and Customer Milestone 2, I focused on addressing feedback from Milestone 1, improving frontend functionality, and setting up the unit test environment. I worked on integrating AI-powered goal recommendations, enhancing the goal creation UI, and linking challenges within the chat. I also supported milestone demos with mock data, tested frontend features, and reviewed and merged pull requests to maintain code quality.

Significant issues:

Code-related:

  • #457 – Added AI recommendor box to the goal page.

  • #533 – Unit tests for ai goal recommendor.

  • #485 – Updated Chat with Goal/Challenge links for web implementation.

Non-code-related:

  • #450 – Reviewed communication plan to align team practices with project needs.

  • #451 – Created Git Development Policies page.

  • #540 – Defined roles and demo cases for Milestone 2.

Pull requests:

  • Reviewed and merged #526 – Initial Vitest configuration.

  • Worked on PR #523 – Backend test cleanup.

  • Worked on PR #534 – Add goal AI suggestion box.

  • Worked on and merged #524 – Feature/forum thread edit/delete.

  • Worked on PR #570 – Challenge linking.

Rebased the PR and resolved conflicts in the forum thread edit/delete migrations. Fixed related lint issues.

Additional information:

  • Prepared mock data for frontend demos.

  • Tested frontend functionality to ensure smooth Milestone 1 demo presentation.

  • Acted as technical support during MVP preparation.

  • Communicated directly with the instructor to clarify requests for domain-specific static pages, ensuring the team understood implementation priorities.


Talha Başıbüyük

Responsibilities: I contributed primarily to the mobile frontend development, with a focus on ensuring every feature implemented is reviewed multiple times to facilitate a no-hole-left-behind development process. I personally worked on the challenge page, specifically transforming the page I made in Milestone 1 to HTTPS-compatible, while reviewing the features implemented on almost all pages.

Main Contributions:

  • Made the challenge page https-compatible, worked on additional bugfixes.
  • Reviewed significant issues and PRs of a lot of pages.

Significant Issues:

  • Code-related (Top 3):
  1. #595
  2. Reviewed #492
  3. Reviewed #495
  • Non-code-related (Top 3):
  1. Reviewed #544
  2. Reviewed #488
  3. Reviewed #473

Pull Requests:

Reviewed Pull Requests:

Conflicts & Resolutions: No major conflicts happened.


Berkay Buğra Gök

Main Contributions — MVP (Milestone: Production-Demonstrable MVP)

DevOps & Infrastructure Hardening

  • Converted MVP to run under a secure, production-presentable domain
  • Executed infrastructure changes that required operational commits rather than feature PRs:
    • DNS propagation & domain binding
    • SSL certificate issuance and renewal
    • Load balancer listener rules & health checks
    • Ingress/origin stabilization for all API consumers
  • Ensured HTTPS migration was correctly consumed by both Web and Mobile teams without mixed-content or origin violation errors

Application & UX Foundations (Demo-Critical)

  • Refined the Activity Dashboard experience:
    • Login streak visualization under time-zone safe parsing
    • Date computation robustness for deadlines, streaks, and calendar-dependent logic
  • Enforced Terms & Conditions acceptance at registration for legal compliance
  • Delivered Glossary / static educational pages to support milestone feature validation
  • Introduced mentor-assigned goal visual indicators to clearly differentiate mentor-driven goals from self-created goals, removing ambiguity in demo narratives
  • Verified and stabilized all time- and cluster-dependent flows used in the milestone

Testing & CI Readiness

  • Reported real test-coverage status and gaps by opening and closing scoped issues
  • Cleaned and prepared test scaffolding to ensure CI/CD pipelines had a stable base
  • Confirmed Jest/Vitest paths were environment-aligned for future PR reliability

Milestone Delivery Impact

  • Prevented environment blockers from stalling product validation
  • Accelerated infrastructure iteration that would otherwise block frontend and mobile API consumption
  • Reduced cross-team friction by establishing canonical request headers and CSRF-safe sequences early
  • Delivered a final MVP that was:
    • Secure (HTTPS + SSL)
    • Stable across origin/CSRF rules
    • Predictable for demonstration data
    • Production-presentable for evaluation
    • Web + Mobile compatible without mixed-content issues

Significant Issues

Code-Related
  • #581 — Prepared consolidated demo changes (glossary, terms, data fixes).
  • #513 — Set up web frontend unit test environment; cleaned backend tests and integrated into CI.
  • #454 — Implemented recommender box foundation for personalized user feedback (AI-driven recommendations).
Non-Code / Planning / Documentation
  • #537 — Defined mock/demo data strategy for consistent Milestone 2 presentation.
  • #499 — Reported current unit test coverage and improvement areas.
  • #473 — Added intermediate planning meeting notes ensuring traceability.

Pull Requests

Authored / Merged / Direct Contribution or Reviewed
  • #585 — Frontend presentation data refinements: improved streak UI, glossary navigation, date handling robustness, T&C enforcement.
  • #568 — Fixed mentor relationship creation race-condition; added mentor goal badges with transactional integrity.
  • #556 - Renewed the Nutrionix External API integration with an alternative
  • #557, #568, #615 - Addressed many minor bugs and issues.

DevOps & Infrastructure Focus

  • Provisioned and validated SSL certificate & HTTPS enforcement for API, fetch, and WebSocket calls.
  • Configured load balancer routing, health checks, and domain DNS propagation for genfit.website.
  • Coordinated production-only CSRF referer failures by aligning Referer + Credentials + Token strategy across modules.
  • Ensured canonical API origin convergence for web and mobile clients after secure domain switch.
  • Applied main-branch environment-critical operational commits during rapid iteration.

Operational Commits Used for Infrastructure Validation

Additional Contributions

  • Curated deterministic demo data for milestone walkthroughs (streaks, goals, glossary).
  • Improved UX visual clarity: mentor badges, dashboard consistency, legal enforcement of T&C acceptance.
  • Assessed and documented unit test environment readiness and coverage gaps.
  • Reduced cross-team friction by defining CSRF-safe request sequence & headers for upcoming PRs.
  • Ensured milestone feature completeness + production-presentability + stability for both web and mobile.

Impact Summary

By owning infrastructure hardening (secure domain, SSL, load balancer), milestone data curation, CSRF/WebSocket stabilization, test environment unblocking, and dashboard/legal feature foundations, contributions accelerated issue turnaround for environment-level blockers and ensured secure, stable, and demo-friendly MVP delivery for all teams.

Closing note: Some operational tasks (certificate provisioning, domain mapping, real-time load balancer tweaks) do not appear as PRs due to their nature, but they underpin the successful integration and functioning of all listed feature and bug-fix pull requests under a secure, consistent deployment environment.


Ali Ayhan Günder

Responsibilities:
Mobile frontend development (React Native/TypeScript), end-to-end implementation of the mentor-mentee system on mobile (request flows, relationship management UI, goal integration), goal creation/editing flows, forum & thread stability and UX improvements, establishing and expanding mobile unit test coverage, and contributing heavily to milestone reports, meeting notes, and project documentation.

Main Contributions:

  • Delivered the complete mobile mentor-mentee experience: request sending/acceptance, mentor/mentee dashboards, relationship status indicators, and seamless navigation between profiles and goals.
  • Implemented and hardened goal creation/editing within mentor-mentee relationships, fixing critical edge cases that previously blocked mentor-driven goal assignment.
  • Eliminated persistent mobile forum bugs (thread loading failures, navigation loops, and rendering glitches), resulting in a stable and responsive forum experience.
  • Built and merged comprehensive unit test suites for Home, Settings, and Mentor screens; significantly raised mobile test coverage while maintaining 100% pass rate.
  • Authored major sections of Lab 7 and Customer Milestone 2 reports, including detailed progress summaries, screenshots, and UX analysis.

Significant Issues:
Code-related (Top 3):

  1. #498 – Mobile Mentor-Mentee System Implementation – Designed and shipped the full mentor-mentee UI and interaction flows on mobile, including request handling, relationship states, and profile integration (spanned multiple PRs).
  2. #582 – Fix Mentor Goal-Setting Edge Cases – Resolved blocking bugs in goal creation/editing when initiated by a mentor, ensuring full parity with regular user flows.
  3. #589 – Mobile Forum Hot-Fix & Stability Improvements – Fixed thread loading, infinite refresh loops, and navigation errors; delivered a robust and consistent forum experience across devices.

Non-code-related (Top 3):

  1. #541 – Lab 7 Milestone Preparation Report – Single-handedly authored the complete lab progress report with screenshots, decisions, and action items.
  2. #621 – UX Design Review for Customer Milestone 2 – Drafting the full UX analysis section (currently in progress), covering mobile usability, accessibility, and design rationale.
  3. #494 & #480 – Lab 5 MVP Planning & Documentation – Wrote detailed mobile implementation summaries, future roadmap items, and contributed to overall planning wiki pages.

Pull Requests:
Created & Merged (recent):

  • #591 – Mobile forum stability & navigation fixes (merged 2025-11-25)
  • #586 – Mentor goal-setting edge-case resolution (merged 2025-11-24)
  • #572 – Core mentor-mentee flows and UI implementation (merged 2025-11-24)
  • #571 – Final mentor UI polish, state handling, and integration (merged 2025-11-23)
  • #569 – Mentor-mentee relationship completion and edge-case handling (merged 2025-11-23)
  • #551 – Mobile mentor adjustments after backend schema updates (merged 2025-11-19)
  • #510 – Comprehensive unit tests for Settings & Home screens (merged 2025-11-18)
  • #446 – Initial mobile forum implementation with full navigation & UI (merged 2025-11-02)

Reviewed / Significantly Contributed:
Actively reviewed and provided detailed early feedback on teammate PRs involving mobile-backend integration and mentor-related endpoints.

Conflicts & Resolutions:
No major conflicts this milestone. Minor merge conflicts in navigation and state-management files were quickly resolved by pulling the latest main, coordinating synchronously with the other mobile developer, and rebasing affected branches. Iterative feedback (“needs rework”) on unit test PRs is being addressed in open PR #520.

Additional Information:

  • Primary documentation owner and note-taker for multiple labs and milestones.
  • Ensured mobile features were demo-ready for Customer Milestone 2 through thorough testing and report contributions.
  • Increased mobile test coverage to over 40 passing unit tests across core flows (mentor-mentee, home, settings); forum test suite in final stages (PR #520).
  • Consistently attended and actively contributed to every team meeting, mobile-backend sync sessions, and planning discussions.

Abdullah Umut Hamzaoğulları

Responsibilities: I contributed primarily to the mobile frontend development, with a focus on modernizing the entire mobile application UI to comply with Material Design 3 principles, implementing comprehensive navigation flows, and ensuring seamless user experience across all mobile screens. My responsibilities included redesigning key UI components, implementing clickable profile navigation throughout the app, migrating to HTTPS infrastructure, establishing unit testing practices, and ensuring visual consistency across the mobile platform.

Main Contributions:

  • Led the complete mobile UI modernization initiative, implementing Material Design 3 principles across all mobile screens including TopBar, BottomBar, Home page, Profile page, and Forum components.
  • Implemented comprehensive clickable profile navigation across all major app sections (Home, Forum, Chat, Challenge pages), enabling seamless user profile discovery.
  • Redesigned the Home page with modern thread cards, collapsible Exercise Library, sort filter functionality, and improved layout using React Native Paper components.
  • Modernized the Forum and Thread UI with Material Design 3 compliant components, fixing vote persistence issues, implementing optimistic UI updates, and enhancing comment sections.
  • Migrated the Profile page to HTTPS backend infrastructure with enhanced CSRF protection and comprehensive error handling.
  • Established unit testing infrastructure for React Native mobile app using Jest, creating comprehensive test coverage documentation.
  • Implemented Coach/User badge system on profile pages with proper backend integration and Material Design 3 styling.
  • Replaced all Alert. alert notifications with react-native-toast-message for consistent Material Design 3 notification experience.

Significant Issues:

  • Code-related:

    1. Modernize the mobile frontend UI to comply with Material Design 3 principles – Led the comprehensive mobile UI modernization effort, implementing Material Design 3 across all components including vote persistence fixes, comment section redesign, proper Paper components integration, and custom toast notifications.
    2. Mobile: Home Page Complete Redesign – Completely rebuilt the Home page using React Native Paper with elevated thread cards, Avatar components, Chip labels, sort filter dropdown, and comments preview section with modern Material 3 design.
    3. Make profiles clickable on Forum Page (threads) – Implemented clickable navigation for all forum author names (thread creators and comment authors) throughout forum pages, extending far beyond the original scope to include comprehensive Material Design 3 forum redesign.
  • Non-code-related:

    1. Document personal contributions to Lab 5 report – Documented comprehensive contributions summary, action items, and follow-ups for mobile-related tasks in Lab 5 meeting notes.
    2. Lab 7 Meeting Notes – Authored complete meeting notes for Lab 7, documenting milestone planning discussions and MVP delivery coordination.
    3. Milestone 2 Demo Planning & Report – Contributed to milestone planning discussions and documented personal contributions to the Customer Milestone 2 report.

Pull Requests:

Reviewed & Merged:

Conflicts & Resolutions: No major conflicts occurred during this milestone. Minor styling conflicts were resolved during the Material Design 3 integration, ensuring visual consistency across all mobile screens. All PRs were successfully reviewed and merged with proper coordination with team members.

Additional Information: I played a pivotal role in establishing mobile development best practices, including comprehensive unit testing setup with Jest and detailed testing documentation (TESTING_SETUP.md). Successfully delivered 7 major PRs addressing 16 individual issues, with all 65 unit tests passing across 4 test suites. Actively participated in all weekly meetings, milestone planning discussions, and provided technical guidance to mobile team members. The Material Design 3 modernization significantly improved the mobile app's visual consistency and user experience, contributing substantially to Milestone 2 deliverables.


Ahmet Burak Çiçek

Responsibilities

I was primarily responsible for improving the reliability, testability, and maintainability of the web application. My tasks included implementing frontend and backend features, writing comprehensive unit tests, contributing to UI/UX improvements, coordinating reporting-related workflows, and ensuring API and page functionality remained consistent across milestones. I also maintained repository hygiene by deleting stale branches, revising outdated issues, and regularly participating in milestone planning.


Main Contributions

For the Customer Milestone 2, my main contributions centered on:

  • Developing both frontend and backend components for the Contact page and the reporting mechanism.
  • Implementing multiple UI/UX improvements such as layout fixes and interactive forum elements (clickable usernames).
  • Writing extensive unit tests for critical pages (profile, notifications, contact) to increase test coverage.
  • Identifying, opening, and resolving issues related to broken UI elements, unresponsive components, and API integrations (e.g., NutritionX).
  • Reviewing and improving pull requests from team members, ensuring consistency, code quality, and alignment with project architecture.
  • Actively participating in milestone demos, lab sessions, and discussions that shaped the project’s roadmap.

Significant Issues

Code-related (Top 3)

  1. #511 – Implement back end part of the reporting mechanism
    Implemented the backend logic for the web Contact page, ensuring form submissions, API structure, and validation worked correctly.

  2. #504 – Implement front end part of reporting feature for web application
    Added a new reporting feature to both chat and profile pages, completing the frontend flow and integrating it with backend logic.

  3. #476 - Initial implementation of Contact page for web Implemented the initial version of the web Contact page, creating the core layout and form structure to enable users to submit messages through the platform.

Non-code-related (Top 3)

  1. #528 – Revision of the SRS document
    Contributed major updates to the Software Requirements Specification, improving clarity and aligning it with current implementation.

  2. #475 – Delete branches from the previous milestone
    Cleaned up the repository by removing stale branches and checking the status of outdated issues and PRs.

  3. #486 – Add notes for Lab 5
    Prepared documentation and notes used during lab discussions to improve group coordination.


Pull Requests (Created, Merged, or Reviewed)

Created

  • #618 – Unit tests for the contact page
  • #619 – Unit tests for the notifications page
  • #620 – Unit tests for the profile page
  • #552 – Backend implementation for the contact page
  • #521 – Modify .info-actions layout for improved alignment
  • #531 – Implement clickable usernames in forum
  • #532 – Fix “create first goal” button
  • #474 – Add preferred sports section to the profile page
  • #477 – Initial implementation of the Contact page (frontend)
  • #504 – Add new reporting functionality to chat and profile pages

Reviewed or Significantly Contributed To

  • #557 – Add API prefix for contact URL
  • #556 – Update Nutrition UI and use new API
  • #507 – Implement new dashboard and daily AI suggestion (reviewed and merged)

Conflicts Encountered

No major conflict occurred. Most of other minor conflicts arose due to parallel development on UI components and API endpoints (e.g., Contact page, reporting mechanism). Conflicts were resolved by:

  • Re-aligning updated API endpoints across frontend and backend,
  • Communicating changes early during lab sessions,
  • Rebasing feature branches to ensure compatibility with newly merged components.

Additional Information

  • Participated actively in all weekly lab sessions, milestone demos, and roadmap discussions.
  • Took meeting notes for lab sessions when needed, improving team coordination.
  • Performed regular repository maintenance (closing outdated issues, reviewing stale PRs).
  • Researched unit testing strategies and tools to improve the testing workflow for the team.

Doran Pamukçu

Responsibilities: I contributed primarily to the front-end development of the web application, with a focus on enhancing user interaction through search, challenge management, and forum features. My responsibilities included implementing new UI components, integrating them with the backend, and ensuring a seamless user experience. I also expanded my scope to include backend unit testing and played a key role in preparing milestone documentation and compliance reports.

Main Contributions:

  • Implemented the Search Bar for the web platform, allowing users to easily find content.
  • Enhanced the Challenge system by adding difficulty levels.
  • Implemented thread deletion and editing capabilities in the Forum module.
  • Developed the functionality for visiting other users' profiles.
  • Contributed to backend quality assurance by writing unit tests for the Forum module.
  • Authored sections of the Lab 5 MVP planning and Milestone 2 preparation report.

Significant Issues:

Pull Requests:

Conflicts & Resolutions: No major conflicts occurred during this milestone. Minor merge conflicts were resolved during the integration of the forum and search features, ensuring code consistency across the frontend and backend.

Additional Information: I continued to be an active team member, participating in all weekly meetings and contributing to high-level planning. My work on the milestone reports helped clarify our progress and remaining tasks for the team. Also, I was presenting the coach Jessica in the demo presentation.

Volkan Bora Seki

Responsibilities

I was primarily responsible for the mobile front-end development of the GenFit application.
My tasks included implementing features related to goals, challenges, notifications, and chat; ensuring seamless integration with backend APIs; improving UX consistency; and maintaining stable mobile interactions.
Additionally, I contributed to multiple milestone documentation sections and supported the demo preparation by writing most of the scenario and acting in the demo.


Main Contributions

  • Implemented core mobile functionalities such as challenge sending, AI goal checking, goal safety warnings, notification handling, and chat link parsing.
  • Strengthened the reliability of the mobile application by addressing critical issues related to goal creation, challenge flows, and notifications.
  • Created domain-specific pages (Glossary, Information Page) for mobile to support MVP requirements.
  • Authored the UX, Accessibility, Inclusivity, Ethical Design Review sections of the milestone report.
  • Wrote most of the demo scenario and performed as the main presentation character (Selçuk).

Significant Issues

Code-related (Top 3)

  1. Mobil Challenge Sent Chat
    Issue: https://github.com/bounswe/bounswe2025group2/issues/598
    Implemented challenge sending flow inside the chat, enabling users to share active challenges directly from conversations.

  2. Domain Specific Information Page (Mobile)
    Issue: https://github.com/bounswe/bounswe2025group2/issues/545
    Implemented the entire mobile page, integrated domain-specific content, and ensured consistent styling and navigation within the app.

  3. AI Suggestions on Goals Mobile
    Issue: https://github.com/bounswe/bounswe2025group2/issues/502
    Added AI-powered suggestion generation for goal creation, integrating backend endpoints and improving user personalization.

Non-code-related (Top 3)

  1. Coach Fatih, Student Selçuk Scenario Issue
    Issue: https://github.com/bounswe/bounswe2025group2/issues/547
    Wrote the scenario content for the Selçuk–Fatih narrative, which became the demo storyline.

  2. LAB5 MVP Report – Lessons Learned & Mitigation Section
    Issue: https://github.com/bounswe/bounswe2025group2/issues/488
    Authored the Lessons Learned & Mitigation section for the Lab 5 MVP milestone report.

  3. Milestone Report – UX, Accessibility, Inclusivity & Ethical Design Review
    Authored these four major analysis sections for the customer milestone documentation.


Pull Requests (Created / Merged)


Pull Requests Reviewed (Milestone 2)


Conflicts & Resolutions

No major conflicts were encountered.
Minor merge conflicts (especially in notifications and goal-related files) were resolved by aligning API paths, updating fetch logic, and maintaining consistent UI behavior across mobile pages.


Additional Information

  • Wrote most of the demo scenario used in the MVP presentation.
  • Acted as Selçuk, the main character in the live customer demo.
  • Coordinated across teams to ensure mobile–backend compatibility and proper endpoint integration.


Güney Yüksel

Responsibilities: I am part of the mobile team. My main responsibility was to plan the implementation process for this and the next milestone. I also handled the general events that affects the entire app like switching the connections to HTTPS domain and dockerization. I also implemented important features like AI chatbots and Search Page. I also made few bugfixes that stemmed from https conversion. You can see my issues and PRs from my weekly reports. I was also active in Lab discussions and plannings.

PRs

Main Contributions:

  • Implemented the Search Bar for the mobile app, allowing users to easily find other users.
  • Implemented the AI Chat for the mobile app.
  • Dockerized the mobile app.
  • Planned this milestone in labs.
  • Updated API domain across the entire app.

Significant Issues:

  • Code-related:

    1. #413 – Designed and Implemented AI chat feature on mobile.
    2. #484 – Designed and Implemented Search Page on mobile.
    3. #558 – Updated the API domain with the new HTTPS domain.
  • Non-code-related:

    1. #478 – Planned the milestone and opened most of the related issues.
    2. #539 – Updated SRS with the removal of the Badge functionality.
    3. #623 – Wrote the requirement part of the milestone report.

Conflicts & Resolutions: Since we planned ahead, we didn't face any huge conflicts. Any small conflicts were handled locally and quickly.


⚠️ **GitHub.com Fallback** ⚠️