@h-rig/cli 0.0.6-alpha.89 → 0.0.6-alpha.90
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/bin/build-rig-binaries.js +8 -40
- package/dist/bin/rig.js +12519 -26675
- package/dist/src/app/board.js +74 -693
- package/dist/src/app/drone-ui.js +1 -1
- package/dist/src/app/theme.js +0 -1
- package/dist/src/commands/_async-ui.js +1 -1
- package/dist/src/commands/_authority-runs.d.ts +1 -1
- package/dist/src/commands/_authority-runs.js +12 -2
- package/dist/src/commands/_cli-format.d.ts +1 -10
- package/dist/src/commands/_cli-format.js +2 -5
- package/dist/src/commands/_connection-state.d.ts +1 -11
- package/dist/src/commands/_connection-state.js +5 -50
- package/dist/src/commands/_doctor-checks.js +40 -501
- package/dist/src/commands/_help-catalog.js +17 -99
- package/dist/src/commands/_json-output.js +0 -4
- package/dist/src/commands/_operator-view.js +54 -575
- package/dist/src/commands/_pi-frontend.d.ts +0 -27
- package/dist/src/commands/_pi-frontend.js +52 -576
- package/dist/src/commands/_preflight.js +66 -553
- package/dist/src/commands/_server-client.d.ts +0 -33
- package/dist/src/commands/_server-client.js +46 -541
- package/dist/src/commands/_snapshot-upload.js +42 -503
- package/dist/src/commands/_spinner.js +1 -1
- package/dist/src/commands/agent.js +12 -2
- package/dist/src/commands/browser.js +1 -1
- package/dist/src/commands/connect.js +15 -626
- package/dist/src/commands/doctor.js +41 -502
- package/dist/src/commands/github.js +51 -584
- package/dist/src/commands/inbox.js +41 -502
- package/dist/src/commands/init.js +74 -561
- package/dist/src/commands/inspect.js +41 -502
- package/dist/src/commands/run.js +54 -578
- package/dist/src/commands/server.js +163 -692
- package/dist/src/commands/setup.js +46 -507
- package/dist/src/commands/stats.js +58 -601
- package/dist/src/commands/task-run-driver.js +58 -509
- package/dist/src/commands/task.js +110 -729
- package/dist/src/commands.js +237 -1112
- package/dist/src/index.js +244 -1123
- package/dist/src/launcher.js +0 -4
- package/package.json +9 -13
- package/dist/src/app-opentui/adapters/command.d.ts +0 -2
- package/dist/src/app-opentui/adapters/command.js +0 -329
- package/dist/src/app-opentui/adapters/common.d.ts +0 -56
- package/dist/src/app-opentui/adapters/common.js +0 -153
- package/dist/src/app-opentui/adapters/doctor.d.ts +0 -9
- package/dist/src/app-opentui/adapters/doctor.js +0 -1217
- package/dist/src/app-opentui/adapters/family.d.ts +0 -62
- package/dist/src/app-opentui/adapters/family.js +0 -14855
- package/dist/src/app-opentui/adapters/fleet.d.ts +0 -14
- package/dist/src/app-opentui/adapters/fleet.js +0 -1335
- package/dist/src/app-opentui/adapters/inbox.d.ts +0 -43
- package/dist/src/app-opentui/adapters/inbox.js +0 -1944
- package/dist/src/app-opentui/adapters/init.d.ts +0 -11
- package/dist/src/app-opentui/adapters/init.js +0 -2818
- package/dist/src/app-opentui/adapters/inspect.d.ts +0 -52
- package/dist/src/app-opentui/adapters/inspect.js +0 -1455
- package/dist/src/app-opentui/adapters/pi-attach.d.ts +0 -32
- package/dist/src/app-opentui/adapters/pi-attach.js +0 -2101
- package/dist/src/app-opentui/adapters/pi.d.ts +0 -23
- package/dist/src/app-opentui/adapters/pi.js +0 -363
- package/dist/src/app-opentui/adapters/plugin.d.ts +0 -84
- package/dist/src/app-opentui/adapters/plugin.js +0 -544
- package/dist/src/app-opentui/adapters/repo.d.ts +0 -37
- package/dist/src/app-opentui/adapters/repo.js +0 -186
- package/dist/src/app-opentui/adapters/run-detail.d.ts +0 -27
- package/dist/src/app-opentui/adapters/run-detail.js +0 -1441
- package/dist/src/app-opentui/adapters/server.d.ts +0 -48
- package/dist/src/app-opentui/adapters/server.js +0 -1561
- package/dist/src/app-opentui/adapters/tasks.d.ts +0 -64
- package/dist/src/app-opentui/adapters/tasks.js +0 -4524
- package/dist/src/app-opentui/adapters/workspace.d.ts +0 -49
- package/dist/src/app-opentui/adapters/workspace.js +0 -333
- package/dist/src/app-opentui/autocomplete.d.ts +0 -20
- package/dist/src/app-opentui/autocomplete.js +0 -578
- package/dist/src/app-opentui/bootstrap.d.ts +0 -11
- package/dist/src/app-opentui/bootstrap.js +0 -27833
- package/dist/src/app-opentui/command-palette.d.ts +0 -3
- package/dist/src/app-opentui/command-palette.js +0 -1038
- package/dist/src/app-opentui/command-pty-host.d.ts +0 -62
- package/dist/src/app-opentui/command-pty-host.js +0 -248
- package/dist/src/app-opentui/drone.d.ts +0 -12
- package/dist/src/app-opentui/drone.js +0 -230
- package/dist/src/app-opentui/events.d.ts +0 -7
- package/dist/src/app-opentui/events.js +0 -28
- package/dist/src/app-opentui/fleet-stats.d.ts +0 -32
- package/dist/src/app-opentui/fleet-stats.js +0 -114
- package/dist/src/app-opentui/focus-manager.d.ts +0 -14
- package/dist/src/app-opentui/focus-manager.js +0 -24
- package/dist/src/app-opentui/index.d.ts +0 -8
- package/dist/src/app-opentui/index.js +0 -5260
- package/dist/src/app-opentui/intent.d.ts +0 -3
- package/dist/src/app-opentui/intent.js +0 -365
- package/dist/src/app-opentui/keymap.d.ts +0 -21
- package/dist/src/app-opentui/keymap.js +0 -1377
- package/dist/src/app-opentui/launch-routing.d.ts +0 -16
- package/dist/src/app-opentui/launch-routing.js +0 -55
- package/dist/src/app-opentui/layout.d.ts +0 -22
- package/dist/src/app-opentui/layout.js +0 -51
- package/dist/src/app-opentui/list-search.d.ts +0 -36
- package/dist/src/app-opentui/list-search.js +0 -130
- package/dist/src/app-opentui/pi-host-child.d.ts +0 -2
- package/dist/src/app-opentui/pi-host-child.js +0 -1299
- package/dist/src/app-opentui/pi-pty-host.d.ts +0 -28
- package/dist/src/app-opentui/pi-pty-host.js +0 -10
- package/dist/src/app-opentui/react/App.d.ts +0 -9
- package/dist/src/app-opentui/react/App.js +0 -3866
- package/dist/src/app-opentui/react/Backdrop.d.ts +0 -5
- package/dist/src/app-opentui/react/Backdrop.js +0 -823
- package/dist/src/app-opentui/react/ChromeHost.d.ts +0 -5
- package/dist/src/app-opentui/react/ChromeHost.js +0 -1539
- package/dist/src/app-opentui/react/SceneFrameView.d.ts +0 -7
- package/dist/src/app-opentui/react/SceneFrameView.js +0 -579
- package/dist/src/app-opentui/react/context.d.ts +0 -17
- package/dist/src/app-opentui/react/context.js +0 -37
- package/dist/src/app-opentui/react/launch.d.ts +0 -2
- package/dist/src/app-opentui/react/launch.js +0 -4897
- package/dist/src/app-opentui/react/nav.d.ts +0 -18
- package/dist/src/app-opentui/react/nav.js +0 -54
- package/dist/src/app-opentui/react/scroll.d.ts +0 -12
- package/dist/src/app-opentui/react/scroll.js +0 -21
- package/dist/src/app-opentui/react/syntax.d.ts +0 -2
- package/dist/src/app-opentui/react/syntax.js +0 -65
- package/dist/src/app-opentui/registry.d.ts +0 -4
- package/dist/src/app-opentui/registry.js +0 -22876
- package/dist/src/app-opentui/remote-link.d.ts +0 -10
- package/dist/src/app-opentui/remote-link.js +0 -47
- package/dist/src/app-opentui/render/ascii-fleet.d.ts +0 -15
- package/dist/src/app-opentui/render/ascii-fleet.js +0 -82
- package/dist/src/app-opentui/render/constants.d.ts +0 -30
- package/dist/src/app-opentui/render/constants.js +0 -64
- package/dist/src/app-opentui/render/graphics.d.ts +0 -40
- package/dist/src/app-opentui/render/graphics.js +0 -713
- package/dist/src/app-opentui/render/hover.d.ts +0 -11
- package/dist/src/app-opentui/render/hover.js +0 -34
- package/dist/src/app-opentui/render/native-host.d.ts +0 -37
- package/dist/src/app-opentui/render/native-host.js +0 -180
- package/dist/src/app-opentui/render/panel-layout.d.ts +0 -38
- package/dist/src/app-opentui/render/panel-layout.js +0 -48
- package/dist/src/app-opentui/render/panels.d.ts +0 -12
- package/dist/src/app-opentui/render/panels.js +0 -288
- package/dist/src/app-opentui/render/preloader.d.ts +0 -10
- package/dist/src/app-opentui/render/preloader.js +0 -166
- package/dist/src/app-opentui/render/scene.d.ts +0 -68
- package/dist/src/app-opentui/render/scene.js +0 -300
- package/dist/src/app-opentui/render/terminal-handoff.d.ts +0 -16
- package/dist/src/app-opentui/render/terminal-handoff.js +0 -14
- package/dist/src/app-opentui/render/text.d.ts +0 -29
- package/dist/src/app-opentui/render/text.js +0 -177
- package/dist/src/app-opentui/render/type-bar.d.ts +0 -15
- package/dist/src/app-opentui/render/type-bar.js +0 -212
- package/dist/src/app-opentui/runtime-resources.d.ts +0 -16
- package/dist/src/app-opentui/runtime-resources.js +0 -62
- package/dist/src/app-opentui/runtime.d.ts +0 -45
- package/dist/src/app-opentui/runtime.js +0 -5232
- package/dist/src/app-opentui/scenes/command.d.ts +0 -3
- package/dist/src/app-opentui/scenes/command.js +0 -118
- package/dist/src/app-opentui/scenes/doctor.d.ts +0 -3
- package/dist/src/app-opentui/scenes/doctor.js +0 -296
- package/dist/src/app-opentui/scenes/error.d.ts +0 -2
- package/dist/src/app-opentui/scenes/error.js +0 -277
- package/dist/src/app-opentui/scenes/family-domains/agent.d.ts +0 -2
- package/dist/src/app-opentui/scenes/family-domains/agent.js +0 -349
- package/dist/src/app-opentui/scenes/family-domains/browser.d.ts +0 -2
- package/dist/src/app-opentui/scenes/family-domains/browser.js +0 -196
- package/dist/src/app-opentui/scenes/family-domains/dist.d.ts +0 -2
- package/dist/src/app-opentui/scenes/family-domains/dist.js +0 -244
- package/dist/src/app-opentui/scenes/family-domains/git.d.ts +0 -2
- package/dist/src/app-opentui/scenes/family-domains/git.js +0 -196
- package/dist/src/app-opentui/scenes/family-domains/github.d.ts +0 -2
- package/dist/src/app-opentui/scenes/family-domains/github.js +0 -275
- package/dist/src/app-opentui/scenes/family-domains/harness.d.ts +0 -2
- package/dist/src/app-opentui/scenes/family-domains/harness.js +0 -153
- package/dist/src/app-opentui/scenes/family-domains/index.d.ts +0 -4
- package/dist/src/app-opentui/scenes/family-domains/index.js +0 -1680
- package/dist/src/app-opentui/scenes/family-domains/kit.d.ts +0 -76
- package/dist/src/app-opentui/scenes/family-domains/kit.js +0 -306
- package/dist/src/app-opentui/scenes/family-domains/profile.d.ts +0 -2
- package/dist/src/app-opentui/scenes/family-domains/profile.js +0 -213
- package/dist/src/app-opentui/scenes/family-domains/queue.d.ts +0 -2
- package/dist/src/app-opentui/scenes/family-domains/queue.js +0 -147
- package/dist/src/app-opentui/scenes/family-domains/remote.d.ts +0 -2
- package/dist/src/app-opentui/scenes/family-domains/remote.js +0 -519
- package/dist/src/app-opentui/scenes/family-domains/review.d.ts +0 -2
- package/dist/src/app-opentui/scenes/family-domains/review.js +0 -281
- package/dist/src/app-opentui/scenes/family-domains/setup.d.ts +0 -2
- package/dist/src/app-opentui/scenes/family-domains/setup.js +0 -268
- package/dist/src/app-opentui/scenes/family-domains/stats.d.ts +0 -2
- package/dist/src/app-opentui/scenes/family-domains/stats.js +0 -371
- package/dist/src/app-opentui/scenes/family.d.ts +0 -3
- package/dist/src/app-opentui/scenes/family.js +0 -2199
- package/dist/src/app-opentui/scenes/fleet.d.ts +0 -3
- package/dist/src/app-opentui/scenes/fleet.js +0 -766
- package/dist/src/app-opentui/scenes/handoff.d.ts +0 -2
- package/dist/src/app-opentui/scenes/handoff.js +0 -455
- package/dist/src/app-opentui/scenes/help.d.ts +0 -3
- package/dist/src/app-opentui/scenes/help.js +0 -725
- package/dist/src/app-opentui/scenes/inbox.d.ts +0 -3
- package/dist/src/app-opentui/scenes/inbox.js +0 -427
- package/dist/src/app-opentui/scenes/init.d.ts +0 -3
- package/dist/src/app-opentui/scenes/init.js +0 -181
- package/dist/src/app-opentui/scenes/inspect.d.ts +0 -3
- package/dist/src/app-opentui/scenes/inspect.js +0 -794
- package/dist/src/app-opentui/scenes/main.d.ts +0 -3
- package/dist/src/app-opentui/scenes/main.js +0 -332
- package/dist/src/app-opentui/scenes/pi.d.ts +0 -3
- package/dist/src/app-opentui/scenes/pi.js +0 -509
- package/dist/src/app-opentui/scenes/plugin.d.ts +0 -3
- package/dist/src/app-opentui/scenes/plugin.js +0 -487
- package/dist/src/app-opentui/scenes/repo.d.ts +0 -3
- package/dist/src/app-opentui/scenes/repo.js +0 -425
- package/dist/src/app-opentui/scenes/run-detail.d.ts +0 -3
- package/dist/src/app-opentui/scenes/run-detail.js +0 -467
- package/dist/src/app-opentui/scenes/server.d.ts +0 -3
- package/dist/src/app-opentui/scenes/server.js +0 -378
- package/dist/src/app-opentui/scenes/tasks.d.ts +0 -3
- package/dist/src/app-opentui/scenes/tasks.js +0 -768
- package/dist/src/app-opentui/scenes/workspace.d.ts +0 -3
- package/dist/src/app-opentui/scenes/workspace.js +0 -427
- package/dist/src/app-opentui/selectable.d.ts +0 -19
- package/dist/src/app-opentui/selectable.js +0 -80
- package/dist/src/app-opentui/state.d.ts +0 -4
- package/dist/src/app-opentui/state.js +0 -399
- package/dist/src/app-opentui/surface-catalog.d.ts +0 -20
- package/dist/src/app-opentui/surface-catalog.js +0 -542
- package/dist/src/app-opentui/theme.d.ts +0 -59
- package/dist/src/app-opentui/theme.js +0 -142
- package/dist/src/app-opentui/types.d.ts +0 -313
- package/dist/src/app-opentui/types.js +0 -1
- package/dist/src/commands/_server-events.d.ts +0 -26
- package/dist/src/commands/_server-events.js +0 -715
package/dist/src/app/drone-ui.js
CHANGED
|
@@ -105,7 +105,7 @@ function createTtySpinner(input) {
|
|
|
105
105
|
output.write("\r\x1B[2K");
|
|
106
106
|
};
|
|
107
107
|
render();
|
|
108
|
-
const timer = isTty ? setInterval(render, input.intervalMs ??
|
|
108
|
+
const timer = isTty ? setInterval(render, input.intervalMs ?? 120) : null;
|
|
109
109
|
return {
|
|
110
110
|
setLabel(next) {
|
|
111
111
|
label = next;
|
package/dist/src/app/theme.js
CHANGED
|
@@ -33,7 +33,7 @@ function createTtySpinner(input) {
|
|
|
33
33
|
output.write("\r\x1B[2K");
|
|
34
34
|
};
|
|
35
35
|
render();
|
|
36
|
-
const timer = isTty ? setInterval(render, input.intervalMs ??
|
|
36
|
+
const timer = isTty ? setInterval(render, input.intervalMs ?? 120) : null;
|
|
37
37
|
return {
|
|
38
38
|
setLabel(next) {
|
|
39
39
|
label = next;
|
|
@@ -2,7 +2,7 @@ import { type AuthorityRunRecord } from "@rig/runtime/control-plane/authority-fi
|
|
|
2
2
|
import type { RunStatus } from "@rig/contracts";
|
|
3
3
|
export declare const RIG_WORKSPACE_ID = "rig-local-workspace";
|
|
4
4
|
export type RuntimeAdapter = "claude-code" | "codex" | "pi";
|
|
5
|
-
export declare function normalizeRuntimeAdapter(
|
|
5
|
+
export declare function normalizeRuntimeAdapter(value: string | undefined): RuntimeAdapter;
|
|
6
6
|
export declare function readLatestBeadRecord(projectRoot: string, taskId: string): Record<string, unknown> | null;
|
|
7
7
|
export declare function upsertAgentAuthorityRun(projectRoot: string, input: {
|
|
8
8
|
runId: string;
|
|
@@ -16,8 +16,18 @@ function resolveControlPlaneMonorepoRoot(projectRoot) {
|
|
|
16
16
|
|
|
17
17
|
// packages/cli/src/commands/_authority-runs.ts
|
|
18
18
|
var RIG_WORKSPACE_ID = "rig-local-workspace";
|
|
19
|
-
function normalizeRuntimeAdapter(
|
|
20
|
-
|
|
19
|
+
function normalizeRuntimeAdapter(value) {
|
|
20
|
+
const normalized = value?.trim().toLowerCase();
|
|
21
|
+
if (!normalized) {
|
|
22
|
+
return "pi";
|
|
23
|
+
}
|
|
24
|
+
if (normalized === "codex" || normalized === "codex-cli" || normalized === "codex-app-server" || normalized === "gpt-codex") {
|
|
25
|
+
return "codex";
|
|
26
|
+
}
|
|
27
|
+
if (normalized === "pi" || normalized === "rig-pi" || normalized === "@rig/pi") {
|
|
28
|
+
return "pi";
|
|
29
|
+
}
|
|
30
|
+
return "claude-code";
|
|
21
31
|
}
|
|
22
32
|
function readLatestBeadRecord(projectRoot, taskId) {
|
|
23
33
|
const issuesPath = resolve(resolveControlPlaneMonorepoRoot(projectRoot), ".beads", "issues.jsonl");
|
|
@@ -46,13 +46,4 @@ export declare function formatConnectionStatus(selected: string, connections: Re
|
|
|
46
46
|
kind: string;
|
|
47
47
|
baseUrl?: string;
|
|
48
48
|
mode?: string;
|
|
49
|
-
}
|
|
50
|
-
project?: string;
|
|
51
|
-
serverProjectRoot?: string;
|
|
52
|
-
} | null, remoteProjectLink?: {
|
|
53
|
-
ok?: boolean;
|
|
54
|
-
status?: string;
|
|
55
|
-
serverProjectRoot?: string;
|
|
56
|
-
message?: string;
|
|
57
|
-
hint?: string;
|
|
58
|
-
} | null): string;
|
|
49
|
+
}>): string;
|
|
@@ -415,19 +415,16 @@ function formatConnectionList(connections) {
|
|
|
415
415
|
return [formatSection("Rig servers", `${rows.length} available`), `${pc.bold(pad("ALIAS", aliasWidth))} ${pc.bold("KIND")} ${pc.bold("TARGET")}`, ...lines, "", ...formatNextSteps(["Select one: `rig server use <alias|local>`"])].join(`
|
|
416
416
|
`);
|
|
417
417
|
}
|
|
418
|
-
function formatConnectionStatus(selected, connections
|
|
418
|
+
function formatConnectionStatus(selected, connections) {
|
|
419
419
|
const connection = selected === "local" ? { kind: "local", mode: "auto" } : connections[selected];
|
|
420
420
|
const target = !connection ? "not configured" : connection.kind === "remote" ? connection.baseUrl : "local";
|
|
421
|
-
const rootLabel = remoteProjectLink ? remoteProjectLink.ok ? `ready \xB7 ${remoteProjectLink.serverProjectRoot ?? repo?.serverProjectRoot ?? "linked"}` : `${remoteProjectLink.status ?? "needs repair"} \xB7 ${remoteProjectLink.hint ?? remoteProjectLink.message ?? "run rig server repair-link"}` : repo?.serverProjectRoot ? repo.serverProjectRoot : "not required";
|
|
422
421
|
return [
|
|
423
422
|
formatSection("Rig server", "selected for this repo"),
|
|
424
423
|
`${themeFaint("\u2502")} ${themeDim("selected ")} ${pc.bold(selected)}`,
|
|
425
424
|
`${themeFaint("\u2502")} ${themeDim("kind ")} ${formatStatusPill(connection?.kind ?? "unknown")}`,
|
|
426
425
|
`${themeFaint("\u2502")} ${themeDim("target ")} ${target ?? "not configured"}`,
|
|
427
|
-
...repo?.project ? [`${themeFaint("\u2502")} ${themeDim("project ")} ${repo.project}`] : [],
|
|
428
|
-
...connection?.kind === "remote" ? [`${themeFaint("\u2502")} ${themeDim("root ")} ${rootLabel}`] : [],
|
|
429
426
|
"",
|
|
430
|
-
...formatNextSteps(
|
|
427
|
+
...formatNextSteps(["Change: `rig server use <alias|local>`", "List saved servers: `rig server list`"])
|
|
431
428
|
].join(`
|
|
432
429
|
`);
|
|
433
430
|
}
|
|
@@ -17,10 +17,6 @@ export type RepoConnectionState = {
|
|
|
17
17
|
* Sent as the x-rig-project-root header on every remote request.
|
|
18
18
|
*/
|
|
19
19
|
serverProjectRoot?: string;
|
|
20
|
-
/** The selected alias that produced serverProjectRoot. Prevents cross-alias reuse. */
|
|
21
|
-
serverProjectRootAlias?: string;
|
|
22
|
-
/** The remote base URL that produced serverProjectRoot. Prevents same-alias retarget leaks. */
|
|
23
|
-
serverProjectRootBaseUrl?: string;
|
|
24
20
|
};
|
|
25
21
|
export declare function resolveGlobalConnectionsPath(env?: NodeJS.ProcessEnv): string;
|
|
26
22
|
export declare function resolveRepoConnectionPath(projectRoot: string): string;
|
|
@@ -43,12 +39,6 @@ export declare function resolveSelectedConnection(projectRoot: string, options?:
|
|
|
43
39
|
serverProjectRoot?: string;
|
|
44
40
|
} | null;
|
|
45
41
|
/** Persist the server-host project root this repo scopes to (multi-root serving). */
|
|
46
|
-
export declare function writeRepoServerProjectRoot(projectRoot: string, serverProjectRoot: string
|
|
47
|
-
alias?: string;
|
|
48
|
-
baseUrl?: string;
|
|
49
|
-
project?: string;
|
|
50
|
-
}): void;
|
|
51
|
-
/** Remove a stale server-host root while preserving selected server/repo state. */
|
|
52
|
-
export declare function clearRepoServerProjectRoot(projectRoot: string): void;
|
|
42
|
+
export declare function writeRepoServerProjectRoot(projectRoot: string, serverProjectRoot: string): void;
|
|
53
43
|
/** Whether this repo's selected connection targets a remote Rig server. */
|
|
54
44
|
export declare function isRemoteConnectionSelected(projectRoot: string): boolean;
|
|
@@ -100,28 +100,12 @@ function readRepoConnection(projectRoot) {
|
|
|
100
100
|
selected,
|
|
101
101
|
project: typeof record.project === "string" ? record.project : undefined,
|
|
102
102
|
linkedAt: typeof record.linkedAt === "string" ? record.linkedAt : undefined,
|
|
103
|
-
serverProjectRoot: typeof record.serverProjectRoot === "string" && record.serverProjectRoot.trim() ? record.serverProjectRoot.trim() : undefined
|
|
104
|
-
serverProjectRootAlias: typeof record.serverProjectRootAlias === "string" && record.serverProjectRootAlias.trim() ? record.serverProjectRootAlias.trim() : undefined,
|
|
105
|
-
serverProjectRootBaseUrl: typeof record.serverProjectRootBaseUrl === "string" && record.serverProjectRootBaseUrl.trim() ? record.serverProjectRootBaseUrl.trim().replace(/\/+$/, "") : undefined
|
|
103
|
+
serverProjectRoot: typeof record.serverProjectRoot === "string" && record.serverProjectRoot.trim() ? record.serverProjectRoot.trim() : undefined
|
|
106
104
|
};
|
|
107
105
|
}
|
|
108
106
|
function writeRepoConnection(projectRoot, state) {
|
|
109
107
|
writeJsonFile(resolveRepoConnectionPath(projectRoot), state);
|
|
110
108
|
}
|
|
111
|
-
function rootAllowedForSelection(repo, connection) {
|
|
112
|
-
const root = repo.serverProjectRoot?.trim();
|
|
113
|
-
if (!root)
|
|
114
|
-
return;
|
|
115
|
-
if (connection.kind === "remote") {
|
|
116
|
-
if (repo.serverProjectRootAlias !== repo.selected)
|
|
117
|
-
return;
|
|
118
|
-
if (repo.serverProjectRootBaseUrl !== connection.baseUrl)
|
|
119
|
-
return;
|
|
120
|
-
} else if (repo.serverProjectRootAlias && repo.serverProjectRootAlias !== repo.selected) {
|
|
121
|
-
return;
|
|
122
|
-
}
|
|
123
|
-
return root;
|
|
124
|
-
}
|
|
125
109
|
function resolveSelectedConnection(projectRoot, options = {}) {
|
|
126
110
|
const repo = readRepoConnection(projectRoot);
|
|
127
111
|
if (!repo)
|
|
@@ -133,41 +117,13 @@ function resolveSelectedConnection(projectRoot, options = {}) {
|
|
|
133
117
|
if (!connection) {
|
|
134
118
|
throw new CliError(`Selected Rig server "${repo.selected}" was not found. Run \`rig server list\` or \`rig server use local\`.`, 1);
|
|
135
119
|
}
|
|
136
|
-
return { alias: repo.selected, connection, serverProjectRoot:
|
|
137
|
-
}
|
|
138
|
-
function writeRepoServerProjectRoot(projectRoot, serverProjectRoot, metadata = {}) {
|
|
139
|
-
const repo = readRepoConnection(projectRoot);
|
|
140
|
-
if (!repo)
|
|
141
|
-
return;
|
|
142
|
-
let inferred = metadata;
|
|
143
|
-
if (!inferred.alias || !inferred.baseUrl) {
|
|
144
|
-
try {
|
|
145
|
-
const selected = resolveSelectedConnection(projectRoot);
|
|
146
|
-
if (selected?.connection.kind === "remote") {
|
|
147
|
-
inferred = {
|
|
148
|
-
alias: inferred.alias ?? selected.alias,
|
|
149
|
-
baseUrl: inferred.baseUrl ?? selected.connection.baseUrl
|
|
150
|
-
};
|
|
151
|
-
}
|
|
152
|
-
} catch {}
|
|
153
|
-
}
|
|
154
|
-
writeRepoConnection(projectRoot, {
|
|
155
|
-
...repo,
|
|
156
|
-
...metadata.project ? { project: metadata.project } : {},
|
|
157
|
-
serverProjectRoot,
|
|
158
|
-
...inferred.alias ? { serverProjectRootAlias: inferred.alias } : {},
|
|
159
|
-
...inferred.baseUrl ? { serverProjectRootBaseUrl: inferred.baseUrl.replace(/\/+$/, "") } : {}
|
|
160
|
-
});
|
|
120
|
+
return { alias: repo.selected, connection, serverProjectRoot: repo.serverProjectRoot };
|
|
161
121
|
}
|
|
162
|
-
function
|
|
122
|
+
function writeRepoServerProjectRoot(projectRoot, serverProjectRoot) {
|
|
163
123
|
const repo = readRepoConnection(projectRoot);
|
|
164
124
|
if (!repo)
|
|
165
125
|
return;
|
|
166
|
-
writeRepoConnection(projectRoot, {
|
|
167
|
-
selected: repo.selected,
|
|
168
|
-
...repo.project ? { project: repo.project } : {},
|
|
169
|
-
...repo.linkedAt ? { linkedAt: repo.linkedAt } : {}
|
|
170
|
-
});
|
|
126
|
+
writeRepoConnection(projectRoot, { ...repo, serverProjectRoot });
|
|
171
127
|
}
|
|
172
128
|
function isRemoteConnectionSelected(projectRoot) {
|
|
173
129
|
return resolveSelectedConnection(projectRoot)?.connection.kind === "remote";
|
|
@@ -182,6 +138,5 @@ export {
|
|
|
182
138
|
resolveGlobalConnectionsPath,
|
|
183
139
|
readRepoConnection,
|
|
184
140
|
readGlobalConnections,
|
|
185
|
-
isRemoteConnectionSelected
|
|
186
|
-
clearRepoServerProjectRoot
|
|
141
|
+
isRemoteConnectionSelected
|
|
187
142
|
};
|