@aiassesstech/mighty-mark 0.5.7 → 0.5.8

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.
@@ -26,6 +26,16 @@ export interface CheckContext {
26
26
  telegramChatId?: string;
27
27
  /** Override hostname. */
28
28
  hostname?: string;
29
+ /** Enable fleet live ping check (#47). Default: false. */
30
+ fleetLivePing?: boolean;
31
+ /** Override the 24h error rate WARN threshold. Default: 0.1 (10%). */
32
+ fleetErrorRateWarn?: number;
33
+ /** Override the 24h error rate FAIL threshold. Default: 0.3 (30%). */
34
+ fleetErrorRateFail?: number;
35
+ /** Override the global fleet-bus package.json path (for testing). */
36
+ fleetBusGlobalPackageJsonPath?: string;
37
+ /** Override the fleet-bus package.json path (for reading openclaw.minVersion). */
38
+ fleetBusPackageJsonPath?: string;
29
39
  }
30
40
  /** Execute a shell command, using the mock if provided. */
31
41
  export declare function exec(cmd: string, ctx?: CheckContext): string;
@@ -1 +1 @@
1
- {"version":3,"file":"check-context.d.ts","sourceRoot":"","sources":["../../src/checks/check-context.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,MAAM,WAAW,YAAY;IAC3B,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wFAAwF;IACxF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oCAAoC;IACpC,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACtC,uBAAuB;IACvB,OAAO,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAClC,mCAAmC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,2DAA2D;AAC3D,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,MAAM,CAK5D;AAED,+CAA+C;AAC/C,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,WAAW,GAAG,SAAS,EAC7B,GAAG,CAAC,EAAE,YAAY,GACjB,OAAO,CAAC,QAAQ,CAAC,CAGnB;AAED,oDAAoD;AACpD,wBAAgB,WAAW,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,MAAM,CAOtD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAM5C;AAED,2BAA2B;AAC3B,wBAAgB,aAAa,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,MAAM,CAExD;AAED,8BAA8B;AAC9B,wBAAgB,YAAY,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,MAAM,CAEvD;AAED,oCAAoC;AACpC,wBAAgB,GAAG,IAAI,MAAM,CAE5B"}
1
+ {"version":3,"file":"check-context.d.ts","sourceRoot":"","sources":["../../src/checks/check-context.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,MAAM,WAAW,YAAY;IAC3B,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wFAAwF;IACxF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oCAAoC;IACpC,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACtC,uBAAuB;IACvB,OAAO,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAClC,mCAAmC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,sEAAsE;IACtE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,sEAAsE;IACtE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qEAAqE;IACrE,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,kFAAkF;IAClF,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,2DAA2D;AAC3D,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,MAAM,CAK5D;AAED,+CAA+C;AAC/C,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,WAAW,GAAG,SAAS,EAC7B,GAAG,CAAC,EAAE,YAAY,GACjB,OAAO,CAAC,QAAQ,CAAC,CAGnB;AAED,oDAAoD;AACpD,wBAAgB,WAAW,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,MAAM,CAOtD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAM5C;AAED,2BAA2B;AAC3B,wBAAgB,aAAa,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,MAAM,CAExD;AAED,8BAA8B;AAC9B,wBAAgB,YAAY,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,MAAM,CAEvD;AAED,oCAAoC;AACpC,wBAAgB,GAAG,IAAI,MAAM,CAE5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"check-context.js","sourceRoot":"","sources":["../../src/checks/check-context.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,IAAI,MAAM,WAAW,CAAC;AA2B7B,2DAA2D;AAC3D,MAAM,UAAU,IAAI,CAAC,GAAW,EAAE,GAAkB;IAClD,IAAI,GAAG,EAAE,WAAW,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,QAAQ,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AAClG,CAAC;AAED,+CAA+C;AAC/C,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,GAAW,EACX,IAA6B,EAC7B,GAAkB;IAElB,MAAM,EAAE,GAAG,GAAG,EAAE,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC;IAC5C,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AACvB,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,WAAW,CAAC,GAAkB;IAC5C,IAAI,GAAG,EAAE,QAAQ;QAAE,OAAO,GAAG,CAAC,QAAQ,CAAC;IACvC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB;IACjC,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IACxC,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IACpE,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;AACzC,CAAC;AAED,2BAA2B;AAC3B,MAAM,UAAU,aAAa,CAAC,GAAkB;IAC9C,OAAO,GAAG,EAAE,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,eAAe,CAAC,CAAC;AAC9E,CAAC;AAED,8BAA8B;AAC9B,MAAM,UAAU,YAAY,CAAC,GAAkB;IAC7C,OAAO,GAAG,EAAE,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;AACtE,CAAC;AAED,oCAAoC;AACpC,MAAM,UAAU,GAAG;IACjB,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"check-context.js","sourceRoot":"","sources":["../../src/checks/check-context.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,IAAI,MAAM,WAAW,CAAC;AAqC7B,2DAA2D;AAC3D,MAAM,UAAU,IAAI,CAAC,GAAW,EAAE,GAAkB;IAClD,IAAI,GAAG,EAAE,WAAW,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,QAAQ,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AAClG,CAAC;AAED,+CAA+C;AAC/C,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,GAAW,EACX,IAA6B,EAC7B,GAAkB;IAElB,MAAM,EAAE,GAAG,GAAG,EAAE,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC;IAC5C,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AACvB,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,WAAW,CAAC,GAAkB;IAC5C,IAAI,GAAG,EAAE,QAAQ;QAAE,OAAO,GAAG,CAAC,QAAQ,CAAC;IACvC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB;IACjC,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IACxC,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IACpE,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;AACzC,CAAC;AAED,2BAA2B;AAC3B,MAAM,UAAU,aAAa,CAAC,GAAkB;IAC9C,OAAO,GAAG,EAAE,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,eAAe,CAAC,CAAC;AAC9E,CAAC;AAED,8BAA8B;AAC9B,MAAM,UAAU,YAAY,CAAC,GAAkB;IAC7C,OAAO,GAAG,EAAE,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;AACtE,CAAC;AAED,oCAAoC;AACpC,MAAM,UAAU,GAAG;IACjB,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"check-runner.d.ts","sourceRoot":"","sources":["../../src/checks/check-runner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAe,aAAa,EAAgB,aAAa,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACnH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAWvD,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGpE,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmB;IAC1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;gBAE7B,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,aAAa;IAK7D,mEAAmE;IAC7D,MAAM,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;IA0DxD;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAY1B,wCAAwC;IAClC,WAAW,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC;CA4CzF"}
1
+ {"version":3,"file":"check-runner.d.ts","sourceRoot":"","sources":["../../src/checks/check-runner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAe,aAAa,EAAgB,aAAa,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACnH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAYvD,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGpE,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmB;IAC1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;gBAE7B,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,aAAa;IAK7D,mEAAmE;IAC7D,MAAM,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;IA6DxD;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAY1B,wCAAwC;IAClC,WAAW,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC;CA+CzF"}
@@ -11,6 +11,7 @@ import { runApiChecks } from './api-connectivity.js';
11
11
  import { runDataChecks } from './data-integrity.js';
12
12
  import { runMemoryChecks } from './memory-health.js';
13
13
  import { runFleetChecks } from './fleet-health.js';
14
+ import { runFleetTransportChecks } from './fleet-transport.js';
14
15
  import { runAlertingChecks } from './alerting-health.js';
15
16
  import { runSecurityChecks } from './security-hardening.js';
16
17
  import { classifyHealth } from '../notify/alert-classifier.js';
@@ -43,6 +44,8 @@ export class CheckRunner {
43
44
  allChecks.push(...memory);
44
45
  const fleet = await runFleetChecks(ctx);
45
46
  allChecks.push(...fleet);
47
+ const fleetTransport = await runFleetTransportChecks(ctx);
48
+ allChecks.push(...fleetTransport);
46
49
  const alerting = await runAlertingChecks(ctx);
47
50
  allChecks.push(...alerting);
48
51
  const security = await runSecurityChecks(ctx);
@@ -110,7 +113,10 @@ export class CheckRunner {
110
113
  checks = await runMemoryChecks(this.topology, ctx);
111
114
  break;
112
115
  case 'fleet':
113
- checks = await runFleetChecks(ctx);
116
+ checks = [
117
+ ...(await runFleetChecks(ctx)),
118
+ ...(await runFleetTransportChecks(ctx)),
119
+ ];
114
120
  break;
115
121
  case 'alerting':
116
122
  checks = await runAlertingChecks(ctx);
@@ -1 +1 @@
1
- {"version":3,"file":"check-runner.js","sourceRoot":"","sources":["../../src/checks/check-runner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AAIzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAqB,MAAM,oBAAoB,CAAC;AAGpE,MAAM,OAAO,WAAW;IACL,MAAM,CAAmB;IACzB,QAAQ,CAAgB;IAEzC,YAAY,MAAwB,EAAE,QAAuB;QAC3D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,mEAAmE;IACnE,KAAK,CAAC,MAAM,CAAC,GAAkB;QAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAkB,EAAE,CAAC;QAEpC,uEAAuE;QACvE,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;QAC1F,SAAS,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QAE3B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QACxD,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;QAE1B,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACvD,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;QAE1B,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;QAC/D,SAAS,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAEvB,6EAA6E;QAC7E,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;QACnH,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAExB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QACzD,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;QAE1B,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;QACxC,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;QAEzB,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC9C,SAAS,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;QAE5B,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC9C,SAAS,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;QAE5B,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEhE,IAAI,SAAiB,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;YAChD,SAAS,GAAG,MAAM,IAAI,UAAU,KAAK,QAAQ,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,GAAG,SAAS,CAAC;QACxB,CAAC;QAED,OAAO;YACL,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,MAAM;YACN,OAAO;YACP,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC;YAC1B,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU;SACpC,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACK,kBAAkB;QACxB,MAAM,YAAY,GAAG,mCAAmC,CAAC;QACzD,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAChC,OAAO;gBACL,cAAc,EAAE,mBAAmB;gBACnC,UAAU,EAAE,KAAK;gBACjB,SAAS,EAAE,KAAK;aACjB,CAAC;QACJ,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,wCAAwC;IACxC,KAAK,CAAC,WAAW,CAAC,QAAuB,EAAE,GAAkB;QAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,MAAqB,CAAC;QAE1B,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,SAAS;gBACZ,MAAM,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;gBACnF,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;gBAClD,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBACjD,MAAM;YACR,KAAK,KAAK;gBACR,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;gBAC5D,MAAM;YACR,KAAK,MAAM;gBACT,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;gBAC5H,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;gBACnD,MAAM;YACR,KAAK,OAAO;gBACV,MAAM,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,UAAU;gBACb,MAAM,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBACtC,MAAM;YACR,KAAK,UAAU;gBACb,MAAM,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBACtC,MAAM;YACR;gBACE,MAAM,GAAG,EAAE,CAAC;QAChB,CAAC;QAED,OAAO;YACL,QAAQ;YACR,MAAM;YACN,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC;YAC1B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;CACF;AAED,0DAA0D;AAC1D,SAAS,SAAS,CAAC,MAAqB;IACtC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,QAAQ,KAAK,CAAC,MAAM,EAAE,CAAC;YACrB,KAAK,MAAM;gBAAE,MAAM,EAAE,CAAC;gBAAC,MAAM;YAC7B,KAAK,MAAM;gBAAE,MAAM,EAAE,CAAC;gBAAC,MAAM;YAC7B,KAAK,MAAM;gBAAE,QAAQ,EAAE,CAAC;gBAAC,MAAM;QACjC,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AAC5D,CAAC"}
1
+ {"version":3,"file":"check-runner.js","sourceRoot":"","sources":["../../src/checks/check-runner.ts"],"names":[],"mappings":"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"}
@@ -36,10 +36,13 @@ export declare function checkFleetAuditIntegrity(ctx?: CheckContext): Promise<Ch
36
36
  */
37
37
  export declare function checkFleetBusLoaded(ctx?: CheckContext): Promise<CheckResult>;
38
38
  /**
39
- * #36 — Fleet message flow (informational).
39
+ * #36 — Fleet message flow (informational, with success/error breakdown).
40
40
  *
41
- * Checks if at least one audit event exists across all agents.
42
- * Pre-Phase 2, no events are expectedthis is informational only.
41
+ * Checks if audit events exist across all agents and reports the
42
+ * success/error breakdown. WARNs when ALL events are errorsa strong
43
+ * signal that transport is broken (but Check #40/#41 are authoritative).
44
+ *
45
+ * Updated per SPEC-FLEET-BUS-HEALTH-CHECK-BATTERY-1.1 (BB Amendment #6).
43
46
  */
44
47
  export declare function checkFleetMessageFlow(ctx?: CheckContext): Promise<CheckResult>;
45
48
  /** Reset the cached import (for testing with mocks). */
@@ -1 +1 @@
1
- {"version":3,"file":"fleet-health.d.ts","sourceRoot":"","sources":["../../src/checks/fleet-health.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAkC,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAYvF;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAkErF;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CA2DvF;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CA4ElF;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAsDpF;AAiBD,wDAAwD;AACxD,wBAAgB,+BAA+B,IAAI,IAAI,CAEtD;AAoBD;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAmDrF;AAED;;;;;GAKG;AACH,wBAAsB,4BAA4B,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAyE3F;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CA2FxF;AAED,qCAAqC;AACrC,wBAAsB,cAAc,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAU/E"}
1
+ {"version":3,"file":"fleet-health.d.ts","sourceRoot":"","sources":["../../src/checks/fleet-health.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAkC,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAYvF;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAkErF;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CA2DvF;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CA4ElF;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAkFpF;AAiBD,wDAAwD;AACxD,wBAAgB,+BAA+B,IAAI,IAAI,CAEtD;AAoBD;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAmDrF;AAED;;;;;GAKG;AACH,wBAAsB,4BAA4B,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAyE3F;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CA2FxF;AAED,qCAAqC;AACrC,wBAAsB,cAAc,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAU/E"}
@@ -223,10 +223,13 @@ export async function checkFleetBusLoaded(ctx) {
223
223
  }
224
224
  }
225
225
  /**
226
- * #36 — Fleet message flow (informational).
226
+ * #36 — Fleet message flow (informational, with success/error breakdown).
227
227
  *
228
- * Checks if at least one audit event exists across all agents.
229
- * Pre-Phase 2, no events are expectedthis is informational only.
228
+ * Checks if audit events exist across all agents and reports the
229
+ * success/error breakdown. WARNs when ALL events are errorsa strong
230
+ * signal that transport is broken (but Check #40/#41 are authoritative).
231
+ *
232
+ * Updated per SPEC-FLEET-BUS-HEALTH-CHECK-BATTERY-1.1 (BB Amendment #6).
230
233
  */
231
234
  export async function checkFleetMessageFlow(ctx) {
232
235
  const start = Date.now();
@@ -242,6 +245,8 @@ export async function checkFleetMessageFlow(ctx) {
242
245
  };
243
246
  }
244
247
  let totalEvents = 0;
248
+ let successEvents = 0;
249
+ let errorEvents = 0;
245
250
  const agentsWithTraffic = [];
246
251
  for (const agent of EXPECTED_AGENTS) {
247
252
  const jsonlPath = path.join(auditDir, `${agent}.audit.jsonl`);
@@ -251,10 +256,24 @@ export async function checkFleetMessageFlow(ctx) {
251
256
  const content = fs.readFileSync(jsonlPath, 'utf-8').trim();
252
257
  if (!content)
253
258
  continue;
254
- const count = content.split('\n').filter((l) => l.trim()).length;
255
- if (count > 0) {
256
- totalEvents += count;
257
- agentsWithTraffic.push(`${agent}(${count})`);
259
+ const lines = content.split('\n').filter((l) => l.trim());
260
+ if (lines.length > 0) {
261
+ totalEvents += lines.length;
262
+ agentsWithTraffic.push(`${agent}(${lines.length})`);
263
+ for (const line of lines) {
264
+ try {
265
+ const event = JSON.parse(line);
266
+ if (event.outcome === 'delivered' || event.outcome === 'success') {
267
+ successEvents++;
268
+ }
269
+ else if (event.outcome === 'error') {
270
+ errorEvents++;
271
+ }
272
+ }
273
+ catch {
274
+ // count toward total but not success/error
275
+ }
276
+ }
258
277
  }
259
278
  }
260
279
  catch {
@@ -271,11 +290,23 @@ export async function checkFleetMessageFlow(ctx) {
271
290
  durationMs: Date.now() - start,
272
291
  };
273
292
  }
293
+ const breakdown = `${successEvents} success, ${errorEvents} error`;
294
+ const agentSummary = agentsWithTraffic.join(', ');
295
+ if (totalEvents > 0 && successEvents === 0 && errorEvents > 0) {
296
+ return {
297
+ name: 'Fleet message flow',
298
+ category: 'fleet',
299
+ status: 'warn',
300
+ message: `${totalEvents} events: ${breakdown} — ${agentSummary} (all failed — see Check #40/#41)`,
301
+ timestamp: now(),
302
+ durationMs: Date.now() - start,
303
+ };
304
+ }
274
305
  return {
275
306
  name: 'Fleet message flow',
276
307
  category: 'fleet',
277
308
  status: 'pass',
278
- message: `${totalEvents} events: ${agentsWithTraffic.join(', ')}`,
309
+ message: `${totalEvents} events: ${breakdown} — ${agentSummary}`,
279
310
  timestamp: now(),
280
311
  durationMs: Date.now() - start,
281
312
  };
@@ -1 +1 @@
1
- {"version":3,"file":"fleet-health.js","sourceRoot":"","sources":["../../src/checks/fleet-health.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fleet-health.js","sourceRoot":"","sources":["../../src/checks/fleet-health.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,mBAAmB,EAAqB,MAAM,oBAAoB,CAAC;AAEvF,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,CAAU,CAAC;AAC5F,MAAM,eAAe,GAAsB,CAAC,QAAQ,CAAU,CAAC;AAC/D,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEjC,SAAS,cAAc,CAAC,GAAkB;IACxC,OAAO,GAAG,EAAE,WAAW,IAAI,IAAI,CAAC,IAAI,CAClC,mBAAmB,EAAE,EAAE,WAAW,EAAE,WAAW,CAChD,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,GAAkB;IAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAEzD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,8BAA8B,QAAQ,EAAE;YACjD,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,qBAAqB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAEnE,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,KAAK,OAAO,CAAC,CAAC;QACtD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpB,SAAS;QACX,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;YAC5D,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC;YACxE,IAAI,QAAQ,GAAG,MAAM,EAAE,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,YAAY,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,kBAAkB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC/C,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,iBAAiB,qBAAqB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACxE,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,OAAO;QACjB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,GAAG,eAAe,CAAC,MAAM,qBAAqB;QACvD,SAAS,EAAE,GAAG,EAAE;QAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;KAC/B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,GAAkB;IAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAEzD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,IAAI,EAAE,uBAAuB;YAC7B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,sDAAsD;YAC/D,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;QACpC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,KAAK,cAAc,CAAC,CAAC;QAC9D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,SAAS;QAExC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YAC3D,IAAI,CAAC,OAAO;gBAAE,SAAS;YAEvB,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACnE,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC;YAE7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACvC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;oBACvD,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,oBAAoB,CAAC,GAAG,CAAC,CAAC;oBACjD,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,eAAe,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,IAAI,EAAE,uBAAuB;YAC7B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,iBAAiB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAChD,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,OAAO;QACjB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,uBAAuB,CAAC,CAAC,CAAC,qBAAqB;QACxF,SAAS,EAAE,GAAG,EAAE;QAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;KAC/B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,GAAkB;IAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEzB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CACf,yFAAyF,EACzF,GAAG,CACJ,CAAC;QAEF,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,MAAM,WAAW,GAAa,EAAE,CAAC;QAEjC,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;YACpC,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,KAAK,eAAe,CAAC,EAAE,CAAC;gBACtD,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;iBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,yBAAyB,CAAC,EAAE,CAAC;gBAC7D,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO;gBACL,IAAI,EAAE,kBAAkB;gBACxB,QAAQ,EAAE,OAAO;gBACjB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,wBAAwB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACzD,SAAS,EAAE,GAAG,EAAE;gBAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aAC/B,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CACpC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAC5D,CAAC;QAEF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO;gBACL,IAAI,EAAE,kBAAkB;gBACxB,QAAQ,EAAE,OAAO;gBACjB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,iDAAiD;gBAC1D,SAAS,EAAE,GAAG,EAAE;gBAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aAC/B,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3E,OAAO;gBACL,IAAI,EAAE,kBAAkB;gBACxB,QAAQ,EAAE,OAAO;gBACjB,MAAM,EAAE,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;gBACpD,OAAO,EAAE,GAAG,WAAW,CAAC,MAAM,IAAI,eAAe,CAAC,MAAM,qBAAqB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACvL,SAAS,EAAE,GAAG,EAAE;gBAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;aAC/B,CAAC;QACJ,CAAC;QAED,OAAO;YACL,IAAI,EAAE,kBAAkB;YACxB,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,GAAG,WAAW,CAAC,MAAM,IAAI,eAAe,CAAC,MAAM,gBAAgB;YACxE,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,IAAI,EAAE,kBAAkB;YACxB,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,6BAA6B;YACtC,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,GAAkB;IAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAEzD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,IAAI,EAAE,oBAAoB;YAC1B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,2CAA2C;YACpD,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,MAAM,iBAAiB,GAAa,EAAE,CAAC;IAEvC,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;QACpC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,KAAK,cAAc,CAAC,CAAC;QAC9D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,SAAS;QAExC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YAC3D,IAAI,CAAC,OAAO;gBAAE,SAAS;YACvB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC1D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC;gBAC5B,iBAAiB,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;gBACpD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,IAAI,CAAC;wBACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAC/B,IAAI,KAAK,CAAC,OAAO,KAAK,WAAW,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;4BACjE,aAAa,EAAE,CAAC;wBAClB,CAAC;6BAAM,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;4BACrC,WAAW,EAAE,CAAC;wBAChB,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,2CAA2C;oBAC7C,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;QAC1B,CAAC;IACH,CAAC;IAED,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO;YACL,IAAI,EAAE,oBAAoB;YAC1B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,kCAAkC;YAC3C,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,GAAG,aAAa,aAAa,WAAW,QAAQ,CAAC;IACnE,MAAM,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAElD,IAAI,WAAW,GAAG,CAAC,IAAI,aAAa,KAAK,CAAC,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;QAC9D,OAAO;YACL,IAAI,EAAE,oBAAoB;YAC1B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,GAAG,WAAW,YAAY,SAAS,MAAM,YAAY,mCAAmC;YACjG,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,oBAAoB;QAC1B,QAAQ,EAAE,OAAO;QACjB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,GAAG,WAAW,YAAY,SAAS,MAAM,YAAY,EAAE;QAChE,SAAS,EAAE,GAAG,EAAE;QAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;KAC/B,CAAC;AACJ,CAAC;AAED,kEAAkE;AAElE;;;GAGG;AACH,IAAI,aAAuC,CAAC;AAC5C,SAAS,YAAY;IACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,yBAAyB,CAAC;QACtC,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,wDAAwD;AACxD,MAAM,UAAU,+BAA+B;IAC7C,aAAa,GAAG,SAAS,CAAC;AAC5B,CAAC;AAUD,MAAM,oBAAoB,GAAkB;IAC1C,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,kCAAkC,EAAE;IAC7H,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,oBAAoB,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,kCAAkC,EAAE;IAC/H,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,iCAAiC,EAAE;IACxH,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,yCAAyC,EAAE;IAC/H,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,8BAA8B,EAAE;IACzH,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,wCAAwC,EAAE;IACjI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,oCAAoC,EAAE;CACxH,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,GAAkB;IAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,MAAM,EAAE,GAAG,MAAM,YAAY,EAAE,CAAC;IAEhC,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,mCAAmC;YAC5C,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,cAAc,EAAE,kBAAkB,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC;IAClE,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,KAAK,MAAM,EAAE,IAAI,oBAAoB,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9D,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,QAAQ,CAAC,OAAO,KAAK,EAAE,CAAC,aAAa,EAAE,CAAC;YAC1C,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,cAAc,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,SAAS,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAChI,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;IAC7E,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,UAAU,CAAC,IAAI,CAAC,0BAA0B,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9B,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,OAAO;QACjB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,GAAG,oBAAoB,CAAC,MAAM,oBAAoB,SAAS,CAAC,MAAM,uBAAuB;QAClG,SAAS,EAAE,GAAG,EAAE;QAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;KAC/B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,GAAkB;IACnE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,MAAM,EAAE,GAAG,MAAM,YAAY,EAAE,CAAC;IAEhC,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,OAAO;YACL,IAAI,EAAE,2BAA2B;YACjC,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,mCAAmC;YAC5C,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,MAAM,EACJ,kBAAkB,EAAE,qBAAqB,EAAE,wBAAwB,EACnE,cAAc,EAAE,mBAAmB,GACpC,GAAG,EAAE,CAAC;IACP,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,MAAM,GAAG,GAAG,kBAAkB,CAAC,aAAa,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3F,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,UAAU,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,cAAc,CAAC,eAAe,CAAC,EAAE,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,QAAQ,GAAG,wBAAwB,CAAC,UAAU,CAAC,CAAC;IACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IACxD,CAAC;SAAM,CAAC;QACN,IAAI,QAAQ,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE;YAAE,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAClE,IAAI,QAAQ,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI;YAAE,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACxE,IAAI,QAAQ,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE;YAAE,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAClE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM;YAAE,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,SAAS,GAAG,mBAAmB,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;IAC/D,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO;YACL,IAAI,EAAE,2BAA2B;YACjC,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1B,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,2BAA2B;QACjC,QAAQ,EAAE,OAAO;QACjB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,wDAAwD;QACjE,SAAS,EAAE,GAAG,EAAE;QAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;KAC/B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,GAAkB;IAChE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,MAAM,EAAE,GAAG,MAAM,YAAY,EAAE,CAAC;IAEhC,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,OAAO;YACL,IAAI,EAAE,wBAAwB;YAC9B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,mCAAmC;YAC5C,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IACzD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,IAAI,EAAE,wBAAwB;YAC9B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,4CAA4C;YACrD,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAwB;QAC3C,MAAM,EAAE,EAAE,CAAC,WAAW;QACtB,MAAM,EAAE,EAAE,CAAC,WAAW;QACtB,IAAI,EAAE,EAAE,CAAC,SAAS;QAClB,IAAI,EAAE,EAAE,CAAC,SAAS;QAClB,aAAa,EAAE,EAAE,CAAC,gBAAgB;QAClC,GAAG,EAAE,EAAE,CAAC,QAAQ;KACjB,CAAC;IAEF,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,KAAK,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,OAAO,OAAO,CAAC,CAAC;QACxD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,SAAS;QAEvC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;YAC5D,QAAQ,EAAE,CAAC;YAEX,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAChC,UAAU,CAAC,IAAI,CAAC,GAAG,OAAO,UAAU,IAAI,CAAC,IAAI,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,IAAI,IAAI,CAAC,iBAAiB,KAAK,QAAQ,CAAC,iBAAiB,EAAE,CAAC;gBAC1D,UAAU,CAAC,IAAI,CAAC,GAAG,OAAO,UAAU,IAAI,CAAC,iBAAiB,MAAM,QAAQ,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAChG,CAAC;YACD,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC;gBAC1C,UAAU,CAAC,IAAI,CAAC,GAAG,OAAO,UAAU,IAAI,CAAC,SAAS,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;YAChF,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,CAAC,IAAI,CAAC,GAAG,OAAO,mBAAmB,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO;YACL,IAAI,EAAE,wBAAwB;YAC9B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,6BAA6B;YACtC,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO;YACL,IAAI,EAAE,wBAAwB;YAC9B,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9B,SAAS,EAAE,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,wBAAwB;QAC9B,QAAQ,EAAE,OAAO;QACjB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,GAAG,QAAQ,uDAAuD;QAC3E,SAAS,EAAE,GAAG,EAAE;QAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;KAC/B,CAAC;AACJ,CAAC;AAED,qCAAqC;AACrC,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAkB;IACrD,OAAO;QACL,MAAM,sBAAsB,CAAC,GAAG,CAAC;QACjC,MAAM,wBAAwB,CAAC,GAAG,CAAC;QACnC,MAAM,mBAAmB,CAAC,GAAG,CAAC;QAC9B,MAAM,qBAAqB,CAAC,GAAG,CAAC;QAChC,MAAM,sBAAsB,CAAC,GAAG,CAAC;QACjC,MAAM,4BAA4B,CAAC,GAAG,CAAC;QACvC,MAAM,yBAAyB,CAAC,GAAG,CAAC;KACrC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Fleet-bus transport health checks — 8 checks in the 'fleet' category.
3
+ *
4
+ * These checks validate Layers 1-2 of the fleet-bus stack (Gateway + Transport),
5
+ * complementing the existing checks in fleet-health.ts that cover Layer 3 (Bus Logic).
6
+ *
7
+ * Audit-based (filesystem reads only, no gateway access needed):
8
+ * #40 fleet-transport-delivery At least 1 outcome=delivered/success in 24h
9
+ * #41 fleet-transport-error-rate Error rate < 30% (24h), trend < 10% (7d)
10
+ * #40a fleet-agent:{name} Per-agent delivery status (one check per agent)
11
+ *
12
+ * Config/version (filesystem reads, optional shell exec):
13
+ * #42 fleet-config-validation No config warnings in logs + no legacy symlinks
14
+ * #43 fleet-gateway-version-compat Installed OpenClaw ≥ fleet-bus openclaw.minVersion
15
+ * #44 fleet-global-package-version Global fleet-bus version ≥ expected minimum
16
+ * #45 fleet-callgateway-resolution gateway/call.js exists at expected paths
17
+ * #46 fleet-acp-dispatch-status ACP dispatch explicitly disabled
18
+ *
19
+ * Live (opt-in, requires gateway process):
20
+ * #47 fleet-live-ping Self-ping via transportSend, verify delivery
21
+ *
22
+ * Spec: SPEC-FLEET-BUS-HEALTH-CHECK-BATTERY-1.1
23
+ */
24
+ import type { CheckResult } from '../types/health.js';
25
+ import { type CheckContext } from './check-context.js';
26
+ /**
27
+ * #40 — At least one message delivered in the last 24 hours.
28
+ *
29
+ * Accepts both `outcome=delivered` (current) and `outcome=success`
30
+ * (future guaranteed-delivery). See BB Amendment #1.
31
+ */
32
+ export declare function checkFleetTransportDelivery(ctx?: CheckContext): Promise<CheckResult>;
33
+ /**
34
+ * #41 — Monitor error rate with dual-window approach.
35
+ *
36
+ * Primary window (24h) for FAIL threshold, secondary (7d) for trend WARN.
37
+ * Thresholds: 10% WARN / 30% FAIL (BB Amendment #4 & #7).
38
+ */
39
+ export declare function checkFleetTransportErrorRate(ctx?: CheckContext): Promise<CheckResult>;
40
+ /**
41
+ * #40a — Per-agent delivery status (one result per agent).
42
+ *
43
+ * Returns one CheckResult per agent that has an audit file.
44
+ * Agents with 0 deliveries and >0 events get FAIL; agents with
45
+ * no events get WARN (idle); agents with at least 1 delivery get PASS.
46
+ */
47
+ export declare function checkPerAgentDelivery(ctx?: CheckContext): Promise<CheckResult[]>;
48
+ /**
49
+ * #42 — Detect config validation warnings + legacy symlinks.
50
+ *
51
+ * Tiered log source: health endpoint → log file → journalctl fallback.
52
+ * Also detects the clawdbot.json symlink (BB Amendment #2 & #8).
53
+ */
54
+ export declare function checkFleetConfigValidation(ctx?: CheckContext): Promise<CheckResult>;
55
+ /**
56
+ * #43 — Verify OpenClaw version meets fleet-bus minimum.
57
+ *
58
+ * Reads `openclaw.minVersion` from fleet-bus's package.json (BB Amendment #3).
59
+ */
60
+ export declare function checkFleetGatewayVersionCompat(ctx?: CheckContext): Promise<CheckResult>;
61
+ /**
62
+ * #44 — Verify globally installed fleet-bus is at expected minimum.
63
+ */
64
+ export declare function checkFleetGlobalPackageVersion(ctx?: CheckContext): Promise<CheckResult>;
65
+ /**
66
+ * #45 — Verify that gateway/call.js exists at known paths.
67
+ *
68
+ * This check runs in CLI mode (file existence) since the full resolution
69
+ * strategy requires the gateway process context.
70
+ */
71
+ export declare function checkFleetCallGatewayResolution(ctx?: CheckContext): Promise<CheckResult>;
72
+ /**
73
+ * #46 — Verify ACP dispatch is explicitly disabled.
74
+ */
75
+ export declare function checkFleetAcpDispatchStatus(ctx?: CheckContext): Promise<CheckResult>;
76
+ /**
77
+ * #47 — Send a real fleet/ping through the transport stack.
78
+ *
79
+ * Prefers self-ping (loopback); falls back to agent with most recent lastSeen.
80
+ * Only runs when ctx.fleetLivePing is true (BB Answer Q1).
81
+ */
82
+ export declare function checkFleetLivePing(ctx?: CheckContext): Promise<CheckResult>;
83
+ /** Run all fleet transport checks. Check #47 only runs when ctx.fleetLivePing is true. */
84
+ export declare function runFleetTransportChecks(ctx?: CheckContext): Promise<CheckResult[]>;
85
+ /**
86
+ * Compare two version strings (supports both semver "x.y.z" and
87
+ * OpenClaw's "yyyy.m.p" format). Returns -1, 0, or 1.
88
+ */
89
+ export declare function compareVersions(a: string, b: string): number;
90
+ //# sourceMappingURL=fleet-transport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fleet-transport.d.ts","sourceRoot":"","sources":["../../src/checks/fleet-transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAiD,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAqEtG;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAkD1F;AAID;;;;;GAKG;AACH,wBAAsB,4BAA4B,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAwF3F;AAID;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CA+EtF;AAID;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAwEzF;AAID;;;;GAIG;AACH,wBAAsB,8BAA8B,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAsF7F;AAID;;GAEG;AACH,wBAAsB,8BAA8B,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAkD7F;AAID;;;;;GAKG;AACH,wBAAsB,+BAA+B,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAgD9F;AAID;;GAEG;AACH,wBAAsB,2BAA2B,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAgD1F;AAID;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CA4DjF;AAkCD,0FAA0F;AAC1F,wBAAsB,uBAAuB,CAAC,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAiBxF;AAQD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAU5D"}
@@ -0,0 +1,759 @@
1
+ /**
2
+ * Fleet-bus transport health checks — 8 checks in the 'fleet' category.
3
+ *
4
+ * These checks validate Layers 1-2 of the fleet-bus stack (Gateway + Transport),
5
+ * complementing the existing checks in fleet-health.ts that cover Layer 3 (Bus Logic).
6
+ *
7
+ * Audit-based (filesystem reads only, no gateway access needed):
8
+ * #40 fleet-transport-delivery At least 1 outcome=delivered/success in 24h
9
+ * #41 fleet-transport-error-rate Error rate < 30% (24h), trend < 10% (7d)
10
+ * #40a fleet-agent:{name} Per-agent delivery status (one check per agent)
11
+ *
12
+ * Config/version (filesystem reads, optional shell exec):
13
+ * #42 fleet-config-validation No config warnings in logs + no legacy symlinks
14
+ * #43 fleet-gateway-version-compat Installed OpenClaw ≥ fleet-bus openclaw.minVersion
15
+ * #44 fleet-global-package-version Global fleet-bus version ≥ expected minimum
16
+ * #45 fleet-callgateway-resolution gateway/call.js exists at expected paths
17
+ * #46 fleet-acp-dispatch-status ACP dispatch explicitly disabled
18
+ *
19
+ * Live (opt-in, requires gateway process):
20
+ * #47 fleet-live-ping Self-ping via transportSend, verify delivery
21
+ *
22
+ * Spec: SPEC-FLEET-BUS-HEALTH-CHECK-BATTERY-1.1
23
+ */
24
+ import fs from 'node:fs';
25
+ import path from 'node:path';
26
+ import { exec, now, resolveOpenClawHome, getConfigPath } from './check-context.js';
27
+ const EXPECTED_AGENTS = ['grillo', 'jessie', 'noah', 'nole', 'mighty-mark', 'sam'];
28
+ const DEFAULT_ERROR_RATE_WARN = 0.1;
29
+ const DEFAULT_ERROR_RATE_FAIL = 0.3;
30
+ function getFleetBusDir(ctx) {
31
+ return ctx?.fleetBusDir ?? path.join(resolveOpenClawHome(), 'workspace', 'fleet-bus');
32
+ }
33
+ function readAuditEventsByAgent(auditDir) {
34
+ const byAgent = new Map();
35
+ for (const agent of EXPECTED_AGENTS) {
36
+ const jsonlPath = path.join(auditDir, `${agent}.audit.jsonl`);
37
+ if (!fs.existsSync(jsonlPath))
38
+ continue;
39
+ try {
40
+ const content = fs.readFileSync(jsonlPath, 'utf-8').trim();
41
+ if (!content)
42
+ continue;
43
+ const events = [];
44
+ for (const line of content.split('\n')) {
45
+ if (!line.trim())
46
+ continue;
47
+ try {
48
+ events.push(JSON.parse(line));
49
+ }
50
+ catch {
51
+ // skip malformed lines
52
+ }
53
+ }
54
+ if (events.length > 0) {
55
+ byAgent.set(agent, events);
56
+ }
57
+ }
58
+ catch {
59
+ // skip unreadable files
60
+ }
61
+ }
62
+ return byAgent;
63
+ }
64
+ function readAuditEvents(auditDir) {
65
+ const all = [];
66
+ for (const events of readAuditEventsByAgent(auditDir).values()) {
67
+ all.push(...events);
68
+ }
69
+ return all;
70
+ }
71
+ function isSuccessOutcome(event) {
72
+ return event.outcome === 'delivered' || event.outcome === 'success';
73
+ }
74
+ function filterByAge(events, maxAgeMs) {
75
+ const cutoff = Date.now() - maxAgeMs;
76
+ return events.filter((e) => {
77
+ if (!e.timestamp)
78
+ return false;
79
+ return new Date(e.timestamp).getTime() >= cutoff;
80
+ });
81
+ }
82
+ // ── #40 Fleet Transport Delivery ────────────────────────────────
83
+ /**
84
+ * #40 — At least one message delivered in the last 24 hours.
85
+ *
86
+ * Accepts both `outcome=delivered` (current) and `outcome=success`
87
+ * (future guaranteed-delivery). See BB Amendment #1.
88
+ */
89
+ export async function checkFleetTransportDelivery(ctx) {
90
+ const start = Date.now();
91
+ const auditDir = path.join(getFleetBusDir(ctx), 'audit');
92
+ if (!fs.existsSync(auditDir)) {
93
+ return {
94
+ name: 'Fleet transport delivery',
95
+ category: 'fleet',
96
+ status: 'warn',
97
+ message: 'No audit directory — bus has never sent a message',
98
+ timestamp: now(),
99
+ durationMs: Date.now() - start,
100
+ };
101
+ }
102
+ const allEvents = readAuditEvents(auditDir);
103
+ const recent = filterByAge(allEvents, 24 * 60 * 60 * 1000);
104
+ if (recent.length === 0) {
105
+ return {
106
+ name: 'Fleet transport delivery',
107
+ category: 'fleet',
108
+ status: 'warn',
109
+ message: 'No fleet messages in last 24h (bus idle)',
110
+ timestamp: now(),
111
+ durationMs: Date.now() - start,
112
+ };
113
+ }
114
+ const delivered = recent.filter(isSuccessOutcome).length;
115
+ if (delivered === 0) {
116
+ return {
117
+ name: 'Fleet transport delivery',
118
+ category: 'fleet',
119
+ status: 'fail',
120
+ message: `0 delivered / ${recent.length} total — 100% failure rate (transport broken)`,
121
+ timestamp: now(),
122
+ durationMs: Date.now() - start,
123
+ };
124
+ }
125
+ return {
126
+ name: 'Fleet transport delivery',
127
+ category: 'fleet',
128
+ status: 'pass',
129
+ message: `${delivered} delivered / ${recent.length} total in last 24h`,
130
+ timestamp: now(),
131
+ durationMs: Date.now() - start,
132
+ };
133
+ }
134
+ // ── #41 Fleet Transport Error Rate ──────────────────────────────
135
+ /**
136
+ * #41 — Monitor error rate with dual-window approach.
137
+ *
138
+ * Primary window (24h) for FAIL threshold, secondary (7d) for trend WARN.
139
+ * Thresholds: 10% WARN / 30% FAIL (BB Amendment #4 & #7).
140
+ */
141
+ export async function checkFleetTransportErrorRate(ctx) {
142
+ const start = Date.now();
143
+ const auditDir = path.join(getFleetBusDir(ctx), 'audit');
144
+ const warnThreshold = ctx?.fleetErrorRateWarn ?? DEFAULT_ERROR_RATE_WARN;
145
+ const failThreshold = ctx?.fleetErrorRateFail ?? DEFAULT_ERROR_RATE_FAIL;
146
+ if (!fs.existsSync(auditDir)) {
147
+ return {
148
+ name: 'Fleet transport error rate',
149
+ category: 'fleet',
150
+ status: 'pass',
151
+ message: 'No audit trail — no errors to report',
152
+ timestamp: now(),
153
+ durationMs: Date.now() - start,
154
+ };
155
+ }
156
+ const allEvents = readAuditEvents(auditDir);
157
+ const events24h = filterByAge(allEvents, 24 * 60 * 60 * 1000);
158
+ const events7d = filterByAge(allEvents, 7 * 24 * 60 * 60 * 1000);
159
+ if (events24h.length === 0 && events7d.length === 0) {
160
+ return {
161
+ name: 'Fleet transport error rate',
162
+ category: 'fleet',
163
+ status: 'pass',
164
+ message: 'No audit events in last 7 days',
165
+ timestamp: now(),
166
+ durationMs: Date.now() - start,
167
+ };
168
+ }
169
+ if (events24h.length > 0) {
170
+ const errors24h = events24h.filter((e) => e.outcome === 'error').length;
171
+ const rate24h = errors24h / events24h.length;
172
+ if (rate24h >= failThreshold) {
173
+ return {
174
+ name: 'Fleet transport error rate',
175
+ category: 'fleet',
176
+ status: 'fail',
177
+ message: `Error rate ${pct(rate24h)} (${errors24h}/${events24h.length} events failed, 24h) — transport broken`,
178
+ timestamp: now(),
179
+ durationMs: Date.now() - start,
180
+ };
181
+ }
182
+ if (rate24h >= warnThreshold) {
183
+ return {
184
+ name: 'Fleet transport error rate',
185
+ category: 'fleet',
186
+ status: 'warn',
187
+ message: `Error rate ${pct(rate24h)} (${errors24h}/${events24h.length} events failed, 24h) — investigate transport`,
188
+ timestamp: now(),
189
+ durationMs: Date.now() - start,
190
+ };
191
+ }
192
+ }
193
+ if (events7d.length > 0) {
194
+ const errors7d = events7d.filter((e) => e.outcome === 'error').length;
195
+ const rate7d = errors7d / events7d.length;
196
+ if (rate7d >= warnThreshold) {
197
+ return {
198
+ name: 'Fleet transport error rate',
199
+ category: 'fleet',
200
+ status: 'warn',
201
+ message: `24h clean but 7d trend: ${pct(rate7d)} (${errors7d}/${events7d.length} events) — intermittent failures`,
202
+ timestamp: now(),
203
+ durationMs: Date.now() - start,
204
+ };
205
+ }
206
+ }
207
+ const count = events24h.length > 0 ? events24h.length : events7d.length;
208
+ const delivered = events24h.length > 0
209
+ ? events24h.filter(isSuccessOutcome).length
210
+ : events7d.filter(isSuccessOutcome).length;
211
+ return {
212
+ name: 'Fleet transport error rate',
213
+ category: 'fleet',
214
+ status: 'pass',
215
+ message: `Error rate 0% — ${delivered}/${count} events delivered (${events24h.length > 0 ? '24h' : '7d'})`,
216
+ timestamp: now(),
217
+ durationMs: Date.now() - start,
218
+ };
219
+ }
220
+ // ── #40a Per-Agent Transport Delivery ───────────────────────────
221
+ /**
222
+ * #40a — Per-agent delivery status (one result per agent).
223
+ *
224
+ * Returns one CheckResult per agent that has an audit file.
225
+ * Agents with 0 deliveries and >0 events get FAIL; agents with
226
+ * no events get WARN (idle); agents with at least 1 delivery get PASS.
227
+ */
228
+ export async function checkPerAgentDelivery(ctx) {
229
+ const start = Date.now();
230
+ const auditDir = path.join(getFleetBusDir(ctx), 'audit');
231
+ const results = [];
232
+ if (!fs.existsSync(auditDir)) {
233
+ return results;
234
+ }
235
+ const byAgent = readAuditEventsByAgent(auditDir);
236
+ for (const agent of EXPECTED_AGENTS) {
237
+ const agentEvents = byAgent.get(agent);
238
+ if (!agentEvents || agentEvents.length === 0) {
239
+ results.push({
240
+ name: `Fleet agent: ${agent}`,
241
+ category: 'fleet',
242
+ status: 'warn',
243
+ message: 'No audit events (idle)',
244
+ timestamp: now(),
245
+ durationMs: Date.now() - start,
246
+ });
247
+ continue;
248
+ }
249
+ const recent = filterByAge(agentEvents, 24 * 60 * 60 * 1000);
250
+ if (recent.length === 0) {
251
+ results.push({
252
+ name: `Fleet agent: ${agent}`,
253
+ category: 'fleet',
254
+ status: 'warn',
255
+ message: `${agentEvents.length} total events, none in last 24h`,
256
+ timestamp: now(),
257
+ durationMs: Date.now() - start,
258
+ });
259
+ continue;
260
+ }
261
+ const delivered = recent.filter(isSuccessOutcome).length;
262
+ const errors = recent.filter((e) => e.outcome === 'error').length;
263
+ if (delivered === 0 && errors > 0) {
264
+ results.push({
265
+ name: `Fleet agent: ${agent}`,
266
+ category: 'fleet',
267
+ status: 'fail',
268
+ message: `0/${recent.length} delivered (24h) — transport broken for ${agent}`,
269
+ timestamp: now(),
270
+ durationMs: Date.now() - start,
271
+ });
272
+ continue;
273
+ }
274
+ const rate = recent.length > 0 ? errors / recent.length : 0;
275
+ const warnThreshold = ctx?.fleetErrorRateWarn ?? DEFAULT_ERROR_RATE_WARN;
276
+ if (rate >= warnThreshold) {
277
+ results.push({
278
+ name: `Fleet agent: ${agent}`,
279
+ category: 'fleet',
280
+ status: 'warn',
281
+ message: `${delivered}/${recent.length} delivered, ${pct(rate)} error rate (24h)`,
282
+ timestamp: now(),
283
+ durationMs: Date.now() - start,
284
+ });
285
+ continue;
286
+ }
287
+ results.push({
288
+ name: `Fleet agent: ${agent}`,
289
+ category: 'fleet',
290
+ status: 'pass',
291
+ message: `${delivered}/${recent.length} delivered (24h)`,
292
+ timestamp: now(),
293
+ durationMs: Date.now() - start,
294
+ });
295
+ }
296
+ return results;
297
+ }
298
+ // ── #42 Fleet Config & Symlink Validation ───────────────────────
299
+ /**
300
+ * #42 — Detect config validation warnings + legacy symlinks.
301
+ *
302
+ * Tiered log source: health endpoint → log file → journalctl fallback.
303
+ * Also detects the clawdbot.json symlink (BB Amendment #2 & #8).
304
+ */
305
+ export async function checkFleetConfigValidation(ctx) {
306
+ const start = Date.now();
307
+ const issues = [];
308
+ // Sub-check 1: Config validation warnings in gateway logs
309
+ let logContent = '';
310
+ try {
311
+ const logPaths = [
312
+ '/var/log/openclaw/gateway.log',
313
+ path.join(resolveOpenClawHome(), 'logs', 'gateway.log'),
314
+ ];
315
+ for (const logPath of logPaths) {
316
+ if (fs.existsSync(logPath)) {
317
+ logContent = fs.readFileSync(logPath, 'utf-8');
318
+ break;
319
+ }
320
+ }
321
+ if (!logContent) {
322
+ logContent = exec('journalctl -u openclaw-gateway --no-pager --since "1 hour ago" 2>/dev/null || echo ""', ctx);
323
+ }
324
+ }
325
+ catch {
326
+ // No log source available — not a failure, just can't check
327
+ }
328
+ if (logContent) {
329
+ const invalidConfigMatches = logContent.match(/Invalid config at|Unrecognized key/gi);
330
+ if (invalidConfigMatches && invalidConfigMatches.length > 0) {
331
+ issues.push(`${invalidConfigMatches.length} config validation warning(s) — callGateway may fail`);
332
+ }
333
+ }
334
+ // Sub-check 2: Legacy symlink detection (BB Amendment #8)
335
+ const symlinkPaths = [
336
+ '/root/.clawdbot/clawdbot.json',
337
+ path.join(process.env.HOME || '', '.clawdbot', 'clawdbot.json'),
338
+ ];
339
+ for (const symlinkPath of symlinkPaths) {
340
+ try {
341
+ if (fs.existsSync(symlinkPath) && fs.lstatSync(symlinkPath).isSymbolicLink()) {
342
+ issues.push(`Legacy symlink ${symlinkPath} detected — remove and set OPENCLAW_HOME`);
343
+ break;
344
+ }
345
+ }
346
+ catch {
347
+ // Path doesn't exist or isn't accessible
348
+ }
349
+ }
350
+ if (issues.length > 0) {
351
+ return {
352
+ name: 'Fleet config validation',
353
+ category: 'fleet',
354
+ status: 'warn',
355
+ message: issues.join('; '),
356
+ timestamp: now(),
357
+ durationMs: Date.now() - start,
358
+ };
359
+ }
360
+ return {
361
+ name: 'Fleet config validation',
362
+ category: 'fleet',
363
+ status: 'pass',
364
+ message: 'No config warnings; no legacy symlinks',
365
+ timestamp: now(),
366
+ durationMs: Date.now() - start,
367
+ };
368
+ }
369
+ // ── #43 Fleet Gateway Version Compatibility ─────────────────────
370
+ /**
371
+ * #43 — Verify OpenClaw version meets fleet-bus minimum.
372
+ *
373
+ * Reads `openclaw.minVersion` from fleet-bus's package.json (BB Amendment #3).
374
+ */
375
+ export async function checkFleetGatewayVersionCompat(ctx) {
376
+ const start = Date.now();
377
+ let installedVersion = 'unknown';
378
+ try {
379
+ const raw = exec('openclaw --version 2>/dev/null || echo "unknown"', ctx);
380
+ const match = raw.match(/(\d{4}\.\d+\.\d+)/);
381
+ installedVersion = match ? match[1] : raw.trim();
382
+ }
383
+ catch {
384
+ return {
385
+ name: 'Fleet gateway version compat',
386
+ category: 'fleet',
387
+ status: 'warn',
388
+ message: 'Could not determine OpenClaw version',
389
+ timestamp: now(),
390
+ durationMs: Date.now() - start,
391
+ };
392
+ }
393
+ const packageJsonPath = ctx?.fleetBusPackageJsonPath ?? findFleetBusPackageJson();
394
+ if (!packageJsonPath) {
395
+ return {
396
+ name: 'Fleet gateway version compat',
397
+ category: 'fleet',
398
+ status: 'warn',
399
+ message: 'fleet-bus package.json not found — cannot verify compatibility',
400
+ timestamp: now(),
401
+ durationMs: Date.now() - start,
402
+ };
403
+ }
404
+ try {
405
+ const pkg = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
406
+ const minVersion = pkg?.openclaw?.minVersion;
407
+ if (!minVersion) {
408
+ return {
409
+ name: 'Fleet gateway version compat',
410
+ category: 'fleet',
411
+ status: 'warn',
412
+ message: `fleet-bus ${pkg.version ?? '?'} missing openclaw.minVersion — cannot verify compatibility`,
413
+ timestamp: now(),
414
+ durationMs: Date.now() - start,
415
+ };
416
+ }
417
+ if (installedVersion === 'unknown') {
418
+ return {
419
+ name: 'Fleet gateway version compat',
420
+ category: 'fleet',
421
+ status: 'warn',
422
+ message: `Requires OpenClaw ≥ ${minVersion} but could not determine installed version`,
423
+ timestamp: now(),
424
+ durationMs: Date.now() - start,
425
+ };
426
+ }
427
+ if (compareVersions(installedVersion, minVersion) < 0) {
428
+ return {
429
+ name: 'Fleet gateway version compat',
430
+ category: 'fleet',
431
+ status: 'fail',
432
+ message: `fleet-bus ${pkg.version} requires OpenClaw ≥ ${minVersion} but found ${installedVersion} — upgrade OpenClaw`,
433
+ timestamp: now(),
434
+ durationMs: Date.now() - start,
435
+ };
436
+ }
437
+ return {
438
+ name: 'Fleet gateway version compat',
439
+ category: 'fleet',
440
+ status: 'pass',
441
+ message: `fleet-bus ${pkg.version} requires ≥ ${minVersion}, found ${installedVersion} — compatible`,
442
+ timestamp: now(),
443
+ durationMs: Date.now() - start,
444
+ };
445
+ }
446
+ catch {
447
+ return {
448
+ name: 'Fleet gateway version compat',
449
+ category: 'fleet',
450
+ status: 'warn',
451
+ message: 'Could not read fleet-bus package.json',
452
+ timestamp: now(),
453
+ durationMs: Date.now() - start,
454
+ };
455
+ }
456
+ }
457
+ // ── #44 Fleet Global Package Version ────────────────────────────
458
+ /**
459
+ * #44 — Verify globally installed fleet-bus is at expected minimum.
460
+ */
461
+ export async function checkFleetGlobalPackageVersion(ctx) {
462
+ const start = Date.now();
463
+ const packageJsonPath = ctx?.fleetBusGlobalPackageJsonPath ?? findFleetBusPackageJson();
464
+ if (!packageJsonPath) {
465
+ return {
466
+ name: 'Fleet global package version',
467
+ category: 'fleet',
468
+ status: 'warn',
469
+ message: 'fleet-bus not found at global install path',
470
+ timestamp: now(),
471
+ durationMs: Date.now() - start,
472
+ };
473
+ }
474
+ try {
475
+ const pkg = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
476
+ const version = pkg.version;
477
+ const minVersion = pkg?.openclaw?.minVersion;
478
+ const expectedMin = '0.1.8';
479
+ if (compareVersions(version, expectedMin) < 0) {
480
+ return {
481
+ name: 'Fleet global package version',
482
+ category: 'fleet',
483
+ status: 'warn',
484
+ message: `Global fleet-bus ${version} — run: cd /root && npm install @aiassesstech/fleet-bus@latest`,
485
+ timestamp: now(),
486
+ durationMs: Date.now() - start,
487
+ };
488
+ }
489
+ return {
490
+ name: 'Fleet global package version',
491
+ category: 'fleet',
492
+ status: 'pass',
493
+ message: `Global fleet-bus ${version}${minVersion ? ` (requires OpenClaw ≥ ${minVersion})` : ''}`,
494
+ timestamp: now(),
495
+ durationMs: Date.now() - start,
496
+ };
497
+ }
498
+ catch {
499
+ return {
500
+ name: 'Fleet global package version',
501
+ category: 'fleet',
502
+ status: 'warn',
503
+ message: 'Could not read fleet-bus package.json',
504
+ timestamp: now(),
505
+ durationMs: Date.now() - start,
506
+ };
507
+ }
508
+ }
509
+ // ── #45 Fleet callGateway Resolution ────────────────────────────
510
+ /**
511
+ * #45 — Verify that gateway/call.js exists at known paths.
512
+ *
513
+ * This check runs in CLI mode (file existence) since the full resolution
514
+ * strategy requires the gateway process context.
515
+ */
516
+ export async function checkFleetCallGatewayResolution(ctx) {
517
+ const start = Date.now();
518
+ const searchPaths = [
519
+ '/usr/lib/node_modules/openclaw/dist/gateway/call.js',
520
+ '/usr/local/lib/node_modules/openclaw/dist/gateway/call.js',
521
+ path.join(process.env.HOME || '', 'node_modules', 'openclaw', 'dist', 'gateway', 'call.js'),
522
+ path.join(process.env.HOME || '', '.openclaw', 'node_modules', 'openclaw', 'dist', 'gateway', 'call.js'),
523
+ ];
524
+ for (const searchPath of searchPaths) {
525
+ if (fs.existsSync(searchPath)) {
526
+ return {
527
+ name: 'Fleet callGateway resolution',
528
+ category: 'fleet',
529
+ status: 'pass',
530
+ message: `gateway/call.js found at ${searchPath}`,
531
+ timestamp: now(),
532
+ durationMs: Date.now() - start,
533
+ };
534
+ }
535
+ }
536
+ try {
537
+ const npmRoot = exec('npm root -g 2>/dev/null', ctx).trim();
538
+ const npmPath = path.join(npmRoot, 'openclaw', 'dist', 'gateway', 'call.js');
539
+ if (fs.existsSync(npmPath)) {
540
+ return {
541
+ name: 'Fleet callGateway resolution',
542
+ category: 'fleet',
543
+ status: 'pass',
544
+ message: `gateway/call.js found at ${npmPath}`,
545
+ timestamp: now(),
546
+ durationMs: Date.now() - start,
547
+ };
548
+ }
549
+ }
550
+ catch {
551
+ // npm root failed
552
+ }
553
+ return {
554
+ name: 'Fleet callGateway resolution',
555
+ category: 'fleet',
556
+ status: 'fail',
557
+ message: 'gateway/call.js not found — fleet-bus transport will be disabled',
558
+ timestamp: now(),
559
+ durationMs: Date.now() - start,
560
+ };
561
+ }
562
+ // ── #46 Fleet ACP Dispatch Status ───────────────────────────────
563
+ /**
564
+ * #46 — Verify ACP dispatch is explicitly disabled.
565
+ */
566
+ export async function checkFleetAcpDispatchStatus(ctx) {
567
+ const start = Date.now();
568
+ const configPath = getConfigPath(ctx);
569
+ if (!fs.existsSync(configPath)) {
570
+ return {
571
+ name: 'Fleet ACP dispatch',
572
+ category: 'fleet',
573
+ status: 'warn',
574
+ message: `Config not found: ${configPath} — cannot verify ACP dispatch`,
575
+ timestamp: now(),
576
+ durationMs: Date.now() - start,
577
+ };
578
+ }
579
+ try {
580
+ const config = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
581
+ const dispatchEnabled = config?.acp?.dispatch?.enabled;
582
+ if (dispatchEnabled === false) {
583
+ return {
584
+ name: 'Fleet ACP dispatch',
585
+ category: 'fleet',
586
+ status: 'pass',
587
+ message: 'ACP dispatch disabled',
588
+ timestamp: now(),
589
+ durationMs: Date.now() - start,
590
+ };
591
+ }
592
+ return {
593
+ name: 'Fleet ACP dispatch',
594
+ category: 'fleet',
595
+ status: 'warn',
596
+ message: `ACP dispatch ${dispatchEnabled === true ? 'enabled' : 'not set'} — add acp.dispatch.enabled=false to openclaw.json`,
597
+ timestamp: now(),
598
+ durationMs: Date.now() - start,
599
+ };
600
+ }
601
+ catch {
602
+ return {
603
+ name: 'Fleet ACP dispatch',
604
+ category: 'fleet',
605
+ status: 'warn',
606
+ message: 'Could not parse config — cannot verify ACP dispatch',
607
+ timestamp: now(),
608
+ durationMs: Date.now() - start,
609
+ };
610
+ }
611
+ }
612
+ // ── #47 Fleet Live Ping (Opt-In) ────────────────────────────────
613
+ /**
614
+ * #47 — Send a real fleet/ping through the transport stack.
615
+ *
616
+ * Prefers self-ping (loopback); falls back to agent with most recent lastSeen.
617
+ * Only runs when ctx.fleetLivePing is true (BB Answer Q1).
618
+ */
619
+ export async function checkFleetLivePing(ctx) {
620
+ const start = Date.now();
621
+ // This check requires fleet-bus to be importable
622
+ let fb;
623
+ try {
624
+ fb = await import('@aiassesstech/fleet-bus');
625
+ }
626
+ catch {
627
+ return {
628
+ name: 'Fleet live ping',
629
+ category: 'fleet',
630
+ status: 'warn',
631
+ message: 'fleet-bus not installed — cannot perform live ping',
632
+ timestamp: now(),
633
+ durationMs: Date.now() - start,
634
+ };
635
+ }
636
+ const { createFleetMessage, transportSend } = fb;
637
+ if (!transportSend) {
638
+ return {
639
+ name: 'Fleet live ping',
640
+ category: 'fleet',
641
+ status: 'warn',
642
+ message: 'transportSend not available — gateway context required',
643
+ timestamp: now(),
644
+ durationMs: Date.now() - start,
645
+ };
646
+ }
647
+ const target = selectPingTarget(ctx);
648
+ try {
649
+ const msg = createFleetMessage('mighty-mark', target, 'fleet/ping', { probe: true });
650
+ const pingStart = Date.now();
651
+ await transportSend(msg);
652
+ const latency = Date.now() - pingStart;
653
+ return {
654
+ name: 'Fleet live ping',
655
+ category: 'fleet',
656
+ status: 'pass',
657
+ message: target === 'mighty-mark'
658
+ ? `fleet/ping self-loopback delivered in ${latency}ms`
659
+ : `fleet/ping delivered to ${target} in ${latency}ms`,
660
+ timestamp: now(),
661
+ durationMs: Date.now() - start,
662
+ };
663
+ }
664
+ catch (err) {
665
+ const detail = err instanceof Error ? err.message : String(err);
666
+ return {
667
+ name: 'Fleet live ping',
668
+ category: 'fleet',
669
+ status: 'fail',
670
+ message: `fleet/ping failed: ${detail}`,
671
+ timestamp: now(),
672
+ durationMs: Date.now() - start,
673
+ };
674
+ }
675
+ }
676
+ /**
677
+ * Select the best ping target (BB Amendment #5).
678
+ * Prefers self-ping. Falls back to agent with most recent lastSeen.
679
+ */
680
+ function selectPingTarget(ctx) {
681
+ const cardsDir = path.join(getFleetBusDir(ctx), 'cards');
682
+ if (!fs.existsSync(cardsDir))
683
+ return 'mighty-mark';
684
+ let mostRecent = 'mighty-mark';
685
+ let mostRecentTime = 0;
686
+ for (const agent of EXPECTED_AGENTS) {
687
+ if (agent === 'mighty-mark')
688
+ continue;
689
+ const cardPath = path.join(cardsDir, `${agent}.json`);
690
+ try {
691
+ if (!fs.existsSync(cardPath))
692
+ continue;
693
+ const card = JSON.parse(fs.readFileSync(cardPath, 'utf-8'));
694
+ const lastSeen = new Date(card.lastSeen ?? card.registeredAt).getTime();
695
+ if (lastSeen > mostRecentTime) {
696
+ mostRecentTime = lastSeen;
697
+ mostRecent = agent;
698
+ }
699
+ }
700
+ catch {
701
+ // skip unreadable cards
702
+ }
703
+ }
704
+ return mostRecent;
705
+ }
706
+ // ── Aggregate runner ────────────────────────────────────────────
707
+ /** Run all fleet transport checks. Check #47 only runs when ctx.fleetLivePing is true. */
708
+ export async function runFleetTransportChecks(ctx) {
709
+ const results = [
710
+ await checkFleetTransportDelivery(ctx),
711
+ await checkFleetTransportErrorRate(ctx),
712
+ ...(await checkPerAgentDelivery(ctx)),
713
+ await checkFleetConfigValidation(ctx),
714
+ await checkFleetGatewayVersionCompat(ctx),
715
+ await checkFleetGlobalPackageVersion(ctx),
716
+ await checkFleetCallGatewayResolution(ctx),
717
+ await checkFleetAcpDispatchStatus(ctx),
718
+ ];
719
+ if (ctx?.fleetLivePing) {
720
+ results.push(await checkFleetLivePing(ctx));
721
+ }
722
+ return results;
723
+ }
724
+ // ── Utilities ───────────────────────────────────────────────────
725
+ function pct(rate) {
726
+ return `${Math.round(rate * 100)}%`;
727
+ }
728
+ /**
729
+ * Compare two version strings (supports both semver "x.y.z" and
730
+ * OpenClaw's "yyyy.m.p" format). Returns -1, 0, or 1.
731
+ */
732
+ export function compareVersions(a, b) {
733
+ const pa = a.split('.').map(Number);
734
+ const pb = b.split('.').map(Number);
735
+ for (let i = 0; i < Math.max(pa.length, pb.length); i++) {
736
+ const na = pa[i] ?? 0;
737
+ const nb = pb[i] ?? 0;
738
+ if (na < nb)
739
+ return -1;
740
+ if (na > nb)
741
+ return 1;
742
+ }
743
+ return 0;
744
+ }
745
+ /** Search well-known paths for fleet-bus package.json. */
746
+ function findFleetBusPackageJson() {
747
+ const candidates = [
748
+ path.join(process.env.HOME || '', 'node_modules', '@aiassesstech', 'fleet-bus', 'package.json'),
749
+ path.join(resolveOpenClawHome(), 'extensions', 'mighty-mark', 'node_modules', '@aiassesstech', 'fleet-bus', 'package.json'),
750
+ '/usr/lib/node_modules/@aiassesstech/fleet-bus/package.json',
751
+ '/usr/local/lib/node_modules/@aiassesstech/fleet-bus/package.json',
752
+ ];
753
+ for (const candidate of candidates) {
754
+ if (fs.existsSync(candidate))
755
+ return candidate;
756
+ }
757
+ return null;
758
+ }
759
+ //# sourceMappingURL=fleet-transport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fleet-transport.js","sourceRoot":"","sources":["../../src/checks/fleet-transport.ts"],"names":[],"mappings":"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"}
package/dist/cli/bin.js CHANGED
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aiassesstech/mighty-mark",
3
- "version": "0.5.7",
3
+ "version": "0.5.8",
4
4
  "description": "System Health Sentinel for AI Assess Tech Fleet — autonomous monitoring, watchdog recovery, and fleet infrastructure oversight.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",