@songsid/agend 2.3.0-beta.24 → 2.3.0-beta.26
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/adapter-world.js.map +1 -1
- package/dist/agend-home.d.ts +5 -0
- package/dist/agend-home.js +7 -0
- package/dist/agend-home.js.map +1 -0
- package/dist/agent-cli.js.map +1 -1
- package/dist/agent-endpoint.js +8 -0
- package/dist/agent-endpoint.js.map +1 -1
- package/dist/agent-file-read.js +1 -1
- package/dist/agent-file-read.js.map +1 -1
- package/dist/agent-whats-new.js.map +1 -1
- package/dist/apply-job.js.map +1 -1
- package/dist/atomic-write.js.map +1 -1
- package/dist/auth-api.d.ts +5 -0
- package/dist/auth-api.js +21 -0
- package/dist/auth-api.js.map +1 -1
- package/dist/authority/authority-state.d.ts +4 -0
- package/dist/authority/authority-state.js +17 -8
- package/dist/authority/authority-state.js.map +1 -1
- package/dist/authority/session-authorizations.js.map +1 -1
- package/dist/authority/web-authority.d.ts +14 -6
- package/dist/authority/web-authority.js +19 -5
- package/dist/authority/web-authority.js.map +1 -1
- package/dist/backend/antigravity.d.ts +2 -2
- package/dist/backend/antigravity.js +2 -1
- package/dist/backend/antigravity.js.map +1 -1
- package/dist/backend/claude-code.js.map +1 -1
- package/dist/backend/codex-package.js.map +1 -1
- package/dist/backend/codex-session-lookup.js.map +1 -1
- package/dist/backend/codex.js +1 -1
- package/dist/backend/codex.js.map +1 -1
- package/dist/backend/effort-metadata.js.map +1 -1
- package/dist/backend/grok.js.map +1 -1
- package/dist/backend/kiro-engine-ledger.js.map +1 -1
- package/dist/backend/kiro-kas-store.js.map +1 -1
- package/dist/backend/kiro-v2-store.js.map +1 -1
- package/dist/backend/kiro-v3-identity.js.map +1 -1
- package/dist/backend/kiro.js.map +1 -1
- package/dist/backend/launch-effort.js.map +1 -1
- package/dist/backend/mock.js.map +1 -1
- package/dist/backend/muse.js.map +1 -1
- package/dist/backend/opencode-permission.js.map +1 -1
- package/dist/backend/opencode.js.map +1 -1
- package/dist/backend/session-signals.js.map +1 -1
- package/dist/backend-availability.js.map +1 -1
- package/dist/backend-command.js.map +1 -1
- package/dist/backend-outage.js.map +1 -1
- package/dist/binary-probe.js.map +1 -1
- package/dist/bug-report.js.map +1 -1
- package/dist/bundled-skills.js.map +1 -1
- package/dist/cache-service.js +1 -1
- package/dist/cache-service.js.map +1 -1
- package/dist/channel/adapters/discord.js +29 -4
- package/dist/channel/adapters/discord.js.map +1 -1
- package/dist/channel/adapters/telegram.d.ts +6 -0
- package/dist/channel/adapters/telegram.js +54 -14
- package/dist/channel/adapters/telegram.js.map +1 -1
- package/dist/channel/mcp-server.js +10 -1
- package/dist/channel/mcp-server.js.map +1 -1
- package/dist/channel/mcp-tools.js +2 -2
- package/dist/channel/mcp-tools.js.map +1 -1
- package/dist/channel/message-queue.js.map +1 -1
- package/dist/channel/sticker-download.js.map +1 -1
- package/dist/channel/tool-router.js.map +1 -1
- package/dist/classic-channel-manager.js +3 -2
- package/dist/classic-channel-manager.js.map +1 -1
- package/dist/cli-entry.js.map +1 -1
- package/dist/cli-flags.js.map +1 -1
- package/dist/cli.js +15 -9
- package/dist/cli.js.map +1 -1
- package/dist/command-table.js.map +1 -1
- package/dist/compact-watch.js.map +1 -1
- package/dist/completion-install.js.map +1 -1
- package/dist/completion.js.map +1 -1
- package/dist/config-validator.js +20 -6
- package/dist/config-validator.js.map +1 -1
- package/dist/config.js +11 -3
- package/dist/config.js.map +1 -1
- package/dist/connection-secrets.js.map +1 -1
- package/dist/context-guardian.js.map +1 -1
- package/dist/coredump-filter.js.map +1 -1
- package/dist/cpu-profile.js.map +1 -1
- package/dist/cross-instance-envelope.js.map +1 -1
- package/dist/daemon.d.ts +3 -0
- package/dist/daemon.js +73 -3
- package/dist/daemon.js.map +1 -1
- package/dist/daily-summary.js.map +1 -1
- package/dist/darwin-memory.js.map +1 -1
- package/dist/dashboard-live.d.ts +8 -0
- package/dist/dashboard-live.js +35 -0
- package/dist/dashboard-live.js.map +1 -0
- package/dist/dashboard-permissions.d.ts +69 -0
- package/dist/dashboard-permissions.js +138 -0
- package/dist/dashboard-permissions.js.map +1 -0
- package/dist/decision-list.js.map +1 -1
- package/dist/delivery-consumed-watch.js.map +1 -1
- package/dist/delivery-outbox.js.map +1 -1
- package/dist/delivery-outbox.test.js.map +1 -1
- package/dist/delivery-reconciliation.test.js.map +1 -1
- package/dist/diagnostic-redaction.js.map +1 -1
- package/dist/doctor.js.map +1 -1
- package/dist/e2e-isolation.js.map +1 -1
- package/dist/event-log.js.map +1 -1
- package/dist/export-import.js +3 -2
- package/dist/export-import.js.map +1 -1
- package/dist/fleet-control-audit.js.map +1 -1
- package/dist/fleet-label.js.map +1 -1
- package/dist/fleet-lock.js +3 -2
- package/dist/fleet-lock.js.map +1 -1
- package/dist/fleet-manager.d.ts +77 -6
- package/dist/fleet-manager.js +488 -147
- package/dist/fleet-manager.js.map +1 -1
- package/dist/fleet-process-handlers.js +3 -2
- package/dist/fleet-process-handlers.js.map +1 -1
- package/dist/fleet-startup.d.ts +14 -0
- package/dist/fleet-startup.js +30 -0
- package/dist/fleet-startup.js.map +1 -0
- package/dist/fleet-traffic.js.map +1 -1
- package/dist/forged-envelope-scan.d.ts +0 -20
- package/dist/forged-envelope-scan.js +3 -2
- package/dist/forged-envelope-scan.js.map +1 -1
- package/dist/full-restart.js.map +1 -1
- package/dist/general-knowledge/skills/web-appearance/SKILL.canvas-worker-off.md +2 -0
- package/dist/general-knowledge/skills/web-appearance/SKILL.md +2 -0
- package/dist/general-knowledge/skills/web-dashboard/SKILL.canvas-worker-off.md +36 -12
- package/dist/general-knowledge/skills/web-dashboard/SKILL.md +45 -14
- package/dist/host-memory.js.map +1 -1
- package/dist/instance-config-impact.js +6 -0
- package/dist/instance-config-impact.js.map +1 -1
- package/dist/instance-lifecycle.js +1 -1
- package/dist/instance-lifecycle.js.map +1 -1
- package/dist/instructions.d.ts +2 -0
- package/dist/instructions.js +6 -2
- package/dist/instructions.js.map +1 -1
- package/dist/kiro-compact-pane.js.map +1 -1
- package/dist/kiro-db-reader.js.map +1 -1
- package/dist/kiro-engine-status.js.map +1 -1
- package/dist/kiro-log-gate.js.map +1 -1
- package/dist/kiro-transcript-lane.js.map +1 -1
- package/dist/locale.js +22 -0
- package/dist/locale.js.map +1 -1
- package/dist/log-service.js.map +1 -1
- package/dist/log-steps.js.map +1 -1
- package/dist/logger.js +3 -2
- package/dist/logger.js.map +1 -1
- package/dist/login-controller.js.map +1 -1
- package/dist/login-manager.js.map +1 -1
- package/dist/login-shell.js.map +1 -1
- package/dist/memory-pressure.js.map +1 -1
- package/dist/muse-usage-relay.js.map +1 -1
- package/dist/needs-you-hub.js.map +1 -1
- package/dist/needs-you-live.js.map +1 -1
- package/dist/network-family.js.map +1 -1
- package/dist/operator-control-paths.js +3 -4
- package/dist/operator-control-paths.js.map +1 -1
- package/dist/outbound-handlers.js.map +1 -1
- package/dist/outbound-schemas.d.ts +68 -68
- package/dist/outbound-schemas.js +1 -1
- package/dist/outbound-schemas.js.map +1 -1
- package/dist/outbox-open-error.js.map +1 -1
- package/dist/pane-context-cache.js.map +1 -1
- package/dist/paths.js.map +1 -1
- package/dist/private-dir.js.map +1 -1
- package/dist/probe-worker-pool.js.map +1 -1
- package/dist/profile-control.js.map +1 -1
- package/dist/prompt-file-ref.js.map +1 -1
- package/dist/provider-probe.js.map +1 -1
- package/dist/provider-secret-registry.js.map +1 -1
- package/dist/public-link-auto-open.d.ts +32 -0
- package/dist/public-link-auto-open.js +86 -0
- package/dist/public-link-auto-open.js.map +1 -0
- package/dist/public-link-owner.d.ts +10 -0
- package/dist/public-link-owner.js +36 -0
- package/dist/public-link-owner.js.map +1 -0
- package/dist/public-link-progress.js.map +1 -1
- package/dist/public-preview.js.map +1 -1
- package/dist/public-web-gateway.js +4 -2
- package/dist/public-web-gateway.js.map +1 -1
- package/dist/public-web-link.d.ts +35 -1
- package/dist/public-web-link.js +142 -43
- package/dist/public-web-link.js.map +1 -1
- package/dist/quickstart-api.js.map +1 -1
- package/dist/quickstart.d.ts +5 -0
- package/dist/quickstart.js +25 -16
- package/dist/quickstart.js.map +1 -1
- package/dist/reply-buttons-controller.js.map +1 -1
- package/dist/reply-dedup.js.map +1 -1
- package/dist/resource-report.js.map +1 -1
- package/dist/restart-guard.js.map +1 -1
- package/dist/restart-progress.js.map +1 -1
- package/dist/rollout-index.js.map +1 -1
- package/dist/runtime-cpu-profile.js.map +1 -1
- package/dist/scheduler/db.js.map +1 -1
- package/dist/scheduler/scheduler.js.map +1 -1
- package/dist/scheduler/task-board-text.js +16 -11
- package/dist/scheduler/task-board-text.js.map +1 -1
- package/dist/scheduler/task-board.d.ts +50 -10
- package/dist/scheduler/task-board.js +138 -44
- package/dist/scheduler/task-board.js.map +1 -1
- package/dist/scheduler/types.d.ts +1 -1
- package/dist/sd-notify.js.map +1 -1
- package/dist/search/search-index.js.map +1 -1
- package/dist/secret-file.js.map +1 -1
- package/dist/secret-store.js.map +1 -1
- package/dist/service-installer.d.ts +7 -1
- package/dist/service-installer.js +13 -1
- package/dist/service-installer.js.map +1 -1
- package/dist/service-plan.d.ts +33 -4
- package/dist/service-plan.js +177 -8
- package/dist/service-plan.js.map +1 -1
- package/dist/session-oom.d.ts +21 -0
- package/dist/session-oom.js +139 -0
- package/dist/session-oom.js.map +1 -0
- package/dist/settings-api.js +6 -1
- package/dist/settings-api.js.map +1 -1
- package/dist/settings-baseline.js.map +1 -1
- package/dist/settings-change.d.ts +5 -0
- package/dist/settings-change.js +71 -1
- package/dist/settings-change.js.map +1 -1
- package/dist/settings-confirmation.d.ts +4 -0
- package/dist/settings-confirmation.js +2 -0
- package/dist/settings-confirmation.js.map +1 -1
- package/dist/settings-control.js.map +1 -1
- package/dist/settings-effect.js +6 -1
- package/dist/settings-effect.js.map +1 -1
- package/dist/settings-http-confirmation.js +1 -0
- package/dist/settings-http-confirmation.js.map +1 -1
- package/dist/settings-instance-patch.js +13 -1
- package/dist/settings-instance-patch.js.map +1 -1
- package/dist/settings-transaction.js.map +1 -1
- package/dist/setup-auth.js.map +1 -1
- package/dist/setup-host.d.ts +5 -1
- package/dist/setup-host.js +8 -1
- package/dist/setup-host.js.map +1 -1
- package/dist/setup-wizard.js +5 -2
- package/dist/setup-wizard.js.map +1 -1
- package/dist/spawn-gate.d.ts +4 -0
- package/dist/spawn-gate.js +15 -5
- package/dist/spawn-gate.js.map +1 -1
- package/dist/startup-memory-deadline.d.ts +23 -0
- package/dist/startup-memory-deadline.js +55 -0
- package/dist/startup-memory-deadline.js.map +1 -0
- package/dist/statusline-watcher.js.map +1 -1
- package/dist/storm-window.js.map +1 -1
- package/dist/systemd-peer-bus.js.map +1 -1
- package/dist/target-queue-worker.js.map +1 -1
- package/dist/task-board-summary.d.ts +4 -4
- package/dist/task-board-summary.js +4 -4
- package/dist/task-board-summary.js.map +1 -1
- package/dist/task-board-tool.js +3 -2
- package/dist/task-board-tool.js.map +1 -1
- package/dist/task-board-waker.js +8 -4
- package/dist/task-board-waker.js.map +1 -1
- package/dist/tips.js.map +1 -1
- package/dist/tmux-control.js.map +1 -1
- package/dist/tmux-exec-helper.js.map +1 -1
- package/dist/tmux-manager.d.ts +1 -0
- package/dist/tmux-manager.js +2 -1
- package/dist/tmux-manager.js.map +1 -1
- package/dist/tmux-read.js +1 -1
- package/dist/tmux-read.js.map +1 -1
- package/dist/tool-permissions.js.map +1 -1
- package/dist/tool-progress.js.map +1 -1
- package/dist/topic-archiver.js.map +1 -1
- package/dist/topic-commands.js.map +1 -1
- package/dist/topic-link.js.map +1 -1
- package/dist/transcript-delta-reader.js.map +1 -1
- package/dist/transcript-jsonl.js.map +1 -1
- package/dist/transcript-monitor.js.map +1 -1
- package/dist/transcript-sources.js.map +1 -1
- package/dist/tunnel/cloudflared-install.js.map +1 -1
- package/dist/tunnel/cloudflared.js.map +1 -1
- package/dist/tunnel/lease.js +3 -2
- package/dist/tunnel/lease.js.map +1 -1
- package/dist/tunnel/manager.js.map +1 -1
- package/dist/tunnel/public-fetch.js.map +1 -1
- package/dist/tunnel/purpose-lane.js.map +1 -1
- package/dist/tunnel/types.js.map +1 -1
- package/dist/types.d.ts +26 -2
- package/dist/ui/chat-render.js +1 -15
- package/dist/ui/chat-store.js +171 -61
- package/dist/ui/chat-strings.js +7 -2
- package/dist/ui/chat-thread.js +48 -1
- package/dist/ui/fleet-canvas-layout.js +3 -0
- package/dist/ui/fleet-canvas.js +23 -20
- package/dist/ui/fleet-office-editor.js +149 -0
- package/dist/ui/fleet-office-model.js +358 -0
- package/dist/ui/fleet-office-pack.js +199 -0
- package/dist/ui/fleet-office-skin.js +474 -0
- package/dist/ui/fleet-office-store.js +49 -0
- package/dist/ui/fleet-office-zones.js +177 -0
- package/dist/ui/fleet-office.js +434 -0
- package/dist/ui/fleet-org.js +18 -5
- package/dist/ui/guest-refused.html +41 -0
- package/dist/ui/image-lightbox.js +9 -3
- package/dist/ui/panel-chat.js +14 -13
- package/dist/ui/panel-settings.js +30 -12
- package/dist/ui/settings-dialogs.js +15 -6
- package/dist/ui/settings-model.js +40 -3
- package/dist/ui/settings-strings.js +38 -0
- package/dist/ui/settings-web-authority.js +7 -2
- package/dist/ui/shared/agend-auth.js +2 -0
- package/dist/ui/shared/app-i18n.js +2 -2
- package/dist/ui/shared/app-prefs.js +2 -0
- package/dist/ui/shared/app-shell.js +12 -0
- package/dist/ui/shared/app-store.js +1 -0
- package/dist/ui/shared/app-stream.js +2 -1
- package/dist/ui/shared/app.css +132 -3
- package/dist/ui/shared/guest-refused.js +35 -0
- package/dist/ui/shared/header-tools.js +2 -2
- package/dist/ui/shared/instance-nav.js +25 -8
- package/dist/ui/shared/ui-dialog.js +2 -2
- package/dist/ui/shared/usage-dialog.js +152 -6
- package/dist/ui/shared/view-strings.js +20 -0
- package/dist/ui/shared/web-authorize.js +3 -1
- package/dist/update-check.js.map +1 -1
- package/dist/update-dispatch.js.map +1 -1
- package/dist/update-install.js.map +1 -1
- package/dist/update-launch.js.map +1 -1
- package/dist/update-marker.js.map +1 -1
- package/dist/update-preflight.js.map +1 -1
- package/dist/usage/format-rich.js.map +1 -1
- package/dist/usage/providers.d.ts +8 -0
- package/dist/usage/providers.js +6 -2
- package/dist/usage/providers.js.map +1 -1
- package/dist/usage/statusline-usage.js.map +1 -1
- package/dist/usage/usage-api.js +2 -1
- package/dist/usage/usage-api.js.map +1 -1
- package/dist/usage-report.js.map +1 -1
- package/dist/usage-rollup.js +1 -1
- package/dist/usage-rollup.js.map +1 -1
- package/dist/user-systemd.js.map +1 -1
- package/dist/view-api.js +1 -1
- package/dist/view-api.js.map +1 -1
- package/dist/wake-coordinator.js.map +1 -1
- package/dist/web-ambient.js.map +1 -1
- package/dist/web-api.d.ts +15 -2
- package/dist/web-api.js +174 -25
- package/dist/web-api.js.map +1 -1
- package/dist/web-app-icon.js.map +1 -1
- package/dist/web-appearance-policy.js.map +1 -1
- package/dist/web-appearance-tools.js.map +1 -1
- package/dist/web-appearance-view.js.map +1 -1
- package/dist/web-appearance.js.map +1 -1
- package/dist/web-auth.js +5 -4
- package/dist/web-auth.js.map +1 -1
- package/dist/web-backend-login.js.map +1 -1
- package/dist/web-card.js.map +1 -1
- package/dist/web-channel-echo.js.map +1 -1
- package/dist/web-chat-history.d.ts +41 -11
- package/dist/web-chat-history.js +93 -22
- package/dist/web-chat-history.js.map +1 -1
- package/dist/web-commands.js.map +1 -1
- package/dist/web-effect-bundle.d.ts +2 -2
- package/dist/web-effect-library.js.map +1 -1
- package/dist/web-effect-playback.js.map +1 -1
- package/dist/web-effect-profiles.d.ts +16 -16
- package/dist/web-effect-profiles.js +3 -2
- package/dist/web-effect-profiles.js.map +1 -1
- package/dist/web-effect-service.js.map +1 -1
- package/dist/web-effect-tools.js.map +1 -1
- package/dist/web-effect-trials.js.map +1 -1
- package/dist/web-effect-upload.js.map +1 -1
- package/dist/web-effect.d.ts +7 -7
- package/dist/web-effect.js.map +1 -1
- package/dist/web-experimental.js.map +1 -1
- package/dist/web-guest-access.js +1 -1
- package/dist/web-guest-access.js.map +1 -1
- package/dist/web-guest-rooms.js.map +1 -1
- package/dist/web-host-guard.js.map +1 -1
- package/dist/web-icons.js.map +1 -1
- package/dist/web-identity-color.js.map +1 -1
- package/dist/web-images.js.map +1 -1
- package/dist/web-libavoid.js.map +1 -1
- package/dist/web-login.js.map +1 -1
- package/dist/web-mentions.js.map +1 -1
- package/dist/web-mod-agent.js.map +1 -1
- package/dist/web-mod-store.js.map +1 -1
- package/dist/web-office-store.d.ts +104 -0
- package/dist/web-office-store.js +236 -0
- package/dist/web-office-store.js.map +1 -0
- package/dist/web-owner-css-store.js.map +1 -1
- package/dist/web-owner-css.js.map +1 -1
- package/dist/web-png.js.map +1 -1
- package/dist/web-prefs.js +2 -0
- package/dist/web-prefs.js.map +1 -1
- package/dist/web-profile.js.map +1 -1
- package/dist/web-reactions.d.ts +2 -1
- package/dist/web-request-context.d.ts +5 -0
- package/dist/web-request-context.js.map +1 -1
- package/dist/web-returning-device.js +1 -1
- package/dist/web-returning-device.js.map +1 -1
- package/dist/web-schedules.js.map +1 -1
- package/dist/web-send-dedupe.d.ts +36 -0
- package/dist/web-send-dedupe.js +69 -0
- package/dist/web-send-dedupe.js.map +1 -0
- package/dist/web-session-authorization.js.map +1 -1
- package/dist/web-session.js +1 -1
- package/dist/web-session.js.map +1 -1
- package/dist/web-settings-patch.d.ts +1 -0
- package/dist/web-settings-patch.js +6 -4
- package/dist/web-settings-patch.js.map +1 -1
- package/dist/web-settings-tools.js.map +1 -1
- package/dist/web-terminal-http.js.map +1 -1
- package/dist/web-terminal.js.map +1 -1
- package/dist/web-theme-store.js.map +1 -1
- package/dist/web-upload.d.ts +5 -1
- package/dist/web-upload.js +6 -4
- package/dist/web-upload.js.map +1 -1
- package/dist/web-widget.js.map +1 -1
- package/dist/webhook-emitter.js.map +1 -1
- package/dist/windows-shortcuts.js +1 -1
- package/dist/windows-shortcuts.js.map +1 -1
- package/dist/workflow-templates/default.md +1 -1
- package/dist/ws-server.js.map +1 -1
- package/dist/yaml-shared-nodes.js.map +1 -1
- package/launcher/agend-install.cjs +281 -6
- package/launcher/private-home.cjs +43 -0
- package/package.json +3 -2
- package/templates/windows-shortcuts.ps1 +1 -1
|
@@ -157,7 +157,7 @@ export function realShortcutsDeps(dataDir, user, run) {
|
|
|
157
157
|
return {
|
|
158
158
|
host: realHost(), user, dataDir, run,
|
|
159
159
|
shared: () => sharedShortcutsPs(),
|
|
160
|
-
writeMarker: (path, content) => { mkdirSync(dirname(path), { recursive: true }); writeFileSync(path, content); },
|
|
160
|
+
writeMarker: (path, content) => { mkdirSync(dirname(path), { recursive: true, mode: 0o700 }); writeFileSync(path, content); },
|
|
161
161
|
log: line => console.log(line),
|
|
162
162
|
now: () => new Date(),
|
|
163
163
|
confirm: async (question) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windows-shortcuts.js","sourceRoot":"","sources":["../src/windows-shortcuts.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"windows-shortcuts.js","sourceRoot":"","sources":["../src/windows-shortcuts.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
Use the **Task Board** (`task` tool) for multi-step work:
|
|
21
21
|
- Break work into discrete tasks with clear deliverables
|
|
22
22
|
- Update status as you progress (open → claimed → done; or blocked / cancelled)
|
|
23
|
-
- A card that waits for
|
|
23
|
+
- A card that waits for confirmation goes to `review` when you finish it: the person confirms the cards they handed out; a card you handed out, you confirm (`done`, or back to `claimed` with what is missing). Sent back, it is yours again: `task get` shows why, `task mine` lists your work after a reset
|
|
24
24
|
- One board card in progress at a time: finish it, or block it with the question, before starting the next
|
|
25
25
|
- A `[Task board]` notice is news on your cards (assigned, sent back, answered, a comment, ready to start, a question on a card you handed out): read and act on the card with the `task` tool; it needs no chat reply or acknowledgment
|
|
26
26
|
- Other instances can check your task board for status instead of asking
|
package/dist/ws-server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws-server.js","sourceRoot":"","sources":["../src/ws-server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ws-server.js","sourceRoot":"","sources":["../src/ws-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yaml-shared-nodes.js","sourceRoot":"","sources":["../src/yaml-shared-nodes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"yaml-shared-nodes.js","sourceRoot":"","sources":["../src/yaml-shared-nodes.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,7 @@ var childProcess = require("child_process");
|
|
|
24
24
|
|
|
25
25
|
var LOCK = ".agend-install.lock";
|
|
26
26
|
var MARKER = "update-in-progress.json";
|
|
27
|
+
var ensurePrivateHome = require("./private-home.cjs").ensurePrivateHome;
|
|
27
28
|
|
|
28
29
|
function defaultDeps() {
|
|
29
30
|
return {
|
|
@@ -424,17 +425,217 @@ function serviceKind(deps) {
|
|
|
424
425
|
if (fs.existsSync(path.join(home, "Library", "LaunchAgents", "com.agend.fleet.plist"))) return "launchd";
|
|
425
426
|
return null;
|
|
426
427
|
}
|
|
427
|
-
/**
|
|
428
|
-
function
|
|
428
|
+
/** The fleet that runs now: the live process fleet.pid names, else 0. */
|
|
429
|
+
function fleetPid(home, deps) {
|
|
429
430
|
var pid = Number(String(readText(path.join(home, "fleet.pid")) || "").trim());
|
|
430
|
-
return pid > 0 && deps.alive(pid);
|
|
431
|
+
return pid > 0 && deps.alive(pid) ? pid : 0;
|
|
431
432
|
}
|
|
433
|
+
function fleetRunning(home, deps) { return fleetPid(home, deps) > 0; }
|
|
432
434
|
|
|
433
435
|
function versionOf(agendBin, deps) {
|
|
434
436
|
var r = deps.run(agendBin, ["--version"], { timeoutMs: 60000 });
|
|
435
437
|
return r.status === 0 ? last(r.stdout).replace(/^v/i, "") : null;
|
|
436
438
|
}
|
|
437
439
|
|
|
440
|
+
/**
|
|
441
|
+
* #2420: what an update whose new service does not come up goes back to — the 2.2 updater's C6 rollback
|
|
442
|
+
* (src/package-preimage.ts, src/service-activation.ts), here for every update this installer runs. Before npm, the
|
|
443
|
+
* installed package (with its node_modules: its bundled Node, the runtime receipt and key) is copied to
|
|
444
|
+
* `<prefix>/.agend-rollback/<version>-<time>/agend` — the same filesystem, so putting it back is a rename — with where
|
|
445
|
+
* each of its bin links points; and the service definition's bytes are kept. Only on a host with a service: a
|
|
446
|
+
* hand-started fleet's restart is not rolled back (2.2 neither: its ownership cannot be proven).
|
|
447
|
+
*/
|
|
448
|
+
var ROLLBACK_DIR = ".agend-rollback";
|
|
449
|
+
/** A copy a rollback could not use is kept on purpose (its answer names it): this file in it says why. */
|
|
450
|
+
var KEPT = "kept.txt";
|
|
451
|
+
/**
|
|
452
|
+
* Copies left by an installer that died before its own clean-up (SIGKILL, a killed cgroup): each is a whole package
|
|
453
|
+
* with its Node (~235 MB) and nothing else ever removes it. Only this installer's names (`<version>-<time>-<pid>`), only
|
|
454
|
+
* when that pid no longer runs, and never one a rollback kept on purpose; called while this installer owns the prefix,
|
|
455
|
+
* so no other installer is writing one. 2.2's updater's copies (`<version>-<time>`, which it prunes itself) are left.
|
|
456
|
+
*/
|
|
457
|
+
function pruneStale(prefix, deps) {
|
|
458
|
+
var base = path.join(prefix, ROLLBACK_DIR);
|
|
459
|
+
var names = [];
|
|
460
|
+
try { names = fs.readdirSync(base); } catch (e) { return []; }
|
|
461
|
+
var notes = [];
|
|
462
|
+
names.forEach(function (name) {
|
|
463
|
+
var m = /-\d{3}Z-(\d+)$/.exec(name);
|
|
464
|
+
if (!m || Number(m[1]) === deps.pid || deps.alive(Number(m[1]))) return;
|
|
465
|
+
var dir = path.join(base, name);
|
|
466
|
+
if (fs.existsSync(path.join(dir, KEPT))) return;
|
|
467
|
+
try { fs.rmSync(dir, { recursive: true, force: true }); notes.push("removed a rollback copy left by an installer that is no longer running (" + name + ")"); } catch (e) { /* tried again next time */ }
|
|
468
|
+
});
|
|
469
|
+
return notes;
|
|
470
|
+
}
|
|
471
|
+
function binNames(pkgDir) {
|
|
472
|
+
var p = readJson(path.join(pkgDir, "package.json"));
|
|
473
|
+
return p && p.bin && typeof p.bin === "object" ? Object.keys(p.bin) : [];
|
|
474
|
+
}
|
|
475
|
+
function takePreimage(root, prefix, deps) {
|
|
476
|
+
var pkg = path.join(root, "@songsid", "agend");
|
|
477
|
+
var version = isAgendPackage(pkg);
|
|
478
|
+
if (!version) return { preimage: null };
|
|
479
|
+
var dir = path.join(prefix, ROLLBACK_DIR, version + "-" + new Date(deps.now()).toISOString().replace(/[:.]/g, "-") + "-" + deps.pid);
|
|
480
|
+
try {
|
|
481
|
+
fs.mkdirSync(dir, { recursive: true, mode: 448 });
|
|
482
|
+
fs.cpSync(pkg, path.join(dir, "agend"), { recursive: true, verbatimSymlinks: true, preserveTimestamps: true });
|
|
483
|
+
} catch (e) {
|
|
484
|
+
try { fs.rmSync(dir, { recursive: true, force: true }); } catch (e2) { /* nothing to keep */ }
|
|
485
|
+
return { refuse: "the installed AgEnD could not be copied aside for a rollback (" + (e && e.message ? e.message : String(e)) + ")" };
|
|
486
|
+
}
|
|
487
|
+
var links = {};
|
|
488
|
+
binNames(pkg).forEach(function (name) {
|
|
489
|
+
var link = path.join(prefix, "bin", name);
|
|
490
|
+
try { links[name] = fs.lstatSync(link).isSymbolicLink() ? fs.readlinkSync(link) : null; } catch (e) { links[name] = null; }
|
|
491
|
+
});
|
|
492
|
+
return { preimage: { dir: dir, version: version, links: links } };
|
|
493
|
+
}
|
|
494
|
+
/** The preimage back in place of what npm installed, and its bin links (a bin only the new release has goes). */
|
|
495
|
+
function restorePreimage(root, prefix, p) {
|
|
496
|
+
var pkg = path.join(root, "@songsid", "agend");
|
|
497
|
+
var aside = path.join(p.dir, "replaced");
|
|
498
|
+
var names = binNames(pkg);
|
|
499
|
+
try {
|
|
500
|
+
if (fs.existsSync(pkg)) fs.renameSync(pkg, aside);
|
|
501
|
+
fs.renameSync(path.join(p.dir, "agend"), pkg);
|
|
502
|
+
} catch (e) {
|
|
503
|
+
return "the previous package could not be put back from " + p.dir + " (" + (e && e.message ? e.message : String(e)) + ")";
|
|
504
|
+
}
|
|
505
|
+
Object.keys(p.links).forEach(function (n) { if (names.indexOf(n) < 0) names.push(n); });
|
|
506
|
+
for (var k = 0; k < names.length; k++) {
|
|
507
|
+
var link = path.join(prefix, "bin", names[k]);
|
|
508
|
+
var isLink = false;
|
|
509
|
+
try { isLink = fs.lstatSync(link).isSymbolicLink(); } catch (e) { isLink = false; }
|
|
510
|
+
if (isLink) { try { fs.unlinkSync(link); } catch (e) { /* gone */ } }
|
|
511
|
+
if (p.links[names[k]]) {
|
|
512
|
+
try { fs.symlinkSync(p.links[names[k]], link); } catch (e) { return link + " could not be restored (" + (e && e.message ? e.message : String(e)) + ")"; }
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
try { fs.rmSync(p.dir, { recursive: true, force: true }); } catch (e) { /* the copy is spent either way */ }
|
|
516
|
+
return null;
|
|
517
|
+
}
|
|
518
|
+
|
|
519
|
+
/** The service as its manager names it: the system unit `agend`, the user unit `com.agend.fleet`, the launchd job. */
|
|
520
|
+
function serviceOf(kind, deps) {
|
|
521
|
+
var home = deps.env.HOME || os.homedir();
|
|
522
|
+
if (kind === "system") return { kind: kind, unit: "agend", scope: [], file: deps.systemUnit || "/etc/systemd/system/agend.service" };
|
|
523
|
+
if (kind === "user") return { kind: kind, unit: "com.agend.fleet", scope: ["--user"], file: path.join(home, ".config", "systemd", "user", "com.agend.fleet.service") };
|
|
524
|
+
if (kind === "launchd") return { kind: kind, label: "com.agend.fleet", domain: "gui/" + deps.uid, file: path.join(home, "Library", "LaunchAgents", "com.agend.fleet.plist") };
|
|
525
|
+
return null;
|
|
526
|
+
}
|
|
527
|
+
var MANAGER_MS = 15 * 60 * 1000; // a stop waits out the fleet's own stop grace; a start, its READY
|
|
528
|
+
function manage(svc, args, deps, timeoutMs) {
|
|
529
|
+
if (svc.kind === "launchd") return deps.run("launchctl", args, { timeoutMs: timeoutMs || 15000 });
|
|
530
|
+
var env = deps.env;
|
|
531
|
+
// `systemctl --user` reaches the user's manager through XDG_RUNTIME_DIR (its private socket: no D-Bus needed).
|
|
532
|
+
if (svc.kind === "user" && !env.XDG_RUNTIME_DIR && deps.uid >= 0) env = Object.assign({}, env, { XDG_RUNTIME_DIR: "/run/user/" + deps.uid });
|
|
533
|
+
return deps.run("systemctl", svc.scope.concat(args), { timeoutMs: timeoutMs || 15000, env: env });
|
|
534
|
+
}
|
|
535
|
+
/**
|
|
536
|
+
* What the manager says of the service: { known, running, stopped, pid }. systemd: active with a main pid is running;
|
|
537
|
+
* inactive or failed is stopped (anything else — activating, an auto-restart, deactivating — is neither). launchd: a
|
|
538
|
+
* loaded job in state running with a pid is running; launchctl print's "not loaded" (113, or 125: no such domain) is
|
|
539
|
+
* stopped. A query that does not complete is not known.
|
|
540
|
+
*/
|
|
541
|
+
function serviceState(svc, deps) {
|
|
542
|
+
if (svc.kind === "launchd") {
|
|
543
|
+
var p = manage(svc, ["print", svc.domain + "/" + svc.label], deps);
|
|
544
|
+
if (p.signal || p.status === null) return { known: false };
|
|
545
|
+
if (p.status === 113 || p.status === 125) return { known: true, running: false, stopped: true, pid: 0 };
|
|
546
|
+
if (p.status !== 0) return { known: false };
|
|
547
|
+
var pid = /^\s*pid = (\d+)\s*$/m.exec(p.stdout);
|
|
548
|
+
var state = /^\s*state = (.+?)\s*$/m.exec(p.stdout);
|
|
549
|
+
var runs = /^\s*runs = (\d+)\s*$/m.exec(p.stdout);
|
|
550
|
+
var running = !!pid && !!state && state[1] === "running";
|
|
551
|
+
return { known: true, running: running, stopped: false, pid: running ? Number(pid[1]) : 0, state: state ? state[1] : "", runs: runs ? Number(runs[1]) : -1 };
|
|
552
|
+
}
|
|
553
|
+
var r = manage(svc, ["show", "-p", "ActiveState", "-p", "SubState", "-p", "MainPID", "-p", "NeedDaemonReload", svc.unit], deps);
|
|
554
|
+
if (r.status !== 0 || r.signal) return { known: false };
|
|
555
|
+
var props = {};
|
|
556
|
+
String(r.stdout).split("\n").forEach(function (line) { var at = line.indexOf("="); if (at > 0) props[line.slice(0, at)] = line.slice(at + 1).trim(); });
|
|
557
|
+
if (!props.ActiveState) return { known: false };
|
|
558
|
+
var main = Number(props.MainPID) || 0;
|
|
559
|
+
return { known: true, running: props.ActiveState === "active" && main > 0, stopped: props.ActiveState === "inactive" || props.ActiveState === "failed",
|
|
560
|
+
pid: main, state: props.ActiveState + "/" + (props.SubState || ""), needReload: props.NeedDaemonReload === "yes" };
|
|
561
|
+
}
|
|
562
|
+
function clockOf(deps) { return deps.monotonicNow || function () { return Number(process.hrtime.bigint() / BigInt(1000000)); }; }
|
|
563
|
+
function sleepOf(deps) { return deps.sleep || function (ms) { Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, ms); }; }
|
|
564
|
+
/** Poll launchd (bounded, monotonic) until `done(state)` — a bootout returns before the job is gone (macOS 15). */
|
|
565
|
+
function awaitLaunchd(svc, deps, done) {
|
|
566
|
+
var clock = clockOf(deps), sleep = sleepOf(deps);
|
|
567
|
+
var deadline = clock() + 10000;
|
|
568
|
+
for (;;) {
|
|
569
|
+
var s = serviceState(svc, deps);
|
|
570
|
+
if (done(s) || clock() >= deadline) return s;
|
|
571
|
+
sleep(100);
|
|
572
|
+
}
|
|
573
|
+
}
|
|
574
|
+
/** The fleet's web/health port: fleet.yaml's top-level `health_port:`, else the fleet's default. */
|
|
575
|
+
function healthPort(home) {
|
|
576
|
+
var m = /^health_port:[ \t]*(\d+)[ \t]*(?:#.*)?$/m.exec(readText(path.join(home, "fleet.yaml")) || "");
|
|
577
|
+
return m ? Number(m[1]) : 19280;
|
|
578
|
+
}
|
|
579
|
+
/** Does a fleet that finished starting answer GET /health there (200, or 503 with its problems listed)? */
|
|
580
|
+
function healthAnswers(port, deps) {
|
|
581
|
+
if (deps.health) return deps.health(port);
|
|
582
|
+
var script = "require('http').get({host:'127.0.0.1',port:" + Number(port) + ",path:'/health',timeout:3000},function(r){var b='';r.on('data',function(d){b+=d});" +
|
|
583
|
+
"r.on('end',function(){try{process.exit(JSON.parse(b).startupComplete===true?0:3)}catch(e){process.exit(4)}})}).on('error',function(){process.exit(5)}).on('timeout',function(){process.exit(6)})";
|
|
584
|
+
return deps.run(process.execPath, ["-e", script], { timeoutMs: 10000 }).status === 0;
|
|
585
|
+
}
|
|
586
|
+
var LAUNCHD_READY_MS = 5 * 60 * 1000;
|
|
587
|
+
var LAUNCHD_STEADY_MS = 60 * 1000;
|
|
588
|
+
/**
|
|
589
|
+
* #2420: launchd starts a job without waiting for it (nothing like systemd's READY): `agend restart` / `agend start`
|
|
590
|
+
* return before the fleet runs, and a fleet that exits at start is started again by KeepAlive, forever. So under launchd
|
|
591
|
+
* the fleet proves itself: the job runs the pid fleet.pid names (the fleet writes it as it starts), and /health answers
|
|
592
|
+
* with its startup complete — or, with no answer there (its port taken: the fleet then runs without it), that same pid
|
|
593
|
+
* has run for a minute. The job started again (its runs count grew) is a fleet that exited. null: up; else why not.
|
|
594
|
+
*/
|
|
595
|
+
function launchdReady(svc, home, deps) {
|
|
596
|
+
var clock = clockOf(deps), sleep = sleepOf(deps);
|
|
597
|
+
var deadline = clock() + LAUNCHD_READY_MS, port = healthPort(home), firstRuns = null, steadyPid = 0, steadySince = 0;
|
|
598
|
+
for (;;) {
|
|
599
|
+
var s = serviceState(svc, deps);
|
|
600
|
+
if (s.known && s.stopped) return "the job is not loaded";
|
|
601
|
+
if (s.known) {
|
|
602
|
+
if (firstRuns === null) firstRuns = s.runs;
|
|
603
|
+
else if (s.runs > firstRuns) return "the fleet exited and launchd started it again (runs " + firstRuns + " → " + s.runs + ")";
|
|
604
|
+
if (s.running && fleetPid(home, deps) === s.pid) {
|
|
605
|
+
if (healthAnswers(port, deps)) return null;
|
|
606
|
+
if (steadyPid !== s.pid) { steadyPid = s.pid; steadySince = clock(); }
|
|
607
|
+
else if (clock() - steadySince >= LAUNCHD_STEADY_MS) return null;
|
|
608
|
+
} else steadyPid = 0;
|
|
609
|
+
}
|
|
610
|
+
if (clock() >= deadline) return "the fleet did not come up within " + LAUNCHD_READY_MS / 1000 + "s (launchd: " + (s.known ? s.state || "no state" : "state unknown") + ")";
|
|
611
|
+
sleep(1000);
|
|
612
|
+
}
|
|
613
|
+
}
|
|
614
|
+
function stopService(svc, deps) {
|
|
615
|
+
if (svc.kind === "launchd") {
|
|
616
|
+
manage(svc, ["bootout", svc.domain + "/" + svc.label], deps);
|
|
617
|
+
return awaitLaunchd(svc, deps, function (s) { return s.known && s.stopped; });
|
|
618
|
+
}
|
|
619
|
+
// A stop cancels a queued restart job and ends an auto-restart: what systemd then reports is settled.
|
|
620
|
+
manage(svc, ["stop", svc.unit], deps, MANAGER_MS);
|
|
621
|
+
return serviceState(svc, deps);
|
|
622
|
+
}
|
|
623
|
+
function startService(svc, home, deps) {
|
|
624
|
+
if (svc.kind === "launchd") {
|
|
625
|
+
var boot = manage(svc, ["bootstrap", svc.domain, svc.file], deps);
|
|
626
|
+
if (boot.status !== 0) return { known: true, running: false, stopped: true, pid: 0, why: "launchctl bootstrap exited " + (boot.status === null ? boot.signal : boot.status) };
|
|
627
|
+
var notUp = launchdReady(svc, home, deps);
|
|
628
|
+
if (notUp) return { known: true, running: false, pid: 0, why: notUp };
|
|
629
|
+
return serviceState(svc, deps);
|
|
630
|
+
}
|
|
631
|
+
// The failed start may have used up the unit's start limit: cleared, as `agend restart` does.
|
|
632
|
+
manage(svc, ["reset-failed", svc.unit], deps);
|
|
633
|
+
var started = manage(svc, ["start", svc.unit], deps, MANAGER_MS);
|
|
634
|
+
var s = serviceState(svc, deps);
|
|
635
|
+
if (started.status !== 0 && !s.running) s.why = "systemctl start exited " + (started.status === null ? started.signal : started.status);
|
|
636
|
+
return s;
|
|
637
|
+
}
|
|
638
|
+
|
|
438
639
|
function main(argv, injected) {
|
|
439
640
|
var deps = injected || defaultDeps();
|
|
440
641
|
var args = argv || [];
|
|
@@ -465,6 +666,9 @@ function main(argv, injected) {
|
|
|
465
666
|
return stage === "lock" ? 75 : 1;
|
|
466
667
|
};
|
|
467
668
|
|
|
669
|
+
try { ensurePrivateHome(home, { log: log }); }
|
|
670
|
+
catch (error) { return fail("install", error.message); }
|
|
671
|
+
|
|
468
672
|
log(" AgEnD installer v" + version + (upgrade ? " (upgrade)" : ""));
|
|
469
673
|
var root = last(deps.run("npm", ["root", "-g"], { timeoutMs: 30000 }).stdout);
|
|
470
674
|
var prefix = last(deps.run("npm", ["prefix", "-g"], { timeoutMs: 30000 }).stdout);
|
|
@@ -480,13 +684,23 @@ function main(argv, injected) {
|
|
|
480
684
|
claimed = claimMarker(home, deps, { ownOnly: true });
|
|
481
685
|
return fail("lock", admitted.refuse);
|
|
482
686
|
}
|
|
687
|
+
var preimage = null, definition = null, keepPreimage = false;
|
|
483
688
|
try {
|
|
484
689
|
claimed = claimMarker(home, deps, {});
|
|
485
690
|
setStage(home, claimed, "downloading", { version: version }, deps);
|
|
486
691
|
var fixed = repair(root, prefix, deps);
|
|
487
692
|
fixed.notes.forEach(function (n) { log(" ↺ " + n); });
|
|
693
|
+
pruneStale(prefix, deps).forEach(function (n) { log(" ↺ " + n); });
|
|
488
694
|
var previous = isAgendPackage(path.join(root, "@songsid", "agend"));
|
|
489
695
|
var bin = path.join(prefix, "bin", "agend");
|
|
696
|
+
// #2420: on a host with a service, what an update whose new service does not come up goes back to.
|
|
697
|
+
var svc = serviceOf(serviceKind(deps), deps);
|
|
698
|
+
if (svc && previous) {
|
|
699
|
+
var taken = takePreimage(root, prefix, deps);
|
|
700
|
+
if (taken.refuse) return fail("install", "Not updating: " + taken.refuse + ". Nothing was changed");
|
|
701
|
+
preimage = taken.preimage;
|
|
702
|
+
definition = readText(svc.file);
|
|
703
|
+
}
|
|
490
704
|
// #2286 review: the lock's token, for a release from before #2264 (its postinstall refuses any other install).
|
|
491
705
|
var npmEnv = Object.assign({}, deps.env);
|
|
492
706
|
npmEnv[lockReaders.TOKEN_ENV] = admitted.token;
|
|
@@ -531,20 +745,81 @@ function main(argv, injected) {
|
|
|
531
745
|
// (a legacy system unit is refreshed in place — never a second, user unit), then the fleet moves onto the new release:
|
|
532
746
|
// restarted when it runs, started when its service is installed but stopped (the user's: the session that ran it
|
|
533
747
|
// ended). A hand-started fleet gets no unit (#1631) and is restarted only by an upgrade.
|
|
748
|
+
// #2420: the fleet the service ran before this update (its fleet.pid, alive): a failure that never stopped it
|
|
749
|
+
// keeps it, one that did brings the previous service back.
|
|
750
|
+
var fleetBefore = fleetPid(home, deps);
|
|
751
|
+
/**
|
|
752
|
+
* #2420: the new release's service did not come up (its refresh failed, or its restart or start did). With a
|
|
753
|
+
* preimage, the previous package and service definition go back and the previous service runs again — the 2.2
|
|
754
|
+
* updater's C6 rollback. What the manager is still running or starting is stopped first and must be proven
|
|
755
|
+
* stopped, or nothing is rolled back; a fleet the failure never stopped (the same pid still runs) is left running.
|
|
756
|
+
* Without a preimage (no service before this update, no previous AgEnD), it says what to run, as before.
|
|
757
|
+
*/
|
|
758
|
+
var rollBack = function (stage, why, hint) {
|
|
759
|
+
if (!preimage || !svc) return fail(stage, why + "; " + hint);
|
|
760
|
+
var name = svc.kind === "launchd" ? "the launchd job " + svc.label : "the " + (svc.kind === "user" ? "user" : "system") + " unit " + svc.unit;
|
|
761
|
+
var kept = "; the previous package is kept in " + preimage.dir;
|
|
762
|
+
log(" ↩ " + why + " — rolling back to v" + preimage.version);
|
|
763
|
+
var untouched = fleetBefore > 0 && fleetPid(home, deps) === fleetBefore;
|
|
764
|
+
if (!untouched) {
|
|
765
|
+
var now = serviceState(svc, deps);
|
|
766
|
+
if (!now.known) { keepPreimage = true; return fail(stage, why + ". What runs " + name + " now cannot be told, so nothing was rolled back" + kept + " — check it, then run `agend restart`"); }
|
|
767
|
+
var stopped = stopService(svc, deps);
|
|
768
|
+
if (!stopped.known || !stopped.stopped) { keepPreimage = true; return fail(stage, why + ". " + name + " could not be stopped (" + (stopped.known ? stopped.state : "its state cannot be told") + "), so nothing was rolled back" + kept); }
|
|
769
|
+
}
|
|
770
|
+
var notBack = restorePreimage(root, prefix, preimage);
|
|
771
|
+
if (notBack) { keepPreimage = true; return fail(stage, why + ". " + notBack + " — reinstall it: npm install -g @songsid/agend@" + preimage.version); }
|
|
772
|
+
var restored = [];
|
|
773
|
+
if (definition !== null && readText(svc.file) !== definition) {
|
|
774
|
+
try { fs.writeFileSync(svc.file, definition); } catch (e) { return fail(stage, why + ". v" + preimage.version + " is back, but " + svc.file + " could not be restored (" + (e && e.code ? e.code : String(e)) + ") — run `agend install --no-activate`, then `agend start`"); }
|
|
775
|
+
}
|
|
776
|
+
if (svc.kind === "launchd") {
|
|
777
|
+
// The refresh's activation plan names the new plist: never left for a later `agend restart` to act on.
|
|
778
|
+
try { fs.unlinkSync(path.join(home, "service-plan.json")); } catch (e) { /* none */ }
|
|
779
|
+
} else {
|
|
780
|
+
var reload = manage(svc, ["daemon-reload"], deps);
|
|
781
|
+
var loaded = reload.status === 0 ? serviceState(svc, deps) : { known: false };
|
|
782
|
+
if (!loaded.known || loaded.needReload) restored.push("run `systemctl" + (svc.kind === "user" ? " --user" : "") + " daemon-reload`: systemd may still have the new definition loaded");
|
|
783
|
+
}
|
|
784
|
+
var back = versionOf(bin, deps);
|
|
785
|
+
var what = "the previous package (v" + preimage.version + ") and " + name + " were restored";
|
|
786
|
+
if (back !== preimage.version) restored.push(bin + " reports " + (back || "nothing") + ", not v" + preimage.version);
|
|
787
|
+
var outcome;
|
|
788
|
+
if (untouched) outcome = what + "; the previous service was never stopped and still runs (pid " + fleetBefore + ")";
|
|
789
|
+
else if (fleetBefore > 0) {
|
|
790
|
+
var started = startService(svc, home, deps);
|
|
791
|
+
outcome = started.running ? what + "; the previous service is running (pid " + started.pid + ")"
|
|
792
|
+
: what + ", but the previous service did not start (" + (started.why || (started.known ? started.state : "its state cannot be told")) + ") — run `agend start`";
|
|
793
|
+
} else outcome = what + "; the service was stopped before this update and is left stopped — `agend start` starts it";
|
|
794
|
+
return fail(stage, why + ". Rolled back: " + outcome + (restored.length ? "; " + restored.join("; ") : "") + ". The update did not succeed");
|
|
795
|
+
};
|
|
534
796
|
if (kind) {
|
|
535
797
|
var service = deps.run(bin, ["install", "--no-activate"], { inherit: true });
|
|
536
|
-
if (service.status !== 0) return
|
|
798
|
+
if (service.status !== 0) return rollBack("starting", "`agend install --no-activate` could not refresh the " + kind + " service (exit " + service.status + ")", "AgEnD v" + version + " is installed — run `agend install --no-activate`, then `agend restart`");
|
|
537
799
|
}
|
|
538
800
|
var env = Object.assign({}, deps.env, { AGEND_RESTART_ORIGIN: upgrade ? "agend-update" : "agend-install" });
|
|
539
801
|
if (fleetRunning(home, deps) && (kind || upgrade)) {
|
|
540
802
|
var restarted = deps.run(bin, ["restart", "--yes"], { inherit: true, env: env });
|
|
541
|
-
|
|
803
|
+
// 75: the restart job is still running (systemd goes on with it); the new fleet settles the marker.
|
|
804
|
+
if (restarted.status !== 0 && restarted.status !== 75) return rollBack("stopping", "the fleet did not restart onto v" + version + " (exit " + restarted.status + ")", "run `agend restart`");
|
|
542
805
|
} else if (kind) {
|
|
543
806
|
var started = deps.run(bin, ["start"], { inherit: true, env: env });
|
|
544
|
-
if (started.status !== 0) return
|
|
807
|
+
if (started.status !== 0) return rollBack("starting", "the " + kind + " service did not start (exit " + started.status + ")", "AgEnD v" + version + " is installed — run `agend start`");
|
|
808
|
+
}
|
|
809
|
+
// Under launchd an exit 0 is not the fleet running (above): it must come up on the new release first.
|
|
810
|
+
var activated = restarted ? restarted.status === 0 : !!started;
|
|
811
|
+
if (svc && svc.kind === "launchd" && activated) {
|
|
812
|
+
var notUp = launchdReady(svc, home, deps);
|
|
813
|
+
if (notUp) return rollBack(restarted ? "stopping" : "starting", "the launchd job did not come up on v" + version + ": " + notUp, "run `agend restart`");
|
|
545
814
|
}
|
|
546
815
|
return 0;
|
|
547
816
|
} finally {
|
|
817
|
+
// Spent (put back), or not needed: only a rollback that could not finish keeps its copy, says where, and marks it
|
|
818
|
+
// so that no later installer prunes it.
|
|
819
|
+
if (preimage && !keepPreimage) { try { fs.rmSync(preimage.dir, { recursive: true, force: true }); } catch (e) { /* best effort */ } }
|
|
820
|
+
if (preimage && keepPreimage && fs.existsSync(preimage.dir)) {
|
|
821
|
+
try { fs.writeFileSync(path.join(preimage.dir, KEPT), "AgEnD v" + preimage.version + ", kept by the installer of v" + version + " (pid " + deps.pid + ") after a rollback it could not finish. Remove this directory once you no longer need it.\n"); } catch (e) { /* the answer already named it */ }
|
|
822
|
+
}
|
|
548
823
|
admitted.release();
|
|
549
824
|
}
|
|
550
825
|
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Shared by the compiled CLI and the target-version installer. Keep syntax usable by old npm's Node.
|
|
3
|
+
var fs = require("fs");
|
|
4
|
+
var path = require("path");
|
|
5
|
+
|
|
6
|
+
function checkedPath(dir, io, missingAllowed, message) {
|
|
7
|
+
var absolute = path.resolve(dir), parent = path.parse(absolute).root;
|
|
8
|
+
var pieces = absolute.slice(parent.length).split(path.sep).filter(Boolean), info;
|
|
9
|
+
for (var i = 0; i < pieces.length; i++) {
|
|
10
|
+
parent = path.join(parent, pieces[i]);
|
|
11
|
+
try { info = io.lstatSync(parent); }
|
|
12
|
+
catch (error) { if (missingAllowed && error.code === "ENOENT") return null; throw error; }
|
|
13
|
+
if (info.isSymbolicLink() || !info.isDirectory()) throw new Error(message);
|
|
14
|
+
}
|
|
15
|
+
return info || io.lstatSync(absolute);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/** Create privately; repair only an owned real home, never chmod by pathname or through a symlink. */
|
|
19
|
+
function ensurePrivateHome(dir, options) {
|
|
20
|
+
var opts = options || {}, io = opts.fs || fs;
|
|
21
|
+
var uid = opts.uid === undefined ? (typeof process.getuid === "function" ? process.getuid() : null) : opts.uid;
|
|
22
|
+
var label = opts.label || "AgEnD";
|
|
23
|
+
var message = label + " requires an owned real AGEND_HOME without group/other write permission.";
|
|
24
|
+
checkedPath(dir, io, opts.create !== false, message);
|
|
25
|
+
if (opts.create !== false) io.mkdirSync(dir, { recursive: true, mode: 448 }); // 0700; umask cannot add permissions
|
|
26
|
+
var before = checkedPath(dir, io, false, message);
|
|
27
|
+
// Native Windows has no Unix uid/mode contract. The Windows installer runs this policy inside WSL.
|
|
28
|
+
if (uid === null) return;
|
|
29
|
+
if (before.uid !== uid) throw new Error(message);
|
|
30
|
+
var fd = io.openSync(dir, io.constants.O_RDONLY | io.constants.O_DIRECTORY | io.constants.O_NOFOLLOW);
|
|
31
|
+
try {
|
|
32
|
+
if (opts.afterOpen) opts.afterOpen(); // test seam: replacement at the check/change boundary
|
|
33
|
+
var info = io.fstatSync(fd), current = checkedPath(dir, io, false, message);
|
|
34
|
+
if (!info.isDirectory() || info.uid !== uid || current.dev !== info.dev || current.ino !== info.ino) throw new Error(message);
|
|
35
|
+
if (info.mode & 18) { // 0022: repair affected 0775/0777 homes; existing non-writable roots keep their mode
|
|
36
|
+
io.fchmodSync(fd, 448);
|
|
37
|
+
if ((io.fstatSync(fd).mode & 511) !== 448) throw new Error(message);
|
|
38
|
+
(opts.log || function (line) { console.warn(line); })("AgEnD: tightened owned AGEND_HOME permissions to 0700.");
|
|
39
|
+
}
|
|
40
|
+
} finally { io.closeSync(fd); }
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
module.exports = { ensurePrivateHome: ensurePrivateHome };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@songsid/agend",
|
|
3
|
-
"version": "2.3.0-beta.
|
|
3
|
+
"version": "2.3.0-beta.26",
|
|
4
4
|
"description": "Multi-agent fleet daemon — run coding CLIs (Claude, Muse, Codex, OpenCode) from Discord or Telegram",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -87,8 +87,9 @@
|
|
|
87
87
|
"@types/ejs": "^3.1.5",
|
|
88
88
|
"@types/js-yaml": "^4.0.9",
|
|
89
89
|
"@types/node": "^25.5.0",
|
|
90
|
+
"@typescript/native": "npm:typescript@7.0.2",
|
|
90
91
|
"tsx": "^4.23.15",
|
|
91
|
-
"typescript": "
|
|
92
|
+
"typescript": "npm:@typescript/typescript6@6.0.2",
|
|
92
93
|
"vitest": "^4.1.12"
|
|
93
94
|
}
|
|
94
95
|
}
|
|
@@ -175,7 +175,7 @@ function Install-AgendShortcuts([string]$distro, [string]$user) {
|
|
|
175
175
|
New-Item -ItemType Directory -Path (Get-AgendShortcutDir) -Force | Out-Null
|
|
176
176
|
$record = @{ distro = $distro; user = $user } | ConvertTo-Json -Compress
|
|
177
177
|
[IO.File]::WriteAllText((Join-Path (Get-AgendShortcutDir) 'install.json'), $record, (New-Object System.Text.UTF8Encoding $false))
|
|
178
|
-
if ($made.Count -eq 2) { $null = Invoke-AgendInWsl $distro $user 'd=${AGEND_HOME:-$HOME/.agend}; mkdir -p $d && date -u +%FT%TZ > $d/windows-shortcuts' }
|
|
178
|
+
if ($made.Count -eq 2) { $null = Invoke-AgendInWsl $distro $user 'set -f; IFS=; d=${AGEND_HOME:-$HOME/.agend}; umask 077; mkdir -p -m 700 -- $d && date -u +%FT%TZ > $d/windows-shortcuts' }
|
|
179
179
|
} catch { }
|
|
180
180
|
return $made
|
|
181
181
|
}
|