IW-347: Dashboard repo link + always-visible PR link with stale badge #378
No reviewers
Labels
No labels
bug
contract
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
iterative-works/iw-cli!378
Loading…
Reference in a new issue
No description provided.
Delete branch "IW-347"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Closes IW-347. Worktree cards now surface both key links — the git repository web page and the pull request — directly on the card, without expanding or navigating to details.
repositoryconfig (GitHub/GitLab-aware viaRepoUrlBuilder).· staleindicator.youtrackBaseUrl→trackerBaseUrlsweep across domain, CLI, help text, and docs. The HOCON file keytracker.baseUrlis unchanged; the short-form CLI alias for the old name was removed (no backward-compat alias).Phase 1 was a discovery phase (no shipped code) — deliverables are
cache-investigation.mdand a draft follow-up issuecache-rework-issue-draft.md.Changes
Domain:
RepoUrlBuilder(new, scheme allow-list defence-in-depth),Configrename + parse-time validation ofrepositorysegments andtrackerBaseUrlscheme,TrackerUrlBuilder.Application/Infra:
PrDisplayDataview model (replaces inlineCachedPR.isValidchecks), staleness mapping inWorktreeListSync, per-worktree repo-URL lookup inCaskServer,WorktreeCardService.Presentation:
WorktreeCardRendererrepo-link section + stale-PR badge; frontend.repo-link/.repo-buttonCSS.Testing
RepoUrlBuilderTest(12 cases), extendedConfigTest(unsafe scheme / repository rejection), rename updates acrossConfigFileTest,TrackerUrlBuilderTest,TestFixtures.dashboard.itest.testForked192/192 green.config.batsrename test updated.Code review
Two-iteration review (6 parallel skills + focused security re-review). Two critical security issues caught and fixed:
javascript:URL injection viatrackerBaseUrl, and path-traversal/open-redirect via weakrepositoryvalidation. A functional gap (repo link dropped on HTMX OOB swaps) was also fixed. Details inproject-management/issues/IW-347/review-phase-02-20260430-142658.md.Release notes
See
project-management/issues/IW-347/release-notes.md(Czech, user-facing).🤖 Generated with Claude Code