feat: single-source cross-app wire contracts in @boocode/contracts (v2.7.13)
Move all hand-synced cross-app wire contracts into one built workspace package, @boocode/contracts, consumed by server/web/coder/coder-web via workspace:* + a per-subpath exports map. The ws-frames and provider-config Zod schemas are schema-first (z.infer); MessageMetadata, ErrorReason, AgentSessionConfig, the provider snapshot types, and WorktreeRiskReport are each single-sourced. Deletes the byte-identical copies and their parity tests, fixes a live AgentSessionConfig drift (coder dead copy removed, unified to the web required/nullable shape), removes the dead pending_change WS arms in the fallback SPA, and inverts the build order (contracts builds first) across root build, Dockerfile, and the coder deploy docs. Reverses the shared-package decision declined in v2.5.12. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -74,4 +74,4 @@ _No open stale items from the 2026-05-26 review._
|
||||
|
||||
- **Task cancel → abort external ACP/PTY child** — `AbortController` in dispatcher not wired to cancel route
|
||||
- **Skip ACP cold probe when DB models fresh** — perf; changes snapshot semantics
|
||||
- **Unified `packages/types`** for provider snapshot JSON — Zod parity test may suffice
|
||||
- ~~**Unified `packages/types`** for provider snapshot JSON~~ — **shipped as `@boocode/contracts`** (`packages/contracts/`); all duplicated contracts are now single-sourced there
|
||||
|
||||
Reference in New Issue
Block a user