fix(web): activate existing workspace tabs from links #761

Merged
simon merged 1 commit from fix/reopen-existing-tabs into dev 2026-06-23 14:20:27 +00:00
Owner
## Summary\n- route same-origin links clicked inside workspace panels through the workspace tab activator when the destination tab already exists\n- preserve normal browser/Next navigation for new routes, modified clicks, external links, downloads, and hash-only same-page links\n- add workspace tab regression coverage plus a dashboard E2E scenario for the reported Active alerts flow\n\n## Validation\n- pnpm install --frozen-lockfile\n- node --experimental-strip-types --test apps/web/lib/workspace-tabs/state.test.mjs\n- pnpm --dir apps/web type-check\n- pnpm --dir apps/web lint (passes with existing warnings outside this change)\n- pnpm --dir apps/web test:unit -- lib/workspace-tabs/state.test.mjs\n- BETTER_AUTH_URL=http://localhost:3000 DATABASE_URL=postgresql://ctops:ctops@localhost:5432/ctops pnpm --dir apps/web build\n\n## E2E note\n- pnpm --dir apps/web test:e2e tests/e2e/dashboard/workspace-tabs.spec.ts is currently blocked before app render by issue #760: Webpack tries to parse the native cpu-features binding from the existing ssh2/host-editor import path.
fix(web): activate existing workspace tabs from links
All checks were successful
Conventional PR title / Conventional PR title (pull_request) Successful in 0s
PR Checks (Docker images) / Ansible API contract (pull_request) Successful in 6s
SAST / Detect security scan scope (pull_request) Successful in 8s
PR Checks (Docker images) / Detect Docker image changes (pull_request) Successful in 8s
SAST / gosec (agent) (pull_request) Has been skipped
PR Checks (Docker images) / Ansible API Docker image (pull_request) Has been skipped
PR Checks (Docker images) / Ingest Docker image (pull_request) Has been skipped
SAST / gosec (ingest) (pull_request) Has been skipped
SAST / trivy (filesystem) (pull_request) Has been skipped
Secret Scan / gitleaks (pull_request) Successful in 27s
SAST / trivy (config / IaC) (pull_request) Has been skipped
SAST / crypto-lint (no weak hashes / ciphers) (pull_request) Successful in 1m7s
SAST / semgrep (pull_request) Successful in 1m11s
PR Checks (Web) / Web (lint / type-check / build) (pull_request) Successful in 2m24s
PR Checks (Docker images) / Web Docker image (pull_request) Successful in 12m39s
ebd89e9693
simon deleted branch fix/reopen-existing-tabs 2026-06-23 14:20:27 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
carrtech/ct-ops!761
No description provided.