@wix/himalaya-cli 0.1110.0 → 0.1112.0

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.
@@ -293,7 +293,22 @@ setup response, inspect status before retrying; the CLI does not automatically r
293
293
  Full inputs, script flags and status meanings: `himi docs push-cli-onboarding`
294
294
  (https://apps.wix.com/_api/himi-serve/docs/push-cli-onboarding.md). The guide is bundled with the public npm package
295
295
  and is also served at that public URL. No repository access is required. This is notification setup; `himi push` publishes
296
- app content. Existing `notify send|tokens|doctor` commands use the local notification server.
296
+ app content.
297
+
298
+ Once status is ready and a member's device has registered, send that member a test through Ping
299
+ as Himalaya — no Apple or Firebase keys, same two logins:
300
+
301
+ ```sh
302
+ himi notify send --provider ping --target wix --content ./my-app \
303
+ --member-email <member login email> --title 'Route check' \
304
+ --link '<scheme>://screen/<screenId>?id=<itemId>' --dry-run
305
+ ```
306
+
307
+ Drop `--dry-run` to send. The server checks ownership, readiness, the link against the published
308
+ release and the member before sending. Acceptance is not delivery: it can reach several of the
309
+ member's devices, never their other Wix apps. After `send_outcome_unknown`, re-run the same
310
+ command with the printed `--request-id`, so the notification cannot arrive twice. Without `--provider`,
311
+ `notify send|tokens|doctor` use the local notification server.
297
312
 
298
313
  ## Shipping — over the air by default, a binary only for a native delta
299
314
 
@@ -341,8 +356,8 @@ For Android, this customer flow currently supports the `branded-lite` shell and
341
356
  site's package-matched Firebase `google-services.json`. `--android-signing qa-keystore` signs
342
357
  the APK with Himi's stable QA key, not a customer Play signing key. Firebase configuration enables
343
358
  push registration; it does not sign the APK. Native Ping wiring, member/device registration,
344
- and a targeted delivery/tap test are still required after installation. A ready backend or a
345
- successful build alone does not prove push delivery.
359
+ and a targeted delivery/tap test are still required after installation; send that test with
360
+ `himi notify send --provider ping`. A ready backend or a successful build alone does not prove push delivery.
346
361
 
347
362
  **Android signing needs nothing either.** `--android-signing` defaults to `qa-keystore` — the
348
363
  repo's committed QA key, identical on every pool machine, so a new build installs *over* the last
@@ -322,7 +322,22 @@ setup response, inspect status before retrying; the CLI does not automatically r
322
322
  Full inputs, script flags and status meanings: `himi docs push-cli-onboarding`
323
323
  (https://apps.wix.com/_api/himi-serve/docs/push-cli-onboarding.md). The guide is bundled with the public npm package
324
324
  and is also served at that public URL. No repository access is required. This is notification setup; `himi push` publishes
325
- app content. Existing `notify send|tokens|doctor` commands use the local notification server.
325
+ app content.
326
+
327
+ Once status is ready and a member's device has registered, send that member a test through Ping
328
+ as Himalaya — no Apple or Firebase keys, same two logins:
329
+
330
+ ```sh
331
+ himi notify send --provider ping --target wix --content ./my-app \
332
+ --member-email <member login email> --title 'Route check' \
333
+ --link '<scheme>://screen/<screenId>?id=<itemId>' --dry-run
334
+ ```
335
+
336
+ Drop `--dry-run` to send. The server checks ownership, readiness, the link against the published
337
+ release and the member before sending. Acceptance is not delivery: it can reach several of the
338
+ member's devices, never their other Wix apps. After `send_outcome_unknown`, re-run the same
339
+ command with the printed `--request-id`, so the notification cannot arrive twice. Without `--provider`,
340
+ `notify send|tokens|doctor` use the local notification server.
326
341
 
327
342
  ## Shipping — over the air by default, a binary only for a native delta
328
343
 
@@ -370,8 +385,8 @@ For Android, this customer flow currently supports the `branded-lite` shell and
370
385
  site's package-matched Firebase `google-services.json`. `--android-signing qa-keystore` signs
371
386
  the APK with Himi's stable QA key, not a customer Play signing key. Firebase configuration enables
372
387
  push registration; it does not sign the APK. Native Ping wiring, member/device registration,
373
- and a targeted delivery/tap test are still required after installation. A ready backend or a
374
- successful build alone does not prove push delivery.
388
+ and a targeted delivery/tap test are still required after installation; send that test with
389
+ `himi notify send --provider ping`. A ready backend or a successful build alone does not prove push delivery.
375
390
 
376
391
  **Android signing needs nothing either.** `--android-signing` defaults to `qa-keystore` — the
377
392
  repo's committed QA key, identical on every pool machine, so a new build installs *over* the last
@@ -81,8 +81,9 @@ repeats the provisioning POST automatically. Inspect status before retrying.
81
81
 
82
82
  After setup, continue normal app development, validation, publish/preview/promote and
83
83
  native distribution. Native push configuration, member authentication, device-token
84
- registration and a delivery/tap test are still required. This command does not enable
85
- native capabilities, choose a Ping family, send notifications or verify phone delivery.
84
+ registration and a delivery/tap test are still required; for the test, see
85
+ [Send a test notification](#send-a-test-notification). Setup does not enable native
86
+ capabilities, choose a Ping family, send notifications or verify phone delivery.
86
87
 
87
88
  **Customer push QA builds use `himi dist --signing byo`.** After publishing an approved
88
89
  release, use a backend and reachable runner source that support the customer-signing flow.
@@ -106,8 +107,61 @@ and this flow does not retrieve a customer Play signing key. Native push wiring,
106
107
  registration and a targeted delivery/tap test remain required. Backend readiness and a successful
107
108
  build do not prove device delivery. See [QA builds](qa-builds.md) for prerequisites and diagnostics.
108
109
 
109
- `himi notify send|tokens|doctor` keep their existing local admin-server behavior; they
110
- are separate from the backend `setup|status` commands.
110
+ ## Send a test notification
111
+
112
+ Once status is `ready` and a signed-in member's device has registered, send that member one
113
+ notification through Ping. Himi Serve sends it as Himalaya, so you need no Apple or Firebase
114
+ key files and no Wix internal tooling:
115
+
116
+ ```sh
117
+ himi login --browser --target wix
118
+ wix login
119
+ himi notify send --provider ping --target wix --content ./liftgear \
120
+ --member-email member@example.com --title 'Route check' --body 'Tap to open' \
121
+ --link 'himalaya-LiftGear://screen/himi_product?id=<itemId>' --dry-run
122
+ himi notify send --provider ping --target wix --content ./liftgear \
123
+ --member-email member@example.com --title 'Route check' --body 'Tap to open' \
124
+ --link 'himalaya-LiftGear://screen/himi_product?id=<itemId>'
125
+ ```
126
+
127
+ `--content` supplies the app and site (or pass `--app` and `--site`). Log in to both CLIs as
128
+ the owner of the app and the site. Himi also mints a site token with `wix token --site`; the
129
+ server uses it only to look up the member by login email on that one site.
130
+
131
+ Before anything is sent, the server checks:
132
+
133
+ - the owner credentials and app ownership;
134
+ - that the site belongs to the same account;
135
+ - that push setup is `ready` for this app on this site;
136
+ - that the link opens a screen the app's live release ships, using the app's exact scheme and
137
+ either a linkable `screen/<id>` or a deep-link pattern (a device on a different rollout ring
138
+ may have a different set of screens);
139
+ - that exactly one approved member has that login email.
140
+
141
+ `--dry-run` runs every check and sends nothing. The link is forwarded exactly as given, query
142
+ string included. A private screen is allowed; the app's login gate still applies when tapped.
143
+
144
+ **Acceptance is not delivery.** Ping does not report which devices it reached. The notification
145
+ goes to the member's subscribed devices for this site's Branded-family app, which can be more
146
+ than one device. It does not go to their other Wix apps. Confirm receipt and the tap on the
147
+ device itself.
148
+
149
+ Every send carries a request ID. If the outcome is unknown (`send_outcome_unknown`, or a lost
150
+ response), the CLI prints the ID and never retries on its own. Re-run the same command with
151
+ `--request-id <id>`: Ping runs one request at most once per site for 24 hours, so a retry
152
+ cannot notify twice. A send without `--request-id`, or with a changed member, title, body or
153
+ link, is a new notification.
154
+
155
+ | Error | Meaning |
156
+ | --- | --- |
157
+ | `push_not_ready` | Run `himi notify setup` for this app and site first. |
158
+ | `member_not_found` / `member_ambiguous` / `member_not_active` | Use the login email of one approved site member. |
159
+ | `link_not_routable` | The link's scheme or screen is not in the published release. |
160
+ | `forbidden_site` / `site_token_invalid` | Both Wix logins must belong to the site owner. |
161
+ | `rate_limited` | Wait `retry-after` seconds; test sends are limited per owner. |
162
+
163
+ `himi notify send` without `--provider`, and `notify tokens|doctor`, keep their existing
164
+ local admin-server behavior. They are separate from the hosted commands above.
111
165
 
112
166
  If ownership cannot be verified, stderr includes a `push_ownership_check_failed` event
113
167
  with the failing check (`list_apps` or `app_role`), endpoint path and HTTP status.
package/guides/skill.md CHANGED
@@ -93,6 +93,10 @@ credentials for their app, not a shared test account.
93
93
  Use `himi notify status --content ./my-app --target wix --refresh --json` to report live
94
94
  backend checks. A ready backend does not prove notification delivery to a phone: native push
95
95
  configuration, a signed build, member/device registration and a delivery/tap test still follow.
96
+ For the test, `himi notify send --provider ping --target wix --content ./my-app --member-email <login>
97
+ --title <t> --link <scheme>://screen/<id>` has Himi Serve send one notification through Ping
98
+ to that site member, with no provider keys; run it with `--dry-run` first. Ping acceptance is not delivery:
99
+ confirm receipt and the tap on the device.
96
100
  For a customer push test, use `himi dist --signing byo` with the customer's existing Apple
97
101
  signing assets and matching app configuration. The default Wix-managed binary uses a different
98
102
  Apple identity. Read `himi docs qa-builds` for the paired iOS/Android command and prerequisites;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wix/himalaya-cli",
3
- "version": "0.1110.0",
3
+ "version": "0.1112.0",
4
4
  "type": "module",
5
5
  "description": "himi — the Himalaya authoring CLI. Build a Tier-5 content package on your own machine, push it to the production serve as a draft, preview it on web + Himi Player, and read worker logs back — the remote dev loop. Wraps @himalaya/serve-cli for transport.",
6
6
  "keywords": [
@@ -67,5 +67,5 @@
67
67
  "artifactId": "himalaya-cli"
68
68
  }
69
69
  },
70
- "falconPackageHash": "3c893ffc5f5c27155566e2ef11edafaa41e7ec615140f4c86732a949"
70
+ "falconPackageHash": "eddb135db9560051303f23b17115c9f9952f4d120580b7e776f0928d"
71
71
  }