Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(admin): sc collection statuses #16501

Merged
merged 10 commits into from
Oct 22, 2024
Merged

fix(admin): sc collection statuses #16501

merged 10 commits into from
Oct 22, 2024

Conversation

albinagu
Copy link
Member

@albinagu albinagu commented Oct 22, 2024

Checklist:

  • I have performed a self-review of my own code
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • Formatting passes locally with my changes
  • I have rebased against main before asking for a review

Summary by CodeRabbit

  • New Features

    • Enhanced conditional rendering in the Constituency component based on the new collectionStatus.
    • Updated logic in the List component to visually represent the list status more accurately.
    • Introduced ActionCompleteCollectionProcessing component for improved collection processing feedback.
    • Added new messaging capabilities for clearer communication regarding the review and processing of signature collections.
    • Integrated revalidation mechanism in the PaperSignees component to refresh state post-upload.
  • Bug Fixes

    • Adjusted filtering logic for lists in the ParliamentaryRoot component for better accuracy.
  • Chores

    • Updated import paths for components to promote reusability across the application.

@albinagu albinagu requested a review from a team as a code owner October 22, 2024 10:26
Copy link
Contributor

coderabbitai bot commented Oct 22, 2024

Walkthrough

The pull request introduces several modifications across multiple components in the signature collection library. Key changes include the addition of collectionStatus to the useLoaderData hook in the Constituency and ParliamentaryRoot components, affecting their rendering logic. The List component's type prop logic is expanded to include an additional status. Import paths for shared components have been updated to promote reusability. Overall, the changes enhance conditional rendering capabilities while maintaining existing functionalities.

Changes

File Change Summary
libs/portals/admin/signature-collection/src/screens-parliamentary/Constituency/index.tsx Added collectionStatus to useLoaderData, updated rendering logic for CreateCollection based on collectionStatus, and modified import for CollectionStatus.
libs/portals/admin/signature-collection/src/screens-parliamentary/List/index.tsx Updated logic for type prop in ListInfo to include ListStatus.Inactive alongside ListStatus.Reviewed.
libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx Added collectionStatus to useLoaderData, updated rendering logic for ActionCompleteCollectionProcessing, and refactored mapping over collection?.areas.
libs/portals/admin/signature-collection/src/screens-presidential/AllLists/index.tsx Changed import path for ActionCompleteCollectionProcessing to a shared component path.
libs/portals/admin/signature-collection/src/shared-components/completeCollectionProcessing/index.tsx Updated import path for m messages module; added optional canProcess prop to control button state.
libs/portals/admin/signature-collection/src/lib/messages.ts Added new message definitions for collection review and processing statuses.
libs/portals/admin/signature-collection/src/screens-parliamentary/List/paperSignees/index.tsx Integrated useRevalidator to refresh component state after uploading paper signees.

Possibly related PRs

Suggested labels

automerge

Suggested reviewers

  • kksteini

📜 Recent review details

Configuration used: .coderabbit.yaml
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between ddf3b4c and 4bb5d87.

📒 Files selected for processing (1)
  • libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx (4 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Outside diff range and nitpick comments (6)
libs/portals/admin/signature-collection/src/shared-components/completeCollectionProcessing/index.tsx (1)

Line range hint 24-33: Consider improvements for error handling, error messages, and accessibility.

While the component functions correctly, consider the following improvements:

  1. Use consistent error handling: Either use try/catch throughout or switch to .then()/.catch() for better readability.
  2. Format the error message in the catch block for more meaningful user feedback.
  3. Provide a descriptive label for the modal's close button to enhance accessibility.

Here's an example of how you could improve the error handling and message formatting:

 const completeProcessing = async () => {
   try {
     const res = await processCollectionMutation({
       variables: { input: { collectionId } },
     })
     if (res.data?.signatureCollectionAdminProcess.success) {
       toast.success(formatMessage(m.toggleCollectionProcessSuccess))
       setModalSubmitReviewIsOpen(false)
       revalidate()
     } else {
       toast.error(formatMessage(m.toggleCollectionProcessError))
     }
   } catch (e) {
-    toast.error(e.message)
+    toast.error(formatMessage(m.genericErrorMessage, { error: e.message }))
   }
 }

And for the modal's close button:

 <Modal
   id="reviewComplete"
   isVisible={modalSubmitReviewIsOpen}
   title={formatMessage(m.completeCollectionProcessing)}
   label={formatMessage(m.completeCollectionProcessing)}
   onClose={() => setModalSubmitReviewIsOpen(false)}
-  closeButtonLabel={''}
+  closeButtonLabel={formatMessage(m.closeModalLabel)}
 >

Make sure to add the necessary message keys in your messages file.

Also applies to: 67-67

libs/portals/admin/signature-collection/src/screens-parliamentary/List/index.tsx (1)

90-95: LGTM! Consider enhancing readability.

The changes to the type prop logic for the ListInfo component look good. Including ListStatus.Inactive in the condition for setting the type to 'success' aligns with the expected behavior.

To improve readability, consider using an array and the includes method:

type={
  [ListStatus.Reviewed, ListStatus.Inactive].includes(listStatus)
    ? 'success'
    : undefined
}

This approach makes it easier to add or remove statuses in the future without changing the structure of the condition.

libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx (3)

38-39: LGTM: collectionStatus added to useLoaderData destructuring.

The addition of collectionStatus to the destructured return value of useLoaderData is correct and aligns with TypeScript usage guidelines.

Consider adding a type annotation to improve code readability:

const { collection, collectionStatus, allLists }: ListsLoaderReturn =
  useLoaderData();

This change would make the expected return type more explicit.


185-221: LGTM: Improved mapping logic for collection areas.

The refactoring of the collection?.areas.map() function improves code readability and maintains the same functionality. The introduction of areaLists makes the code more explicit and easier to understand.

Consider memoizing the areaLists calculation to optimize performance, especially if allLists is large:

const memoizedAreaLists = useMemo(() => {
  return collection?.areas.map(area => ({
    area,
    lists: allLists.filter(l => l.area.name === area.name)
  }));
}, [collection?.areas, allLists]);

Then use memoizedAreaLists in your rendering logic. This change would prevent unnecessary recalculations on re-renders.


224-226: LGTM: New conditional rendering for ActionCompleteCollectionProcessing.

The addition of conditional rendering for the ActionCompleteCollectionProcessing component based on collectionStatus is correct and follows React best practices.

To improve code clarity, consider extracting the condition into a descriptive constant:

const isCollectionInInitialReview = collectionStatus === CollectionStatus.InInitialReview;

{isCollectionInInitialReview && (
  <ActionCompleteCollectionProcessing collectionId={collection?.id} />
)}

This change would make the code more self-documenting and easier to understand at a glance.

libs/portals/admin/signature-collection/src/screens-parliamentary/Constituency/index.tsx (1)

134-141: LGTM: Conditional rendering logic updated appropriately.

The addition of the collectionStatus === CollectionStatus.InInitialReview condition enhances the component's rendering logic as expected. This change aligns well with the PR objectives and maintains existing functionality.

Consider extracting the condition into a separate variable for improved readability:

const showCreateCollection = constituencyLists?.length > 0 &&
  allowedToProcess &&
  collectionStatus === CollectionStatus.InInitialReview;

// Then in the JSX:
{showCreateCollection && (
  <CreateCollection
    collectionId={collection?.id}
    areaId={areaId}
  />
)}

This refactoring would make the rendering logic more explicit and easier to maintain.

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between f05a38e and ddfcc0b.

📒 Files selected for processing (5)
  • libs/portals/admin/signature-collection/src/screens-parliamentary/Constituency/index.tsx (3 hunks)
  • libs/portals/admin/signature-collection/src/screens-parliamentary/List/index.tsx (1 hunks)
  • libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx (3 hunks)
  • libs/portals/admin/signature-collection/src/screens-presidential/AllLists/index.tsx (1 hunks)
  • libs/portals/admin/signature-collection/src/shared-components/completeCollectionProcessing/index.tsx (1 hunks)
✅ Files skipped from review due to trivial changes (1)
  • libs/portals/admin/signature-collection/src/screens-presidential/AllLists/index.tsx
🧰 Additional context used
📓 Path-based instructions (4)
libs/portals/admin/signature-collection/src/screens-parliamentary/Constituency/index.tsx (1)

Pattern libs/**/*: "Confirm that the code adheres to the following:

  • Reusability of components and hooks across different NextJS apps.
  • TypeScript usage for defining props and exporting types.
  • Effective tree-shaking and bundling practices."
libs/portals/admin/signature-collection/src/screens-parliamentary/List/index.tsx (1)

Pattern libs/**/*: "Confirm that the code adheres to the following:

  • Reusability of components and hooks across different NextJS apps.
  • TypeScript usage for defining props and exporting types.
  • Effective tree-shaking and bundling practices."
libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx (1)

Pattern libs/**/*: "Confirm that the code adheres to the following:

  • Reusability of components and hooks across different NextJS apps.
  • TypeScript usage for defining props and exporting types.
  • Effective tree-shaking and bundling practices."
libs/portals/admin/signature-collection/src/shared-components/completeCollectionProcessing/index.tsx (1)

Pattern libs/**/*: "Confirm that the code adheres to the following:

  • Reusability of components and hooks across different NextJS apps.
  • TypeScript usage for defining props and exporting types.
  • Effective tree-shaking and bundling practices."
🔇 Additional comments (4)
libs/portals/admin/signature-collection/src/shared-components/completeCollectionProcessing/index.tsx (1)

Line range hint 1-82: Component adheres to coding guidelines.

The ActionCompleteCollectionProcessing component follows the prescribed coding guidelines:

  • It uses TypeScript for prop definitions.
  • It imports and uses shared UI components, promoting reusability across different NextJS apps.
  • The component structure supports effective tree-shaking and bundling.
libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx (1)

27-28: LGTM: New imports added correctly.

The new imports for CollectionStatus and ActionCompleteCollectionProcessing are correctly added and follow the coding guidelines for reusability across different NextJS apps.

libs/portals/admin/signature-collection/src/screens-parliamentary/Constituency/index.tsx (2)

33-36: LGTM: Import changes are appropriate.

The addition of CollectionStatus import is necessary for the new functionality. Grouping imports from the same module enhances code readability and maintainability.


47-48: LGTM: useLoaderData hook updated correctly.

The addition of collectionStatus to the destructured return value is consistent with the new functionality.

Please ensure that the ListsLoaderReturn type definition has been updated to include the collectionStatus property. You can verify this by running:

✅ Verification successful

Verification Complete: ListsLoaderReturn includes collectionStatus.

  • Defined in libs/portals/admin/signature-collection/src/loaders/AllLists.loader.ts.
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Search for the ListsLoaderReturn type definition
rg -A 10 "type ListsLoaderReturn"

Length of output: 35


Script:

#!/bin/bash
# Search for the ListsLoaderReturn type or interface definition
rg 'type\s+ListsLoaderReturn\b|interface\s+ListsLoaderReturn\b'

Length of output: 173


Script:

#!/bin/bash
# Verify if 'collectionStatus' is present in ListsLoaderReturn interface
rg 'collectionStatus' libs/portals/admin/signature-collection/src/loaders/AllLists.loader.ts

Length of output: 457

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Outside diff range and nitpick comments (2)
libs/portals/admin/signature-collection/src/screens-parliamentary/List/paperSignees/index.tsx (1)

28-28: LGTM: Good use of useRevalidator for data freshness.

The useRevalidator hook is correctly implemented and revalidate is called appropriately after a successful upload. This ensures that the component's data remains up-to-date.

Consider also calling revalidate() in the onError callback to ensure consistent state even in case of errors.

Also applies to: 81-81

libs/portals/admin/signature-collection/src/lib/messages.ts (1)

445-465: LGTM with a minor suggestion.

The new messages are well-structured and provide clear information about the collection review and processing stages. They follow the existing pattern in the file and are properly internationalized.

However, there's a minor inconsistency in the id of collectionProcessedMessage. It currently uses the id for collectionReviewedTitle.

Consider updating the id for collectionProcessedMessage:

   collectionProcessedMessage: {
-    id: 'admin-portal.signature-collection:collectionReviewedTitle',
+    id: 'admin-portal.signature-collection:collectionProcessedMessage',
     defaultMessage: 'Nú er hægt að framlengja stökum listum.',
     description: '',
   },
📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between ddfcc0b and e26b754.

📒 Files selected for processing (6)
  • libs/portals/admin/signature-collection/src/lib/messages.ts (1 hunks)
  • libs/portals/admin/signature-collection/src/screens-parliamentary/Constituency/index.tsx (4 hunks)
  • libs/portals/admin/signature-collection/src/screens-parliamentary/List/index.tsx (2 hunks)
  • libs/portals/admin/signature-collection/src/screens-parliamentary/List/paperSignees/index.tsx (2 hunks)
  • libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx (4 hunks)
  • libs/portals/admin/signature-collection/src/shared-components/completeCollectionProcessing/index.tsx (2 hunks)
🚧 Files skipped from review as they are similar to previous changes (3)
  • libs/portals/admin/signature-collection/src/screens-parliamentary/Constituency/index.tsx
  • libs/portals/admin/signature-collection/src/screens-parliamentary/List/index.tsx
  • libs/portals/admin/signature-collection/src/shared-components/completeCollectionProcessing/index.tsx
🧰 Additional context used
📓 Path-based instructions (3)
libs/portals/admin/signature-collection/src/lib/messages.ts (1)

Pattern libs/**/*: "Confirm that the code adheres to the following:

  • Reusability of components and hooks across different NextJS apps.
  • TypeScript usage for defining props and exporting types.
  • Effective tree-shaking and bundling practices."
libs/portals/admin/signature-collection/src/screens-parliamentary/List/paperSignees/index.tsx (1)

Pattern libs/**/*: "Confirm that the code adheres to the following:

  • Reusability of components and hooks across different NextJS apps.
  • TypeScript usage for defining props and exporting types.
  • Effective tree-shaking and bundling practices."
libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx (1)

Pattern libs/**/*: "Confirm that the code adheres to the following:

  • Reusability of components and hooks across different NextJS apps.
  • TypeScript usage for defining props and exporting types.
  • Effective tree-shaking and bundling practices."
🔇 Additional comments (8)
libs/portals/admin/signature-collection/src/screens-parliamentary/List/paperSignees/index.tsx (2)

23-23: LGTM: Import statement is correctly added.

The import of useRevalidator from 'react-router-dom' is properly placed and follows good practices for named imports.


Line range hint 1-200: Overall: Changes align with coding guidelines and improve functionality.

The modifications to this file adhere to the coding guidelines for libs/**/*:

  1. The component remains reusable across different NextJS apps.
  2. TypeScript is used effectively for props and types.
  3. The changes don't negatively impact tree-shaking or bundling practices.

The addition of useRevalidator enhances the component's ability to maintain up-to-date data after mutations, improving overall functionality.

libs/portals/admin/signature-collection/src/lib/messages.ts (1)

Line range hint 1-465: Overall, the changes enhance the messaging capabilities for signature collection processing.

The new messages added to this file improve the communication of collection review and processing statuses. They follow the existing patterns, use proper internationalization, and contribute to the reusability of components across different NextJS apps. The changes adhere to the coding guidelines for libs/**/* files and use TypeScript for defining messages.

These additions will help provide clearer feedback to users about the state of the signature collection process for parliamentary candidacy.

libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx (5)

12-12: Import statement is appropriate and follows project conventions

The addition of AlertMessage to the imports from @island.is/island-ui/core is correct and aligns with the project's import patterns.


28-29: Imports enhance component functionality and maintain reusability

Importing CollectionStatus and ActionCompleteCollectionProcessing correctly integrates necessary types and components, supporting reusability across different NextJS apps.


186-222: Rendering logic for ActionCard components is clear and effective

The mapping over collection?.areas and filtering allLists to create areaLists is well-structured. Conditional rendering within the ActionCard components enhances user experience by displaying relevant information based on the data.


238-255: Conditional rendering of AlertMessage components enhances user feedback

Displaying success messages based on collectionStatus provides clear communication to the user about the status of the collection processing and review stages.


224-237: ⚠️ Potential issue

Verify logic for enabling processing actions when allLists is empty

When allLists is empty, allLists.every((l) => l.reviewed === true) returns true, which may inadvertently enable the ActionCompleteCollectionProcessing component even when there's nothing to process.

Consider updating the condition to ensure that canProcess is only true when there are lists to review:

canProcess={
- allLists.every((l) => l.reviewed === true)
+ allLists.length > 0 && allLists.every((l) => l.reviewed === true)
}

To verify if allLists can be empty, run the following script:

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Outside diff range and nitpick comments (2)
libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx (2)

229-238: LGTM: New ActionCompleteCollectionProcessing component with effective conditional rendering.

The addition of the ActionCompleteCollectionProcessing component with conditional rendering based on CollectionStatus enhances the functionality of the ParliamentaryRoot component. The use of derived values for the canProcess prop is good for performance.

Consider extracting the condition for canProcess into a separate variable or memoized value for improved readability:

const canProcessCollection = useMemo(() => 
  !!allLists.length && allLists.every((l) => l.reviewed === true),
  [allLists]
);

// Then use it in the component prop
canProcess={canProcessCollection}

This change would make the code more readable and potentially more performant if the calculation is expensive.


250-258: LGTM: Added user feedback for collection under review status.

The addition of the AlertMessage component for the InReview collection status provides clear feedback to the user about the current state of the collection. This change improves the overall user experience.

Consider extracting the AlertMessage components into a separate function to reduce duplication and improve maintainability:

const renderAlertMessage = (status: CollectionStatus) => {
  switch (status) {
    case CollectionStatus.Processed:
      return (
        <AlertMessage
          type="success"
          title={formatMessage(m.collectionProcessedTitle)}
          message={formatMessage(m.collectionProcessedMessage)}
        />
      );
    case CollectionStatus.InReview:
      return (
        <AlertMessage
          type="success"
          title={formatMessage(m.collectionReviewedTitle)}
          message={formatMessage(m.collectionReviewedMessage)}
        />
      );
    default:
      return null;
  }
};

// Then use it in the component
{renderAlertMessage(collectionStatus)}

This refactoring would make the code more maintainable and easier to extend in the future.

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between e26b754 and ddf3b4c.

📒 Files selected for processing (1)
  • libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx (4 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx (1)

Pattern libs/**/*: "Confirm that the code adheres to the following:

  • Reusability of components and hooks across different NextJS apps.
  • TypeScript usage for defining props and exporting types.
  • Effective tree-shaking and bundling practices."
🔇 Additional comments (3)
libs/portals/admin/signature-collection/src/screens-parliamentary/index.tsx (3)

12-12: LGTM: New imports enhance functionality and follow guidelines.

The added imports for AlertMessage, CollectionStatus, and ActionCompleteCollectionProcessing are appropriate for the new functionality introduced in the component. They adhere to the coding guideline of promoting reusability across different NextJS apps.

Also applies to: 28-29


224-228: LGTM: Improved conditional rendering of CompareLists.

The addition of the condition collectionStatus !== CollectionStatus.InReview for rendering CompareLists provides more granular control over the component's visibility. This change enhances the user experience by showing the comparison only when appropriate.


241-249: LGTM: Added user feedback for processed collection status.

The addition of the AlertMessage component for the Processed collection status provides valuable feedback to the user. This change enhances the user experience by clearly communicating the current state of the collection.

Copy link

codecov bot commented Oct 22, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 36.77%. Comparing base (6ea4498) to head (7246b46).
Report is 1 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             main   #16501   +/-   ##
=======================================
  Coverage   36.77%   36.77%           
=======================================
  Files        6847     6847           
  Lines      141873   141873           
  Branches    40424    40424           
=======================================
  Hits        52167    52167           
  Misses      89706    89706           
Flag Coverage Δ
web 1.81% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6ea4498...7246b46. Read the comment docs.

@datadog-island-is
Copy link

datadog-island-is bot commented Oct 22, 2024

Datadog Report

Branch report: sc_admin_collection_statuses
Commit report: 50402d0
Test service: web

✅ 0 Failed, 84 Passed, 0 Skipped, 32.63s Total Time
➡️ Test Sessions change in coverage: 1 no change

@albinagu albinagu added the automerge Merge this PR as soon as all checks pass label Oct 22, 2024
@kodiakhq kodiakhq bot merged commit 08013ea into main Oct 22, 2024
30 checks passed
@kodiakhq kodiakhq bot deleted the sc_admin_collection_statuses branch October 22, 2024 13:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
automerge Merge this PR as soon as all checks pass
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants