Skip to content

[FEAT] Implement issue features and asignees#6

Merged
martian56 merged 1 commit into
mainfrom
5-implement-issue-features-and-asignees
Mar 8, 2026
Merged

[FEAT] Implement issue features and asignees#6
martian56 merged 1 commit into
mainfrom
5-implement-issue-features-and-asignees

Conversation

@martian56
Copy link
Copy Markdown
Member

This pull request introduces several significant improvements to both the backend and frontend of the Devlane project. The main highlights are the addition of a rich text editor for comments using TipTap, enhanced error handling and user feedback in the issue detail page, and improvements to API responses for work items. Additionally, the documentation has been expanded, and minor UI/UX enhancements have been made.

Frontend Enhancements:

Rich Text Comment Editor:

  • Introduced a new CommentEditor component using TipTap, supporting rich text formatting (bold, italic, underline, lists, code blocks, and placeholder text) for writing and editing comments. [1] [2]
  • Updated dependencies in ui/package.json to include necessary TipTap extensions.
  • Integrated CommentEditor into the IssueDetailPage, replacing the plain text input for comments. [1] [2]

Improved Comment Management and Error Handling:

  • Added full CRUD support for comments: users can now add, edit, and delete comments, with clear error messages and loading states. [1] [2] [3]
  • Enhanced user feedback throughout the issue detail workflow, displaying errors for failed updates, cycle/module changes, and comment actions. [1] [2]

UI/UX Improvements:

  • Added a favicon to the UI for better branding.

Backend/API Improvements:

Work Item API Response Enrichment:

  • The issue listing endpoint now returns issues with populated arrays for assignees, labels, cycles, and modules, ensuring the UI receives all necessary context in one response.

Documentation and Developer Experience:

Expanded Project Documentation:

  • The README.md has been significantly expanded to include installation instructions, feature overview, local development steps, technology stack, contribution guidelines, and licensing information.

Other Codebase Improvements:

Type Consistency:

  • Updated type imports and props to ensure type safety and consistency with API responses in work item creation and editing components. [1] [2]

References:

Closes #5

@martian56 martian56 self-assigned this Mar 7, 2026
Copilot AI review requested due to automatic review settings March 7, 2026 13:11
@martian56 martian56 added enhancement New feature or request API UI labels Mar 7, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR upgrades Devlane’s issue experience by adding rich-text comments with full CRUD on the issue detail page, improving list/detail UI data usage (assignees/labels), and enriching the backend issue list response to include related IDs.

Changes:

  • Add a TipTap-based CommentEditor and integrate it into IssueDetailPage for creating/editing comments.
  • Add comment update/delete APIs on the UI side and show assignees/labels in the issue list using the enriched API response.
  • Update backend issue listing to populate assignee/label/cycle/module ID arrays; expand README and add UI favicon/assets.

Reviewed changes

Copilot reviewed 10 out of 17 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
ui/src/services/commentService.ts Adds update and delete methods to support comment CRUD from the UI.
ui/src/pages/IssueListPage.tsx Uses assignee_ids and label_ids from API responses to display assignees/labels.
ui/src/pages/IssueDetailPage.tsx Integrates rich-text comment editor, adds edit/delete UI, and improves error feedback.
ui/src/components/work-item/CommentEditor.tsx New TipTap editor component used for creating and editing comments.
ui/src/components/work-item/index.ts Exports the new CommentEditor.
ui/src/components/CreateWorkItemModal.tsx Aligns project typing with API response types.
api/internal/service/issue.go Enriches List response by populating assignee/label/cycle/module IDs.
ui/package.json / ui/package-lock.json Adds TipTap dependencies and lockfile updates.
ui/index.html Adds a favicon link.
README.md Expands documentation (install/dev/features/license overview).
ui/public/*.png Adds new branding/image assets used by README/favicon.
Files not reviewed (1)
  • ui/package-lock.json: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread ui/src/components/work-item/CommentEditor.tsx
Comment thread ui/src/components/work-item/CommentEditor.tsx
Comment thread api/internal/service/issue.go
Comment thread api/internal/service/issue.go
Comment thread ui/src/pages/IssueDetailPage.tsx
@nazarli-shabnam
Copy link
Copy Markdown
Member

Backend (api/internal/handler/issue.go): limit is capped at 100 (if limit <= 0 || limit > 100 { limit = 50 }).
IssueDetailPage requests issueService.list(..., { limit: 250 }) for “all issues”. So the UI effectively gets at most 100 issues there, not 250.
If the intent is to allow more than 100 for that dropdown, the handler’s limit (or a separate cap for that use case) would need to be revisited; otherwise the behavior is consistent but the 250 in the frontend is misleading.
Other than this detail, everything is good and well implemented.

@martian56 martian56 added this to the Deadline milestone Mar 8, 2026
@martian56 martian56 merged commit 9b6a907 into main Mar 8, 2026
6 checks passed
@martian56 martian56 deleted the 5-implement-issue-features-and-asignees branch May 2, 2026 15:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

API enhancement New feature or request UI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement issue features and asignees

3 participants