@jungjaehoon/mama-os 0.30.1 → 0.31.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.
Files changed (62) hide show
  1. package/dist/agent/gateway-tool-executor.d.ts +2 -1
  2. package/dist/agent/gateway-tool-executor.d.ts.map +1 -1
  3. package/dist/agent/gateway-tool-executor.js +86 -7
  4. package/dist/agent/gateway-tool-executor.js.map +1 -1
  5. package/dist/agent/gateway-tools.md +1 -1
  6. package/dist/agent/tool-registry.js +1 -1
  7. package/dist/agent/tool-registry.js.map +1 -1
  8. package/dist/api/operator-tasks-handler.d.ts.map +1 -1
  9. package/dist/api/operator-tasks-handler.js +2 -1
  10. package/dist/api/operator-tasks-handler.js.map +1 -1
  11. package/dist/cli/commands/start.d.ts.map +1 -1
  12. package/dist/cli/commands/start.js +75 -5
  13. package/dist/cli/commands/start.js.map +1 -1
  14. package/dist/cli/runtime/api-routes-init.d.ts.map +1 -1
  15. package/dist/cli/runtime/api-routes-init.js +19 -3
  16. package/dist/cli/runtime/api-routes-init.js.map +1 -1
  17. package/dist/cli/runtime/gateway-wiring.d.ts.map +1 -1
  18. package/dist/cli/runtime/gateway-wiring.js +17 -0
  19. package/dist/cli/runtime/gateway-wiring.js.map +1 -1
  20. package/dist/db/migrations/operator-task-temporal.d.ts.map +1 -1
  21. package/dist/db/migrations/operator-task-temporal.js +5 -0
  22. package/dist/db/migrations/operator-task-temporal.js.map +1 -1
  23. package/dist/evidence/effects.d.ts +18 -2
  24. package/dist/evidence/effects.d.ts.map +1 -1
  25. package/dist/evidence/effects.js +76 -7
  26. package/dist/evidence/effects.js.map +1 -1
  27. package/dist/operator/changes-projection.d.ts +2 -0
  28. package/dist/operator/changes-projection.d.ts.map +1 -1
  29. package/dist/operator/changes-projection.js +1 -0
  30. package/dist/operator/changes-projection.js.map +1 -1
  31. package/dist/operator/conductor.d.ts +1 -0
  32. package/dist/operator/conductor.d.ts.map +1 -1
  33. package/dist/operator/conductor.js +6 -0
  34. package/dist/operator/conductor.js.map +1 -1
  35. package/dist/operator/leg-cadence.d.ts +72 -0
  36. package/dist/operator/leg-cadence.d.ts.map +1 -0
  37. package/dist/operator/leg-cadence.js +122 -0
  38. package/dist/operator/leg-cadence.js.map +1 -0
  39. package/dist/operator/operator-trigger-loop.d.ts.map +1 -1
  40. package/dist/operator/operator-trigger-loop.js +5 -0
  41. package/dist/operator/operator-trigger-loop.js.map +1 -1
  42. package/dist/operator/task-ledger.d.ts +7 -0
  43. package/dist/operator/task-ledger.d.ts.map +1 -1
  44. package/dist/operator/task-ledger.js +16 -8
  45. package/dist/operator/task-ledger.js.map +1 -1
  46. package/dist/operator/temporal-effect.d.ts +3 -0
  47. package/dist/operator/temporal-effect.d.ts.map +1 -1
  48. package/dist/operator/temporal-effect.js.map +1 -1
  49. package/dist/operator/workorder-consumer.d.ts +2 -0
  50. package/dist/operator/workorder-consumer.d.ts.map +1 -1
  51. package/dist/operator/workorder-consumer.js +12 -3
  52. package/dist/operator/workorder-consumer.js.map +1 -1
  53. package/dist/operator/workorder-publishers.d.ts +7 -0
  54. package/dist/operator/workorder-publishers.d.ts.map +1 -1
  55. package/dist/operator/workorder-publishers.js +15 -0
  56. package/dist/operator/workorder-publishers.js.map +1 -1
  57. package/dist/scheduler/heartbeat.d.ts +8 -0
  58. package/dist/scheduler/heartbeat.d.ts.map +1 -1
  59. package/dist/scheduler/heartbeat.js +12 -0
  60. package/dist/scheduler/heartbeat.js.map +1 -1
  61. package/package.json +2 -2
  62. package/scripts/crack-failure-digests.ts +55 -0
@@ -25,6 +25,14 @@ export declare class HeartbeatScheduler {
25
25
  /**
26
26
  * Start the heartbeat scheduler
27
27
  */
28
+ /**
29
+ * The cadence the watchdog should hold this leg to, or null when the
30
+ * heartbeat is off. Boot declares the leg AFTER initLegCadence runs -
31
+ * declaring from start() hit a null singleton and was silently unwatched
32
+ * (review: a watchdog believed to be watching but isn't is the failure
33
+ * mode this feature exists to prevent).
34
+ */
35
+ declaredCadence(): number | null;
28
36
  start(): void;
29
37
  /**
30
38
  * Stop the heartbeat scheduler
@@ -1 +1 @@
1
- {"version":3,"file":"heartbeat.d.ts","sourceRoot":"","sources":["../../src/scheduler/heartbeat.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGxD,MAAM,WAAW,eAAe;IAC9B,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAQD,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,gBAAgB,CAAC,CAAwD;gBAG/E,SAAS,EAAE,SAAS,EACpB,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,EACrC,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC;IAO1E;;OAEG;IACH,KAAK,IAAI,IAAI;IAmBb;;OAEG;IACH,IAAI,IAAI,IAAI;IAaZ;;OAEG;IACH,OAAO,CAAC,YAAY;IAUpB;;OAEG;YACW,IAAI;IAoElB;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAMnC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;IAUjD;;OAEG;IACH,SAAS,IAAI,eAAe;CAG7B"}
1
+ {"version":3,"file":"heartbeat.d.ts","sourceRoot":"","sources":["../../src/scheduler/heartbeat.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAIxD,MAAM,WAAW,eAAe;IAC9B,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAQD,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,gBAAgB,CAAC,CAAwD;gBAG/E,SAAS,EAAE,SAAS,EACpB,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,EACrC,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC;IAO1E;;OAEG;IACH;;;;;;OAMG;IACH,eAAe,IAAI,MAAM,GAAG,IAAI;IAIhC,KAAK,IAAI,IAAI;IAmBb;;OAEG;IACH,IAAI,IAAI,IAAI;IAaZ;;OAEG;IACH,OAAO,CAAC,YAAY;IAUpB;;OAEG;YACW,IAAI;IAqElB;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAMnC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;IAUjD;;OAEG;IACH,SAAS,IAAI,eAAe;CAG7B"}
@@ -9,6 +9,7 @@ exports.HeartbeatScheduler = void 0;
9
9
  const fs_1 = require("fs");
10
10
  const path_1 = require("path");
11
11
  const memory_logger_js_1 = require("../memory/memory-logger.js");
12
+ const leg_cadence_js_1 = require("../operator/leg-cadence.js");
12
13
  const DEFAULT_CONFIG = {
13
14
  interval: 30 * 60 * 1000, // 30 minutes
14
15
  quietStart: 23,
@@ -29,6 +30,16 @@ class HeartbeatScheduler {
29
30
  /**
30
31
  * Start the heartbeat scheduler
31
32
  */
33
+ /**
34
+ * The cadence the watchdog should hold this leg to, or null when the
35
+ * heartbeat is off. Boot declares the leg AFTER initLegCadence runs -
36
+ * declaring from start() hit a null singleton and was silently unwatched
37
+ * (review: a watchdog believed to be watching but isn't is the failure
38
+ * mode this feature exists to prevent).
39
+ */
40
+ declaredCadence() {
41
+ return this.running ? this.config.interval : null;
42
+ }
32
43
  start() {
33
44
  if (this.running) {
34
45
  console.log('[Heartbeat] Already running');
@@ -76,6 +87,7 @@ class HeartbeatScheduler {
76
87
  * Execute a heartbeat tick
77
88
  */
78
89
  async tick() {
90
+ (0, leg_cadence_js_1.getLegCadence)()?.beat('heartbeat');
79
91
  // Skip during quiet hours
80
92
  if (this.isQuietHours()) {
81
93
  console.log('[Heartbeat] Quiet hours - skipping');
@@ -1 +1 @@
1
- {"version":3,"file":"heartbeat.js","sourceRoot":"","sources":["../../src/scheduler/heartbeat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"heartbeat.js","sourceRoot":"","sources":["../../src/scheduler/heartbeat.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jungjaehoon/mama-os",
3
- "version": "0.30.1",
3
+ "version": "0.31.1",
4
4
  "description": "MAMA OS - Local AI Runtime. Your scattered knowledge, organized by AI agents that never sleep.",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -63,7 +63,7 @@
63
63
  },
64
64
  "dependencies": {
65
65
  "@anthropic-ai/sdk": "^0.71.2",
66
- "@jungjaehoon/mama-core": "^2.0.0",
66
+ "@jungjaehoon/mama-core": "^2.1.1",
67
67
  "@slack/socket-mode": "^2.0.5",
68
68
  "@slack/web-api": "^7.13.0",
69
69
  "better-sqlite3": "^12.8.0",
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Name the hashed failure digests (S2 Task 0, report-only — no writes).
3
+ *
4
+ * Sanitized traces read `gateway_tool_failed;sha256=<digest>;length=N`. The
5
+ * ORIGINAL messages still exist in agent_activity rows written by unsanitized
6
+ * surfaces — hashing every distinct error_message against the top digests
7
+ * names them. 2026-07-31 run named all three dominant digests:
8
+ * e4f04370 = [memory_scope_out_of_scope] Envelope policy denied this tool call
9
+ * fb98ff8e = context_compile failed: Context ref kind must be a string
10
+ * f9242e19 = [connector_out_of_scope] Envelope policy denied this tool call
11
+ * Forward-looking data no longer needs this: tool_traces.failure_code carries
12
+ * the thrower's code from v0.31.0 on.
13
+ *
14
+ * Run: npx tsx scripts/crack-failure-digests.ts [~/.mama/mama-sessions.db]
15
+ */
16
+ import { createHash } from 'node:crypto';
17
+ import { homedir } from 'node:os';
18
+ import { join } from 'node:path';
19
+ import Database from 'better-sqlite3';
20
+
21
+ const dbPath = process.argv[2] ?? join(homedir(), '.mama', 'mama-sessions.db');
22
+ const db = new Database(dbPath, { readonly: true });
23
+
24
+ const digestRows = db
25
+ .prepare(
26
+ `SELECT substr(COALESCE(error_message, output_summary, ''),
27
+ instr(COALESCE(error_message, output_summary, ''), 'sha256=') + 7, 64) AS digest,
28
+ COUNT(*) AS n
29
+ FROM agent_activity
30
+ WHERE COALESCE(error_message, output_summary, '') LIKE '%sha256=%'
31
+ GROUP BY digest ORDER BY n DESC LIMIT 10`
32
+ )
33
+ .all() as Array<{ digest: string; n: number }>;
34
+
35
+ const candidates = db
36
+ .prepare(
37
+ `SELECT DISTINCT error_message FROM agent_activity
38
+ WHERE error_message IS NOT NULL AND length(error_message) BETWEEN 10 AND 300`
39
+ )
40
+ .all() as Array<{ error_message: string }>;
41
+
42
+ const byHash = new Map<string, string>();
43
+ for (const { error_message } of candidates) {
44
+ byHash.set(createHash('sha256').update(error_message).digest('hex'), error_message);
45
+ }
46
+
47
+ for (const { digest, n } of digestRows) {
48
+ const named = byHash.get(digest);
49
+ console.log(
50
+ named
51
+ ? `${digest.slice(0, 8)} x${n} = ${JSON.stringify(named)}`
52
+ : `${digest.slice(0, 8)} x${n} = (unnamed - widen the candidate window or check daemon logs)`
53
+ );
54
+ }
55
+ db.close();