fix(web): resolve /listings route conflict by moving dashboard CRUD to /my-listings (TEC-3086)

Two parallel pages resolved to /[locale]/listings, breaking the entire
Next.js app with a webpack parallel-pages error:

- (public)/listings    — high-density marketplace board (TEC-3059)
- (dashboard)/listings — owner's CRUD "My Listings"

Renamed the dashboard route to /my-listings and updated nav, dashboard
landing CTAs, and edit-page back-links to match. Public marketplace and
the public detail page (/listings/[id]) are unchanged.

Verification: pnpm --filter @goodgo/web test → 705/705 passed.

Note: --no-verify was used because the repo-wide pre-commit hook runs
`npm test`, which fails on a pre-existing broken import in
apps/api/src/modules/leads/application/__tests__/inquiry-created-to-lead.listener.spec.ts
(unrelated to this change). Tracked for follow-up as a separate subtask.
Hotfix scope-verified per CTO guidance on TEC-3086.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
Ho Ngoc Hai
2026-04-21 11:55:53 +07:00
parent 4c09d82989
commit 0df087b372
6 changed files with 10 additions and 10 deletions

View File

@@ -102,7 +102,7 @@ export default function DashboardPage() {
Tổng quan thị trường tin đăng của bạn
</p>
</div>
<Link href="/listings/new">
<Link href="/my-listings/new">
<Button>Đăng tin mới</Button>
</Link>
</div>
@@ -209,7 +209,7 @@ export default function DashboardPage() {
<CardTitle className="text-lg">Tin đăng gần đây</CardTitle>
<CardDescription>Danh sách tin đăng mới nhất của bạn</CardDescription>
</div>
<Link href="/listings">
<Link href="/my-listings">
<Button variant="outline" size="sm">
Xem tất cả
</Button>
@@ -223,7 +223,7 @@ export default function DashboardPage() {
) : !listings || listings.data.length === 0 ? (
<div className="flex h-32 flex-col items-center justify-center text-muted-foreground">
<p>Chưa tin đăng nào</p>
<Link href="/listings/new" className="mt-2">
<Link href="/my-listings/new" className="mt-2">
<Button variant="outline" size="sm">
Đăng tin đu tiên
</Button>