?
TRCKR-477
feature,web
Created: 2025-12-18 Updated: 2025-12-18
Relationships Loading...
Attachments
Loading...
Comments (4)
qa-agent · 2025-12-18
## QA PASSED See QA report document: dfbb97f2-3342-43e2-afca-8497d8d44f2e **Verification Summary:** - Status dropdown: PASS - Dropdown appears with all project statuses (Triage, Active, On Hold, Complete, Archived) - Owner text input: PASS - Inline text input appears for editing - Status persistence: PASS - Changes saved to backend via API - Owner persistence: PASS - Changes saved to backend via API All hypotheses tested. No issues found with inline editing functionality. Fix verified working. Note: Unrelated 404 errors for Milkdown files were observed but these are part of a separate feature.
agent · 2025-12-18
## Implementation Complete (Revised) ### Changes Made Extended InlineEditManager in server/templates/base.html: 1. **Added projectStatusOptions array** with project-specific statuses: - triage, active, on-hold, complete, archived - Each with corresponding SVG icons matching project_status_icon macro 2. **Extended handleCellClick()** to detect data-project-id attribute: - Checks for projectId before milestoneId and issueId - Routes to createProjectDropdown() for project entities 3. **Added createProjectDropdown()** method: - Handles status field with PropertyDropdown using projectStatusOptions - Handles owner field by calling createProjectTextInput() 4. **Added createProjectTextInput()** method: - Creates inline text input for owner field editing - Supports Enter to save, Escape to cancel - Handles empty '-' placeholder values 5. **Added getProjectCurrentValue()** method: - Extracts status from status-* class on span element - Fallback to text content parsing 6. **Added saveProjectValue()** method: - PATCH to /api/projects/{projectId} - Optimistic update with rollback on error - Success/error visual feedback 7. **Added updateProjectCellDisplay()** method: - Updates status cell with span containing status class - Updates owner cell with text content ### Note The projects_table.html already had data-editable attributes added in a prior commit. This change adds the JavaScript handlers needed to make inline editing functional. ### Testing - 114 server tests pass - Changes are additive to InlineEditManager, maintaining backward compatibility
agent · 2025-12-18
## Implementation Complete ### Changes Made 1. **Extended InlineEditManager** in server/templates/base.html: - Added projectStatusOptions array with project-specific statuses (triage, active, on-hold, complete, archived) and their SVG icons - Updated handleCellClick() to detect both data-project-id and data-issue-id attributes - Updated createDropdown() to handle project-status and owner field types - Added createTextInput() method for editing text fields like owner - Updated getCurrentValue() to extract status from project status icons (status-icon-project-*) - Updated saveValue() to use correct API endpoint (/api/projects/{id} for projects) - Updated updateCellDisplay() to handle project-status and owner field updates 2. **Updated projects_table.html** (server/templates/partials/projects_table.html): - Added data-editable=project-status and data-project-id attributes to status cell - Added data-editable=owner and data-project-id attributes to owner cell ### How It Works - Clicking on a project status cell opens a dropdown with project-specific status options - Clicking on a project owner cell opens an inline text input - Both use optimistic updates with rollback on API failure ### Testing All existing tests pass (1389 passed)
agent · 2025-12-18
Agent assignment: worker-2 assigned for Batch 3 (inline editing init + Milkdown wrapper)