docs: core-package generator reference + Quick Start entry

Adds docs/scaffolding/core-package-generator.md with usage, template
table, and drift-verification instructions. Updates CLAUDE.md Quick
Start and AGENTS.md Key Commands with the new pnpm turbo gen core-package
entry. Creates templates/core-package/.gitkeep placeholder for Phase 3+.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-09 13:23:37 +02:00
parent d5313f95ea
commit 4c7ccf9d1c
4 changed files with 43 additions and 1 deletions

View File

@@ -0,0 +1,40 @@
# Core-package generator
`pnpm turbo gen core-package` scaffolds an optional core package back into a slimmed template. Each name maps to a verbatim copy of the package as it shipped at the time the generator was added.
## Usage
```bash
pnpm turbo gen core-package
# → Which optional core package? (use arrow keys)
# realtime
# events
# trpc
# ui
```
The generator emits the package files, updates consuming-app config (e.g. `apps/web-next/next.config.mjs` `transpilePackages`), patches `packages/core-eslint/base.js` to re-add any package-specific lint rules, then prints the manual app/server wiring needed to bring the package fully online.
## Available templates
| Name | Description | Phase added |
|---|---|---|
| `realtime` | Socket.IO realtime layer (ADR-016) | Phase 3 |
| `events` | Cross-feature event bus + Payload jobs adapter (ADR-015) | Phase 4 |
| `trpc` | tRPC server setup | Phase 5 |
| `ui` | Design-system package | Phase 6 |
(Until Phases 3-6 land, the generator will list an empty choices array and reject any selection.)
## Verifying an existing project
If your project already has a core-* package and you want to verify the generator's template hasn't drifted from the shipped source, use the byte-identical reconstruction snapshot:
```bash
git stash -u
pnpm turbo gen core-package <name>
git diff packages/core-<name>/
# Expect: zero diff (modulo .hbs strip + trailing-newline normalization)
```
Snapshots live at `turbo/generators/__snapshots__/core-package/<name>.snapshot.json` (added in Phases 3-6).