Skip to content

[CHORE] Drop legacy /index/* redirects (post-0.6.1) #280

@pjmalandrino

Description

@pjmalandrino

Context

#225 moved Stores routes from `/index/` to `/ingest/` and added redirect routes so existing bookmarks keep working. The sidebar's `matchPrefixes` was extended to `['/ingest', '/index']` so the nav item stays active during a back-compat redirect.

The redirect is transitional — it should not survive forever:

```ts
// frontend/src/app/router/routes.ts
{ path: '/index', redirect: '/ingest' },
{ path: '/index/new', redirect: '/ingest/new' },
{ path: '/index/:store', redirect: (to) => `/ingest/${to.params.store}` },
{ path: '/index/:store/edit', redirect: (to) => `/ingest/${to.params.store}/edit` },
{ path: '/index/:store/query', redirect: (to) => `/ingest/${to.params.store}/query` },
```

The current commit says "until all caches are warm", with no explicit drop date. This issue tracks the cleanup so the redirects don't linger past 0.7.0.

Scope

  • Remove the 5 `/index/*` redirect routes from `frontend/src/app/router/routes.ts`.
  • Remove `'/index'` from `matchPrefixes` in `frontend/src/shared/ui/AppSidebar.vue`.
  • Update the router tests in `frontend/src/app/router/router.test.ts` to assert the legacy paths now resolve to the 404 / Stores-list catch-all (whichever is current behaviour).
  • Verify no remaining references to `/index` strings in the codebase (`rg '/index'`).

Out of scope

  • Backend changes — the redirects are purely client-side.
  • Renaming the underlying `stores` SQLite table (it's already correctly named).

Acceptance criteria

  • Visiting `/index` (and the four sub-paths) no longer hits the redirect — either 404 page or the catch-all is fine, but no `/ingest` rewrite happens.
  • Sidebar's `matchPrefixes` contains only `['/ingest']`.
  • Router test updated (the legacy paths are explicitly NOT expected to map to a stores route).
  • Validation pipeline green.

When to ship

Target: 0.7.0 (the redesign milestone). 0.6.1 already shipped the `/ingest` paths, so anyone hitting a stale bookmark in the 0.7.0 window has had a full minor-version cycle of grace.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    choreMechanical work: rename, refactor, migration, dependency bumpsfrontendFrontend (Vue/TypeScript)

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions