Files
Imhotep/BUILD.md
T
John Dvorak dd64e1e34a v1.1.0: repo polish, CI fixes, version alignment, dead artifact cleanup
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
2026-05-21 10:10:11 -07:00

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, and exports