Made error detection for messages into a helper function, reducing co… #258
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
…mplexity in Messaging.addMessage
P1B: Starter Task: Refactoring src/messaging/create.js: cleaning up error detection/handling in addMessage
1. Issue
Please provide a link to the associated GitHub issue:
#162
Link to the associated GitHub issue:
#162
Full path to the refactored file:
src/messaging.create.js
What do you think this file does?
(Your answer does not have to be 100% correct; give a reasonable, evidence‑based guess.)
This file handles the private messaging/group chat creation feature of NodeBB, adding you to communicate between individual users.
What is the scope of your refactoring within that file?
(Name specific functions/blocks/regions touched.)
Cleaned up the Messaging.addMessage function by moving the error detection at the start of the function into a helper function.
Which Qlty‑reported issue did you address?
(Name the rule/metric and include the BEFORE value; e.g., “Cognitive Complexity 18 in render()”.)
Function complexity of 14 in addMessage
2. Refactoring
How did the specific issue you chose impact the codebase’s adaptability?
Error checking/handling in addMessage has one dedicated section; any situations where an error should occur will happen in the same location.
What changes did you make to resolve the issue?
Converted error handling into a helper function.
How do your changes improve adaptability? Did you consider alternatives?
Error checking/handling in addMessage has one dedicated section; any situations where an error should occur will happen in the same location. I did not really consider any alternatives.
3. Validation
How did you trigger the refactored code path from the UI?
Each time I send a message, it checks if the message flagged an error.
Attach a screenshot of the logs and UI demonstrating the trigger.

(Run
./nodebb log; include the relevant UI view. Temporary logs should be removed before final commit.)Attach a screenshot of

qlty smells --no-snippets <full/path/to/file.js>showing fewer reported issues after the changes.