Skip to content

[PM-40510] feat: rename vault-filter query param to sharedFolderId#21968

Draft
jaasen-livefront wants to merge 1 commit into
mainfrom
vault/pm-40510-shared-folder-query-param
Draft

[PM-40510] feat: rename vault-filter query param to sharedFolderId#21968
jaasen-livefront wants to merge 1 commit into
mainfrom
vault/pm-40510-shared-folder-query-param

Conversation

@jaasen-livefront

Copy link
Copy Markdown
Collaborator

🎟️ Tracking

https://bitwarden.atlassian.net/browse/PM-40510

📔 Objective

Behind the vfo1-foundation feature flag (off by default), rename the vault-filter query param from collectionId to sharedFolderId in the shared RoutedVaultFilterService:

  • Reader (filter$) accepts both sharedFolderId and legacy collectionId (preferring the new one), so existing/bookmarked ?collectionId= links keep working during the transition. The RoutedVaultFilterModel.collectionId field name is unchanged — only the URL param is renamed.
  • createRoute() writes sharedFolderId and nulls collectionId when the flag is on; writes collectionId and nulls sharedFolderId when off (queryParamsHandling: "merge" clears the stale param).

Split from PM-40252 (terminology-only) — it is the only routing/behavioral change and is coupled to the per-client reader/writer migrations. App-level direct query-param readers/writers (apps/web vault.component, vault-collection-actions.service; apps/browser new-item-page) are migrated in the per-client tickets; until then the flag stays off, so no broken window.

…erId

Behind the vfo1-foundation flag, RoutedVaultFilterService now reads both
sharedFolderId and legacy collectionId query params (preferring the new one)
and, in createRoute(), writes sharedFolderId while nulling collectionId when
the flag is on (reverse when off). Split from PM-40252 (terminology-only).
@jaasen-livefront jaasen-livefront added the ai-review Request a Claude code review label Jul 20, 2026
@github-actions

github-actions Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

🤖 Bitwarden Claude Code Review

Overall Assessment: APPROVE

Reviewed the rename of the vault-filter query param from collectionId to sharedFolderId in RoutedVaultFilterService, gated behind the vfo1-foundation feature flag. The reader accepts both param names (preferring the new one) for backward compatibility, and createRoute() writes the correct param and clears the stale one via queryParamsHandling: "merge". Verified the flag defaults to FALSE, DI resolution of the root-provided Vfo1TerminologyService, and that new unit tests cover both flag states, param precedence, and merge behavior.

Code Review Details

No findings.

The one behavioral nuance — app-level direct query-param writers still write collectionId and do not clear sharedFolderId when the flag is on — is explicitly documented in the PR description as deferred to per-client migration tickets while the flag stays off. This is intentional phasing, not a defect.

@codecov

codecov Bot commented Jul 20, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 66.66667% with 2 lines in your changes missing coverage. Please review.
✅ Project coverage is 52.11%. Comparing base (b13d842) to head (52fa9d2).
⚠️ Report is 35 commits behind head on main.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
.../vault/src/services/routed-vault-filter.service.ts 66.66% 0 Missing and 2 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main   #21968      +/-   ##
==========================================
+ Coverage   52.03%   52.11%   +0.07%     
==========================================
  Files        4098     4114      +16     
  Lines      129733   130240     +507     
  Branches    20349    20447      +98     
==========================================
+ Hits        67507    67873     +366     
- Misses      57237    57349     +112     
- Partials     4989     5018      +29     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@jaasen-livefront jaasen-livefront added the t:feature Change Type - Feature Development label Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai-review Request a Claude code review t:feature Change Type - Feature Development

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant