‹ Reports
The Dispatch

OSS Report: nashtech-garage/yas


YAS Project Focuses on Enhancing Testing and Resolving User Experience Bugs

YAS (Yet Another Shop) is a microservices-based e-commerce application project aiming to improve code quality and user experience through recent updates in testing and bug fixes.

Recent activities in the YAS project highlight a focus on enhancing testing frameworks and resolving critical user experience bugs. The introduction of unit tests for the payment service (#934) and integration tests for the tax module (#909) underscore a commitment to improving code reliability. Concurrently, efforts to address user feedback issues, such as fixing JSON parsing errors in customer updates (#933), indicate responsiveness to user experience concerns. However, several stale pull requests, like those addressing CSV export functionality (#727, #706), suggest potential resource constraints or shifting priorities that need attention to avoid technical debt.

Recent Activity

Recent issues and pull requests reflect a dual focus on testing enhancements and resolving user experience bugs. The addition of unit tests (#934) and integration tests (#909) indicates an emphasis on maintaining high code quality. Meanwhile, bug fixes related to user feedback mechanisms (#933) demonstrate efforts to improve user experience. Stale pull requests, such as those related to CSV export functionality (#727, #706), highlight areas needing prioritization to prevent technical debt.

Development Team and Recent Contributions

  1. Nguyen Van Had

  2. Minh Tran

    • 9 commits including webhook data saving and retry policy implementations.
  3. Thien Nguyen Le Quynh

    • 13 commits focusing on cleanups and documentation updates.
  4. Du Luong Khanh

    • 2 commits co-authoring a feature for duplicate username checks.
  5. HnKnA (Hoang Do Nhat)

    • 25 commits on testing and refactoring, including tax module integration tests.
  6. Dependabot

  7. NhatTranMinh15

    • 3 commits adding unit tests for the rating service.
  8. Nguyễn Trí Hải (mochacr0)

    • 10 commits fixing product update validation issues.
  9. Tuan Nguyen Trong Anh

    • 3 commits configuring toast notifications after customer profile updates.
  10. Nashtech Tuan Nguyen Huu

    • 20 commits addressing pagination issues and enhancing error handling.
  11. Nashtech Huy Pham Phu

    • 12 commits focusing on observability enhancements.
  12. Van Cong Bang

    • 5 commits optimizing sample data flows.

Of Note

Quantified Reports

Quantify Issues



Recent GitHub Issues Activity

Timespan Opened Closed Comments Labeled Milestones
7 Days 17 16 2 17 1
30 Days 49 32 10 49 1
90 Days 57 44 14 57 2
1 Year 75 49 21 69 3
All Time 366 330 - - -

Like all software activity quantification, these numbers are imperfect but sometimes useful. Comments, Labels, and Milestones refer to those issues opened in the timespan in question.

Quantify commits



Quantified Commit Activity Over 30 Days

Developer Avatar Branches PRs Commits Files Changes
VanCongBang 3 4/2/1 5 49 15812
nashtech-huyphamphu 1 14/12/2 12 180 9063
nashtech-tuannguyenhuu1 3 21/18/2 20 311 6818
khanhtrand 1 1/1/0 1 5 6126
hnd14 2 4/2/1 25 37 5632
Thien Nguyen Le Quynh 1 6/6/0 13 22 4155
khanhduzz 1 3/2/0 2 22 3178
thinhpham-nashtech 1 1/1/0 1 81 2467
nashtech-hieunguyenchi5 3 4/3/1 8 78 1856
Minh Tran 2 8/6/2 9 102 1480
Nguyễn Trí Hải 2 4/2/1 10 23 838
NhatTranMinh15 2 2/1/0 3 4 267
atuan21 1 2/1/0 1 5 115
dependabot[bot] 1 1/1/0 1 1 52
Du Luong Khanh 1 0/0/0 1 4 35
Tuan Nguyen Trong Anh 1 0/0/0 3 1 27
nguyenvanhadncntt 1 1/1/0 1 1 18
Sergei Prokofev (Sprokof) 0 1/0/0 0 0 0
Ikko Eltociear Ashimine (eltociear) 0 1/0/0 0 0 0

PRs: created by that dev and opened/merged/closed-unmerged during the period

Detailed Reports

Report On: Fetch issues



Recent Activity Analysis

The recent activity in the YAS GitHub repository indicates a steady flow of issues, with 36 currently open. Notably, several critical issues have been raised regarding the functionality of various components, particularly in the storefront and back office. A recurring theme is the need for improved error handling and user feedback mechanisms, as evidenced by multiple issues related to application errors and missing notifications.

Several issues highlight significant bugs, such as the inability to display toast notifications after successful updates (#930) and application errors when selecting countries in dropdowns (#923). These issues suggest potential gaps in user experience and system reliability that could affect overall project stability.

Issue Details

Most Recently Created Issues

  1. Issue #936

    • Priority: Unknown
    • Status: Open
    • Created: 0 days ago
  2. Issue #930

    • Title: [Storefront][Customer] Toast does not appear after the user successfully updates their information.
    • Priority: Unknown
    • Status: Open
    • Created: 2 days ago
  3. Issue #925

    • Title: [Location - country] Config to show country with country code and sort by country name.
    • Priority: Unknown
    • Status: Open
    • Created: 2 days ago
  4. Issue #923

    • Title: [Backoffice][Inventory] Application error when selecting country dropdown in Create Warehouse page.
    • Priority: Unknown
    • Status: Open
    • Created: 2 days ago
  5. Issue #920

    • Title: [Payment] Add Unit/Integration tests for Payment module.
    • Priority: Unknown
    • Status: Open
    • Created: 3 days ago

Most Recently Updated Issues

  1. Issue #930

    • Last updated: 2 days ago
  2. Issue #925

    • Last updated: 2 days ago
  3. Issue #923

    • Last updated: 2 days ago
  4. Issue #920

    • Last updated: 3 days ago
  5. Issue #918

    • Title: [Media - Test] Write test for Media
    • Last updated: 4 days ago

This analysis reveals that the project is actively maintained, with developers addressing both functional bugs and testing needs. The focus on improving error handling and user feedback mechanisms is crucial for enhancing the overall user experience in this microservices architecture.

Report On: Fetch pull requests



Overview

The analysis of the pull requests (PRs) from the YAS (Yet Another Shop) project reveals a total of 14 open PRs and 553 closed PRs. The recent activity indicates a focus on documentation updates, unit testing, bug fixes, and enhancements across various microservices, particularly in payment, location, and product management functionalities.

Summary of Pull Requests

  1. PR #935: docs: update docs/README.md

    • State: Open
    • Created: 0 days ago
    • Significance: Updates the README to correct a typo in "Continuous Integration."
  2. PR #934: Wrote unit test for paymentService

    • State: Open
    • Created: 0 days ago
    • Significance: Introduces unit tests for the capturePayment method, enhancing code reliability.
  3. PR #933: #930 [Customer] Configure toast after update information successfully

    • State: Open
    • Created: 1 day ago
    • Significance: Fixes a JSON parsing error when the server responds with no content, improving user feedback.
  4. PR #931: #800 Optimized flows sample data

    • State: Open
    • Created: 2 days ago
    • Significance: Optimizes sample data flows but raises a CSRF vulnerability warning.
  5. PR #929: #917 Fix Bug when get Rating

    • State: Open
    • Created: 2 days ago
    • Significance: Adjusts request parameters to ensure proper parsing of date filters.
  6. PR #928: [Location] Config country list and update country

    • State: Open
    • Created: 2 days ago
    • Significance: Enhances country selection logic and error handling during updates.
  7. PR #924: #916 Test for module Cart

    • State: Open
    • Created: 2 days ago
    • Significance: Introduces tests for the cart module, contributing to overall code quality.
  8. PR #922: #910 Fix incorrect product option combinations

    • State: Open
    • Created: 2 days ago
    • Significance: Addresses issues with product option combinations during creation.
  9. PR #921: Expose Payment Providers API, and show on StoreFront

    • State: Open
    • Created: 3 days ago
    • Significance: Adds functionality to expose payment providers in the storefront.
  10. PR #909: #896 test for tax module

    • State: Open
    • Created: 5 days ago
    • Significance: Introduces integration tests for the tax module.
  11. PR #727: handle export file csv in Order Page

    • State: Open
    • Created: 319 days ago (stale)
    • Significance: Implements CSV export functionality but has been flagged as potentially duplicated work.
  12. PR #706: Backoffice/Export csv file

    • State: Open
    • Created: 445 days ago (stale)
    • Significance: Similar to PR #727; both deal with CSV export functionality.
  13. PR #672: Shipment service

    • State: Open
    • Created: 488 days ago (stale)
    • Significance: Introduced a shipment service but remains unresolved.
  14. Various other PRs related to bug fixes, feature enhancements, and code quality improvements have been closed recently, indicating ongoing maintenance and development efforts.

Analysis of Pull Requests

Recent Activity and Focus Areas

The recent pull requests reflect an active development cycle with a strong emphasis on improving code quality through unit testing and addressing bugs that affect user experience. Notably:

  • The introduction of unit tests (e.g., PR #934) indicates a commitment to maintaining high code quality and ensuring that new features do not introduce regressions.
  • Bug fixes related to user feedback mechanisms (e.g., PR #933) demonstrate responsiveness to user experience issues.
  • The focus on enhancing existing functionalities, such as payment processing (e.g., PR #921) and country management (e.g., PR #928), suggests a strategic approach to refining core features of the application.

Stale Pull Requests

Several pull requests remain open for extended periods (e.g., PRs #727, #706, and others). This stagnation may indicate resource constraints or shifting priorities within the team. Addressing these stale PRs should be a priority to avoid technical debt accumulation and ensure that all parts of the application are up-to-date with current standards and practices.

Quality Concerns

While many recent PRs have passed quality gates as indicated by SonarCloud checks, there are still areas of concern:

  • Some PRs raise warnings about potential security vulnerabilities (e.g., CSRF vulnerabilities noted in PR #931). These should be addressed promptly to maintain application security.
  • The lack of coverage information in several pull requests suggests that testing may not be comprehensive across all modules, particularly in newer features or those undergoing significant changes.

Conclusion

The YAS project is actively maintained with ongoing improvements being made to its core functionalities and user experience. However, attention must be given to stale pull requests and potential security vulnerabilities to ensure that the project continues to evolve effectively without introducing risks or technical debt. Regular reviews of open pull requests will help streamline development processes and maintain momentum within the team.

Report On: Fetch commits



Repo Commits Analysis

Development Team and Recent Activity

Team Members and Recent Contributions

  1. Nguyen Van Had

    • Recent Activity: 1 commit fixing issue #923, modifying WarehouseGeneralInformation.tsx with minor changes.
    • Collaboration: None noted.
  2. Minh Tran

    • Recent Activity: 9 commits, significant contributions including:
    • Implementing webhook data saving before notifications.
    • Adding retry policies across multiple services.
    • Fixing issues related to Liquibase scripts and handling missing arguments.
    • Collaboration: Worked with multiple team members on webhook functionalities.
  3. Thien Nguyen Le Quynh

    • Recent Activity: 13 commits focusing on cleanups and documentation updates, including:
    • Cleaning up various scripts and configuration files.
    • Adding diagrams for observability documentation.
    • Collaboration: None noted.
  4. Du Luong Khanh

    • Recent Activity: 2 commits, co-authored a feature for checking duplicate usernames when creating countries.
    • Collaboration: Collaborated with khanhduzz.
  5. HnKnA (Hoang Do Nhat)

    • Recent Activity: 25 commits primarily focused on testing and refactoring, including:
    • Adding integration tests for the tax module.
    • Refactoring existing test cases to improve coverage.
    • Collaboration: Worked with various team members on testing.
  6. Dependabot

    • Recent Activity: 1 commit updating dependencies in package-lock.json.
    • Collaboration: None noted.
  7. NhatTranMinh15

    • Recent Activity: 3 commits adding unit tests for the rating service.
    • Collaboration: None noted.
  8. Nguyễn Trí Hải (mochacr0)

    • Recent Activity: 10 commits, including:
    • Fixing product update validation issues.
    • Refactoring product-related services for clarity and functionality.
    • Collaboration: None noted.
  9. Tuan Nguyen Trong Anh

    • Recent Activity: 3 commits focused on configuring toast notifications after updates in customer profiles.
    • Collaboration: None noted.
  10. Nashtech Tuan Nguyen Huu

    • Recent Activity: 20 commits with substantial changes across various components, including:
    • Fixing pagination issues in the storefront and back office.
    • Enhancing error handling and logging mechanisms across services.
    • Collaboration: Multiple branches indicating extensive collaboration.
  11. Nashtech Huy Pham Phu

    • Recent Activity: 12 commits focusing on observability enhancements and fixing checkstyle issues across modules.
    • Collaboration: None noted.
  12. Van Cong Bang

    • Recent Activity: 5 commits related to optimizing sample data flows and configurations.
    • Collaboration: None noted.

Patterns, Themes, and Conclusions

  • The development team is actively engaged in both feature development and maintenance tasks, with a strong focus on improving test coverage and refactoring existing code for better clarity and performance.
  • Collaborative efforts are evident in several features, particularly around webhook functionalities and testing enhancements, indicating a cohesive team dynamic.
  • The recent activity reflects a balance between new feature implementation (e.g., webhook functionalities) and addressing technical debt (e.g., cleanups, checkstyle fixes).
  • There is a noticeable emphasis on testing, with multiple team members contributing to integration tests across various modules, which is crucial for maintaining code quality in a microservices architecture.
  • The use of co-authorship in several commits suggests an environment that encourages collaboration and knowledge sharing among team members.

Overall, the team's recent activities demonstrate a proactive approach to both innovation and maintenance within the YAS project, aligning well with best practices in software development.