Skip to content

chore: migrate to pnpm+turbo+biome 10-package monorepo - #9

Merged
reaatech merged 5 commits into
mainfrom
dev
May 4, 2026
Merged

reaatech merged 5 commits into
mainfrom
dev

Conversation

@reaatech

@reaatech reaatech commented May 2, 2026

Copy link
Copy Markdown
Owner

Summary

Migrates the repository from a single npm package to a 10-package pnpm monorepo matching the architecture of a2a-reference-ts.

Structural Changes

  • 10 workspace packages under packages/: core, metrics, cost, judge, gate, dataset, observability, suite, mcp-server, cli
  • Tooling: npm → pnpm 10.22, tsctsup per-package (cjs+esm+dts), eslint+prettier → biome 1.9
  • Build: turbo.json orchestration with dependency-aware build ordering
  • Versioning: changesets for changelog and release management
  • Docker: moved to docker/ subdirectory

CI Updates (A2A-matched)

  • Full job separation: install → audit → format → lint → typecheck → build → test (matrix [20,22]) → coverage → docker → all-checks
  • Release workflow: changesets/action with npm publish + GitHub Packages mirror
  • Eval workflow updated for pnpm + monorepo CLI paths

Documentation

  • AGENTS.md: 10-package structure, tooling table, dev commands
  • ARCHITECTURE.md: package dependency graph, build system diagram, package-annotated components
  • README.md: A2A-matched format with badges, features, package table
  • All 9 skill files use @reaatech/rag-eval-* imports

Code Quality

  • 0 biome lint errors (strict rules, no overrides)
  • 0 typecheck errors
  • 150 tests pass across all packages
  • 0 biome-ignore comments — all strict code patterns refactored

reaatech added 5 commits May 2, 2026 11:08
- Split monolithic src/ into 10 workspace packages under packages/
- Switch package manager from npm to pnpm 10.22 with workspace support
- Add turbo.json for build orchestration
- Replace eslint+prettier with biome 1.9 for lint and format
- Build per-package with tsup (cjs+esm+dts)
- Add changesets for versioning and changelog generation
- Move Docker setup to docker/ subdirectory
- Remove old tooling (husky, lint-staged, eslint, prettier, vitest root)
- Rewrite CI workflow with A2A-matched job separation (install, audit, format, lint, typecheck, build, test matrix, coverage, docker, all-checks)
- Update release workflow to changesets-based publish with npm + GitHub Packages mirror
- Rewrite AGENTS.md with 10-package monorepo structure, tooling table, and updated imports
- Rewrite ARCHITECTURE.md with package dependency graph, build system diagram, and package-annotated components
- Update root README with A2A-matched format: badges, features, package table, documentation links
- Fix all 9 skill files to use @reaatech/rag-eval-* package imports instead of monolithic import
- Update CI examples in eval workflow for pnpm monorepo
- Remove all references to removed GITHUB_TO_NPM.md and ABC_REMEDIATION.md
- Add mkdir -p results before eval command to create output directory
- Override uuid to >=14.0.0 via pnpm.overrides to fix moderate vulnerability
- Add pull-requests: write permission for PR comment creation
- Add continue-on-error to Comment on PR step as safety net
The eval workflow requires API keys, example data gate thresholds
are deliberately below the example dataset scores, and it is a
quality gate, not a CI check. Use workflow_dispatch and push
to main only.
@reaatech
reaatech merged commit bef6bd8 into main May 4, 2026
12 checks passed
@reaatech
reaatech deleted the dev branch May 4, 2026 11:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant