Repository navigation
Conversation
Up to standards ✅🟢 Issues
|
| Metric | Results |
|---|---|
| Complexity | 0 |
NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (1)
Included review availability: This review used your included allowance. Your plan provides up to 2 included reviews per hour; 1 remain after this review. 📝 WalkthroughWalkthroughcreateRouter now derives the Vue history base from the current pathname prefix through this.pageName when the pathname contains that segment. Otherwise, it uses Frappe’s generated India Compliance Account route. Priority: ➖ Normal Merge Risk: ⚪ Minimal · up to No specific merge-blocking issue is established by the supplied evidence. The change derives the history base from the current page path and retains its fallback. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
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. Comment |
|
| : pathSegments.slice(0, pageIndex + 1).join("/"); | ||
|
|
||
| const history = createWebHistory(base); |
There was a problem hiding this comment.
If the account page first opens in GST India and is later reopened in another eligible shell, this history base still points to GST India. Frappe reuses the page and fires show again, but the show handler replaces only the child route on the retained Vue router. Navigating the account page then changes the address back to GST India instead of preserving the selected shell. Update the history base when the page opens under a different shell before merging.
Knowledge Base Used: Compliance user interface
Artifacts
Executable account-shell browser reproduction script
- This authored Playwright script loads the checked-out page class and real Vue Router, then simulates a cached-page shell switch; it provides the exact executed reproduction.
Observed account-shell browser run output
- The captured command output records both URLs, router bases, child routes, the passing assertion, and exit code 0; it confirms restoration of the old shell.
- Chromium records the initial page opening at the GST India URL before the simulated shell switch; it establishes the router’s original base.
Poster frame for first opening in the GST India shell
- The browser captured a poster frame during the initial opening; it accompanies the baseline recording.
- Chromium records the reused page after its child route is replaced under a simulated new shell; the executed output confirms the URL returns to GST India.
Poster frame after the cached-page shell switch
- The browser captured a poster frame after the simulated shell switch and route replacement; it accompanies the defect recording.
Problem
Opening India Compliance Account shows "Page Not Found", and the URL grows on every refresh:
/desk/india-compliance-account/desk/gst-india/india-compliance-account/...
Cause
Frappe now puts the shell in page URLs (
/desk/gst-india/india-compliance-account).The page's Vue router still used a fixed base of
/desk/india-compliance-account.The URL no longer started with that base, so Vue treated the whole URL as its own
sub-path and added its base in front again.
Fix
Read the router base from the URL on screen: everything up to and including
india-compliance-account. If the page name isn't in the URL, fall back to the old base.