@pushary/agent-hooks 1.9.49 → 1.9.50
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/CHANGELOG.md +4 -0
- package/dist/bin/pushary-codex-bridge.js +1 -1
- package/dist/bin/pushary-codex-session.js +1 -1
- package/dist/bin/pushary-daemon.js +2 -2
- package/dist/bin/pushary-doctor.js +2 -2
- package/dist/bin/pushary-gemini-bridge.js +1 -1
- package/dist/bin/pushary-setup.js +15 -4
- package/dist/bin/pushary-status.js +2 -2
- package/dist/bin/pushary-upgrade.js +2 -2
- package/dist/{chunk-OWQHE2VV.js → chunk-GBKSCDEK.js} +2 -0
- package/dist/{chunk-QYBL4EHD.js → chunk-GTGXQ7FJ.js} +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.9.50
|
|
4
|
+
|
|
5
|
+
- Setup no longer reports a problem when it tried to install phone-start on its own and the background service did not start. The run closes on what the approval check found, and the closing notes say phone-start is not running. `--control on` still fails the run when phone-start cannot be made ready.
|
|
6
|
+
|
|
3
7
|
## 1.9.49
|
|
4
8
|
|
|
5
9
|
- A program at a nested path under a system folder, such as `/opt/homebrew/bin/tools/cat` or `/usr/local/bin/x/zsh`, is no longer treated as the system tool of the same name. It asks a person where it used to run as a read, and `pushary codex` no longer reads a script out of a shell at such a path. Programs directly inside `/bin`, `/usr/bin`, `/usr/local/bin` and `/opt/homebrew/bin` are judged as before. The `pushary codex` half needs the matching server.
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
import {
|
|
6
6
|
HEARTBEAT_INTERVAL_MS,
|
|
7
7
|
sendHeartbeat
|
|
8
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-GTGXQ7FJ.js";
|
|
9
9
|
import "../chunk-KIO2MZQC.js";
|
|
10
10
|
import {
|
|
11
11
|
writeHuman
|
|
@@ -59,7 +59,7 @@ import {
|
|
|
59
59
|
launchableProviders,
|
|
60
60
|
resolveControlPolicy,
|
|
61
61
|
trackProviderInventory
|
|
62
|
-
} from "../chunk-
|
|
62
|
+
} from "../chunk-GBKSCDEK.js";
|
|
63
63
|
import "../chunk-RIVNNBEK.js";
|
|
64
64
|
import {
|
|
65
65
|
SESSION_REAP_SILENCE_MS,
|
|
@@ -26,7 +26,7 @@ import "../chunk-3EGEA4KH.js";
|
|
|
26
26
|
import {
|
|
27
27
|
readMachineReadiness,
|
|
28
28
|
readManagedControlEvidence
|
|
29
|
-
} from "../chunk-
|
|
29
|
+
} from "../chunk-GTGXQ7FJ.js";
|
|
30
30
|
import {
|
|
31
31
|
assessCodexHookTrust,
|
|
32
32
|
readCodexTrustForPusharyHooks
|
|
@@ -148,7 +148,7 @@ import {
|
|
|
148
148
|
expectedLaunchCapabilities,
|
|
149
149
|
hasSpawnProvider,
|
|
150
150
|
resolveControlPolicy
|
|
151
|
-
} from "../chunk-
|
|
151
|
+
} from "../chunk-GBKSCDEK.js";
|
|
152
152
|
import "../chunk-RIVNNBEK.js";
|
|
153
153
|
import "../chunk-XHKBHWLX.js";
|
|
154
154
|
import "../chunk-6ICPEJY5.js";
|
|
@@ -44,7 +44,7 @@ import "../chunk-3EGEA4KH.js";
|
|
|
44
44
|
import {
|
|
45
45
|
readManagedControlEvidence,
|
|
46
46
|
waitForMachineReadiness
|
|
47
|
-
} from "../chunk-
|
|
47
|
+
} from "../chunk-GTGXQ7FJ.js";
|
|
48
48
|
import {
|
|
49
49
|
ensureCodexTrustsPusharyHooks
|
|
50
50
|
} from "../chunk-KIO2MZQC.js";
|
|
@@ -220,8 +220,9 @@ import {
|
|
|
220
220
|
hasSpawnProvider,
|
|
221
221
|
missingControlPrerequisite,
|
|
222
222
|
nodeCodexInstallProbe,
|
|
223
|
+
phoneStartIsRequired,
|
|
223
224
|
resolveControlPolicy
|
|
224
|
-
} from "../chunk-
|
|
225
|
+
} from "../chunk-GBKSCDEK.js";
|
|
225
226
|
import {
|
|
226
227
|
detectClaudeVersion
|
|
227
228
|
} from "../chunk-RIVNNBEK.js";
|
|
@@ -693,6 +694,15 @@ var COMMAND_SURFACE = [
|
|
|
693
694
|
];
|
|
694
695
|
var SURFACE_COLUMN = Math.max(...COMMAND_SURFACE.map((entry) => entry.command.length)) + 2;
|
|
695
696
|
var renderCommandSurface = () => COMMAND_SURFACE.map((entry) => `${entry.command.padEnd(SURFACE_COLUMN)}${entry.summary}`);
|
|
697
|
+
var PHONE_START_VERIFIED_LINE = "Phone-start and steering: local and server checks passed just now. Recheck after sleep or network changes.";
|
|
698
|
+
var PHONE_START_NOT_RUNNING_LINE = "Phone-start and steering: not running on this computer. Approvals do not depend on it. Run pushary doctor to see what is missing.";
|
|
699
|
+
var PHONE_START_UNVERIFIED_LINE = "Phone-start and steering: unverified. Run pushary doctor to check the provider, background service and server route.";
|
|
700
|
+
var phoneStartStatusLine = (facts) => {
|
|
701
|
+
if (facts.managedControlReady === true) return PHONE_START_VERIFIED_LINE;
|
|
702
|
+
if (facts.daemonReady === false) return PHONE_START_NOT_RUNNING_LINE;
|
|
703
|
+
return PHONE_START_UNVERIFIED_LINE;
|
|
704
|
+
};
|
|
705
|
+
var phoneStartFailedTheRun = (facts) => facts.daemonReady === false && facts.phoneStartRequired !== false;
|
|
696
706
|
var PHONE_START_UNVERIFIED_STEPS = [
|
|
697
707
|
"Agent configuration and managed control are separate. Phone-start and steering could not be verified.",
|
|
698
708
|
"pushary daemon install install or repair the background service",
|
|
@@ -712,7 +722,7 @@ var WHAT_PHONE_START_NEEDS = {
|
|
|
712
722
|
};
|
|
713
723
|
var phoneStartProblemSteps = (missing) => missing ? [PHONE_START_CANNOT_RUN_LINE, ...WHAT_PHONE_START_NEEDS[missing], STOP_REQUIRING_PHONE_START_STEP] : PHONE_START_UNVERIFIED_STEPS;
|
|
714
724
|
var nextSteps = (facts, reachable) => {
|
|
715
|
-
const lines = ["Delivery follows the current approval mode, recipient rules and presence. pushary mode status shows the workspace setting.", facts
|
|
725
|
+
const lines = ["Delivery follows the current approval mode, recipient rules and presence. pushary mode status shows the workspace setting.", phoneStartStatusLine(facts)];
|
|
716
726
|
lines.push("Before stepping away, run pushary wait to see how long phone approvals wait and what happens if you do not answer.");
|
|
717
727
|
if (facts.staleEnvironmentKey) {
|
|
718
728
|
lines.push("Open a new terminal or unset PUSHARY_API_KEY, then run pushary doctor before starting an agent.");
|
|
@@ -767,7 +777,7 @@ var describeClosing = (facts) => {
|
|
|
767
777
|
reason: "stale-environment-key"
|
|
768
778
|
};
|
|
769
779
|
}
|
|
770
|
-
if (facts
|
|
780
|
+
if (phoneStartFailedTheRun(facts)) {
|
|
771
781
|
return {
|
|
772
782
|
ok: false,
|
|
773
783
|
headline: "Setup finished with 1 problem.",
|
|
@@ -3084,6 +3094,7 @@ var main = async () => {
|
|
|
3084
3094
|
reachesYou,
|
|
3085
3095
|
managedControlReady: !controlLifecycleFailure && managedControl.ready,
|
|
3086
3096
|
daemonReady: controlLifecycleFailure ? false : daemonReady,
|
|
3097
|
+
phoneStartRequired: phoneStartIsRequired({ mode: controlMode, policy: controlPolicy, lifecycleFailed: controlLifecycleFailure !== null }),
|
|
3087
3098
|
phoneStartMissingPrerequisite: controlMissingPrerequisite,
|
|
3088
3099
|
transcriptSync,
|
|
3089
3100
|
// null when the check did not run, so it changes nothing. Only an outright
|
|
@@ -8,7 +8,7 @@ import "../chunk-3EGEA4KH.js";
|
|
|
8
8
|
import {
|
|
9
9
|
describeLastSeen,
|
|
10
10
|
listMachines
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-GTGXQ7FJ.js";
|
|
12
12
|
import "../chunk-QCGNGEGE.js";
|
|
13
13
|
import {
|
|
14
14
|
CONNECTED_THROUGH_MAC_APP,
|
|
@@ -39,7 +39,7 @@ import {
|
|
|
39
39
|
import {
|
|
40
40
|
exitOnHelpFlag
|
|
41
41
|
} from "../chunk-BOVSUH4N.js";
|
|
42
|
-
import "../chunk-
|
|
42
|
+
import "../chunk-GBKSCDEK.js";
|
|
43
43
|
import "../chunk-RIVNNBEK.js";
|
|
44
44
|
import "../chunk-XHKBHWLX.js";
|
|
45
45
|
import "../chunk-6ICPEJY5.js";
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
} from "../chunk-HXRH7ZCK.js";
|
|
23
23
|
import {
|
|
24
24
|
waitForMachineReadiness
|
|
25
|
-
} from "../chunk-
|
|
25
|
+
} from "../chunk-GTGXQ7FJ.js";
|
|
26
26
|
import "../chunk-KIO2MZQC.js";
|
|
27
27
|
import {
|
|
28
28
|
readMacAppAgentKey
|
|
@@ -68,7 +68,7 @@ import {
|
|
|
68
68
|
expectedLaunchCapabilities,
|
|
69
69
|
hasSpawnProvider,
|
|
70
70
|
resolveControlPolicy
|
|
71
|
-
} from "../chunk-
|
|
71
|
+
} from "../chunk-GBKSCDEK.js";
|
|
72
72
|
import "../chunk-RIVNNBEK.js";
|
|
73
73
|
import "../chunk-XHKBHWLX.js";
|
|
74
74
|
import "../chunk-6ICPEJY5.js";
|
|
@@ -123,6 +123,7 @@ var missingControlPrerequisite = (input) => {
|
|
|
123
123
|
if (!input.managerAvailable) return "service-manager";
|
|
124
124
|
return null;
|
|
125
125
|
};
|
|
126
|
+
var phoneStartIsRequired = (input) => input.mode === "on" || input.policy === "legacy" || input.lifecycleFailed;
|
|
126
127
|
var preferGlobalProviderBinary = (platform) => platform === "win32";
|
|
127
128
|
var resolveProviderBinary = (provider, platform = process.platform) => preferGlobalProviderBinary(platform) ? resolveGlobalBinary(provider) ?? resolvePathBinary(provider, platform) : resolvePathBinary(provider, platform) ?? resolveGlobalBinary(provider);
|
|
128
129
|
var codexBinaryIsBroken = (binary) => codexInstallHealthAt(binary).kind === "binary-missing";
|
|
@@ -195,6 +196,7 @@ export {
|
|
|
195
196
|
hasSpawnProvider,
|
|
196
197
|
resolveControlPolicy,
|
|
197
198
|
missingControlPrerequisite,
|
|
199
|
+
phoneStartIsRequired,
|
|
198
200
|
resolveProviderBinary,
|
|
199
201
|
codexBinaryIsBroken,
|
|
200
202
|
detectProviderLiveCapabilities,
|