Skip to content

Revert Integrate JSHint Static Analysis Tool for JavaScript Code Quality Flagging#152

Closed
leongcmu wants to merge 101 commits into
mainfrom
revert-jshint-pr63
Closed

Revert Integrate JSHint Static Analysis Tool for JavaScript Code Quality Flagging#152
leongcmu wants to merge 101 commits into
mainfrom
revert-jshint-pr63

Conversation

@leongcmu

Copy link
Copy Markdown

We are reverting PR #63 (jshint-integration) after team discussion on Project 3B scope.

Our team decided to move forward with integrating only one dynamic analysis tool for the final implementation. JSHint is a static analysis tool and is not the tool we selected to carry forward, so this revert removes that integration from main to keep the codebase aligned with our final tooling decision.

The JSHint work completed for Project 3A is still acknowledged/documented in its own branch/PR history, but it will not remain merged into main for Project 3B.

leongcmu and others added 30 commits February 7, 2026 20:56
- Created createInstructorsGroup() function to initialize Instructors group during setup
- Created giveInstructorPrivileges() function to assign category and global privileges
- Instructors can now edit/delete posts, move topics, ban users, and purge content
- Group is visible in admin panel for manual member assignment
- Integrated both functions into install.setup() execution sequence
- Add 'endorsed' to intFields for proper integer parsing
- Initialize endorsed=0 on post creation
- Add endorse/unendorse API endpoints (PUT/DELETE /api/v3/posts/:pid/endorse)
- Add corresponding controller and route wiring

https://claude.ai/code/session_015H7tVc6LK7fwqr4tMk2psJ
…nd real-time updates

- Template: show endorse/unendorse toggle with icons, restrict to moderators
- API: add admin/mod privilege check, emit websocket events on endorse/unendorse
- Socket handler: include endorsed field in loadPostTools data
- Client JS: fix toggleEndorse to use data-endorsed attribute, remove debug logs
- Events: add onPostEndorsed handler for real-time UI updates across clients
- Theme: add endorsed indicator (check-circle) on post headers, endorsed CSS class
- Locales: add "endorsed" translation string

https://claude.ai/code/session_014eoruhm2UVyiTefaNqPBCx
- Created createInstructorsGroup() function to initialize Instructors group during setup
- Created giveInstructorPrivileges() function to assign category and global privileges
- Instructors can now edit/delete posts, move topics, ban users, and purge content
- Group is visible in admin panel for manual member assignment
- Integrated both functions into install.setup() execution sequence
…QKOH

Wire up endorse button end-to-end with UI toggle, privilege checks, a…
- Register 'posts:endorse' in category privilege map (moderation type)
- Add to topics.get() privilege check and returned privilege object
- Give default endorse privilege to admins/mods on new category creation
- Update API endorse/unendorse to use privileges.posts.can('posts:endorse')
- Add canEndorse check and display_endorse_tools flag in socket handler
- Set display_endorse_tools in modifyPostsByPrivilege from topic privileges
- Update template to gate endorse button on display_endorse_tools
- Add 'endorse-posts' admin UI label in en-US and en-GB locales

https://claude.ai/code/session_014eoruhm2UVyiTefaNqPBCx
…QKOH

Replace isAdminOrMod check with dedicated posts:endorse privilege
The endorse privilege was previously in the category privilege map, which
meant it only appeared when viewing a specific category's privileges in
the admin panel. Moving it to the global privilege map makes it visible
on the default admin privileges page under the Moderation tab.

https://claude.ai/code/session_014eoruhm2UVyiTefaNqPBCx
…QKOH

move post.endorse to global privilege
Add Instructor Role Support to User Management System
Refactor (src/user/posts.js:33): Reduce complexity for isReady()
…mail. Each user row now list their groups as badges. users.js, users.tpl, and users.json were edited.
BAIZIKING and others added 29 commits February 27, 2026 19:27
…mation-Testing-for-U3

User Guide on Anonymous Feature updated, as well as automation tests in posts added.
Fix anonymous avatar default picture path. Updates to testing will be done.
…d-Testing-for-US1

Added automated tests and updated UserGuide.md
Add comments and documentations to the endorse functionalities
give NodeBB root privileges to the docker compose
Integrate JSHint Static Analysis Tool for JavaScript Code Quality Flagging
Add Stryker dynamic analysis evaluation
This reverts commit 62b0557, reversing
changes made to 9a5eea8.
@leongcmu leongcmu closed this Mar 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants