@jungjaehoon/mama-os 0.78.0 → 0.79.1
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/CHANGELOG.md +341 -0
- package/README.md +38 -24
- package/db/migrations/002-model-runs-parent-index.sql +11 -0
- package/db/migrations/003-upkeep-settled.sql +15 -0
- package/dist/api/google-read-actions.d.ts +30 -0
- package/dist/api/google-read-actions.d.ts.map +1 -0
- package/dist/api/google-read-actions.js +256 -0
- package/dist/api/google-read-actions.js.map +1 -0
- package/dist/api/record-actions.d.ts.map +1 -1
- package/dist/api/record-actions.js +23 -5
- package/dist/api/record-actions.js.map +1 -1
- package/dist/api/report-handler.d.ts +0 -6
- package/dist/api/report-handler.d.ts.map +1 -1
- package/dist/api/report-handler.js +0 -54
- package/dist/api/report-handler.js.map +1 -1
- package/dist/api/security-events.d.ts +1 -1
- package/dist/api/security-events.d.ts.map +1 -1
- package/dist/api/security-events.js.map +1 -1
- package/dist/api/source-actions.d.ts +9 -0
- package/dist/api/source-actions.d.ts.map +1 -1
- package/dist/api/source-actions.js +49 -0
- package/dist/api/source-actions.js.map +1 -1
- package/dist/api/viewer-request-security.d.ts +14 -1
- package/dist/api/viewer-request-security.d.ts.map +1 -1
- package/dist/api/viewer-request-security.js +26 -3
- package/dist/api/viewer-request-security.js.map +1 -1
- package/dist/api/viewer-server.d.ts +7 -0
- package/dist/api/viewer-server.d.ts.map +1 -1
- package/dist/api/viewer-server.js +32 -0
- package/dist/api/viewer-server.js.map +1 -1
- package/dist/api/work-actions.d.ts +19 -2
- package/dist/api/work-actions.d.ts.map +1 -1
- package/dist/api/work-actions.js +15 -0
- package/dist/api/work-actions.js.map +1 -1
- package/dist/cli/commands/backup.d.ts +7 -6
- package/dist/cli/commands/backup.d.ts.map +1 -1
- package/dist/cli/commands/backup.js +44 -7
- package/dist/cli/commands/backup.js.map +1 -1
- package/dist/cli/commands/control.d.ts +22 -4
- package/dist/cli/commands/control.d.ts.map +1 -1
- package/dist/cli/commands/control.js +172 -11
- package/dist/cli/commands/control.js.map +1 -1
- package/dist/cli/commands/daemon.d.ts +13 -2
- package/dist/cli/commands/daemon.d.ts.map +1 -1
- package/dist/cli/commands/daemon.js +211 -5
- package/dist/cli/commands/daemon.js.map +1 -1
- package/dist/cli/commands/init-questions.d.ts +110 -0
- package/dist/cli/commands/init-questions.d.ts.map +1 -0
- package/dist/cli/commands/init-questions.js +445 -0
- package/dist/cli/commands/init-questions.js.map +1 -0
- package/dist/cli/commands/init-section.d.ts +13 -0
- package/dist/cli/commands/init-section.d.ts.map +1 -0
- package/dist/cli/commands/init-section.js +439 -0
- package/dist/cli/commands/init-section.js.map +1 -0
- package/dist/cli/commands/init.d.ts +56 -2
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +562 -351
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/node-move.d.ts +20 -0
- package/dist/cli/commands/node-move.d.ts.map +1 -0
- package/dist/cli/commands/node-move.js +289 -0
- package/dist/cli/commands/node-move.js.map +1 -0
- package/dist/cli/commands/register-owner.d.ts +3 -0
- package/dist/cli/commands/register-owner.d.ts.map +1 -1
- package/dist/cli/commands/register-owner.js +2 -0
- package/dist/cli/commands/register-owner.js.map +1 -1
- package/dist/cli/commands/restore.d.ts +2 -0
- package/dist/cli/commands/restore.d.ts.map +1 -1
- package/dist/cli/commands/restore.js +7 -0
- package/dist/cli/commands/restore.js.map +1 -1
- package/dist/cli/commands/service.d.ts +16 -0
- package/dist/cli/commands/service.d.ts.map +1 -1
- package/dist/cli/commands/service.js +36 -8
- package/dist/cli/commands/service.js.map +1 -1
- package/dist/cli/commands/tools.d.ts +1 -1
- package/dist/cli/commands/tools.d.ts.map +1 -1
- package/dist/cli/commands/tools.js +8 -3
- package/dist/cli/commands/tools.js.map +1 -1
- package/dist/cli/commands/uninstall.d.ts.map +1 -1
- package/dist/cli/commands/uninstall.js +123 -15
- package/dist/cli/commands/uninstall.js.map +1 -1
- package/dist/cli/commands/update.d.ts +59 -0
- package/dist/cli/commands/update.d.ts.map +1 -0
- package/dist/cli/commands/update.js +948 -0
- package/dist/cli/commands/update.js.map +1 -0
- package/dist/cli/index.js +8 -4
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/launch-files.d.ts +36 -0
- package/dist/cli/launch-files.d.ts.map +1 -1
- package/dist/cli/launch-files.js +94 -1
- package/dist/cli/launch-files.js.map +1 -1
- package/dist/cli/prompt.d.ts +2 -1
- package/dist/cli/prompt.d.ts.map +1 -1
- package/dist/cli/prompt.js +5 -2
- package/dist/cli/prompt.js.map +1 -1
- package/dist/cli/runtime/backup.d.ts +17 -1
- package/dist/cli/runtime/backup.d.ts.map +1 -1
- package/dist/cli/runtime/backup.js +32 -4
- package/dist/cli/runtime/backup.js.map +1 -1
- package/dist/cli/runtime/daemon-control.d.ts +92 -7
- package/dist/cli/runtime/daemon-control.d.ts.map +1 -1
- package/dist/cli/runtime/daemon-control.js +183 -8
- package/dist/cli/runtime/daemon-control.js.map +1 -1
- package/dist/cli/runtime/default-roots.d.ts +27 -0
- package/dist/cli/runtime/default-roots.d.ts.map +1 -0
- package/dist/cli/runtime/default-roots.js +61 -0
- package/dist/cli/runtime/default-roots.js.map +1 -0
- package/dist/cli/runtime/diagnostics.d.ts +25 -0
- package/dist/cli/runtime/diagnostics.d.ts.map +1 -1
- package/dist/cli/runtime/diagnostics.js +250 -63
- package/dist/cli/runtime/diagnostics.js.map +1 -1
- package/dist/cli/runtime/init-state.d.ts +20 -0
- package/dist/cli/runtime/init-state.d.ts.map +1 -0
- package/dist/cli/runtime/init-state.js +51 -0
- package/dist/cli/runtime/init-state.js.map +1 -0
- package/dist/cli/runtime/install-kind.d.ts +54 -0
- package/dist/cli/runtime/install-kind.d.ts.map +1 -0
- package/dist/cli/runtime/install-kind.js +164 -0
- package/dist/cli/runtime/install-kind.js.map +1 -0
- package/dist/cli/runtime/node-move-journal.d.ts +44 -0
- package/dist/cli/runtime/node-move-journal.d.ts.map +1 -0
- package/dist/cli/runtime/node-move-journal.js +48 -0
- package/dist/cli/runtime/node-move-journal.js.map +1 -0
- package/dist/cli/runtime/release-check.d.ts +94 -0
- package/dist/cli/runtime/release-check.d.ts.map +1 -0
- package/dist/cli/runtime/release-check.js +316 -0
- package/dist/cli/runtime/release-check.js.map +1 -0
- package/dist/cli/runtime/setup-page.d.ts +57 -0
- package/dist/cli/runtime/setup-page.d.ts.map +1 -0
- package/dist/cli/runtime/setup-page.js +266 -0
- package/dist/cli/runtime/setup-page.js.map +1 -0
- package/dist/cli/runtime/source-tools.d.ts +60 -0
- package/dist/cli/runtime/source-tools.d.ts.map +1 -0
- package/dist/cli/runtime/source-tools.js +170 -0
- package/dist/cli/runtime/source-tools.js.map +1 -0
- package/dist/cli/runtime/telegram-pairing.d.ts +73 -0
- package/dist/cli/runtime/telegram-pairing.d.ts.map +1 -0
- package/dist/cli/runtime/telegram-pairing.js +184 -0
- package/dist/cli/runtime/telegram-pairing.js.map +1 -0
- package/dist/cli/runtime/update-journal.d.ts +135 -0
- package/dist/cli/runtime/update-journal.d.ts.map +1 -0
- package/dist/cli/runtime/update-journal.js +144 -0
- package/dist/cli/runtime/update-journal.js.map +1 -0
- package/dist/cli/runtime/update-progress.d.ts +95 -0
- package/dist/cli/runtime/update-progress.d.ts.map +1 -0
- package/dist/cli/runtime/update-progress.js +154 -0
- package/dist/cli/runtime/update-progress.js.map +1 -0
- package/dist/cli/runtime/update-request.d.ts +58 -0
- package/dist/cli/runtime/update-request.d.ts.map +1 -0
- package/dist/cli/runtime/update-request.js +172 -0
- package/dist/cli/runtime/update-request.js.map +1 -0
- package/dist/connectors/calendar/index.d.ts +5 -1
- package/dist/connectors/calendar/index.d.ts.map +1 -1
- package/dist/connectors/calendar/index.js +19 -28
- package/dist/connectors/calendar/index.js.map +1 -1
- package/dist/connectors/chatwork/index.d.ts.map +1 -1
- package/dist/connectors/chatwork/index.js +7 -3
- package/dist/connectors/chatwork/index.js.map +1 -1
- package/dist/connectors/config-loader.d.ts +5 -0
- package/dist/connectors/config-loader.d.ts.map +1 -1
- package/dist/connectors/config-loader.js +8 -0
- package/dist/connectors/config-loader.js.map +1 -1
- package/dist/connectors/discord/index.d.ts.map +1 -1
- package/dist/connectors/discord/index.js +4 -3
- package/dist/connectors/discord/index.js.map +1 -1
- package/dist/connectors/drive/index.d.ts.map +1 -1
- package/dist/connectors/drive/index.js +15 -13
- package/dist/connectors/drive/index.js.map +1 -1
- package/dist/connectors/framework/gws-utils.d.ts +62 -0
- package/dist/connectors/framework/gws-utils.d.ts.map +1 -1
- package/dist/connectors/framework/gws-utils.js +133 -3
- package/dist/connectors/framework/gws-utils.js.map +1 -1
- package/dist/connectors/framework/types.d.ts +24 -0
- package/dist/connectors/framework/types.d.ts.map +1 -1
- package/dist/connectors/framework/types.js +9 -0
- package/dist/connectors/framework/types.js.map +1 -1
- package/dist/connectors/gmail/index.d.ts.map +1 -1
- package/dist/connectors/gmail/index.js +14 -13
- package/dist/connectors/gmail/index.js.map +1 -1
- package/dist/connectors/index.d.ts +4 -4
- package/dist/connectors/index.d.ts.map +1 -1
- package/dist/connectors/index.js +4 -10
- package/dist/connectors/index.js.map +1 -1
- package/dist/connectors/notion/index.d.ts.map +1 -1
- package/dist/connectors/notion/index.js +5 -3
- package/dist/connectors/notion/index.js.map +1 -1
- package/dist/connectors/sheets/index.d.ts.map +1 -1
- package/dist/connectors/sheets/index.js +17 -12
- package/dist/connectors/sheets/index.js.map +1 -1
- package/dist/connectors/slack/index.d.ts.map +1 -1
- package/dist/connectors/slack/index.js +9 -3
- package/dist/connectors/slack/index.js.map +1 -1
- package/dist/connectors/telegram/index.d.ts.map +1 -1
- package/dist/connectors/telegram/index.js +4 -3
- package/dist/connectors/telegram/index.js.map +1 -1
- package/dist/connectors/trello/index.d.ts +1 -1
- package/dist/connectors/trello/index.d.ts.map +1 -1
- package/dist/connectors/trello/index.js +10 -5
- package/dist/connectors/trello/index.js.map +1 -1
- package/dist/gateways/discord.d.ts +6 -0
- package/dist/gateways/discord.d.ts.map +1 -1
- package/dist/gateways/discord.js +38 -27
- package/dist/gateways/discord.js.map +1 -1
- package/dist/gateways/slack.d.ts +6 -0
- package/dist/gateways/slack.d.ts.map +1 -1
- package/dist/gateways/slack.js +38 -27
- package/dist/gateways/slack.js.map +1 -1
- package/dist/gateways/telegram-commands.d.ts +124 -0
- package/dist/gateways/telegram-commands.d.ts.map +1 -0
- package/dist/gateways/telegram-commands.js +131 -0
- package/dist/gateways/telegram-commands.js.map +1 -0
- package/dist/gateways/telegram.d.ts +20 -0
- package/dist/gateways/telegram.d.ts.map +1 -1
- package/dist/gateways/telegram.js +138 -34
- package/dist/gateways/telegram.js.map +1 -1
- package/dist/gateways/turn-contract.d.ts +11 -0
- package/dist/gateways/turn-contract.d.ts.map +1 -1
- package/dist/runtime/action-surface.d.ts +1 -1
- package/dist/runtime/action-surface.d.ts.map +1 -1
- package/dist/runtime/action-surface.js +10 -0
- package/dist/runtime/action-surface.js.map +1 -1
- package/dist/runtime/backend-security.d.ts +23 -2
- package/dist/runtime/backend-security.d.ts.map +1 -1
- package/dist/runtime/backend-security.js +50 -5
- package/dist/runtime/backend-security.js.map +1 -1
- package/dist/runtime/member-paths.d.ts +15 -7
- package/dist/runtime/member-paths.d.ts.map +1 -1
- package/dist/runtime/member-paths.js +64 -12
- package/dist/runtime/member-paths.js.map +1 -1
- package/dist/runtime/member-session.d.ts +4 -0
- package/dist/runtime/member-session.d.ts.map +1 -1
- package/dist/runtime/member-session.js +23 -2
- package/dist/runtime/member-session.js.map +1 -1
- package/dist/runtime/native-session.d.ts +2 -0
- package/dist/runtime/native-session.d.ts.map +1 -1
- package/dist/runtime/native-session.js +1 -0
- package/dist/runtime/native-session.js.map +1 -1
- package/dist/runtime/owner-runtime.d.ts +63 -1
- package/dist/runtime/owner-runtime.d.ts.map +1 -1
- package/dist/runtime/owner-runtime.js +180 -3
- package/dist/runtime/owner-runtime.js.map +1 -1
- package/dist/runtime/owner-system-prompt.d.ts.map +1 -1
- package/dist/runtime/owner-system-prompt.js +0 -1
- package/dist/runtime/owner-system-prompt.js.map +1 -1
- package/dist/runtime/principal-access.d.ts +2 -0
- package/dist/runtime/principal-access.d.ts.map +1 -1
- package/dist/runtime/principal-access.js +7 -0
- package/dist/runtime/principal-access.js.map +1 -1
- package/dist/runtime/principal-sessions.d.ts.map +1 -1
- package/dist/runtime/principal-sessions.js +8 -1
- package/dist/runtime/principal-sessions.js.map +1 -1
- package/dist/runtime/record-orders.d.ts.map +1 -1
- package/dist/runtime/record-orders.js +3 -29
- package/dist/runtime/record-orders.js.map +1 -1
- package/dist/runtime/report-scheduler.d.ts +9 -2
- package/dist/runtime/report-scheduler.d.ts.map +1 -1
- package/dist/runtime/report-scheduler.js +37 -10
- package/dist/runtime/report-scheduler.js.map +1 -1
- package/dist/runtime/stimulus-delivery.d.ts +3 -0
- package/dist/runtime/stimulus-delivery.d.ts.map +1 -1
- package/dist/runtime/stimulus-delivery.js +19 -3
- package/dist/runtime/stimulus-delivery.js.map +1 -1
- package/dist/runtime/tools-paths.d.ts +7 -0
- package/dist/runtime/tools-paths.d.ts.map +1 -1
- package/dist/runtime/tools-paths.js +11 -5
- package/dist/runtime/tools-paths.js.map +1 -1
- package/dist/runtime/upkeep-close.d.ts +17 -0
- package/dist/runtime/upkeep-close.d.ts.map +1 -0
- package/dist/runtime/upkeep-close.js +127 -0
- package/dist/runtime/upkeep-close.js.map +1 -0
- package/dist/runtime/upkeep-orders.d.ts +124 -0
- package/dist/runtime/upkeep-orders.d.ts.map +1 -0
- package/dist/runtime/upkeep-orders.js +310 -0
- package/dist/runtime/upkeep-orders.js.map +1 -0
- package/dist/runtime/upkeep-reconcile.d.ts +25 -0
- package/dist/runtime/upkeep-reconcile.d.ts.map +1 -0
- package/dist/runtime/upkeep-reconcile.js +231 -0
- package/dist/runtime/upkeep-reconcile.js.map +1 -0
- package/dist/runtime/upkeep-writeback.d.ts +22 -0
- package/dist/runtime/upkeep-writeback.d.ts.map +1 -0
- package/dist/runtime/upkeep-writeback.js +203 -0
- package/dist/runtime/upkeep-writeback.js.map +1 -0
- package/dist/utils/untrusted-content.d.ts.map +1 -1
- package/dist/utils/untrusted-content.js +8 -1
- package/dist/utils/untrusted-content.js.map +1 -1
- package/install/install.sh +457 -0
- package/install/node.json +9 -0
- package/package.json +3 -4
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.MESSENGER_SECRETS = exports.BOOT_STAGES = exports.StopDuringBootError = exports.OWNER_PRINCIPAL_ID = void 0;
|
|
4
4
|
exports.pathsOverlap = pathsOverlap;
|
|
5
5
|
exports.validateDeliveryRoutes = validateDeliveryRoutes;
|
|
6
|
+
exports.upkeepCloseSince = upkeepCloseSince;
|
|
6
7
|
exports.pathsFor = pathsFor;
|
|
7
8
|
exports.ensureDaemonIsolation = ensureDaemonIsolation;
|
|
8
9
|
exports.loggedOwnerIntake = loggedOwnerIntake;
|
|
@@ -28,6 +29,7 @@ const action_surface_js_1 = require("../../runtime/action-surface.js");
|
|
|
28
29
|
const connectors_js_1 = require("../../runtime/connectors.js");
|
|
29
30
|
const config_js_1 = require("../../runtime/config.js");
|
|
30
31
|
const model_cache_js_1 = require("../../runtime/model-cache.js");
|
|
32
|
+
const member_paths_js_1 = require("../../runtime/member-paths.js");
|
|
31
33
|
const backend_security_js_1 = require("../../runtime/backend-security.js");
|
|
32
34
|
const session_credential_js_1 = require("../../runtime/session-credential.js");
|
|
33
35
|
const action_mcp_config_js_1 = require("../runtime/action-mcp-config.js");
|
|
@@ -39,11 +41,16 @@ const viewer_data_js_1 = require("../../api/viewer-data.js");
|
|
|
39
41
|
const owner_authority_js_1 = require("../../runtime/owner-authority.js");
|
|
40
42
|
const principal_access_js_1 = require("../../runtime/principal-access.js");
|
|
41
43
|
const report_scheduler_js_1 = require("../../runtime/report-scheduler.js");
|
|
44
|
+
const release_check_js_1 = require("../runtime/release-check.js");
|
|
45
|
+
const install_kind_js_1 = require("../runtime/install-kind.js");
|
|
46
|
+
const update_request_js_1 = require("../runtime/update-request.js");
|
|
47
|
+
const systemd_service_js_1 = require("../runtime/systemd-service.js");
|
|
42
48
|
const wiki_read_js_1 = require("../../wiki/wiki-read.js");
|
|
43
49
|
const timezone_js_1 = require("../../runtime/timezone.js");
|
|
44
50
|
const security_events_js_1 = require("../../api/security-events.js");
|
|
45
51
|
const egress_proxy_js_1 = require("../../runtime/egress-proxy.js");
|
|
46
52
|
const daemon_control_js_1 = require("../runtime/daemon-control.js");
|
|
53
|
+
const update_journal_js_1 = require("../runtime/update-journal.js");
|
|
47
54
|
exports.OWNER_PRINCIPAL_ID = 'owner';
|
|
48
55
|
const OWNER_AGENT_ID = 'owner-agent';
|
|
49
56
|
const OWNER_MEMORY_SCOPES = (0, action_surface_js_1.ownerMemoryScopes)(exports.OWNER_PRINCIPAL_ID, index_js_1.LOADABLE_CONNECTORS);
|
|
@@ -152,6 +159,24 @@ function validateDeliveryRoutes(config) {
|
|
|
152
159
|
throw new Error(`delivery.${purpose} targets ${messenger}, which is disabled or has no allowlisted owner channel`);
|
|
153
160
|
}
|
|
154
161
|
}
|
|
162
|
+
/**
|
|
163
|
+
* The instant closing summaries start being ordered: written once, at the first start that runs
|
|
164
|
+
* upkeep, so items closed before it are left to the one-time summary script.
|
|
165
|
+
*/
|
|
166
|
+
function upkeepCloseSince(path, now = Date.now()) {
|
|
167
|
+
if ((0, node_fs_1.existsSync)(path)) {
|
|
168
|
+
const stored = JSON.parse((0, node_fs_1.readFileSync)(path, 'utf8')).closeSince;
|
|
169
|
+
if (typeof stored !== 'number' || !Number.isSafeInteger(stored))
|
|
170
|
+
throw new Error(`${path} has no closeSince epoch`);
|
|
171
|
+
return stored;
|
|
172
|
+
}
|
|
173
|
+
(0, node_fs_1.mkdirSync)((0, node_path_1.dirname)(path), { recursive: true });
|
|
174
|
+
// Written once and read at every start: a partial file would stop each boot, so it appears whole.
|
|
175
|
+
const temporary = `${path}.${process.pid}.tmp`;
|
|
176
|
+
(0, node_fs_1.writeFileSync)(temporary, `${JSON.stringify({ closeSince: now }, null, 2)}\n`, { mode: 0o600 });
|
|
177
|
+
(0, node_fs_1.renameSync)(temporary, path);
|
|
178
|
+
return now;
|
|
179
|
+
}
|
|
155
180
|
function pathsFor(configPath, config) {
|
|
156
181
|
const mamaRoot = (0, node_path_1.dirname)(configPath);
|
|
157
182
|
const runtimeRoot = (0, node_path_1.join)(mamaRoot, 'runtime');
|
|
@@ -198,6 +223,8 @@ function pathsFor(configPath, config) {
|
|
|
198
223
|
/** Create only the native-process isolation files; never remove product state. */
|
|
199
224
|
function ensureDaemonIsolation(options) {
|
|
200
225
|
const { config, paths } = options;
|
|
226
|
+
// Member temp data under the old machine-wide parents is no longer under any session deny.
|
|
227
|
+
(0, member_paths_js_1.removeRetiredMemberTemp)();
|
|
201
228
|
(0, node_fs_1.mkdirSync)(paths.downloadsDir, { recursive: true, mode: 0o700 });
|
|
202
229
|
(0, node_fs_1.mkdirSync)(paths.workspaceDir, { recursive: true });
|
|
203
230
|
const gitDir = (0, node_path_1.join)(paths.workspaceDir, '.git');
|
|
@@ -266,6 +293,7 @@ async function bootDaemon(options = {}) {
|
|
|
266
293
|
let gateway = null;
|
|
267
294
|
const gateways = new Map();
|
|
268
295
|
let reportScheduler;
|
|
296
|
+
let releaseCheck;
|
|
269
297
|
let egressProxy;
|
|
270
298
|
let stopped = false;
|
|
271
299
|
let deliveryReady = options.mode === 'replay';
|
|
@@ -277,14 +305,53 @@ async function bootDaemon(options = {}) {
|
|
|
277
305
|
const control = (0, daemon_control_js_1.daemonControlPaths)((0, node_path_1.dirname)(configPath));
|
|
278
306
|
const lock = (0, daemon_control_js_1.acquireInstallLock)(control, command);
|
|
279
307
|
let controlServer = null;
|
|
308
|
+
// One per open drain connection; while any is open, nothing new is claimed.
|
|
309
|
+
const holds = new Set();
|
|
310
|
+
// An update candidate's hold, from boot until the updater's `release` (update.md, steps 13-14).
|
|
311
|
+
let updateHold = null;
|
|
312
|
+
const claimsHeld = () => holds.size > 0 || updateHold !== null;
|
|
313
|
+
// What a drain waits for: this process's own work. Runs and claims of an earlier boot are left
|
|
314
|
+
// out: their process is gone, and such a claim (a dispatch the crash cut off) resolves only in
|
|
315
|
+
// reconciliation, which the hold suspends. A claim is stamped when it is taken and renewed only
|
|
316
|
+
// by this process's deliveries, so its time tells which boot owns it. A claimed input whose
|
|
317
|
+
// native dispatch is uncertain is parked until reconciliation too; nothing starts from it.
|
|
318
|
+
const drainCounts = () => {
|
|
319
|
+
if (stopped)
|
|
320
|
+
throw new Error('MAMA is stopping');
|
|
321
|
+
if (!owner)
|
|
322
|
+
return { running: 0, claimed: 0, turns: 0 };
|
|
323
|
+
const adapter = owner.database.adapter;
|
|
324
|
+
const { running, unclaimed } = adapter
|
|
325
|
+
.prepare(`SELECT COUNT(*) AS running,
|
|
326
|
+
COUNT(CASE WHEN parent_model_run_id IS NULL
|
|
327
|
+
AND json_extract(input_refs_json, '$.nativeInputId') IS NULL
|
|
328
|
+
THEN 1 END) AS unclaimed
|
|
329
|
+
FROM model_runs WHERE status = 'running' AND created_at >= ?`)
|
|
330
|
+
.get(startedAt);
|
|
331
|
+
const { claimed } = adapter
|
|
332
|
+
.prepare(`SELECT COUNT(*) AS claimed FROM mailbox_inputs m
|
|
333
|
+
WHERE m.status = 'claimed' AND m.claimed_at >= ?
|
|
334
|
+
AND NOT EXISTS (SELECT 1 FROM native_input_deliveries n
|
|
335
|
+
WHERE n.input_id = m.id AND n.state = 'uncertain')`)
|
|
336
|
+
.get(startedAt);
|
|
337
|
+
// A turn either runs a claimed input or is a top-level run without one (a probe); subagent
|
|
338
|
+
// runs belong to their parent's turn.
|
|
339
|
+
return { running, claimed, turns: claimed + unclaimed };
|
|
340
|
+
};
|
|
280
341
|
const statusReport = async () => {
|
|
281
342
|
const report = {
|
|
282
343
|
pid: process.pid,
|
|
283
344
|
command,
|
|
284
345
|
version: (0, package_version_js_1.resolvePackageVersion)(),
|
|
346
|
+
// What `mama update --node` confirms after it moves the managed Node.
|
|
347
|
+
node: process.version,
|
|
285
348
|
startedAt,
|
|
286
349
|
stage: stopped ? 'stopping' : booted ? 'running' : currentStage,
|
|
287
350
|
lastError,
|
|
351
|
+
drain: holds.size === 0
|
|
352
|
+
? null
|
|
353
|
+
: { holds: holds.size, since: Math.min(...[...holds].map((hold) => hold.since)) },
|
|
354
|
+
update: updateHold,
|
|
288
355
|
};
|
|
289
356
|
// Stores close during a stop; what it reports then is that it is stopping.
|
|
290
357
|
if (stopped)
|
|
@@ -321,6 +388,8 @@ async function bootDaemon(options = {}) {
|
|
|
321
388
|
const producerStops = [...gateways].map(([name, active]) => stopOne(logger, `${name}_intake`, () => active.beginStop?.(), errors));
|
|
322
389
|
if (reportScheduler)
|
|
323
390
|
producerStops.push(stopOne(logger, 'report_scheduler', () => reportScheduler.stop(), errors));
|
|
391
|
+
if (releaseCheck)
|
|
392
|
+
producerStops.push(stopOne(logger, 'release_check', () => releaseCheck.stop(), errors));
|
|
324
393
|
if (connectors)
|
|
325
394
|
producerStops.push(stopOne(logger, 'connectors', () => connectors.stop(), errors));
|
|
326
395
|
if (viewer)
|
|
@@ -372,6 +441,50 @@ async function bootDaemon(options = {}) {
|
|
|
372
441
|
throw new Error(`${command} stops when it finishes`);
|
|
373
442
|
options.requestStop();
|
|
374
443
|
},
|
|
444
|
+
probe: async () => {
|
|
445
|
+
if (!booted || stopped || !owner)
|
|
446
|
+
throw new Error('MAMA has not finished starting');
|
|
447
|
+
// After the drain is idle the stop comes next, and it would cut the probe's turn off.
|
|
448
|
+
if (holds.size > 0)
|
|
449
|
+
throw new Error('A drain holds new work; probe after the restart');
|
|
450
|
+
try {
|
|
451
|
+
const probed = await owner.probeBackend();
|
|
452
|
+
logger.info(`backend probe: ${config.agent.backend} answered in ${probed.ms} ms (model run ${probed.modelRunId ?? 'none'})`);
|
|
453
|
+
return { backend: config.agent.backend, model: config.agent.model, ...probed };
|
|
454
|
+
}
|
|
455
|
+
catch (error) {
|
|
456
|
+
// The turn's own failure is wrapped by the dispatch layer; its causes name what failed.
|
|
457
|
+
const reason = (0, stimulus_delivery_js_1.stimulusFailureReason)(error);
|
|
458
|
+
logger.error(`backend probe: ${config.agent.backend} failed: ${reason}`);
|
|
459
|
+
throw new Error(reason);
|
|
460
|
+
}
|
|
461
|
+
},
|
|
462
|
+
hold: () => {
|
|
463
|
+
const at = drainCounts();
|
|
464
|
+
// Each turn that may still run takes at most max_turn_ms; nothing new starts.
|
|
465
|
+
const perTurn = owner ? config.agent.max_turn_ms : 0;
|
|
466
|
+
const hold = { since: Date.now() };
|
|
467
|
+
holds.add(hold);
|
|
468
|
+
logger.info(`drain: claims held running=${at.running} claimed=${at.claimed}`);
|
|
469
|
+
return {
|
|
470
|
+
boundMs: at.turns * perTurn + 60_000,
|
|
471
|
+
counts: () => {
|
|
472
|
+
const { running, claimed } = drainCounts();
|
|
473
|
+
return { running, claimed };
|
|
474
|
+
},
|
|
475
|
+
release: () => {
|
|
476
|
+
holds.delete(hold);
|
|
477
|
+
logger.info('drain: claims released');
|
|
478
|
+
},
|
|
479
|
+
};
|
|
480
|
+
},
|
|
481
|
+
release: () => {
|
|
482
|
+
const held = updateHold !== null;
|
|
483
|
+
if (held)
|
|
484
|
+
logger.info(`update: ${updateHold.to} confirmed; claims released`);
|
|
485
|
+
updateHold = null;
|
|
486
|
+
return { held };
|
|
487
|
+
},
|
|
375
488
|
});
|
|
376
489
|
if (options.signal?.aborted)
|
|
377
490
|
throw new StopDuringBootError();
|
|
@@ -381,6 +494,13 @@ async function bootDaemon(options = {}) {
|
|
|
381
494
|
// on the daemon's own log holds everything, from the first boot stage on.
|
|
382
495
|
options.captureOutput?.(config.logging.file);
|
|
383
496
|
stage(logger, 'config', options.signal);
|
|
497
|
+
// An update candidate runs nothing until the updater has seen it boot and confirmed it: its
|
|
498
|
+
// boot recovery claims nothing, so a rollback finds every input as it was (update.md step 13).
|
|
499
|
+
const update = (0, update_journal_js_1.readUpdateJournal)((0, update_journal_js_1.updatePaths)((0, node_path_1.dirname)(configPath)).journal);
|
|
500
|
+
if (update?.phase === 'candidate') {
|
|
501
|
+
updateHold = { since: Date.now(), to: update.to };
|
|
502
|
+
logger.info(`update: booted as the candidate for ${update.to}; claims held until confirmed`);
|
|
503
|
+
}
|
|
384
504
|
logger.info(`document toolkit: ${(0, document_toolkit_js_1.readDocumentToolkit)(config.tools_root, (error) => logger.error(error.message)) ? 'present' : 'absent (run mama tools install)'}`);
|
|
385
505
|
const timeZone = (0, timezone_js_1.createTimeZoneSetting)(config.timezone);
|
|
386
506
|
validateDeliveryRoutes(config);
|
|
@@ -570,6 +690,7 @@ async function bootDaemon(options = {}) {
|
|
|
570
690
|
},
|
|
571
691
|
ownerPolicyProvider,
|
|
572
692
|
deliveryReady: () => deliveryReady,
|
|
693
|
+
claimsHeld,
|
|
573
694
|
onPersonalJobError: (error) => logger.error(`personal job scheduler failed reason=${(0, stimulus_delivery_js_1.stimulusFailureReason)(error)}`),
|
|
574
695
|
...(options.mode === 'replay'
|
|
575
696
|
? {}
|
|
@@ -583,7 +704,9 @@ async function bootDaemon(options = {}) {
|
|
|
583
704
|
const selected = gateways.get(sourceForRef(row.stimulusId));
|
|
584
705
|
if (!selected)
|
|
585
706
|
throw new Error('Owner messenger is not available for an interrupted response');
|
|
586
|
-
|
|
707
|
+
// Only this message: a sweep would tell messages still in flight that they were
|
|
708
|
+
// interrupted, and their answers would then be dropped as already delivered.
|
|
709
|
+
await selected.recoverResponse(row.stimulusId);
|
|
587
710
|
},
|
|
588
711
|
closeUncertain: {
|
|
589
712
|
ownerAnswered: (row) => gateways.get(sourceForRef(row.stimulusId))?.answered(row.stimulusId) ?? false,
|
|
@@ -616,6 +739,22 @@ async function bootDaemon(options = {}) {
|
|
|
616
739
|
else
|
|
617
740
|
logger.info(line);
|
|
618
741
|
},
|
|
742
|
+
// Upkeep orders write the ledger from live state: a replay places none, but still serves an
|
|
743
|
+
// order a live run left in the mailbox.
|
|
744
|
+
upkeep: {
|
|
745
|
+
closeSince: upkeepCloseSince((0, node_path_1.join)(paths.runtimeRoot, 'upkeep-state.json')),
|
|
746
|
+
fullReportHours: () => config.reports.full_report_hours,
|
|
747
|
+
scan: options.mode !== 'replay',
|
|
748
|
+
onEvent: (event) => {
|
|
749
|
+
const line = `upkeep ${event.kind} ${event.type}${event.type === 'ordered'
|
|
750
|
+
? ` order=${event.order} subjects=${event.subjects}`
|
|
751
|
+
: ` subject=${event.subject}`}${'attempt' in event ? ` attempt=${event.attempt}` : ''}${'reason' in event ? ` reason=${(0, stimulus_delivery_js_1.stimulusFailureReason)(event.reason)}` : ''}`;
|
|
752
|
+
if (event.type === 'lost')
|
|
753
|
+
logger.error(line);
|
|
754
|
+
else
|
|
755
|
+
logger.info(line);
|
|
756
|
+
},
|
|
757
|
+
},
|
|
619
758
|
onStimulusDelivered: (row, modelRunId) => stimulusDelivered(logger, row, modelRunId),
|
|
620
759
|
onStimulusFailed: (row, reason, modelRunId) => stimulusFailed(logger, row.kind ?? 'unknown', row.stimulusId, reason, modelRunId),
|
|
621
760
|
});
|
|
@@ -735,6 +874,59 @@ async function bootDaemon(options = {}) {
|
|
|
735
874
|
principalPaths: (principalId, room) => owner.principalPaths(principalId, room),
|
|
736
875
|
onMemberSelection: (selection) => owner.completeMemberEnrollment(selection),
|
|
737
876
|
recordMemberSelection: (exchange) => owner.recordHostExchange(exchange),
|
|
877
|
+
hostCommands: {
|
|
878
|
+
status: async (target, ownerView) => {
|
|
879
|
+
const report = await statusReport();
|
|
880
|
+
const adapter = owner.database.adapter;
|
|
881
|
+
// A group reads the reply, so a member's count there is that group's inputs only.
|
|
882
|
+
const waiting = (0, owner_runtime_js_1.countInputsNotDone)(adapter, ownerView
|
|
883
|
+
? {}
|
|
884
|
+
: target.kind === 'common'
|
|
885
|
+
? { principalId: exports.OWNER_PRINCIPAL_ID }
|
|
886
|
+
: {
|
|
887
|
+
principalId: target.principalId,
|
|
888
|
+
...(target.room === undefined ? {} : { channel: target.room }),
|
|
889
|
+
});
|
|
890
|
+
const turns = (report.runningTurns ?? []);
|
|
891
|
+
const sources = (report.connectors ?? []);
|
|
892
|
+
return {
|
|
893
|
+
version: String(report.version),
|
|
894
|
+
since: (0, timezone_js_1.localNow)(startedAt, timeZone.get()),
|
|
895
|
+
conversationRunning: owner.turnRunning(target),
|
|
896
|
+
inputsWaiting: waiting,
|
|
897
|
+
...(ownerView
|
|
898
|
+
? {
|
|
899
|
+
owner: {
|
|
900
|
+
turnsRunning: turns.reduce((sum, turn) => sum + turn.count, 0),
|
|
901
|
+
sources: sources.map(({ name, healthy }) => ({ name, healthy })),
|
|
902
|
+
},
|
|
903
|
+
}
|
|
904
|
+
: {}),
|
|
905
|
+
};
|
|
906
|
+
},
|
|
907
|
+
startOver: (target) => owner.startOver(target),
|
|
908
|
+
stopTurn: (target) => owner.stopTurn(target),
|
|
909
|
+
update: async (origin) => {
|
|
910
|
+
const result = (0, update_request_js_1.requestUpdate)({
|
|
911
|
+
mamaRoot: paths.mamaRoot,
|
|
912
|
+
home: options.home ?? (0, node_os_1.homedir)(),
|
|
913
|
+
origin,
|
|
914
|
+
version: (0, package_version_js_1.resolvePackageVersion)(),
|
|
915
|
+
platform: process.platform,
|
|
916
|
+
run: systemd_service_js_1.defaultServiceRun,
|
|
917
|
+
uid: process.getuid(),
|
|
918
|
+
log: (line) => logger.info(line),
|
|
919
|
+
});
|
|
920
|
+
logger.info(`update requested result=${result.kind}`);
|
|
921
|
+
if (result.kind !== 'busy')
|
|
922
|
+
return result;
|
|
923
|
+
return {
|
|
924
|
+
kind: 'busy',
|
|
925
|
+
source: result.source,
|
|
926
|
+
since: result.since === null ? 'an unknown time' : (0, timezone_js_1.localNow)(result.since, timeZone.get()),
|
|
927
|
+
};
|
|
928
|
+
},
|
|
929
|
+
},
|
|
738
930
|
config: {
|
|
739
931
|
enabled: true,
|
|
740
932
|
allowedChats: config.telegram.allowed_chats,
|
|
@@ -833,10 +1025,13 @@ async function bootDaemon(options = {}) {
|
|
|
833
1025
|
return receipt;
|
|
834
1026
|
},
|
|
835
1027
|
},
|
|
836
|
-
hasPendingReport: () => Boolean(owner.database.adapter
|
|
837
|
-
.prepare(`SELECT 1 FROM mailbox_inputs m LEFT JOIN native_input_deliveries n ON n.input_id = m.id WHERE m.principal_id = ? AND m.kind = 'scheduled' AND m.channel_key = 'schedule' AND m.status IN ('pending', 'claimed') AND (n.state IS NULL OR n.state != 'uncertain') LIMIT 1`)
|
|
838
|
-
.get(exports.OWNER_PRINCIPAL_ID)),
|
|
1028
|
+
hasPendingReport: (report, hourKey) => Boolean(owner.database.adapter
|
|
1029
|
+
.prepare(`SELECT 1 FROM mailbox_inputs m LEFT JOIN native_input_deliveries n ON n.input_id = m.id WHERE m.principal_id = ? AND m.kind = 'scheduled' AND m.channel_key = 'schedule' AND m.status IN ('pending', 'claimed') AND (n.state IS NULL OR n.state != 'uncertain' OR (json_extract(m.payload_json, '$.report') = ? AND json_extract(m.payload_json, '$.hourKey') = ? AND EXISTS (SELECT 1 FROM native_turn_results r WHERE r.receipt_json = n.receipt_json AND r.principal_id = m.principal_id))) LIMIT 1`)
|
|
1030
|
+
.get(exports.OWNER_PRINCIPAL_ID, report, hourKey)),
|
|
839
1031
|
sendToOwner: (text, key) => gateways.get(reportRoute).sendToOwner(text, key),
|
|
1032
|
+
// Every messenger keys outbound text the same way in the one shared ledger.
|
|
1033
|
+
retireUndelivered: (key) => messageLedger.retireUndelivered((0, telegram_message_ledger_js_1.outboundLedgerKey)(key)),
|
|
1034
|
+
log: (line) => logger.info(line),
|
|
840
1035
|
onError: (error) => logger.error(`report scheduler failed reason=${(0, stimulus_delivery_js_1.stimulusFailureReason)(error)}`),
|
|
841
1036
|
});
|
|
842
1037
|
reportScheduler.start();
|
|
@@ -851,6 +1046,17 @@ async function bootDaemon(options = {}) {
|
|
|
851
1046
|
.catch((error) => logger.error(`personal job scheduler failed reason=${(0, stimulus_delivery_js_1.stimulusFailureReason)(error)}`));
|
|
852
1047
|
stage(logger, 'personal_job_scheduler', options.signal);
|
|
853
1048
|
}
|
|
1049
|
+
// Live only: a replay or backfill returned above, and never asks the registry.
|
|
1050
|
+
releaseCheck = (dependencies.createReleaseCheck ?? release_check_js_1.createReleaseCheck)({
|
|
1051
|
+
statePath: (0, release_check_js_1.releaseCheckPath)(paths.mamaRoot),
|
|
1052
|
+
current: (0, package_version_js_1.resolvePackageVersion)(),
|
|
1053
|
+
packageKind: (0, install_kind_js_1.packageKind)((0, install_kind_js_1.runningPackageRoot)()),
|
|
1054
|
+
npmPath: (0, release_check_js_1.npmBesideNode)(),
|
|
1055
|
+
timeZone,
|
|
1056
|
+
log: (line) => logger.info(line),
|
|
1057
|
+
onError: (error) => logger.error(`release check failed error=${errorName(error)}`),
|
|
1058
|
+
});
|
|
1059
|
+
releaseCheck.start();
|
|
854
1060
|
deliveryReady = true;
|
|
855
1061
|
booted = true;
|
|
856
1062
|
return {
|
|
@@ -938,7 +1144,7 @@ function installControlPaths(options = {}) {
|
|
|
938
1144
|
return (0, daemon_control_js_1.daemonControlPaths)((0, node_path_1.dirname)(configPath));
|
|
939
1145
|
}
|
|
940
1146
|
async function askDaemon(op, options = {}) {
|
|
941
|
-
return await (0, daemon_control_js_1.requestDaemonControl)(installControlPaths(options), op);
|
|
1147
|
+
return await (0, daemon_control_js_1.requestDaemonControl)(installControlPaths(options), op, options.timeoutMs);
|
|
942
1148
|
}
|
|
943
1149
|
/** macOS only: this user's LaunchAgent (`launchctl print` exits 113 when it is not loaded). */
|
|
944
1150
|
function launchdService() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../../src/cli/commands/daemon.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../../src/cli/commands/daemon.ts"],"names":[],"mappings":"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"}
|