Conversation
Add pnpm workspace, turbo build pipeline, biome lint/format config, changesets versioning, tsconfig.typecheck.json with path aliases. Migrate package.json to private root orchestrator with pnpm@10.
Delete single-package source layout, legacy ESLint/Prettier/Husky configs, and npm lockfile. All code has been migrated to packages/*.
Create 14 publishable packages + 1 private e2e package: - @reaatech/agent-runbook (core: types, schemas, utils, errors) - @reaatech/agent-runbook-analyzer (repository scanning, code analysis) - @reaatech/agent-runbook-alerts (alert extraction, generation, thresholds) - @reaatech/agent-runbook-dashboards (dashboard config generation) - @reaatech/agent-runbook-failure-modes (failure identification, mitigation) - @reaatech/agent-runbook-health-checks (health check generation, K8s probes) - @reaatech/agent-runbook-incident (incident workflows, communication templates) - @reaatech/agent-runbook-rollback (rollback procedures, verification) - @reaatech/agent-runbook-runbook (assembly, formatting, pipeline) - @reaatech/agent-runbook-service-map (dependency graphs, export) - @reaatech/agent-runbook-agent (LLM provider abstraction, prompt templates) - @reaatech/agent-runbook-mcp (MCP server, 16 tools across 3 layers) - @reaatech/agent-runbook-observability (logging, tracing, metrics) - @reaatech/agent-runbook-cli (CLI commands, orchestrator, facade barrel) - @reaatech/agent-runbook-e2e (private integration tests) Each package has dual ESM/CJS output via tsup, co-located tests with vitest, and comprehensive README.md with API reference.
Replace npm-based CI with pnpm/turbo build pipeline. Add changesets release workflow with GitHub Packages mirror. Update Dockerfile to use pnpm + turbo multi-stage build.
Rewrite AGENTS.md with monorepo structure, package dependency graph, updated CI workflow, and development commands. Rewrite ARCHITECTURE.md with package-level diagrams, updated data flow, observability metrics, and deployment architecture. Rewrite root README.md with per-package install commands and feature lists. Add ## Package section to all 9 skill definitions referencing their implementing @reaatech/agent-runbook-* packages.
Combine separate vi.mock calls for @reaatech/agent-runbook-analyzer, @reaatech/agent-runbook-runbook, and @reaatech/agent-runbook-observability into single mock blocks to prevent overwrites.
Update packages/e2e/src/cli.test.ts to locate the built CLI binary at packages/cli/dist/cli.js instead of the old monolithic dist/cli.js.
Turbo runs tests from the package directory, not the monorepo root. Use import.meta.url instead of process.cwd() to locate the CLI binary reliably regardless of working directory.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This is a complete architectural refactor from a single monolithic npm package to a 15-package pnpm monorepo, conforming to the same patterns established by
a2a-reference-ts.Changes
Monorepo scaffolding
pnpm-workspace.yaml,turbo.json,biome.json— root toolchaintsconfig.typecheck.json— path aliases for cross-package typecheck without building.changeset/config.json— changesets-based versioning.npmrc—shamefully-hoist=false,strict-peer-dependencies=true15 packages (
packages/*/)core/@reaatech/agent-runbookanalyzer/@reaatech/agent-runbook-analyzeralerts/@reaatech/agent-runbook-alertsdashboards/@reaatech/agent-runbook-dashboardsfailure-modes/@reaatech/agent-runbook-failure-modeshealth-checks/@reaatech/agent-runbook-health-checksincident/@reaatech/agent-runbook-incidentrollback/@reaatech/agent-runbook-rollbackrunbook/@reaatech/agent-runbook-runbookservice-map/@reaatech/agent-runbook-service-mapagent/@reaatech/agent-runbook-agentmcp/@reaatech/agent-runbook-mcpobservability/@reaatech/agent-runbook-observabilitycli/@reaatech/agent-runbook-clie2e/@reaatech/agent-runbook-e2e(private)Each package includes: dual ESM/CJS output (tsup), co-located tests (vitest), comprehensive README with API reference, LICENSE.
Toolchain migration
CI/CD
ci.ymlfor pnpm + turbo build pipelinerelease.ymlfor changesets/action with GitHub Packages mirrorDockerfilefor multi-stage pnpm + turbo buildDocumentation
AGENTS.mdwith monorepo structure and package dependency graphARCHITECTURE.mdwith package-level diagrams and updated data flowREADME.mdwith per-package install commands and package table## Packagesection to all 9 skill definitionsVerification
pnpm typecheck— passes cleanpnpm build— all 15/15 packages build