mirror of
https://github.com/openprose/prose.git
synced 2026-09-19 05:55:05 +08:00
27ac01e8f0
Production-ready DX + release prep for the reactor CLI (packages/reactor-cli): - `reactor init [dir]`: scaffold a minimal .prose project (gateway + responsibility) + reactor.yml (sandbox.mode:none, a static-connector gateway) + .gitignore for .reactor/ + a project README. Keyless (no model surface); refuses to clobber without --force. `reactor compile --check` RECOGNIZES the scaffold (real contract-set fingerprint -> stale, not the no-contracts error), and the contracts compile to a mountable IR under a fake provider. - doctor polish: now reports the project sandbox mode (+ Docker availability when mode:docker), state-dir writability, and compiled-IR freshness (no-contracts/absent/stale/fresh). `--live` probes one smoke render by dynamic-importing the live checks from the agent-render barrel (correction #8); key PRESENCE is reported, never printed. Added `--json`. Stays keyless on the report path (live deps reached only via dynamic import under --live). - README: quickstart, full command reference + documented exit codes, the compile -> run -> serve reference-client narrative, the cost-scales-with- surprise story, across-reactor --concurrency semantics, and the Change-B within-reactor-parallelism deferral note. examples/ (quickstart + gateway-connector) run end-to-end offline from a fresh checkout, guarded by an examples gate. - npm pack is CLEAN: split the test compile into dist-test (tsconfig.test.json) so the production `build` (tsconfig.build.json) excludes the test suite; the published artifact ships dist/ + README.md + examples/ only — no test scaffolding. bin wired to dist/cli.js. Gate: CLI offline 76/76/0 (init + doctor + examples suites added); SDK offline 421/414/0/7 (no regression, SDK untouched). --help for every command; init/doctor recognized + honest keyless. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>