Skip to content

Seeder simplifying and extending seeds#7065

Merged
theMickster merged 3 commits intomainfrom
seeder/simplifying-and-extending-seeds
Feb 24, 2026
Merged

Seeder simplifying and extending seeds#7065
theMickster merged 3 commits intomainfrom
seeder/simplifying-and-extending-seeds

Conversation

@theMickster
Copy link
Contributor

@theMickster theMickster commented Feb 24, 2026

🎟️ Tracking

PM-30999

📔 Objective

Before we embark on adding more realistic presets, we needed to simplify a number of key areas.

  1. Templates - these were over-engineering at its finest. A better README.md is all our teams need
  2. We don't need organizations named after the types of testing we are doing; keep them simple and human readable
  3. We don't need so many closely related rosters for QA tests; those are easily collapsed into a single roster named starter-team that can be reused by any automated test that needs a straight-forward setup.
  4. We need the start of a much more complex organization; enter Zero Knowledge Labs from stage left.
  5. Family plan support added; Adams Family
  6. We really must use a well-know standard fake domain ending in .example to ensure no emails ever sneak out. Thank you to Ned for pointing this out. We will work to implement this into the C# next (this PR is big enough)

Screenshots

Sometimes easier to visualize structural changes visually

Current Seed Folder Orgs Presets Rosters
image image image image
Testing Commands
# Verify presets and fixtures are discoverable
dotnet run -- seed --list

# Test the new families preset
dotnet run -- seed --preset families-basic --mangle

# Test presets that changed fixture references
dotnet run -- seed --preset enterprise-basic --mangle
dotnet run -- seed --preset collection-permissions-enterprise --mangle
dotnet run -- seed --preset policy-enterprise --mangle
dotnet run -- seed --preset sso-enterprise --mangle
dotnet run -- seed --preset tde-enterprise --mangle

# Test the inline-org preset with fixed domain
dotnet run -- seed --preset large-enterprise --mangle

@theMickster theMickster added the ai-review Request a Claude code review label Feb 24, 2026
@claude
Copy link
Contributor

claude bot commented Feb 24, 2026

Claude finished @theMickster's task in 4m 49s —— View job


Code Review: Seeder simplifying and extending seeds

Verdict: Approved -- clean PR, no issues found.

Summary

This PR refactors the Bitwarden Seeder's JSON fixture data and documentation. All changes are confined to util/Seeder/Seeds/ and util/SeederUtility/README.md -- no C# code, no API changes, no database changes.

What Changed

Area Details
Domain migration All fixture domains migrated from .com, .test, .dev, .co to .example (RFC 2606). This is a security improvement -- .example is guaranteed unresolvable, preventing accidental email delivery from QA pipelines.
Org renaming QA-specific names (qa-enterprise, qa-tde-org, etc.) replaced with human-readable names (redwood-analytics, obsidian-labs, etc.)
Roster consolidation Three similar rosters (sso-basic, tde-basic, policy-org) consolidated into a single reusable starter-team roster (10 users covering owner, admin, custom, and user roles)
New families preset families-basic preset with adams-family org (6 seats, families-annually plan), family roster (6 users, 3 groups, 5 collections), plus 150 org ciphers and 65 personal ciphers per user
New complex org zero-knowledge-labs roster modeling a realistic multi-department company (org + roster added, preset to follow in a future PR)
Wonka preset merge wonka-teams-personal-vaults absorbed into wonka-teams-small (now includes folders, personal ciphers, and increased counts)
Template removal Template files replaced by improved inline documentation in README.md
README improvements Seeds README.md rewritten with writing guides, naming conventions, and updated QA migration matrix. SeederUtility README.md domains updated to .example.

Verification

  • All preset fixture references (organization, roster, ciphers) resolve to existing files
  • Seat counts in presets match user counts in referenced rosters (e.g., families-basic has 6 seats, family roster has 6 users)
  • No stale references to deleted fixtures (qa-enterprise, sso-basic, tde-basic, policy-org, wonka-teams-personal-vaults) remain anywhere in the codebase
  • All organization domains across all fixture files use .example TLD
  • templates/ directory fully removed with no remaining references
  • QA migration matrix in README updated to reflect new fixture names and includes the new families-basic row

@github-actions
Copy link
Contributor

github-actions bot commented Feb 24, 2026

Logo
Checkmarx One – Scan Summary & Details2103296d-1d43-4330-ad39-bcbf1e9dd087

Great job! No new security vulnerabilities introduced in this pull request

@codecov
Copy link

codecov bot commented Feb 24, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 56.74%. Comparing base (39f5197) to head (1b48a1d).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #7065   +/-   ##
=======================================
  Coverage   56.74%   56.74%           
=======================================
  Files        2013     2013           
  Lines       88129    88129           
  Branches     7848     7848           
=======================================
  Hits        50011    50011           
  Misses      36295    36295           
  Partials     1823     1823           

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

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@sonarqubecloud
Copy link

@theMickster theMickster enabled auto-merge (squash) February 24, 2026 17:27
@theMickster theMickster merged commit 0d8b920 into main Feb 24, 2026
43 checks passed
@theMickster theMickster deleted the seeder/simplifying-and-extending-seeds branch February 24, 2026 17:28
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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants