dd64e1e34a
Root package: renamed to imhotep-monorepo, fixed broken scripts (test:unit/integration/e2e), removed inappropriate root deps, fixed build order, updated clean script CI: branch trigger main->master, npm ci->npm install, GitHub cache URL->Gitea Docs: replaced scaffolded root README with real project README, added package READMEs for imhotep/imhotep-playwright/imhotep-dsl/imhotep-core, added RELEASE.md checklist Version: all 14 packages and root aligned to 1.1.0, CHANGELOG test count fixed (1125) Metadata: 14 repository URLs github->gitea, 13 package descriptions added, imhotep-cli exports field added, SECURITY.md updated for Gitea+disclosure email Quality: noEmitOnError:true in 13 tsconfigs, collapsed duplicate interfaces in public.ts, clippedBy test->test.skip, fixed broken dynamic import in imhotep index.test.ts, 694 generated src artifacts cleaned, V8 logs removed, .gitignore updated
1.7 KiB
1.7 KiB
Build and Verification
Prerequisites
- Node.js
>= 18 - npm
>= 9(workspace support)
Install
npm install
Build All Packages
npm run build
Root build executes workspaces in dependency order. All 14 packages compile cleanly.
Type Check
npm run typecheck
Unit Tests
npm test
Runs all tests across all workspaces.
Integration Tests
npm run test:integration
Pooling, property runner, and cross-package integration tests (imhotep-playwright).
E2E (Playwright)
npm run test:e2e
Playwright config lives at packages/imhotep-fixtures/playwright.config.ts and targets compiled E2E tests under packages/imhotep-fixtures/dist/. Requires a prior build.
To run directly:
npx playwright test --config packages/imhotep-fixtures/playwright.config.ts
External Smoke Test
npm run test:external-smoke
Creates a clean temp directory, installs packages from local paths, and runs a full integration smoke test. Verifies that the published package structure works correctly.
Common Targeted Runs
# Run tests for a specific package
npm test -w imhotep-playwright
npm test -w imhotep-fixtures
# Run specific E2E test file
npx playwright test packages/imhotep-fixtures/src/e2e-public.test.ts
Clean
npm run clean
Removes dist/, tsbuildinfo files, and any in-source generated artifacts (*.js, *.d.ts, *.map under packages/*/src/).
Packaging Smoke
Use this before publishing a package:
npm pack --json
Check packed package/package.json for:
- no
workspace:*protocol dependencies - correct
main,types, andexports