@overdeck/core 0.62.0 → 0.62.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- import { a as postUatGenerationStackPayload, c as runUatTrainReconcileAllProjects, i as postUatGenerationPromotePayload, l as startUatTrainReconciler, n as getUatCandidatePayload, o as resolveUatProjectRoot, r as getUatGenerationsPayload, s as runUatTrainReconcile, t as canStartUatTrainReconciler, u as stopUatTrainReconciler } from "./uat-train-Bik_I85J.js";
1
+ import { a as postUatGenerationStackPayload, c as runUatTrainReconcileAllProjects, i as postUatGenerationPromotePayload, l as startUatTrainReconciler, n as getUatCandidatePayload, o as resolveUatProjectRoot, r as getUatGenerationsPayload, s as runUatTrainReconcile, t as canStartUatTrainReconciler, u as stopUatTrainReconciler } from "./uat-train-BORW2R0A.js";
2
2
  export { canStartUatTrainReconciler, getUatCandidatePayload, getUatGenerationsPayload, postUatGenerationPromotePayload, postUatGenerationStackPayload, resolveUatProjectRoot, runUatTrainReconcile, runUatTrainReconcileAllProjects, startUatTrainReconciler, stopUatTrainReconciler };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@overdeck/core",
3
- "version": "0.62.0",
3
+ "version": "0.62.1",
4
4
  "description": "Multi-agent orchestration for AI coding assistants (Claude Code, Codex, Cursor, Gemini CLI)",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -156,7 +156,6 @@
156
156
  "@effect/platform-bun": "4.0.0-beta.73",
157
157
  "@effect/platform-node": "4.0.0-beta.73",
158
158
  "@effect/platform-node-shared": "4.0.0-beta.73",
159
- "@effect/vitest": "4.0.0-beta.73",
160
159
  "@google-cloud/speech": "^7.5.0",
161
160
  "@lydell/node-pty": "1.2.0-beta.15",
162
161
  "@huggingface/transformers": "^4.3.0",
@@ -132,6 +132,20 @@ const unresolvableSpecs = CONSUMER_INSTALLED_FIELDS.flatMap((field) =>
132
132
  .map(([name, spec]) => ({ field, name, spec })),
133
133
  );
134
134
 
135
+ // Test frameworks are never runtime dependencies. @overdeck/core 0.60.0-0.62.0
136
+ // shipped "@effect/vitest" in dependencies, which dragged vitest's optional peer
137
+ // graph into every consumer install. Once @vitest/browser-playwright 5.0.2
138
+ // asked for vitest@*, npm's peer-set resolver crashed with "Cannot read
139
+ // properties of null (reading 'edgesOut')", so `npx @overdeck/core` failed for
140
+ // every new user. A consumer never runs our tests, so these belong in
141
+ // devDependencies only.
142
+ const TEST_FRAMEWORK = /^(vitest|@vitest\/.+|@effect\/vitest|jest|@jest\/.+|@playwright\/test)$/;
143
+ const testFrameworkDeps = ['dependencies', 'optionalDependencies'].flatMap((field) =>
144
+ Object.keys(pkg[field] ?? {})
145
+ .filter((name) => TEST_FRAMEWORK.test(name))
146
+ .map((name) => ({ field, name })),
147
+ );
148
+
135
149
  const { allowed, malformed } = readAllowlist();
136
150
 
137
151
  const files = collectJsFiles(distDir);
@@ -190,6 +204,10 @@ const errors = [
190
204
  ({ field, name, spec }) =>
191
205
  `${field}.${name} is "${spec}" — a consumer installing from the registry cannot resolve that protocol, so \`npm install\` fails outright with EUNSUPPORTEDPROTOCOL. Move it to devDependencies if it is a build-time workspace input, or give it a published version range.`,
192
206
  ),
207
+ ...testFrameworkDeps.map(
208
+ ({ field, name }) =>
209
+ `${field}.${name} is a test framework — every consumer install would pull it and its peer graph, which crashed \`npx @overdeck/core\` with "reading 'edgesOut'". Move it to devDependencies.`,
210
+ ),
193
211
  ...missing.map((name) => {
194
212
  const importers = [...externals.get(name)].sort().slice(0, 3).join(', ');
195
213
  const classification = pkg.devDependencies?.[name]
@@ -34,20 +34,39 @@ Do not recommend GitFlow or a long-lived `develop` branch unless the user explic
34
34
 
35
35
  ## Preferred operator flow
36
36
 
37
- 1. Run:
37
+ Every stable release updates the public changelog and ends with a clean-install
38
+ check. Neither step is optional.
39
+
40
+ 1. **Update the changelog first.** Add a `<Update label="vX.Y.Z" description="YYYY-MM-DD">`
41
+ block at the top of `changelog.mdx` with the user-facing changes since the
42
+ previous tag and a compare link to the new tag. Commit it as
43
+ `docs(infra): changelog for vX.Y.Z` and push `main`. `pan release` does not
44
+ edit the changelog, and it needs a clean tree. Details: `docs/RELEASING.md`,
45
+ "Update the public changelog".
46
+ 2. Run:
38
47
  ```bash
39
48
  pan release check
40
49
  ```
41
- 2. Create a stable or canary release:
50
+ 3. Create a stable or canary release:
42
51
  ```bash
43
52
  pan release stable --version 0.7.1
44
53
  pan release canary --version 0.8.0-canary.1
45
54
  ```
46
- 3. Push intentionally:
55
+ 4. Push intentionally:
47
56
  ```bash
48
57
  git push origin main
49
58
  git push origin v0.7.1
50
59
  ```
60
+ 5. **Verify a clean install after npm shows the new version.** Run the advertised
61
+ launch command with an empty cache and an empty global prefix, so a global
62
+ install on this machine can't hide a broken package:
63
+ ```bash
64
+ T=$(mktemp -d); cd "$T"
65
+ npm_config_prefix="$T/prefix" npx --yes --cache "$T/cache" @overdeck/core@X.Y.Z --version
66
+ ```
67
+ It must print `X.Y.Z`. If npm fails (for example `reading 'edgesOut'` or
68
+ `EUNSUPPORTEDPROTOCOL`), the release is broken for every new user: fix it and
69
+ ship a patch release the same day.
51
70
 
52
71
  ## What the CLI does
53
72
 
@@ -82,6 +101,10 @@ Prerequisites that must stay true or publishing breaks:
82
101
  - **No `workspace:*` in runtime `dependencies`** — bundled workspace packages
83
102
  (e.g. `@overdeck/contracts`) belong in `devDependencies`, or consumers'
84
103
  `npm install` fails with `EUNSUPPORTEDPROTOCOL`.
104
+ - **No test frameworks in runtime `dependencies`** (`vitest`, `@effect/vitest`,
105
+ `@vitest/*`, `jest`, `@playwright/test`). 0.60.0–0.62.0 shipped `@effect/vitest`
106
+ there, and its peer graph crashed `npx @overdeck/core` with `reading 'edgesOut'`.
107
+ `scripts/lint-dist-externals.mjs` fails the build on this.
85
108
  - `publishConfig.access: "public"` on every publishable package.
86
109
 
87
110
  First-time setup for a brand-new package (npm org creation, the one-time