Skip to content

PM-34033 - Add individual user seeding to preset pipeline#7304

Open
theMickster wants to merge 4 commits intomainfrom
server-PM-34033/individual-user-seeding
Open

PM-34033 - Add individual user seeding to preset pipeline#7304
theMickster wants to merge 4 commits intomainfrom
server-PM-34033/individual-user-seeding

Conversation

@theMickster
Copy link
Contributor

@theMickster theMickster commented Mar 25, 2026

🎟️ Tracking

PM-34033

📔 Objective

Adds individual user seeding to the preset pipeline — standalone user accounts with no organization, for testing personal vault features (folders, ciphers, favorites) without org overhead. Fixture ciphers and generated ciphers are mutually exclusive (if/else if), matching the existing org preset pattern. Backward compatible — no changes to existing org preset behavior.

🧪 Testing

Expand for testing instructions

Step 1: Seed individual presets

From util/SeederUtility/:

# Empty accounts (no vault data)
dotnet run -- seed --preset individual.free-empty --mangle
dotnet run -- seed --preset individual.premium-empty --mangle

# Accounts with fixture ciphers, named folders, and assignments
dotnet run -- seed --preset individual.free-basic --mangle
dotnet run -- seed --preset individual.premium-basic --mangle

Step 2: Verify login

Login emails come from the preset's user.email field (not owner@<domain>):

Preset Login Email Password Premium
free-empty freeuser@individual.example asdfasdfasdf No
premium-empty premuser@individual.example asdfasdfasdf Yes
free-basic freeuser@individual.example asdfasdfasdf No
premium-basic premuser@individual.example asdfasdfasdf Yes

Step 3: Validate vault data (free-basic)

Log in as freeuser@individual.example and verify:

  • 3 folders: Development, Finance, Social Media
  • 15 ciphers across Login, SecureNote, Card, Identity, SSHKey types
  • 7 ciphers assigned to folders (3 Development, 2 Finance, 2 Social Media)
  • 6 ciphers marked as favorites

Step 4: Validate vault data (premium-basic)

Log in as premuser@individual.example and verify:

  • 3 folders: Development, Finance, Work
  • 15 ciphers (includes TOTP-enabled logins)
  • 9 ciphers assigned to folders (3 Development, 3 Finance, 3 Work)
  • 7 ciphers marked as favorites

Step 5: Verify backward compatibility

Seed existing org presets and confirm identical behavior:

dotnet run -- seed --preset qa.enterprise-basic --mangle
dotnet run -- seed --preset scale.sm-balanced-planet-express --mangle

@theMickster theMickster added the ai-review-vnext Request a Claude code review using the vNext workflow label Mar 25, 2026
@github-actions
Copy link
Contributor

github-actions bot commented Mar 25, 2026

Overall Assessment: APPROVE

Adds individual user seeding to the preset pipeline, enabling standalone personal vault accounts without organization overhead. The implementation cleanly extends the existing pipeline architecture with CreateIndividualUserStep, CreateNamedFoldersStep, and IndividualUserRecipe, while PresetValidator enforces mutual exclusivity between organization and individual presets. Two preset fixtures are provided for free and premium empty accounts, with cipher, folder, and favorite assignment support for richer presets. Backward compatibility with existing org presets is maintained throughout.

Code Review Details

No findings.

@github-actions
Copy link
Contributor

github-actions bot commented Mar 25, 2026

Logo
Checkmarx One – Scan Summary & Detailsfe1da32c-6bf5-4ae3-91b4-61e3112e0b4a

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

@theMickster theMickster marked this pull request as ready for review March 25, 2026 14:19
@codecov
Copy link

codecov bot commented Mar 25, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 57.91%. Comparing base (3a9756a) to head (faa4e45).
⚠️ Report is 4 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #7304      +/-   ##
==========================================
+ Coverage   57.89%   57.91%   +0.01%     
==========================================
  Files        2044     2044              
  Lines       90068    90130      +62     
  Branches     8011     8020       +9     
==========================================
+ Hits        52148    52197      +49     
- Misses      36057    36066       +9     
- Partials     1863     1867       +4     

☔ 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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai-review-vnext Request a Claude code review using the vNext workflow

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant