Implement Issue Management UI adhering to Sztab Visual Grammar (SZ-48) (SZ-50)
rk@tigase.net opened 19 hours ago

Summary

Implement the initial Issue Management UI for the Sztab platform, fully aligned with the emerging Sztab Visual Grammar guidelines defined during SZ-48 (Project & Branch Management UI). This work establishes the foundation for Issue workflows and prepares the system for advanced filtering, relationships, and interest lists in later milestones.

Scope

This issue focuses on:

  1. Rendering the Issue list page for all issues within a project, following updated typography, spacing, card layout, and iconography patterns.
  2. Displaying Issue attributes:
    • hierarchical issue key (ORG-PROJ-XXXXXX)
    • title
    • author
    • status
    • priority & severity (badges)
    • assigned-to
    • created/updated timestamps
  3. Implementing the Issue creation modal:
    • title, description
    • project reference (pre-filled)
    • priority, severity
    • assigned-to dropdown
    • optional parent issue (for "related defects")
  4. Implementing the Issue editing modal:
    • update metadata
    • reassign user
    • update status flow
  5. Adding affordances adhering to Sztab Visual Grammar:
    • consistent spacing tokens
    • Tailwind color usage rules
    • iconography patterns (lucide-react)
    • consistent modals for Create/Edit
    • toaster notifications using the refined toast style from SZ-48
  6. Including Issue list actions:
    • Edit icon
    • Delete icon (with confirmation modal)
  7. Wiring frontend to backend:
    • GET /api/issues?projectId=…
    • POST /api/issues
    • PUT /api/issues/{id}
    • DELETE /api/issues/{id}

Out of Scope for This Issue

The following will be implemented in separate issues:

  • "Interest list" (watchers)
  • Advanced filtering DSL
  • Regex search on headline/description
  • Related-defects graph
  • Issue favorites/pinning
  • UI integration with issue–branch–PR workflow

Acceptance Criteria

  • User can view issues for a project in a clean, consistent list layout.
  • User can create a new issue using the standardized modal.
  • User can update basic issue metadata via Edit modal.
  • User can delete an issue with confirmation.
  • Visual style fully matches the patterns established in SZ-48.
  • Code compiles and UI wiring follows existing conventions.
  • rk@tigase.net commented 19 hours ago

    Work Log – SZ-48 Extension: Issue Management UI

    2025-12-10 — Initiation

    • Created issue scaffold for Issue Management UI.
    • Reviewed SZ-48 visual grammar for consistency requirements.
    • Identified required Issue attributes for UI representation.
    • Mapped backend Issue DTOs to UI requirements.

    2025-12-10 — Planning & Design

    • Outlined Issue list structure (table/card hybrid layout).
    • Prepared layout plan for Create & Edit modals.
    • Defined navigation flow from Projects → Issues.
    • Established typography & icon usage guidelines inherited from SZ-48.

    2025-12-10 — API Integration Prep

    • Identified required API endpoints for issue CRUD.
    • Confirmed Issue DTO field names from backend.
    • Prepared safeFetch wrappers for issue API calls.

    Next Steps

    • Implement IssueListPage following Sztab Visual Grammar.
    • Implement CreateIssueModal and EditIssueModal.
    • Add toaster notifications using SZ-48 refined styling.
    • Add Issue-level actions: edit/delete icons.
    • Wire navigation from ProjectsPage and Sidebar.
  • rk@tigase.net commented 19 hours ago

    Time Estimate — Implement Issue Management UI (SZ-48 continuation)

    TaskEst. Hours
    Define UI structure for Issue List page (layout, sections, typography alignment)1.0 h
    Implement IssueListPage with fetch + skeleton loading + empty-state UI1.5 h
    Build CreateIssueModal (fields, validation, parent-issue dropdown, UX wiring)2.0 h
    Build EditIssueModal (populating fields, patch updates, submission)2.0 h
    Add Issue actions (edit/delete icons, confirmation modal, toast wiring)1.0 h
    Integrate with backend: issues.ts API client + safeFetch patterns1.0 h
    Visual polish to match Sztab Visual Grammar (spacing tokens, badges, colors)1.0 h
    Manual testing across flows (create/edit/delete, project navigation)1.0 h

    Total Estimated Time: 10.5 hours

  • rk@tigase.net commented 19 hours ago

    rksuma@Ramakrishnans-MacBook-Pro sztab % git checkout -b SZ-50-Issue-Management-UI Switched to a new branch 'SZ-50-Issue-Management-UI' rksuma@Ramakrishnans-MacBook-Pro sztab %

    rksuma@Ramakrishnans-MacBook-Pro sztab % git branch -m SZ-50-Issue-Management-UI feature/SZ-50-Issue-Management-UI rksuma@Ramakrishnans-MacBook-Pro sztab %

  • rk@tigase.net changed state to 'In Progress' 19 hours ago
    Previous Value Current Value
    Open
    In Progress
issue 1 of 1
Type
New Feature
Priority
Normal
Assignee
Version
1.0
Sprints
n/a
Customer
n/a
Issue Votes (0)
Watchers (3)
Reference
SZ-50
Please wait...
Page is in error, reload to recover