Skip to content

[OpenSpec] implement-time-tracking-mvp #345

Description

@github-actions

⚠️ OpenSpec-managed issue — this content is automatically synced
from the openspec/ directory. Manual edits will be overwritten on next sync.

Artifacts

Specs

Tasks

  • 1.1 Create src/utils/durationParser.js: parseDuration(raw): number|null
  • 1.2 formatDuration(minutes): string — human-readable round-trip
  • 1.3 Unit tests for both directions, including the invalid-input cases
  • 2.1 Create src/store/timeEntries.js using the shared nextcloud-vue
  • 2.2 Expose fetchForTask(taskId), fetchForCurrentUser(), create,
  • 3.1 Estimate input in src/views/TaskDetail.vue, wired to
  • 3.2 "Log time" action opening src/components/dialogs/TimeEntryDialog.vue
  • 3.3 Progress indicator ("1h 30m / 3h") on the task detail; red +
  • 3.4 Estimate badge on the task card (src/components/TaskCard.vue,
  • 3.5 Edit/delete controls on a time entry render only for the owning
  • 4.1 Create src/views/Timesheet.vue: current user's entries grouped by
  • 4.2 Daily total per date group; range total for the current filter.
  • 4.3 Date-range filter (default "This week"; presets last-week/all/custom).
  • 4.4 Click-through to task detail; the active filter is mirrored into the
  • 5.1 Added a "Timesheet" entry to the live MainMenu.vue + a /timesheet
  • 6.3 Existing unit/vitest suite green (84 tests) + new suites cover
  • 7.1 npm run lint (eslint src) — 0 errors on all changed files

Synced from openspec/changes/implement-time-tracking-mvp by OpenSpec workflow
App: planninq

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions