Skip to content

Conversation

@DylanDevelops
Copy link
Owner

Pull Request Checklist

  • I have read and followed the contribution guidelines.
  • My pull request targets the main branch of tmpo.
  • I have tested these changes locally on my machine.

Closes #23

Description

This pull request introduces comprehensive milestone management to the application, allowing users to create, finish, view the status of, and list milestones for projects. It also enhances time entry and history commands to support associating entries with milestones and filtering by milestones. The most important changes are grouped below.

Milestone Management Features:

  • Added a new milestone command group with subcommands to start, finish, check status, and list milestones for projects (cmd/milestones/milestone.go, cmd/milestones/start.go, cmd/milestones/finish.go, cmd/milestones/status.go, cmd/milestones/list.go). [1] [2] [3] [4] [5]
  • Integrated the milestone commands into the main CLI by registering them in the root command (cmd/root.go). [1] [2]

Time Entry Enhancements:

  • Modified manual and automatic time entry creation to support associating entries with milestones. When creating or resuming entries, the system can now prompt for or automatically assign an active milestone (cmd/entries/manual.go, cmd/tracking/start.go, cmd/tracking/resume.go). [1] [2] [3] [4]
  • Updated the display of time entries to show the associated milestone where applicable (cmd/entries/manual.go, cmd/history/log.go). [1] [2]

History and Export Improvements:

  • Enhanced the log and export commands to allow filtering time entries by milestone via a new --milestone flag, and display milestone information in logs (cmd/history/log.go, cmd/history/export.go). [1] [2] [3] [4] [5] [6]

Internal Refactoring:

  • Updated imports and refactored code in various files to support milestone functionality and ensure correct project detection and milestone association (cmd/entries/manual.go, cmd/history/export.go, cmd/history/log.go). [1] [2] [3]

These changes collectively provide robust milestone management and improved tracking and reporting capabilities for project time entries.

Screenshots

Screenshot 2025-12-28 at 10 47 21 AM Screenshot 2025-12-28 at 10 48 13 AM Screenshot 2025-12-28 at 10 49 52 AM Screenshot 2025-12-28 at 10 52 53 AM Screenshot 2025-12-28 at 10 59 41 AM

Introduces milestone management with new commands for starting, finishing, listing, and viewing milestone status. Time entries can now be associated with milestones, and milestone information is included in CSV/JSON exports and log/history commands. Database schema is updated to support milestones, and related code is refactored to handle milestone assignment and querying.
Added display of the milestone name in the manual entry details if it is set. This improves visibility of milestone information when reviewing entries.
Updated the log command to use different symbols for milestone and description lines for better visual clarity. Changed the status command to use the milestone emoji instead of the status emoji when displaying the active milestone.
Expanded documentation to include milestone management features across CLAUDE.md, CONTRIBUTING.md, README.md, and docs/usage.md. Added details on milestone commands, usage examples, CLI options, and updated CSV/JSON export formats to include milestone information. This clarifies how to organize and analyze work using milestones within the time tracking workflow.
@DylanDevelops DylanDevelops merged commit ac33cdc into main Dec 28, 2025
6 checks passed
@DylanDevelops DylanDevelops deleted the ravel/milestones branch December 28, 2025 18:42
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.

Milestone System

2 participants