@halcyonlabs/app 0.47.0-halcyon.363 → 0.47.0-halcyon.371

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/dist/index.d.ts CHANGED
@@ -83,8 +83,8 @@ declare const appSettingsSchema: z$1.ZodObject<{
83
83
  providerOrder: z$1.ZodArray<z$1.ZodString>;
84
84
  defaultProviderId: z$1.ZodNullable<z$1.ZodString>;
85
85
  providerCompletedTurnDisplay: z$1.ZodRecord<z$1.ZodString, z$1.ZodEnum<{
86
- flat: "flat";
87
86
  collapse: "collapse";
87
+ flat: "flat";
88
88
  }>>;
89
89
  streamerMode: z$1.ZodBoolean;
90
90
  allowFastServiceTier: z$1.ZodBoolean;
@@ -105,8 +105,8 @@ declare const appSettingsUpdateSchema: z$1.ZodUnion<readonly [z$1.ZodObject<{
105
105
  providerOrder: z$1.ZodArray<z$1.ZodString>;
106
106
  defaultProviderId: z$1.ZodNullable<z$1.ZodString>;
107
107
  providerCompletedTurnDisplay: z$1.ZodRecord<z$1.ZodString, z$1.ZodEnum<{
108
- flat: "flat";
109
108
  collapse: "collapse";
109
+ flat: "flat";
110
110
  }>>;
111
111
  streamerMode: z$1.ZodBoolean;
112
112
  managedBranchPrefix: z$1.ZodString;
@@ -143,8 +143,8 @@ declare const appSettingsUpdateSchema: z$1.ZodUnion<readonly [z$1.ZodObject<{
143
143
  providerOrder: z$1.ZodArray<z$1.ZodString>;
144
144
  defaultProviderId: z$1.ZodNullable<z$1.ZodString>;
145
145
  providerCompletedTurnDisplay: z$1.ZodRecord<z$1.ZodString, z$1.ZodEnum<{
146
- flat: "flat";
147
146
  collapse: "collapse";
147
+ flat: "flat";
148
148
  }>>;
149
149
  streamerMode: z$1.ZodBoolean;
150
150
  machineServerUrl: z$1.ZodNullable<z$1.ZodString>;
@@ -316,8 +316,8 @@ declare const appKeybindingOverridesSchema: z$1.ZodArray<z$1.ZodObject<{
316
316
  shift: z$1.ZodBoolean;
317
317
  }, z$1.core.$strict>>;
318
318
  platform: z$1.ZodOptional<z$1.ZodEnum<{
319
- windows: "windows";
320
319
  mac: "mac";
320
+ windows: "windows";
321
321
  linux: "linux";
322
322
  }>>;
323
323
  }, z$1.core.$strict>>;
@@ -628,8 +628,8 @@ declare const hostSchema: z$1.ZodObject<{
628
628
  }, z$1.core.$strip>>;
629
629
  }, z$1.core.$strip>;
630
630
  maxPermissionMode: z$1.ZodEnum<{
631
- auto: "auto";
632
631
  full: "full";
632
+ auto: "auto";
633
633
  "accept-edits": "accept-edits";
634
634
  }>;
635
635
  delivery: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodObject<{
@@ -3176,8 +3176,8 @@ declare const threadEventSchema: z$1.ZodUnion<readonly [z$1.ZodIntersection<z$1.
3176
3176
  }>;
3177
3177
  permissionMode: z$1.ZodEnum<{
3178
3178
  readonly: "readonly";
3179
- auto: "auto";
3180
3179
  full: "full";
3180
+ auto: "auto";
3181
3181
  "accept-edits": "accept-edits";
3182
3182
  "workspace-write": "workspace-write";
3183
3183
  }>;
@@ -3975,8 +3975,8 @@ type ReasoningLevel = z$1.infer<typeof reasoningLevelSchema>;
3975
3975
  declare const serviceTierSchema: z$1.ZodString;
3976
3976
  type ServiceTier = z$1.infer<typeof serviceTierSchema>;
3977
3977
  declare const permissionModeSchema: z$1.ZodEnum<{
3978
- auto: "auto";
3979
3978
  full: "full";
3979
+ auto: "auto";
3980
3980
  "accept-edits": "accept-edits";
3981
3981
  }>;
3982
3982
  type PermissionMode = z$1.infer<typeof permissionModeSchema>;
@@ -4145,8 +4145,8 @@ declare const resolvedThreadExecutionOptionsSchema: z$1.ZodObject<{
4145
4145
  serviceTier: z$1.ZodString;
4146
4146
  reasoningLevel: z$1.ZodString;
4147
4147
  permissionMode: z$1.ZodEnum<{
4148
- auto: "auto";
4149
4148
  full: "full";
4149
+ auto: "auto";
4150
4150
  "accept-edits": "accept-edits";
4151
4151
  }>;
4152
4152
  source: z$1.ZodEnum<{
@@ -4162,8 +4162,8 @@ declare const projectExecutionDefaultsSchema: z$1.ZodObject<{
4162
4162
  serviceTier: z$1.ZodString;
4163
4163
  reasoningLevel: z$1.ZodString;
4164
4164
  permissionMode: z$1.ZodEnum<{
4165
- auto: "auto";
4166
4165
  full: "full";
4166
+ auto: "auto";
4167
4167
  "accept-edits": "accept-edits";
4168
4168
  }>;
4169
4169
  }, z$1.core.$strip>;
@@ -4203,8 +4203,8 @@ declare const providerInfoSchema: z$1.ZodObject<{
4203
4203
  supportsFork: z$1.ZodBoolean;
4204
4204
  supportsSessionRewind: z$1.ZodBoolean;
4205
4205
  permissionModes: z$1.ZodArray<z$1.ZodEnum<{
4206
- auto: "auto";
4207
4206
  full: "full";
4207
+ auto: "auto";
4208
4208
  "accept-edits": "accept-edits";
4209
4209
  }>>;
4210
4210
  modelCatalogScope: z$1.ZodEnum<{
@@ -4240,8 +4240,8 @@ declare const providerInfoSchema: z$1.ZodObject<{
4240
4240
  }, z$1.core.$strip>;
4241
4241
  }, z$1.core.$strip>], "kind">>;
4242
4242
  completedTurnDisplay: z$1.ZodEnum<{
4243
- flat: "flat";
4244
4243
  collapse: "collapse";
4244
+ flat: "flat";
4245
4245
  }>;
4246
4246
  available: z$1.ZodBoolean;
4247
4247
  strings: z$1.ZodOptional<z$1.ZodObject<{
@@ -4444,8 +4444,8 @@ declare const threadQueuedMessageSchema: z$1.ZodObject<{
4444
4444
  model: z$1.ZodString;
4445
4445
  reasoningLevel: z$1.ZodString;
4446
4446
  permissionMode: z$1.ZodEnum<{
4447
- auto: "auto";
4448
4447
  full: "full";
4448
+ auto: "auto";
4449
4449
  "accept-edits": "accept-edits";
4450
4450
  }>;
4451
4451
  serviceTier: z$1.ZodString;
@@ -5766,9 +5766,9 @@ declare const hostDaemonCommandRegistry: {
5766
5766
  }, z$1.core.$strict>, z$1.ZodDiscriminatedUnion<[z$1.ZodObject<{
5767
5767
  kind: z$1.ZodLiteral<"wording">;
5768
5768
  status: z$1.ZodEnum<{
5769
- unavailable: "unavailable";
5770
5769
  pass: "pass";
5771
5770
  revise: "revise";
5771
+ unavailable: "unavailable";
5772
5772
  }>;
5773
5773
  }, z$1.core.$strict>, z$1.ZodObject<{
5774
5774
  kind: z$1.ZodLiteral<"review">;
@@ -6129,8 +6129,8 @@ declare const hostDaemonCommandRegistry: {
6129
6129
  skillFilePath: z$1.ZodString;
6130
6130
  }, z$1.core.$strict>], "kind">>;
6131
6131
  instructionMode: z$1.ZodEnum<{
6132
- append: "append";
6133
6132
  replace: "replace";
6133
+ append: "append";
6134
6134
  }>;
6135
6135
  type: z$1.ZodLiteral<"thread.rewind.prepare">;
6136
6136
  leaseId: z$1.ZodString;
@@ -6278,8 +6278,8 @@ declare const hostDaemonCommandRegistry: {
6278
6278
  skillFilePath: z$1.ZodString;
6279
6279
  }, z$1.core.$strict>], "kind">>;
6280
6280
  instructionMode: z$1.ZodEnum<{
6281
- append: "append";
6282
6281
  replace: "replace";
6282
+ append: "append";
6283
6283
  }>;
6284
6284
  type: z$1.ZodLiteral<"thread.start">;
6285
6285
  requestId: z$1.ZodString;
@@ -6742,8 +6742,8 @@ declare const hostDaemonCommandRegistry: {
6742
6742
  envPassthrough: z$1.ZodArray<z$1.ZodString>;
6743
6743
  }, z$1.core.$strict>;
6744
6744
  instructionMode: z$1.ZodEnum<{
6745
- append: "append";
6746
6745
  replace: "replace";
6746
+ append: "append";
6747
6747
  }>;
6748
6748
  projectId: z$1.ZodString;
6749
6749
  providerId: z$1.ZodString;
@@ -6958,8 +6958,8 @@ declare const hostDaemonCommandRegistry: {
6958
6958
  envPassthrough: z$1.ZodArray<z$1.ZodString>;
6959
6959
  }, z$1.core.$strict>;
6960
6960
  instructionMode: z$1.ZodEnum<{
6961
- append: "append";
6962
6961
  replace: "replace";
6962
+ append: "append";
6963
6963
  }>;
6964
6964
  projectId: z$1.ZodString;
6965
6965
  providerId: z$1.ZodString;
@@ -7860,13 +7860,13 @@ declare const hostDaemonCommandRegistry: {
7860
7860
  modifiedAtMs: z$1.ZodOptional<z$1.ZodNumber>;
7861
7861
  sha256: z$1.ZodString;
7862
7862
  }, z$1.core.$strip>, z$1.ZodObject<{
7863
+ path: z$1.ZodString;
7863
7864
  contentEncoding: z$1.ZodEnum<{
7864
7865
  base64: "base64";
7865
7866
  utf8: "utf8";
7866
7867
  }>;
7867
7868
  sha256: z$1.ZodString;
7868
7869
  sizeBytes: z$1.ZodNumber;
7869
- path: z$1.ZodString;
7870
7870
  mimeType: z$1.ZodOptional<z$1.ZodString>;
7871
7871
  modifiedAtMs: z$1.ZodOptional<z$1.ZodNumber>;
7872
7872
  notModified: z$1.ZodLiteral<true>;
@@ -8184,8 +8184,8 @@ declare const hostDaemonCommandRegistry: {
8184
8184
  installed: z$1.ZodBoolean;
8185
8185
  installSource: z$1.ZodEnum<{
8186
8186
  notInstalled: "notInstalled";
8187
- external: "external";
8188
8187
  npmGlobal: "npmGlobal";
8188
+ external: "external";
8189
8189
  }>;
8190
8190
  currentVersion: z$1.ZodNullable<z$1.ZodString>;
8191
8191
  latestVersion: z$1.ZodNullable<z$1.ZodString>;
@@ -8735,8 +8735,8 @@ declare const providerCliStatusResponseSchema: z$1.ZodRecord<z$1.ZodString, z$1.
8735
8735
  installed: z$1.ZodBoolean;
8736
8736
  installSource: z$1.ZodEnum<{
8737
8737
  notInstalled: "notInstalled";
8738
- external: "external";
8739
8738
  npmGlobal: "npmGlobal";
8739
+ external: "external";
8740
8740
  }>;
8741
8741
  currentVersion: z$1.ZodNullable<z$1.ZodString>;
8742
8742
  latestVersion: z$1.ZodNullable<z$1.ZodString>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@halcyonlabs/app",
3
- "version": "0.47.0-halcyon.363",
3
+ "version": "0.47.0-halcyon.371",
4
4
  "description": "bb app launcher for npx",
5
5
  "keywords": [
6
6
  "bb",
@@ -105,7 +105,7 @@
105
105
  "node": "^22.19.0 || ^24.0.0 || ^26.0.0"
106
106
  },
107
107
  "moonletRelease": {
108
- "summary": "Prepare dormant mail helpers, dispatchers and units under admission (#373)"
108
+ "summary": "Give complete Rust validation a bounded window (#387)"
109
109
  },
110
110
  "license": "SEE LICENSE IN LICENSE"
111
111
  }
@@ -1,18 +1,61 @@
1
1
  #!/bin/bash
2
2
  set -euo pipefail
3
3
  umask 077
4
+ mail_runtime_parent=/run
5
+ [ "$(stat -c '%u:%a:%F' /)" = '0:755:directory' ] || exit 75
6
+ [ ! -L "$mail_runtime_parent" ] && [ "$(stat -c '%u %a %F' "$mail_runtime_parent")" = '0 755 directory' ] || exit 75
4
7
  if ! mkdir -m 700 /run/orbit-bridge-mail-signin 2>/dev/null; then
5
8
  [ ! -L /run/orbit-bridge-mail-signin ] && [ "$(stat -c '%u %a %F' /run/orbit-bridge-mail-signin)" = '0 700 directory' ] || exit 75
6
9
  fi
10
+ exec 9< "$mail_runtime_parent"
11
+ exec 7< /run/orbit-bridge-mail-signin
12
+ mail_runtime_mount=$(awk '$1 == "mnt_id:" {print $2}' /proc/self/fdinfo/9)
13
+ [[ "$mail_runtime_mount" =~ ^[0-9]+$ ]] && [ "$(awk '$1 == "mnt_id:" {print $2}' /proc/self/fdinfo/7)" = "$mail_runtime_mount" ] || exit 75
7
14
  (set -o noclobber; : > /run/orbit-bridge-mail-signin/launch.lock.maintenance) 2>/dev/null || true
8
- [ ! -L /run/orbit-bridge-mail-signin/launch.lock.maintenance ] || exit 75
15
+ mail_lock_type=$(stat -c '%F' /run/orbit-bridge-mail-signin/launch.lock.maintenance) || { echo "Mail admission metadata cannot be read" >&2; exit 75; }
16
+ [ "$mail_lock_type" = 'regular empty file' ] || [ "$mail_lock_type" = 'regular file' ] || exit 75
9
17
  exec 8<> /run/orbit-bridge-mail-signin/launch.lock.maintenance
10
- [ "$(stat -Lc '%u %a %h %F' /proc/self/fd/8)" = '0 600 1 regular empty file' ] || [ "$(stat -Lc '%u %a %h %F' /proc/self/fd/8)" = '0 600 1 regular file' ] || exit 75
18
+ mail_lock_info=$(stat -Lc '%u %a %h %F' /proc/self/fd/8) || { echo "Mail admission descriptor cannot be checked" >&2; exit 75; }
19
+ [ "$mail_lock_info" = '0 600 1 regular empty file' ] || [ "$mail_lock_info" = '0 600 1 regular file' ] || exit 75
20
+ [ "$(awk '$1 == "mnt_id:" {print $2}' /proc/self/fdinfo/8)" = "$mail_runtime_mount" ] || exit 75
21
+ exec 7<&- 9<&-
11
22
  flock -x -w 5 8 || { echo "Mail is busy; retry the station update" >&2; exit 75; }
12
- if [ -e /var/lib/orbit-mail/retired ] || [ -e /var/lib/orbit-mail/installation-owned ]; then
23
+ mail_ownership=$(/usr/bin/python3 -I -B - <<'ORBIT_MAIL_OWNERSHIP'
24
+ import os
25
+ import sys
26
+ owned = False
27
+ for name in ('retired', 'installation-owned'):
28
+ try:
29
+ os.lstat('/var/lib/orbit-mail/' + name)
30
+ except FileNotFoundError:
31
+ pass
32
+ except OSError as error:
33
+ sys.stderr.write('Mail ownership cannot be checked (errno=' + str(error.errno) + '); legacy setup refused\n')
34
+ sys.exit(75)
35
+ else:
36
+ owned = True
37
+ print('protected' if owned else 'legacy')
38
+ ORBIT_MAIL_OWNERSHIP
39
+ ) || exit 75
40
+ if [ "$mail_ownership" = protected ]; then
13
41
  echo "Protected mail owns Bridge; the legacy recipe stays dormant"
14
42
  exit 0
15
43
  fi
44
+ mail_path_state() {
45
+ /usr/bin/python3 -I -B - "$1" <<'ORBIT_MAIL_PATH'
46
+ import os
47
+ import sys
48
+ try:
49
+ os.lstat(sys.argv[1])
50
+ except FileNotFoundError:
51
+ print('absent')
52
+ except OSError as error:
53
+ sys.stderr.write('Bridge setup metadata cannot be read (errno=' + str(error.errno) + '); setup refused\n')
54
+ sys.exit(75)
55
+ else:
56
+ print('present')
57
+ ORBIT_MAIL_PATH
58
+ }
16
59
  export DEBIAN_FRONTEND=noninteractive
17
60
  bridge_version=3.18.0
18
61
  bridge_sha256=4a4b4f3efe5502d2fc1280a2abd3d3bae5091275b466d1148c1b7df27cd571b7
@@ -62,7 +105,8 @@ put() {
62
105
 
63
106
  uid=$(id -u orbit)
64
107
  as_orbit() { sudo -u orbit env XDG_RUNTIME_DIR="/run/user/$uid" DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/$uid/bus" "$@"; }
65
- if [ -e /etc/systemd/user/orbit-proton-bridge.service ]; then
108
+ legacy_unit=$(mail_path_state /etc/systemd/user/orbit-proton-bridge.service) || exit 75
109
+ if [ "$legacy_unit" = present ]; then
66
110
  as_orbit systemctl --user stop orbit-proton-bridge.service 2>/dev/null || true
67
111
  systemctl --global disable orbit-proton-bridge.service >/dev/null 2>&1 || true
68
112
  rm -f /etc/systemd/user/orbit-proton-bridge.service
@@ -74,7 +118,8 @@ sudo -u orbit rm -f /home/orbit/.config/autostart/*[Bb]ridge*.desktop
74
118
  install -d -o root -g root -m 755 /var/db/orbit
75
119
  install -d -o bridge -g bridge -m 700 /var/db/orbit/bridge
76
120
  install -d -o root -g root -m 755 /var/db/orbit/bridge-mail
77
- if ! sudo -u bridge test -e /var/db/orbit/bridge/.local/share/keyrings/default; then
121
+ legacy_keyring=$(mail_path_state /var/db/orbit/bridge/.local/share/keyrings/default) || exit 75
122
+ if [ "$legacy_keyring" = absent ]; then
78
123
  sudo -u bridge mkdir -p /var/db/orbit/bridge/.local/share/keyrings
79
124
  printf '[keyring]\ndisplay-name=Default keyring\nctime=0\nmtime=0\nlock-on-idle=false\nlock-after=false\n' | sudo -u bridge tee /var/db/orbit/bridge/.local/share/keyrings/Default_keyring.keyring >/dev/null
80
125
  printf 'Default_keyring' | sudo -u bridge tee /var/db/orbit/bridge/.local/share/keyrings/default >/dev/null
@@ -1 +1 @@
1
- ca9ef5088e0d12b1a0a62a0bcbf115659ef90104
1
+ 06034d1f797ca7e8b1f8c8e5b74a8199e34b3166