@zixt/host 0.0.39 → 0.0.41
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.js +55 -11
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -31,7 +31,7 @@ import { homedir } from "node:os";
|
|
|
31
31
|
// package.json
|
|
32
32
|
var package_default = {
|
|
33
33
|
name: "@zixt/host",
|
|
34
|
-
version: "0.0.
|
|
34
|
+
version: "0.0.41",
|
|
35
35
|
type: "module",
|
|
36
36
|
exports: {
|
|
37
37
|
".": "./src/client.ts",
|
|
@@ -15215,6 +15215,7 @@ var Agent = external_exports.object({
|
|
|
15215
15215
|
updatedAt: IsoDate2
|
|
15216
15216
|
});
|
|
15217
15217
|
var HostStatus = external_exports.enum(["online", "offline", "revoked"]);
|
|
15218
|
+
var HostOperatingSystem = external_exports.enum(["linux", "macos", "windows"]);
|
|
15218
15219
|
var RunnerTelemetry = external_exports.object({
|
|
15219
15220
|
type: RunnerType,
|
|
15220
15221
|
installed: external_exports.boolean(),
|
|
@@ -15343,6 +15344,8 @@ var Host = external_exports.object({
|
|
|
15343
15344
|
id: HostId,
|
|
15344
15345
|
orgId: OrgId,
|
|
15345
15346
|
name: external_exports.string().min(1).max(120),
|
|
15347
|
+
/** Durable setup choice; null only for Machines created before it was collected. */
|
|
15348
|
+
operatingSystem: HostOperatingSystem.nullable().default(null),
|
|
15346
15349
|
status: HostStatus,
|
|
15347
15350
|
/** Persistent assignment admission; pausing never changes socket presence or live work. */
|
|
15348
15351
|
acceptingNewWork: external_exports.boolean().default(true),
|
|
@@ -15907,6 +15910,8 @@ var TaskGitSummary = external_exports.object({
|
|
|
15907
15910
|
isWorktree: external_exports.boolean().optional(),
|
|
15908
15911
|
/** False means the Task used this repository, then removed its checkout after integration. */
|
|
15909
15912
|
available: external_exports.boolean().optional(),
|
|
15913
|
+
/** False preserves the Task branch after a shared checkout switches back. */
|
|
15914
|
+
checkedOut: external_exports.boolean().optional(),
|
|
15910
15915
|
branch: taskGitSummaryLabel(512, "branch").nullable(),
|
|
15911
15916
|
ahead: external_exports.number().int().min(0),
|
|
15912
15917
|
behind: external_exports.number().int().min(0),
|
|
@@ -16147,6 +16152,8 @@ var TaskWorkingContextBase = external_exports.object({
|
|
|
16147
16152
|
isWorktree: external_exports.boolean(),
|
|
16148
16153
|
/** Absent is legacy-current; false preserves a cleaned-up Task repository as history. */
|
|
16149
16154
|
available: external_exports.boolean().optional(),
|
|
16155
|
+
/** Absent is legacy-current; false means this retained branch is no longer checked out. */
|
|
16156
|
+
checkedOut: external_exports.boolean().optional(),
|
|
16150
16157
|
/** Null is an observed detached HEAD, never an unknown branch. */
|
|
16151
16158
|
branch: safeWorkingContextLabel(512, "branch").nullable(),
|
|
16152
16159
|
headSha: external_exports.string().regex(/^(?:[a-f0-9]{40}|[a-f0-9]{64})$/).nullable(),
|
|
@@ -17722,7 +17729,9 @@ var ListAgentsResponse = external_exports.object({
|
|
|
17722
17729
|
agents: external_exports.array(Agent)
|
|
17723
17730
|
});
|
|
17724
17731
|
var CreateHostRequest = external_exports.object({
|
|
17725
|
-
name: Host.shape.name
|
|
17732
|
+
name: Host.shape.name,
|
|
17733
|
+
/** Optional only for rolling compatibility; the current UI always asks. */
|
|
17734
|
+
operatingSystem: HostOperatingSystem.optional()
|
|
17726
17735
|
});
|
|
17727
17736
|
var RenameHostRequest = external_exports.object({
|
|
17728
17737
|
name: Host.shape.name
|
|
@@ -17874,6 +17883,7 @@ var MemberHostProjection = Host.pick({
|
|
|
17874
17883
|
id: true,
|
|
17875
17884
|
orgId: true,
|
|
17876
17885
|
name: true,
|
|
17886
|
+
operatingSystem: true,
|
|
17877
17887
|
status: true,
|
|
17878
17888
|
acceptingNewWork: true,
|
|
17879
17889
|
kind: true,
|
|
@@ -33069,6 +33079,7 @@ async function repositoryState(directory, git, env, signal) {
|
|
|
33069
33079
|
root,
|
|
33070
33080
|
isWorktree: gitDirectory !== commonDirectory,
|
|
33071
33081
|
available: true,
|
|
33082
|
+
checkedOut: true,
|
|
33072
33083
|
branch,
|
|
33073
33084
|
headSha,
|
|
33074
33085
|
upstream,
|
|
@@ -33105,13 +33116,42 @@ async function collectWorkingContext(input) {
|
|
|
33105
33116
|
...uniqueRepositories.length > 0 ? { repositories: uniqueRepositories } : {}
|
|
33106
33117
|
});
|
|
33107
33118
|
}
|
|
33108
|
-
function preserveObservedRepositories(current, previous, fixedRepositoryRoots) {
|
|
33119
|
+
function preserveObservedRepositories(current, previous, fixedRepositoryRoots, initial = null) {
|
|
33109
33120
|
const fixed = new Set(fixedRepositoryRoots);
|
|
33110
33121
|
const currentRepositories = current.repositories ?? [];
|
|
33111
33122
|
const currentRoots = new Set(currentRepositories.map(({ root }) => root));
|
|
33112
|
-
const
|
|
33113
|
-
|
|
33114
|
-
|
|
33123
|
+
const previousByRoot = new Map(
|
|
33124
|
+
(previous?.repositories ?? []).map((repository) => [repository.root, repository])
|
|
33125
|
+
);
|
|
33126
|
+
const initialByRoot = new Map(
|
|
33127
|
+
(initial?.repositories ?? []).map((repository) => [repository.root, repository])
|
|
33128
|
+
);
|
|
33129
|
+
const sameRef = (left, right) => left.branch === right.branch && (left.branch !== null || left.headSha === right.headSha);
|
|
33130
|
+
const liveRepositories = currentRepositories.map((repository) => {
|
|
33131
|
+
if (!fixed.has(repository.root)) return repository;
|
|
33132
|
+
const previousRepository = previousByRoot.get(repository.root);
|
|
33133
|
+
const initialRepository = initialByRoot.get(repository.root);
|
|
33134
|
+
if (!previousRepository || !initialRepository || !sameRef(repository, initialRepository)) {
|
|
33135
|
+
return repository;
|
|
33136
|
+
}
|
|
33137
|
+
if (previousRepository.checkedOut !== false && sameRef(previousRepository, initialRepository)) {
|
|
33138
|
+
return repository;
|
|
33139
|
+
}
|
|
33140
|
+
return {
|
|
33141
|
+
...previousRepository,
|
|
33142
|
+
root: repository.root,
|
|
33143
|
+
isWorktree: repository.isWorktree,
|
|
33144
|
+
available: true,
|
|
33145
|
+
checkedOut: false
|
|
33146
|
+
};
|
|
33147
|
+
});
|
|
33148
|
+
const liveTaskRepositories = liveRepositories.filter(({ root }) => !fixed.has(root));
|
|
33149
|
+
const liveFixedRepositories = liveRepositories.filter(({ root }) => fixed.has(root));
|
|
33150
|
+
const retained = (previous?.repositories ?? []).filter(({ root }) => !fixed.has(root) && !currentRoots.has(root)).map((repository) => ({
|
|
33151
|
+
...repository,
|
|
33152
|
+
available: false,
|
|
33153
|
+
checkedOut: false
|
|
33154
|
+
}));
|
|
33115
33155
|
const repositories = [...liveTaskRepositories, ...retained, ...liveFixedRepositories].slice(
|
|
33116
33156
|
0,
|
|
33117
33157
|
20
|
|
@@ -34171,6 +34211,7 @@ ${attachmentSection}` : prompt;
|
|
|
34171
34211
|
let activeWorkingContextReport = null;
|
|
34172
34212
|
let previousWorkingContext = "";
|
|
34173
34213
|
let previousWorkingContextValue = null;
|
|
34214
|
+
let initialWorkingContextValue = null;
|
|
34174
34215
|
const observedWorkingDirectories = /* @__PURE__ */ new Set();
|
|
34175
34216
|
let observedPathRefreshPending = false;
|
|
34176
34217
|
const workingContextAbort = new AbortController();
|
|
@@ -34188,12 +34229,15 @@ ${attachmentSection}` : prompt;
|
|
|
34188
34229
|
git,
|
|
34189
34230
|
env: workingContextEnvironments.git,
|
|
34190
34231
|
signal: workingContextAbort.signal
|
|
34232
|
+
}).then((context) => {
|
|
34233
|
+
initialWorkingContextValue ??= context;
|
|
34234
|
+
return preserveObservedRepositories(
|
|
34235
|
+
context,
|
|
34236
|
+
previousWorkingContextValue,
|
|
34237
|
+
[cwd, ...preparedWorkspace ? [preparedWorkspace.path] : []],
|
|
34238
|
+
initialWorkingContextValue
|
|
34239
|
+
);
|
|
34191
34240
|
}).then(
|
|
34192
|
-
(context) => preserveObservedRepositories(context, previousWorkingContextValue, [
|
|
34193
|
-
cwd,
|
|
34194
|
-
...preparedWorkspace ? [preparedWorkspace.path] : []
|
|
34195
|
-
])
|
|
34196
|
-
).then(
|
|
34197
34241
|
(context) => pullRequests.enrich(context, ghContextCommand, {
|
|
34198
34242
|
...options.forcePullRequest ? { force: true } : {},
|
|
34199
34243
|
...gitContextCommand ? { gitCommand: gitContextCommand } : {},
|