@kici-dev/engine 0.5.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/audit/access-log-policy.js +1 -0
- package/dist/audit/retention-policy.js +2 -0
- package/dist/context/held-run-job-id.d.ts +26 -10
- package/dist/context/held-run-job-id.js +30 -11
- package/dist/context/index.d.ts +1 -1
- package/dist/context/index.js +3 -3
- package/dist/context/types.d.ts +10 -1
- package/dist/context/types.js +10 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.js +14 -11
- package/dist/labels.d.ts +66 -12
- package/dist/labels.js +74 -17
- package/dist/mcp/held-run-resolve.d.ts +40 -0
- package/dist/mcp/held-run-resolve.js +68 -15
- package/dist/mcp/tool-schemas.d.ts +4 -0
- package/dist/mcp/tool-schemas.js +13 -1
- package/dist/metrics/catalog-policy.d.ts +6 -3
- package/dist/metrics/catalog-policy.js +31 -10
- package/dist/metrics/metric-catalog.generated.d.ts +110 -0
- package/dist/metrics/metric-catalog.generated.js +132 -0
- package/dist/protocol/dashboard-global-workflows.js +2 -2
- package/dist/protocol/event-log-payload.js +1 -1
- package/dist/protocol/messages/access-log.d.ts +5 -0
- package/dist/protocol/messages/access-log.js +1 -0
- package/dist/protocol/messages/actor.d.ts +13 -2
- package/dist/protocol/messages/actor.js +16 -5
- package/dist/protocol/messages/common.js +1 -1
- package/dist/protocol/messages/dashboard-global-workflows.d.ts +21 -0
- package/dist/protocol/messages/dashboard-global-workflows.js +28 -1
- package/dist/protocol/messages/dashboard.d.ts +46 -5
- package/dist/protocol/messages/dashboard.js +67 -7
- package/dist/protocol/messages/execution-status.d.ts +41 -0
- package/dist/protocol/messages/execution-status.js +53 -2
- package/dist/protocol/messages/git-credential-relay.d.ts +78 -0
- package/dist/protocol/messages/git-credential-relay.js +86 -0
- package/dist/protocol/messages/orchestrator-agent.d.ts +89 -0
- package/dist/protocol/messages/orchestrator-agent.js +98 -3
- package/dist/protocol/messages/peer.d.ts +7 -0
- package/dist/protocol/messages/peer.js +18 -1
- package/dist/protocol/messages/platform-orchestrator.d.ts +150 -0
- package/dist/protocol/messages/platform-orchestrator.js +164 -19
- package/dist/protocol/version.d.ts +19 -2
- package/dist/protocol/version.js +20 -3
- package/dist/provenance/verify.js +11 -10
- package/dist/provider/check-status-poster.d.ts +24 -3
- package/dist/provider/contributor-resolver.d.ts +11 -3
- package/dist/provider/git-credential.d.ts +77 -0
- package/dist/provider/git-credential.js +10 -0
- package/dist/provider/index.d.ts +2 -0
- package/dist/provider/index.js +2 -1
- package/dist/provider/webhook-normalizer.d.ts +12 -12
- package/dist/repo/pattern-negation.d.ts +73 -0
- package/dist/repo/pattern-negation.js +86 -0
- package/dist/scaler/registry-auth.d.ts +18 -0
- package/dist/scaler/registry-auth.js +28 -0
- package/dist/scaler/scaler-backend-type.d.ts +35 -0
- package/dist/scaler/scaler-backend-type.js +39 -2
- package/dist/scaler/scaler-events.d.ts +79 -0
- package/dist/scaler/scaler-events.js +87 -0
- package/dist/trigger/content-requirements.js +1 -1
- package/dist/trigger/decision-trace.d.ts +79 -0
- package/dist/trigger/decision-trace.js +116 -8
- package/dist/trigger/matcher.js +4 -2
- package/dist/trigger/types.d.ts +87 -7
- package/dist/trigger/types.js +6 -1
- package/dist/ws/rate-limiter.js +3 -3
- package/package.json +11 -3
- package/sbom.spdx.json +15 -15
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import "../rolldown-runtime-ClRpJifh.js";
|
|
2
2
|
//#region src/metrics/metric-catalog.generated.ts
|
|
3
3
|
const MetricNames = {
|
|
4
|
+
KICI_AGENT_BETWEEN_JOBS_RESET_DURATION_SECONDS: "kici_agent_between_jobs_reset_duration_seconds",
|
|
5
|
+
KICI_AGENT_BETWEEN_JOBS_RESET_TOTAL: "kici_agent_between_jobs_reset_total",
|
|
4
6
|
KICI_AGENT_CLONE_DURATION_SECONDS: "kici_agent_clone_duration_seconds",
|
|
5
7
|
KICI_AGENT_CONNECTION_STATUS: "kici_agent_connection_status",
|
|
6
8
|
KICI_AGENT_JOBS_ACTIVE: "kici_agent_jobs_active",
|
|
@@ -9,6 +11,8 @@ const MetricNames = {
|
|
|
9
11
|
KICI_AGENT_LOG_BACKPRESSURE_EVENTS_TOTAL: "kici_agent_log_backpressure_events_total",
|
|
10
12
|
KICI_AGENT_LOG_BYTES_TOTAL: "kici_agent_log_bytes_total",
|
|
11
13
|
KICI_AGENT_LOG_LINES_DROPPED_TOTAL: "kici_agent_log_lines_dropped_total",
|
|
14
|
+
KICI_AGENT_ORPHAN_CLEANUP_TOTAL: "kici_agent_orphan_cleanup_total",
|
|
15
|
+
KICI_AGENT_ORPHANS_REAPED_TOTAL: "kici_agent_orphans_reaped_total",
|
|
12
16
|
KICI_AGENT_STEP_DURATION_SECONDS: "kici_agent_step_duration_seconds",
|
|
13
17
|
KICI_AGENT_STEPS_TOTAL: "kici_agent_steps_total",
|
|
14
18
|
KICI_BILLING_EMAIL_SEND_TOTAL: "kici_billing_email_send_total",
|
|
@@ -38,6 +42,7 @@ const MetricNames = {
|
|
|
38
42
|
KICI_ORCH_DISPATCH_QUEUE_DEPTH_BY_LABEL: "kici_orch_dispatch_queue_depth_by_label",
|
|
39
43
|
KICI_ORCH_DISPATCH_QUEUE_ROWS_PRUNED_TOTAL: "kici_orch_dispatch_queue_rows_pruned_total",
|
|
40
44
|
KICI_ORCH_EVENT_ATTEMPTS: "kici_orch_event_attempts",
|
|
45
|
+
KICI_ORCH_EVENT_CATCH_UP_FAILURES_TOTAL: "kici_orch_event_catch_up_failures_total",
|
|
41
46
|
KICI_ORCH_EVENT_DISPATCH_SUCCESS_TOTAL: "kici_orch_event_dispatch_success_total",
|
|
42
47
|
KICI_ORCH_EVENT_DLQ_DEPTH: "kici_orch_event_dlq_depth",
|
|
43
48
|
KICI_ORCH_EVENT_DLQ_TOTAL: "kici_orch_event_dlq_total",
|
|
@@ -45,6 +50,7 @@ const MetricNames = {
|
|
|
45
50
|
KICI_ORCH_EVENT_RETRY_TOTAL: "kici_orch_event_retry_total",
|
|
46
51
|
KICI_ORCH_EXECUTION_DURATION_SECONDS: "kici_orch_execution_duration_seconds",
|
|
47
52
|
KICI_ORCH_EXECUTIONS_TOTAL: "kici_orch_executions_total",
|
|
53
|
+
KICI_ORCH_FORK_EVENTS_IGNORED_TOTAL: "kici_orch_fork_events_ignored_total",
|
|
48
54
|
KICI_ORCH_GITHUB_CHECK_RUN_TOTAL: "kici_orch_github_check_run_total",
|
|
49
55
|
KICI_ORCH_GLOBAL_EVAL_CACHE_LOOKUPS_TOTAL: "kici_orch_global_eval_cache_lookups_total",
|
|
50
56
|
KICI_ORCH_GLOBAL_EVAL_CANDIDATES_TOTAL: "kici_orch_global_eval_candidates_total",
|
|
@@ -83,12 +89,25 @@ const MetricNames = {
|
|
|
83
89
|
KICI_ORCH_PENDING_ATTESTATIONS_CURRENT: "kici_orch_pending_attestations_current",
|
|
84
90
|
KICI_ORCH_PG_POOL_CLIENT_ERRORS_TOTAL: "kici_orch_pg_pool_client_errors_total",
|
|
85
91
|
KICI_ORCH_REJECTED_ATTESTATIONS_CURRENT: "kici_orch_rejected_attestations_current",
|
|
92
|
+
KICI_ORCH_SCALER_ADOPTION_LOOKUP_FAILURES_TOTAL: "kici_orch_scaler_adoption_lookup_failures_total",
|
|
93
|
+
KICI_ORCH_SCALER_CAP_LOCK_FAILURES_TOTAL: "kici_orch_scaler_cap_lock_failures_total",
|
|
86
94
|
KICI_ORCH_SCALER_CONFIG_RELOADS_TOTAL: "kici_orch_scaler_config_reloads_total",
|
|
87
95
|
KICI_ORCH_SCALER_CPUS_USED: "kici_orch_scaler_cpus_used",
|
|
96
|
+
KICI_ORCH_SCALER_EXTERNAL_PROVISION_TIMEOUT_TOTAL: "kici_orch_scaler_external_provision_timeout_total",
|
|
97
|
+
KICI_ORCH_SCALER_EXTERNAL_PROVISIONING_ACTIVE: "kici_orch_scaler_external_provisioning_active",
|
|
88
98
|
KICI_ORCH_SCALER_MEMORY_BYTES_USED: "kici_orch_scaler_memory_bytes_used",
|
|
99
|
+
KICI_ORCH_SCALER_REAP_BLOCKED: "kici_orch_scaler_reap_blocked",
|
|
100
|
+
KICI_ORCH_SCALER_REAP_UNSEEN_PROVISIONS: "kici_orch_scaler_reap_unseen_provisions",
|
|
89
101
|
KICI_ORCH_SCALER_REDISPATCH_TOTAL: "kici_orch_scaler_redispatch_total",
|
|
102
|
+
KICI_ORCH_SCALER_SCALE_DOWN_EMITTED_TOTAL: "kici_orch_scaler_scale_down_emitted_total",
|
|
103
|
+
KICI_ORCH_SCALER_SCALE_UP_EMITTED_TOTAL: "kici_orch_scaler_scale_up_emitted_total",
|
|
90
104
|
KICI_ORCH_SCALER_SPAWN_FAILURES_TOTAL: "kici_orch_scaler_spawn_failures_total",
|
|
91
105
|
KICI_ORCH_SCALER_SPAWN_REFUSALS_TOTAL: "kici_orch_scaler_spawn_refusals_total",
|
|
106
|
+
KICI_ORCH_SCALER_WARM_POOL_IN_FLIGHT: "kici_orch_scaler_warm_pool_in_flight",
|
|
107
|
+
KICI_ORCH_SCALER_WARM_POOL_READY: "kici_orch_scaler_warm_pool_ready",
|
|
108
|
+
KICI_ORCH_SCALER_WARM_POOL_REAPED_TOTAL: "kici_orch_scaler_warm_pool_reaped_total",
|
|
109
|
+
KICI_ORCH_SCALER_WARM_POOL_SPAWNS_TOTAL: "kici_orch_scaler_warm_pool_spawns_total",
|
|
110
|
+
KICI_ORCH_SCALER_WARM_POOL_TARGET: "kici_orch_scaler_warm_pool_target",
|
|
92
111
|
KICI_ORCH_SOURCE_CACHE_HITS_TOTAL: "kici_orch_source_cache_hits_total",
|
|
93
112
|
KICI_ORCH_SOURCE_CACHE_MISSES_TOTAL: "kici_orch_source_cache_misses_total",
|
|
94
113
|
KICI_ORCH_STALE_DETECTION_DURATION_SECONDS: "kici_orch_stale_detection_duration_seconds",
|
|
@@ -140,6 +159,9 @@ const MetricNames = {
|
|
|
140
159
|
KICI_PLATFORM_LOG_LINES_FORWARDED_TOTAL: "kici_platform_log_lines_forwarded_total",
|
|
141
160
|
KICI_PLATFORM_METRICS_QUERY_RATE_LIMITED_TOTAL: "kici_platform_metrics_query_rate_limited_total",
|
|
142
161
|
KICI_PLATFORM_MIMIR_RELAY_ERRORS_TOTAL: "kici_platform_mimir_relay_errors_total",
|
|
162
|
+
KICI_PLATFORM_MIMIR_RELAY_FINAL_DROPS_TOTAL: "kici_platform_mimir_relay_final_drops_total",
|
|
163
|
+
KICI_PLATFORM_MIMIR_RELAY_RETRIES_TOTAL: "kici_platform_mimir_relay_retries_total",
|
|
164
|
+
KICI_PLATFORM_MIMIR_RELAY_SHED_TOTAL: "kici_platform_mimir_relay_shed_total",
|
|
143
165
|
KICI_PLATFORM_NOTIFICATIONS_DELIVERED_TOTAL: "kici_platform_notifications_delivered_total",
|
|
144
166
|
KICI_PLATFORM_NOTIFICATIONS_SUPPRESSED_TOTAL: "kici_platform_notifications_suppressed_total",
|
|
145
167
|
KICI_PLATFORM_ORCH_METRICS_FILTERED_TOTAL: "kici_platform_orch_metrics_filtered_total",
|
|
@@ -208,6 +230,8 @@ const MetricNames = {
|
|
|
208
230
|
V8JS_RESOURCE_ACTIVE: "v8js.resource.active"
|
|
209
231
|
};
|
|
210
232
|
const MetricLabels = {
|
|
233
|
+
KICI_AGENT_BETWEEN_JOBS_RESET_DURATION_SECONDS: ["scaler"],
|
|
234
|
+
KICI_AGENT_BETWEEN_JOBS_RESET_TOTAL: ["status", "scaler"],
|
|
211
235
|
KICI_AGENT_CLONE_DURATION_SECONDS: ["scaler"],
|
|
212
236
|
KICI_AGENT_CONNECTION_STATUS: ["scaler"],
|
|
213
237
|
KICI_AGENT_JOBS_ACTIVE: ["scaler"],
|
|
@@ -216,6 +240,8 @@ const MetricLabels = {
|
|
|
216
240
|
KICI_AGENT_LOG_BACKPRESSURE_EVENTS_TOTAL: ["mode", "scaler"],
|
|
217
241
|
KICI_AGENT_LOG_BYTES_TOTAL: ["scaler"],
|
|
218
242
|
KICI_AGENT_LOG_LINES_DROPPED_TOTAL: ["scaler"],
|
|
243
|
+
KICI_AGENT_ORPHAN_CLEANUP_TOTAL: ["status", "scaler"],
|
|
244
|
+
KICI_AGENT_ORPHANS_REAPED_TOTAL: ["scaler"],
|
|
219
245
|
KICI_AGENT_STEP_DURATION_SECONDS: ["scaler"],
|
|
220
246
|
KICI_AGENT_STEPS_TOTAL: ["status", "scaler"],
|
|
221
247
|
KICI_BILLING_EMAIL_SEND_TOTAL: ["kind", "status"],
|
|
@@ -245,6 +271,7 @@ const MetricLabels = {
|
|
|
245
271
|
KICI_ORCH_DISPATCH_QUEUE_DEPTH_BY_LABEL: ["status", "label"],
|
|
246
272
|
KICI_ORCH_DISPATCH_QUEUE_ROWS_PRUNED_TOTAL: [],
|
|
247
273
|
KICI_ORCH_EVENT_ATTEMPTS: ["event_name", "result"],
|
|
274
|
+
KICI_ORCH_EVENT_CATCH_UP_FAILURES_TOTAL: [],
|
|
248
275
|
KICI_ORCH_EVENT_DISPATCH_SUCCESS_TOTAL: ["event_name"],
|
|
249
276
|
KICI_ORCH_EVENT_DLQ_DEPTH: [],
|
|
250
277
|
KICI_ORCH_EVENT_DLQ_TOTAL: ["event_name", "reason"],
|
|
@@ -252,6 +279,7 @@ const MetricLabels = {
|
|
|
252
279
|
KICI_ORCH_EVENT_RETRY_TOTAL: ["event_name"],
|
|
253
280
|
KICI_ORCH_EXECUTION_DURATION_SECONDS: [],
|
|
254
281
|
KICI_ORCH_EXECUTIONS_TOTAL: ["status"],
|
|
282
|
+
KICI_ORCH_FORK_EVENTS_IGNORED_TOTAL: ["provider"],
|
|
255
283
|
KICI_ORCH_GITHUB_CHECK_RUN_TOTAL: ["operation"],
|
|
256
284
|
KICI_ORCH_GLOBAL_EVAL_CACHE_LOOKUPS_TOTAL: ["result"],
|
|
257
285
|
KICI_ORCH_GLOBAL_EVAL_CANDIDATES_TOTAL: [],
|
|
@@ -294,20 +322,33 @@ const MetricLabels = {
|
|
|
294
322
|
KICI_ORCH_PENDING_ATTESTATIONS_CURRENT: [],
|
|
295
323
|
KICI_ORCH_PG_POOL_CLIENT_ERRORS_TOTAL: ["source"],
|
|
296
324
|
KICI_ORCH_REJECTED_ATTESTATIONS_CURRENT: [],
|
|
325
|
+
KICI_ORCH_SCALER_ADOPTION_LOOKUP_FAILURES_TOTAL: [],
|
|
326
|
+
KICI_ORCH_SCALER_CAP_LOCK_FAILURES_TOTAL: ["reason"],
|
|
297
327
|
KICI_ORCH_SCALER_CONFIG_RELOADS_TOTAL: ["result"],
|
|
298
328
|
KICI_ORCH_SCALER_CPUS_USED: [
|
|
299
329
|
"scaler",
|
|
300
330
|
"scalerType",
|
|
301
331
|
"machinePool"
|
|
302
332
|
],
|
|
333
|
+
KICI_ORCH_SCALER_EXTERNAL_PROVISION_TIMEOUT_TOTAL: ["scaler"],
|
|
334
|
+
KICI_ORCH_SCALER_EXTERNAL_PROVISIONING_ACTIVE: ["scaler"],
|
|
303
335
|
KICI_ORCH_SCALER_MEMORY_BYTES_USED: [
|
|
304
336
|
"scaler",
|
|
305
337
|
"scalerType",
|
|
306
338
|
"machinePool"
|
|
307
339
|
],
|
|
340
|
+
KICI_ORCH_SCALER_REAP_BLOCKED: [],
|
|
341
|
+
KICI_ORCH_SCALER_REAP_UNSEEN_PROVISIONS: [],
|
|
308
342
|
KICI_ORCH_SCALER_REDISPATCH_TOTAL: ["trigger"],
|
|
343
|
+
KICI_ORCH_SCALER_SCALE_DOWN_EMITTED_TOTAL: ["scaler", "reason"],
|
|
344
|
+
KICI_ORCH_SCALER_SCALE_UP_EMITTED_TOTAL: ["scaler"],
|
|
309
345
|
KICI_ORCH_SCALER_SPAWN_FAILURES_TOTAL: ["backend", "bound"],
|
|
310
346
|
KICI_ORCH_SCALER_SPAWN_REFUSALS_TOTAL: [],
|
|
347
|
+
KICI_ORCH_SCALER_WARM_POOL_IN_FLIGHT: ["scaler", "labelSet"],
|
|
348
|
+
KICI_ORCH_SCALER_WARM_POOL_READY: ["scaler", "labelSet"],
|
|
349
|
+
KICI_ORCH_SCALER_WARM_POOL_REAPED_TOTAL: ["scaler"],
|
|
350
|
+
KICI_ORCH_SCALER_WARM_POOL_SPAWNS_TOTAL: ["scaler"],
|
|
351
|
+
KICI_ORCH_SCALER_WARM_POOL_TARGET: ["scaler", "labelSet"],
|
|
311
352
|
KICI_ORCH_SOURCE_CACHE_HITS_TOTAL: [],
|
|
312
353
|
KICI_ORCH_SOURCE_CACHE_MISSES_TOTAL: [],
|
|
313
354
|
KICI_ORCH_STALE_DETECTION_DURATION_SECONDS: [],
|
|
@@ -359,6 +400,9 @@ const MetricLabels = {
|
|
|
359
400
|
KICI_PLATFORM_LOG_LINES_FORWARDED_TOTAL: [],
|
|
360
401
|
KICI_PLATFORM_METRICS_QUERY_RATE_LIMITED_TOTAL: ["org_id"],
|
|
361
402
|
KICI_PLATFORM_MIMIR_RELAY_ERRORS_TOTAL: ["reason"],
|
|
403
|
+
KICI_PLATFORM_MIMIR_RELAY_FINAL_DROPS_TOTAL: ["reason"],
|
|
404
|
+
KICI_PLATFORM_MIMIR_RELAY_RETRIES_TOTAL: ["reason"],
|
|
405
|
+
KICI_PLATFORM_MIMIR_RELAY_SHED_TOTAL: [],
|
|
362
406
|
KICI_PLATFORM_NOTIFICATIONS_DELIVERED_TOTAL: ["channel_type", "result"],
|
|
363
407
|
KICI_PLATFORM_NOTIFICATIONS_SUPPRESSED_TOTAL: ["org_id"],
|
|
364
408
|
KICI_PLATFORM_ORCH_METRICS_FILTERED_TOTAL: ["reason", "metric"],
|
|
@@ -431,6 +475,8 @@ const MetricLabels = {
|
|
|
431
475
|
V8JS_RESOURCE_ACTIVE: ["v8js.resource.type", "scaler"]
|
|
432
476
|
};
|
|
433
477
|
const MetricKind = {
|
|
478
|
+
KICI_AGENT_BETWEEN_JOBS_RESET_DURATION_SECONDS: "histogram",
|
|
479
|
+
KICI_AGENT_BETWEEN_JOBS_RESET_TOTAL: "counter",
|
|
434
480
|
KICI_AGENT_CLONE_DURATION_SECONDS: "histogram",
|
|
435
481
|
KICI_AGENT_CONNECTION_STATUS: "upDownCounter",
|
|
436
482
|
KICI_AGENT_JOBS_ACTIVE: "upDownCounter",
|
|
@@ -439,6 +485,8 @@ const MetricKind = {
|
|
|
439
485
|
KICI_AGENT_LOG_BACKPRESSURE_EVENTS_TOTAL: "counter",
|
|
440
486
|
KICI_AGENT_LOG_BYTES_TOTAL: "counter",
|
|
441
487
|
KICI_AGENT_LOG_LINES_DROPPED_TOTAL: "counter",
|
|
488
|
+
KICI_AGENT_ORPHAN_CLEANUP_TOTAL: "counter",
|
|
489
|
+
KICI_AGENT_ORPHANS_REAPED_TOTAL: "counter",
|
|
442
490
|
KICI_AGENT_STEP_DURATION_SECONDS: "histogram",
|
|
443
491
|
KICI_AGENT_STEPS_TOTAL: "counter",
|
|
444
492
|
KICI_BILLING_EMAIL_SEND_TOTAL: "counter",
|
|
@@ -468,6 +516,7 @@ const MetricKind = {
|
|
|
468
516
|
KICI_ORCH_DISPATCH_QUEUE_DEPTH_BY_LABEL: "observableGauge",
|
|
469
517
|
KICI_ORCH_DISPATCH_QUEUE_ROWS_PRUNED_TOTAL: "counter",
|
|
470
518
|
KICI_ORCH_EVENT_ATTEMPTS: "histogram",
|
|
519
|
+
KICI_ORCH_EVENT_CATCH_UP_FAILURES_TOTAL: "counter",
|
|
471
520
|
KICI_ORCH_EVENT_DISPATCH_SUCCESS_TOTAL: "counter",
|
|
472
521
|
KICI_ORCH_EVENT_DLQ_DEPTH: "observableGauge",
|
|
473
522
|
KICI_ORCH_EVENT_DLQ_TOTAL: "counter",
|
|
@@ -475,6 +524,7 @@ const MetricKind = {
|
|
|
475
524
|
KICI_ORCH_EVENT_RETRY_TOTAL: "counter",
|
|
476
525
|
KICI_ORCH_EXECUTION_DURATION_SECONDS: "histogram",
|
|
477
526
|
KICI_ORCH_EXECUTIONS_TOTAL: "counter",
|
|
527
|
+
KICI_ORCH_FORK_EVENTS_IGNORED_TOTAL: "counter",
|
|
478
528
|
KICI_ORCH_GITHUB_CHECK_RUN_TOTAL: "counter",
|
|
479
529
|
KICI_ORCH_GLOBAL_EVAL_CACHE_LOOKUPS_TOTAL: "counter",
|
|
480
530
|
KICI_ORCH_GLOBAL_EVAL_CANDIDATES_TOTAL: "counter",
|
|
@@ -513,12 +563,25 @@ const MetricKind = {
|
|
|
513
563
|
KICI_ORCH_PENDING_ATTESTATIONS_CURRENT: "observableGauge",
|
|
514
564
|
KICI_ORCH_PG_POOL_CLIENT_ERRORS_TOTAL: "counter",
|
|
515
565
|
KICI_ORCH_REJECTED_ATTESTATIONS_CURRENT: "observableGauge",
|
|
566
|
+
KICI_ORCH_SCALER_ADOPTION_LOOKUP_FAILURES_TOTAL: "counter",
|
|
567
|
+
KICI_ORCH_SCALER_CAP_LOCK_FAILURES_TOTAL: "counter",
|
|
516
568
|
KICI_ORCH_SCALER_CONFIG_RELOADS_TOTAL: "counter",
|
|
517
569
|
KICI_ORCH_SCALER_CPUS_USED: "observableGauge",
|
|
570
|
+
KICI_ORCH_SCALER_EXTERNAL_PROVISION_TIMEOUT_TOTAL: "counter",
|
|
571
|
+
KICI_ORCH_SCALER_EXTERNAL_PROVISIONING_ACTIVE: "observableGauge",
|
|
518
572
|
KICI_ORCH_SCALER_MEMORY_BYTES_USED: "observableGauge",
|
|
573
|
+
KICI_ORCH_SCALER_REAP_BLOCKED: "observableGauge",
|
|
574
|
+
KICI_ORCH_SCALER_REAP_UNSEEN_PROVISIONS: "observableGauge",
|
|
519
575
|
KICI_ORCH_SCALER_REDISPATCH_TOTAL: "counter",
|
|
576
|
+
KICI_ORCH_SCALER_SCALE_DOWN_EMITTED_TOTAL: "counter",
|
|
577
|
+
KICI_ORCH_SCALER_SCALE_UP_EMITTED_TOTAL: "counter",
|
|
520
578
|
KICI_ORCH_SCALER_SPAWN_FAILURES_TOTAL: "counter",
|
|
521
579
|
KICI_ORCH_SCALER_SPAWN_REFUSALS_TOTAL: "observableGauge",
|
|
580
|
+
KICI_ORCH_SCALER_WARM_POOL_IN_FLIGHT: "observableGauge",
|
|
581
|
+
KICI_ORCH_SCALER_WARM_POOL_READY: "observableGauge",
|
|
582
|
+
KICI_ORCH_SCALER_WARM_POOL_REAPED_TOTAL: "counter",
|
|
583
|
+
KICI_ORCH_SCALER_WARM_POOL_SPAWNS_TOTAL: "counter",
|
|
584
|
+
KICI_ORCH_SCALER_WARM_POOL_TARGET: "observableGauge",
|
|
522
585
|
KICI_ORCH_SOURCE_CACHE_HITS_TOTAL: "counter",
|
|
523
586
|
KICI_ORCH_SOURCE_CACHE_MISSES_TOTAL: "counter",
|
|
524
587
|
KICI_ORCH_STALE_DETECTION_DURATION_SECONDS: "histogram",
|
|
@@ -570,6 +633,9 @@ const MetricKind = {
|
|
|
570
633
|
KICI_PLATFORM_LOG_LINES_FORWARDED_TOTAL: "counter",
|
|
571
634
|
KICI_PLATFORM_METRICS_QUERY_RATE_LIMITED_TOTAL: "counter",
|
|
572
635
|
KICI_PLATFORM_MIMIR_RELAY_ERRORS_TOTAL: "counter",
|
|
636
|
+
KICI_PLATFORM_MIMIR_RELAY_FINAL_DROPS_TOTAL: "counter",
|
|
637
|
+
KICI_PLATFORM_MIMIR_RELAY_RETRIES_TOTAL: "counter",
|
|
638
|
+
KICI_PLATFORM_MIMIR_RELAY_SHED_TOTAL: "counter",
|
|
573
639
|
KICI_PLATFORM_NOTIFICATIONS_DELIVERED_TOTAL: "counter",
|
|
574
640
|
KICI_PLATFORM_NOTIFICATIONS_SUPPRESSED_TOTAL: "counter",
|
|
575
641
|
KICI_PLATFORM_ORCH_METRICS_FILTERED_TOTAL: "counter",
|
|
@@ -638,6 +704,8 @@ const MetricKind = {
|
|
|
638
704
|
V8JS_RESOURCE_ACTIVE: "gauge"
|
|
639
705
|
};
|
|
640
706
|
const MetricDescription = {
|
|
707
|
+
KICI_AGENT_BETWEEN_JOBS_RESET_DURATION_SECONDS: "Between-jobs reset command duration in seconds",
|
|
708
|
+
KICI_AGENT_BETWEEN_JOBS_RESET_TOTAL: "Total operator between-jobs reset command invocations",
|
|
641
709
|
KICI_AGENT_CLONE_DURATION_SECONDS: "Git clone duration in seconds",
|
|
642
710
|
KICI_AGENT_CONNECTION_STATUS: "Orchestrator WebSocket connection status (0=disconnected, 1=connected)",
|
|
643
711
|
KICI_AGENT_JOBS_ACTIVE: "Number of currently running jobs",
|
|
@@ -646,6 +714,8 @@ const MetricDescription = {
|
|
|
646
714
|
KICI_AGENT_LOG_BACKPRESSURE_EVENTS_TOTAL: "Total log-streamer backpressure rising-edge events",
|
|
647
715
|
KICI_AGENT_LOG_BYTES_TOTAL: "Total log bytes streamed",
|
|
648
716
|
KICI_AGENT_LOG_LINES_DROPPED_TOTAL: "Total log lines dropped due to backpressure",
|
|
717
|
+
KICI_AGENT_ORPHAN_CLEANUP_TOTAL: "Total out-of-band declared-cleanup re-runs",
|
|
718
|
+
KICI_AGENT_ORPHANS_REAPED_TOTAL: "Total processes killed by the between-jobs process-group reap",
|
|
649
719
|
KICI_AGENT_STEP_DURATION_SECONDS: "Step execution duration in seconds",
|
|
650
720
|
KICI_AGENT_STEPS_TOTAL: "Total number of completed steps",
|
|
651
721
|
KICI_BILLING_EMAIL_SEND_TOTAL: "Billing emails sent, by kind and status",
|
|
@@ -675,6 +745,7 @@ const MetricDescription = {
|
|
|
675
745
|
KICI_ORCH_DISPATCH_QUEUE_DEPTH_BY_LABEL: "Current pending dispatch_queue depth per runs_on label (multi-label jobs fan out)",
|
|
676
746
|
KICI_ORCH_DISPATCH_QUEUE_ROWS_PRUNED_TOTAL: "Terminal dispatch_queue rows deleted by the retention sweep",
|
|
677
747
|
KICI_ORCH_EVENT_ATTEMPTS: "Distribution of dispatch attempts at terminal outcome (success or DLQ)",
|
|
748
|
+
KICI_ORCH_EVENT_CATCH_UP_FAILURES_TOTAL: "Startup internal-event catch-up scans that threw",
|
|
678
749
|
KICI_ORCH_EVENT_DISPATCH_SUCCESS_TOTAL: "Internal events delivered to all matching workflows successfully (after the lease commits processed=true)",
|
|
679
750
|
KICI_ORCH_EVENT_DLQ_DEPTH: "Current count of events sitting in the DLQ awaiting operator triage",
|
|
680
751
|
KICI_ORCH_EVENT_DLQ_TOTAL: "Internal events moved to the DLQ after exhausting retries",
|
|
@@ -682,6 +753,7 @@ const MetricDescription = {
|
|
|
682
753
|
KICI_ORCH_EVENT_RETRY_TOTAL: "Internal-event dispatch failures that triggered a retry (lease released, next_retry_at scheduled)",
|
|
683
754
|
KICI_ORCH_EXECUTION_DURATION_SECONDS: "Duration of execution runs in seconds",
|
|
684
755
|
KICI_ORCH_EXECUTIONS_TOTAL: "Total number of execution runs",
|
|
756
|
+
KICI_ORCH_FORK_EVENTS_IGNORED_TOTAL: "Total fork pull-request events dropped by the org fork policy",
|
|
685
757
|
KICI_ORCH_GITHUB_CHECK_RUN_TOTAL: "Total number of GitHub check run API calls",
|
|
686
758
|
KICI_ORCH_GLOBAL_EVAL_CACHE_LOOKUPS_TOTAL: "Tier-2 global eval round cache lookups by outcome",
|
|
687
759
|
KICI_ORCH_GLOBAL_EVAL_CANDIDATES_TOTAL: "Global workflow candidates handed to a Tier-2 eval round",
|
|
@@ -720,12 +792,25 @@ const MetricDescription = {
|
|
|
720
792
|
KICI_ORCH_PENDING_ATTESTATIONS_CURRENT: "Deferred attestations awaiting a later mint",
|
|
721
793
|
KICI_ORCH_PG_POOL_CLIENT_ERRORS_TOTAL: "Total pg connection errors absorbed without a process restart",
|
|
722
794
|
KICI_ORCH_REJECTED_ATTESTATIONS_CURRENT: "Deferred attestations permanently rejected (run/job absent on Platform); terminal, re-attempted only via kici-admin attestations retry --include-rejected",
|
|
795
|
+
KICI_ORCH_SCALER_ADOPTION_LOOKUP_FAILURES_TOTAL: "Cumulative event-scaler spawn-record adoption lookups that failed with a store error.",
|
|
796
|
+
KICI_ORCH_SCALER_CAP_LOCK_FAILURES_TOTAL: "Total event-scaler cluster-wide cap checks that failed, refusing their spawn without evaluating the cap. A rising rate means event autoscaling is not running; read reason to tell a stalled database from a contended lock.",
|
|
723
797
|
KICI_ORCH_SCALER_CONFIG_RELOADS_TOTAL: "Total number of scaler config reload operations",
|
|
724
798
|
KICI_ORCH_SCALER_CPUS_USED: "Current CPU reservations summed by scaler / pool. scaler=\"__global__\" is the orchestrator-wide total; machinePool=\"<name>\" rows reflect the on-disk ledger.",
|
|
799
|
+
KICI_ORCH_SCALER_EXTERNAL_PROVISION_TIMEOUT_TOTAL: "Cumulative event-scaler provisions torn down for spawn-timeout (agent never registered), labeled by scaler.",
|
|
800
|
+
KICI_ORCH_SCALER_EXTERNAL_PROVISIONING_ACTIVE: "Current in-flight external (event-scaler) provisions, labeled by scaler (provisioning + active).",
|
|
725
801
|
KICI_ORCH_SCALER_MEMORY_BYTES_USED: "Current memory reservations (bytes) summed by scaler / pool. scaler=\"__global__\" is the orchestrator-wide total; machinePool=\"<name>\" rows reflect the on-disk ledger.",
|
|
802
|
+
KICI_ORCH_SCALER_REAP_BLOCKED: "Whether the event-scaler provision reaper is standing down for lack of any connected coordinator peer (1) or sweeping (0).",
|
|
803
|
+
KICI_ORCH_SCALER_REAP_UNSEEN_PROVISIONS: "Event-scaler provisions whose agent has been registered on no coordinator for at least the flap grace, being timed by the leader-gated reaper.",
|
|
726
804
|
KICI_ORCH_SCALER_REDISPATCH_TOTAL: "Cumulative count of pending jobs re-offered to the scaler after capacity freed, labeled by trigger (hook | sweep).",
|
|
805
|
+
KICI_ORCH_SCALER_SCALE_DOWN_EMITTED_TOTAL: "Cumulative kici.scaler.scale-down events emitted by event scalers, labeled by scaler + reason.",
|
|
806
|
+
KICI_ORCH_SCALER_SCALE_UP_EMITTED_TOTAL: "Cumulative kici.scaler.scale-up events emitted by event scalers, labeled by scaler.",
|
|
727
807
|
KICI_ORCH_SCALER_SPAWN_FAILURES_TOTAL: "Total scaler agent spawn failures (job-bound and warm-pool)",
|
|
728
808
|
KICI_ORCH_SCALER_SPAWN_REFUSALS_TOTAL: "Cumulative count of scaler spawn requests refused due to resource caps (maxAgents, resourceCap, globalResourceCap, machinePool).",
|
|
809
|
+
KICI_ORCH_SCALER_WARM_POOL_IN_FLIGHT: "Warm-pool spawns started but not yet registered. A deficit covered by these is filling, not failing.",
|
|
810
|
+
KICI_ORCH_SCALER_WARM_POOL_READY: "Agents able to serve a job for a warm pool label set — the same query the dispatcher makes.",
|
|
811
|
+
KICI_ORCH_SCALER_WARM_POOL_REAPED_TOTAL: "Total warm-pool agents destroyed as surplus — past their idle timeout, or above a lowered target, per scaler.",
|
|
812
|
+
KICI_ORCH_SCALER_WARM_POOL_SPAWNS_TOTAL: "Total warm-pool spawns started, per scaler.",
|
|
813
|
+
KICI_ORCH_SCALER_WARM_POOL_TARGET: "Configured number of agents a warm pool keeps ready for a label set.",
|
|
729
814
|
KICI_ORCH_SOURCE_CACHE_HITS_TOTAL: "Total number of source tarball cache hits",
|
|
730
815
|
KICI_ORCH_SOURCE_CACHE_MISSES_TOTAL: "Total number of source tarball cache misses",
|
|
731
816
|
KICI_ORCH_STALE_DETECTION_DURATION_SECONDS: "Time between job becoming stale and detection (seconds)",
|
|
@@ -777,6 +862,9 @@ const MetricDescription = {
|
|
|
777
862
|
KICI_PLATFORM_LOG_LINES_FORWARDED_TOTAL: "Total log lines forwarded from orchestrators",
|
|
778
863
|
KICI_PLATFORM_METRICS_QUERY_RATE_LIMITED_TOTAL: "Total dashboard metric-query requests rate-limited (429).",
|
|
779
864
|
KICI_PLATFORM_MIMIR_RELAY_ERRORS_TOTAL: "Total Mimir push-relay errors (Platform-embedded metrics). Labels: reason.",
|
|
865
|
+
KICI_PLATFORM_MIMIR_RELAY_FINAL_DROPS_TOTAL: "Total Mimir push-relay batches dropped permanently (data loss). Labels: reason.",
|
|
866
|
+
KICI_PLATFORM_MIMIR_RELAY_RETRIES_TOTAL: "Total Mimir push-relay retry attempts (Platform-embedded metrics). Labels: reason.",
|
|
867
|
+
KICI_PLATFORM_MIMIR_RELAY_SHED_TOTAL: "Total Mimir push-relay batches shed without retry (concurrent-retry cap reached).",
|
|
780
868
|
KICI_PLATFORM_NOTIFICATIONS_DELIVERED_TOTAL: "Notification delivery attempts that reached a terminal outcome",
|
|
781
869
|
KICI_PLATFORM_NOTIFICATIONS_SUPPRESSED_TOTAL: "Run-terminal notifications suppressed by the per-org notification quota",
|
|
782
870
|
KICI_PLATFORM_ORCH_METRICS_FILTERED_TOTAL: "Orchestrator-pushed metric data points dropped or rewritten by the catalog allow-list. Labels: reason, metric.",
|
|
@@ -852,6 +940,8 @@ const MetricDescription = {
|
|
|
852
940
|
* the only valid push payloads.
|
|
853
941
|
*/
|
|
854
942
|
const MetricService = {
|
|
943
|
+
KICI_AGENT_BETWEEN_JOBS_RESET_DURATION_SECONDS: "agent",
|
|
944
|
+
KICI_AGENT_BETWEEN_JOBS_RESET_TOTAL: "agent",
|
|
855
945
|
KICI_AGENT_CLONE_DURATION_SECONDS: "agent",
|
|
856
946
|
KICI_AGENT_CONNECTION_STATUS: "agent",
|
|
857
947
|
KICI_AGENT_JOBS_ACTIVE: "agent",
|
|
@@ -860,6 +950,8 @@ const MetricService = {
|
|
|
860
950
|
KICI_AGENT_LOG_BACKPRESSURE_EVENTS_TOTAL: "agent",
|
|
861
951
|
KICI_AGENT_LOG_BYTES_TOTAL: "agent",
|
|
862
952
|
KICI_AGENT_LOG_LINES_DROPPED_TOTAL: "agent",
|
|
953
|
+
KICI_AGENT_ORPHAN_CLEANUP_TOTAL: "agent",
|
|
954
|
+
KICI_AGENT_ORPHANS_REAPED_TOTAL: "agent",
|
|
863
955
|
KICI_AGENT_STEP_DURATION_SECONDS: "agent",
|
|
864
956
|
KICI_AGENT_STEPS_TOTAL: "agent",
|
|
865
957
|
KICI_BILLING_EMAIL_SEND_TOTAL: "platform",
|
|
@@ -889,6 +981,7 @@ const MetricService = {
|
|
|
889
981
|
KICI_ORCH_DISPATCH_QUEUE_DEPTH_BY_LABEL: "orchestrator",
|
|
890
982
|
KICI_ORCH_DISPATCH_QUEUE_ROWS_PRUNED_TOTAL: "orchestrator",
|
|
891
983
|
KICI_ORCH_EVENT_ATTEMPTS: "orchestrator",
|
|
984
|
+
KICI_ORCH_EVENT_CATCH_UP_FAILURES_TOTAL: "orchestrator",
|
|
892
985
|
KICI_ORCH_EVENT_DISPATCH_SUCCESS_TOTAL: "orchestrator",
|
|
893
986
|
KICI_ORCH_EVENT_DLQ_DEPTH: "orchestrator",
|
|
894
987
|
KICI_ORCH_EVENT_DLQ_TOTAL: "orchestrator",
|
|
@@ -896,6 +989,7 @@ const MetricService = {
|
|
|
896
989
|
KICI_ORCH_EVENT_RETRY_TOTAL: "orchestrator",
|
|
897
990
|
KICI_ORCH_EXECUTION_DURATION_SECONDS: "orchestrator",
|
|
898
991
|
KICI_ORCH_EXECUTIONS_TOTAL: "orchestrator",
|
|
992
|
+
KICI_ORCH_FORK_EVENTS_IGNORED_TOTAL: "orchestrator",
|
|
899
993
|
KICI_ORCH_GITHUB_CHECK_RUN_TOTAL: "orchestrator",
|
|
900
994
|
KICI_ORCH_GLOBAL_EVAL_CACHE_LOOKUPS_TOTAL: "orchestrator",
|
|
901
995
|
KICI_ORCH_GLOBAL_EVAL_CANDIDATES_TOTAL: "orchestrator",
|
|
@@ -934,12 +1028,25 @@ const MetricService = {
|
|
|
934
1028
|
KICI_ORCH_PENDING_ATTESTATIONS_CURRENT: "orchestrator",
|
|
935
1029
|
KICI_ORCH_PG_POOL_CLIENT_ERRORS_TOTAL: "orchestrator",
|
|
936
1030
|
KICI_ORCH_REJECTED_ATTESTATIONS_CURRENT: "orchestrator",
|
|
1031
|
+
KICI_ORCH_SCALER_ADOPTION_LOOKUP_FAILURES_TOTAL: "orchestrator",
|
|
1032
|
+
KICI_ORCH_SCALER_CAP_LOCK_FAILURES_TOTAL: "orchestrator",
|
|
937
1033
|
KICI_ORCH_SCALER_CONFIG_RELOADS_TOTAL: "orchestrator",
|
|
938
1034
|
KICI_ORCH_SCALER_CPUS_USED: "orchestrator",
|
|
1035
|
+
KICI_ORCH_SCALER_EXTERNAL_PROVISION_TIMEOUT_TOTAL: "orchestrator",
|
|
1036
|
+
KICI_ORCH_SCALER_EXTERNAL_PROVISIONING_ACTIVE: "orchestrator",
|
|
939
1037
|
KICI_ORCH_SCALER_MEMORY_BYTES_USED: "orchestrator",
|
|
1038
|
+
KICI_ORCH_SCALER_REAP_BLOCKED: "orchestrator",
|
|
1039
|
+
KICI_ORCH_SCALER_REAP_UNSEEN_PROVISIONS: "orchestrator",
|
|
940
1040
|
KICI_ORCH_SCALER_REDISPATCH_TOTAL: "orchestrator",
|
|
1041
|
+
KICI_ORCH_SCALER_SCALE_DOWN_EMITTED_TOTAL: "orchestrator",
|
|
1042
|
+
KICI_ORCH_SCALER_SCALE_UP_EMITTED_TOTAL: "orchestrator",
|
|
941
1043
|
KICI_ORCH_SCALER_SPAWN_FAILURES_TOTAL: "orchestrator",
|
|
942
1044
|
KICI_ORCH_SCALER_SPAWN_REFUSALS_TOTAL: "orchestrator",
|
|
1045
|
+
KICI_ORCH_SCALER_WARM_POOL_IN_FLIGHT: "orchestrator",
|
|
1046
|
+
KICI_ORCH_SCALER_WARM_POOL_READY: "orchestrator",
|
|
1047
|
+
KICI_ORCH_SCALER_WARM_POOL_REAPED_TOTAL: "orchestrator",
|
|
1048
|
+
KICI_ORCH_SCALER_WARM_POOL_SPAWNS_TOTAL: "orchestrator",
|
|
1049
|
+
KICI_ORCH_SCALER_WARM_POOL_TARGET: "orchestrator",
|
|
943
1050
|
KICI_ORCH_SOURCE_CACHE_HITS_TOTAL: "orchestrator",
|
|
944
1051
|
KICI_ORCH_SOURCE_CACHE_MISSES_TOTAL: "orchestrator",
|
|
945
1052
|
KICI_ORCH_STALE_DETECTION_DURATION_SECONDS: "orchestrator",
|
|
@@ -991,6 +1098,9 @@ const MetricService = {
|
|
|
991
1098
|
KICI_PLATFORM_LOG_LINES_FORWARDED_TOTAL: "platform",
|
|
992
1099
|
KICI_PLATFORM_METRICS_QUERY_RATE_LIMITED_TOTAL: "platform",
|
|
993
1100
|
KICI_PLATFORM_MIMIR_RELAY_ERRORS_TOTAL: "platform",
|
|
1101
|
+
KICI_PLATFORM_MIMIR_RELAY_FINAL_DROPS_TOTAL: "platform",
|
|
1102
|
+
KICI_PLATFORM_MIMIR_RELAY_RETRIES_TOTAL: "platform",
|
|
1103
|
+
KICI_PLATFORM_MIMIR_RELAY_SHED_TOTAL: "platform",
|
|
994
1104
|
KICI_PLATFORM_NOTIFICATIONS_DELIVERED_TOTAL: "platform",
|
|
995
1105
|
KICI_PLATFORM_NOTIFICATIONS_SUPPRESSED_TOTAL: "platform",
|
|
996
1106
|
KICI_PLATFORM_ORCH_METRICS_FILTERED_TOTAL: "platform",
|
|
@@ -1060,6 +1170,8 @@ const MetricService = {
|
|
|
1060
1170
|
};
|
|
1061
1171
|
/** Set of every catalog metric name — O(1) membership for lint / filter UI. */
|
|
1062
1172
|
const ALL_METRIC_NAMES = [
|
|
1173
|
+
"kici_agent_between_jobs_reset_duration_seconds",
|
|
1174
|
+
"kici_agent_between_jobs_reset_total",
|
|
1063
1175
|
"kici_agent_clone_duration_seconds",
|
|
1064
1176
|
"kici_agent_connection_status",
|
|
1065
1177
|
"kici_agent_jobs_active",
|
|
@@ -1068,6 +1180,8 @@ const ALL_METRIC_NAMES = [
|
|
|
1068
1180
|
"kici_agent_log_backpressure_events_total",
|
|
1069
1181
|
"kici_agent_log_bytes_total",
|
|
1070
1182
|
"kici_agent_log_lines_dropped_total",
|
|
1183
|
+
"kici_agent_orphan_cleanup_total",
|
|
1184
|
+
"kici_agent_orphans_reaped_total",
|
|
1071
1185
|
"kici_agent_step_duration_seconds",
|
|
1072
1186
|
"kici_agent_steps_total",
|
|
1073
1187
|
"kici_billing_email_send_total",
|
|
@@ -1097,6 +1211,7 @@ const ALL_METRIC_NAMES = [
|
|
|
1097
1211
|
"kici_orch_dispatch_queue_depth_by_label",
|
|
1098
1212
|
"kici_orch_dispatch_queue_rows_pruned_total",
|
|
1099
1213
|
"kici_orch_event_attempts",
|
|
1214
|
+
"kici_orch_event_catch_up_failures_total",
|
|
1100
1215
|
"kici_orch_event_dispatch_success_total",
|
|
1101
1216
|
"kici_orch_event_dlq_depth",
|
|
1102
1217
|
"kici_orch_event_dlq_total",
|
|
@@ -1104,6 +1219,7 @@ const ALL_METRIC_NAMES = [
|
|
|
1104
1219
|
"kici_orch_event_retry_total",
|
|
1105
1220
|
"kici_orch_execution_duration_seconds",
|
|
1106
1221
|
"kici_orch_executions_total",
|
|
1222
|
+
"kici_orch_fork_events_ignored_total",
|
|
1107
1223
|
"kici_orch_github_check_run_total",
|
|
1108
1224
|
"kici_orch_global_eval_cache_lookups_total",
|
|
1109
1225
|
"kici_orch_global_eval_candidates_total",
|
|
@@ -1142,12 +1258,25 @@ const ALL_METRIC_NAMES = [
|
|
|
1142
1258
|
"kici_orch_pending_attestations_current",
|
|
1143
1259
|
"kici_orch_pg_pool_client_errors_total",
|
|
1144
1260
|
"kici_orch_rejected_attestations_current",
|
|
1261
|
+
"kici_orch_scaler_adoption_lookup_failures_total",
|
|
1262
|
+
"kici_orch_scaler_cap_lock_failures_total",
|
|
1145
1263
|
"kici_orch_scaler_config_reloads_total",
|
|
1146
1264
|
"kici_orch_scaler_cpus_used",
|
|
1265
|
+
"kici_orch_scaler_external_provision_timeout_total",
|
|
1266
|
+
"kici_orch_scaler_external_provisioning_active",
|
|
1147
1267
|
"kici_orch_scaler_memory_bytes_used",
|
|
1268
|
+
"kici_orch_scaler_reap_blocked",
|
|
1269
|
+
"kici_orch_scaler_reap_unseen_provisions",
|
|
1148
1270
|
"kici_orch_scaler_redispatch_total",
|
|
1271
|
+
"kici_orch_scaler_scale_down_emitted_total",
|
|
1272
|
+
"kici_orch_scaler_scale_up_emitted_total",
|
|
1149
1273
|
"kici_orch_scaler_spawn_failures_total",
|
|
1150
1274
|
"kici_orch_scaler_spawn_refusals_total",
|
|
1275
|
+
"kici_orch_scaler_warm_pool_in_flight",
|
|
1276
|
+
"kici_orch_scaler_warm_pool_ready",
|
|
1277
|
+
"kici_orch_scaler_warm_pool_reaped_total",
|
|
1278
|
+
"kici_orch_scaler_warm_pool_spawns_total",
|
|
1279
|
+
"kici_orch_scaler_warm_pool_target",
|
|
1151
1280
|
"kici_orch_source_cache_hits_total",
|
|
1152
1281
|
"kici_orch_source_cache_misses_total",
|
|
1153
1282
|
"kici_orch_stale_detection_duration_seconds",
|
|
@@ -1199,6 +1328,9 @@ const ALL_METRIC_NAMES = [
|
|
|
1199
1328
|
"kici_platform_log_lines_forwarded_total",
|
|
1200
1329
|
"kici_platform_metrics_query_rate_limited_total",
|
|
1201
1330
|
"kici_platform_mimir_relay_errors_total",
|
|
1331
|
+
"kici_platform_mimir_relay_final_drops_total",
|
|
1332
|
+
"kici_platform_mimir_relay_retries_total",
|
|
1333
|
+
"kici_platform_mimir_relay_shed_total",
|
|
1202
1334
|
"kici_platform_notifications_delivered_total",
|
|
1203
1335
|
"kici_platform_notifications_suppressed_total",
|
|
1204
1336
|
"kici_platform_orch_metrics_filtered_total",
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import "../rolldown-runtime-ClRpJifh.js";
|
|
2
|
-
import { globalWorkflowSettingsSchema, globalWorkflowsGetRequestSchema, globalWorkflowsGetResponseSchema, globalWorkflowsUpdateRequestSchema, globalWorkflowsUpdateResponseSchema, repoPatternEntrySchema } from "./messages/dashboard-global-workflows.js";
|
|
3
|
-
export { globalWorkflowSettingsSchema, globalWorkflowsGetRequestSchema, globalWorkflowsGetResponseSchema, globalWorkflowsUpdateRequestSchema, globalWorkflowsUpdateResponseSchema, repoPatternEntrySchema };
|
|
2
|
+
import { globalWorkflowSettingsSchema, globalWorkflowsGetRequestSchema, globalWorkflowsGetResponseSchema, globalWorkflowsUpdateRequestSchema, globalWorkflowsUpdateResponseSchema, invalidRepoPatternReason, repoPatternEntrySchema } from "./messages/dashboard-global-workflows.js";
|
|
3
|
+
export { globalWorkflowSettingsSchema, globalWorkflowsGetRequestSchema, globalWorkflowsGetResponseSchema, globalWorkflowsUpdateRequestSchema, globalWorkflowsUpdateResponseSchema, invalidRepoPatternReason, repoPatternEntrySchema };
|
|
@@ -14,7 +14,7 @@ import "../rolldown-runtime-ClRpJifh.js";
|
|
|
14
14
|
* payload" path. The win is that Platform never holds the full body in
|
|
15
15
|
* memory and the dashboard can render progress as bytes arrive.
|
|
16
16
|
*/
|
|
17
|
-
const EVENT_LOG_PAYLOAD_CHUNK_BYTES =
|
|
17
|
+
const EVENT_LOG_PAYLOAD_CHUNK_BYTES = 65536;
|
|
18
18
|
//#endregion
|
|
19
19
|
export { EVENT_LOG_PAYLOAD_CHUNK_BYTES };
|
|
20
20
|
|
|
@@ -133,6 +133,7 @@ export declare const AccessLogAction: z.ZodEnum<{
|
|
|
133
133
|
"source_override.set": "source_override.set";
|
|
134
134
|
"sources.list.read": "sources.list.read";
|
|
135
135
|
"step.logs.read": "step.logs.read";
|
|
136
|
+
"trust_directory.updated": "trust_directory.updated";
|
|
136
137
|
"trust_policy.updated": "trust_policy.updated";
|
|
137
138
|
}>;
|
|
138
139
|
export type AccessLogAction = z.infer<typeof AccessLogAction>;
|
|
@@ -237,6 +238,7 @@ export declare const accessLogItemSchema: z.ZodObject<{
|
|
|
237
238
|
"source_override.set": "source_override.set";
|
|
238
239
|
"sources.list.read": "sources.list.read";
|
|
239
240
|
"step.logs.read": "step.logs.read";
|
|
241
|
+
"trust_directory.updated": "trust_directory.updated";
|
|
240
242
|
"trust_policy.updated": "trust_policy.updated";
|
|
241
243
|
}>;
|
|
242
244
|
targetType: z.ZodNullable<z.ZodEnum<{
|
|
@@ -368,6 +370,7 @@ export declare const accessLogFilterSchema: z.ZodObject<{
|
|
|
368
370
|
"source_override.set": "source_override.set";
|
|
369
371
|
"sources.list.read": "sources.list.read";
|
|
370
372
|
"step.logs.read": "step.logs.read";
|
|
373
|
+
"trust_directory.updated": "trust_directory.updated";
|
|
371
374
|
"trust_policy.updated": "trust_policy.updated";
|
|
372
375
|
}>>;
|
|
373
376
|
source: z.ZodOptional<z.ZodEnum<{
|
|
@@ -529,6 +532,7 @@ export declare const dashboardAccessLogListRequestSchema: z.ZodObject<{
|
|
|
529
532
|
"source_override.set": "source_override.set";
|
|
530
533
|
"sources.list.read": "sources.list.read";
|
|
531
534
|
"step.logs.read": "step.logs.read";
|
|
535
|
+
"trust_directory.updated": "trust_directory.updated";
|
|
532
536
|
"trust_policy.updated": "trust_policy.updated";
|
|
533
537
|
}>>;
|
|
534
538
|
source: z.ZodOptional<z.ZodEnum<{
|
|
@@ -671,6 +675,7 @@ export declare const dashboardAccessLogListResponseSchema: z.ZodObject<{
|
|
|
671
675
|
"source_override.set": "source_override.set";
|
|
672
676
|
"sources.list.read": "sources.list.read";
|
|
673
677
|
"step.logs.read": "step.logs.read";
|
|
678
|
+
"trust_directory.updated": "trust_directory.updated";
|
|
674
679
|
"trust_policy.updated": "trust_policy.updated";
|
|
675
680
|
}>;
|
|
676
681
|
targetType: z.ZodNullable<z.ZodEnum<{
|
|
@@ -79,13 +79,24 @@ export declare const actorPrincipalSchema: z.ZodDiscriminatedUnion<[z.ZodObject<
|
|
|
79
79
|
component: z.ZodString;
|
|
80
80
|
}, z.core.$strip>], "type">;
|
|
81
81
|
export type ActorPrincipal = z.infer<typeof actorPrincipalSchema>;
|
|
82
|
+
/**
|
|
83
|
+
* Separator {@link stringifyActor} appends when a `user` / `api_key` actor acted
|
|
84
|
+
* through an agent, as `${type}:${id}${ACTOR_AGENT_SUFFIX}${label}`.
|
|
85
|
+
*
|
|
86
|
+
* Exported because a reader that splits the persisted string on its first colon
|
|
87
|
+
* gets `${id}${ACTOR_AGENT_SUFFIX}${label}` rather than the id — so any consumer
|
|
88
|
+
* comparing a stored subject against a live one has to strip this suffix, and
|
|
89
|
+
* must strip the same string this function writes.
|
|
90
|
+
*/
|
|
91
|
+
export declare const ACTOR_AGENT_SUFFIX = " via agent:";
|
|
82
92
|
/**
|
|
83
93
|
* Convert an ActorPrincipal to a colon-prefixed string suitable for DB
|
|
84
94
|
* persistence in columns like `execution_runs.triggered_by` / `.cancelled_by`.
|
|
85
95
|
* The inverse of parseActor().
|
|
86
96
|
*
|
|
87
|
-
* Format: `${type}:${id}` where id is the variant's natural identifier
|
|
88
|
-
*
|
|
97
|
+
* Format: `${type}:${id}` where id is the variant's natural identifier, plus
|
|
98
|
+
* {@link ACTOR_AGENT_SUFFIX} and the label when the actor acted through an
|
|
99
|
+
* agent. Extra metadata (api_key.ownerSub, platform_operator.reason) is NOT
|
|
89
100
|
* round-tripped through the string form — callers that need full fidelity
|
|
90
101
|
* must persist the actor object separately (e.g. in `access_log.actor_meta`).
|
|
91
102
|
*/
|
|
@@ -84,19 +84,30 @@ const actorPrincipalSchema = z.discriminatedUnion("type", [
|
|
|
84
84
|
systemActorSchema
|
|
85
85
|
]);
|
|
86
86
|
/**
|
|
87
|
+
* Separator {@link stringifyActor} appends when a `user` / `api_key` actor acted
|
|
88
|
+
* through an agent, as `${type}:${id}${ACTOR_AGENT_SUFFIX}${label}`.
|
|
89
|
+
*
|
|
90
|
+
* Exported because a reader that splits the persisted string on its first colon
|
|
91
|
+
* gets `${id}${ACTOR_AGENT_SUFFIX}${label}` rather than the id — so any consumer
|
|
92
|
+
* comparing a stored subject against a live one has to strip this suffix, and
|
|
93
|
+
* must strip the same string this function writes.
|
|
94
|
+
*/
|
|
95
|
+
const ACTOR_AGENT_SUFFIX = " via agent:";
|
|
96
|
+
/**
|
|
87
97
|
* Convert an ActorPrincipal to a colon-prefixed string suitable for DB
|
|
88
98
|
* persistence in columns like `execution_runs.triggered_by` / `.cancelled_by`.
|
|
89
99
|
* The inverse of parseActor().
|
|
90
100
|
*
|
|
91
|
-
* Format: `${type}:${id}` where id is the variant's natural identifier
|
|
92
|
-
*
|
|
101
|
+
* Format: `${type}:${id}` where id is the variant's natural identifier, plus
|
|
102
|
+
* {@link ACTOR_AGENT_SUFFIX} and the label when the actor acted through an
|
|
103
|
+
* agent. Extra metadata (api_key.ownerSub, platform_operator.reason) is NOT
|
|
93
104
|
* round-tripped through the string form — callers that need full fidelity
|
|
94
105
|
* must persist the actor object separately (e.g. in `access_log.actor_meta`).
|
|
95
106
|
*/
|
|
96
107
|
function stringifyActor(actor) {
|
|
97
108
|
switch (actor.type) {
|
|
98
|
-
case "user": return actor.agent ? `user:${actor.sub}
|
|
99
|
-
case "api_key": return actor.agent ? `api_key:${actor.keyId}
|
|
109
|
+
case "user": return actor.agent ? `user:${actor.sub}${ACTOR_AGENT_SUFFIX}${actor.agent.label}` : `user:${actor.sub}`;
|
|
110
|
+
case "api_key": return actor.agent ? `api_key:${actor.keyId}${ACTOR_AGENT_SUFFIX}${actor.agent.label}` : `api_key:${actor.keyId}`;
|
|
100
111
|
case "service_account": return `service_account:${actor.id}`;
|
|
101
112
|
case "platform_operator": return `platform_operator:${actor.sub}`;
|
|
102
113
|
case "system": return `system:${actor.component}`;
|
|
@@ -178,6 +189,6 @@ function agentLabelOf(actor) {
|
|
|
178
189
|
return null;
|
|
179
190
|
}
|
|
180
191
|
//#endregion
|
|
181
|
-
export { ActorType, actorPrincipalSchema, agentLabelOf, apiKeyActorSchema, flattenActor, parseActor, platformOperatorActorSchema, serviceAccountActorSchema, stringifyActor, systemActorSchema, userActorSchema };
|
|
192
|
+
export { ACTOR_AGENT_SUFFIX, ActorType, actorPrincipalSchema, agentLabelOf, apiKeyActorSchema, flattenActor, parseActor, platformOperatorActorSchema, serviceAccountActorSchema, stringifyActor, systemActorSchema, userActorSchema };
|
|
182
193
|
|
|
183
194
|
//# sourceMappingURL=actor.js.map
|
|
@@ -19,7 +19,7 @@ import { z } from "zod";
|
|
|
19
19
|
* MUST be passed as `maxPayload` on every `new WebSocket(...)` constructor and
|
|
20
20
|
* on every `WebSocketServer` `options` object across the three packages.
|
|
21
21
|
*/
|
|
22
|
-
const WS_MAX_PAYLOAD_BYTES =
|
|
22
|
+
const WS_MAX_PAYLOAD_BYTES = 26214400;
|
|
23
23
|
/**
|
|
24
24
|
* Heartbeat message sent periodically to keep WebSocket alive.
|
|
25
25
|
*
|
|
@@ -30,6 +30,27 @@ export declare const repoPatternEntrySchema: z.ZodObject<{
|
|
|
30
30
|
pattern: z.ZodString;
|
|
31
31
|
}, z.core.$strip>;
|
|
32
32
|
export type RepoPatternEntry = z.infer<typeof repoPatternEntrySchema>;
|
|
33
|
+
/**
|
|
34
|
+
* Why a pattern may not be stored on a global-workflow policy list, or null
|
|
35
|
+
* when it is acceptable.
|
|
36
|
+
*
|
|
37
|
+
* The lists match each entry as a single glob, so a negated pattern inverts to
|
|
38
|
+
* "everything except" — on an allow list that allows almost every repo, on a
|
|
39
|
+
* deny list it denies almost every repo. The list's own direction already
|
|
40
|
+
* encodes allow/deny, so negation forms are rejected at write time.
|
|
41
|
+
*
|
|
42
|
+
* This is deliberately not folded into `repoPatternEntrySchema`: the schema is
|
|
43
|
+
* also the read path for rows already in `org_settings`, which must keep
|
|
44
|
+
* parsing. Evaluation handles a stored negation form by failing closed.
|
|
45
|
+
*
|
|
46
|
+
* Which forms count as a negation is not decided here: it comes from the one
|
|
47
|
+
* classifier in `repo/pattern-negation.js`, shared with the Platform's
|
|
48
|
+
* repo-scope allow-list. Keeping the verdict in one place is what stops this
|
|
49
|
+
* list and that one from reading the same pattern language two different ways —
|
|
50
|
+
* notably the regular-expression assertions `(?!…)` / `(?<!…)`, which picomatch
|
|
51
|
+
* compiles into a real inversion, and `[!…]`, which it does not.
|
|
52
|
+
*/
|
|
53
|
+
export declare function invalidRepoPatternReason(pattern: string): string | null;
|
|
33
54
|
/** Projected org-level global workflow settings. */
|
|
34
55
|
export declare const globalWorkflowSettingsSchema: z.ZodObject<{
|
|
35
56
|
customerId: z.ZodString;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import "../../rolldown-runtime-ClRpJifh.js";
|
|
2
2
|
import { actorPrincipalSchema } from "./actor.js";
|
|
3
|
+
import { negatedPatternReason } from "../../repo/pattern-negation.js";
|
|
3
4
|
import { z } from "zod";
|
|
4
5
|
//#region src/protocol/messages/dashboard-global-workflows.ts
|
|
5
6
|
/**
|
|
@@ -32,6 +33,32 @@ const repoPatternEntrySchema = z.object({
|
|
|
32
33
|
routingKey: z.string().min(1).optional(),
|
|
33
34
|
pattern: z.string().min(1)
|
|
34
35
|
});
|
|
36
|
+
/**
|
|
37
|
+
* Why a pattern may not be stored on a global-workflow policy list, or null
|
|
38
|
+
* when it is acceptable.
|
|
39
|
+
*
|
|
40
|
+
* The lists match each entry as a single glob, so a negated pattern inverts to
|
|
41
|
+
* "everything except" — on an allow list that allows almost every repo, on a
|
|
42
|
+
* deny list it denies almost every repo. The list's own direction already
|
|
43
|
+
* encodes allow/deny, so negation forms are rejected at write time.
|
|
44
|
+
*
|
|
45
|
+
* This is deliberately not folded into `repoPatternEntrySchema`: the schema is
|
|
46
|
+
* also the read path for rows already in `org_settings`, which must keep
|
|
47
|
+
* parsing. Evaluation handles a stored negation form by failing closed.
|
|
48
|
+
*
|
|
49
|
+
* Which forms count as a negation is not decided here: it comes from the one
|
|
50
|
+
* classifier in `repo/pattern-negation.js`, shared with the Platform's
|
|
51
|
+
* repo-scope allow-list. Keeping the verdict in one place is what stops this
|
|
52
|
+
* list and that one from reading the same pattern language two different ways —
|
|
53
|
+
* notably the regular-expression assertions `(?!…)` / `(?<!…)`, which picomatch
|
|
54
|
+
* compiles into a real inversion, and `[!…]`, which it does not.
|
|
55
|
+
*/
|
|
56
|
+
function invalidRepoPatternReason(pattern) {
|
|
57
|
+
if (pattern.trim() === "") return "pattern is empty";
|
|
58
|
+
const negation = negatedPatternReason(pattern);
|
|
59
|
+
if (negation) return `${negation} is not allowed on a policy list — the list's direction already encodes allow/deny`;
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
35
62
|
/** Projected org-level global workflow settings. */
|
|
36
63
|
const globalWorkflowSettingsSchema = z.object({
|
|
37
64
|
customerId: z.string(),
|
|
@@ -92,6 +119,6 @@ const globalWorkflowsUpdateResponseSchema = z.object({
|
|
|
92
119
|
error: z.string().optional()
|
|
93
120
|
});
|
|
94
121
|
//#endregion
|
|
95
|
-
export { globalWorkflowSettingsSchema, globalWorkflowsGetRequestSchema, globalWorkflowsGetResponseSchema, globalWorkflowsUpdateRequestSchema, globalWorkflowsUpdateResponseSchema, repoPatternEntrySchema };
|
|
122
|
+
export { globalWorkflowSettingsSchema, globalWorkflowsGetRequestSchema, globalWorkflowsGetResponseSchema, globalWorkflowsUpdateRequestSchema, globalWorkflowsUpdateResponseSchema, invalidRepoPatternReason, repoPatternEntrySchema };
|
|
96
123
|
|
|
97
124
|
//# sourceMappingURL=dashboard-global-workflows.js.map
|