Skip to content

Dev To Stage - #188

Merged
shweta2101 merged 7 commits into
stagingfrom
develop
Nov 9, 2026
Merged

shweta2101 merged 7 commits into
stagingfrom
develop

Conversation

@shweta2101

Copy link
Copy Markdown
Contributor

DevBoard Task

https://dev.azure.com/TDEI-UW/TDEI/_workitems/edit/4639

Changes Implemented

  • Added support for reading street-level image URLs from both ext:street_images and ext:kartaview_url tags on reviewed map elements.
  • Updated image URL resolution so self-hosted Panoramax URLs (and other standard image URLs) are loaded directly as-is, while retaining CDN proxy conversion only for legacy KartaView/OpenStreetCam storage URLs.
  • Replaced KartaView-specific naming and UI caption text (KartaView → Street Image) with generic street-image terminology.
  • Added unit tests covering ext:street_images, ext:kartaview_url, Panoramax URLs, KartaView CDN URLs, and legacy KartaView/OpenStreetCam URLs.

Impacted Areas for Testing

  • Review Queue - Panoramax Image Display: Select a changeset in the workspace review page and click a map feature containing an ext:street_images tag (e.g., a Panoramax /api/pictures/.../hd.jpg URL). Verify the image thumbnail loads in the bottom-left preview panel on desktop and via the "View photo submission" button on smaller screens.
  • Review Queue - KartaView Backward Compatibility: Click a map feature containing an ext:kartaview_url tag (both cdn.kartaview.org links and legacy kartaview.org / openstreetcam.org storage links) and verify the image still displays as expected.
  • Image Viewer & External Link: Click the thumbnail (or "View photo submission" button) to verify the full-screen photo viewer modal opens, and click the Street Image link in the thumbnail caption to confirm it opens the image URL in a new browser tab.
  • Elements Without Photos: Click a map feature that has neither ext:street_images nor ext:kartaview_url and confirm no image panel or photo button is shown.

Screenshots

Screenshot 2026-11-04 at 5 59 15 PM Screenshot 2026-11-05 at 11 52 43 AM

DevBoard Task

https://dev.azure.com/TDEI-UW/TDEI/_workitems/edit/4601

Changes Implemented

  • Persist the selected project group and last selected workspace per group in localStorage (per user).
  • Stop previous workspace selections from overriding the active project group on return to the dashboard.
  • Clear stale ?workspace= URL query parameters when switching to an empty project group.
  • Fall back to the first available project group if access to the saved group is removed.

Impacted Areas for Testing

  • Select an empty project group, navigate away, and return to the dashboard to confirm the empty project group stays selected.
  • Select a non-default workspace in one project group, switch to another group and back, and confirm that workspace stays selected.
  • Open the dashboard in a new tab or reload to confirm the last selected project group persists.
  • Open a direct /dashboard?workspace=<id> link to confirm it still opens that workspace and its project group.
Screenshot 2026-11-05 at 5 52 17 PM Screenshot 2026-11-05 at 5 52 26 PM Screenshot 2026-11-05 at 5 52 34 PM Screenshot 2026-11-05 at 5 52 45 PM Screenshot 2026-11-05 at 5 52 59 PM Screenshot 2026-11-05 at 5 53 46 PM Screenshot 2026-11-05 at 5 53 57 PM

DevBoard Task

https://dev.azure.com/TDEI-UW/TDEI/_workitems/edit/4400

Changes Implemented

  • Replace "No one has a TDEI POC role in this project group." with "You do not have permission to view the member list." on the Members tab.
  • Show "You do not have permission to view the member list." in the Data Generators and Workspace Members sections when a non-POC user is denied access (403).

Impacted Areas for Testing

  • View Workspace Settings -> Members as a non-POC user and confirm all three sections show "You do not have permission to view the member list."
  • View Workspace Settings -> Members as a POC user and confirm member lists and empty role messages still display normally.
Screenshot 2026-11-05 at 6 11 46 PM

