Skip to content

feat(tasks,epics): blocked-task warning + epic dates/owner/priority/progress#259

Merged
parth0025 merged 1 commit into
stagingfrom
feat/relations-epics-enhancements
Jun 19, 2026
Merged

feat(tasks,epics): blocked-task warning + epic dates/owner/priority/progress#259
parth0025 merged 1 commit into
stagingfrom
feat/relations-epics-enhancements

Conversation

@parth0025

Copy link
Copy Markdown
Collaborator

Summary

Closes the two gaps surfaced in the Relations & Epics feature review. Tracked as AHE-3770 and AHE-3771 in the v14.5.0 - Polish: Relations & Epics sprint.

1 · Blocked-task warning (AHE-3770)

A task that is blocked_by one or more still-open tasks now shows a "⚠ Blocked by N open task(s)" banner in its Linked Tasks panel — making AlianHub's blocked-task alert real.

  • Backend (additive — the central status-write path is untouched): pure selectOpenBlockers + isClosedStatusType (relationRules.js), getOpenBlockers (relations.js), new openBlockers action on POST /api/v2/tasks/relations.
  • Frontend (LinkedTasks.vue): banner reuses the existing list response (which already carries each blocker's statusType). A blocker counts only while open (statusType !== 'close') and not deleted, so the warning clears automatically when the blocker closes.

2 · Epics upgrade (AHE-3771)

Turns the thin v1 into a usable progress layer.

  • Schema (epics): startDate, dueDate, ownerUserId, priority.
  • Rules: EPIC_STATUSES adds in_progress; EPIC_PRIORITIES; parseEpicDates (validates + enforces start ≤ due); validateEpicInput validates priority.
  • Controller: create + update accept/persist + validate the new fields.
  • Frontend (EpicsPanel.vue): priority badge, owner, dates, a "% · done/total" label, and an inline status select — on top of the existing progress bar.

Tests

  • +16 unit assertions (selectOpenBlockers/isClosedStatusType, parseEpicDates, priority/status). Full suite: 225 pass.
  • Manual test-cases: .claude/test-cases/BlockedTaskWarning.md, .claude/test-cases/EpicEnhancements.md.

Notes

  • No new dependencies. Restart the backend to pick up the schema/route changes.
  • A dedicated epic-grouped project view (in the +View switcher) is a noted follow-up; this delivers the progress layer in the Epics panel.

🤖 Generated with Claude Code

…rogress

Relations: a task blocked_by an open task now shows a "Blocked by N open
task(s)" alert in its Linked Tasks panel — making AlianHub's blocked-task
alert real. Adds getOpenBlockers + the pure selectOpenBlockers helper and an
`openBlockers` action on POST /api/v2/tasks/relations. Additive: the central
status-write path is untouched; the panel reuses data it already loads.

Epics: schema gains startDate, dueDate, ownerUserId, priority; status adds
in_progress; create/update accept + validate the new fields (parseEpicDates,
EPIC_PRIORITIES). EpicsPanel shows a priority badge, owner, dates, a % label
and an inline status select on top of the existing progress bar.

Tests: +16 (selectOpenBlockers/isClosedStatusType, parseEpicDates, priority
& status) — full suite 225 pass. Test-cases added under .claude/test-cases/.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jun 19, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 9eadac7b-7b77-4f4b-8390-93c92b273855

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/relations-epics-enhancements

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@parth0025 parth0025 merged commit b06ee2a into staging Jun 19, 2026
4 checks passed
@parth0025 parth0025 deleted the feat/relations-epics-enhancements branch June 19, 2026 11:51
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.

1 participant