@condorinst/mobile-bridge 0.21.0 → 0.22.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.
- package/AGENTS.md +10 -1
- package/CHANGELOG.md +23 -0
- package/README.md +22 -6
- package/contract/bridge-contract.json +4 -3
- package/dist/cli.cjs +514 -15
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.js +510 -11
- package/dist/cli.js.map +1 -1
- package/docs/agent-guide.md +3 -3
- package/docs/bridge-contract.md +1 -1
- package/docs/client-guide.md +7 -5
- package/docs/device-testing.md +52 -22
- package/docs/pilot-onboarding.md +10 -6
- package/examples/minimal-home/package.json +1 -1
- package/llms-full.txt +84 -39
- package/llms.txt +15 -15
- package/package.json +1 -1
package/AGENTS.md
CHANGED
|
@@ -53,7 +53,7 @@ command (denied by policy).
|
|
|
53
53
|
## The golden path
|
|
54
54
|
|
|
55
55
|
```bash
|
|
56
|
-
npm install @condorinst/mobile-bridge@^0.
|
|
56
|
+
npm install @condorinst/mobile-bridge@^0.22.0
|
|
57
57
|
```
|
|
58
58
|
|
|
59
59
|
```ts
|
|
@@ -137,6 +137,15 @@ answered and dropped. The **◀ OS back** button at the top presses the OS back
|
|
|
137
137
|
button. `--native-version null` (or `0.15.0`, …) makes the handshake report that
|
|
138
138
|
version, to test your capability branches.
|
|
139
139
|
|
|
140
|
+
## Publishing — ask the human, never run it yourself
|
|
141
|
+
|
|
142
|
+
`npx condor-mobile-bridge canvas publish` puts the bundle live at once for every
|
|
143
|
+
user of a company, and asks for the person's password. **Do not run it.** When
|
|
144
|
+
the bundle is ready, tell the human the exact command — for example
|
|
145
|
+
`npx condor-mobile-bridge canvas publish dist/index.html --version 1.0.1` — and
|
|
146
|
+
recommend publishing to their **test company** first. See
|
|
147
|
+
`docs/device-testing.md`.
|
|
148
|
+
|
|
140
149
|
## The validation loop — run this before you call the work done
|
|
141
150
|
|
|
142
151
|
```bash
|
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,29 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.22.0] — 2026-10-20
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- **`condor-mobile-bridge canvas publish | list | revoke`** — publish the bundle
|
|
15
|
+
of your company in the Condor Canvas app from the command line, through the
|
|
16
|
+
same endpoints and login as the Condor web admin. The bundle is validated
|
|
17
|
+
locally first; the command shows company, version, size and hash and asks
|
|
18
|
+
before sending; the password is read only from a prompt without echo (there
|
|
19
|
+
is no flag or variable for it) and never stored; the two-factor code is asked
|
|
20
|
+
when the company uses it. Production API by default; `--env dev` for Condor
|
|
21
|
+
staff, `--base-url` to override. Company and user ids may come from
|
|
22
|
+
`CONDOR_CANVAS_COMPANY` / `CONDOR_CANVAS_USER`.
|
|
23
|
+
- `docs/device-testing.md`: publishing from the command line, and the test
|
|
24
|
+
company workflow.
|
|
25
|
+
|
|
26
|
+
### Changed
|
|
27
|
+
|
|
28
|
+
- `docs/device-testing.md` no longer sends clients to a development
|
|
29
|
+
environment: clients work in production, on a test company.
|
|
30
|
+
- `AGENTS.md`: an agent must never run `canvas publish`; it hands the command to
|
|
31
|
+
the human.
|
|
32
|
+
|
|
10
33
|
## [0.21.0] — 2026-10-20
|
|
11
34
|
|
|
12
35
|
A client built from the 0.20.0 docs worked in the browser and stalled on the
|
package/README.md
CHANGED
|
@@ -20,8 +20,8 @@ Over the network, every document is plain text at a pinned, unauthenticated
|
|
|
20
20
|
URL. `llms.txt` is the index:
|
|
21
21
|
|
|
22
22
|
```
|
|
23
|
-
https://cdn.jsdelivr.net/npm/@condorinst/mobile-bridge@0.
|
|
24
|
-
https://cdn.jsdelivr.net/npm/@condorinst/mobile-bridge@0.
|
|
23
|
+
https://cdn.jsdelivr.net/npm/@condorinst/mobile-bridge@0.22.0/llms.txt
|
|
24
|
+
https://cdn.jsdelivr.net/npm/@condorinst/mobile-bridge@0.22.0/llms-full.txt # every doc in one file
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
The machine-readable contract — keys, commands, limits, capability matrix — is
|
|
@@ -72,8 +72,8 @@ The published package ships a prebuilt `dist/` (ESM + CJS + type
|
|
|
72
72
|
declarations) — **no build toolchain is required on your side**.
|
|
73
73
|
|
|
74
74
|
> **Versioning during the pilot.** The package is on `0.x` (beta). Pin
|
|
75
|
-
> `"@condorinst/mobile-bridge": "^0.
|
|
76
|
-
> caret range auto-updates **patches only** (`0.
|
|
75
|
+
> `"@condorinst/mobile-bridge": "^0.22.0"`. Under semver, while on `0.x` a
|
|
76
|
+
> caret range auto-updates **patches only** (`0.22.x`); moving to `0.23.0` is
|
|
77
77
|
> an intentional opt-in. `1.0.0` is reserved for production.
|
|
78
78
|
|
|
79
79
|
## Quickstart (legacy, shell-side `Bridge`)
|
|
@@ -239,6 +239,22 @@ await createDevHarness({ html, scenario: 'no-devices', mount: document.getElemen
|
|
|
239
239
|
Never import `@condorinst/mobile-bridge/dev` into the bundle itself: `validate`
|
|
240
240
|
fails it with `dev-harness-bundled`.
|
|
241
241
|
|
|
242
|
+
## Publish CLI — `condor-mobile-bridge canvas`
|
|
243
|
+
|
|
244
|
+
```bash
|
|
245
|
+
npx condor-mobile-bridge canvas publish dist/index.html --version 1.4.0 # validate, confirm, publish
|
|
246
|
+
npx condor-mobile-bridge canvas list
|
|
247
|
+
npx condor-mobile-bridge canvas revoke <bundleId> --fallback-version 1.3.0
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
Publishes the bundle of your company in the Condor Canvas app, through the same
|
|
251
|
+
endpoints and login as the Condor web admin: company id, user id, password
|
|
252
|
+
(prompted without echo, never stored) and the two-factor code when your company
|
|
253
|
+
uses one. It needs a **manager** user and an interactive terminal. A publish goes
|
|
254
|
+
**live at once** for every user of the company — use a test company first. The
|
|
255
|
+
API is production by default (`--env dev` is for Condor staff; `--base-url`
|
|
256
|
+
overrides). Details: `docs/device-testing.md`.
|
|
257
|
+
|
|
242
258
|
## Build CLI — `condor-mobile-bridge build`
|
|
243
259
|
|
|
244
260
|
Generates the **self-contained `.zip` bundle** that the white-label app
|
|
@@ -321,10 +337,10 @@ The client passes `Record<string, unknown>`.
|
|
|
321
337
|
|
|
322
338
|
## Versioning policy (semver)
|
|
323
339
|
|
|
324
|
-
- **PATCH** (`0.
|
|
340
|
+
- **PATCH** (`0.22.x`): bugfix with no API change.
|
|
325
341
|
- **MINOR** (`0.x.0`): new observable key, new command, backward-compatible API.
|
|
326
342
|
> While on `0.x`, a minor bump may carry breaking changes (semver treats
|
|
327
|
-
> pre-1.0 minors as breaking). Pin `^0.
|
|
343
|
+
> pre-1.0 minors as breaking). Pin `^0.22.0` to stay on safe patches.
|
|
328
344
|
- **MAJOR** (`x.0.0`): incompatible schema change (key rename, payload shape
|
|
329
345
|
change, public API change). `1.0.0` marks the production-stable contract.
|
|
330
346
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"contractVersion": "0.
|
|
3
|
+
"contractVersion": "0.22.0",
|
|
4
4
|
"description": "Machine-readable contract of the Condor Canvas JS<->Native bridge. It states what the TypeScript declarations in dist/index.d.ts cannot express: which keys and commands a sandboxed client can actually reach, which ones need human confirmation, where messages are dropped in silence, the hard limits, and which capability each native version carries. The TypeScript types remain canonical for payload shapes.",
|
|
5
5
|
"audience": "Developers and AI agents building the client bundle that renders inside the Canvas Home.",
|
|
6
6
|
|
|
7
7
|
"versions": {
|
|
8
8
|
"note": "Four independent numbers coexist. Only nativeVersion tells you what the device can do.",
|
|
9
|
-
"package": "0.
|
|
9
|
+
"package": "0.22.0",
|
|
10
10
|
"shellVersion": "0.6.0",
|
|
11
11
|
"clientProtocolVersion": "0.5.0",
|
|
12
12
|
"nativeVersion": "0.17.0",
|
|
@@ -174,7 +174,8 @@
|
|
|
174
174
|
"integrity": { "algorithm": "sha256", "format": "sha256-<lowercase hex>", "computedOver": "the exact bytes of the .zip" },
|
|
175
175
|
"tooling": {
|
|
176
176
|
"build": "npx condor-mobile-bridge build -i dist/index.html -o dist/bundle.zip",
|
|
177
|
-
"validate": "npx condor-mobile-bridge validate -i dist/bundle.zip --strict"
|
|
177
|
+
"validate": "npx condor-mobile-bridge validate -i dist/bundle.zip --strict",
|
|
178
|
+
"publish": "npx condor-mobile-bridge canvas publish dist/index.html --version <v> — interactive (company id, user id, password, 2FA code); live at once for every user of the company; needs a manager user. Never run it from an agent."
|
|
178
179
|
},
|
|
179
180
|
"statusBarHook": "<meta name=\"theme-color\" content=\"#RRGGBB\"> in the bundle sets the native status bar colour. The setStatusBarColor command overrides it at runtime."
|
|
180
181
|
},
|