@thinkrun/cli 0.1.27
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/README.md +349 -0
- package/dist/bin/thinkrun.d.ts +6 -0
- package/dist/bin/thinkrun.d.ts.map +1 -0
- package/dist/bin/thinkrun.js +124 -0
- package/dist/bin/thinkrun.js.map +1 -0
- package/dist/scripts/browse.sh +1107 -0
- package/dist/src/adapters/cloud.d.ts +79 -0
- package/dist/src/adapters/cloud.d.ts.map +1 -0
- package/dist/src/adapters/cloud.js +637 -0
- package/dist/src/adapters/cloud.js.map +1 -0
- package/dist/src/adapters/index.d.ts +47 -0
- package/dist/src/adapters/index.d.ts.map +1 -0
- package/dist/src/adapters/index.js +211 -0
- package/dist/src/adapters/index.js.map +1 -0
- package/dist/src/adapters/local-command-retry.d.ts +12 -0
- package/dist/src/adapters/local-command-retry.d.ts.map +1 -0
- package/dist/src/adapters/local-command-retry.js +224 -0
- package/dist/src/adapters/local-command-retry.js.map +1 -0
- package/dist/src/adapters/local.d.ts +136 -0
- package/dist/src/adapters/local.d.ts.map +1 -0
- package/dist/src/adapters/local.js +1273 -0
- package/dist/src/adapters/local.js.map +1 -0
- package/dist/src/adapters/types.d.ts +45 -0
- package/dist/src/adapters/types.d.ts.map +1 -0
- package/dist/src/adapters/types.js +6 -0
- package/dist/src/adapters/types.js.map +1 -0
- package/dist/src/commands/actions.d.ts +135 -0
- package/dist/src/commands/actions.d.ts.map +1 -0
- package/dist/src/commands/actions.js +2207 -0
- package/dist/src/commands/actions.js.map +1 -0
- package/dist/src/commands/agent-init.d.ts +16 -0
- package/dist/src/commands/agent-init.d.ts.map +1 -0
- package/dist/src/commands/agent-init.js +222 -0
- package/dist/src/commands/agent-init.js.map +1 -0
- package/dist/src/commands/analyze.d.ts +11 -0
- package/dist/src/commands/analyze.d.ts.map +1 -0
- package/dist/src/commands/analyze.js +238 -0
- package/dist/src/commands/analyze.js.map +1 -0
- package/dist/src/commands/cache.d.ts +6 -0
- package/dist/src/commands/cache.d.ts.map +1 -0
- package/dist/src/commands/cache.js +147 -0
- package/dist/src/commands/cache.js.map +1 -0
- package/dist/src/commands/cloud.d.ts +6 -0
- package/dist/src/commands/cloud.d.ts.map +1 -0
- package/dist/src/commands/cloud.js +332 -0
- package/dist/src/commands/cloud.js.map +1 -0
- package/dist/src/commands/config.d.ts +7 -0
- package/dist/src/commands/config.d.ts.map +1 -0
- package/dist/src/commands/config.js +208 -0
- package/dist/src/commands/config.js.map +1 -0
- package/dist/src/commands/doctor.d.ts +127 -0
- package/dist/src/commands/doctor.d.ts.map +1 -0
- package/dist/src/commands/doctor.js +684 -0
- package/dist/src/commands/doctor.js.map +1 -0
- package/dist/src/commands/evaluate-helpers.d.ts +6 -0
- package/dist/src/commands/evaluate-helpers.d.ts.map +1 -0
- package/dist/src/commands/evaluate-helpers.js +13 -0
- package/dist/src/commands/evaluate-helpers.js.map +1 -0
- package/dist/src/commands/install.d.ts +118 -0
- package/dist/src/commands/install.d.ts.map +1 -0
- package/dist/src/commands/install.js +975 -0
- package/dist/src/commands/install.js.map +1 -0
- package/dist/src/commands/release.d.ts +7 -0
- package/dist/src/commands/release.d.ts.map +1 -0
- package/dist/src/commands/release.js +123 -0
- package/dist/src/commands/release.js.map +1 -0
- package/dist/src/commands/reset-connection.d.ts +17 -0
- package/dist/src/commands/reset-connection.d.ts.map +1 -0
- package/dist/src/commands/reset-connection.js +141 -0
- package/dist/src/commands/reset-connection.js.map +1 -0
- package/dist/src/commands/session-debug.d.ts +23 -0
- package/dist/src/commands/session-debug.d.ts.map +1 -0
- package/dist/src/commands/session-debug.js +267 -0
- package/dist/src/commands/session-debug.js.map +1 -0
- package/dist/src/commands/setup.d.ts +53 -0
- package/dist/src/commands/setup.d.ts.map +1 -0
- package/dist/src/commands/setup.js +249 -0
- package/dist/src/commands/setup.js.map +1 -0
- package/dist/src/config/store.d.ts +39 -0
- package/dist/src/config/store.d.ts.map +1 -0
- package/dist/src/config/store.js +290 -0
- package/dist/src/config/store.js.map +1 -0
- package/dist/src/daemon/access.d.ts +53 -0
- package/dist/src/daemon/access.d.ts.map +1 -0
- package/dist/src/daemon/access.js +87 -0
- package/dist/src/daemon/access.js.map +1 -0
- package/dist/src/daemon/bridge-envelope.d.ts +96 -0
- package/dist/src/daemon/bridge-envelope.d.ts.map +1 -0
- package/dist/src/daemon/bridge-envelope.js +235 -0
- package/dist/src/daemon/bridge-envelope.js.map +1 -0
- package/dist/src/daemon/utils.d.ts +43 -0
- package/dist/src/daemon/utils.d.ts.map +1 -0
- package/dist/src/daemon/utils.js +134 -0
- package/dist/src/daemon/utils.js.map +1 -0
- package/dist/src/errors.d.ts +60 -0
- package/dist/src/errors.d.ts.map +1 -0
- package/dist/src/errors.js +87 -0
- package/dist/src/errors.js.map +1 -0
- package/dist/src/local-bridge-timing.d.ts +31 -0
- package/dist/src/local-bridge-timing.d.ts.map +1 -0
- package/dist/src/local-bridge-timing.js +41 -0
- package/dist/src/local-bridge-timing.js.map +1 -0
- package/dist/src/obstacle-recovery/classify-script.d.ts +16 -0
- package/dist/src/obstacle-recovery/classify-script.d.ts.map +1 -0
- package/dist/src/obstacle-recovery/classify-script.js +53 -0
- package/dist/src/obstacle-recovery/classify-script.js.map +1 -0
- package/dist/src/obstacle-recovery/obstacle-classifier.d.ts +21 -0
- package/dist/src/obstacle-recovery/obstacle-classifier.d.ts.map +1 -0
- package/dist/src/obstacle-recovery/obstacle-classifier.js +37 -0
- package/dist/src/obstacle-recovery/obstacle-classifier.js.map +1 -0
- package/dist/src/obstacle-recovery/state-fingerprint.d.ts +26 -0
- package/dist/src/obstacle-recovery/state-fingerprint.d.ts.map +1 -0
- package/dist/src/obstacle-recovery/state-fingerprint.js +85 -0
- package/dist/src/obstacle-recovery/state-fingerprint.js.map +1 -0
- package/dist/src/obstacle-recovery/types.d.ts +44 -0
- package/dist/src/obstacle-recovery/types.d.ts.map +1 -0
- package/dist/src/obstacle-recovery/types.js +16 -0
- package/dist/src/obstacle-recovery/types.js.map +1 -0
- package/dist/src/output/formatter.d.ts +55 -0
- package/dist/src/output/formatter.d.ts.map +1 -0
- package/dist/src/output/formatter.js +55 -0
- package/dist/src/output/formatter.js.map +1 -0
- package/dist/src/output/mode.d.ts +11 -0
- package/dist/src/output/mode.d.ts.map +1 -0
- package/dist/src/output/mode.js +16 -0
- package/dist/src/output/mode.js.map +1 -0
- package/dist/src/protected-flow/detector.d.ts +26 -0
- package/dist/src/protected-flow/detector.d.ts.map +1 -0
- package/dist/src/protected-flow/detector.js +75 -0
- package/dist/src/protected-flow/detector.js.map +1 -0
- package/dist/src/protected-flow/types.d.ts +24 -0
- package/dist/src/protected-flow/types.d.ts.map +1 -0
- package/dist/src/protected-flow/types.js +28 -0
- package/dist/src/protected-flow/types.js.map +1 -0
- package/dist/src/session/agent-identity.d.ts +65 -0
- package/dist/src/session/agent-identity.d.ts.map +1 -0
- package/dist/src/session/agent-identity.js +133 -0
- package/dist/src/session/agent-identity.js.map +1 -0
- package/dist/src/session/cli-session-sync.d.ts +72 -0
- package/dist/src/session/cli-session-sync.d.ts.map +1 -0
- package/dist/src/session/cli-session-sync.js +244 -0
- package/dist/src/session/cli-session-sync.js.map +1 -0
- package/dist/src/session/context.d.ts +24 -0
- package/dist/src/session/context.d.ts.map +1 -0
- package/dist/src/session/context.js +165 -0
- package/dist/src/session/context.js.map +1 -0
- package/dist/src/session/continuity.d.ts +33 -0
- package/dist/src/session/continuity.d.ts.map +1 -0
- package/dist/src/session/continuity.js +179 -0
- package/dist/src/session/continuity.js.map +1 -0
- package/dist/src/session/errors.d.ts +9 -0
- package/dist/src/session/errors.d.ts.map +1 -0
- package/dist/src/session/errors.js +31 -0
- package/dist/src/session/errors.js.map +1 -0
- package/dist/src/session/local-continuity.d.ts +16 -0
- package/dist/src/session/local-continuity.d.ts.map +1 -0
- package/dist/src/session/local-continuity.js +146 -0
- package/dist/src/session/local-continuity.js.map +1 -0
- package/dist/src/session/signal-handler.d.ts +24 -0
- package/dist/src/session/signal-handler.d.ts.map +1 -0
- package/dist/src/session/signal-handler.js +35 -0
- package/dist/src/session/signal-handler.js.map +1 -0
- package/dist/src/shared/local-recovery-policy.d.ts +40 -0
- package/dist/src/shared/local-recovery-policy.d.ts.map +1 -0
- package/dist/src/shared/local-recovery-policy.js +59 -0
- package/dist/src/shared/local-recovery-policy.js.map +1 -0
- package/dist/src/shared/recovery-state.d.ts +3 -0
- package/dist/src/shared/recovery-state.d.ts.map +1 -0
- package/dist/src/shared/recovery-state.js +9 -0
- package/dist/src/shared/recovery-state.js.map +1 -0
- package/dist/src/types.d.ts +131 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +5 -0
- package/dist/src/types.js.map +1 -0
- package/dist/src/utils.d.ts +50 -0
- package/dist/src/utils.d.ts.map +1 -0
- package/dist/src/utils.js +147 -0
- package/dist/src/utils.js.map +1 -0
- package/dist/src/working-location.d.ts +107 -0
- package/dist/src/working-location.d.ts.map +1 -0
- package/dist/src/working-location.js +651 -0
- package/dist/src/working-location.js.map +1 -0
- package/package.json +65 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/commands/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `thinkrun release` — release the working location for the current process
|
|
3
|
+
* (or a named group), deleting the associated lock file.
|
|
4
|
+
*/
|
|
5
|
+
import { Command } from 'commander';
|
|
6
|
+
export declare function createReleaseCommand(): Command;
|
|
7
|
+
//# sourceMappingURL=release.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"release.d.ts","sourceRoot":"","sources":["../../../src/commands/release.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiCpC,wBAAgB,oBAAoB,IAAI,OAAO,CAwF9C"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `thinkrun release` — release the working location for the current process
|
|
3
|
+
* (or a named group), deleting the associated lock file.
|
|
4
|
+
*/
|
|
5
|
+
import { Command } from 'commander';
|
|
6
|
+
import chalk from 'chalk';
|
|
7
|
+
import { isJsonMode } from '../output/mode.js';
|
|
8
|
+
import { emitJson } from '../output/formatter.js';
|
|
9
|
+
import { getWorkingLocation, releaseWorkingLocation } from '../working-location.js';
|
|
10
|
+
import { closeCliSession } from '../session/cli-session-sync.js';
|
|
11
|
+
import { clearLocalSessionContext, getLocalSessionContext } from '../session/context.js';
|
|
12
|
+
import { readBridgePort } from '../utils.js';
|
|
13
|
+
import { ApiError } from '../errors.js';
|
|
14
|
+
async function unregisterLocalAgentSession(port, sessionId) {
|
|
15
|
+
const res = await fetch(`http://127.0.0.1:${port}/sessions/unregister`, {
|
|
16
|
+
method: 'DELETE',
|
|
17
|
+
headers: { 'Content-Type': 'application/json', 'x-session-id': sessionId },
|
|
18
|
+
signal: AbortSignal.timeout(10_000),
|
|
19
|
+
});
|
|
20
|
+
if (!res.ok) {
|
|
21
|
+
const body = await res.json().catch(() => ({}));
|
|
22
|
+
throw new Error(body.error || `Failed to unregister local session (HTTP ${res.status})`);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
async function lookupOwnerSessionIdForTab(port, tabId) {
|
|
26
|
+
const res = await fetch(`http://127.0.0.1:${port}/tabs`, {
|
|
27
|
+
signal: AbortSignal.timeout(10_000),
|
|
28
|
+
});
|
|
29
|
+
if (!res.ok)
|
|
30
|
+
return undefined;
|
|
31
|
+
const body = await res.json().catch(() => ({}));
|
|
32
|
+
const tabs = body.data?.tabs ?? [];
|
|
33
|
+
const match = tabs.find((tab) => tab.id === tabId);
|
|
34
|
+
return match?.ownerSessionId;
|
|
35
|
+
}
|
|
36
|
+
export function createReleaseCommand() {
|
|
37
|
+
return new Command('release')
|
|
38
|
+
.description('Release the working location (tab lock) for this process or a named group.\n' +
|
|
39
|
+
'When releasing the current process and an API key is configured, also closes the cloud activity session.\n' +
|
|
40
|
+
'(--group releases skip the cloud close — the group owner manages its own session.)')
|
|
41
|
+
.option('--group <name>', 'Release by named group instead of current process')
|
|
42
|
+
.action(async (opts) => {
|
|
43
|
+
const loc = getWorkingLocation();
|
|
44
|
+
let localCtx = undefined;
|
|
45
|
+
if (!opts.group) {
|
|
46
|
+
try {
|
|
47
|
+
localCtx = getLocalSessionContext();
|
|
48
|
+
}
|
|
49
|
+
catch (err) {
|
|
50
|
+
if (!(err instanceof ApiError))
|
|
51
|
+
throw err;
|
|
52
|
+
// Release should tolerate drifted local binding state and continue cleanup.
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
let localReleaseWarning;
|
|
56
|
+
// Capture tabId BEFORE releaseWorkingLocation clears the working location.
|
|
57
|
+
// Guard with != null so that loc.tabId === undefined produces undefined here
|
|
58
|
+
// rather than the string "undefined", which would pass the truthiness check below.
|
|
59
|
+
//
|
|
60
|
+
// When --group is provided, releaseWorkingLocation may release a different
|
|
61
|
+
// agent's named-group session rather than this process's session. We cannot
|
|
62
|
+
// determine which tabId was actually released without duplicating the group-file
|
|
63
|
+
// resolution logic, so we skip cloud session close in that case to avoid marking
|
|
64
|
+
// the wrong session completed. The cloud session will be closed by the server's
|
|
65
|
+
// session expiry or by the owning agent's own release/SIGINT handler.
|
|
66
|
+
const tabIdToClose = !opts.group && loc?.tabId != null ? String(loc.tabId) : undefined;
|
|
67
|
+
try {
|
|
68
|
+
if (!opts.group && loc?.tabId != null) {
|
|
69
|
+
const port = readBridgePort();
|
|
70
|
+
let sessionIdToUnregister;
|
|
71
|
+
if (localCtx?.tabId === String(loc.tabId) && localCtx.agentSessionId) {
|
|
72
|
+
sessionIdToUnregister = localCtx.agentSessionId;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
sessionIdToUnregister = await lookupOwnerSessionIdForTab(port, loc.tabId);
|
|
76
|
+
}
|
|
77
|
+
if (sessionIdToUnregister) {
|
|
78
|
+
await unregisterLocalAgentSession(port, sessionIdToUnregister);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
catch (err) {
|
|
83
|
+
localReleaseWarning = err instanceof Error ? err.message : String(err);
|
|
84
|
+
}
|
|
85
|
+
finally {
|
|
86
|
+
releaseWorkingLocation(opts.group);
|
|
87
|
+
if (!opts.group) {
|
|
88
|
+
clearLocalSessionContext();
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
// Fire-and-forget: close the cloud CLI session if one was registered.
|
|
92
|
+
// closeCliSession() returns void immediately; the underlying fetch is
|
|
93
|
+
// fire-and-forget and any errors are swallowed internally — it never
|
|
94
|
+
// throws to the caller.
|
|
95
|
+
if (tabIdToClose) {
|
|
96
|
+
closeCliSession(tabIdToClose, 'completed');
|
|
97
|
+
}
|
|
98
|
+
if (localReleaseWarning) {
|
|
99
|
+
process.stderr.write(`[thinkrun] warn: local release cleanup could not unregister bridge session: ${localReleaseWarning}\n`);
|
|
100
|
+
}
|
|
101
|
+
if (isJsonMode()) {
|
|
102
|
+
emitJson({
|
|
103
|
+
success: true,
|
|
104
|
+
command: 'release',
|
|
105
|
+
data: {
|
|
106
|
+
released: loc ? { tabId: loc.tabId, ...(opts.group ? { group: opts.group } : loc.group ? { group: loc.group } : {}) } : null,
|
|
107
|
+
...(localReleaseWarning ? { warning: localReleaseWarning } : {}),
|
|
108
|
+
},
|
|
109
|
+
});
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
if (loc) {
|
|
113
|
+
console.log(chalk.green('Released'), `lock for tab ${loc.tabId}`);
|
|
114
|
+
const groupName = opts.group ?? loc.group;
|
|
115
|
+
if (groupName)
|
|
116
|
+
console.log(chalk.gray(`Group: ${groupName}`));
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
console.log(chalk.gray('No active working location to release'));
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=release.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"release.js","sourceRoot":"","sources":["../../../src/commands/release.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
export type ResetConnectionResult = {
|
|
3
|
+
ok: true;
|
|
4
|
+
wasConnected: boolean;
|
|
5
|
+
connected: boolean;
|
|
6
|
+
} | {
|
|
7
|
+
ok: false;
|
|
8
|
+
code: 'TRANSPORT_DISCONNECTED';
|
|
9
|
+
lastDisconnectReason: string;
|
|
10
|
+
} | {
|
|
11
|
+
ok: false;
|
|
12
|
+
code: 'NATIVE_HOST_UNREACHABLE' | 'BRIDGE_TIMEOUT' | 'API_ERROR';
|
|
13
|
+
message: string;
|
|
14
|
+
};
|
|
15
|
+
export declare function callResetConnection(port: number, fetchFn?: typeof fetch): Promise<ResetConnectionResult>;
|
|
16
|
+
export declare function createResetConnectionCommand(): Command;
|
|
17
|
+
//# sourceMappingURL=reset-connection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reset-connection.d.ts","sourceRoot":"","sources":["../../../src/commands/reset-connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,MAAM,MAAM,qBAAqB,GAC7B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,YAAY,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GACvD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,wBAAwB,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAA;CAAE,GAC3E;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,yBAAyB,GAAG,gBAAgB,GAAG,WAAW,CAAC;IAC5E,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAExB,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC,qBAAqB,CAAC,CAsChC;AAED,wBAAgB,4BAA4B,IAAI,OAAO,CAqGtD"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import { readBridgePort, BRIDGE_REQUEST_TIMEOUT_MS } from '../utils.js';
|
|
4
|
+
import { isJsonMode } from '../output/mode.js';
|
|
5
|
+
import { emitJson, createSpinner } from '../output/formatter.js';
|
|
6
|
+
export async function callResetConnection(port, fetchFn = fetch) {
|
|
7
|
+
const url = `http://127.0.0.1:${port}/reset-connection`;
|
|
8
|
+
let response;
|
|
9
|
+
try {
|
|
10
|
+
response = await fetchFn(url, {
|
|
11
|
+
method: 'POST',
|
|
12
|
+
signal: AbortSignal.timeout(BRIDGE_REQUEST_TIMEOUT_MS),
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
catch (error) {
|
|
16
|
+
if (error?.name === 'TimeoutError') {
|
|
17
|
+
return { ok: false, code: 'BRIDGE_TIMEOUT', message: `Bridge did not respond within ${BRIDGE_REQUEST_TIMEOUT_MS}ms` };
|
|
18
|
+
}
|
|
19
|
+
const msg = error?.message ?? 'fetch failed';
|
|
20
|
+
const causeMsg = error?.cause != null ? String(error.cause) : '';
|
|
21
|
+
if (/ECONNREFUSED/i.test(msg) || /ECONNREFUSED/i.test(causeMsg)) {
|
|
22
|
+
return { ok: false, code: 'NATIVE_HOST_UNREACHABLE', message: msg };
|
|
23
|
+
}
|
|
24
|
+
return { ok: false, code: 'API_ERROR', message: msg };
|
|
25
|
+
}
|
|
26
|
+
let body = {};
|
|
27
|
+
try {
|
|
28
|
+
body = await response.json();
|
|
29
|
+
}
|
|
30
|
+
catch { /* non-JSON body */ }
|
|
31
|
+
if (response.status === 409) {
|
|
32
|
+
// flat fallback: bridge versions pre-PR #480 may omit the data wrapper
|
|
33
|
+
const reason = body?.data?.lastDisconnectReason ?? body?.lastDisconnectReason ?? 'unknown';
|
|
34
|
+
return { ok: false, code: 'TRANSPORT_DISCONNECTED', lastDisconnectReason: reason };
|
|
35
|
+
}
|
|
36
|
+
if (!response.ok || body?.success === false) {
|
|
37
|
+
return { ok: false, code: 'API_ERROR', message: body?.error ?? `HTTP ${response.status}` };
|
|
38
|
+
}
|
|
39
|
+
return {
|
|
40
|
+
ok: true,
|
|
41
|
+
wasConnected: body?.data?.wasConnected ?? false,
|
|
42
|
+
connected: body?.data?.connected ?? false,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
export function createResetConnectionCommand() {
|
|
46
|
+
return new Command('reset-connection')
|
|
47
|
+
.description('Re-arm the extension circuit breaker after a false trip (unreachable URL navigations) (supports --json)')
|
|
48
|
+
.action(async () => {
|
|
49
|
+
const startMs = Date.now();
|
|
50
|
+
const port = readBridgePort();
|
|
51
|
+
const spinner = createSpinner('Resetting connection...');
|
|
52
|
+
const result = await callResetConnection(port);
|
|
53
|
+
if (result.ok) {
|
|
54
|
+
spinner.succeed(result.wasConnected ? 'Already connected — no reset needed' : 'Circuit breaker re-armed');
|
|
55
|
+
if (isJsonMode()) {
|
|
56
|
+
emitJson({
|
|
57
|
+
success: true,
|
|
58
|
+
command: 'reset-connection',
|
|
59
|
+
durationMs: Date.now() - startMs,
|
|
60
|
+
data: result,
|
|
61
|
+
});
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
if (!result.wasConnected) {
|
|
65
|
+
console.log('');
|
|
66
|
+
console.log(` ${chalk.green('✓')} Extension connection re-established. You can now run commands normally.`);
|
|
67
|
+
}
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
if (result.code === 'TRANSPORT_DISCONNECTED') {
|
|
71
|
+
process.exitCode = 1;
|
|
72
|
+
spinner.fail('Cannot reset: extension disconnected due to a transport error (not a circuit-breaker trip)');
|
|
73
|
+
if (isJsonMode()) {
|
|
74
|
+
emitJson({
|
|
75
|
+
success: false,
|
|
76
|
+
command: 'reset-connection',
|
|
77
|
+
durationMs: Date.now() - startMs,
|
|
78
|
+
error: result.lastDisconnectReason,
|
|
79
|
+
code: 'TRANSPORT_DISCONNECTED',
|
|
80
|
+
data: { lastDisconnectReason: result.lastDisconnectReason },
|
|
81
|
+
});
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
console.log('');
|
|
85
|
+
console.log(` Reason: ${chalk.yellow(result.lastDisconnectReason)}`);
|
|
86
|
+
console.log('');
|
|
87
|
+
console.log(' To recover, try:');
|
|
88
|
+
console.log(` ${chalk.cyan('1.')} Reload the ThinkRun extension in your Chromium-based browser`);
|
|
89
|
+
console.log(` ${chalk.cyan('2.')} Run ${chalk.white('thinkrun doctor')} to diagnose`);
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
if (result.code === 'BRIDGE_TIMEOUT') {
|
|
93
|
+
process.exitCode = 1;
|
|
94
|
+
spinner.fail('Bridge is not responding');
|
|
95
|
+
if (isJsonMode()) {
|
|
96
|
+
emitJson({
|
|
97
|
+
success: false,
|
|
98
|
+
command: 'reset-connection',
|
|
99
|
+
durationMs: Date.now() - startMs,
|
|
100
|
+
error: result.message,
|
|
101
|
+
code: 'BRIDGE_TIMEOUT',
|
|
102
|
+
});
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
console.log(chalk.red(' Bridge did not respond in time.'));
|
|
106
|
+
console.log(` Run ${chalk.cyan('thinkrun doctor')} to diagnose.`);
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
if (result.code === 'NATIVE_HOST_UNREACHABLE') {
|
|
110
|
+
process.exitCode = 1;
|
|
111
|
+
spinner.fail('Could not reach local bridge');
|
|
112
|
+
if (isJsonMode()) {
|
|
113
|
+
emitJson({
|
|
114
|
+
success: false,
|
|
115
|
+
command: 'reset-connection',
|
|
116
|
+
durationMs: Date.now() - startMs,
|
|
117
|
+
error: result.message,
|
|
118
|
+
code: 'NATIVE_HOST_UNREACHABLE',
|
|
119
|
+
});
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
console.log(chalk.red(' Bridge is not running.'));
|
|
123
|
+
console.log(` Make sure the ThinkRun extension is active, then run: ${chalk.cyan('thinkrun doctor')}`);
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
process.exitCode = 1;
|
|
127
|
+
spinner.fail('Reset failed');
|
|
128
|
+
if (isJsonMode()) {
|
|
129
|
+
emitJson({
|
|
130
|
+
success: false,
|
|
131
|
+
command: 'reset-connection',
|
|
132
|
+
durationMs: Date.now() - startMs,
|
|
133
|
+
error: result.message,
|
|
134
|
+
code: result.code,
|
|
135
|
+
});
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
console.log(chalk.red(` Error: ${result.message}`));
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=reset-connection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reset-connection.js","sourceRoot":"","sources":["../../../src/commands/reset-connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Authoritative session diagnostics — resolved mode, bindings, bridge, API, and command routing.
|
|
3
|
+
*/
|
|
4
|
+
import { Command } from 'commander';
|
|
5
|
+
import { type WorkingLocation } from '../working-location.js';
|
|
6
|
+
import { type LocalContinuityAssessment } from '../session/local-continuity.js';
|
|
7
|
+
export type PersistedLocalBinding = {
|
|
8
|
+
tabId: string;
|
|
9
|
+
agentSessionId?: string;
|
|
10
|
+
controlSessionId?: string;
|
|
11
|
+
};
|
|
12
|
+
export type WorkingLocationBinding = Pick<WorkingLocation, 'tabId' | 'windowId' | 'group' | 'agentId' | 'ownerShellPid'>;
|
|
13
|
+
export type SessionDebugLocalState = {
|
|
14
|
+
persistedLocalBinding: PersistedLocalBinding | null;
|
|
15
|
+
workingLocation: WorkingLocationBinding | null;
|
|
16
|
+
effectiveLocalTabId: string | null;
|
|
17
|
+
driftDetected: boolean;
|
|
18
|
+
driftWarning: string | null;
|
|
19
|
+
continuity: LocalContinuityAssessment;
|
|
20
|
+
};
|
|
21
|
+
export declare function deriveSessionDebugLocalState(persistedLocalBinding?: PersistedLocalBinding, workingLocation?: WorkingLocation | null): SessionDebugLocalState;
|
|
22
|
+
export declare function createSessionDebugCommand(): Command;
|
|
23
|
+
//# sourceMappingURL=session-debug.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-debug.d.ts","sourceRoot":"","sources":["../../../src/commands/session-debug.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,OAAO,EAA2C,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACvG,OAAO,EAAyB,KAAK,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAYvG,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,eAAe,EAAE,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,eAAe,CAAC,CAAC;AAEzH,MAAM,MAAM,sBAAsB,GAAG;IACnC,qBAAqB,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACpD,eAAe,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC/C,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,yBAAyB,CAAC;CACvC,CAAC;AAEF,wBAAgB,4BAA4B,CAC1C,qBAAqB,CAAC,EAAE,qBAAqB,EAC7C,eAAe,CAAC,EAAE,eAAe,GAAG,IAAI,GACvC,sBAAsB,CAuCxB;AA2ED,wBAAgB,yBAAyB,IAAI,OAAO,CAkMnD"}
|