chore: restore v4 generated artifact checks
Closed
SH
3mo ago+12+12+01234567890123456789-27-27-01234567890123456789
Summary
- replace the remaining
z.object(...).strict()protocol schemas with the equivalentz.strictObject(...)form - regenerate the Go protocol models to remove an unreachable generated catalog field
- refresh the deterministic Stagehand extension archive embedded by the Go SDK
These files drifted out of sync while the v4 SDK stack landed, causing unrelated pull requests against v4-spike to fail the TypeScript, Python build, and Go generation checks.
E2E Test Matrix
| Command / flow | Observed output | Confidence / sufficiency |
|---|---|---|
corepack pnpm build && git diff --exit-code -- packages/protocol/stagehand.v4.json && corepack pnpm check && corepack pnpm exec vitest run | Builds and checks passed; generated protocol JSON remained unchanged; 119 test files passed, 1 skipped, with 1,093 tests passed. | Covers the complete TypeScript CI path that previously rejected the noncanonical strict schemas. |
uv --directory packages/sdk-python run --locked python scripts/generate.py --check plus Ruff, ty, and pytest | Generation, formatting, lint, and type checks passed; 196 tests passed. | Confirms the protocol cleanup does not make the generated Python SDK stale or invalid. |
Build the Python wheel, install it into an isolated environment, and run packages/sdk-python/scripts/smoke.py with local Chrome | The installed wheel initialized Stagehand, navigated a real headless Chrome page, verified its title, and closed cleanly. | Exercises the packaged extension through a real browser, beyond static generation checks. |
| Go generation check, gofmt, vet, example compilation, package tests with local Chrome, generator tests, and build | All commands passed; the Stagehand package and extension packages passed their test suites. | Covers the complete Go CI path and proves the regenerated model and embedded extension compile and run together. |
Rebuild the server extension and rerun go generate ./... twice | The generated Go model and embedded extension SHA-256 hashes were identical across runs, with no additional diff. | Confirms the checked-in binary artifact is deterministic rather than a one-off local build. |
Tracking
Summary by cubic
Restores v4-spike generated artifacts and strict schemas to bring CI back to green. Addresses STG-2724 by syncing TypeScript, Python, and Go SDK outputs and making the embedded Stagehand extension deterministic.
- Refactors
- Replace remaining
z.object(...).strict()withz.strictObject(...)inpackages/protocol/schemas.ts. - Regenerate Go protocol models to drop unreachable
__schema8fromgeneratedModelCatalog. - Refresh the embedded Stagehand extension archive at
packages/sdk-go/internal/extensionassets/stagehand-extension.zipto the deterministic build.
- Replace remaining