shweta2101 and others added 7 commits November 5, 2026 11:11
Replace the old kartaview util with a new util/street-images.ts that extracts ext:street_images or ext:kartaview_url tags and resolves legacy KartaView/OpenStreetCam storage URLs into the CDN-proxied form. Update components and pages: rename UI label from "KartaView" to "Street Image" and switch imports/logic in review.vue to use streetImageUrl and resolveStreetImageUrl. Remove util/kartaview.ts and add unit tests (test/unit/util/street-images.test.ts) covering extraction and URL resolution behavior.
Trim trailing blank lines at end of test/unit/util/street-images.test.ts and util/street-images.ts for code cleanliness. No functional changes are made.
## DevBoard Task
https://dev.azure.com/TDEI-UW/TDEI/_workitems/edit/4639

### Changes Implemented
- Added support for reading street-level image URLs from both
`ext:street_images` and `ext:kartaview_url` tags on reviewed map
elements.
- Updated image URL resolution so self-hosted Panoramax URLs (and other
standard image URLs) are loaded directly as-is, while retaining CDN
proxy conversion only for legacy KartaView/OpenStreetCam storage URLs.
- Replaced KartaView-specific naming and UI caption text (`KartaView` →
`Street Image`) with generic street-image terminology.
- Added unit tests covering `ext:street_images`, `ext:kartaview_url`,
Panoramax URLs, KartaView CDN URLs, and legacy KartaView/OpenStreetCam
URLs.

### Impacted Areas for Testing
- **Review Queue - Panoramax Image Display:** Select a changeset in the
workspace review page and click a map feature containing an
`ext:street_images` tag (e.g., a Panoramax `/api/pictures/.../hd.jpg`
URL). Verify the image thumbnail loads in the bottom-left preview panel
on desktop and via the **"View photo submission"** button on smaller
screens.
- **Review Queue - KartaView Backward Compatibility:** Click a map
feature containing an `ext:kartaview_url` tag (both `cdn.kartaview.org`
links and legacy `kartaview.org` / `openstreetcam.org` storage links)
and verify the image still displays as expected.
- **Image Viewer & External Link:** Click the thumbnail (or **"View
photo submission"** button) to verify the full-screen photo viewer modal
opens, and click the **Street Image** link in the thumbnail caption to
confirm it opens the image URL in a new browser tab.
- **Elements Without Photos:** Click a map feature that has neither
`ext:street_images` nor `ext:kartaview_url` and confirm no image panel
or photo button is shown.

### Screenshots
<img width="1469" height="877" alt="Screenshot 2026-11-04 at 5 59 15 PM"
src="https://github.com/user-attachments/assets/b0a4d6f4-86f5-42f1-800e-162ed3206703"
/>

<img width="1470" height="956" alt="Screenshot 2026-11-05 at 11 52
43 AM"
src="https://github.com/user-attachments/assets/84991967-c333-4dd9-8ec1-6cc72d58eb71"
/>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

<!-- coderabbit-ai-generated:v1 -->

## Summary

- Added `streetImageUrl` to read trimmed `ext:street_images` values,
with `ext:kartaview_url` as a fallback.
- Added `resolveStreetImageUrl` to preserve standard image URLs and
existing KartaView CDN URLs. It converts URLs on legacy KartaView and
OpenStreetCam hosts to CDN-proxied URLs.
- Updated the review page to use the new helpers and changed the image
link label to “Street Image.”
- Added unit tests for tag extraction and URL resolution.

## Testing

Test execution results are not available.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Add a user-scoped dashboard selection utility and integrate it into the dashboard UI. Introduce util/dashboard-selection.ts (read/write/get key/resolve) to persist the selected project group and a per-project-group remembered workspace in localStorage, with safe parsing and legacy sessionStorage handling. Update pages/dashboard.vue to load/save the selection, resolve project group IDs, remember per-group workspaces, clear stale ?workspace= query params when switching to an empty project group, and remove the old sessionStorage helper functions. Adjust workspace members messaging in pages/workspace/[id]/settings/members.vue to show an access-denied message when appropriate and update the E2E test to expect the new text. Add unit tests for dashboard selection persistence (test/unit/util/dashboard-selection.test.ts) and update the e2e spec (test/e2e/settings-members.spec.ts).
Make dashboard selection read/write resilient to storage failures: add try/catch in loadDashboardSelection and saveDashboardSelection, merge latest stored state before writing, and update save API to accept the updated project group/workspace. Add helper utilities and small JSDoc comments in util/dashboard-selection.ts, and guard against invalid workspace IDs. Update workspace members UI to show a conditional message when access is denied and adjust E2E tests to assert the new structure. Add unit tests to cover storage get/set failures and a small doc update in street-images.ts.
…d fix non-POC members tab message (#186)

## DevBoard Task
https://dev.azure.com/TDEI-UW/TDEI/_workitems/edit/4601

**Changes Implemented**
- Persist the selected project group and last selected workspace per
group in `localStorage` (per user).
- Stop previous workspace selections from overriding the active project
group on return to the dashboard.
- Clear stale `?workspace=` URL query parameters when switching to an
empty project group.
- Fall back to the first available project group if access to the saved
group is removed.

**Impacted Areas for Testing**
- Select an empty project group, navigate away, and return to the
dashboard to confirm the empty project group stays selected.
- Select a non-default workspace in one project group, switch to another
group and back, and confirm that workspace stays selected.
- Open the dashboard in a new tab or reload to confirm the last selected
project group persists.
- Open a direct `/dashboard?workspace=<id>` link to confirm it still
opens that workspace and its project group.

<img width="1470" height="956" alt="Screenshot 2026-11-05 at 5 52 17 PM"
src="https://github.com/user-attachments/assets/02fa466d-3b24-4060-b9eb-dedceabeb94c"
/>
<img width="1470" height="956" alt="Screenshot 2026-11-05 at 5 52 26 PM"
src="https://github.com/user-attachments/assets/d34533fd-c891-4ed8-85da-b03f6732ea14"
/>
<img width="1470" height="956" alt="Screenshot 2026-11-05 at 5 52 34 PM"
src="https://github.com/user-attachments/assets/7cb4de93-29c9-4d37-95f9-f1612dd758ce"
/>
<img width="1470" height="956" alt="Screenshot 2026-11-05 at 5 52 45 PM"
src="https://github.com/user-attachments/assets/96caaabd-4c21-4435-8c95-ace0b7a6ed5a"
/>
<img width="1470" height="956" alt="Screenshot 2026-11-05 at 5 52 59 PM"
src="https://github.com/user-attachments/assets/d5a7aa65-d85f-4c52-a8bd-714ee15dcbfa"
/>
<img width="1470" height="956" alt="Screenshot 2026-11-05 at 5 53 46 PM"
src="https://github.com/user-attachments/assets/01d4d8fb-c3c7-4a42-94ee-0caf2af66db5"
/>
<img width="1470" height="956" alt="Screenshot 2026-11-05 at 5 53 57 PM"
src="https://github.com/user-attachments/assets/6bb22db1-4135-4e62-bbcd-4142e065d399"
/>


---

## DevBoard Task

https://dev.azure.com/TDEI-UW/TDEI/_workitems/edit/4400

**Changes Implemented**
- Replace `"No one has a TDEI POC role in this project group."` with
`"You do not have permission to view the member list."` on the Members
tab.
- Show `"You do not have permission to view the member list."` in the
Data Generators and Workspace Members sections when a non-POC user is
denied access (403).

**Impacted Areas for Testing**
- View Workspace Settings -> Members as a non-POC user and confirm all
three sections show `"You do not have permission to view the member
list."`
- View Workspace Settings -> Members as a POC user and confirm member
lists and empty role messages still display normally.

<img width="1470" height="880" alt="Screenshot 2026-11-05 at 6 11 46 PM"
src="https://github.com/user-attachments/assets/4738ae9d-473d-4d8c-8f94-7cab244a6cb2"
/>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
<!-- coderabbit-ai-generated:v1 -->

## Summary

- Persist the selected project group and each group’s last selected
workspace in user-scoped `localStorage`. Restore saved selections when
available, fall back to the first available group or workspace, and
clear stale `?workspace=` parameters for empty groups. Use the legacy
session-stored project group as a fallback.
- Show “You do not have permission to view the member list.” in the
Project Group Admins, Data Generators, and Workspace Members sections
when access is denied. Preserve the existing empty-list messages when
access is allowed.
- Add dashboard-selection unit tests and update the unauthorized-user
E2E expectations.

## Checks

- CI, build, and test results: not available.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
@coderabbitai

coderabbitai Bot commented Nov 9, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: f502cb63-331d-4e7b-b85e-e576b507d087

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

Share

@shweta2101
shweta2101 merged commit e314990 into staging Nov 9, 2026
3 of 4 checks passed

This branch was successfully deployed

1 active deployment
dev — fb460a0c Deployed Nov 5, 2026 by github-actions[bot] via build-and-deploy #112
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants