@songsid/agend 2.3.5-alpha.2 → 2.3.5-alpha.4
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/agend-home.d.ts +13 -0
- package/dist/agend-home.js +42 -0
- package/dist/agend-home.js.map +1 -1
- package/dist/agent-runtime-api.d.ts +4 -0
- package/dist/agent-runtime-api.js +59 -0
- package/dist/agent-runtime-api.js.map +1 -0
- package/dist/agent-runtime-change.d.ts +74 -0
- package/dist/agent-runtime-change.js +102 -0
- package/dist/agent-runtime-change.js.map +1 -0
- package/dist/auth-api.d.ts +21 -0
- package/dist/auth-api.js +95 -4
- package/dist/auth-api.js.map +1 -1
- package/dist/authority/web-authority.d.ts +12 -2
- package/dist/authority/web-authority.js +25 -4
- package/dist/authority/web-authority.js.map +1 -1
- package/dist/backend/claude-code.js +16 -1
- package/dist/backend/claude-code.js.map +1 -1
- package/dist/backend/codex-footer-hints.d.ts +4 -0
- package/dist/backend/codex-footer-hints.js +27 -0
- package/dist/backend/codex-footer-hints.js.map +1 -0
- package/dist/backend/codex.js +19 -11
- package/dist/backend/codex.js.map +1 -1
- package/dist/backend/kiro-identity.d.ts +2 -0
- package/dist/backend/kiro-identity.js +13 -6
- package/dist/backend/kiro-identity.js.map +1 -1
- package/dist/backend/kiro.js +18 -3
- package/dist/backend/kiro.js.map +1 -1
- package/dist/backend-availability.d.ts +6 -0
- package/dist/backend-availability.js +13 -5
- package/dist/backend-availability.js.map +1 -1
- package/dist/channel/mcp-tools.js +1 -1
- package/dist/channel/mcp-tools.js.map +1 -1
- package/dist/cli.js +6 -9
- package/dist/cli.js.map +1 -1
- package/dist/config-validator.js +12 -1
- package/dist/config-validator.js.map +1 -1
- package/dist/daemon.d.ts +5 -0
- package/dist/daemon.js +107 -30
- package/dist/daemon.js.map +1 -1
- package/dist/fleet-manager.d.ts +146 -8
- package/dist/fleet-manager.js +1030 -166
- package/dist/fleet-manager.js.map +1 -1
- package/dist/fleet-windows-runtime.d.ts +6 -1
- package/dist/fleet-windows-runtime.js +77 -1
- package/dist/fleet-windows-runtime.js.map +1 -1
- package/dist/fleet-yaml-patch.d.ts +3 -0
- package/dist/fleet-yaml-patch.js +103 -0
- package/dist/fleet-yaml-patch.js.map +1 -0
- package/dist/general-binding.d.ts +85 -0
- package/dist/general-binding.js +298 -0
- package/dist/general-binding.js.map +1 -0
- package/dist/general-host-owner.d.ts +8 -0
- package/dist/general-host-owner.js +26 -0
- package/dist/general-host-owner.js.map +1 -0
- package/dist/general-instance.d.ts +7 -0
- package/dist/general-instance.js +20 -3
- package/dist/general-instance.js.map +1 -1
- package/dist/general-knowledge/skills/model-discovery/SKILL.md +2 -0
- package/dist/general-role.d.ts +5 -0
- package/dist/general-role.js +26 -0
- package/dist/general-role.js.map +1 -0
- package/dist/instance-lifecycle.d.ts +1 -0
- package/dist/instance-lifecycle.js +26 -4
- package/dist/instance-lifecycle.js.map +1 -1
- package/dist/instructions.d.ts +2 -0
- package/dist/instructions.js +6 -0
- package/dist/instructions.js.map +1 -1
- package/dist/kiro-resume-summary.d.ts +37 -0
- package/dist/kiro-resume-summary.js +85 -0
- package/dist/kiro-resume-summary.js.map +1 -0
- package/dist/locale.js +59 -0
- package/dist/locale.js.map +1 -1
- package/dist/login-controller.js +9 -1
- package/dist/login-controller.js.map +1 -1
- package/dist/native-pane-lifecycle.js +4 -1
- package/dist/native-pane-lifecycle.js.map +1 -1
- package/dist/native-pane-manager.d.ts +1 -0
- package/dist/native-pane-manager.js +23 -2
- package/dist/native-pane-manager.js.map +1 -1
- package/dist/needs-you-hub.js +1 -1
- package/dist/needs-you-hub.js.map +1 -1
- package/dist/needs-you.d.ts +8 -1
- package/dist/needs-you.js +5 -2
- package/dist/needs-you.js.map +1 -1
- package/dist/office-share-page.js +1 -1
- package/dist/office-share-page.js.map +1 -1
- package/dist/package-preimage.js +27 -2
- package/dist/package-preimage.js.map +1 -1
- package/dist/pane-port.d.ts +11 -0
- package/dist/public-web-gateway.js +9 -0
- package/dist/public-web-gateway.js.map +1 -1
- package/dist/public-web-link.d.ts +11 -0
- package/dist/public-web-link.js +13 -0
- package/dist/public-web-link.js.map +1 -1
- package/dist/quickstart-api.js +9 -5
- package/dist/quickstart-api.js.map +1 -1
- package/dist/quickstart.d.ts +1 -0
- package/dist/quickstart.js +4 -1
- package/dist/quickstart.js.map +1 -1
- package/dist/reply-buttons-controller.js +10 -0
- package/dist/reply-buttons-controller.js.map +1 -1
- package/dist/runtime-api.js +84 -9
- package/dist/runtime-api.js.map +1 -1
- package/dist/runtime-build-info.d.ts +9 -0
- package/dist/runtime-build-info.js +57 -0
- package/dist/runtime-build-info.js.map +1 -0
- package/dist/runtime-bundle.d.ts +3 -1
- package/dist/runtime-bundle.js +17 -8
- package/dist/runtime-bundle.js.map +1 -1
- package/dist/runtime-cli.d.ts +6 -1
- package/dist/runtime-cli.js +46 -11
- package/dist/runtime-cli.js.map +1 -1
- package/dist/runtime-client-store.d.ts +20 -1
- package/dist/runtime-client-store.js +56 -4
- package/dist/runtime-client-store.js.map +1 -1
- package/dist/runtime-client.d.ts +12 -0
- package/dist/runtime-client.js +43 -7
- package/dist/runtime-client.js.map +1 -1
- package/dist/runtime-connection.d.ts +22 -0
- package/dist/runtime-connection.js +93 -0
- package/dist/runtime-connection.js.map +1 -0
- package/dist/runtime-coordinator.d.ts +9 -0
- package/dist/runtime-coordinator.js +81 -34
- package/dist/runtime-coordinator.js.map +1 -1
- package/dist/runtime-general-protocol.d.ts +22 -0
- package/dist/runtime-general-protocol.js +57 -0
- package/dist/runtime-general-protocol.js.map +1 -0
- package/dist/runtime-general-workspace.d.ts +17 -0
- package/dist/runtime-general-workspace.js +213 -0
- package/dist/runtime-general-workspace.js.map +1 -0
- package/dist/runtime-pane-assets.d.ts +1 -1
- package/dist/runtime-pane-assets.js +1 -1
- package/dist/runtime-pane-assets.js.map +1 -1
- package/dist/runtime-pane-boot.d.ts +7 -0
- package/dist/runtime-pane-boot.js +23 -0
- package/dist/runtime-pane-boot.js.map +1 -1
- package/dist/runtime-pane-host.d.ts +1 -0
- package/dist/runtime-pane-host.js +22 -1
- package/dist/runtime-pane-host.js.map +1 -1
- package/dist/runtime-pane-mcp.d.ts +8 -0
- package/dist/runtime-pane-mcp.js +15 -2
- package/dist/runtime-pane-mcp.js.map +1 -1
- package/dist/runtime-pane-port.d.ts +6 -1
- package/dist/runtime-pane-port.js +21 -0
- package/dist/runtime-pane-port.js.map +1 -1
- package/dist/runtime-pane-protocol.d.ts +4 -1
- package/dist/runtime-pane-protocol.js +7 -1
- package/dist/runtime-pane-protocol.js.map +1 -1
- package/dist/runtime-protocol.d.ts +13 -0
- package/dist/runtime-protocol.js +18 -0
- package/dist/runtime-protocol.js.map +1 -1
- package/dist/settings-api.d.ts +5 -0
- package/dist/settings-api.js +37 -1
- package/dist/settings-api.js.map +1 -1
- package/dist/settings-baseline.d.ts +1 -0
- package/dist/settings-baseline.js +1 -1
- package/dist/settings-baseline.js.map +1 -1
- package/dist/settings-confirmation.d.ts +1 -0
- package/dist/settings-confirmation.js +1 -0
- package/dist/settings-confirmation.js.map +1 -1
- package/dist/settings-effect.d.ts +4 -0
- package/dist/settings-effect.js +36 -1
- package/dist/settings-effect.js.map +1 -1
- package/dist/settings-http-confirmation.d.ts +4 -0
- package/dist/settings-http-confirmation.js +20 -1
- package/dist/settings-http-confirmation.js.map +1 -1
- package/dist/settings-request-capability.d.ts +2 -0
- package/dist/settings-request-capability.js +4 -0
- package/dist/settings-request-capability.js.map +1 -1
- package/dist/settings-route-lifetime.d.ts +14 -0
- package/dist/settings-route-lifetime.js +48 -0
- package/dist/settings-route-lifetime.js.map +1 -0
- package/dist/settings-transaction.d.ts +4 -0
- package/dist/settings-transaction.js +9 -0
- package/dist/settings-transaction.js.map +1 -1
- package/dist/setup-form.js +6 -3
- package/dist/setup-form.js.map +1 -1
- package/dist/setup-i18n.js +3 -0
- package/dist/setup-i18n.js.map +1 -1
- package/dist/stall-reporter.d.ts +21 -0
- package/dist/stall-reporter.js +82 -0
- package/dist/stall-reporter.js.map +1 -0
- package/dist/tmux-control.d.ts +2 -2
- package/dist/tmux-control.js +4 -2
- package/dist/tmux-control.js.map +1 -1
- package/dist/tmux-exec-helper.d.ts +6 -3
- package/dist/tmux-exec-helper.js +115 -53
- package/dist/tmux-exec-helper.js.map +1 -1
- package/dist/tool-permissions.js +2 -1
- package/dist/tool-permissions.js.map +1 -1
- package/dist/tunnel/cloudflared-install.d.ts +4 -0
- package/dist/tunnel/cloudflared-install.js +20 -1
- package/dist/tunnel/cloudflared-install.js.map +1 -1
- package/dist/tunnel/cloudflared.d.ts +8 -1
- package/dist/tunnel/cloudflared.js +34 -6
- package/dist/tunnel/cloudflared.js.map +1 -1
- package/dist/tunnel/lease.d.ts +3 -3
- package/dist/tunnel/lease.js +23 -19
- package/dist/tunnel/lease.js.map +1 -1
- package/dist/tunnel/manager.js +6 -7
- package/dist/tunnel/manager.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/ui/agent-proposals.js +2 -2
- package/dist/ui/agent-runtime-settings.js +67 -0
- package/dist/ui/agent-runtime.js +20 -2
- package/dist/ui/backend-signin.js +36 -21
- package/dist/ui/general-location.js +71 -0
- package/dist/ui/native-instance-settings.js +5 -8
- package/dist/ui/native-pane-recovery.js +1 -1
- package/dist/ui/panel-chat.js +5 -2
- package/dist/ui/panel-fleet.js +4 -2
- package/dist/ui/panel-needs.js +2 -0
- package/dist/ui/panel-runtimes.js +136 -33
- package/dist/ui/panel-settings.js +227 -138
- package/dist/ui/panel-windows-cli.js +77 -41
- package/dist/ui/settings-agent-filters.js +94 -0
- package/dist/ui/settings-appearance.js +122 -23
- package/dist/ui/settings-dialogs.js +13 -7
- package/dist/ui/settings-guests.js +25 -11
- package/dist/ui/settings-layout.js +245 -0
- package/dist/ui/settings-model.js +10 -1
- package/dist/ui/settings-outside.js +176 -0
- package/dist/ui/settings-registry.js +6 -3
- package/dist/ui/settings-shortcuts.js +65 -0
- package/dist/ui/settings-strings.js +95 -0
- package/dist/ui/settings-web-authority.js +14 -11
- package/dist/ui/shared/app-i18n.js +2 -2
- package/dist/ui/shared/app-shell.js +17 -7
- package/dist/ui/shared/app.css +1038 -13
- package/dist/ui/shared/instance-nav.js +16 -5
- package/dist/ui/shared/machine-name.js +13 -0
- package/dist/ui/shared/panel-view.js +266 -17
- package/dist/ui/shared/qrcode.module.js +2237 -0
- package/dist/ui/shared/settings-width.js +31 -0
- package/dist/ui/shared/signin.js +39 -5
- package/dist/ui/shared/tokens.css +1 -0
- package/dist/ui/shared/ui-dialog.js +2 -2
- package/dist/ui/shared/ui-menu.js +3 -3
- package/dist/ui/shared/vendor/qrcode-generator.LICENSE +27 -0
- package/dist/ui/shared/vendor/vendor.json +19 -2
- package/dist/ui/shared/view-strings.js +28 -0
- package/dist/ui/windows-cli-catalog.js +41 -12
- package/dist/unattended-install.d.ts +1 -1
- package/dist/unattended-install.js +19 -5
- package/dist/unattended-install.js.map +1 -1
- package/dist/update-check.d.ts +2 -8
- package/dist/update-check.js +2 -5
- package/dist/update-check.js.map +1 -1
- package/dist/view-api.d.ts +15 -0
- package/dist/view-api.js +94 -33
- package/dist/view-api.js.map +1 -1
- package/dist/web-api.d.ts +13 -0
- package/dist/web-api.js +80 -0
- package/dist/web-api.js.map +1 -1
- package/dist/web-login.d.ts +4 -3
- package/dist/web-login.js +23 -14
- package/dist/web-login.js.map +1 -1
- package/dist/web-only-fleet.d.ts +20 -0
- package/dist/web-only-fleet.js +21 -0
- package/dist/web-only-fleet.js.map +1 -1
- package/dist/web-remote-access.d.ts +152 -0
- package/dist/web-remote-access.js +368 -0
- package/dist/web-remote-access.js.map +1 -0
- package/dist/web-session.d.ts +12 -0
- package/dist/web-session.js +22 -8
- package/dist/web-session.js.map +1 -1
- package/dist/windows-agents.d.ts +15 -1
- package/dist/windows-agents.js +37 -10
- package/dist/windows-agents.js.map +1 -1
- package/dist/windows-cli-api.js +2 -1
- package/dist/windows-cli-api.js.map +1 -1
- package/dist/windows-cli-worker.d.ts +1 -0
- package/dist/windows-cli-worker.js +2 -2
- package/dist/windows-cli-worker.js.map +1 -1
- package/dist/windows-cli.d.ts +1 -0
- package/dist/windows-cli.js +7 -2
- package/dist/windows-cli.js.map +1 -1
- package/launcher/agend-install.cjs +16 -2
- package/package.json +1 -1
package/dist/fleet-manager.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import { AgentRuntimeChanges } from "./agent-runtime-change.js";
|
|
1
2
|
import { type HumanOrigin } from "./human-delivery-receipts.js";
|
|
2
3
|
import { type SettingsPendingView } from "./settings-confirmation.js";
|
|
4
|
+
import { type GeneralSwitchInput } from "./general-binding.js";
|
|
3
5
|
import { SettingsExecution } from "./settings-transaction.js";
|
|
4
6
|
import { AppIconStore } from "./web-app-icon.js";
|
|
5
7
|
import { type NamedTestResult } from "./tunnel/named-link-test.js";
|
|
@@ -107,6 +109,7 @@ import { type CacheReport } from "./cache-service.js";
|
|
|
107
109
|
import { type WebCommandResult } from "./web-commands.js";
|
|
108
110
|
import { type SessionRecord } from "./web-session.js";
|
|
109
111
|
import { WebNotices } from "./web-notices.js";
|
|
112
|
+
import { WebRemoteAccess } from "./web-remote-access.js";
|
|
110
113
|
import { VERIFIED_SESSION_HOURS, type HumanAuthority, type WebAuthorityRefusal, type WebAuthorityResult, type WebPeer } from "./authority/web-authority.js";
|
|
111
114
|
import { type AuthorityState } from "./authority/authority-state.js";
|
|
112
115
|
import { type SessionAuthorization } from "./authority/session-authorizations.js";
|
|
@@ -172,6 +175,11 @@ export interface RestartOpts {
|
|
|
172
175
|
sessionOomRetry?: SessionOomRetry;
|
|
173
176
|
/** Internal pre-invalidation owner fence for an unclear-OOM action. */
|
|
174
177
|
recoveryCurrent?: () => boolean;
|
|
178
|
+
/**
|
|
179
|
+
* #1490 row 27: the lifecycle the caller acts for (lifecyclePin), asked before anything is invalidated. A button or
|
|
180
|
+
* menu offered for one instance never restarts a later one of the same name, or one restarted since.
|
|
181
|
+
*/
|
|
182
|
+
ownerCurrent?: () => boolean;
|
|
175
183
|
carry?: {
|
|
176
184
|
backend: string;
|
|
177
185
|
from: string | null;
|
|
@@ -281,6 +289,11 @@ export type GuestAuditEntry = {
|
|
|
281
289
|
name: string;
|
|
282
290
|
outcome: string;
|
|
283
291
|
};
|
|
292
|
+
/** #1490 row 27: a restart asked for one lifecycle of an instance after it was stopped, restarted or replaced. */
|
|
293
|
+
export declare class RestartSupersededError extends Error {
|
|
294
|
+
/** `shown`: the instance as the chat list names it (shownInstanceName). */
|
|
295
|
+
constructor(shown: string);
|
|
296
|
+
}
|
|
284
297
|
export declare class FleetManager implements FleetContext, LifecycleContext, ArchiverContext, StatuslineWatcherContext, OutboundContext, AgentEndpointContext {
|
|
285
298
|
dataDir: string;
|
|
286
299
|
private static signalTarget;
|
|
@@ -338,6 +351,8 @@ export declare class FleetManager implements FleetContext, LifecycleContext, Arc
|
|
|
338
351
|
nativeMcpSessions(): NativeMcpSessions;
|
|
339
352
|
/** The same instance registry and delivery entry point, with a native Windows execution adapter. */
|
|
340
353
|
nativeInstanceRuntime(): FleetWindowsRuntime;
|
|
354
|
+
private agentRuntimeChangeService?;
|
|
355
|
+
agentRuntimeChanges(): AgentRuntimeChanges;
|
|
341
356
|
/** Explicit dashboard opt-in, with the same General confirmation and ordinary topic/Daemon routing. */
|
|
342
357
|
createNativePaneInstance(profile: Record<string, unknown>, channelId: string | undefined, authorized: () => boolean, execution: SettingsExecution): Promise<{
|
|
343
358
|
name: string;
|
|
@@ -349,6 +364,29 @@ export declare class FleetManager implements FleetContext, LifecycleContext, Arc
|
|
|
349
364
|
private localNativePaneEndpoint;
|
|
350
365
|
/** Persistent ownership is independent of the exec worker's per-turn capabilities. */
|
|
351
366
|
private nativePanes;
|
|
367
|
+
/** Prepare only bundled role files; this neither switches General nor starts a provider process. */
|
|
368
|
+
prepareWindowsGeneralWorkspace(name: string, machineId: string, cli: "codex" | "claude-code", bindingId: string, authorized: () => boolean): Promise<import("./runtime-general-protocol.js").GeneralWorkspaceReceipt>;
|
|
369
|
+
private readonly generalLocationFlights;
|
|
370
|
+
private readonly generalAttentionEpisodes;
|
|
371
|
+
private generalBindings;
|
|
372
|
+
generalLocations(): unknown;
|
|
373
|
+
/** Pure preflight for the confirmation diff and stale-tab refusal; never prepares files or starts a CLI. */
|
|
374
|
+
previewGeneralLocation(raw: unknown): {
|
|
375
|
+
input: GeneralSwitchInput;
|
|
376
|
+
summary: string[];
|
|
377
|
+
connections: string[];
|
|
378
|
+
};
|
|
379
|
+
/** All entry points, including automatic native recovery, must respect an interrupted binding switch. */
|
|
380
|
+
assertGeneralBindingStart(name: string, config: InstanceConfig): void;
|
|
381
|
+
/** Only the Settings replay's confirmed admin can enter; the whole switch owns one lifecycle transition. */
|
|
382
|
+
switchGeneralLocation(raw: unknown, authorized: () => boolean, execution: SettingsExecution): Promise<{
|
|
383
|
+
started: boolean;
|
|
384
|
+
message: string;
|
|
385
|
+
}>;
|
|
386
|
+
/** An offline PC or a confirmed binding boundary holds old waiting input; it never becomes another conversation's queue. */
|
|
387
|
+
private holdGeneralOldDeliveries;
|
|
388
|
+
generalLocationDeliveryHold(name: string): string | null;
|
|
389
|
+
private generalLocationAttention;
|
|
352
390
|
nativePaneFor(name: string, config: InstanceConfig, assertCurrent: () => void): Promise<import("./native-pane-lifecycle.js").NativePaneLifecycle>;
|
|
353
391
|
recoverNativePane(name: string, launchId: string, authorized: () => boolean): Promise<void>;
|
|
354
392
|
holdNativePaneRecovery(name: string, error: unknown): boolean;
|
|
@@ -648,6 +686,7 @@ export declare class FleetManager implements FleetContext, LifecycleContext, Arc
|
|
|
648
686
|
private watchdogTimer;
|
|
649
687
|
private startupMemoryDeadline;
|
|
650
688
|
private eventLoopWatch;
|
|
689
|
+
private stallReporter;
|
|
651
690
|
private startedAt;
|
|
652
691
|
private stormOpenNotifyTimer;
|
|
653
692
|
private memoryLogAt;
|
|
@@ -688,6 +727,14 @@ export declare class FleetManager implements FleetContext, LifecycleContext, Arc
|
|
|
688
727
|
private readonly webChatRemovals;
|
|
689
728
|
/** #1774: a removal under way — its replies' fate waits for its outcome (success: theirs no more; failure: theirs). */
|
|
690
729
|
private readonly webChatRemovalsPending;
|
|
730
|
+
/**
|
|
731
|
+
* #1490 row 27: "still the same lifecycle of `name`" — its lifecycle epoch, moved on synchronously by every stop,
|
|
732
|
+
* restart and removal (the map is never pruned, so a same-name replacement has a later one). Taken when a button
|
|
733
|
+
* or menu is claimed or offered, asked after every await before acting by name.
|
|
734
|
+
*/
|
|
735
|
+
/** #1490 row 27: an instance as the chat list names it — its display name where it has one, else its name. */
|
|
736
|
+
private shownInstanceName;
|
|
737
|
+
private lifecyclePin;
|
|
691
738
|
private webChatGeneration;
|
|
692
739
|
/** #1774: who an instance's reply is from, taken when it is sent: the name's generation and its daemon then. */
|
|
693
740
|
private webChatIdentity;
|
|
@@ -883,7 +930,9 @@ export declare class FleetManager implements FleetContext, LifecycleContext, Arc
|
|
|
883
930
|
status: number;
|
|
884
931
|
body: Record<string, unknown>;
|
|
885
932
|
}>;
|
|
886
|
-
/**
|
|
933
|
+
/** A confirmation belongs to the server route/lifetime, not the availability of General's model. */
|
|
934
|
+
private settingsGeneralRoute;
|
|
935
|
+
/** Connected, same-platform, unaffected server routes can post cards even while the model is offline. */
|
|
887
936
|
private settingsNoticeGenerals;
|
|
888
937
|
/**
|
|
889
938
|
* #2170: General's notice of a change confirmed from the web — the first General a chat card could have been posted
|
|
@@ -1804,6 +1853,8 @@ export declare class FleetManager implements FleetContext, LifecycleContext, Arc
|
|
|
1804
1853
|
/** #1742: `/start web` from a fleet admin: the /web menu right here in the DM, for the General this bot serves. */
|
|
1805
1854
|
private startWebInDm;
|
|
1806
1855
|
private getPublicWebLink;
|
|
1856
|
+
/** The public link's wiring to this fleet (a test builds one with the tunnel itself stubbed: `ensure`, `provider`). */
|
|
1857
|
+
private publicWebLinkDeps;
|
|
1807
1858
|
private publicLinkAutoOpen;
|
|
1808
1859
|
/**
|
|
1809
1860
|
* #named-link-ttl: the admin who last opened a named-tunnel link from /web, with the live binding — only while they
|
|
@@ -3288,6 +3339,89 @@ export declare class FleetManager implements FleetContext, LifecycleContext, Arc
|
|
|
3288
3339
|
* again. A fleet with a chat connection, another session, or another peer: nothing (§3 as before).
|
|
3289
3340
|
*/
|
|
3290
3341
|
authorizeHostSession(session: SessionRecord, peer: WebPeer): void;
|
|
3342
|
+
private webRemoteAccessState;
|
|
3343
|
+
/** The authenticator, the outside switch and the wrong-code limiter (web-remote-access.json), read on first use. */
|
|
3344
|
+
webRemoteAccess(): WebRemoteAccess | null;
|
|
3345
|
+
/** "Allow connections from outside" is on (an app set up) and this is a web-only fleet. */
|
|
3346
|
+
private outsideOn;
|
|
3347
|
+
/** The link connections from outside opened, while it is open and still theirs: its exposure. Else null. */
|
|
3348
|
+
private outsideLink;
|
|
3349
|
+
/**
|
|
3350
|
+
* The request's live session, asked again each time `current()` is called (its own cookie authenticated anew, the same
|
|
3351
|
+
* handle): this web-only fleet's owner — this computer's admin, on this computer (`hostOnly`), or also signed in from
|
|
3352
|
+
* outside — and web-verified now. Null when it is not (a guest, a LAN session, a chat fleet's admin, nobody).
|
|
3353
|
+
*/
|
|
3354
|
+
private liveOwner;
|
|
3355
|
+
/** Every session signed in from outside ends (and the authorizations kept for them). */
|
|
3356
|
+
private endOutsideSessions;
|
|
3357
|
+
/**
|
|
3358
|
+
* #1939 §10 / #3008: a stored receipt's authority as it reads now — the web authority state, and for this computer's
|
|
3359
|
+
* admin from outside the switch and the last revocation of remote authority (Prism P2 2).
|
|
3360
|
+
*/
|
|
3361
|
+
receiptAuthorityNow(stored: HumanAuthority, state?: AuthorityState): HumanAuthority;
|
|
3362
|
+
/** #3008 (the sign-in page): this exposure is the outside link, open now. */
|
|
3363
|
+
isOutsideLink(exposureId: string): boolean;
|
|
3364
|
+
/** What Settings shows: set up or not, the switch, a wait in force, the link — its address only to this computer. */
|
|
3365
|
+
webOutsideStatus(req: IncomingMessage): {
|
|
3366
|
+
webOnly: boolean;
|
|
3367
|
+
here: boolean;
|
|
3368
|
+
enrolled: boolean;
|
|
3369
|
+
enrolledAt: number | null;
|
|
3370
|
+
outside: boolean;
|
|
3371
|
+
pausedForMs: number;
|
|
3372
|
+
link: {
|
|
3373
|
+
state: string;
|
|
3374
|
+
url?: string;
|
|
3375
|
+
expiresAt?: number;
|
|
3376
|
+
noExpiry?: true;
|
|
3377
|
+
quick: boolean;
|
|
3378
|
+
} | null;
|
|
3379
|
+
};
|
|
3380
|
+
/** Set up (or set up again): a new secret, shown once to this computer's admin. Null: not them. */
|
|
3381
|
+
webOutsideBeginEnrollment(req: IncomingMessage): {
|
|
3382
|
+
secret: string;
|
|
3383
|
+
uri: string;
|
|
3384
|
+
expiresInMs: number;
|
|
3385
|
+
} | null;
|
|
3386
|
+
/** The new app's first code: on "ok" it replaces the old one, whose sessions from outside end. */
|
|
3387
|
+
webOutsideConfirmEnrollment(req: IncomingMessage, code: string): "ok" | "wrong" | "expired" | "unsaved" | "not_here";
|
|
3388
|
+
/** Forget the app: the switch goes off, the link closes, every session from outside ends. */
|
|
3389
|
+
webOutsideRemove(req: IncomingMessage): "ok" | "unsaved" | "not_here";
|
|
3390
|
+
/** The switch. On: needs an app set up; the link opens. Off: it closes and every session from outside ends. */
|
|
3391
|
+
webOutsideSwitch(req: IncomingMessage, on: boolean): "ok" | "not_enrolled" | "not_here" | "not_allowed" | "unsaved";
|
|
3392
|
+
private outsideAttempt;
|
|
3393
|
+
private outsideOpening;
|
|
3394
|
+
/**
|
|
3395
|
+
* Open the outside link: an attempt after each delay in turn until one opens (#3008 B: twice more at most — the quick
|
|
3396
|
+
* link's address service limits how often it may be asked). Every attempt asks again: the switch still on, the fleet
|
|
3397
|
+
* running. A final failure: one Notice; the switch stays on, so the next start tries again.
|
|
3398
|
+
*/
|
|
3399
|
+
private openOutsideLink;
|
|
3400
|
+
private closeOutsideLink;
|
|
3401
|
+
/** PublicWebLink.onClose for the outside link: what closed it decides what happens next (#3008 B). */
|
|
3402
|
+
private outsideLinkClosed;
|
|
3403
|
+
/**
|
|
3404
|
+
* #3008 (auth-api POST /auth/totp): a sign-in through the outside link with the authenticator's code. "ok": the caller
|
|
3405
|
+
* makes the session (SessionRecord.remote) and then calls authorizeOutsideSession. Each wrong code counts; a wait that
|
|
3406
|
+
* starts is a Notice; a code that matches a step just outside the window logs how far this clock seems to be off.
|
|
3407
|
+
*/
|
|
3408
|
+
outsideSignIn(exposureId: string | undefined, code: string): {
|
|
3409
|
+
kind: "ok";
|
|
3410
|
+
} | {
|
|
3411
|
+
kind: "wrong";
|
|
3412
|
+
} | {
|
|
3413
|
+
kind: "paused";
|
|
3414
|
+
retryAfterMs: number;
|
|
3415
|
+
} | {
|
|
3416
|
+
kind: "closed";
|
|
3417
|
+
} | {
|
|
3418
|
+
kind: "unavailable";
|
|
3419
|
+
};
|
|
3420
|
+
/**
|
|
3421
|
+
* #3008: a session just made by outsideSignIn's "ok" is this computer's admin for its authorization's life. False: it
|
|
3422
|
+
* could not be admitted (its handle not saved, #3015 review r3) — the caller ends it.
|
|
3423
|
+
*/
|
|
3424
|
+
authorizeOutsideSession(session: SessionRecord, peer: WebPeer, label: string): boolean;
|
|
3291
3425
|
private authorityStateStore;
|
|
3292
3426
|
/**
|
|
3293
3427
|
* #1939 §10: the switch, "Only this computer can authorize" and the revocation epoch in force for the configuration as
|
|
@@ -3787,12 +3921,12 @@ export declare class FleetManager implements FleetContext, LifecycleContext, Arc
|
|
|
3787
3921
|
*/
|
|
3788
3922
|
private locateBinaryOnLoginShell;
|
|
3789
3923
|
/**
|
|
3790
|
-
* #1092: the binary in one of the directories its own installer installs to,
|
|
3791
|
-
*
|
|
3792
|
-
*
|
|
3793
|
-
*
|
|
3924
|
+
* #1092: the binary in one of the directories its own installer installs to, when no login shell can see it (the
|
|
3925
|
+
* installer recorded its PATH in an interactive-only rc file) — only those directories (#1092). #3009: through
|
|
3926
|
+
* backend-availability's install-directory check (the one resolveBackendBinary uses): one killable child, never
|
|
3927
|
+
* accessSync/statSync on the fleet's thread. An executable file counts, a symlink to one too (codex's launcher is one).
|
|
3794
3928
|
*/
|
|
3795
|
-
private
|
|
3929
|
+
private locateInstalledBackend;
|
|
3796
3930
|
/** Put an installed binary's directory on the fleet's PATH (#1059), once. */
|
|
3797
3931
|
private adoptBinaryDirectory;
|
|
3798
3932
|
/** Discord native `/login` slash — shared by every adapter dispatch block. */
|
|
@@ -4125,8 +4259,12 @@ export declare class FleetManager implements FleetContext, LifecycleContext, Arc
|
|
|
4125
4259
|
* restart backends only read it at launch, so it is persisted and the
|
|
4126
4260
|
* instance respawns.
|
|
4127
4261
|
*/
|
|
4128
|
-
applyEffort(instanceName: string, requested: string
|
|
4129
|
-
|
|
4262
|
+
applyEffort(instanceName: string, requested: string, opts?: {
|
|
4263
|
+
current?: () => boolean;
|
|
4264
|
+
}): Promise<string>;
|
|
4265
|
+
applyModel(instanceName: string, model: string, opts?: {
|
|
4266
|
+
current?: () => boolean;
|
|
4267
|
+
}): Promise<string>;
|
|
4130
4268
|
/** Save an instance's model (fleet.yaml, or its ClassicBot channel). False when neither holds it. */
|
|
4131
4269
|
private persistInstanceModel;
|
|
4132
4270
|
/**
|