@trillboards/edge-sdk 0.2.52 → 0.2.53
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/deploy/macos/README.md +18 -3
- package/deploy/macos/apply-update.sh +225 -0
- package/deploy/macos/build-macos-pkg.sh +10 -8
- package/deploy/macos/scripts/postinstall +13 -3
- package/dist/EdgeAgent.js +1 -1
- package/dist/connectorUpdate.d.ts +23 -16
- package/dist/connectorUpdate.d.ts.map +1 -1
- package/dist/connectorUpdate.js +37 -10
- package/dist/connectorUpdate.js.map +1 -1
- package/dist/connectorUpdateApply.d.ts +3 -0
- package/dist/connectorUpdateApply.d.ts.map +1 -1
- package/dist/connectorUpdateApply.js +3 -0
- package/dist/connectorUpdateApply.js.map +1 -1
- package/dist/connectorUpdateApplyMac.d.ts +50 -0
- package/dist/connectorUpdateApplyMac.d.ts.map +1 -0
- package/dist/connectorUpdateApplyMac.js +166 -0
- package/dist/connectorUpdateApplyMac.js.map +1 -0
- package/dist/diagnose.d.ts +1 -1
- package/dist/diagnose.js +1 -1
- package/package.json +1 -1
package/deploy/macos/README.md
CHANGED
|
@@ -19,6 +19,7 @@ What lands on disk (home-domain, **no sudo / no admin password**):
|
|
|
19
19
|
edge-sdk), WITHOUT the heavy local-inference stack
|
|
20
20
|
share/com.trillboards.edge.plist LaunchAgent template
|
|
21
21
|
share/ensure-litertlm.sh background local-AI retry supervisor
|
|
22
|
+
share/apply-update.sh signed-pkg updater with rollback
|
|
22
23
|
share/models/gemma-4-E2B-it.litertlm required customer local VLM (removed after import)
|
|
23
24
|
~/Applications/Trillboards CCTV Setup.app native customer setup window (opened automatically)
|
|
24
25
|
~/Library/Application Support/Trillboards/trillboards.config.json (after pair, 0600)
|
|
@@ -31,8 +32,9 @@ bootstrapped automatically on first successful pair. The device token is
|
|
|
31
32
|
delivered **only by pairing** — it is never baked into the `.pkg`.
|
|
32
33
|
|
|
33
34
|
> The customer build includes Gemma and completes its local health check before
|
|
34
|
-
> pairing. Cloud inference requires explicit configuration.
|
|
35
|
-
>
|
|
35
|
+
> pairing. Cloud inference requires explicit configuration. The release lane
|
|
36
|
+
> also builds a signed, notarized `--skip-model` package for automatic upgrades;
|
|
37
|
+
> it is accepted only on an already-provisioned machine whose model is healthy.
|
|
36
38
|
|
|
37
39
|
---
|
|
38
40
|
|
|
@@ -83,13 +85,26 @@ Options:
|
|
|
83
85
|
| `--arch arm64\|x64` | host arch | target architecture |
|
|
84
86
|
| `--node-version vX.Y.Z` | `v22.22.0` | pinned Node runtime to bundle |
|
|
85
87
|
| `--bundle-model` | on | include the pinned ~2.4 GB Gemma model required by customer setup |
|
|
86
|
-
| `--skip-model` | off | build
|
|
88
|
+
| `--skip-model` | off | build the slim code-only upgrade package; it is not a valid first installer |
|
|
87
89
|
| `--offline` | off | skip the official Node download; copy the host `node` |
|
|
88
90
|
| `--sign-installer "Developer ID Installer: …"` | unset | `productsign` the pkg |
|
|
89
91
|
|
|
90
92
|
The build is idempotent (it wipes its staging tree each run) and **smoke-tests
|
|
91
93
|
the staged bundle** (`trillboards-edge version`) before packaging.
|
|
92
94
|
|
|
95
|
+
### Automatic updates
|
|
96
|
+
|
|
97
|
+
Every paired connector checks the macOS version manifest at launch and every
|
|
98
|
+
six hours. Once a release has baked for six hours, the connector downloads the
|
|
99
|
+
content-addressed code-only package while sensing remains online. Before it can
|
|
100
|
+
be staged, macOS must validate the exact Aethercorp Developer ID Installer
|
|
101
|
+
identity, the notarization staple, Gatekeeper acceptance, size, and SHA-256.
|
|
102
|
+
The connector waits for a safe sensing point, exits cleanly, installs the
|
|
103
|
+
package, smoke-tests the new version, and relaunches the LaunchAgent. The old
|
|
104
|
+
tree remains as `~/Library/Trillboards/edge.previous` and is restored
|
|
105
|
+
automatically if installation, smoke testing, or relaunch fails. Existing
|
|
106
|
+
pairing and the local model are preserved; the setup window does not reopen.
|
|
107
|
+
|
|
93
108
|
### Local end-to-end test
|
|
94
109
|
|
|
95
110
|
```bash
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
#
|
|
3
|
+
# Stage and apply the signed, notarized macOS connector update package.
|
|
4
|
+
# The running connector chooses the safe point; this detached helper owns the
|
|
5
|
+
# download, macOS trust checks, LaunchAgent handoff, swap, smoke test, and
|
|
6
|
+
# `.previous` rollback.
|
|
7
|
+
|
|
8
|
+
set -u
|
|
9
|
+
|
|
10
|
+
LABEL='com.trillboards.edge'
|
|
11
|
+
EXPECTED_SIGNER='Developer ID Installer: Aethercorp Inc (78JQ7882U9)'
|
|
12
|
+
MODE=''
|
|
13
|
+
INSTALL_DIR=''
|
|
14
|
+
UPDATE_URL=''
|
|
15
|
+
EXPECTED_VERSION=''
|
|
16
|
+
CURRENT_VERSION=''
|
|
17
|
+
EXPECTED_SHA256=''
|
|
18
|
+
EXPECTED_SIZE=''
|
|
19
|
+
WAIT_PID=''
|
|
20
|
+
|
|
21
|
+
while [ "$#" -gt 0 ]; do
|
|
22
|
+
case "$1" in
|
|
23
|
+
--stage|--commit) MODE="$1"; shift ;;
|
|
24
|
+
--install-dir) INSTALL_DIR="${2:-}"; shift 2 ;;
|
|
25
|
+
--update-url) UPDATE_URL="${2:-}"; shift 2 ;;
|
|
26
|
+
--expected-version) EXPECTED_VERSION="${2:-}"; shift 2 ;;
|
|
27
|
+
--current-version) CURRENT_VERSION="${2:-}"; shift 2 ;;
|
|
28
|
+
--expected-sha256) EXPECTED_SHA256="${2:-}"; shift 2 ;;
|
|
29
|
+
--expected-size) EXPECTED_SIZE="${2:-}"; shift 2 ;;
|
|
30
|
+
--wait-pid) WAIT_PID="${2:-}"; shift 2 ;;
|
|
31
|
+
*) printf '[apply-update] unknown argument: %s\n' "$1" >&2; exit 2 ;;
|
|
32
|
+
esac
|
|
33
|
+
done
|
|
34
|
+
|
|
35
|
+
log() {
|
|
36
|
+
/usr/bin/logger -t com.trillboards.edge "apply-update: $*" 2>/dev/null || true
|
|
37
|
+
printf '[apply-update] %s\n' "$*"
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
case "$EXPECTED_VERSION" in
|
|
41
|
+
[0-9]*.[0-9]*.[0-9]*) ;;
|
|
42
|
+
*) log 'invalid expected version'; exit 2 ;;
|
|
43
|
+
esac
|
|
44
|
+
|
|
45
|
+
# The updater is intentionally scoped to the one home-domain path the package
|
|
46
|
+
# installs. This makes every later rm/mv target resolved and bounded.
|
|
47
|
+
EXPECTED_INSTALL_DIR="${HOME}/Library/Trillboards/edge"
|
|
48
|
+
if [ "$INSTALL_DIR" != "$EXPECTED_INSTALL_DIR" ]; then
|
|
49
|
+
log "refusing unexpected install root: $INSTALL_DIR"
|
|
50
|
+
exit 2
|
|
51
|
+
fi
|
|
52
|
+
|
|
53
|
+
PARENT_DIR="$(dirname "$INSTALL_DIR")"
|
|
54
|
+
UPDATE_DIR="$PARENT_DIR/.edge-auto-update"
|
|
55
|
+
ARCHIVE="$UPDATE_DIR/connector-update.pkg"
|
|
56
|
+
MARKER="$UPDATE_DIR/staged.json"
|
|
57
|
+
OUTCOME="$UPDATE_DIR/outcome.json"
|
|
58
|
+
LOCK_DIR="$UPDATE_DIR/lock"
|
|
59
|
+
PREVIOUS="$PARENT_DIR/edge.previous"
|
|
60
|
+
PLIST="$HOME/Library/LaunchAgents/$LABEL.plist"
|
|
61
|
+
|
|
62
|
+
mkdir -p "$UPDATE_DIR" || exit 1
|
|
63
|
+
if ! mkdir "$LOCK_DIR" 2>/dev/null; then
|
|
64
|
+
log 'another update transaction is already running'
|
|
65
|
+
exit 0
|
|
66
|
+
fi
|
|
67
|
+
trap 'rmdir "$LOCK_DIR" 2>/dev/null || true' EXIT
|
|
68
|
+
|
|
69
|
+
json_escape() {
|
|
70
|
+
printf '%s' "$1" | /usr/bin/sed 's/\\/\\\\/g; s/"/\\"/g'
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
write_outcome() {
|
|
74
|
+
local result="$1" detail="$2" tmp="$OUTCOME.tmp.$$"
|
|
75
|
+
printf '{"attemptedAt":"%s","result":"%s","detail":"%s"}\n' \
|
|
76
|
+
"$(date -u +%Y-%m-%dT%H:%M:%SZ)" "$result" "$(json_escape "$detail")" > "$tmp" \
|
|
77
|
+
&& mv -f "$tmp" "$OUTCOME"
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
fail_stage() {
|
|
81
|
+
log "$1"
|
|
82
|
+
rm -f "$ARCHIVE.download" "$MARKER.tmp.$$"
|
|
83
|
+
exit 1
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
configure_proxy() {
|
|
87
|
+
if [ -n "${HTTPS_PROXY:-}" ] || [ -n "${https_proxy:-}" ] || [ -n "${ALL_PROXY:-}" ]; then
|
|
88
|
+
return
|
|
89
|
+
fi
|
|
90
|
+
local proxy_conf enabled host port
|
|
91
|
+
proxy_conf="$(/usr/sbin/scutil --proxy 2>/dev/null || true)"
|
|
92
|
+
enabled="$(printf '%s\n' "$proxy_conf" | /usr/bin/awk '/HTTPSEnable/ {print $3}')"
|
|
93
|
+
[ "$enabled" = '1' ] || return
|
|
94
|
+
host="$(printf '%s\n' "$proxy_conf" | /usr/bin/awk '/HTTPSProxy/ {print $3}')"
|
|
95
|
+
port="$(printf '%s\n' "$proxy_conf" | /usr/bin/awk '/HTTPSPort/ {print $3}')"
|
|
96
|
+
[ -n "$host" ] || return
|
|
97
|
+
HTTPS_PROXY="http://$host${port:+:$port}"
|
|
98
|
+
export HTTPS_PROXY HTTP_PROXY="$HTTPS_PROXY"
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
verify_pkg() {
|
|
102
|
+
local pkg="$1" sha="$2" size="$3" actual_size actual_sha sig_out
|
|
103
|
+
[ -f "$pkg" ] || return 1
|
|
104
|
+
case "$size" in *[!0-9]*|'') return 1 ;; esac
|
|
105
|
+
printf '%s' "$sha" | /usr/bin/grep -Eq '^[0-9a-f]{64}$' || return 1
|
|
106
|
+
|
|
107
|
+
actual_size="$(/usr/bin/wc -c < "$pkg" | tr -d ' ')"
|
|
108
|
+
[ "$actual_size" = "$size" ] || { log "payload size mismatch: expected $size, got $actual_size"; return 1; }
|
|
109
|
+
actual_sha="$(/usr/bin/shasum -a 256 "$pkg" | /usr/bin/awk '{print $1}')"
|
|
110
|
+
[ "$actual_sha" = "$sha" ] || { log 'payload SHA-256 mismatch'; return 1; }
|
|
111
|
+
|
|
112
|
+
sig_out="$UPDATE_DIR/signature.txt"
|
|
113
|
+
/usr/sbin/pkgutil --check-signature "$pkg" > "$sig_out" 2>&1 || { log 'package signature is invalid'; return 1; }
|
|
114
|
+
/usr/bin/grep -Fq "$EXPECTED_SIGNER" "$sig_out" || { log 'package signer is not Aethercorp'; return 1; }
|
|
115
|
+
/usr/bin/xcrun stapler validate "$pkg" >/dev/null 2>&1 || { log 'package has no valid notarization staple'; return 1; }
|
|
116
|
+
/usr/sbin/spctl -a -vv --type install "$pkg" >/dev/null 2>&1 || { log 'Gatekeeper rejected the update package'; return 1; }
|
|
117
|
+
return 0
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
if [ "$MODE" = '--stage' ]; then
|
|
121
|
+
case "$UPDATE_URL" in https://*) ;; *) fail_stage 'update URL must use HTTPS' ;; esac
|
|
122
|
+
configure_proxy
|
|
123
|
+
log "downloading connector $EXPECTED_VERSION while sensing stays online"
|
|
124
|
+
/usr/bin/curl --fail --location --silent --show-error --proto '=https' --tlsv1.2 \
|
|
125
|
+
--connect-timeout 30 --max-time 3600 --output "$ARCHIVE.download" "$UPDATE_URL" \
|
|
126
|
+
|| fail_stage 'update download failed'
|
|
127
|
+
verify_pkg "$ARCHIVE.download" "$EXPECTED_SHA256" "$EXPECTED_SIZE" \
|
|
128
|
+
|| fail_stage 'update package verification failed'
|
|
129
|
+
mv -f "$ARCHIVE.download" "$ARCHIVE" || fail_stage 'could not retain verified package'
|
|
130
|
+
marker_tmp="$MARKER.tmp.$$"
|
|
131
|
+
printf '{"version":"%s","currentVersion":"%s","sha256":"%s","sizeBytes":%s}\n' \
|
|
132
|
+
"$EXPECTED_VERSION" "$CURRENT_VERSION" "$EXPECTED_SHA256" "$EXPECTED_SIZE" > "$marker_tmp" \
|
|
133
|
+
|| fail_stage 'could not write staged marker'
|
|
134
|
+
mv -f "$marker_tmp" "$MARKER" || fail_stage 'could not publish staged marker'
|
|
135
|
+
log "connector $EXPECTED_VERSION is staged, signed, notarized, and verified"
|
|
136
|
+
exit 0
|
|
137
|
+
fi
|
|
138
|
+
|
|
139
|
+
if [ "$MODE" != '--commit' ]; then
|
|
140
|
+
log 'exactly one of --stage or --commit is required'
|
|
141
|
+
exit 2
|
|
142
|
+
fi
|
|
143
|
+
|
|
144
|
+
marker_version="$(/usr/bin/plutil -extract version raw "$MARKER" 2>/dev/null || true)"
|
|
145
|
+
marker_sha="$(/usr/bin/plutil -extract sha256 raw "$MARKER" 2>/dev/null || true)"
|
|
146
|
+
marker_size="$(/usr/bin/plutil -extract sizeBytes raw "$MARKER" 2>/dev/null || true)"
|
|
147
|
+
if [ "$marker_version" != "$EXPECTED_VERSION" ]; then
|
|
148
|
+
write_outcome 'rejected' 'staged version did not match the requested version'
|
|
149
|
+
log 'staged version mismatch; refusing update'
|
|
150
|
+
exit 1
|
|
151
|
+
fi
|
|
152
|
+
verify_pkg "$ARCHIVE" "$marker_sha" "$marker_size" || {
|
|
153
|
+
write_outcome 'rejected' 'staged package failed commit-time verification'
|
|
154
|
+
rm -f "$MARKER" "$ARCHIVE"
|
|
155
|
+
exit 1
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
# The connector launches us and then exits cleanly. Do not touch its mapped
|
|
159
|
+
# binaries until that PID is gone; a timeout leaves the current install intact.
|
|
160
|
+
if [ -n "$WAIT_PID" ]; then
|
|
161
|
+
waited=0
|
|
162
|
+
while kill -0 "$WAIT_PID" 2>/dev/null && [ "$waited" -lt 120 ]; do
|
|
163
|
+
sleep 1
|
|
164
|
+
waited=$((waited + 1))
|
|
165
|
+
done
|
|
166
|
+
if kill -0 "$WAIT_PID" 2>/dev/null; then
|
|
167
|
+
write_outcome 'failed' 'connector did not exit before the update deadline'
|
|
168
|
+
log 'connector did not exit; leaving current install untouched'
|
|
169
|
+
exit 1
|
|
170
|
+
fi
|
|
171
|
+
fi
|
|
172
|
+
|
|
173
|
+
restart_agent() {
|
|
174
|
+
[ -f "$PLIST" ] || return 1
|
|
175
|
+
/bin/launchctl bootout "gui/$(id -u)/$LABEL" >/dev/null 2>&1 || true
|
|
176
|
+
local attempt=1
|
|
177
|
+
while [ "$attempt" -le 10 ]; do
|
|
178
|
+
/bin/launchctl bootstrap "gui/$(id -u)" "$PLIST" >/dev/null 2>&1 || true
|
|
179
|
+
if /bin/launchctl print "gui/$(id -u)/$LABEL" >/dev/null 2>&1; then
|
|
180
|
+
/bin/launchctl kickstart -k "gui/$(id -u)/$LABEL" >/dev/null 2>&1 || true
|
|
181
|
+
return 0
|
|
182
|
+
fi
|
|
183
|
+
sleep 1
|
|
184
|
+
attempt=$((attempt + 1))
|
|
185
|
+
done
|
|
186
|
+
return 1
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
rollback() {
|
|
190
|
+
local detail="$1"
|
|
191
|
+
/bin/launchctl bootout "gui/$(id -u)/$LABEL" >/dev/null 2>&1 || true
|
|
192
|
+
rm -rf "$INSTALL_DIR"
|
|
193
|
+
if [ -d "$PREVIOUS" ]; then
|
|
194
|
+
mv "$PREVIOUS" "$INSTALL_DIR" || true
|
|
195
|
+
fi
|
|
196
|
+
if restart_agent; then
|
|
197
|
+
write_outcome 'failed' "$detail; previous version restored"
|
|
198
|
+
else
|
|
199
|
+
write_outcome 'failed' "$detail; previous files restored but the agent did not restart"
|
|
200
|
+
fi
|
|
201
|
+
rm -f "$MARKER" "$ARCHIVE"
|
|
202
|
+
log "$detail; rolled back"
|
|
203
|
+
exit 1
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
log "applying connector $EXPECTED_VERSION"
|
|
207
|
+
/bin/launchctl bootout "gui/$(id -u)/$LABEL" >/dev/null 2>&1 || true
|
|
208
|
+
rm -rf "$PREVIOUS"
|
|
209
|
+
mv "$INSTALL_DIR" "$PREVIOUS" || {
|
|
210
|
+
write_outcome 'failed' 'could not preserve the current install for rollback'
|
|
211
|
+
exit 1
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
/usr/sbin/installer -pkg "$ARCHIVE" -target CurrentUserHomeDirectory >/dev/null 2>&1 \
|
|
215
|
+
|| rollback 'macOS Installer rejected the update'
|
|
216
|
+
|
|
217
|
+
installed_version="$($INSTALL_DIR/bin/trillboards-edge version 2>/dev/null || true)"
|
|
218
|
+
printf '%s' "$installed_version" | /usr/bin/grep -Fq "edge-sdk v$EXPECTED_VERSION" \
|
|
219
|
+
|| rollback 'updated connector failed its version smoke test'
|
|
220
|
+
|
|
221
|
+
restart_agent || rollback 'updated connector installed but its LaunchAgent did not restart'
|
|
222
|
+
write_outcome 'success' "updated from $CURRENT_VERSION to $EXPECTED_VERSION"
|
|
223
|
+
rm -f "$MARKER" "$ARCHIVE" "$UPDATE_DIR/signature.txt"
|
|
224
|
+
log "connector $EXPECTED_VERSION installed and relaunched"
|
|
225
|
+
exit 0
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
# [--sign-app "Developer ID Application: …"]
|
|
32
32
|
# [--sign-installer "Developer ID Installer: …"]
|
|
33
33
|
# [--bundle-model] (default; include the pinned ~2.4 GB VLM)
|
|
34
|
-
# [--skip-model] (
|
|
34
|
+
# [--skip-model] (code-only upgrade; not a first installer)
|
|
35
35
|
# [--offline] (skip the official Node + ffmpeg downloads,
|
|
36
36
|
# copy the host `node`/`ffmpeg` instead — for
|
|
37
37
|
# air-gapped CI)
|
|
@@ -150,8 +150,8 @@ while [ $# -gt 0 ]; do
|
|
|
150
150
|
esac
|
|
151
151
|
done
|
|
152
152
|
|
|
153
|
-
# Offline
|
|
154
|
-
#
|
|
153
|
+
# Offline first-install builds must provide the model cache explicitly. Slim
|
|
154
|
+
# builds are the release lane's code-only upgrade artifact.
|
|
155
155
|
if [ "$OFFLINE" -eq 1 ] && [ "$BUNDLE_MODEL" -eq 1 ] && [ -z "$GEMMA_MODEL_FILE" ]; then
|
|
156
156
|
echo "--offline with the customer model bundle requires GEMMA_MODEL_FILE" >&2
|
|
157
157
|
exit 2
|
|
@@ -398,7 +398,9 @@ cp "$PKG_ROOT/deploy/macos/com.trillboards.edge.plist" "$PAYLOAD/share/com.trill
|
|
|
398
398
|
cp "$PKG_ROOT/deploy/macos/com.trillboards.litertlm.plist" "$PAYLOAD/share/com.trillboards.litertlm.plist"
|
|
399
399
|
cp "$PKG_ROOT/deploy/macos/scripts/setup-litertlm.sh" "$PAYLOAD/share/setup-litertlm.sh"
|
|
400
400
|
cp "$PKG_ROOT/deploy/macos/scripts/ensure-litertlm.sh" "$PAYLOAD/share/ensure-litertlm.sh"
|
|
401
|
-
|
|
401
|
+
cp "$PKG_ROOT/deploy/macos/apply-update.sh" "$PAYLOAD/share/apply-update.sh"
|
|
402
|
+
chmod +x "$PAYLOAD/share/setup-litertlm.sh" "$PAYLOAD/share/ensure-litertlm.sh" \
|
|
403
|
+
"$PAYLOAD/share/apply-update.sh"
|
|
402
404
|
|
|
403
405
|
# ─── 7b. Stage the pre-bundled Gemma model (.litertlm) into the payload ───────
|
|
404
406
|
# Stage the redistributable (Apache-2.0) Gemma 4 E2B LiteRT-LM model and verify
|
|
@@ -423,7 +425,7 @@ if [ "$BUNDLE_MODEL" -eq 1 ]; then
|
|
|
423
425
|
printf '%s %s\n' "$GEMMA_MODEL_SHA256" "$GEMMA_MODEL_ID" > "$PAYLOAD/share/models/$GEMMA_MODEL_ID.sha256"
|
|
424
426
|
log "Staged + SHA-verified bundled Gemma model ($(du -h "$GEMMA_OUT" | cut -f1))"
|
|
425
427
|
else
|
|
426
|
-
warn "Building
|
|
428
|
+
warn "Building the code-only upgrade package without bundled local AI; it requires an already-provisioned Mac."
|
|
427
429
|
fi
|
|
428
430
|
|
|
429
431
|
# ─── 7c. Build the native customer setup application ─────────────────────────
|
|
@@ -603,12 +605,12 @@ else
|
|
|
603
605
|
warn "cert (pass --sign-installer) then notarize (see deploy/macos/README.md)."
|
|
604
606
|
fi
|
|
605
607
|
|
|
606
|
-
# Keep
|
|
607
|
-
#
|
|
608
|
+
# Keep code-only upgrade builds bounded so an unrelated payload regression
|
|
609
|
+
# cannot turn an automatic update into another multi-gigabyte first install.
|
|
608
610
|
PKG_BYTES="$(stat -f%z "$PKG_OUT")"
|
|
609
611
|
MAX_SLIM_PKG_BYTES="${MAX_SLIM_PKG_BYTES:-262144000}"
|
|
610
612
|
if [ "$BUNDLE_MODEL" -eq 0 ] && [ "$PKG_BYTES" -gt "$MAX_SLIM_PKG_BYTES" ]; then
|
|
611
|
-
die "
|
|
613
|
+
die "code-only update package is $PKG_BYTES bytes; maximum is $MAX_SLIM_PKG_BYTES bytes"
|
|
612
614
|
fi
|
|
613
615
|
|
|
614
616
|
# ─── Done ────────────────────────────────────────────────────────────────────
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
# - ensure the runtime dirs exist (Application Support config dir + Logs dir)
|
|
9
9
|
# - make the bundled binaries executable (pkg payloads can lose +x)
|
|
10
10
|
# - install and health-check the bundled local AI model
|
|
11
|
-
# - open camera pairing only after local AI is ready
|
|
11
|
+
# - open camera pairing only after local AI is ready on a first install
|
|
12
|
+
# - keep an already-paired update headless
|
|
12
13
|
# - DO NOT start the LaunchAgent: there is no paired config yet, and a
|
|
13
14
|
# config-less cloud-sense crash-loops. The agent is bootstrapped only after
|
|
14
15
|
# a successful setup (the installed pairing engine does that).
|
|
@@ -42,6 +43,9 @@ fi
|
|
|
42
43
|
EDGE_ROOT="$USER_HOME/Library/Trillboards/edge"
|
|
43
44
|
APP_SUPPORT="$USER_HOME/Library/Application Support/Trillboards"
|
|
44
45
|
LOG_DIR="$USER_HOME/Library/Logs/Trillboards"
|
|
46
|
+
PAIRED_CONFIG="$APP_SUPPORT/trillboards.config.json"
|
|
47
|
+
IS_UPGRADE=0
|
|
48
|
+
[ -s "$PAIRED_CONFIG" ] && IS_UPGRADE=1
|
|
45
49
|
|
|
46
50
|
log() { /usr/bin/logger -t com.trillboards.edge "postinstall: $*" 2>/dev/null || true; printf '[trillboards postinstall] %s\n' "$*"; }
|
|
47
51
|
|
|
@@ -118,7 +122,9 @@ APPS_DIR="$USER_HOME/Applications"
|
|
|
118
122
|
SETUP_APP="$APPS_DIR/Trillboards CCTV Setup.app"
|
|
119
123
|
LEGACY_PAIR_LAUNCHER="$APPS_DIR/Trillboards Pair.command"
|
|
120
124
|
rm -f "$LEGACY_PAIR_LAUNCHER" 2>/dev/null || true
|
|
121
|
-
if [
|
|
125
|
+
if [ "$IS_UPGRADE" -eq 1 ]; then
|
|
126
|
+
log "paired connector upgrade detected; setup remains closed"
|
|
127
|
+
elif [ -d "$SETUP_APP" ] && [ -x "$EDGE_ROOT/bin/trillboards-pair" ]; then
|
|
122
128
|
log "native setup app ready: \"$SETUP_APP\" (opening it)"
|
|
123
129
|
if [ "$(id -u)" = "0" ] && [ -n "$OWNER" ] && [ "$OWNER" != "root" ]; then
|
|
124
130
|
LAUNCH_UID="$(id -u "$OWNER" 2>/dev/null || echo '')"
|
|
@@ -149,5 +155,9 @@ else
|
|
|
149
155
|
log "WARNING: launcher not executable at $EDGE_ROOT/bin/trillboards-edge"
|
|
150
156
|
fi
|
|
151
157
|
|
|
152
|
-
|
|
158
|
+
if [ "$IS_UPGRADE" -eq 1 ]; then
|
|
159
|
+
log "done. Connector update installed; existing pairing preserved."
|
|
160
|
+
else
|
|
161
|
+
log "done. Connector and local AI installed; Trillboards CCTV Setup opened automatically."
|
|
162
|
+
fi
|
|
153
163
|
exit 0
|
package/dist/EdgeAgent.js
CHANGED
|
@@ -44,7 +44,7 @@ const edge_ads_1 = require("@trillboards/edge-ads");
|
|
|
44
44
|
const CommandRouter_1 = require("./CommandRouter");
|
|
45
45
|
const config_1 = require("./config");
|
|
46
46
|
const dataDir_1 = require("./dataDir");
|
|
47
|
-
const SDK_VERSION = '0.2.
|
|
47
|
+
const SDK_VERSION = '0.2.53';
|
|
48
48
|
class EdgeAgent extends events_1.EventEmitter {
|
|
49
49
|
constructor(config, deps) {
|
|
50
50
|
super();
|
|
@@ -12,10 +12,11 @@
|
|
|
12
12
|
* customer happened to re-download 2.6 GB and re-run the installer.
|
|
13
13
|
*
|
|
14
14
|
* THIS FILE ONLY CHECKS AND REPORTS. Applying an update is a separate,
|
|
15
|
-
* platform-specific transaction — see `deploy/windows/apply-update.ps1
|
|
16
|
-
* `
|
|
17
|
-
*
|
|
18
|
-
* running binaries" is
|
|
15
|
+
* platform-specific transaction — see `deploy/windows/apply-update.ps1`,
|
|
16
|
+
* `deploy/macos/apply-update.sh`, and their TypeScript appliers. The split is
|
|
17
|
+
* deliberate: "am I stale?" is a question every packaged platform can answer
|
|
18
|
+
* over one small GET, while "swap the running binaries" is an OS-specific
|
|
19
|
+
* service transaction with a rollback.
|
|
19
20
|
*
|
|
20
21
|
* ── WHY A 200 IS NOT AN ANSWER ──────────────────────────────────────────────
|
|
21
22
|
* The CDN in front of these objects serves the marketing SPA as its default
|
|
@@ -73,11 +74,12 @@ export declare const CONNECTOR_UPDATE_MIN_RELEASE_AGE_MS: number;
|
|
|
73
74
|
/**
|
|
74
75
|
* The published manifest, after strict validation.
|
|
75
76
|
*
|
|
76
|
-
*
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
77
|
+
* Update fields are OPTIONAL because manifests published before the appliers
|
|
78
|
+
* shipped carry none. Windows uses `updateUrl` plus an Authenticode-signed
|
|
79
|
+
* `updateCatalogUrl`; macOS uses `updateUrl` plus the code-only package's size
|
|
80
|
+
* and hash, while its Developer ID package signature is the trust anchor. An
|
|
81
|
+
* install that finds a newer version with no usable update payload reports the
|
|
82
|
+
* drift rather than failing.
|
|
81
83
|
*/
|
|
82
84
|
export interface ConnectorVersionManifest {
|
|
83
85
|
schemaVersion: number;
|
|
@@ -90,6 +92,10 @@ export interface ConnectorVersionManifest {
|
|
|
90
92
|
downloadUrl: string;
|
|
91
93
|
updateUrl?: string;
|
|
92
94
|
updateCatalogUrl?: string;
|
|
95
|
+
/** macOS code-only package hash (the package signature is the trust anchor). */
|
|
96
|
+
updateSha256?: string;
|
|
97
|
+
/** macOS code-only package size, checked before its hash and signature. */
|
|
98
|
+
updateSizeBytes?: number;
|
|
93
99
|
}
|
|
94
100
|
/** A parsed `MAJOR.MINOR.PATCH`. */
|
|
95
101
|
export interface ParsedConnectorVersion {
|
|
@@ -244,13 +250,14 @@ export declare function checkForConnectorUpdate(installedVersion: string, client
|
|
|
244
250
|
* 2.4 GB model download. It is wrong here: this GET is 401 bytes, and deferring
|
|
245
251
|
* it six hours would mean a store PC that reboots nightly never reports its
|
|
246
252
|
* version at all — the fleet view would be blind to exactly the machines most
|
|
247
|
-
* likely to be stale.
|
|
248
|
-
*
|
|
253
|
+
* likely to be stale. The check is tiny and non-blocking, so schedule it on the
|
|
254
|
+
* next event-loop turn: every paired connector checks at launch without
|
|
255
|
+
* delaying sensing.
|
|
249
256
|
*
|
|
250
257
|
* A fresh release still cannot be applied on that first check: the bake window
|
|
251
258
|
* is enforced separately, on `publishedAt`.
|
|
252
259
|
*/
|
|
253
|
-
export declare const CONNECTOR_UPDATE_INITIAL_DELAY_MS =
|
|
260
|
+
export declare const CONNECTOR_UPDATE_INITIAL_DELAY_MS = 0;
|
|
254
261
|
/** How often the apply state machine looks at the world while an update is in flight. */
|
|
255
262
|
export declare const CONNECTOR_UPDATE_POLL_INTERVAL_MS = 60000;
|
|
256
263
|
/**
|
|
@@ -288,8 +295,8 @@ export interface ConnectorUpdateServiceDeps {
|
|
|
288
295
|
deviceTokens: string[];
|
|
289
296
|
/**
|
|
290
297
|
* The connector's current irrecoverable-work reading. Omit to CHECK and
|
|
291
|
-
* REPORT without ever applying
|
|
292
|
-
*
|
|
298
|
+
* REPORT without ever applying, which is what a caller with no manager to ask
|
|
299
|
+
* should do.
|
|
293
300
|
*/
|
|
294
301
|
busyness?: () => ConnectorBusyness;
|
|
295
302
|
/**
|
|
@@ -298,7 +305,7 @@ export interface ConnectorUpdateServiceDeps {
|
|
|
298
305
|
* their existing shutdown closure so cameras are closed first.
|
|
299
306
|
*/
|
|
300
307
|
requestExit?: () => void;
|
|
301
|
-
/**
|
|
308
|
+
/** Platform applier. Omit (or pass null) to check and report only. */
|
|
302
309
|
applier?: ConnectorUpdateApplier | null;
|
|
303
310
|
log?: (message: string) => void;
|
|
304
311
|
client?: ConnectorManifestClient;
|
|
@@ -317,7 +324,7 @@ export interface ConnectorUpdateServiceDeps {
|
|
|
317
324
|
}
|
|
318
325
|
/**
|
|
319
326
|
* The whole update loop: check the manifest, tell the server where this install
|
|
320
|
-
* stands, and —
|
|
327
|
+
* stands, and — with a verified payload and a quiet moment — apply.
|
|
321
328
|
*
|
|
322
329
|
* Every branch is best-effort. A failed check, a failed report, an applier that
|
|
323
330
|
* will not launch: each is one log line, and sensing continues. The one thing
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectorUpdate.d.ts","sourceRoot":"","sources":["../src/connectorUpdate.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"connectorUpdate.d.ts","sourceRoot":"","sources":["../src/connectorUpdate.ts"],"names":[],"mappings":"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"}
|
package/dist/connectorUpdate.js
CHANGED
|
@@ -13,10 +13,11 @@
|
|
|
13
13
|
* customer happened to re-download 2.6 GB and re-run the installer.
|
|
14
14
|
*
|
|
15
15
|
* THIS FILE ONLY CHECKS AND REPORTS. Applying an update is a separate,
|
|
16
|
-
* platform-specific transaction — see `deploy/windows/apply-update.ps1
|
|
17
|
-
* `
|
|
18
|
-
*
|
|
19
|
-
* running binaries" is
|
|
16
|
+
* platform-specific transaction — see `deploy/windows/apply-update.ps1`,
|
|
17
|
+
* `deploy/macos/apply-update.sh`, and their TypeScript appliers. The split is
|
|
18
|
+
* deliberate: "am I stale?" is a question every packaged platform can answer
|
|
19
|
+
* over one small GET, while "swap the running binaries" is an OS-specific
|
|
20
|
+
* service transaction with a rollback.
|
|
20
21
|
*
|
|
21
22
|
* ── WHY A 200 IS NOT AN ANSWER ──────────────────────────────────────────────
|
|
22
23
|
* The CDN in front of these objects serves the marketing SPA as its default
|
|
@@ -227,6 +228,19 @@ function parseVersionManifest(body) {
|
|
|
227
228
|
manifest.updateUrl = o.updateUrl;
|
|
228
229
|
if (isNonEmptyString(o.updateCatalogUrl))
|
|
229
230
|
manifest.updateCatalogUrl = o.updateCatalogUrl;
|
|
231
|
+
if ('updateSha256' in o) {
|
|
232
|
+
if (typeof o.updateSha256 !== 'string' || !/^[0-9a-f]{64}$/.test(o.updateSha256))
|
|
233
|
+
return null;
|
|
234
|
+
manifest.updateSha256 = o.updateSha256;
|
|
235
|
+
}
|
|
236
|
+
if ('updateSizeBytes' in o) {
|
|
237
|
+
if (typeof o.updateSizeBytes !== 'number' ||
|
|
238
|
+
!Number.isInteger(o.updateSizeBytes) ||
|
|
239
|
+
o.updateSizeBytes <= 0) {
|
|
240
|
+
return null;
|
|
241
|
+
}
|
|
242
|
+
manifest.updateSizeBytes = o.updateSizeBytes;
|
|
243
|
+
}
|
|
230
244
|
return manifest;
|
|
231
245
|
}
|
|
232
246
|
/**
|
|
@@ -396,13 +410,14 @@ async function checkForConnectorUpdate(installedVersion, client) {
|
|
|
396
410
|
* 2.4 GB model download. It is wrong here: this GET is 401 bytes, and deferring
|
|
397
411
|
* it six hours would mean a store PC that reboots nightly never reports its
|
|
398
412
|
* version at all — the fleet view would be blind to exactly the machines most
|
|
399
|
-
* likely to be stale.
|
|
400
|
-
*
|
|
413
|
+
* likely to be stale. The check is tiny and non-blocking, so schedule it on the
|
|
414
|
+
* next event-loop turn: every paired connector checks at launch without
|
|
415
|
+
* delaying sensing.
|
|
401
416
|
*
|
|
402
417
|
* A fresh release still cannot be applied on that first check: the bake window
|
|
403
418
|
* is enforced separately, on `publishedAt`.
|
|
404
419
|
*/
|
|
405
|
-
exports.CONNECTOR_UPDATE_INITIAL_DELAY_MS =
|
|
420
|
+
exports.CONNECTOR_UPDATE_INITIAL_DELAY_MS = 0;
|
|
406
421
|
/** How often the apply state machine looks at the world while an update is in flight. */
|
|
407
422
|
exports.CONNECTOR_UPDATE_POLL_INTERVAL_MS = 60000;
|
|
408
423
|
/**
|
|
@@ -427,7 +442,7 @@ exports.CONNECTOR_UPDATE_STAGE_DEADLINE_MS = 60 * 60 * 1000;
|
|
|
427
442
|
exports.CONNECTOR_UPDATE_SAFE_POINT_DEADLINE_MS = 2 * 60 * 60 * 1000;
|
|
428
443
|
/**
|
|
429
444
|
* The whole update loop: check the manifest, tell the server where this install
|
|
430
|
-
* stands, and —
|
|
445
|
+
* stands, and — with a verified payload and a quiet moment — apply.
|
|
431
446
|
*
|
|
432
447
|
* Every branch is best-effort. A failed check, a failed report, an applier that
|
|
433
448
|
* will not launch: each is one log line, and sensing continues. The one thing
|
|
@@ -591,8 +606,8 @@ function startConnectorUpdateService(deps) {
|
|
|
591
606
|
return;
|
|
592
607
|
if (phase !== 'idle')
|
|
593
608
|
return;
|
|
594
|
-
if (!
|
|
595
|
-
log('[update] the published manifest carries no update payload — reported only');
|
|
609
|
+
if (!applier.canStage(check.manifest)) {
|
|
610
|
+
log('[update] the published manifest carries no usable update payload — reported only');
|
|
596
611
|
return;
|
|
597
612
|
}
|
|
598
613
|
if (!isReleaseBakedEnough(check.manifest, now(), deps.minReleaseAgeMs)) {
|
|
@@ -681,6 +696,18 @@ function startConnectorUpdates(opts) {
|
|
|
681
696
|
applier = null;
|
|
682
697
|
}
|
|
683
698
|
}
|
|
699
|
+
else if (platform === 'darwin') {
|
|
700
|
+
try {
|
|
701
|
+
// macOS uses a signed-pkg transaction and LaunchAgent handoff.
|
|
702
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
703
|
+
const mod = require('./connectorUpdateApplyMac');
|
|
704
|
+
const candidate = new mod.MacConnectorUpdateApplier({ log: opts.log });
|
|
705
|
+
applier = candidate.installRoot() ? candidate : null;
|
|
706
|
+
}
|
|
707
|
+
catch {
|
|
708
|
+
applier = null;
|
|
709
|
+
}
|
|
710
|
+
}
|
|
684
711
|
try {
|
|
685
712
|
return startConnectorUpdateService({
|
|
686
713
|
installedVersion: opts.installedVersion,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectorUpdate.js","sourceRoot":"","sources":["../src/connectorUpdate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"connectorUpdate.js","sourceRoot":"","sources":["../src/connectorUpdate.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmFH,sDAKC;AAUD,0DAOC;AAQD,8DAIC;AAGD,wDAOC;AAWD,oDAkDC;AAiJD,kDAEC;AAQD,gCASC;AAGD,oDAUC;AAoBD,0DAeC;AAkGD,kEAwMC;AAUD,sDAUC;AAeD,sDAwDC;AAnxBD,2CAA6B;AAC7B,6CAA+B;AAC/B,mEAAgE;AAGhE,qEAAqE;AACxD,QAAA,yBAAyB,GAAG,0CAA0C,CAAC;AAEpF;;;;;;;;;;GAUG;AACU,QAAA,kCAAkC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAErE;;;;;;;;;;;;GAYG;AACU,QAAA,mCAAmC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEtE,sFAAsF;AACtF,MAAM,kBAAkB,GAAG,EAAE,GAAG,IAAI,CAAC;AAErC,8BAA8B;AAC9B,MAAM,mBAAmB,GAAG,KAAM,CAAC;AAoCnC;;;;GAIG;AACH,SAAgB,qBAAqB,CAAC,GAAY;IAChD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACzC,MAAM,CAAC,GAAG,4DAA4D,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IACxF,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,uBAAuB,CAAC,SAAkB,EAAE,SAAkB;IAC5E,MAAM,CAAC,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,CAAC,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3B,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IAClD,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IAClD,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;AAC3B,CAAC;AAED;;;;;GAKG;AACH,SAAgB,yBAAyB,CAAC,QAAgB;IACxD,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,4CAA4C,CAAC;IAC9E,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,0CAA0C,CAAC;IAC7E,OAAO,IAAI,CAAC;AACd,CAAC;AAED,iDAAiD;AACjD,SAAgB,sBAAsB,CACpC,QAAgB,EAChB,UAAkB,iCAAyB;IAE3C,MAAM,MAAM,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC;AACpD,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAU;IAClC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AAC/C,CAAC;AAED;;;;GAIG;AACH,SAAgB,oBAAoB,CAAC,IAAY;IAC/C,IAAI,GAAY,CAAC;IACjB,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACvE,MAAM,CAAC,GAAG,GAA8B,CAAC;IAEzC,IAAI,CAAC,CAAC,aAAa,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/C,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7C,0EAA0E;IAC1E,gDAAgD;IAChD,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAClF,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC;QAC1F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7F,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAC;IAElD,MAAM,QAAQ,GAA6B;QACzC,aAAa,EAAE,CAAC;QAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,gBAAgB,EAAE,CAAC,CAAC,gBAA0B;QAC9C,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,WAAW,EAAE,CAAC,CAAC,WAAW;KAC3B,CAAC;IACF,IAAI,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;QAAE,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;IACpE,IAAI,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAAE,QAAQ,CAAC,gBAAgB,GAAG,CAAC,CAAC,gBAAgB,CAAC;IACzF,IAAI,cAAc,IAAI,CAAC,EAAE,CAAC;QACxB,IAAI,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC;YAAE,OAAO,IAAI,CAAC;QAC9F,QAAQ,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC;IACzC,CAAC;IACD,IAAI,iBAAiB,IAAI,CAAC,EAAE,CAAC;QAC3B,IACE,OAAO,CAAC,CAAC,eAAe,KAAK,QAAQ;YACrC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC;YACpC,CAAC,CAAC,eAAe,IAAI,CAAC,EACtB,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,QAAQ,CAAC,eAAe,GAAG,CAAC,CAAC,eAAe,CAAC;IAC/C,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAQD;;;;;;;;;;;;;;GAcG;AACI,MAAM,sBAAsB,GAAoB,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CACxE,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,IAAI,MAAW,CAAC;IAChB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAoC,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/E,OAAO;IACT,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CACrB,GAAG,EACH;QACE,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,MAAM,EAAE,kBAAkB;YAC1B,eAAe,EAAE,UAAU;YAC3B,MAAM,EAAE,UAAU;SACnB;QACD,OAAO,EAAE,SAAS;KACnB,EACD,CAAC,GAAG,EAAE,EAAE;QACN,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YAC/B,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC;YACtB,IAAI,KAAK,GAAG,kBAAkB,EAAE,CAAC;gBAC/B,GAAG,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;gBAClE,OAAO;YACT,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACjB,OAAO,CAAC;gBACN,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,CAAC;gBAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;aAC9C,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CACF,CAAC;IACF,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACtC,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC,CAAC,CAAC;IACxF,GAAG,CAAC,GAAG,EAAE,CAAC;AACZ,CAAC,CAAC,CAAC;AA5CQ,QAAA,sBAAsB,0BA4C9B;AAEL,qDAAqD;AACrD,MAAa,uBAAuB;IAKlC,YACE,OAAmE,EACnE,OAAyB;QAEzB,IAAI,CAAC,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACrE,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,mBAAmB,CAAC;QAC1D,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,8BAAsB,CAAC;IACnD,CAAC;IAED,0EAA0E;IAC1E,WAAW;QACT,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QAC3B,IAAI,MAA4C,CAAC;QACjD,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,MAAM,CAAC,UAAU,GAAG,GAAG,IAAI,MAAM,CAAC,UAAU,IAAI,GAAG;YAAE,OAAO,IAAI,CAAC;QACrE,OAAO,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;CACF;AAnCD,0DAmCC;AAeD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,SAAgB,mBAAmB,CAAC,QAA2B;IAC7D,OAAO,QAAQ,CAAC,QAAQ,KAAK,CAAC,IAAI,QAAQ,CAAC,QAAQ,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,SAAgB,UAAU,CACxB,MAAyF;IAEzF,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAE,MAAO,CAAC,QAAmB,CAAC,CAAC,CAAC,CAAC;QAC9E,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,QAAQ,CAAC;YAC1D,CAAC,CAAE,MAAO,CAAC,eAAgB,CAAC,QAAmB;YAC/C,CAAC,CAAC,CAAC;KACN,CAAC;AACJ,CAAC;AAED,oDAAoD;AACpD,SAAgB,oBAAoB,CAClC,QAAkC,EAClC,KAAa,EACb,WAAmB,2CAAmC;IAEtD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACnD,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1C,0EAA0E;IAC1E,yEAAyE;IACzE,OAAO,KAAK,GAAG,SAAS,IAAI,QAAQ,CAAC;AACvC,CAAC;AAaD;;;;;;GAMG;AACI,KAAK,UAAU,uBAAuB,CAC3C,gBAAwB,EACxB,MAA+B;IAE/B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;IAC9C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC9F,CAAC;IACD,MAAM,KAAK,GAAG,uBAAuB,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;IACnF,OAAO;QACL,gBAAgB;QAChB,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;QAC3C,gBAAgB,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI;QAC1D,QAAQ;KACT,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACU,QAAA,iCAAiC,GAAG,CAAC,CAAC;AAEnD,yFAAyF;AAC5E,QAAA,iCAAiC,GAAG,KAAM,CAAC;AAExD;;;;;GAKG;AACU,QAAA,kCAAkC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEjE;;;;;;;;;;;GAWG;AACU,QAAA,uCAAuC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAgD1E;;;;;;;;GAQG;AACH,SAAgB,2BAA2B,CACzC,IAAgC;IAEhC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,uBAAuB,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACvF,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QAAE,OAAO,IAAI,CAAC;IAEvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,6CAAqB,CAAC;IAChE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,UAAU,CAAC;IACrD,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,YAAY,CAAC;IAC3D,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,WAAW,CAAC;IACxD,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,IAAI,aAAa,CAAC;IAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;IACrC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,GAAS,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,yCAAiC,CAAC;IAChF,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,IAAI,0CAAkC,CAAC;IACnF,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,IAAI,+CAAuC,CAAC;IAEhG,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,KAAK,GAAe,MAAM,CAAC;IAC/B,IAAI,MAAM,GAAoC,IAAI,CAAC;IACnD,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,SAAS,GAA0C,IAAI,CAAC;IAC5D,IAAI,UAAU,GAA0C,IAAI,CAAC;IAC7D,IAAI,YAAY,GAAyC,IAAI,CAAC;IAE9D,MAAM,KAAK,GAAG,CAAC,CAAU,EAAQ,EAAE;QACjC,IAAI,CAAC,IAAI,OAAQ,CAA4B,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;YAClE,CAA2B,CAAC,KAAK,EAAE,CAAC;QACvC,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,GAAS,EAAE;QAC1B,KAAK,GAAG,MAAM,CAAC;QACf,MAAM,GAAG,IAAI,CAAC;QACd,IAAI,SAAS,EAAE,CAAC;YACd,eAAe,CAAC,SAAS,CAAC,CAAC;YAC3B,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;IACH,CAAC,CAAC;IAEF;;;;;OAKG;IACH,MAAM,MAAM,GAAG,KAAK,EAAE,KAA2B,EAAiB,EAAE;QAClE,MAAM,OAAO,GAAG,OAAO,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC;QAC/C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;YAChC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,MAAM,EAAE;gBACN,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,sEAAsE;gBACtE,wEAAwE;gBACxE,uEAAuE;gBACvE,mEAAmE;gBACnE,mBAAmB;gBACnB,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvE,aAAa,EAAE,OAAO;aACvB;YACD,GAAG;SACJ,CAAC,CAAC;QACH,oEAAoE;QACpE,4EAA4E;QAC5E,2EAA2E;QAC3E,yEAAyE;QACzE,cAAc;QACd,IAAI,OAAO,IAAI,MAAM,CAAC,SAAS,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,SAAS,EAAE,CAAC;YAC5E,OAAO,EAAE,YAAY,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC;IAEF,gFAAgF;IAChF,MAAM,SAAS,GAAG,GAAS,EAAE;QAC3B,IAAI,OAAO,IAAI,KAAK,KAAK,MAAM,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO;YAAE,OAAO;QAC/D,MAAM,OAAO,GAAG,GAAG,EAAE,GAAG,cAAc,CAAC;QAEvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,OAAO,CAAC,aAAa,EAAE,KAAK,MAAM,CAAC,gBAAgB,EAAE,CAAC;gBACxD,GAAG,CAAC,YAAY,MAAM,CAAC,gBAAgB,oDAAoD,CAAC,CAAC;gBAC7F,KAAK,GAAG,qBAAqB,CAAC;gBAC9B,cAAc,GAAG,GAAG,EAAE,CAAC;gBACvB,OAAO;YACT,CAAC;YACD,IAAI,OAAO,IAAI,eAAe,EAAE,CAAC;gBAC/B,GAAG,CAAC,wEAAwE,CAAC,CAAC;gBAC9E,QAAQ,EAAE,CAAC;YACb,CAAC;YACD,OAAO;QACT,CAAC;QAED,sBAAsB;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QAChF,MAAM,IAAI,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,OAAO,IAAI,mBAAmB,CAAC;QAC/C,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QAC9B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,GAAG,CACD,6BAA6B,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,yBAAyB;gBAC/E,aAAa,QAAQ,CAAC,QAAQ,qBAAqB,QAAQ,CAAC,QAAQ,GAAG,CAC1E,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,uCAAuC,CAAC,CAAC;QAC/C,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC;QACxC,QAAQ,EAAE,CAAC;QACX,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC;YACxE,GAAG,CAAC,wEAAwE,CAAC,CAAC;YAC9E,OAAO;QACT,CAAC;QACD,6EAA6E;QAC7E,uDAAuD;QACvD,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,QAAkC,EAAQ,EAAE;QAC9D,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,yEAAyE;QACzE,wEAAwE;QACxE,uEAAuE;QACvE,yEAAyE;QACzE,oEAAoE;QACpE,4EAA4E;QAC5E,oEAAoE;QACpE,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,EAAE,KAAK,QAAQ,CAAC,gBAAgB,CAAC;QAC5E,IAAI,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC;YAC1F,GAAG,CAAC,wEAAwE,CAAC,CAAC;YAC9E,OAAO;QACT,CAAC;QACD,GAAG,CACD,aAAa;YACX,CAAC,CAAC,YAAY,QAAQ,CAAC,gBAAgB,+CAA+C;YACtF,CAAC,CAAC,oBAAoB,QAAQ,CAAC,gBAAgB,EAAE,CACpD,CAAC;QACF,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1D,MAAM,GAAG,QAAQ,CAAC;QAClB,cAAc,GAAG,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,GAAG,aAAa,CAAC,GAAG,EAAE;gBAC7B,IAAI,CAAC;oBACH,SAAS,EAAE,CAAC;gBACd,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,2CAA2C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChE,CAAC;YACH,CAAC,EAAE,cAAc,CAAC,CAAC;YACnB,KAAK,CAAC,SAAS,CAAC,CAAC;QACnB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,KAAK,IAAmB,EAAE;QACzC,IAAI,OAAO;YAAE,OAAO;QACpB,MAAM,KAAK,GAAG,MAAM,uBAAuB,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;QAC3E,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,GAAG,CAAC,4EAA4E,CAAC,CAAC;QACpF,CAAC;aAAM,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAClC,GAAG,CAAC,sBAAsB,KAAK,CAAC,gBAAgB,wBAAwB,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACpG,CAAC;QACD,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC;QAEpB,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,gBAAgB;YAAE,OAAO;QACnE,IAAI,KAAK,KAAK,MAAM;YAAE,OAAO;QAC7B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtC,GAAG,CAAC,kFAAkF,CAAC,CAAC;YACxF,OAAO;QACT,CAAC;QACD,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YACvE,GAAG,CAAC,YAAY,KAAK,CAAC,gBAAgB,uDAAuD,CAAC,CAAC;YAC/F,OAAO;QACT,CAAC;QACD,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,GAAS,EAAE;QAC9B,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,sCAAsC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACtF,CAAC,CAAC;IAEF,YAAY,GAAG,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC,cAAc,IAAI,yCAAiC,CAAC,CAAC;IACpG,KAAK,CAAC,YAAY,CAAC,CAAC;IACpB,UAAU,GAAG,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,IAAI,0CAAkC,CAAC,CAAC;IAChG,KAAK,CAAC,UAAU,CAAC,CAAC;IAElB,OAAO;QACL,IAAI;YACF,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,IAAI,CAAC;gBACH,IAAI,YAAY;oBAAE,cAAc,CAAC,YAAY,CAAC,CAAC;gBAC/C,IAAI,UAAU;oBAAE,eAAe,CAAC,UAAU,CAAC,CAAC;gBAC5C,IAAI,SAAS;oBAAE,eAAe,CAAC,SAAS,CAAC,CAAC;YAC5C,CAAC;YAAC,MAAM,CAAC;gBACP,iBAAiB;YACnB,CAAC;YACD,YAAY,GAAG,IAAI,CAAC;YACpB,UAAU,GAAG,IAAI,CAAC;YAClB,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,qBAAqB,CAAC,MAGrC;IACC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QAC1C,IAAI,MAAM,EAAE,WAAW;YAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,MAAM,CAAC,WAAW;QAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACxD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,qBAAqB,CAAC,IAWrC;IACC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IACnD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;IAC1C,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxD,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1D,IAAI,OAAO,GAAkC,IAAI,CAAC;IAClD,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,2EAA2E;YAC3E,4BAA4B;YAC5B,8DAA8D;YAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,wBAAwB,CAA4C,CAAC;YACzF,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,6BAA6B,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAC3E,OAAO,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;QACvD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;SAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,+DAA+D;YAC/D,8DAA8D;YAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,2BAA2B,CAA+C,CAAC;YAC/F,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,yBAAyB,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACvE,OAAO,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;QACvD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,OAAO,2BAA2B,CAAC;YACjC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,QAAQ;YACR,UAAU;YACV,YAAY;YACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO;YACP,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,6EAA6E;QAC7E,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -40,6 +40,8 @@ export declare const OUTCOME_FILE_NAME = "outcome.json";
|
|
|
40
40
|
export interface ConnectorUpdateApplier {
|
|
41
41
|
/** The packaged install root, or null when this is not a packaged install. */
|
|
42
42
|
installRoot(): string | null;
|
|
43
|
+
/** Whether this platform has every manifest field required to stage safely. */
|
|
44
|
+
canStage(manifest: ConnectorVersionManifest): boolean;
|
|
43
45
|
/** Start the download+verify phase, detached. Returns false if it could not start. */
|
|
44
46
|
stage(opts: {
|
|
45
47
|
manifest: ConnectorVersionManifest;
|
|
@@ -96,6 +98,7 @@ export declare class WindowsConnectorUpdateApplier implements ConnectorUpdateApp
|
|
|
96
98
|
private readonly log;
|
|
97
99
|
constructor(deps?: WindowsApplierDeps);
|
|
98
100
|
installRoot(): string | null;
|
|
101
|
+
canStage(manifest: ConnectorVersionManifest): boolean;
|
|
99
102
|
private updateDir;
|
|
100
103
|
/**
|
|
101
104
|
* Launch `apply-update.ps1` and forget about it.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectorUpdateApply.d.ts","sourceRoot":"","sources":["../src/connectorUpdateApply.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAGtC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEtE,yEAAyE;AACzE,eAAO,MAAM,eAAe,iBAAiB,CAAC;AAE9C,qEAAqE;AACrE,eAAO,MAAM,kBAAkB,gBAAgB,CAAC;AAEhD,wEAAwE;AACxE,eAAO,MAAM,iBAAiB,iBAAiB,CAAC;AAEhD,8EAA8E;AAC9E,MAAM,WAAW,sBAAsB;IACrC,8EAA8E;IAC9E,WAAW,IAAI,MAAM,GAAG,IAAI,CAAC;IAC7B,sFAAsF;IACtF,KAAK,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,wBAAwB,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;IACrF,wEAAwE;IACxE,aAAa,IAAI,MAAM,GAAG,IAAI,CAAC;IAC/B,qEAAqE;IACrE,MAAM,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;IACnE,iDAAiD;IACjD,WAAW,IAAI,sBAAsB,GAAG,IAAI,CAAC;IAC7C,+EAA+E;IAC/E,YAAY,IAAI,IAAI,CAAC;CACtB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,GAAE,MAAyB,EACnC,MAAM,GAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAiC,GACvD,MAAM,GAAG,IAAI,CAMf;AAQD,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IACvB,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACnC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAc7E;AAED,gCAAgC;AAChC,qBAAa,6BAA8B,YAAW,sBAAsB;IAC1E,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwB;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAClD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAwB;gBAEhC,IAAI,GAAE,kBAAuB;IASzC,WAAW,IAAI,MAAM,GAAG,IAAI;IAI5B,OAAO,CAAC,SAAS;IAIjB;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM;IAmBd,KAAK,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,wBAAwB,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO;IAcpF,MAAM,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO;IAUlE,aAAa,IAAI,MAAM,GAAG,IAAI;IAa9B,WAAW,IAAI,sBAAsB,GAAG,IAAI;IAY5C,YAAY,IAAI,IAAI;CASrB"}
|
|
1
|
+
{"version":3,"file":"connectorUpdateApply.d.ts","sourceRoot":"","sources":["../src/connectorUpdateApply.ts"],"names":[],"mappings":"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"}
|
|
@@ -139,6 +139,9 @@ class WindowsConnectorUpdateApplier {
|
|
|
139
139
|
installRoot() {
|
|
140
140
|
return this.root;
|
|
141
141
|
}
|
|
142
|
+
canStage(manifest) {
|
|
143
|
+
return Boolean(manifest.updateUrl && manifest.updateCatalogUrl);
|
|
144
|
+
}
|
|
142
145
|
updateDir() {
|
|
143
146
|
return this.root ? path.join(this.root, exports.UPDATE_DIR_NAME) : null;
|
|
144
147
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connectorUpdateApply.js","sourceRoot":"","sources":["../src/connectorUpdateApply.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"connectorUpdateApply.js","sourceRoot":"","sources":["../src/connectorUpdateApply.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* macOS connector updater handoff.
|
|
3
|
+
*
|
|
4
|
+
* The connector owns the safe-point decision. The shipped shell helper owns
|
|
5
|
+
* the signed-pkg transaction because it must use macOS trust, Installer, and
|
|
6
|
+
* launchd. Both stage and commit are detached so a download never blocks
|
|
7
|
+
* sensing and the commit helper survives the connector process it replaces.
|
|
8
|
+
*/
|
|
9
|
+
import { spawn } from 'child_process';
|
|
10
|
+
import type { ConnectorVersionManifest } from './connectorUpdate';
|
|
11
|
+
import { type ConnectorUpdateApplier } from './connectorUpdateApply';
|
|
12
|
+
import type { ConnectorUpdateOutcome } from './ConnectorStatusClient';
|
|
13
|
+
export declare const MAC_UPDATE_DIR_NAME = ".edge-auto-update";
|
|
14
|
+
/** A packaged macOS install has node in <root>/bin and the helper in share/. */
|
|
15
|
+
export declare function resolveMacInstallRoot(execPath?: string, exists?: (p: string) => boolean): string | null;
|
|
16
|
+
export interface MacApplierDeps {
|
|
17
|
+
installRoot?: string | null;
|
|
18
|
+
spawnFn?: typeof spawn;
|
|
19
|
+
readFileFn?: (p: string) => string;
|
|
20
|
+
existsFn?: (p: string) => boolean;
|
|
21
|
+
unlinkFn?: (p: string) => void;
|
|
22
|
+
pid?: number;
|
|
23
|
+
log?: (msg: string) => void;
|
|
24
|
+
}
|
|
25
|
+
export declare class MacConnectorUpdateApplier implements ConnectorUpdateApplier {
|
|
26
|
+
private readonly root;
|
|
27
|
+
private readonly spawnFn;
|
|
28
|
+
private readonly readFileFn;
|
|
29
|
+
private readonly existsFn;
|
|
30
|
+
private readonly unlinkFn;
|
|
31
|
+
private readonly pid;
|
|
32
|
+
private readonly log;
|
|
33
|
+
constructor(deps?: MacApplierDeps);
|
|
34
|
+
installRoot(): string | null;
|
|
35
|
+
canStage(manifest: ConnectorVersionManifest): boolean;
|
|
36
|
+
private updateDir;
|
|
37
|
+
private launch;
|
|
38
|
+
stage(opts: {
|
|
39
|
+
manifest: ConnectorVersionManifest;
|
|
40
|
+
currentVersion: string;
|
|
41
|
+
}): boolean;
|
|
42
|
+
commit(opts: {
|
|
43
|
+
version: string;
|
|
44
|
+
currentVersion: string;
|
|
45
|
+
}): boolean;
|
|
46
|
+
stagedVersion(): string | null;
|
|
47
|
+
readOutcome(): ConnectorUpdateOutcome | null;
|
|
48
|
+
clearOutcome(): void;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=connectorUpdateApplyMac.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connectorUpdateApplyMac.d.ts","sourceRoot":"","sources":["../src/connectorUpdateApplyMac.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAGtC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAIL,KAAK,sBAAsB,EAC5B,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEtE,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AAEvD,gFAAgF;AAChF,wBAAgB,qBAAqB,CACnC,QAAQ,GAAE,MAAyB,EACnC,MAAM,GAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAiC,GACvD,MAAM,GAAG,IAAI,CAMf;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IACvB,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACnC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B;AAED,qBAAa,yBAA0B,YAAW,sBAAsB;IACtE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAwB;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAClD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAwB;gBAEhC,IAAI,GAAE,cAAmB;IAUrC,WAAW,IAAI,MAAM,GAAG,IAAI;IAI5B,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,GAAG,OAAO;IAIrD,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,MAAM;IAoBd,KAAK,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,wBAAwB,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO;IAapF,MAAM,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO;IAWlE,aAAa,IAAI,MAAM,GAAG,IAAI;IAa9B,WAAW,IAAI,sBAAsB,GAAG,IAAI;IAY5C,YAAY,IAAI,IAAI;CASrB"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* macOS connector updater handoff.
|
|
4
|
+
*
|
|
5
|
+
* The connector owns the safe-point decision. The shipped shell helper owns
|
|
6
|
+
* the signed-pkg transaction because it must use macOS trust, Installer, and
|
|
7
|
+
* launchd. Both stage and commit are detached so a download never blocks
|
|
8
|
+
* sensing and the commit helper survives the connector process it replaces.
|
|
9
|
+
*/
|
|
10
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
13
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
14
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
15
|
+
}
|
|
16
|
+
Object.defineProperty(o, k2, desc);
|
|
17
|
+
}) : (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
o[k2] = m[k];
|
|
20
|
+
}));
|
|
21
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
22
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
23
|
+
}) : function(o, v) {
|
|
24
|
+
o["default"] = v;
|
|
25
|
+
});
|
|
26
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
27
|
+
var ownKeys = function(o) {
|
|
28
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
29
|
+
var ar = [];
|
|
30
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
31
|
+
return ar;
|
|
32
|
+
};
|
|
33
|
+
return ownKeys(o);
|
|
34
|
+
};
|
|
35
|
+
return function (mod) {
|
|
36
|
+
if (mod && mod.__esModule) return mod;
|
|
37
|
+
var result = {};
|
|
38
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
39
|
+
__setModuleDefault(result, mod);
|
|
40
|
+
return result;
|
|
41
|
+
};
|
|
42
|
+
})();
|
|
43
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
44
|
+
exports.MacConnectorUpdateApplier = exports.MAC_UPDATE_DIR_NAME = void 0;
|
|
45
|
+
exports.resolveMacInstallRoot = resolveMacInstallRoot;
|
|
46
|
+
const child_process_1 = require("child_process");
|
|
47
|
+
const fs = __importStar(require("fs"));
|
|
48
|
+
const path = __importStar(require("path"));
|
|
49
|
+
const connectorUpdateApply_1 = require("./connectorUpdateApply");
|
|
50
|
+
exports.MAC_UPDATE_DIR_NAME = '.edge-auto-update';
|
|
51
|
+
/** A packaged macOS install has node in <root>/bin and the helper in share/. */
|
|
52
|
+
function resolveMacInstallRoot(execPath = process.execPath, exists = (p) => fs.existsSync(p)) {
|
|
53
|
+
const binDir = path.dirname(execPath);
|
|
54
|
+
const root = path.dirname(binDir);
|
|
55
|
+
if (!root || root === binDir)
|
|
56
|
+
return null;
|
|
57
|
+
if (!exists(path.join(root, 'share', 'apply-update.sh')))
|
|
58
|
+
return null;
|
|
59
|
+
return root;
|
|
60
|
+
}
|
|
61
|
+
class MacConnectorUpdateApplier {
|
|
62
|
+
constructor(deps = {}) {
|
|
63
|
+
this.root = deps.installRoot !== undefined ? deps.installRoot : resolveMacInstallRoot();
|
|
64
|
+
this.spawnFn = deps.spawnFn ?? child_process_1.spawn;
|
|
65
|
+
this.readFileFn = deps.readFileFn ?? ((p) => fs.readFileSync(p, 'utf-8'));
|
|
66
|
+
this.existsFn = deps.existsFn ?? ((p) => fs.existsSync(p));
|
|
67
|
+
this.unlinkFn = deps.unlinkFn ?? ((p) => fs.unlinkSync(p));
|
|
68
|
+
this.pid = deps.pid ?? process.pid;
|
|
69
|
+
this.log = deps.log ?? (() => { });
|
|
70
|
+
}
|
|
71
|
+
installRoot() {
|
|
72
|
+
return this.root;
|
|
73
|
+
}
|
|
74
|
+
canStage(manifest) {
|
|
75
|
+
return Boolean(manifest.updateUrl && manifest.updateSha256 && manifest.updateSizeBytes);
|
|
76
|
+
}
|
|
77
|
+
updateDir() {
|
|
78
|
+
return this.root ? path.join(path.dirname(this.root), exports.MAC_UPDATE_DIR_NAME) : null;
|
|
79
|
+
}
|
|
80
|
+
launch(args) {
|
|
81
|
+
if (!this.root)
|
|
82
|
+
return false;
|
|
83
|
+
const script = path.join(this.root, 'share', 'apply-update.sh');
|
|
84
|
+
if (!this.existsFn(script))
|
|
85
|
+
return false;
|
|
86
|
+
try {
|
|
87
|
+
const child = this.spawnFn('/bin/bash', [script, ...args], {
|
|
88
|
+
detached: true,
|
|
89
|
+
stdio: 'ignore',
|
|
90
|
+
});
|
|
91
|
+
child.once('error', (err) => this.log(`[update] macOS applier failed to start: ${err.message}`));
|
|
92
|
+
child.unref();
|
|
93
|
+
return true;
|
|
94
|
+
}
|
|
95
|
+
catch (err) {
|
|
96
|
+
this.log(`[update] macOS applier could not be launched: ${err instanceof Error ? err.message : String(err)}`);
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
stage(opts) {
|
|
101
|
+
if (!this.root || !this.canStage(opts.manifest))
|
|
102
|
+
return false;
|
|
103
|
+
return this.launch([
|
|
104
|
+
'--stage',
|
|
105
|
+
'--install-dir', this.root,
|
|
106
|
+
'--update-url', opts.manifest.updateUrl,
|
|
107
|
+
'--expected-version', opts.manifest.connectorVersion,
|
|
108
|
+
'--current-version', opts.currentVersion,
|
|
109
|
+
'--expected-sha256', opts.manifest.updateSha256,
|
|
110
|
+
'--expected-size', String(opts.manifest.updateSizeBytes),
|
|
111
|
+
]);
|
|
112
|
+
}
|
|
113
|
+
commit(opts) {
|
|
114
|
+
if (!this.root)
|
|
115
|
+
return false;
|
|
116
|
+
return this.launch([
|
|
117
|
+
'--commit',
|
|
118
|
+
'--install-dir', this.root,
|
|
119
|
+
'--expected-version', opts.version,
|
|
120
|
+
'--current-version', opts.currentVersion,
|
|
121
|
+
'--wait-pid', String(this.pid),
|
|
122
|
+
]);
|
|
123
|
+
}
|
|
124
|
+
stagedVersion() {
|
|
125
|
+
const dir = this.updateDir();
|
|
126
|
+
if (!dir)
|
|
127
|
+
return null;
|
|
128
|
+
const marker = path.join(dir, connectorUpdateApply_1.STAGED_MARKER_NAME);
|
|
129
|
+
if (!this.existsFn(marker))
|
|
130
|
+
return null;
|
|
131
|
+
try {
|
|
132
|
+
const parsed = JSON.parse(this.readFileFn(marker));
|
|
133
|
+
return typeof parsed.version === 'string' && parsed.version.length > 0 ? parsed.version : null;
|
|
134
|
+
}
|
|
135
|
+
catch {
|
|
136
|
+
return null;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
readOutcome() {
|
|
140
|
+
const dir = this.updateDir();
|
|
141
|
+
if (!dir)
|
|
142
|
+
return null;
|
|
143
|
+
const file = path.join(dir, connectorUpdateApply_1.OUTCOME_FILE_NAME);
|
|
144
|
+
if (!this.existsFn(file))
|
|
145
|
+
return null;
|
|
146
|
+
try {
|
|
147
|
+
return (0, connectorUpdateApply_1.parseUpdateOutcome)(this.readFileFn(file));
|
|
148
|
+
}
|
|
149
|
+
catch {
|
|
150
|
+
return null;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
clearOutcome() {
|
|
154
|
+
const dir = this.updateDir();
|
|
155
|
+
if (!dir)
|
|
156
|
+
return;
|
|
157
|
+
try {
|
|
158
|
+
this.unlinkFn(path.join(dir, connectorUpdateApply_1.OUTCOME_FILE_NAME));
|
|
159
|
+
}
|
|
160
|
+
catch {
|
|
161
|
+
// Re-reporting is harmless; crashing the connector is not.
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
exports.MacConnectorUpdateApplier = MacConnectorUpdateApplier;
|
|
166
|
+
//# sourceMappingURL=connectorUpdateApplyMac.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connectorUpdateApplyMac.js","sourceRoot":"","sources":["../src/connectorUpdateApplyMac.ts"],"names":[],"mappings":"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"}
|
package/dist/diagnose.d.ts
CHANGED
|
@@ -31,7 +31,7 @@ export interface DiagnosticReport {
|
|
|
31
31
|
skipped: number;
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
|
-
declare const SDK_VERSION = "0.2.
|
|
34
|
+
declare const SDK_VERSION = "0.2.53";
|
|
35
35
|
declare function checkNodeVersion(): CheckResult;
|
|
36
36
|
declare function checkPlatform(): CheckResult;
|
|
37
37
|
declare function checkMemory(): CheckResult;
|
package/dist/diagnose.js
CHANGED
|
@@ -63,7 +63,7 @@ const localNetworkAccess_1 = require("./localNetworkAccess");
|
|
|
63
63
|
// ---------------------------------------------------------------------------
|
|
64
64
|
// SDK version — mirrors package.json; kept in sync by CI
|
|
65
65
|
// ---------------------------------------------------------------------------
|
|
66
|
-
const SDK_VERSION = '0.2.
|
|
66
|
+
const SDK_VERSION = '0.2.53';
|
|
67
67
|
exports._SDK_VERSION = SDK_VERSION;
|
|
68
68
|
// ---------------------------------------------------------------------------
|
|
69
69
|
// ANSI helpers (no external deps)
|