mirror of
https://github.com/twentyhq/twenty.git
synced 2026-06-11 17:37:18 -04:00
## Summary
- Adds `@argos-ci/storybook` vitest plugin to `twenty-ui` for automatic
screenshot capture during vitest storybook tests
- Uploads captured screenshots (PNG, ~5MB) as a CI artifact instead of
passing the full storybook build
- Updates the visual regression dispatch workflow to pass
`mode=argos-screenshots` to ci-privileged, which then uploads
screenshots to Argos via CLI
This replaces the 10-minute Storybook screenshot capture with a ~30s
vitest browser-mode approach. The heavy screenshot work happens on free
public runners, while ci-privileged only handles the Argos API upload
(keeping secrets private).
## Architecture
```
twenty (public, free runners) ci-privileged (private)
───────────────────────────── ────────────────────────
1. Build storybook-static 4. Download screenshots artifact
2. Vitest captures screenshots 5. `argos upload` → Argos API
3. Upload screenshots artifact 6. Poll for results
7. Post PR comment
```
## Test plan
- [x] Verified locally: vitest captures 225 screenshots in ~28s
- [x] Verified `@argos-ci/cli upload` successfully creates Argos build
from captured screenshots
- [x] Argos diffs computed and results visible via API
- [ ] CI runs end-to-end on a PR
60 lines
723 B
Plaintext
60 lines
723 B
Plaintext
**/**/.env
|
|
.DS_Store
|
|
/.idea
|
|
.claude/
|
|
.cursor/debug-*.log
|
|
**/**/node_modules/
|
|
.cache
|
|
|
|
# yarn is the recommended package manager across the project
|
|
**/**/.package-lock.json
|
|
|
|
.nx/installation
|
|
.nx/cache
|
|
.nx/workspace-data
|
|
.nx/nxw.js
|
|
|
|
.pnp.*
|
|
.yarn/*
|
|
!.yarn/patches
|
|
!.yarn/plugins
|
|
!.yarn/releases
|
|
!.yarn/sdks
|
|
!.yarn/versions
|
|
.vercel
|
|
.swc
|
|
|
|
**/**/logs/**
|
|
|
|
coverage
|
|
dist
|
|
storybook-static
|
|
*.tsbuildinfo
|
|
.oxlintcache
|
|
.nyc_output
|
|
test-results/
|
|
dump.rdb
|
|
.tinyb
|
|
|
|
.notes
|
|
/data/
|
|
/.devenv/
|
|
/.direnv/
|
|
/.pre-commit-config.yaml
|
|
/.envrc
|
|
/devenv.nix
|
|
/flake.lock
|
|
/flake.nix
|
|
|
|
.crowdin.yml
|
|
.react-email/
|
|
|
|
mcp.json
|
|
/.junie/
|
|
/.agents/plugins/marketplace.json
|
|
TRANSLATION_QA_REPORT.md
|
|
.playwright-mcp/
|
|
.playwright-cli/
|
|
output/playwright/
|
|
screenshots/
|