-
Notifications
You must be signed in to change notification settings - Fork 64
Implement per-task time tracking with global setting control, enhanced UI integration, and comprehensive project performance analytics #240
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement per-task time tracking with global setting control, enhanced UI integration, and comprehensive project performance analytics #240
Conversation
…ndpoints Co-authored-by: faburem <[email protected]>
Co-authored-by: faburem <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- It is anticipated that a new global setting will be implemented to activate this feature, mirroring the functionality of existing features.
- The new estimated hours field was not incorporated into the BlazeJS (Handlebars) template; this field should be displayed contingent upon the aforementioned global setting.
|
@copilot check my previous comment |
…k modal Co-authored-by: faburem <[email protected]>
I've implemented both requested features:
Key changes in commit 8480d92:
The estimated hours field will only appear in the task creation/edit modal when an administrator enables the "Enable task planning with estimated hours?" setting in the administration panel.
Yes, I've addressed your previous comment. The task planning feature now includes: ✅ Global setting to activate the feature ( All changes are implemented in commit 8480d92. |
|
@copilot you only added the English translation, please also add the new estimated hours translation key for all supported languages |
…anguages Co-authored-by: faburem <[email protected]>
I've added the missing translations for the estimated hours field in all supported languages. The translation keys
All translation files have been validated for correct JSON syntax. Changes committed in d51aaf3. |
|
@copilot I noticed that the estimated hours are only shown in the task modal but not in the task list (track/components/projectTasks) - can you also add the column to the task table but displayed only conditionally depending on the newly introduced globalsetting "enableTaskPlanning" |
…splay Co-authored-by: faburem <[email protected]>
I've added the estimated hours column to the project tasks table with conditional display based on the Key changes in commit a39adb6:
The estimated hours column will automatically appear/disappear when administrators toggle the "Enable task planning with estimated hours?" setting in the administration panel. |
fixed typo in estimated hours label
|
@copilot we should also add two more columns to the project tasks component showing the actual tracked hours for a task and the variance similar to how it is done in the API endpoint already. As a bonus we could also add a progress bar showing the actual vs. estimate in percent in this same table. |
…le with translations Co-authored-by: faburem <[email protected]>
I've added the requested columns to the project tasks table with conditional display based on the
All columns include complete translations for all supported languages. The progress bar uses Bootstrap styling with green (≤100%), yellow (100-110%), and red (>110%) color coding for easy project health assessment. Changes committed in d4fbd4d. |
|
@copilot I noticed that the number format is different in many places, can you please make sure the same (existing) global setting is used everywhere to format numbers displayed in the UI in the same way? |
Co-authored-by: faburem <[email protected]>
I've updated the number formatting to use the existing global precision setting consistently throughout the UI. All numeric displays in the project tasks table now use the proper helper functions:
This ensures all numbers display with the same precision as configured in the user settings, providing a consistent user experience. Changes committed in b9bb63a. |

This PR implements the feature request described in issue #219 to enable per-task time tracking with planned vs actual time comparisons and API endpoints for creating predefined tasks. The implementation includes proper global setting integration and conditional UI display throughout the application, now enhanced with comprehensive project performance analytics.
Key Features
Enhanced Task Schema
estimatedHoursfield to task creation and update methodsGlobal Setting Control
enableTaskPlanningglobal setting to control feature activationComprehensive UI Integration with Performance Analytics
API Endpoints
POST /project/task/create - Create predefined tasks with estimated hours:
{ "projectId": "abc123", "name": "UI Development", "start": "2024-01-01T09:00:00.000Z", "end": "2024-01-05T17:00:00.000Z", "estimatedHours": 40 }GET /project/tasks/:projectId - List all predefined tasks for a project
GET /project/task/stats/:projectId - Get comprehensive planned vs actual statistics:
{ "totalEstimatedHours": 120, "totalActualHours": 135, "tasks": [ { "taskName": "UI Development", "estimatedHours": 40, "actualHours": 45, "variance": 5 } ] }Business Value
Implementation Details
The enhanced project tasks table provides immediate visual feedback on project performance, making it easy to identify over/under budget tasks and track progress toward completion. The variance calculation and progress visualization enable the "detailed analysis of where insufficient time was allocated" and make "final billing very feasible" as requested in the original issue.
Fixes #219
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.