fix: annotation e2e test instability by moving setup to project#9062
fix: annotation e2e test instability by moving setup to project#9062AdityaHegde merged 4 commits intomainfrom
Conversation
There was a problem hiding this comment.
This looks good.
A few things to clean up before merge:
web-common/tests/projects/AdBidsAnnotations/ — committed tmp/ directory
The tmp/default/duckdb/*/meta.json files are runtime-generated cache artifacts (version timestamps, embedded SQL). Every other test project gitignores tmp/. These will be regenerated when the runtime starts on the copied project, so they're unnecessary — and if the model SQL ever drifts from the cached SQL in meta.json, you get silent staleness. Please remove tmp/ from the commit.
web-common/tests/projects/AdBidsAnnotations/ — missing .gitignore
This is how tmp/ got committed in the first place. Add a .gitignore matching AdBids/.gitignore:
.DS_Store
# Rill
.env
tmp
default
meta.db
web-common/tests/projects/AdBidsAnnotations/data/AdBids.csv.gz — consider a symlink
This is byte-for-byte identical to AdBids/data/AdBids.csv.gz (1.3 MB). Since cpSync with recursive: true follows symlinks, a relative symlink (../AdBids/data/AdBids.csv.gz) would avoid duplicating the blob in git history. Not a blocker, but worth the one-liner.
web-local/tests/explores/annotations.spec.ts:148 — stale comment
// Extra time for installAnnotations (file writes + reconciliation) — installAnnotations no longer exists.
Note on naming: AdBidsAnnotations is consistent with the existing PascalCase majority (AdBids, AdImpressions), so no need to change it here. For future test projects, kebab-case (e.g., ad-bids-annotations) would be a more natural directory naming convention. Worth standardizing in a separate pass if the team agrees.
Developed in collaboration with Claude Code
e92b12f to
f21be29
Compare
I was seeing blank page without any error in logs. Not a 100% sure if this is fixes the issue, but moving the setup of annotations to the project works well and avoids waiting for reconciliation multiple times.
Checklist: