[OSDEV-2032] Display raw data on the SLC post-submit popup#668
Conversation
Dedupe Hub App | Unittest test suite - Code coverage reportTotal: 55.73%Your code coverage diff: 0.00% ▴ ✅ All code changes are covered |
Countries App | Unittest test suite - Code coverage reportTotal: 100%Your code coverage diff: 0.00% ▴ ✅ All code changes are covered |
Contricleaner App | Unittest test suite - Code coverage reportTotal: 98.75%Your code coverage diff: 0.00% ▴ ✅ All code changes are covered |
Django App | Unittest test suite - Code coverage reportTotal: 80.78%Your code coverage diff: 0.00% ▴ ✅ All code changes are covered |
React App | Jest test suite - Code coverage reportTotal: 34.44%Your code coverage diff: -0.05% ▾ ✅ All code changes are covered |
📝 Walkthrough## Walkthrough
This change updates the release notes to expand the description of a bugfix related to the production locations OpenSearch index and the post-submit popup behavior. It also simplifies test data structures, refactors React components to handle raw input data directly without merging, removes special rendering of processed values, and modifies a Logstash script to stop removing duplicates from processing type values.
## Changes
| File(s) | Change Summary |
|-----------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------|
| doc/release/RELEASE-NOTES.md | Expanded bugfix notes for OSDEV-2032: corrected indexing and changed popup to show raw input only. |
| src/react/src/__tests__/components/ProductionLocationDialog.test.js | Simplified and flattened test data structure to reflect raw input data format. |
| src/react/src/components/Contribute/ProductionLocationDialog.jsx | Removed lodash assign import; refactored to gather additional fields directly from `raw_json` via rest syntax. |
| src/react/src/components/Contribute/ProductionLocationDialogFields.jsx | Removed special handling of `processed_values`; now renders all objects as JSON strings with HTML escaping. |
| src/logstash/scripts/production_locations/processing_type.rb | Removed `.uniq` call when extracting processing type values; duplicates are no longer removed. |
## Sequence Diagram(s)
```mermaid
sequenceDiagram
participant User
participant ProductionLocationDialog
participant ProductionLocationDialogFields
User->>ProductionLocationDialog: Submit SLC data (raw input)
ProductionLocationDialog->>ProductionLocationDialog: Extract raw_json fields (excluding sector)
ProductionLocationDialog->>ProductionLocationDialogFields: Pass additionalInformationFields
ProductionLocationDialogFields->>ProductionLocationDialogFields: Render fields as JSON strings (no processed_values special case)
ProductionLocationDialogFields-->>User: Display popup with raw input data onlyPossibly related PRs
Suggested reviewers
|
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
doc/release/RELEASE-NOTES.md (1)
29-29: Release-note phrasing & placement could be refined
- ContriCleaner is an internal implementation detail; consider re-wording for external readers, e.g.:
-* [OSDEV-2032](https://opensupplyhub.atlassian.net/browse/OSDEV-2032) - Adjusted the SLC post-submit popup. Instead of displaying the cleaned and transformed data from ContriCleaner, we now show only the raw input submitted by the user. +* [OSDEV-2032](https://opensupplyhub.atlassian.net/browse/OSDEV-2032) – The Single-Location-Contribution “Thanks for submitting” popup now shows exactly what the user entered, without additional cleaning or transformation.
- Behavioural UI changes are usually recorded under “What’s new” (or “Code/API changes”) rather than “Bugfix” unless this corrects a defect. Verify the intent and relocate if appropriate.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (4)
doc/release/RELEASE-NOTES.md(1 hunks)src/react/src/__tests__/components/ProductionLocationDialog.test.js(1 hunks)src/react/src/components/Contribute/ProductionLocationDialog.jsx(2 hunks)src/react/src/components/Contribute/ProductionLocationDialogFields.jsx(0 hunks)
💤 Files with no reviewable changes (1)
- src/react/src/components/Contribute/ProductionLocationDialogFields.jsx
🧰 Additional context used
🧠 Learnings (4)
📓 Common learnings
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#470
File: src/react/src/util/util.js:1441-1472
Timestamp: 2025-01-29T09:00:01.638Z
Learning: The data passed to parseContribData() function in src/react/src/util/util.js is pre-parsed and validated before reaching the function, so additional type checking is not required.
Learnt from: roman-stolar
PR: opensupplyhub/open-supply-hub#429
File: src/react/src/components/Dashboard/DashboardModerationQueueListTable.jsx:184-184
Timestamp: 2024-11-28T09:14:28.276Z
Learning: In the `DashboardModerationQueueListTable` component in `src/react/src/components/Dashboard/DashboardModerationQueueListTable.jsx`, the property `cleanedData.country` is always defined and does not require null checks.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#436
File: src/react/src/components/ProductionLocationDialog.jsx:255-257
Timestamp: 2024-12-03T06:52:22.170Z
Learning: In `src/react/src/components/ProductionLocationDialog.jsx`, the 'Submit another Location' button's `onClick` handler logs to the console as the endpoint is not yet implemented on the frontend.
Learnt from: roman-stolar
PR: opensupplyhub/open-supply-hub#536
File: src/django/api/views/v1/moderation_events.py:195-196
Timestamp: 2025-02-28T08:20:33.579Z
Learning: In the `update_production_location` method of the `ModerationEvents` class, no additional check for event.status is needed before sending the approval email with `send_slc_contribution_approval_email` as the method's flow already ensures appropriate validation.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#436
File: src/react/src/components/Contribute/ProductionLocationDialog.jsx:33-181
Timestamp: 2024-12-10T07:09:35.641Z
Learning: In the `ProductionLocationDialog.jsx` component, hardcoded facility data is acceptable for now as per the project's requirements.
Learnt from: roman-stolar
PR: opensupplyhub/open-supply-hub#429
File: src/react/src/util/util.moderationEventsXLSX.js:19-20
Timestamp: 2024-11-28T09:17:08.604Z
Learning: In the function `formatModerationEventsDataForXLSX` in `src/react/src/util/util.moderationEventsXLSX.js`, `moderationEvent.cleaned_data` and `moderationEvent.cleaned_data.country` are guaranteed to be non-null.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#470
File: src/react/src/components/Contribute/ProductionLocationDialogFields.jsx:0-0
Timestamp: 2025-01-23T11:07:39.959Z
Learning: In the Open Supply Hub codebase, complex rendering logic should be split into smaller, focused functions following the Single Responsibility Principle. For example, the ProductionLocationDialogFields component splits value rendering into separate functions for arrays (renderArray), objects (renderObject), and specific value checks (hasMinMaxEqual, hasMinOnly, etc.).
src/react/src/__tests__/components/ProductionLocationDialog.test.js (10)
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#436
File: src/react/src/components/Contribute/ProductionLocationDialog.jsx:33-181
Timestamp: 2024-12-10T07:09:35.641Z
Learning: In the `ProductionLocationDialog.jsx` component, hardcoded facility data is acceptable for now as per the project's requirements.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#436
File: src/react/src/components/DialogTooltip.jsx:0-0
Timestamp: 2024-12-03T10:29:02.409Z
Learning: In the `DialogTooltip` component (`src/react/src/components/DialogTooltip.jsx`), there are existing tooltip tests that cover common cases, and further detailed tests are not necessary.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#436
File: src/react/src/components/ProductionLocationDialog.jsx:255-257
Timestamp: 2024-12-03T06:52:22.170Z
Learning: In `src/react/src/components/ProductionLocationDialog.jsx`, the 'Submit another Location' button's `onClick` handler logs to the console as the endpoint is not yet implemented on the frontend.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#470
File: src/react/src/__tests__/components/ProductionLocationDialog.test.js:66-105
Timestamp: 2025-01-27T07:57:17.370Z
Learning: The ProductionLocationDialog component does not receive error props directly, as errors are not passed down explicitly to this component.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#470
File: src/react/src/components/Contribute/ProductionLocationInfo.jsx:680-692
Timestamp: 2025-01-23T11:10:17.929Z
Learning: The ProductionLocationInfo component in Open Supply Hub implements field-level validation for name, address and country fields using Material-UI's TextField validation patterns and touch states, providing real-time feedback to users.
Learnt from: roman-stolar
PR: opensupplyhub/open-supply-hub#429
File: src/react/src/components/Dashboard/DashboardModerationQueueListTable.jsx:184-184
Timestamp: 2024-11-28T09:14:28.276Z
Learning: In the `DashboardModerationQueueListTable` component in `src/react/src/components/Dashboard/DashboardModerationQueueListTable.jsx`, the property `cleanedData.country` is always defined and does not require null checks.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#470
File: src/react/src/__tests__/components/ProductionLocationDialog.test.js:122-122
Timestamp: 2025-01-27T07:58:22.674Z
Learning: When testing button states in components wrapped with DialogTooltip/Tooltip, use getComputedStyle().pointerEvents checks instead of direct button attribute assertions, as the wrapping prevents direct access to the button's attributes.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#470
File: src/react/src/components/Contribute/ProductionLocationDialogFields.jsx:0-0
Timestamp: 2025-01-23T11:07:39.959Z
Learning: In the Open Supply Hub codebase, complex rendering logic should be split into smaller, focused functions following the Single Responsibility Principle. For example, the ProductionLocationDialogFields component splits value rendering into separate functions for arrays (renderArray), objects (renderObject), and specific value checks (hasMinMaxEqual, hasMinOnly, etc.).
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#470
File: src/react/src/__tests__/components/ProductionLocationDialog.test.js:0-0
Timestamp: 2025-01-27T07:20:43.334Z
Learning: In the Open Supply Hub project, buttons wrapped by the `DialogTooltip` component control their disabled state through CSS pointer-events rather than the HTML disabled attribute, requiring tests to check `getComputedStyle().pointerEvents` instead of using `toBeDisabled()`.
Learnt from: roman-stolar
PR: opensupplyhub/open-supply-hub#448
File: src/react/src/util/util.js:1317-1317
Timestamp: 2024-12-10T15:07:54.819Z
Learning: Changes to date handling functions like `formatDate` in `src/react/src/util/util.js` should be made carefully, considering that different parts of the codebase may intentionally use local time instead of UTC, and broad changes to `moment()` usage may not be appropriate without context.
doc/release/RELEASE-NOTES.md (3)
undefined
<retrieved_learning>
Learnt from: VadimKovalenkoSNF
PR: #420
File: doc/release/RELEASE-NOTES.md:38-38
Timestamp: 2024-11-26T04:59:12.296Z
Learning: For endpoints that haven't been released to end users, it's acceptable to document API changes under the 'Bugfix' section in the release notes.
</retrieved_learning>
<retrieved_learning>
Learnt from: VadimKovalenkoSNF
PR: #641
File: doc/release/RELEASE-NOTES.md:6-35
Timestamp: 2025-06-02T13:24:57.659Z
Learning: The Open Supply Hub team keeps placeholders in release notes until code freeze, then fills in the actual content once all changes are finalized for the release.
</retrieved_learning>
<retrieved_learning>
Learnt from: Innavin369
PR: #431
File: src/django/api/serializers/v1/opensearch_common_validators/countries_validator.py:23-24
Timestamp: 2024-11-28T11:29:28.139Z
Learning: The files src/django/api/tests/test_facility_claim_view_set.py, src/django/api/views/facility/facilities_view_set.py, and src/django/api/facility_actions/processing_facility_api.py are not part of the V1 codebase in the Open Supply Hub project.
</retrieved_learning>
src/react/src/components/Contribute/ProductionLocationDialog.jsx (17)
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#436
File: src/react/src/components/Contribute/ProductionLocationDialog.jsx:33-181
Timestamp: 2024-12-10T07:09:35.641Z
Learning: In the `ProductionLocationDialog.jsx` component, hardcoded facility data is acceptable for now as per the project's requirements.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#436
File: src/react/src/components/ProductionLocationDialog.jsx:255-257
Timestamp: 2024-12-03T06:52:22.170Z
Learning: In `src/react/src/components/ProductionLocationDialog.jsx`, the 'Submit another Location' button's `onClick` handler logs to the console as the endpoint is not yet implemented on the frontend.
Learnt from: roman-stolar
PR: opensupplyhub/open-supply-hub#429
File: src/react/src/components/Dashboard/DashboardModerationQueueListTable.jsx:184-184
Timestamp: 2024-11-28T09:14:28.276Z
Learning: In the `DashboardModerationQueueListTable` component in `src/react/src/components/Dashboard/DashboardModerationQueueListTable.jsx`, the property `cleanedData.country` is always defined and does not require null checks.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#470
File: src/react/src/__tests__/components/ProductionLocationDialog.test.js:66-105
Timestamp: 2025-01-27T07:57:17.370Z
Learning: The ProductionLocationDialog component does not receive error props directly, as errors are not passed down explicitly to this component.
Learnt from: roman-stolar
PR: opensupplyhub/open-supply-hub#429
File: src/react/src/components/Dashboard/DashboardModerationQueue.jsx:246-254
Timestamp: 2024-11-28T09:15:37.831Z
Learning: In `src/react/src/components/Dashboard/DashboardModerationQueue.jsx`, within the `mapStateToProps` function, `dashboardModerationQueue` and `filters` are guaranteed to be defined, so providing default values or using optional chaining to access their properties is unnecessary.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#470
File: src/react/src/util/util.js:1441-1472
Timestamp: 2025-01-29T09:00:01.638Z
Learning: The data passed to parseContribData() function in src/react/src/util/util.js is pre-parsed and validated before reaching the function, so additional type checking is not required.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#470
File: src/react/src/components/Contribute/ProductionLocationDialogFields.jsx:0-0
Timestamp: 2025-01-23T11:07:39.959Z
Learning: In the Open Supply Hub codebase, complex rendering logic should be split into smaller, focused functions following the Single Responsibility Principle. For example, the ProductionLocationDialogFields component splits value rendering into separate functions for arrays (renderArray), objects (renderObject), and specific value checks (hasMinMaxEqual, hasMinOnly, etc.).
Learnt from: roman-stolar
PR: opensupplyhub/open-supply-hub#448
File: src/react/src/util/util.js:1317-1317
Timestamp: 2024-12-10T15:07:54.819Z
Learning: Changes to date handling functions like `formatDate` in `src/react/src/util/util.js` should be made carefully, considering that different parts of the codebase may intentionally use local time instead of UTC, and broad changes to `moment()` usage may not be appropriate without context.
Learnt from: roman-stolar
PR: opensupplyhub/open-supply-hub#429
File: src/react/src/components/Dashboard/DashboardModerationQueueListTable.jsx:168-168
Timestamp: 2024-11-28T09:14:57.887Z
Learning: In the `DashboardModerationQueueListTable.jsx` component (`src/react/src/components/Dashboard/DashboardModerationQueueListTable.jsx`), `cleanedData.name` is guaranteed to be defined and cannot be `null` or `undefined`. It is safe to use it directly without providing a default value.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#470
File: src/react/src/components/Contribute/ProductionLocationInfo.jsx:680-692
Timestamp: 2025-01-23T11:10:17.929Z
Learning: The ProductionLocationInfo component in Open Supply Hub implements field-level validation for name, address and country fields using Material-UI's TextField validation patterns and touch states, providing real-time feedback to users.
Learnt from: Innavin369
PR: opensupplyhub/open-supply-hub#437
File: src/react/src/components/Filters/StyledSelect.jsx:31-39
Timestamp: 2024-12-05T10:43:59.922Z
Learning: In the `StyledSelect` component (`src/react/src/components/Filters/StyledSelect.jsx`), the `label` prop is optional. The `InputLabel` should be conditionally rendered only when a label is provided to prevent unnecessary DOM elements, extra padding, and browser console warnings.
Learnt from: Innavin369
PR: opensupplyhub/open-supply-hub#415
File: src/react/src/components/Button.jsx:43-43
Timestamp: 2024-11-22T12:22:59.701Z
Learning: In the Open Supply Hub codebase, the Button component in `src/react/src/components/Button.jsx` is designed to have an optional `onClick` prop to accommodate different cases.
Learnt from: Innavin369
PR: opensupplyhub/open-supply-hub#397
File: src/react/src/components/Dashboard/DashboardContributionRecord.jsx:25-35
Timestamp: 2024-11-08T14:17:38.915Z
Learning: In `src/react/src/components/Dashboard/DashboardContributionRecord.jsx`, using inline styles with the `List` component is acceptable and functions correctly in this context.
Learnt from: Innavin369
PR: opensupplyhub/open-supply-hub#415
File: src/react/src/components/ContributeForm.jsx:175-206
Timestamp: 2024-11-20T23:08:05.475Z
Learning: In the `ContributeForm.jsx` React component, it's acceptable to include an empty `onClick={() => {}}` handler on a disabled `<Button>` to prevent console warnings.
Learnt from: roman-stolar
PR: opensupplyhub/open-supply-hub#429
File: src/react/src/components/Dashboard/DashboardModerationQueue.jsx:216-219
Timestamp: 2024-11-28T10:01:06.144Z
Learning: In the `DashboardModerationQueueListTable` component in `src/react/src/components/Dashboard/DashboardModerationQueueListTable.jsx`, the `index` and `maxIndex` props are used and should not be considered unused.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#470
File: src/react/src/components/Contribute/ProductionLocationInfo.jsx:229-243
Timestamp: 2025-01-23T10:19:59.642Z
Learning: In React useEffect hooks that perform navigation, adding router-related dependencies (history, location) to the dependency array can cause unwanted re-renders and side effects. For navigation effects triggered by data changes, include only the data dependencies.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#436
File: src/react/src/util/styles.js:567-571
Timestamp: 2024-12-10T09:00:29.628Z
Learning: In the Open Supply Hub project, when defining font sizes in styles (e.g., in `src/react/src/util/styles.js`), prefer using `px` units directly rather than using `theme.typography.pxToRem()` function, as `px` units are used consistently throughout the project.
⏰ Context from checks skipped due to timeout of 90000ms (10)
- GitHub Check: get-base-branch-contricleaner-cov
- GitHub Check: run-flake8-linter
- GitHub Check: get-base-branch-django-cov
- GitHub Check: run-integration-test-code-quality
- GitHub Check: run-contricleaner-code-quality
- GitHub Check: run-django-code-quality
- GitHub Check: get-base-branch-dd-cov
- GitHub Check: run-dd-code-quality
- GitHub Check: run-countries-code-quality
- GitHub Check: get-base-branch-countries-cov
🔇 Additional comments (4)
src/react/src/__tests__/components/ProductionLocationDialog.test.js (2)
59-71: LGTM! Test data structure updated to reflect raw data format.The test data changes align perfectly with the PR objective to display raw input data. The simplification removes the processed data structure (
raw_values/processed_values) and uses direct field values, which matches the component's updated logic.
238-242: Consistent tooltip test data structure.The tooltip test data has been updated consistently with the main test data structure, maintaining the flattened
raw_jsonformat without the nestedfieldsobject.src/react/src/components/Contribute/ProductionLocationDialog.jsx (2)
5-5: LGTM! Cleaned up unused import.The
assignimport has been appropriately removed since the field merging logic was eliminated in favor of using rest syntax for destructuring.
138-140: Excellent refactor! Simplified data extraction using rest syntax.The change from manual field extraction and merging to using rest syntax (
...additionalInformationFields) is cleaner and directly supports the PR objective of displaying raw input data. This eliminates the need for theassignoperation and makes the code more straightforward.
…he SLC post-submit popup, and add the EmailAddress model to the admin panel.
There was a problem hiding this comment.
Actionable comments posted: 0
🔭 Outside diff range comments (1)
src/logstash/scripts/production_locations/processing_type.rb (1)
33-36: Update test expectation to match the new behavior.The test description and expectation are inconsistent with the code change. The test expects unique values (
['value1', 'value2']) but the code no longer removes duplicates, so the actual result should be['value1', 'value2', 'value1'].Apply this diff to fix the test:
- expect('sets processing_type with unique non-nil values') do |events| + expect('sets processing_type with non-nil values including duplicates') do |events| values = events[0].get('processing_type') - values.sort == ['value1', 'value2'] + values == ['value1', 'value2', 'value1'] end
🧹 Nitpick comments (2)
doc/release/RELEASE-NOTES.md (2)
31-31: Fix typo in bullet-point text
usered→user.- * Adjusted the post-submit popup. Instead of displaying the cleaned and transformed data from ContriCleaner, we now show only the raw input submitted by the usered + * Adjusted the post-submit popup. Instead of displaying the cleaned and transformed data from ContriCleaner, we now show only the raw input submitted by the user
30-31: Normalize nested list indentation to silence MD007markdownlint expects 2-space indentation for nested list items; current 4-space indentation triggers warnings (see static-analysis hint).
- * Fixed the incorrect indexing of the location type in the production locations OpenSearch index. Previously, it was incorrectly taking the processing type value as the location type — using the fourth item in the `matched_values` array instead of the third, which contains the location type. Also, updated the Logstash filters for both processing type and location type to return only unique values and write them to the production locations OpenSearch index. - * Adjusted the post-submit popup. Instead of displaying the cleaned and transformed data from ContriCleaner, we now show only the raw input submitted by the user + * Fixed the incorrect indexing of the location type in the production locations OpenSearch index. Previously, it was incorrectly taking the processing type value as the location type — using the fourth item in the `matched_values` array instead of the third, which contains the location type. Also, updated the Logstash filters for both processing type and location type to return only unique values and write them to the production locations OpenSearch index. + * Adjusted the post-submit popup. Instead of displaying the cleaned and transformed data from ContriCleaner, we now show only the raw input submitted by the user
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (5)
doc/release/RELEASE-NOTES.md(1 hunks)src/logstash/scripts/production_locations/processing_type.rb(1 hunks)src/react/src/__tests__/components/ProductionLocationDialog.test.js(1 hunks)src/react/src/components/Contribute/ProductionLocationDialog.jsx(2 hunks)src/react/src/components/Contribute/ProductionLocationDialogFields.jsx(0 hunks)
💤 Files with no reviewable changes (1)
- src/react/src/components/Contribute/ProductionLocationDialogFields.jsx
🚧 Files skipped from review as they are similar to previous changes (2)
- src/react/src/components/Contribute/ProductionLocationDialog.jsx
- src/react/src/tests/components/ProductionLocationDialog.test.js
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#420
File: doc/release/RELEASE-NOTES.md:37-37
Timestamp: 2024-11-25T13:28:23.090Z
Learning: When modifying unreleased API endpoints, such as refactoring the `search_after` parameter into `search_after_value` and `search_after_id` in the OpenSearch implementation, it's acceptable to leave the "What's New" section empty since the changes haven't been released to end users.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#641
File: doc/release/RELEASE-NOTES.md:6-35
Timestamp: 2025-06-02T13:24:57.659Z
Learning: The Open Supply Hub team keeps placeholders in release notes until code freeze, then fills in the actual content once all changes are finalized for the release.
Learnt from: VadimKovalenkoSNF
PR: opensupplyhub/open-supply-hub#420
File: doc/release/RELEASE-NOTES.md:38-38
Timestamp: 2024-11-26T04:59:12.296Z
Learning: For endpoints that haven't been released to end users, it's acceptable to document API changes under the 'Bugfix' section in the release notes.
Learnt from: mazursasha1990
PR: opensupplyhub/open-supply-hub#438
File: src/django/api/tests/test_moderation_events_add_production_location.py:21-65
Timestamp: 2024-12-12T14:59:19.694Z
Learning: In `src/django/api/tests/test_moderation_events_add_production_location.py`, the tests have been refactored, and the use of `POST` methods is intentional. Future suggestions to change HTTP methods in these tests may not be necessary.
doc/release/RELEASE-NOTES.md (4)
undefined
<retrieved_learning>
Learnt from: VadimKovalenkoSNF
PR: #420
File: doc/release/RELEASE-NOTES.md:37-37
Timestamp: 2024-11-25T13:28:23.090Z
Learning: When modifying unreleased API endpoints, such as refactoring the search_after parameter into search_after_value and search_after_id in the OpenSearch implementation, it's acceptable to leave the "What's New" section empty since the changes haven't been released to end users.
</retrieved_learning>
<retrieved_learning>
Learnt from: VadimKovalenkoSNF
PR: #420
File: doc/release/RELEASE-NOTES.md:38-38
Timestamp: 2024-11-26T04:59:12.296Z
Learning: For endpoints that haven't been released to end users, it's acceptable to document API changes under the 'Bugfix' section in the release notes.
</retrieved_learning>
<retrieved_learning>
Learnt from: VadimKovalenkoSNF
PR: #641
File: doc/release/RELEASE-NOTES.md:6-35
Timestamp: 2025-06-02T13:24:57.659Z
Learning: The Open Supply Hub team keeps placeholders in release notes until code freeze, then fills in the actual content once all changes are finalized for the release.
</retrieved_learning>
<retrieved_learning>
Learnt from: Innavin369
PR: #431
File: src/django/api/serializers/v1/opensearch_common_validators/countries_validator.py:23-24
Timestamp: 2024-11-28T11:29:28.139Z
Learning: The files src/django/api/tests/test_facility_claim_view_set.py, src/django/api/views/facility/facilities_view_set.py, and src/django/api/facility_actions/processing_facility_api.py are not part of the V1 codebase in the Open Supply Hub project.
</retrieved_learning>
🪛 markdownlint-cli2 (0.17.2)
doc/release/RELEASE-NOTES.md
30-30: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
31-31: Unordered list indentation
Expected: 2; Actual: 4
(MD007, ul-indent)
⏰ Context from checks skipped due to timeout of 90000ms (13)
- GitHub Check: run-countries-code-quality
- GitHub Check: get-base-branch-countries-cov
- GitHub Check: run-eslint-linter-and-prettier-formatter
- GitHub Check: run-contricleaner-code-quality
- GitHub Check: run-flake8-linter
- GitHub Check: run-dd-code-quality
- GitHub Check: get-base-branch-contricleaner-cov
- GitHub Check: run-django-code-quality
- GitHub Check: get-base-branch-django-cov
- GitHub Check: get-base-branch-dd-cov
- GitHub Check: run-integration-test-code-quality
- GitHub Check: get-base-branch-fe-cov
- GitHub Check: run-fe-code-quality
🔇 Additional comments (1)
src/logstash/scripts/production_locations/processing_type.rb (1)
11-11: LGTM - Change aligns with PR objectives.Removing
.uniqpreserves duplicate processing type values, which correctly aligns with the PR objective to display raw input data without transformation.
|



Adjusted the SLC post-submit popup. Instead of displaying the cleaned and transformed data from ContriCleaner, we now show only the raw input submitted by the user.