@cat-factory/server 0.210.0 → 0.212.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config/numeric.d.ts.map +1 -1
- package/dist/config/numeric.js +7 -3
- package/dist/config/numeric.js.map +1 -1
- package/dist/config/platformAlerts.d.ts +25 -1
- package/dist/config/platformAlerts.d.ts.map +1 -1
- package/dist/config/platformAlerts.js +107 -0
- package/dist/config/platformAlerts.js.map +1 -1
- package/dist/config/types.d.ts +23 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/warnOnce.d.ts +25 -0
- package/dist/config/warnOnce.d.ts.map +1 -0
- package/dist/config/warnOnce.js +56 -0
- package/dist/config/warnOnce.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/observability/logger.d.ts +11 -2
- package/dist/observability/logger.d.ts.map +1 -1
- package/dist/observability/logger.js +60 -3
- package/dist/observability/logger.js.map +1 -1
- package/dist/runtime/platformHealth.d.ts.map +1 -1
- package/dist/runtime/platformHealth.js +38 -12
- package/dist/runtime/platformHealth.js.map +1 -1
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"numeric.d.ts","sourceRoot":"","sources":["../../src/config/numeric.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"numeric.d.ts","sourceRoot":"","sources":["../../src/config/numeric.ts"],"names":[],"mappings":"AA0BA;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK9E;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAY3F;AAED;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,aAAgB,CAAA;AAE/C;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG;IAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,CAiB9F"}
|
package/dist/config/numeric.js
CHANGED
|
@@ -11,15 +11,17 @@
|
|
|
11
11
|
// no noise (falling back to the default is the intended behaviour there), but a PRESENT
|
|
12
12
|
// value that is not a finite number emits one structured warning naming the var and the
|
|
13
13
|
// rejected value before returning `undefined`. The caller keeps its own `?? default`, so
|
|
14
|
-
// this only reports the rejection — it never changes the resolved value.
|
|
14
|
+
// this only reports the rejection — it never changes the resolved value. "One warning"
|
|
15
|
+
// is per PROCESS rather than per call (`warnOnce.ts`), because the Worker re-derives the
|
|
16
|
+
// config on every invocation and a standing typo would otherwise log on each one.
|
|
15
17
|
//
|
|
16
18
|
// Both facades share the same footgun (Node `config.ts` `num()` + the Worker's
|
|
17
19
|
// `infrastructure/config/utils.ts` `num()`), so the message lives here in the shared
|
|
18
20
|
// server layer and each facade's `num` delegates to it — the warning reads identically
|
|
19
21
|
// across runtimes, per "keep the runtimes symmetric".
|
|
20
22
|
// ---------------------------------------------------------------------------
|
|
21
|
-
import { logger } from '../observability/logger.js';
|
|
22
23
|
import { DOCS } from './docs.js';
|
|
24
|
+
import { configWarnings } from './warnOnce.js';
|
|
23
25
|
/**
|
|
24
26
|
* The single-line operator warning for a numeric env var set to a non-numeric value.
|
|
25
27
|
* Pure (no logging) so it can be unit-tested and so the log fields + message stay in one
|
|
@@ -41,7 +43,9 @@ export function parseNumericEnv(name, value) {
|
|
|
41
43
|
const n = Number(value);
|
|
42
44
|
if (Number.isFinite(n))
|
|
43
45
|
return n;
|
|
44
|
-
|
|
46
|
+
// Once per process, not once per read: the Worker re-derives the whole config on every
|
|
47
|
+
// invocation, so an unconditional warn here is one line per request (see `warnOnce.ts`).
|
|
48
|
+
configWarnings.warnOnce(describeRejectedNumericEnv(name, value), {
|
|
45
49
|
var: name,
|
|
46
50
|
value,
|
|
47
51
|
docsUrl: DOCS.envVars(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"numeric.js","sourceRoot":"","sources":["../../src/config/numeric.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4EAA4E;AAC5E,EAAE;AACF,oFAAoF;AACpF,kFAAkF;AAClF,mFAAmF;AACnF,uFAAuF;AACvF,oDAAoD;AACpD,EAAE;AACF,uFAAuF;AACvF,wFAAwF;AACxF,wFAAwF;AACxF,yFAAyF;AACzF,
|
|
1
|
+
{"version":3,"file":"numeric.js","sourceRoot":"","sources":["../../src/config/numeric.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4EAA4E;AAC5E,EAAE;AACF,oFAAoF;AACpF,kFAAkF;AAClF,mFAAmF;AACnF,uFAAuF;AACvF,oDAAoD;AACpD,EAAE;AACF,uFAAuF;AACvF,wFAAwF;AACxF,wFAAwF;AACxF,yFAAyF;AACzF,uFAAuF;AACvF,yFAAyF;AACzF,kFAAkF;AAClF,EAAE;AACF,+EAA+E;AAC/E,qFAAqF;AACrF,uFAAuF;AACvF,sDAAsD;AACtD,8EAA8E;AAE9E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAAY,EAAE,KAAa;IACpE,OAAO,CACL,GAAG,IAAI,eAAe,KAAK,uDAAuD;QAClF,yBAAyB,IAAI,wCAAwC,IAAI,CAAC,OAAO,EAAE,GAAG,CACvF,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,KAAyB;IACrE,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,SAAS,CAAA;IAChE,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IACvB,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,CAAC,CAAA;IAChC,uFAAuF;IACvF,yFAAyF;IACzF,cAAc,CAAC,QAAQ,CAAC,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE;QAC/D,GAAG,EAAE,IAAI;QACT,KAAK;QACL,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;KACxB,CAAC,CAAA;IACF,OAAO,SAAS,CAAA;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,aAAa,CAAA;AAW/C;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,KAAa,EAAE,UAAkB;IAC7E,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IAC5B,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;IACzB,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,kBAAkB;QAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAA;IAC7E,8FAA8F;IAC9F,gEAAgE;IAChE,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC,IAAI,CAAC;YACN,CAAC,CAAC,wEAAwE;YAC1E,CAAC,CAAC,eAAe,kBAAkB,sDAAsD;gBACvF,sBAAsB;QAC1B,CAAC,CAAC,uCAAuC,CAAA;IAC3C,OAAO;QACL,QAAQ,EACN,GAAG,IAAI,KAAK,KAAK,KAAK,KAAK,wBAAwB,UAAU,MAAM;YACnE,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG;KAC3B,CAAA;AACH,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { PlatformAlertWindow } from '@cat-factory/contracts';
|
|
1
|
+
import type { PlatformAlertWindow, PlatformFailureKindRule } from '@cat-factory/contracts';
|
|
2
2
|
import type { PlatformAlertConfig } from './types.js';
|
|
3
3
|
/**
|
|
4
4
|
* Parse the `1h`/`24h`/`7d` alert window, defaulting to the most operationally useful `1h`.
|
|
@@ -21,7 +21,31 @@ export interface PlatformAlertEnvInput {
|
|
|
21
21
|
minStalledPriorRuns?: string;
|
|
22
22
|
maxFailureKindShare?: string;
|
|
23
23
|
maxSweepFailures?: string;
|
|
24
|
+
/** `PLATFORM_ALERTS_FAILURE_KIND_RATES`, e.g. `evicted=0.05:3,timeout=0.2`. */
|
|
25
|
+
failureKindRates?: string;
|
|
24
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* Parse the per-kind alert rules from one env string: a comma-separated list of
|
|
29
|
+
* `kind=share[:minCount]` entries, e.g. `evicted=0.05:3,timeout=0.2`.
|
|
30
|
+
*
|
|
31
|
+
* Every rejection is REPORTED and only the offending entry is dropped, rather than the value
|
|
32
|
+
* being taken as a whole or discarded as a whole. Both alternatives are worse in the same
|
|
33
|
+
* direction: an operator who typed one rule wrongly is told which, and keeps the rules they
|
|
34
|
+
* typed correctly, instead of finding out on the night the alert did not page. A rule that
|
|
35
|
+
* cannot be read is not a rule, so it is never guessed at (a `share` outside (0, 1] is not
|
|
36
|
+
* clamped into range here, unlike a scalar ceiling: clamping `evicted=50` to 1.0 would invent
|
|
37
|
+
* "when EVERY failure is an eviction" out of somebody meaning 50%).
|
|
38
|
+
*
|
|
39
|
+
* An UNRECOGNISED kind is the one problem reported without dropping the rule, because dropping
|
|
40
|
+
* it and keeping it silently are both wrong for different halves of the same case. A kind this
|
|
41
|
+
* build does not produce is either a typo or a kind a later release retired, and nothing here
|
|
42
|
+
* can tell those apart — so the rule is kept (a retired kind is data an operator should get to
|
|
43
|
+
* decide about, exactly as in the settings editor) and the fact that it can never fire is
|
|
44
|
+
* STATED. Left silent it is the worst outcome the whole var has: a pager somebody deliberately
|
|
45
|
+
* armed, indistinguishable from a kind that simply never occurred, discovered on the night it
|
|
46
|
+
* did not go off.
|
|
47
|
+
*/
|
|
48
|
+
export declare function parseFailureKindRules(raw: string | undefined): PlatformFailureKindRule[];
|
|
25
49
|
/**
|
|
26
50
|
* Resolve the platform-health alert config from raw env strings. Unset/blank/garbage values
|
|
27
51
|
* fall back to {@link DEFAULT_PLATFORM_ALERT_THRESHOLDS} (a non-numeric value emits the shared
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platformAlerts.d.ts","sourceRoot":"","sources":["../../src/config/platformAlerts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"platformAlerts.d.ts","sourceRoot":"","sources":["../../src/config/platformAlerts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAO1F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAgBrD;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,mBAAmB,CAG7F;AAED,gGAAgG;AAChG,MAAM,WAAW,qBAAqB;IACpC,oDAAoD;IACpD,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAKD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,uBAAuB,EAAE,CA+ExF;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,qBAAqB,GAAG,mBAAmB,CAmE1F"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
import { isAgentFailureKind, MAX_FAILURE_KIND_LENGTH, MAX_FAILURE_KIND_RULES, } from '@cat-factory/contracts';
|
|
1
2
|
import { DEFAULT_PLATFORM_ALERT_THRESHOLDS } from '@cat-factory/orchestration';
|
|
2
3
|
import { parseNumericEnv } from './numeric.js';
|
|
4
|
+
import { DOCS } from './docs.js';
|
|
5
|
+
import { configWarnings } from './warnOnce.js';
|
|
3
6
|
// Shared, runtime-neutral parser for the platform-health alerting env, so the Worker's
|
|
4
7
|
// `loadConfig` and the Node/local `loadNodeConfig` derive an IDENTICAL `PlatformAlertConfig`
|
|
5
8
|
// from the same vars + defaults + clamps ("keep the runtimes symmetric"). Each facade reads
|
|
@@ -19,6 +22,105 @@ export function parsePlatformObservabilityWindow(raw) {
|
|
|
19
22
|
const v = raw?.trim();
|
|
20
23
|
return v === '24h' || v === '7d' ? v : '1h';
|
|
21
24
|
}
|
|
25
|
+
/** The env var the per-kind rules come from, named once so the warnings below agree. */
|
|
26
|
+
const FAILURE_KIND_RATES_VAR = 'PLATFORM_ALERTS_FAILURE_KIND_RATES';
|
|
27
|
+
/**
|
|
28
|
+
* Parse the per-kind alert rules from one env string: a comma-separated list of
|
|
29
|
+
* `kind=share[:minCount]` entries, e.g. `evicted=0.05:3,timeout=0.2`.
|
|
30
|
+
*
|
|
31
|
+
* Every rejection is REPORTED and only the offending entry is dropped, rather than the value
|
|
32
|
+
* being taken as a whole or discarded as a whole. Both alternatives are worse in the same
|
|
33
|
+
* direction: an operator who typed one rule wrongly is told which, and keeps the rules they
|
|
34
|
+
* typed correctly, instead of finding out on the night the alert did not page. A rule that
|
|
35
|
+
* cannot be read is not a rule, so it is never guessed at (a `share` outside (0, 1] is not
|
|
36
|
+
* clamped into range here, unlike a scalar ceiling: clamping `evicted=50` to 1.0 would invent
|
|
37
|
+
* "when EVERY failure is an eviction" out of somebody meaning 50%).
|
|
38
|
+
*
|
|
39
|
+
* An UNRECOGNISED kind is the one problem reported without dropping the rule, because dropping
|
|
40
|
+
* it and keeping it silently are both wrong for different halves of the same case. A kind this
|
|
41
|
+
* build does not produce is either a typo or a kind a later release retired, and nothing here
|
|
42
|
+
* can tell those apart — so the rule is kept (a retired kind is data an operator should get to
|
|
43
|
+
* decide about, exactly as in the settings editor) and the fact that it can never fire is
|
|
44
|
+
* STATED. Left silent it is the worst outcome the whole var has: a pager somebody deliberately
|
|
45
|
+
* armed, indistinguishable from a kind that simply never occurred, discovered on the night it
|
|
46
|
+
* did not go off.
|
|
47
|
+
*/
|
|
48
|
+
export function parseFailureKindRules(raw) {
|
|
49
|
+
if (raw === undefined || raw.trim() === '')
|
|
50
|
+
return [];
|
|
51
|
+
const rules = [];
|
|
52
|
+
const seen = new Set();
|
|
53
|
+
const warn = (entry, what) => {
|
|
54
|
+
configWarnings.warnOnce(`${FAILURE_KIND_RATES_VAR} entry "${entry}" ${what} ` +
|
|
55
|
+
`Expected \`kind=share[:minCount]\` with share in (0, 1], e.g. \`evicted=0.05:3\`. ` +
|
|
56
|
+
`See ${DOCS.envVars()}.`, { var: FAILURE_KIND_RATES_VAR, entry, docsUrl: DOCS.envVars() });
|
|
57
|
+
};
|
|
58
|
+
const reject = (entry, why) => warn(entry, `${why}, so this rule is ignored.`);
|
|
59
|
+
for (const entry of raw.split(',')) {
|
|
60
|
+
const text = entry.trim();
|
|
61
|
+
if (text === '')
|
|
62
|
+
continue;
|
|
63
|
+
const eq = text.indexOf('=');
|
|
64
|
+
if (eq <= 0) {
|
|
65
|
+
reject(text, 'is not `kind=share`');
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
const kind = text.slice(0, eq).trim();
|
|
69
|
+
const [shareText, countText, ...extra] = text
|
|
70
|
+
.slice(eq + 1)
|
|
71
|
+
.split(':')
|
|
72
|
+
.map((part) => part.trim());
|
|
73
|
+
if (kind === '' || extra.length > 0) {
|
|
74
|
+
reject(text, 'is not `kind=share[:minCount]`');
|
|
75
|
+
continue;
|
|
76
|
+
}
|
|
77
|
+
// Held to the SAME bound as a settings-authored rule (`platformFailureKindRuleSchema`),
|
|
78
|
+
// though an env-derived rule never passes through that schema: one of the two paths quietly
|
|
79
|
+
// accepting what the other refuses is how the deployment default and the account override
|
|
80
|
+
// stop meaning the same thing.
|
|
81
|
+
if (kind.length > MAX_FAILURE_KIND_LENGTH) {
|
|
82
|
+
reject(text, `names a kind longer than ${MAX_FAILURE_KIND_LENGTH} characters`);
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
const share = Number(shareText);
|
|
86
|
+
if (!Number.isFinite(share) || share <= 0 || share > 1) {
|
|
87
|
+
reject(text, 'does not name a share greater than 0 and at most 1');
|
|
88
|
+
continue;
|
|
89
|
+
}
|
|
90
|
+
// Absent means the schema default (1), and is left ABSENT rather than written as 1: the rule
|
|
91
|
+
// is stored and rendered alongside settings-authored ones, where an unset minimum reads as
|
|
92
|
+
// inherited. `0` is refused rather than treated as unset, since a rule that fires on zero
|
|
93
|
+
// occurrences of its kind is not something an operator can have meant.
|
|
94
|
+
let minCount;
|
|
95
|
+
if (countText !== undefined && countText !== '') {
|
|
96
|
+
const parsed = Number(countText);
|
|
97
|
+
if (!Number.isInteger(parsed) || parsed < 1) {
|
|
98
|
+
reject(text, 'does not name a whole minimum count of 1 or more');
|
|
99
|
+
continue;
|
|
100
|
+
}
|
|
101
|
+
minCount = parsed;
|
|
102
|
+
}
|
|
103
|
+
if (seen.has(kind)) {
|
|
104
|
+
reject(text, `repeats the kind "${kind}", which an earlier entry already covers`);
|
|
105
|
+
continue;
|
|
106
|
+
}
|
|
107
|
+
if (rules.length >= MAX_FAILURE_KIND_RULES) {
|
|
108
|
+
reject(text, `is past the limit of ${MAX_FAILURE_KIND_RULES} per-kind rules`);
|
|
109
|
+
continue;
|
|
110
|
+
}
|
|
111
|
+
// Kept, not dropped: see the note above on why a kind this build does not produce is
|
|
112
|
+
// reported rather than refused. The rule is inert until something produces that kind, and
|
|
113
|
+
// saying so is the whole point — a rule that can never fire and a kind that never occurred
|
|
114
|
+
// are otherwise the same silence.
|
|
115
|
+
if (!isAgentFailureKind(kind)) {
|
|
116
|
+
warn(text, `names "${kind}", which is not a failure kind this build produces, so the rule is kept ` +
|
|
117
|
+
`but can never fire. Check the spelling, or drop the rule if the kind was retired.`);
|
|
118
|
+
}
|
|
119
|
+
seen.add(kind);
|
|
120
|
+
rules.push({ kind, maxShare: share, ...(minCount === undefined ? {} : { minCount }) });
|
|
121
|
+
}
|
|
122
|
+
return rules;
|
|
123
|
+
}
|
|
22
124
|
/**
|
|
23
125
|
* Resolve the platform-health alert config from raw env strings. Unset/blank/garbage values
|
|
24
126
|
* fall back to {@link DEFAULT_PLATFORM_ALERT_THRESHOLDS} (a non-numeric value emits the shared
|
|
@@ -54,6 +156,11 @@ export function resolvePlatformAlertConfig(env) {
|
|
|
54
156
|
// cleared `minRuns` and had a single failure, which is not a threshold anyone means to set.
|
|
55
157
|
maxFailureKindShare: Math.min(1, Math.max(Number.EPSILON, nonNeg('PLATFORM_ALERTS_MAX_FAILURE_KIND_SHARE', env.maxFailureKindShare, d.maxFailureKindShare))),
|
|
56
158
|
maxSweepFailures: Math.max(1, nonNeg('PLATFORM_ALERTS_MAX_SWEEP_FAILURES', env.maxSweepFailures, d.maxSweepFailures)),
|
|
159
|
+
// No fallback to the built-in default, unlike every scalar above, because there is nothing
|
|
160
|
+
// to fall back to: the shipped default is an empty list, so an unset var and a var whose
|
|
161
|
+
// every entry was rejected both resolve to "no per-kind rules" — and the rejected one has
|
|
162
|
+
// already said so, once per entry, rather than resolving quietly.
|
|
163
|
+
failureKindRules: parseFailureKindRules(env.failureKindRates),
|
|
57
164
|
},
|
|
58
165
|
};
|
|
59
166
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platformAlerts.js","sourceRoot":"","sources":["../../src/config/platformAlerts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iCAAiC,EAAE,MAAM,4BAA4B,CAAA;AAE9E,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,uFAAuF;AACvF,6FAA6F;AAC7F,4FAA4F;AAC5F,2FAA2F;AAC3F,gEAAgE;AAEhE,6FAA6F;AAC7F,MAAM,kCAAkC,GAAG,CAAC,GAAG,MAAM,CAAA;AACrD,uFAAuF;AACvF,MAAM,8BAA8B,GAAG,MAAM,CAAA;AAE7C;;;;;GAKG;AACH,MAAM,UAAU,gCAAgC,CAAC,GAAuB;IACtE,MAAM,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,CAAA;IACrB,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AAC7C,CAAC;
|
|
1
|
+
{"version":3,"file":"platformAlerts.js","sourceRoot":"","sources":["../../src/config/platformAlerts.ts"],"names":[],"mappings":"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"}
|
package/dist/config/types.d.ts
CHANGED
|
@@ -364,6 +364,29 @@ export interface OtelConfig {
|
|
|
364
364
|
* off unless {@link enabled} AND `OTEL_PLATFORM_METRICS=true`.
|
|
365
365
|
*/
|
|
366
366
|
platformMetrics: OtelPlatformMetricsConfig;
|
|
367
|
+
/**
|
|
368
|
+
* Structured LOG export: every line the platform emits (at the configured `LOG_LEVEL`) is
|
|
369
|
+
* copied to the same OTLP endpoint as OTLP log records, so an operator reads logs, traces
|
|
370
|
+
* and metrics in one backend. A further opt-in ON TOP of the base OTel exporter, since it
|
|
371
|
+
* adds an egress POST per batch of lines; off unless {@link enabled} AND `OTEL_LOGS=true`.
|
|
372
|
+
*/
|
|
373
|
+
logs: OtelLogsConfig;
|
|
374
|
+
}
|
|
375
|
+
export interface OtelLogsConfig {
|
|
376
|
+
/** Opt-in flag (`OTEL_LOGS=true`); only effective when the base OTel exporter is on. */
|
|
377
|
+
enabled: boolean;
|
|
378
|
+
/**
|
|
379
|
+
* How often the buffered lines are flushed (ms). Node reads `OTEL_LOGS_FLUSH_INTERVAL_MS`
|
|
380
|
+
* (default 5s); the Worker flushes at the END OF EVERY INVOCATION instead (its module state
|
|
381
|
+
* is per isolate and an isolate is discarded without notice) and ignores this.
|
|
382
|
+
*/
|
|
383
|
+
flushIntervalMs: number;
|
|
384
|
+
/**
|
|
385
|
+
* Lines per OTLP POST (`OTEL_LOGS_MAX_BATCH_SIZE`, default 128). Also bounds what a
|
|
386
|
+
* collector outage may hold in memory: the exporter buffers a small multiple of it and
|
|
387
|
+
* drops the oldest beyond that, reporting the drop count on the next batch.
|
|
388
|
+
*/
|
|
389
|
+
maxBatchSize: number;
|
|
367
390
|
}
|
|
368
391
|
export interface OtelPlatformMetricsConfig {
|
|
369
392
|
/** Opt-in flag (`OTEL_PLATFORM_METRICS=true`); only effective when the base OTel exporter is on. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { LogFields, Logger } from '@cat-factory/kernel';
|
|
2
|
+
/**
|
|
3
|
+
* A process's record of the config warnings it has already emitted.
|
|
4
|
+
*
|
|
5
|
+
* A class with an injected {@link Logger} rather than a bare module-level `Set`, so a test can
|
|
6
|
+
* hold its own instance and assert the suppression against `createRecordingLogger()` instead of
|
|
7
|
+
* needing a reset hook that only tests would call.
|
|
8
|
+
*/
|
|
9
|
+
export declare class ConfigWarningLog {
|
|
10
|
+
#private;
|
|
11
|
+
constructor(log: Logger);
|
|
12
|
+
/**
|
|
13
|
+
* Warn about a bad config value unless this exact message has already been emitted.
|
|
14
|
+
*
|
|
15
|
+
* The MESSAGE is the identity, which is what makes the dedup safe to apply blindly: every
|
|
16
|
+
* message in this folder names its variable and quotes the offending value, so two genuinely
|
|
17
|
+
* different problems cannot collide, and re-reading the same bad var is the only thing that
|
|
18
|
+
* can. Returns whether the line was emitted, so a caller (or a test) can tell "said it" from
|
|
19
|
+
* "already said it" without inspecting the sink.
|
|
20
|
+
*/
|
|
21
|
+
warnOnce(message: string, fields: LogFields): boolean;
|
|
22
|
+
}
|
|
23
|
+
/** The process-wide instance the config parsers report through. */
|
|
24
|
+
export declare const configWarnings: ConfigWarningLog;
|
|
25
|
+
//# sourceMappingURL=warnOnce.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"warnOnce.d.ts","sourceRoot":"","sources":["../../src/config/warnOnce.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAG5D;;;;;;GAMG;AACH,qBAAa,gBAAgB;;IAI3B,YAAY,GAAG,EAAE,MAAM,EAEtB;IAED;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAKpD;CACF;AAED,mEAAmE;AACnE,eAAO,MAAM,cAAc,kBAA+B,CAAA"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// Emit each distinct config-parse warning ONCE per process, rather than once per read.
|
|
3
|
+
//
|
|
4
|
+
// The env parsers in this folder report a bad value the moment they meet it, which is right:
|
|
5
|
+
// silently falling back to a default is the gap they exist to close. What makes the emission
|
|
6
|
+
// site the wrong place to log unconditionally is WHERE they run. `loadConfig(env)` is not a
|
|
7
|
+
// boot-time call on every facade — the Worker re-derives the whole config on each invocation
|
|
8
|
+
// (`buildContainer`, the cron and queue entry points), so a single mistyped var is not one
|
|
9
|
+
// warning, it is one warning per request for as long as it stays mistyped. A list-valued knob
|
|
10
|
+
// like `PLATFORM_ALERTS_FAILURE_KIND_RATES` multiplies that again, once per malformed entry.
|
|
11
|
+
//
|
|
12
|
+
// A flood is not a louder signal, it is a quieter one: it buries the lines around it and it is
|
|
13
|
+
// the reason operators filter a level out. So the message is emitted the first time a process
|
|
14
|
+
// sees it and suppressed after, which on the Worker means once per isolate — often enough that
|
|
15
|
+
// a recycled isolate re-states a standing problem, rare enough that it never drowns anything.
|
|
16
|
+
//
|
|
17
|
+
// This is deliberately NOT the `AppCaches` seam, which the caching rule points at. Nothing here
|
|
18
|
+
// is cached state: there is no value to read back, nothing to invalidate, and nothing another
|
|
19
|
+
// node has to agree about. It is one process's record of what it has already said, and it must
|
|
20
|
+
// work at a point where the container (and therefore `container.caches`) does not exist yet,
|
|
21
|
+
// because parsing the config is what BUILDS the container.
|
|
22
|
+
// ---------------------------------------------------------------------------
|
|
23
|
+
import { logger } from '../observability/logger.js';
|
|
24
|
+
/**
|
|
25
|
+
* A process's record of the config warnings it has already emitted.
|
|
26
|
+
*
|
|
27
|
+
* A class with an injected {@link Logger} rather than a bare module-level `Set`, so a test can
|
|
28
|
+
* hold its own instance and assert the suppression against `createRecordingLogger()` instead of
|
|
29
|
+
* needing a reset hook that only tests would call.
|
|
30
|
+
*/
|
|
31
|
+
export class ConfigWarningLog {
|
|
32
|
+
#seen = new Set();
|
|
33
|
+
#logger;
|
|
34
|
+
constructor(log) {
|
|
35
|
+
this.#logger = log;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Warn about a bad config value unless this exact message has already been emitted.
|
|
39
|
+
*
|
|
40
|
+
* The MESSAGE is the identity, which is what makes the dedup safe to apply blindly: every
|
|
41
|
+
* message in this folder names its variable and quotes the offending value, so two genuinely
|
|
42
|
+
* different problems cannot collide, and re-reading the same bad var is the only thing that
|
|
43
|
+
* can. Returns whether the line was emitted, so a caller (or a test) can tell "said it" from
|
|
44
|
+
* "already said it" without inspecting the sink.
|
|
45
|
+
*/
|
|
46
|
+
warnOnce(message, fields) {
|
|
47
|
+
if (this.#seen.has(message))
|
|
48
|
+
return false;
|
|
49
|
+
this.#seen.add(message);
|
|
50
|
+
this.#logger.warn(message, fields);
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/** The process-wide instance the config parsers report through. */
|
|
55
|
+
export const configWarnings = new ConfigWarningLog(logger);
|
|
56
|
+
//# sourceMappingURL=warnOnce.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"warnOnce.js","sourceRoot":"","sources":["../../src/config/warnOnce.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,uFAAuF;AACvF,EAAE;AACF,6FAA6F;AAC7F,6FAA6F;AAC7F,4FAA4F;AAC5F,6FAA6F;AAC7F,2FAA2F;AAC3F,8FAA8F;AAC9F,6FAA6F;AAC7F,EAAE;AACF,+FAA+F;AAC/F,8FAA8F;AAC9F,+FAA+F;AAC/F,8FAA8F;AAC9F,EAAE;AACF,gGAAgG;AAChG,8FAA8F;AAC9F,+FAA+F;AAC/F,6FAA6F;AAC7F,2DAA2D;AAC3D,8EAA8E;AAG9E,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAEnD;;;;;;GAMG;AACH,MAAM,OAAO,gBAAgB;IAClB,KAAK,GAAG,IAAI,GAAG,EAAU,CAAA;IACzB,OAAO,CAAQ;IAExB,YAAY,GAAW;QACrB,IAAI,CAAC,OAAO,GAAG,GAAG,CAAA;IACpB,CAAC;IAED;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAe,EAAE,MAAiB;QACzC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAA;QACzC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QAClC,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAED,mEAAmE;AACnE,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { createPinoLogger, logger, noopLogger, getLogLevel, parseLogLevel, setLogLevel, type LogFields, type LogLevel, type Logger, } from './observability/logger.js';
|
|
1
|
+
export { createPinoLogger, logger, noopLogger, getLogLevel, getLogSink, parseLogLevel, setLogLevel, setLogSink, type LogFields, type LogLevel, type LogSink, type Logger, } from './observability/logger.js';
|
|
2
2
|
export { operationalMetrics } from './observability/operationalMetrics.js';
|
|
3
3
|
export { createSweepHealthTracker, sweepHealth, type SweepFailureStreak, type SweepHealthTracker, } from './observability/sweepHealth.js';
|
|
4
4
|
export { type AppEnv, type GitHubTokenDelegation, type MothershipConnector, type ServerContainer, } from './http/env.js';
|
|
@@ -81,7 +81,7 @@ export { GitHubPrReportPublisher, type GitHubPrReportPublisherDependencies, } fr
|
|
|
81
81
|
export { HmacSigner, TOKEN_AUDIENCE, type MachinePayload, type SessionPayload, type SessionUser, type TokenAudience, } from './auth/signing.js';
|
|
82
82
|
export { DEFAULT_MACHINE_TOKEN_TTL_MS, mintMachineToken, resolveMachineTokenTtlMs, } from './auth/machineToken.js';
|
|
83
83
|
export { WS_TICKET_TTL_MS, authorizeWsUpgrade, mintWsTicket, type WsTicket, type WsUpgradeAuth, } from './auth/wsTicket.js';
|
|
84
|
-
export type { AgentsConfig, AppConfig, AuthConfig, ReleaseHealthConfig, DocumentsConfig, EmailConfig, EnvironmentsConfig, ExecutionConfig, FragmentLibraryConfig, GitHubConfig, GitLabConfig, GoogleOAuthConfig, LangfuseConfig, ObservabilityConfig, NotificationWebhookConfig, OtelConfig, InfraReachabilityConfig, PlatformAlertConfig, PrivilegedAppConfig, RetentionConfig, RunnerPoolConfig, SlackConfig, TasksConfig, } from './config/types.js';
|
|
84
|
+
export type { AgentsConfig, AppConfig, AuthConfig, ReleaseHealthConfig, DocumentsConfig, EmailConfig, EnvironmentsConfig, ExecutionConfig, FragmentLibraryConfig, GitHubConfig, GitLabConfig, GoogleOAuthConfig, LangfuseConfig, ObservabilityConfig, NotificationWebhookConfig, OtelConfig, OtelLogsConfig, InfraReachabilityConfig, PlatformAlertConfig, PrivilegedAppConfig, RetentionConfig, RunnerPoolConfig, SlackConfig, TasksConfig, } from './config/types.js';
|
|
85
85
|
export { parsePlatformObservabilityWindow, resolvePlatformAlertConfig, type PlatformAlertEnvInput, } from './config/platformAlerts.js';
|
|
86
86
|
export { resolveInfraReachabilityConfig, shouldRunReachabilityPass, type InfraReachabilityEnvInput, } from './config/infraReachability.js';
|
|
87
87
|
export { resolveUrlSafetyPolicy } from './config/url-safety.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,gBAAgB,EAChB,MAAM,EACN,UAAU,EACV,WAAW,EACX,UAAU,EACV,aAAa,EACb,WAAW,EACX,UAAU,EACV,KAAK,SAAS,EACd,KAAK,QAAQ,EACb,KAAK,OAAO,EACZ,KAAK,MAAM,GACZ,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAA;AAC1E,OAAO,EACL,wBAAwB,EACxB,WAAW,EACX,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,GACxB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,KAAK,MAAM,EACX,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,eAAe,GACrB,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAA;AAC9E,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,8BAA8B,EAC9B,wBAAwB,GACzB,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAG7D,OAAO,EACL,4BAA4B,EAC5B,+BAA+B,EAC/B,wBAAwB,GACzB,MAAM,4DAA4D,CAAA;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAA;AAC/E,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,KAAK,mBAAmB,GACzB,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAClE,OAAO,EACL,WAAW,EACX,KAAK,uBAAuB,EAC5B,KAAK,cAAc,GACpB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,WAAW,EACX,KAAK,uBAAuB,EAC5B,KAAK,cAAc,GACpB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,WAAW,EAAE,KAAK,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAA;AAC7E,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,KAAK,gBAAgB,EACrB,KAAK,SAAS,GACf,MAAM,yCAAyC,CAAA;AAIhD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAA;AAC3E,OAAO,EACL,sBAAsB,EACtB,KAAK,kCAAkC,EACvC,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,GAC5B,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,uBAAuB,EAAE,KAAK,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AAClG,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAI1F,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,yBAAyB,CAAA;AAOhC,OAAO,EACL,oBAAoB,EACpB,iCAAiC,EACjC,0BAA0B,EAC1B,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,kCAAkC,GACxC,MAAM,0CAA0C,CAAA;AACjD,OAAO,EACL,8BAA8B,EAC9B,oCAAoC,EACpC,KAAK,4BAA4B,EACjC,KAAK,6BAA6B,GACnC,MAAM,wDAAwD,CAAA;AAC/D,OAAO,EACL,iCAAiC,EAGjC,yBAAyB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,GAChC,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EACL,2BAA2B,EAC3B,KAAK,4BAA4B,GAClC,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EACL,4BAA4B,EAC5B,KAAK,kBAAkB,GACxB,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACpG,OAAO,EACL,yBAAyB,EACzB,KAAK,qCAAqC,GAC3C,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EACL,0BAA0B,EAC1B,KAAK,sCAAsC,GAC5C,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,KAAK,6BAA6B,EAClC,KAAK,8BAA8B,EACnC,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,YAAY,GAClB,MAAM,+BAA+B,CAAA;AAGtC,OAAO,EACL,aAAa,EACb,4BAA4B,EAC5B,oBAAoB,EACpB,6BAA6B,EAC7B,yBAAyB,EACzB,UAAU,GACX,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,qBAAqB,EACrB,KAAK,6BAA6B,GACnC,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAA;AAClD,OAAO,EACL,oBAAoB,EACpB,KAAK,gCAAgC,GACtC,MAAM,kCAAkC,CAAA;AACzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAC/E,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,sBAAsB,GACvB,MAAM,2BAA2B,CAAA;AAIlC,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,6BAA6B,EAC7B,gCAAgC,EAChC,yBAAyB,EACzB,WAAW,EACX,4BAA4B,EAC5B,KAAK,6BAA6B,GACnC,MAAM,8BAA8B,CAAA;AAKrC,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,yBAAyB,EAC9B,KAAK,oCAAoC,EACzC,KAAK,gCAAgC,EACrC,6BAA6B,EAC7B,yBAAyB,GAC1B,MAAM,yCAAyC,CAAA;AAChD,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,KAAK,iCAAiC,EACtC,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,0BAA0B,EAC1B,4BAA4B,GAC7B,MAAM,iCAAiC,CAAA;AACxC,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,EACtB,yBAAyB,EACzB,6BAA6B,EAC7B,KAAK,qCAAqC,EAC1C,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,8BAA8B,EAC9B,mCAAmC,EACnC,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,aAAa,EACb,gBAAgB,GACjB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAGxC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,aAAa,EACb,qBAAqB,EACrB,oBAAoB,EACpB,UAAU,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,wBAAwB,EACxB,QAAQ,EACR,KAAK,aAAa,GACnB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACjG,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AACrE,OAAO,EACL,eAAe,EACf,0BAA0B,EAC1B,eAAe,EACf,kBAAkB,EAClB,KAAK,aAAa,GACnB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAIlG,OAAO,EACL,qBAAqB,EACrB,KAAK,4BAA4B,GAClC,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,6BAA6B,EAAE,MAAM,2CAA2C,CAAA;AAEzF,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,KAAK,mBAAmB,GACzB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC3F,OAAO,EACL,aAAa,EACb,KAAK,yBAAyB,EAC9B,mCAAmC,GACpC,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,iBAAiB,EACjB,KAAK,6BAA6B,EAClC,KAAK,aAAa,EAClB,KAAK,cAAc,GACpB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EACL,wBAAwB,EACxB,KAAK,wBAAwB,GAC9B,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAC1F,OAAO,EACL,8BAA8B,EAC9B,KAAK,6BAA6B,GACnC,MAAM,+BAA+B,CAAA;AAKtC,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,KAAK,6BAA6B,GACnC,MAAM,+BAA+B,CAAA;AACtC,OAAO,EACL,2BAA2B,EAC3B,KAAK,uCAAuC,GAC7C,MAAM,yCAAyC,CAAA;AAChD,OAAO,EACL,sBAAsB,EACtB,KAAK,6BAA6B,GACnC,MAAM,oCAAoC,CAAA;AAG3C,OAAO,EACL,6BAA6B,EAC7B,KAAK,yCAAyC,GAC/C,MAAM,2CAA2C,CAAA;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAC/E,OAAO,EACL,sBAAsB,EACtB,KAAK,kCAAkC,GACxC,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EACL,wBAAwB,EACxB,KAAK,oCAAoC,GAC1C,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EACL,+BAA+B,EAC/B,KAAK,2CAA2C,GACjD,MAAM,6CAA6C,CAAA;AACpD,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,EACpB,KAAK,sCAAsC,GAC5C,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EACL,mBAAmB,EACnB,KAAK,+BAA+B,GACrC,MAAM,iCAAiC,CAAA;AACxC,OAAO,EACL,uBAAuB,EACvB,KAAK,mCAAmC,GACzC,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EACL,uBAAuB,EACvB,KAAK,mCAAmC,GACzC,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EACL,UAAU,EACV,cAAc,EACd,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,aAAa,GACnB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,4BAA4B,EAC5B,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,KAAK,QAAQ,EACb,KAAK,aAAa,GACnB,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EACV,YAAY,EACZ,SAAS,EACT,UAAU,EACV,mBAAmB,EACnB,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,yBAAyB,EACzB,UAAU,EACV,cAAc,EACd,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,WAAW,GACZ,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,gCAAgC,EAChC,0BAA0B,EAC1B,KAAK,qBAAqB,GAC3B,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,8BAA8B,EAC9B,yBAAyB,EACzB,KAAK,yBAAyB,GAC/B,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,EACL,yBAAyB,EACzB,KAAK,0BAA0B,GAChC,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EACL,+BAA+B,EAC/B,2BAA2B,GAC5B,MAAM,4BAA4B,CAAA;AAInC,cAAc,0BAA0B,CAAA;AACxC,cAAc,kCAAkC,CAAA;AAGhD,cAAc,yBAAyB,CAAA;AAMvC,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,0BAA0B,EAC1B,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,KAAK,oBAAoB,EACzB,8BAA8B,EAC9B,wBAAwB,GACzB,MAAM,qCAAqC,CAAA;AAI5C,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAA;AAIrF,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAI7E,OAAO,EACL,oCAAoC,EACpC,KAAK,+BAA+B,GACrC,MAAM,gCAAgC,CAAA;AAKvC,OAAO,EACL,uBAAuB,EACvB,KAAK,6BAA6B,GACnC,MAAM,qCAAqC,CAAA;AAI5C,OAAO,EACL,8BAA8B,EAC9B,KAAK,kCAAkC,EACvC,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,GACpC,MAAM,sCAAsC,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// facade. This first slice hosts the cross-cutting primitives (logging, request
|
|
3
3
|
// helpers, validation envelope, error mapping, CORS policy); the controllers,
|
|
4
4
|
// middleware and the Hono app factory move here in subsequent steps.
|
|
5
|
-
export { createPinoLogger, logger, noopLogger, getLogLevel, parseLogLevel, setLogLevel, } from './observability/logger.js';
|
|
5
|
+
export { createPinoLogger, logger, noopLogger, getLogLevel, getLogSink, parseLogLevel, setLogLevel, setLogSink, } from './observability/logger.js';
|
|
6
6
|
export { operationalMetrics } from './observability/operationalMetrics.js';
|
|
7
7
|
export { createSweepHealthTracker, sweepHealth, } from './observability/sweepHealth.js';
|
|
8
8
|
export {} from './http/env.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,gFAAgF;AAChF,8EAA8E;AAC9E,qEAAqE;AACrE,OAAO,EACL,gBAAgB,EAChB,MAAM,EACN,UAAU,EACV,WAAW,EACX,aAAa,EACb,WAAW,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import pino from 'pino';
|
|
2
|
-
import { type LogFields, type LogLevel, type Logger, noopLogger } from '@cat-factory/kernel';
|
|
2
|
+
import { type LogFields, type LogLevel, type LogSink, type Logger, noopLogger } from '@cat-factory/kernel';
|
|
3
3
|
/** Parse a configured level, falling back to `info` for an absent or unrecognised value. */
|
|
4
4
|
export declare function parseLogLevel(value: string | undefined | null): LogLevel;
|
|
5
5
|
/**
|
|
@@ -10,6 +10,15 @@ export declare function parseLogLevel(value: string | undefined | null): LogLeve
|
|
|
10
10
|
export declare function setLogLevel(level: LogLevel): void;
|
|
11
11
|
/** The active threshold, for a facade that wants to report its own configuration. */
|
|
12
12
|
export declare function getLogLevel(): LogLevel;
|
|
13
|
+
/**
|
|
14
|
+
* Install (or with `null`, remove) the second destination. Takes effect immediately for every
|
|
15
|
+
* logger already handed out, including children. A facade that installs one owns flushing and
|
|
16
|
+
* removing it: the sink only buffers, so the last lines before shutdown are delivered by the
|
|
17
|
+
* facade's final `flush()`, not by this module.
|
|
18
|
+
*/
|
|
19
|
+
export declare function setLogSink(sink: LogSink | null): void;
|
|
20
|
+
/** The installed second destination, if any. For a facade flushing what it wired. */
|
|
21
|
+
export declare function getLogSink(): LogSink | null;
|
|
13
22
|
/**
|
|
14
23
|
* Serialise one log object, never throwing. The port promises a logger cannot fail
|
|
15
24
|
* (`kernel/ports/logging.ts`), and a plain `JSON.stringify` breaks that promise on the Worker:
|
|
@@ -36,5 +45,5 @@ export declare function createPinoLogger(destination?: pino.DestinationStream):
|
|
|
36
45
|
*/
|
|
37
46
|
export declare const logger: Logger;
|
|
38
47
|
export { noopLogger };
|
|
39
|
-
export type { LogFields, LogLevel, Logger };
|
|
48
|
+
export type { LogFields, LogLevel, LogSink, Logger };
|
|
40
49
|
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/observability/logger.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/observability/logger.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EACL,KAAK,SAAS,EACd,KAAK,QAAQ,EACb,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,UAAU,EACX,MAAM,qBAAqB,CAAA;AA4B5B,4FAA4F;AAC5F,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,QAAQ,CAWxE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAEjD;AAED,qFAAqF;AACrF,wBAAgB,WAAW,IAAI,QAAQ,CAEtC;AAaD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,IAAI,CAErD;AAED,qFAAqF;AACrF,wBAAgB,UAAU,IAAI,OAAO,GAAG,IAAI,CAE3C;AAqBD;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAU3C;AA6DD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAE7E;AAED;;;;GAIG;AACH,eAAO,MAAM,MAAM,EAAE,MAA2B,CAAA;AAEhD,OAAO,EAAE,UAAU,EAAE,CAAA;AACrB,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import pino from 'pino';
|
|
2
|
-
import { noopLogger } from '@cat-factory/kernel';
|
|
2
|
+
import { noopLogger, } from '@cat-factory/kernel';
|
|
3
3
|
// The one place a logging library is named. Everything else in the backend — controllers,
|
|
4
4
|
// facades, and the whole domain engine — talks to the kernel `Logger` port, so swapping
|
|
5
5
|
// pino out or adding a second destination is a change here and nowhere else.
|
|
@@ -46,6 +46,49 @@ export function setLogLevel(level) {
|
|
|
46
46
|
export function getLogLevel() {
|
|
47
47
|
return activeLevel;
|
|
48
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* The optional SECOND destination every emitted line is copied to (today: the opt-in OTLP log
|
|
51
|
+
* exporter). Module state for the same reason `activeLevel` is: a facade wires it from its
|
|
52
|
+
* resolved config after this module has already handed loggers out, and pino children snapshot
|
|
53
|
+
* their parent, so the fan-out has to be looked up per line rather than baked into an instance.
|
|
54
|
+
*
|
|
55
|
+
* Held here because this file is the one place a destination is named at all: the rule that
|
|
56
|
+
* makes "add a second destination" a change in this module and nowhere else.
|
|
57
|
+
*/
|
|
58
|
+
let activeSink = null;
|
|
59
|
+
/**
|
|
60
|
+
* Install (or with `null`, remove) the second destination. Takes effect immediately for every
|
|
61
|
+
* logger already handed out, including children. A facade that installs one owns flushing and
|
|
62
|
+
* removing it: the sink only buffers, so the last lines before shutdown are delivered by the
|
|
63
|
+
* facade's final `flush()`, not by this module.
|
|
64
|
+
*/
|
|
65
|
+
export function setLogSink(sink) {
|
|
66
|
+
activeSink = sink;
|
|
67
|
+
}
|
|
68
|
+
/** The installed second destination, if any. For a facade flushing what it wired. */
|
|
69
|
+
export function getLogSink() {
|
|
70
|
+
return activeSink;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Copy one line to the installed sink, with the `child`-bound fields already folded in.
|
|
74
|
+
*
|
|
75
|
+
* Wrapped, because the port promises a logger cannot fail and a sink is third-party-shaped
|
|
76
|
+
* code on the emit path of every line: a throwing `record` would turn `logger.warn(…)` into a
|
|
77
|
+
* new failure class exactly where a caller is already handling one. The swallow is silent by
|
|
78
|
+
* necessity, because reporting it would emit a line, which would call the sink that just threw.
|
|
79
|
+
*/
|
|
80
|
+
function fanOut(level, msg, fields) {
|
|
81
|
+
const sink = activeSink;
|
|
82
|
+
if (!sink)
|
|
83
|
+
return;
|
|
84
|
+
try {
|
|
85
|
+
sink.record({ level, msg, fields, timeMs: Date.now() });
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
// silent-catch-ok: see above. The only channel available to report a broken log sink is
|
|
89
|
+
// the log sink. The local writer has the line either way, which is what an operator reads.
|
|
90
|
+
}
|
|
91
|
+
}
|
|
49
92
|
/**
|
|
50
93
|
* Serialise one log object, never throwing. The port promises a logger cannot fail
|
|
51
94
|
* (`kernel/ports/logging.ts`), and a plain `JSON.stringify` breaks that promise on the Worker:
|
|
@@ -98,18 +141,32 @@ const PINO_OPTIONS = {
|
|
|
98
141
|
},
|
|
99
142
|
},
|
|
100
143
|
};
|
|
101
|
-
|
|
144
|
+
/**
|
|
145
|
+
* `bound` mirrors what pino already holds for this instance. Duplicated rather than read back
|
|
146
|
+
* off the instance because the fan-out needs the MERGED bag and pino exposes no accessor for
|
|
147
|
+
* it: a sink that only saw the call-site fields would drop every correlation id bound with
|
|
148
|
+
* `child`, which is the half a line is joined to a run by (`createRecordingLogger` folds them
|
|
149
|
+
* for the same reason).
|
|
150
|
+
*/
|
|
151
|
+
function adapt(instance, bound = {}) {
|
|
102
152
|
const emit = (level) => (msg, fields) => {
|
|
103
153
|
if (LEVEL_RANK[level] < LEVEL_RANK[activeLevel])
|
|
104
154
|
return;
|
|
105
155
|
instance[level](fields ?? {}, msg);
|
|
156
|
+
// The threshold is applied ABOVE this: an exporter ships what the deployment chose to
|
|
157
|
+
// log, so `LOG_LEVEL` governs both destinations and an operator has one dial, not two.
|
|
158
|
+
// A fresh bag per line, never `bound` itself: a sink holds what it is handed (this one
|
|
159
|
+
// buffers it until a flush), and handing over the logger's own object would let it be
|
|
160
|
+
// mutated under every future line of the scope.
|
|
161
|
+
if (activeSink)
|
|
162
|
+
fanOut(level, msg, { ...bound, ...fields });
|
|
106
163
|
};
|
|
107
164
|
return {
|
|
108
165
|
debug: emit('debug'),
|
|
109
166
|
info: emit('info'),
|
|
110
167
|
warn: emit('warn'),
|
|
111
168
|
error: emit('error'),
|
|
112
|
-
child: (
|
|
169
|
+
child: (extra) => adapt(instance.child(extra), { ...bound, ...extra }),
|
|
113
170
|
};
|
|
114
171
|
}
|
|
115
172
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/observability/logger.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/observability/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platformHealth.d.ts","sourceRoot":"","sources":["../../src/runtime/platformHealth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"platformHealth.d.ts","sourceRoot":"","sources":["../../src/runtime/platformHealth.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EACV,MAAM,EAKP,MAAM,qBAAqB,CAAA;AA6F5B;;;;;;;;;;;;;GAaG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,eAAe,EAC1B,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAsG9C"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { alertsHaveRunEvidence, distinctAccountIds, evaluatePlatformHealth, platformAlertReasons, platformHealthCardContent, resolveAccountAlertConfig, } from '@cat-factory/orchestration';
|
|
1
|
+
import { alertsHaveRunEvidence, distinctAccountIds, evaluatePlatformHealth, platformAlertFailureKinds, platformAlertReasons, platformHealthCardContent, resolveAccountAlertConfig, } from '@cat-factory/orchestration';
|
|
2
2
|
import { describeError, noopLogger, runBestEffort } from '@cat-factory/kernel';
|
|
3
3
|
import { sweepHealth } from '../observability/sweepHealth.js';
|
|
4
4
|
// Runtime-neutral platform-health ALERT sweep — the push counterpart to the operator dashboard
|
|
@@ -45,12 +45,25 @@ function nextTransition(card) {
|
|
|
45
45
|
const stored = card?.payload?.platformAlertTransition;
|
|
46
46
|
return typeof stored === 'number' && Number.isFinite(stored) && stored > 0 ? stored + 1 : 1;
|
|
47
47
|
}
|
|
48
|
-
/** Whether
|
|
49
|
-
function
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
48
|
+
/** Whether two sorted identity lists are element-for-element the same. */
|
|
49
|
+
function sameList(stored, next) {
|
|
50
|
+
if (next.length === 0)
|
|
51
|
+
return stored === undefined || (Array.isArray(stored) && stored.length === 0);
|
|
52
|
+
return (Array.isArray(stored) && stored.length === next.length && stored.every((v, i) => v === next[i]));
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Whether an open card already shows exactly what is firing now — the check that makes the raise
|
|
56
|
+
* state-change-driven rather than every-pass.
|
|
57
|
+
*
|
|
58
|
+
* BOTH halves of the identity are compared, because the reason set alone stopped being able to
|
|
59
|
+
* see a change once one reason code could stand for several conditions: every per-kind rule fires
|
|
60
|
+
* as `failure_kind_rate_high`, so evictions subsiding while timeouts crossed their own rule is
|
|
61
|
+
* the same reason set before and after, and a card compared on reasons alone would keep naming
|
|
62
|
+
* the kind that had recovered for the length of the new incident.
|
|
63
|
+
*/
|
|
64
|
+
function sameFiringSet(card, reasons, failureKinds) {
|
|
65
|
+
return (sameList(card?.payload?.platformAlerts, reasons) &&
|
|
66
|
+
sameList(card?.payload?.platformAlertFailureKinds, failureKinds));
|
|
54
67
|
}
|
|
55
68
|
/** The workspace's slice of the account's failing-run sample, in payload shape. */
|
|
56
69
|
function failingRunsFor(refs, workspaceId) {
|
|
@@ -130,9 +143,14 @@ export async function sweepPlatformHealth(container, now, logger) {
|
|
|
130
143
|
// numbers that tripped are exactly what an on-call receiver routes on.
|
|
131
144
|
const alerts = evaluatePlatformHealth(snapshot, account.thresholds, worstSweep);
|
|
132
145
|
const reasons = platformAlertReasons(alerts);
|
|
146
|
+
// The other half of the card's identity: which KINDS' own rules are firing. Empty unless a
|
|
147
|
+
// per-kind rule is among them.
|
|
148
|
+
const failureKinds = platformAlertFailureKinds(alerts);
|
|
133
149
|
// The workspaces whose card would actually change state this pass. A healthy workspace
|
|
134
150
|
// with no card, and an unhealthy one whose firing set is unchanged, are both no-ops.
|
|
135
|
-
const changing = workspaceIds.filter((id) => reasons.length > 0
|
|
151
|
+
const changing = workspaceIds.filter((id) => reasons.length > 0
|
|
152
|
+
? !sameFiringSet(openCards.get(id), reasons, failureKinds)
|
|
153
|
+
: openCards.has(id));
|
|
136
154
|
if (changing.length === 0)
|
|
137
155
|
continue;
|
|
138
156
|
// The failing runs the card deep-links to, fetched ONCE for the account and only when
|
|
@@ -148,6 +166,7 @@ export async function sweepPlatformHealth(container, now, logger) {
|
|
|
148
166
|
window: account.window,
|
|
149
167
|
alerts,
|
|
150
168
|
reasons,
|
|
169
|
+
failureKinds,
|
|
151
170
|
evidence,
|
|
152
171
|
observedAt: now,
|
|
153
172
|
openCard: openCards.get(workspaceId),
|
|
@@ -184,10 +203,11 @@ export async function sweepPlatformHealth(container, now, logger) {
|
|
|
184
203
|
* here".
|
|
185
204
|
*/
|
|
186
205
|
async function settleWorkspace(deps, input) {
|
|
187
|
-
const { workspaceId, accountId, window, alerts, reasons,
|
|
206
|
+
const { workspaceId, accountId, window, alerts, reasons, failureKinds } = input;
|
|
207
|
+
const { evidence, observedAt, openCard } = input;
|
|
188
208
|
if (reasons.length > 0) {
|
|
189
209
|
const transition = nextTransition(openCard);
|
|
190
|
-
const { title, body } = platformHealthCardContent(reasons, window);
|
|
210
|
+
const { title, body } = platformHealthCardContent(reasons, window, failureKinds);
|
|
191
211
|
const failingRuns = evidence ? failingRunsFor(evidence, workspaceId) : [];
|
|
192
212
|
const workspaceFailedTotal = evidence?.find((r) => r.workspaceId === workspaceId)?.workspaceFailedTotal;
|
|
193
213
|
const card = await deps.notifications.raise(workspaceId, {
|
|
@@ -199,6 +219,10 @@ async function settleWorkspace(deps, input) {
|
|
|
199
219
|
payload: {
|
|
200
220
|
platformWindow: window,
|
|
201
221
|
platformAlerts: reasons,
|
|
222
|
+
// Omitted rather than sent empty when no per-kind rule fired, so the absence of the
|
|
223
|
+
// field and "no kind is over its rule" stay the same statement, and a card raised
|
|
224
|
+
// before this shipped keeps comparing equal to one raised after it.
|
|
225
|
+
...(failureKinds.length > 0 ? { platformAlertFailureKinds: failureKinds } : {}),
|
|
202
226
|
// Bookkeeping the card renders nothing of: the row is the sweep's only alert store, and
|
|
203
227
|
// the outbound edge needs a transition identity neither the (incident-long) card id nor
|
|
204
228
|
// the (recurring) reason set can give it. Writing it costs no extra inbox delivery,
|
|
@@ -227,13 +251,15 @@ async function settleWorkspace(deps, input) {
|
|
|
227
251
|
// `evaluatePlatformHealth`'s emission order these would be deterministic but INCIDENTALLY
|
|
228
252
|
// so: reordering its checks is a refactor with no behavioural intent, and it would silently
|
|
229
253
|
// re-key every in-flight incident's deliveries. Sorting here is what makes the id a
|
|
230
|
-
// function of WHICH conditions fired rather than of the order they were tested in.
|
|
254
|
+
// function of WHICH conditions fired rather than of the order they were tested in. The KIND
|
|
255
|
+
// breaks the tie the reason no longer can, since per-kind rules all fire under one code.
|
|
231
256
|
conditions: [...alerts]
|
|
232
|
-
.sort((a, b) => a.reason.localeCompare(b.reason))
|
|
257
|
+
.sort((a, b) => a.reason.localeCompare(b.reason) || (a.kind ?? '').localeCompare(b.kind ?? ''))
|
|
233
258
|
.map((alert) => ({
|
|
234
259
|
reason: alert.reason,
|
|
235
260
|
value: alert.value,
|
|
236
261
|
threshold: alert.threshold,
|
|
262
|
+
...(alert.kind === undefined ? {} : { kind: alert.kind }),
|
|
237
263
|
})),
|
|
238
264
|
occurredAt: observedAt,
|
|
239
265
|
failingRuns,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platformHealth.js","sourceRoot":"","sources":["../../src/runtime/platformHealth.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,4BAA4B,CAAA;AAgBnC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAE7D,+FAA+F;AAC/F,+FAA+F;AAC/F,4FAA4F;AAC5F,+FAA+F;AAC/F,uFAAuF;AACvF,4FAA4F;AAC5F,2DAA2D;AAC3D,gGAAgG;AAChG,uFAAuF;AACvF,6EAA6E;AAC7E,EAAE;AACF,iGAAiG;AACjG,+FAA+F;AAC/F,kGAAkG;AAClG,kGAAkG;AAClG,kGAAkG;AAClG,2FAA2F;AAC3F,8FAA8F;AAC9F,0CAA0C;AAC1C,EAAE;AACF,0FAA0F;AAC1F,+FAA+F;AAC/F,8FAA8F;AAC9F,4FAA4F;AAE5F;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,CAAC,CAAA;AAE5B;;;;;;;;;GASG;AACH,SAAS,cAAc,CAAC,IAA8B;IACpD,MAAM,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,uBAAuB,CAAA;IACrD,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC7F,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"platformHealth.js","sourceRoot":"","sources":["../../src/runtime/platformHealth.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cat-factory/server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.212.0",
|
|
4
4
|
"description": "Runtime-neutral HTTP layer for the Agent Architecture Board: the Hono controllers, middleware (auth/authz/CORS/error), request helpers and the gateway seams shared by every deployment facade (Cloudflare Worker, Node service).",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -30,13 +30,13 @@
|
|
|
30
30
|
"hono": "^4.12.33",
|
|
31
31
|
"pino": "^10.3.1",
|
|
32
32
|
"valibot": "^1.4.2",
|
|
33
|
-
"@cat-factory/
|
|
34
|
-
"@cat-factory/
|
|
35
|
-
"@cat-factory/
|
|
36
|
-
"@cat-factory/
|
|
37
|
-
"@cat-factory/
|
|
38
|
-
"@cat-factory/prompt-fragments": "0.15.
|
|
39
|
-
"@cat-factory/spend": "0.14.
|
|
33
|
+
"@cat-factory/agents": "0.110.2",
|
|
34
|
+
"@cat-factory/kernel": "0.234.0",
|
|
35
|
+
"@cat-factory/contracts": "0.232.0",
|
|
36
|
+
"@cat-factory/orchestration": "0.201.0",
|
|
37
|
+
"@cat-factory/integrations": "0.124.0",
|
|
38
|
+
"@cat-factory/prompt-fragments": "0.15.58",
|
|
39
|
+
"@cat-factory/spend": "0.14.9"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@types/node": "^26.1.2",
|