openclaw-voice 1.0.2 → 1.0.3

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.
package/README.md CHANGED
@@ -172,8 +172,28 @@ Device identity is generated locally and reused when persistent storage is avail
172
172
  - `npm run android` - Build and run Android app
173
173
  - `npm run web` - Run web target
174
174
  - `npm run typecheck` - Run TypeScript checks
175
+ - `npm run lint` - Run repository lint checks
176
+ - `npm test` - Run manifest switch regression tests
177
+ - `npm run smoke:pack-install` - Pack tarball and verify install/import from a clean temp app
175
178
  - `npm run build:package` - Build npm package files to `dist/`
176
179
 
180
+ ## Local Quality Checks
181
+
182
+ Run before opening a PR:
183
+
184
+ ```bash
185
+ npm run typecheck
186
+ npm run lint
187
+ npm test
188
+ npm run smoke:pack-install
189
+ ```
190
+
191
+ If your environment cannot access npm network during smoke test:
192
+
193
+ ```bash
194
+ OPENCLAW_SMOKE_SKIP_INSTALL=1 npm run smoke:pack-install
195
+ ```
196
+
177
197
  ## Security Notes
178
198
 
179
199
  - Do not commit private gateway tokens.
@@ -195,16 +215,36 @@ See [CONTRIBUTING.md](CONTRIBUTING.md).
195
215
  GitHub Actions runs on push/PR:
196
216
 
197
217
  - Type check (`npm run typecheck`)
198
- - Lint (`npm run lint --if-present`)
199
- - Tests (`npm test --if-present`)
218
+ - Package dry-run (`npm pack --dry-run`)
219
+ - Manifest restore check after pack (`package.json.main` stays `index.ts`)
220
+ - Lint (`npm run lint`)
221
+ - Tests (`npm test`)
222
+ - Tarball install smoke test (`npm run smoke:pack-install`)
200
223
 
201
224
  Issue/PR templates are in `.github/`.
202
225
 
203
226
  ## Publish to npm
204
227
 
228
+ This repo uses two entry contexts:
229
+
230
+ - App runtime: `package.json.main = index.ts`
231
+ - npm package tarball: `main = ./dist/package.js` (switched automatically during pack/publish)
232
+
233
+ Release steps:
234
+
205
235
  ```bash
206
- npm run build:package
236
+ npm version patch --no-git-tag-version
237
+ git add package.json package-lock.json
238
+ git commit -m "chore(release): bump version to x.y.z"
239
+
240
+ # Runs prepack/postpack hooks automatically:
241
+ # - prepack: build + switch manifest for package publish
242
+ # - postpack: restore app manifest
207
243
  npm publish --access public
244
+
245
+ git tag vX.Y.Z
246
+ git push -u origin main
247
+ git push origin vX.Y.Z
208
248
  ```
209
249
 
210
250
  ## Acknowledgements
@@ -460,7 +460,7 @@ class GatewayClient {
460
460
  this.awaitingPairing = false;
461
461
  if (payload.decision === "approved") {
462
462
  // Retry connect now that we're approved
463
- console.log("[GatewayClient] Device approved, retrying connect...");
463
+ console.info("[GatewayClient] Device approved, retrying connect...");
464
464
  this.sendConnectFrame();
465
465
  }
466
466
  else {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openclaw-voice",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "main": "./dist/package.js",
5
5
  "types": "./dist/package.d.ts",
6
6
  "exports": {
@@ -23,7 +23,10 @@
23
23
  "ios": "expo run:ios",
24
24
  "web": "expo start --web",
25
25
  "typecheck": "tsc --noEmit",
26
+ "lint": "node scripts/lint.mjs",
27
+ "test": "node --test tests/*.test.mjs",
26
28
  "build:package": "tsc -p tsconfig.package.json",
29
+ "smoke:pack-install": "node scripts/smoke-pack-install.mjs",
27
30
  "prepare:publish-manifest": "node scripts/switch-package-manifest.mjs prepare",
28
31
  "restore:publish-manifest": "node scripts/switch-package-manifest.mjs restore",
29
32
  "prepack": "npm run build:package && npm run prepare:publish-manifest",