@kici-dev/engine 0.1.14 → 0.1.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/README.md +13 -1
  2. package/dist/approval/types.d.ts +56 -0
  3. package/dist/approval/types.js +42 -0
  4. package/dist/audit/access-log-policy.js +14 -0
  5. package/dist/audit/retention-policy.js +10 -0
  6. package/dist/environment/types.d.ts +8 -0
  7. package/dist/index.d.ts +2 -1
  8. package/dist/index.js +10 -8
  9. package/dist/labels.d.ts +7 -0
  10. package/dist/labels.js +11 -2
  11. package/dist/metrics/metric-catalog.generated.d.ts +50 -0
  12. package/dist/metrics/metric-catalog.generated.js +60 -0
  13. package/dist/protocol/analytics-events.d.ts +16 -0
  14. package/dist/protocol/analytics-events.js +20 -0
  15. package/dist/protocol/dashboard-write-operations.d.ts +4 -1
  16. package/dist/protocol/dashboard-write-operations.js +11 -1
  17. package/dist/protocol/messages/access-log.d.ts +26 -0
  18. package/dist/protocol/messages/access-log.js +5 -0
  19. package/dist/protocol/messages/actor.d.ts +2 -0
  20. package/dist/protocol/messages/actor.js +12 -2
  21. package/dist/protocol/messages/auth.d.ts +1 -0
  22. package/dist/protocol/messages/capabilities.d.ts +1 -0
  23. package/dist/protocol/messages/dashboard-global-workflows.d.ts +2 -0
  24. package/dist/protocol/messages/dashboard.d.ts +619 -6
  25. package/dist/protocol/messages/dashboard.js +179 -10
  26. package/dist/protocol/messages/event-log.d.ts +4 -0
  27. package/dist/protocol/messages/event-log.js +4 -0
  28. package/dist/protocol/messages/execution-status.d.ts +56 -3
  29. package/dist/protocol/messages/execution-status.js +44 -4
  30. package/dist/protocol/messages/orchestrator-agent.d.ts +284 -0
  31. package/dist/protocol/messages/orchestrator-agent.js +202 -4
  32. package/dist/protocol/messages/peer.d.ts +89 -0
  33. package/dist/protocol/messages/peer.js +50 -2
  34. package/dist/protocol/messages/platform-orchestrator.d.ts +168 -6
  35. package/dist/protocol/messages/platform-orchestrator.js +15 -56
  36. package/dist/protocol/messages/run-events.d.ts +1 -0
  37. package/dist/provenance/schema.d.ts +407 -0
  38. package/dist/provenance/schema.js +143 -0
  39. package/dist/provider/index.d.ts +1 -0
  40. package/dist/provider/index.js +2 -1
  41. package/dist/provider/lock-file-parse-error.d.ts +14 -0
  42. package/dist/provider/lock-file-parse-error.js +22 -0
  43. package/dist/trigger/types.d.ts +29 -1
  44. package/dist/trigger/types.js +4 -1
  45. package/dist/ws/close-codes.d.ts +7 -0
  46. package/dist/ws/close-codes.js +8 -1
  47. package/package.json +19 -8
  48. package/sbom.spdx.json +5 -5
package/README.md CHANGED
@@ -1 +1,13 @@
1
- TBD
1
+ # @kici-dev/engine
2
+
3
+ Shared business logic for the KiCI CI/CD stack: protocol message schemas, trigger matching, the execution state machine, and provider interfaces used across the KiCI tiers.
4
+
5
+ This is an internal support library — other `@kici-dev` packages depend on it; it is not meant to be installed directly.
6
+
7
+ Part of [KiCI](https://kici.dev) — CI/CD workflows as TypeScript code: author them with full language power, dry-run them locally, and run them on your own infrastructure.
8
+
9
+ ## Links
10
+
11
+ - Documentation: <https://docs.kici.dev/architecture/overview/>
12
+ - Source: <https://github.com/kici-dev/kici-public/tree/main/packages/engine>
13
+ - License: AGPL-3.0-only
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Shared approval requirement + clause types.
3
+ *
4
+ * One normalized `ApprovalRequirement` is produced by both approval triggers —
5
+ * a mandatory environment policy and an explicit SDK `requireApproval` — and is
6
+ * consumed identically by the orchestrator gate, the resolver, the held-run
7
+ * store, and the agent step round-trip. Pure Zod (no node built-ins), so this
8
+ * module is safe in the browser-facing engine barrel.
9
+ */
10
+ import { z } from 'zod';
11
+ /**
12
+ * A single approver clause. `{ team }` is satisfied by any member of the named
13
+ * team; `{ user }` by that specific user. A flat AND list of clauses must all
14
+ * be satisfied to release a held element.
15
+ */
16
+ export declare const approverClauseSchema: z.ZodUnion<readonly [z.ZodObject<{
17
+ team: z.ZodString;
18
+ }, z.core.$strict>, z.ZodObject<{
19
+ user: z.ZodString;
20
+ }, z.core.$strict>]>;
21
+ export type ApproverClause = z.infer<typeof approverClauseSchema>;
22
+ /** Granularity of a held element. */
23
+ export declare const HoldScope: z.ZodEnum<{
24
+ job: "job";
25
+ step: "step";
26
+ workflow: "workflow";
27
+ }>;
28
+ export type HoldScope = z.infer<typeof HoldScope>;
29
+ /** What triggered the hold: an environment policy (mandatory) or SDK code (explicit). */
30
+ export declare const TriggerSource: z.ZodEnum<{
31
+ environment: "environment";
32
+ explicit: "explicit";
33
+ }>;
34
+ export type TriggerSource = z.infer<typeof TriggerSource>;
35
+ /**
36
+ * The normalized requirement attached to a held element. `clauses` is a flat
37
+ * AND list; an empty list means "any approval-capable org member". `expiresAt`
38
+ * is an ISO timestamp; on expiry the element is rejected.
39
+ */
40
+ export declare const approvalRequirementSchema: z.ZodObject<{
41
+ clauses: z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
42
+ team: z.ZodString;
43
+ }, z.core.$strict>, z.ZodObject<{
44
+ user: z.ZodString;
45
+ }, z.core.$strict>]>>;
46
+ expiresAt: z.ZodString;
47
+ reason: z.ZodString;
48
+ }, z.core.$strip>;
49
+ export type ApprovalRequirement = z.infer<typeof approvalRequirementSchema>;
50
+ /** An individual approve/reject decision recorded against a held element. */
51
+ export declare const ApprovalDecision: z.ZodEnum<{
52
+ approve: "approve";
53
+ reject: "reject";
54
+ }>;
55
+ export type ApprovalDecision = z.infer<typeof ApprovalDecision>;
56
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1,42 @@
1
+ import "../chunk-gOLHoazu.js";
2
+ import { z } from "zod";
3
+ //#region src/approval/types.ts
4
+ /**
5
+ * Shared approval requirement + clause types.
6
+ *
7
+ * One normalized `ApprovalRequirement` is produced by both approval triggers —
8
+ * a mandatory environment policy and an explicit SDK `requireApproval` — and is
9
+ * consumed identically by the orchestrator gate, the resolver, the held-run
10
+ * store, and the agent step round-trip. Pure Zod (no node built-ins), so this
11
+ * module is safe in the browser-facing engine barrel.
12
+ */
13
+ /**
14
+ * A single approver clause. `{ team }` is satisfied by any member of the named
15
+ * team; `{ user }` by that specific user. A flat AND list of clauses must all
16
+ * be satisfied to release a held element.
17
+ */
18
+ const approverClauseSchema = z.union([z.object({ team: z.string().min(1) }).strict(), z.object({ user: z.string().min(1) }).strict()]);
19
+ /** Granularity of a held element. */
20
+ const HoldScope = z.enum([
21
+ "workflow",
22
+ "job",
23
+ "step"
24
+ ]);
25
+ /** What triggered the hold: an environment policy (mandatory) or SDK code (explicit). */
26
+ const TriggerSource = z.enum(["environment", "explicit"]);
27
+ /**
28
+ * The normalized requirement attached to a held element. `clauses` is a flat
29
+ * AND list; an empty list means "any approval-capable org member". `expiresAt`
30
+ * is an ISO timestamp; on expiry the element is rejected.
31
+ */
32
+ const approvalRequirementSchema = z.object({
33
+ clauses: z.array(approverClauseSchema),
34
+ expiresAt: z.string(),
35
+ reason: z.string()
36
+ });
37
+ /** An individual approve/reject decision recorded against a held element. */
38
+ const ApprovalDecision = z.enum(["approve", "reject"]);
39
+ //#endregion
40
+ export { ApprovalDecision, HoldScope, TriggerSource, approvalRequirementSchema, approverClauseSchema };
41
+
42
+ //# sourceMappingURL=types.js.map
@@ -38,6 +38,18 @@ const POLICY_BY_ACTION = {
38
38
  kind: "sample",
39
39
  allowedRate: .05
40
40
  },
41
+ "runs.list.read": {
42
+ kind: "sample",
43
+ allowedRate: .05
44
+ },
45
+ "runs.filters.read": {
46
+ kind: "sample",
47
+ allowedRate: .05
48
+ },
49
+ "sources.list.read": {
50
+ kind: "sample",
51
+ allowedRate: .1
52
+ },
41
53
  "run.orch_logs.read": {
42
54
  kind: "sample",
43
55
  allowedRate: .1
@@ -124,6 +136,8 @@ const POLICY_BY_ACTION = {
124
136
  "secret_scope.delete": { kind: "always" },
125
137
  "held_run.approve": { kind: "always" },
126
138
  "held_run.reject": { kind: "always" },
139
+ "held_run.request": { kind: "always" },
140
+ "held_run.expire": { kind: "always" },
127
141
  "registration.disable": { kind: "always" },
128
142
  "registration.delete": { kind: "always" },
129
143
  "backend.sync": { kind: "always" },
@@ -13,6 +13,9 @@ import "../chunk-gOLHoazu.js";
13
13
  */
14
14
  const ACCESS_LOG_WARM_DAYS = {
15
15
  "run.detail.read": 30,
16
+ "runs.list.read": 30,
17
+ "runs.filters.read": 30,
18
+ "sources.list.read": 30,
16
19
  "run.orch_logs.read": 30,
17
20
  "step.logs.read": 30,
18
21
  "event_log.list.read": 30,
@@ -49,6 +52,8 @@ const ACCESS_LOG_WARM_DAYS = {
49
52
  "env_binding.set": 180,
50
53
  "held_run.approve": 180,
51
54
  "held_run.reject": 180,
55
+ "held_run.request": 180,
56
+ "held_run.expire": 180,
52
57
  "registration.disable": 180,
53
58
  "registration.delete": 180,
54
59
  "backend.sync": 180,
@@ -244,6 +249,9 @@ function secretAuditLogWarmSqlCase() {
244
249
  */
245
250
  const ACCESS_LOG_COLD_DAYS = {
246
251
  "run.detail.read": 180,
252
+ "runs.list.read": 180,
253
+ "runs.filters.read": 180,
254
+ "sources.list.read": 180,
247
255
  "run.orch_logs.read": 180,
248
256
  "step.logs.read": 180,
249
257
  "event_log.list.read": 180,
@@ -280,6 +288,8 @@ const ACCESS_LOG_COLD_DAYS = {
280
288
  "env_binding.set": 730,
281
289
  "held_run.approve": 730,
282
290
  "held_run.reject": 730,
291
+ "held_run.request": 730,
292
+ "held_run.expire": 730,
283
293
  "registration.disable": 730,
284
294
  "registration.delete": 730,
285
295
  "backend.sync": 730,
@@ -4,6 +4,7 @@
4
4
  * Environments are org-level entities that group secrets, variables,
5
5
  * and protection rules for deployment targets (dev, staging, production).
6
6
  */
7
+ import type { ApproverClause } from '../approval/types.js';
7
8
  /** Environment entity — org-level deployment target with protection rules. */
8
9
  export interface Environment {
9
10
  id: string;
@@ -94,5 +95,12 @@ export interface ProtectionGateResult {
94
95
  reason?: string;
95
96
  holdUntil?: string;
96
97
  holdType?: 'reviewer' | 'timer' | 'concurrency' | 'security';
98
+ /**
99
+ * Approver clauses for a reviewer hold, mapped from the environment's
100
+ * `requiredReviewers`. Each reviewer string maps to a `{ user }` clause
101
+ * (team-named reviewers are a documented follow-up). Empty/undefined means
102
+ * "any approval-capable member".
103
+ */
104
+ clauses?: ApproverClause[];
97
105
  }
98
106
  //# sourceMappingURL=types.d.ts.map
package/dist/index.d.ts CHANGED
@@ -18,6 +18,7 @@ export * from './protocol/messages/execution-status.js';
18
18
  export * from './protocol/messages/scaler-event.js';
19
19
  export * from './protocol/messages/event-log.js';
20
20
  export * from './protocol/messages/access-log.js';
21
+ export * from './approval/types.js';
21
22
  export * from './audit/access-log-policy.js';
22
23
  export * from './audit/retention-policy.js';
23
24
  export * from './audit/activity.js';
@@ -45,7 +46,7 @@ export type { RateLimiterConfig, RateLimitResult } from './ws/rate-limiter.js';
45
46
  export * from './env/environment-allowlist.js';
46
47
  export * from './secrets/index.js';
47
48
  export * from './environment/index.js';
48
- export { deriveOsArchLabels, hostLabel, agentTypeLabel, scalerLabel, mergeAutoLabels, normalizeRunsOn, KNOWN_ROLES, resolveRoleLabels, validateNoReservedLabels, scalerAgentLabels, isSelfReportedLabel, SELF_REPORTED_LABEL_PREFIXES, } from './labels.js';
49
+ export { deriveOsArchLabels, hostLabel, parseHostLabel, HOST_LABEL_PREFIX, agentTypeLabel, scalerLabel, mergeAutoLabels, normalizeRunsOn, KNOWN_ROLES, resolveRoleLabels, validateNoReservedLabels, scalerAgentLabels, isSelfReportedLabel, SELF_REPORTED_LABEL_PREFIXES, } from './labels.js';
49
50
  export type { NormalizedRunsOn } from './labels.js';
50
51
  export type { AgentRole } from './labels.js';
51
52
  export * from './scaler/scaler-backend-type.js';
package/dist/index.js CHANGED
@@ -4,12 +4,14 @@ import { WS_MAX_PAYLOAD_BYTES, ackSchema, errorSchema, heartbeatSchema, nackSche
4
4
  import { ActorType, actorPrincipalSchema, apiKeyActorSchema, flattenActor, parseActor, platformOperatorActorSchema, serviceAccountActorSchema, stringifyActor, systemActorSchema, userActorSchema } from "./protocol/messages/actor.js";
5
5
  import { ORCH_CAPABILITIES, OrchRole, hasOrchCapability, orchCapabilitiesSchema } from "./protocol/messages/capabilities.js";
6
6
  import { authFailureSchema, authRequestSchema, authSuccessSchema } from "./protocol/messages/auth.js";
7
- import { ExecutionJobStatus, ExecutionRunStatus, ExecutionStepStatus, InitFailureCategory, TERMINAL_JOB_STATES, TERMINAL_RUN_STATES, executionStatusSchema, initFailureSchema, jobStatusForwardSchema, stateReplaySchema, stepStatusForwardSchema } from "./protocol/messages/execution-status.js";
7
+ import { CacheOutcome, CacheRunEventType, CacheStepType, ExecutionJobStatus, ExecutionRunStatus, ExecutionStepStatus, InitFailureCategory, TERMINAL_JOB_STATES, TERMINAL_RUN_STATES, TimeoutReason, executionStatusSchema, initFailureSchema, jobStatusForwardSchema, stateReplaySchema, stepStatusForwardSchema } from "./protocol/messages/execution-status.js";
8
8
  import { SourceProvider, SourceSubtype, sourceDeregisterAckSchema, sourceDeregisterSchema, sourceRegistrationAckSchema, sourceRegistrationSchema } from "./protocol/messages/source-registration.js";
9
9
  import { AccessLogAction, AccessLogOutcome, AccessLogSource, AccessLogTargetType, accessLogFilterSchema, accessLogItemSchema, dashboardAccessLogListRequestSchema, dashboardAccessLogListResponseSchema } from "./protocol/messages/access-log.js";
10
10
  import { browserJobContextSchema, browserRunEventSchema, dashboardOrchLogsRequestSchema, dashboardOrchLogsResponseSchema, jobContextMessageSchema, runEventMessageSchema } from "./protocol/messages/run-events.js";
11
11
  import { EventLogSource, EventLogStatus, PayloadOmittedReason } from "./protocol/messages/event-log.js";
12
- import { EventLogPayloadStreamError, HeldRunQueueType, HeldRunStatus, backendGetRequestSchema, backendGetResponseSchema, backendItemSchema, backendSyncRequestSchema, backendSyncResponseSchema, backendTestRequestSchema, backendTestResponseSchema, backendsListRequestSchema, backendsListResponseSchema, backendsSyncAllRequestSchema, backendsSyncAllResponseSchema, browserEventLogPayloadChunkSchema, dashboardDiagnosticsRequestSchema, dashboardDiagnosticsResponseSchema, dashboardEventDlqCountRequestSchema, dashboardEventDlqDiscardRequestSchema, dashboardEventDlqListItemSchema, dashboardEventDlqListRequestSchema, dashboardEventDlqRetryRequestSchema, dashboardEventLogDetailRequestSchema, dashboardEventLogListRequestSchema, dashboardEventLogPayloadChunkSchema, dashboardEventLogPayloadStreamRequestSchema, dashboardJobDetailSchema, dashboardOrchToPlatformSchema, dashboardPayloadRequestSchema, dashboardPlatformToOrchSchema, dashboardRunDetailApiResponseSchema, dashboardRunDetailRequestSchema, dashboardRunDetailResponseSchema, dashboardScalerAgentsRequestSchema, dashboardScalerAgentsResponseSchema, dashboardScalerCapacityRequestSchema, dashboardScalerCapacityResponseSchema, dashboardStepLogsApiResponseSchema, dashboardStepLogsRequestSchema, dashboardStepLogsResponseSchema, envBindingsListRequestSchema, envBindingsSetRequestSchema, envCreateRequestSchema, envDeleteRequestSchema, envGetRequestSchema, envHistoryRequestSchema, envListRequestSchema, envSecretDeleteRequestSchema, envSecretScopeCreateRequestSchema, envSecretScopeDeleteRequestSchema, envSecretScopeRenameRequestSchema, envSecretSetRequestSchema, envSecretsListRequestSchema, envSourceOverrideDeleteRequestSchema, envSourceOverrideSetRequestSchema, envSourceOverridesListRequestSchema, envUpdateRequestSchema, envVarDeleteRequestSchema, envVarSetRequestSchema, envVarsListRequestSchema, eventLogListItemSchema, heldRunApproveRequestSchema, heldRunRejectRequestSchema, heldRunsListRequestSchema, identityLinkItemSchema, identityLinkListResponseSchema, manualScheduleRequestSchema, memberIdentityLinkSchema, memberListResponseSchema, memberRoleAssignmentSchema, orgMemberSchema, registrationDeleteRequestSchema, registrationDisableRequestSchema, registrationItemSchema, registrationsListRequestSchema, registrationsListResponseSchema, runCancelRequestSchema, runEventSchema, runLineageResponseSchema, runRerunRequestSchema, trustPolicyResponseSchema } from "./protocol/messages/dashboard.js";
12
+ import { ScalerBackendType } from "./scaler/scaler-backend-type.js";
13
+ import { ApprovalDecision, HoldScope, TriggerSource, approvalRequirementSchema, approverClauseSchema } from "./approval/types.js";
14
+ import { EnvDeleteErrorCode, EventLogPayloadStreamError, HeldRunQueueType, HeldRunStatus, backendGetRequestSchema, backendGetResponseSchema, backendItemSchema, backendSyncRequestSchema, backendSyncResponseSchema, backendTestRequestSchema, backendTestResponseSchema, backendsListRequestSchema, backendsListResponseSchema, backendsSyncAllRequestSchema, backendsSyncAllResponseSchema, browserEventLogPayloadChunkSchema, dashboardDiagnosticsRequestSchema, dashboardDiagnosticsResponseSchema, dashboardEventDlqCountRequestSchema, dashboardEventDlqDiscardRequestSchema, dashboardEventDlqListItemSchema, dashboardEventDlqListRequestSchema, dashboardEventDlqRetryRequestSchema, dashboardEventLogDetailRequestSchema, dashboardEventLogListRequestSchema, dashboardEventLogPayloadChunkSchema, dashboardEventLogPayloadStreamRequestSchema, dashboardJobDetailSchema, dashboardOrchToPlatformSchema, dashboardPayloadRequestSchema, dashboardPlatformToOrchSchema, dashboardRunDetailApiResponseSchema, dashboardRunDetailRequestSchema, dashboardRunDetailResponseSchema, dashboardRunSummarySchema, dashboardRunsFiltersRequestSchema, dashboardRunsFiltersResponseSchema, dashboardRunsListRequestSchema, dashboardRunsListResponseSchema, dashboardScalerAgentsRequestSchema, dashboardScalerAgentsResponseSchema, dashboardScalerCapacityRequestSchema, dashboardScalerCapacityResponseSchema, dashboardSourceSummarySchema, dashboardSourcesListRequestSchema, dashboardSourcesListResponseSchema, dashboardStepLogsApiResponseSchema, dashboardStepLogsRequestSchema, dashboardStepLogsResponseSchema, envBindingsListRequestSchema, envBindingsSetRequestSchema, envCreateRequestSchema, envDeleteRequestSchema, envGetRequestSchema, envHistoryRequestSchema, envListRequestSchema, envSecretDeleteRequestSchema, envSecretScopeCreateRequestSchema, envSecretScopeDeleteRequestSchema, envSecretScopeRenameRequestSchema, envSecretSetRequestSchema, envSecretsListRequestSchema, envSourceOverrideDeleteRequestSchema, envSourceOverrideSetRequestSchema, envSourceOverridesListRequestSchema, envTestAccessSetRequestSchema, envUpdateRequestSchema, envVarDeleteRequestSchema, envVarSetRequestSchema, envVarsListRequestSchema, eventLogListItemSchema, heldRunApproveRequestSchema, heldRunRejectRequestSchema, heldRunsListRequestSchema, identityLinkItemSchema, identityLinkListResponseSchema, manualScheduleRequestSchema, memberIdentityLinkSchema, memberListResponseSchema, memberRoleAssignmentSchema, orgMemberSchema, registrationDeleteRequestSchema, registrationDisableRequestSchema, registrationItemSchema, registrationsListRequestSchema, registrationsListResponseSchema, runCancelRequestSchema, runEventSchema, runLineageResponseSchema, runRerunRequestSchema, trustPolicyResponseSchema } from "./protocol/messages/dashboard.js";
13
15
  import { WEBHOOK_RELAY_CHUNK_SIZE, WEBHOOK_RELAY_MAX_BODY_BYTES, WebhookRelayResult, cacheStatsSchema, executionEventSchema, logChunkSchema, orchMetricsSchema, orchestratorToPlatformMessageSchema, peerDiscoverSchema, peerUpdateSchema, platformToOrchestratorMessageSchema, staleCheckrunCleanupSchema, trustPolicyUpdateSchema, webhookAckSchema, webhookRelayChunkSchema, webhookRelaySchema, webhookRelayStartSchema } from "./protocol/messages/platform-orchestrator.js";
14
16
  import { ScalerEventType } from "./protocol/messages/scaler-event.js";
15
17
  import { AccessLogPolicyKind, POLICY_BY_ACTION, fnv1a32, shouldRecordAccess, shouldRecordSecretResolve } from "./audit/access-log-policy.js";
@@ -19,8 +21,8 @@ import { logPullOrchToPlatformSchema, logPullPlatformToOrchSchema } from "./prot
19
21
  import { EVENT_LOG_PAYLOAD_CHUNK_BYTES } from "./protocol/event-log-payload.js";
20
22
  import { browserAuthFailureSchema, browserAuthRefreshSchema, browserAuthRequestSchema, browserAuthSuccessSchema, browserErrorSchema, browserEventLogPayloadFetchSchema, browserGapSchema, browserJobNewSchema, browserJobStatusSchema, browserLogLinesSchema, browserLogStreamTerminatedReason, browserLogStreamTerminatedSchema, browserLogSubscribeSchema, browserLogUnsubscribeSchema, browserPingSchema, browserPongSchema, browserRunNewSchema, browserRunStatusSchema, browserStatusSubscribeSchema, browserStatusUnsubscribeSchema, browserStepStatusSchema, browserToPlatformMessageSchema, platformToBrowserMessageSchema } from "./protocol/messages/browser.js";
21
23
  import { joinRequestSchema, joinResponseSchema } from "./protocol/messages/join.js";
22
- import { jobProgressSchema, jobRerouteAckSchema, jobRerouteSchema, peerAgentTokenRevokeSchema, peerAuthRequestSchema, peerAuthResponseSchema, peerCapabilitiesSchema, peerConfigReloadResponseSchema, peerConfigReloadSchema, peerFromPeerMessageSchema, peerHeartbeatSchema, peerHelloResponseSchema, peerHelloSchema, peerJobCancelSchema, peerLeavingSchema, peerScalerEventSchema, peerToPeerMessageSchema, raftAppendEntriesSchema, raftVoteRequestSchema, raftVoteResponseSchema } from "./protocol/messages/peer.js";
23
- import { agentApiRequestSchema, agentApiResponseSchema, agentAuthFailureSchema, agentAuthRequestSchema, agentAuthSuccessSchema, agentLogChunkSchema, agentMetricsSchema, agentRegisterSchema, agentStatusSchema, agentStepStatusSchema, agentToOrchestratorMessageSchema, configAckSchema, eventEmitResponseSchema, eventEmitSchema, gitAuthSchema, jobCancelSchema, jobConcurrencyAckSchema, jobConcurrencyReportSchema, jobDispatchSchema, jobStatusSchema, orchestratorToAgentMessageSchema, registerAckSchema } from "./protocol/messages/orchestrator-agent.js";
24
+ import { fleetSelectionSchema, jobProgressSchema, jobRerouteAckSchema, jobRerouteSchema, peerAgentTokenRevokeSchema, peerAuthRequestSchema, peerAuthResponseSchema, peerCapabilitiesSchema, peerConfigReloadResponseSchema, peerConfigReloadSchema, peerFromPeerMessageSchema, peerHeartbeatSchema, peerHelloResponseSchema, peerHelloSchema, peerJobCancelSchema, peerLeavingSchema, peerLogsCollectChunkSchema, peerLogsCollectErrorSchema, peerLogsCollectRequestSchema, peerScalerEventSchema, peerToPeerMessageSchema, raftAppendEntriesSchema, raftVoteRequestSchema, raftVoteResponseSchema } from "./protocol/messages/peer.js";
25
+ import { CacheRefScope, JobRejectReason, StepApprovalOutcome, agentApiRequestSchema, agentApiResponseSchema, agentAuthFailureSchema, agentAuthRequestSchema, agentAuthSuccessSchema, agentLogChunkSchema, agentMetricsSchema, agentRegisterSchema, agentStatusSchema, agentStepStatusSchema, agentToOrchestratorMessageSchema, cacheUserRestoreRequestSchema, cacheUserRestoreResponseSchema, cacheUserSaveCompleteSchema, cacheUserSaveRequestSchema, cacheUserSaveResponseSchema, configAckSchema, eventEmitResponseSchema, eventEmitSchema, fleetBundleChunkSchema, fleetBundleErrorSchema, fleetLogsRequestSchema, gitAuthSchema, jobAckSchema, jobCancelSchema, jobConcurrencyAckSchema, jobConcurrencyReportSchema, jobDispatchSchema, jobRejectSchema, jobStatusSchema, orchestratorToAgentMessageSchema, registerAckSchema, stepApprovalRequestSchema, stepApprovalResolvedSchema } from "./protocol/messages/orchestrator-agent.js";
24
26
  import { testCancelResponseSchema, testCancelSchema, testEventSchema, testTriggerResponseSchema, testTriggerSchema } from "./protocol/messages/test-run.js";
25
27
  import { observeCompleteSchema, observeLogSchema, observeStatusSchema, observeStepSchema, observeSubscribeSchema } from "./protocol/messages/observe.js";
26
28
  import { NeedsEntrySchema, NeedsGroupEntrySchema, SCHEMA_VERSION, isLockDynamicJobFn, isLockInlineValue, isLockStaticJob } from "./trigger/types.js";
@@ -29,18 +31,18 @@ import { createTraceEntry, createWorkflowDecision } from "./trigger/decision-tra
29
31
  import { matchAllWorkflows, matchBranchPattern, matchPathPatterns, matchRepoPatterns, matchWorkflowTriggers } from "./trigger/matcher.js";
30
32
  import { isTerminal, transition } from "./state-machine/machine.js";
31
33
  import "./state-machine/index.js";
34
+ import { LockFileParseError } from "./provider/lock-file-parse-error.js";
32
35
  import { CheckRunConclusion } from "./provider/check-run-conclusion.js";
33
36
  import "./provider/index.js";
34
- import { WS_CLOSE_AGENT_AUTH_FAILED, WS_CLOSE_AUTH_TIMEOUT, WS_CLOSE_CLUSTER_NAME_CONFLICT, WS_CLOSE_GOING_AWAY, WS_CLOSE_HEARTBEAT_TIMEOUT, WS_CLOSE_INTERNAL_ERROR, WS_CLOSE_INVALID_MESSAGE, WS_CLOSE_PLAN_LIMIT, WS_CLOSE_PROTOCOL_ERROR, WS_CLOSE_RUN_NOT_FOUND, WS_CLOSE_UNAUTHORIZED } from "./ws/close-codes.js";
37
+ import { WS_CLOSE_AGENT_AUTH_FAILED, WS_CLOSE_AUTH_TIMEOUT, WS_CLOSE_CLUSTER_NAME_CONFLICT, WS_CLOSE_DISPATCH_ACK_TIMEOUT, WS_CLOSE_GOING_AWAY, WS_CLOSE_HEARTBEAT_TIMEOUT, WS_CLOSE_INTERNAL_ERROR, WS_CLOSE_INVALID_MESSAGE, WS_CLOSE_PLAN_LIMIT, WS_CLOSE_PROTOCOL_ERROR, WS_CLOSE_RUN_NOT_FOUND, WS_CLOSE_UNAUTHORIZED } from "./ws/close-codes.js";
35
38
  import { WsRateLimiter } from "./ws/rate-limiter.js";
36
39
  import { AGENT_REQUIRED_KICI_VARS, ALLOWED_SYSTEM_VARS, KICI_AGENT_ENV_PREFIX, SANDBOX_DEFAULT_VARS } from "./env/environment-allowlist.js";
37
40
  import "./secrets/index.js";
38
41
  import { matchScopePattern, resolveSecretsForEnvironment, stripScopePrefix } from "./environment/scope-resolver.js";
39
42
  import "./environment/index.js";
40
- import { KNOWN_ROLES, SELF_REPORTED_LABEL_PREFIXES, agentTypeLabel, deriveOsArchLabels, hostLabel, isSelfReportedLabel, mergeAutoLabels, normalizeRunsOn, resolveRoleLabels, scalerAgentLabels, scalerLabel, validateNoReservedLabels } from "./labels.js";
41
- import { ScalerBackendType } from "./scaler/scaler-backend-type.js";
43
+ import { HOST_LABEL_PREFIX, KNOWN_ROLES, SELF_REPORTED_LABEL_PREFIXES, agentTypeLabel, deriveOsArchLabels, hostLabel, isSelfReportedLabel, mergeAutoLabels, normalizeRunsOn, parseHostLabel, resolveRoleLabels, scalerAgentLabels, scalerLabel, validateNoReservedLabels } from "./labels.js";
42
44
  import { parseMemoryString, resourceRequestNestedSchema, resourceSpecSchema, validateResourceRequest } from "./scaler/resource-types.js";
43
45
  import { RegisterableTriggerType } from "./registration/registerable-trigger-type.js";
44
46
  import { createWorkflowBundleConfig } from "./bundler/rolldown-config.js";
45
47
  import "./bundler/index.js";
46
- export { ACCESS_LOG_COLD_DAYS, ACCESS_LOG_WARM_DAYS, AGENT_REQUIRED_KICI_VARS, ALLOWED_SYSTEM_VARS, AccessLogAction, AccessLogOutcome, AccessLogPolicyKind, AccessLogSource, AccessLogTargetType, ActivityFilterSource, ActivityRowSource, ActorType, CheckRunConclusion, EVENT_LOG_PAYLOAD_CHUNK_BYTES, EventLogPayloadStreamError, EventLogSource, EventLogStatus, ExecutionJobStatus, ExecutionRunStatus, ExecutionStepStatus, HeldRunQueueType, HeldRunStatus, InitFailureCategory, KICI_AGENT_ENV_PREFIX, KNOWN_ROLES, MIN_PROTOCOL_VERSION, NeedsEntrySchema, NeedsGroupEntrySchema, ORCH_CAPABILITIES, OrchRole, POLICY_BY_ACTION, PROTOCOL_VERSION, PayloadOmittedReason, RegisterableTriggerType, SANDBOX_DEFAULT_VARS, SCHEMA_VERSION, SELF_REPORTED_LABEL_PREFIXES, ScalerBackendType, ScalerEventType, SourceProvider, SourceSubtype, TERMINAL_JOB_STATES, TERMINAL_RUN_STATES, TRIGGER_EVENT_META, TRIGGER_EVENT_TYPES, WEBHOOK_RELAY_CHUNK_SIZE, WEBHOOK_RELAY_MAX_BODY_BYTES, WS_CLOSE_AGENT_AUTH_FAILED, WS_CLOSE_AUTH_TIMEOUT, WS_CLOSE_CLUSTER_NAME_CONFLICT, WS_CLOSE_GOING_AWAY, WS_CLOSE_HEARTBEAT_TIMEOUT, WS_CLOSE_INTERNAL_ERROR, WS_CLOSE_INVALID_MESSAGE, WS_CLOSE_PLAN_LIMIT, WS_CLOSE_PROTOCOL_ERROR, WS_CLOSE_RUN_NOT_FOUND, WS_CLOSE_UNAUTHORIZED, WS_MAX_PAYLOAD_BYTES, WebhookRelayResult, WsRateLimiter, accessLogFilterSchema, accessLogItemSchema, accessLogWarmSqlCase, ackSchema, activityCursorSchema, activityFilterSchema, activityRowSchema, actorPrincipalSchema, agentApiRequestSchema, agentApiResponseSchema, agentAuthFailureSchema, agentAuthRequestSchema, agentAuthSuccessSchema, agentLogChunkSchema, agentMetricsSchema, agentRegisterSchema, agentStatusSchema, agentStepStatusSchema, agentToOrchestratorMessageSchema, agentTypeLabel, apiKeyActorSchema, auditLogColdDays, auditLogWarmDays, auditLogWarmSqlCase, authFailureSchema, authRequestSchema, authSuccessSchema, backendGetRequestSchema, backendGetResponseSchema, backendItemSchema, backendSyncRequestSchema, backendSyncResponseSchema, backendTestRequestSchema, backendTestResponseSchema, backendsListRequestSchema, backendsListResponseSchema, backendsSyncAllRequestSchema, backendsSyncAllResponseSchema, browserAuthFailureSchema, browserAuthRefreshSchema, browserAuthRequestSchema, browserAuthSuccessSchema, browserErrorSchema, browserEventLogPayloadChunkSchema, browserEventLogPayloadFetchSchema, browserGapSchema, browserJobContextSchema, browserJobNewSchema, browserJobStatusSchema, browserLogLinesSchema, browserLogStreamTerminatedReason, browserLogStreamTerminatedSchema, browserLogSubscribeSchema, browserLogUnsubscribeSchema, browserPingSchema, browserPongSchema, browserRunEventSchema, browserRunNewSchema, browserRunStatusSchema, browserStatusSubscribeSchema, browserStatusUnsubscribeSchema, browserStepStatusSchema, browserToPlatformMessageSchema, cacheStatsSchema, configAckSchema, createTraceEntry, createWorkflowBundleConfig, createWorkflowDecision, dashboardAccessLogListRequestSchema, dashboardAccessLogListResponseSchema, dashboardDiagnosticsRequestSchema, dashboardDiagnosticsResponseSchema, dashboardEventDlqCountRequestSchema, dashboardEventDlqDiscardRequestSchema, dashboardEventDlqListItemSchema, dashboardEventDlqListRequestSchema, dashboardEventDlqRetryRequestSchema, dashboardEventLogDetailRequestSchema, dashboardEventLogListRequestSchema, dashboardEventLogPayloadChunkSchema, dashboardEventLogPayloadStreamRequestSchema, dashboardJobDetailSchema, dashboardOrchLogsRequestSchema, dashboardOrchLogsResponseSchema, dashboardOrchToPlatformSchema, dashboardPayloadRequestSchema, dashboardPlatformToOrchSchema, dashboardRunDetailApiResponseSchema, dashboardRunDetailRequestSchema, dashboardRunDetailResponseSchema, dashboardScalerAgentsRequestSchema, dashboardScalerAgentsResponseSchema, dashboardScalerCapacityRequestSchema, dashboardScalerCapacityResponseSchema, dashboardStepLogsApiResponseSchema, dashboardStepLogsRequestSchema, dashboardStepLogsResponseSchema, decodeActivityCursor, deriveOsArchLabels, encodeActivityCursor, envBindingsListRequestSchema, envBindingsSetRequestSchema, envCreateRequestSchema, envDeleteRequestSchema, envGetRequestSchema, envHistoryRequestSchema, envListRequestSchema, envSecretDeleteRequestSchema, envSecretScopeCreateRequestSchema, envSecretScopeDeleteRequestSchema, envSecretScopeRenameRequestSchema, envSecretSetRequestSchema, envSecretsListRequestSchema, envSourceOverrideDeleteRequestSchema, envSourceOverrideSetRequestSchema, envSourceOverridesListRequestSchema, envUpdateRequestSchema, envVarDeleteRequestSchema, envVarSetRequestSchema, envVarsListRequestSchema, errorSchema, eventEmitResponseSchema, eventEmitSchema, eventLogListItemSchema, executionEventSchema, executionStatusSchema, flattenActor, fnv1a32, getAccessLogColdDays, getAccessLogWarmDays, getAuditLogColdDays, getAuditLogWarmDays, getSecretAuditLogColdDays, getSecretAuditLogWarmDays, gitAuthSchema, hasOrchCapability, heartbeatSchema, heldRunApproveRequestSchema, heldRunRejectRequestSchema, heldRunsListRequestSchema, hostLabel, identityLinkItemSchema, identityLinkListResponseSchema, initFailureSchema, isLockDynamicJobFn, isLockInlineValue, isLockStaticJob, isSelfReportedLabel, isTerminal, jobCancelSchema, jobConcurrencyAckSchema, jobConcurrencyReportSchema, jobContextMessageSchema, jobDispatchSchema, jobProgressSchema, jobRerouteAckSchema, jobRerouteSchema, jobStatusForwardSchema, jobStatusSchema, joinRequestSchema, joinResponseSchema, logChunkSchema, logPullOrchToPlatformSchema, logPullPlatformToOrchSchema, manualScheduleRequestSchema, matchAllWorkflows, matchBranchPattern, matchPathPatterns, matchRepoPatterns, matchScopePattern, matchWorkflowTriggers, memberIdentityLinkSchema, memberListResponseSchema, memberRoleAssignmentSchema, mergeAutoLabels, minAccessLogWarmDays, minAuditLogWarmDays, minSecretAuditLogWarmDays, nackSchema, normalizeRunsOn, observeCompleteSchema, observeLogSchema, observeStatusSchema, observeStepSchema, observeSubscribeSchema, orchCapabilitiesSchema, orchMetricsSchema, orchestratorToAgentMessageSchema, orchestratorToPlatformMessageSchema, orgMemberSchema, parseActor, parseMemoryString, peerAgentTokenRevokeSchema, peerAuthRequestSchema, peerAuthResponseSchema, peerCapabilitiesSchema, peerConfigReloadResponseSchema, peerConfigReloadSchema, peerDiscoverSchema, peerFromPeerMessageSchema, peerHeartbeatSchema, peerHelloResponseSchema, peerHelloSchema, peerJobCancelSchema, peerLeavingSchema, peerScalerEventSchema, peerToPeerMessageSchema, peerUpdateSchema, platformOperatorActorSchema, platformToBrowserMessageSchema, platformToOrchestratorMessageSchema, raftAppendEntriesSchema, raftVoteRequestSchema, raftVoteResponseSchema, registerAckSchema, registrationDeleteRequestSchema, registrationDisableRequestSchema, registrationItemSchema, registrationsListRequestSchema, registrationsListResponseSchema, resolveRoleLabels, resolveRunIdSugar, resolveSecretsForEnvironment, resourceRequestNestedSchema, resourceSpecSchema, runCancelRequestSchema, runEventMessageSchema, runEventSchema, runLineageResponseSchema, runRerunRequestSchema, scalerAgentLabels, scalerLabel, secretAuditLogColdDays, secretAuditLogWarmDays, secretAuditLogWarmSqlCase, serviceAccountActorSchema, shouldRecordAccess, shouldRecordSecretResolve, sourceDeregisterAckSchema, sourceDeregisterSchema, sourceRegistrationAckSchema, sourceRegistrationSchema, staleCheckrunCleanupSchema, stateReplaySchema, stepStatusForwardSchema, stringifyActor, stripScopePrefix, systemActorSchema, testCancelResponseSchema, testCancelSchema, testEventSchema, testTriggerResponseSchema, testTriggerSchema, transition, trustPolicyResponseSchema, trustPolicyUpdateSchema, userActorSchema, validateNoReservedLabels, validateResourceRequest, webhookAckSchema, webhookRelayChunkSchema, webhookRelaySchema, webhookRelayStartSchema };
48
+ export { ACCESS_LOG_COLD_DAYS, ACCESS_LOG_WARM_DAYS, AGENT_REQUIRED_KICI_VARS, ALLOWED_SYSTEM_VARS, AccessLogAction, AccessLogOutcome, AccessLogPolicyKind, AccessLogSource, AccessLogTargetType, ActivityFilterSource, ActivityRowSource, ActorType, ApprovalDecision, CacheOutcome, CacheRefScope, CacheRunEventType, CacheStepType, CheckRunConclusion, EVENT_LOG_PAYLOAD_CHUNK_BYTES, EnvDeleteErrorCode, EventLogPayloadStreamError, EventLogSource, EventLogStatus, ExecutionJobStatus, ExecutionRunStatus, ExecutionStepStatus, HOST_LABEL_PREFIX, HeldRunQueueType, HeldRunStatus, HoldScope, InitFailureCategory, JobRejectReason, KICI_AGENT_ENV_PREFIX, KNOWN_ROLES, LockFileParseError, MIN_PROTOCOL_VERSION, NeedsEntrySchema, NeedsGroupEntrySchema, ORCH_CAPABILITIES, OrchRole, POLICY_BY_ACTION, PROTOCOL_VERSION, PayloadOmittedReason, RegisterableTriggerType, SANDBOX_DEFAULT_VARS, SCHEMA_VERSION, SELF_REPORTED_LABEL_PREFIXES, ScalerBackendType, ScalerEventType, SourceProvider, SourceSubtype, StepApprovalOutcome, TERMINAL_JOB_STATES, TERMINAL_RUN_STATES, TRIGGER_EVENT_META, TRIGGER_EVENT_TYPES, TimeoutReason, TriggerSource, WEBHOOK_RELAY_CHUNK_SIZE, WEBHOOK_RELAY_MAX_BODY_BYTES, WS_CLOSE_AGENT_AUTH_FAILED, WS_CLOSE_AUTH_TIMEOUT, WS_CLOSE_CLUSTER_NAME_CONFLICT, WS_CLOSE_DISPATCH_ACK_TIMEOUT, WS_CLOSE_GOING_AWAY, WS_CLOSE_HEARTBEAT_TIMEOUT, WS_CLOSE_INTERNAL_ERROR, WS_CLOSE_INVALID_MESSAGE, WS_CLOSE_PLAN_LIMIT, WS_CLOSE_PROTOCOL_ERROR, WS_CLOSE_RUN_NOT_FOUND, WS_CLOSE_UNAUTHORIZED, WS_MAX_PAYLOAD_BYTES, WebhookRelayResult, WsRateLimiter, accessLogFilterSchema, accessLogItemSchema, accessLogWarmSqlCase, ackSchema, activityCursorSchema, activityFilterSchema, activityRowSchema, actorPrincipalSchema, agentApiRequestSchema, agentApiResponseSchema, agentAuthFailureSchema, agentAuthRequestSchema, agentAuthSuccessSchema, agentLogChunkSchema, agentMetricsSchema, agentRegisterSchema, agentStatusSchema, agentStepStatusSchema, agentToOrchestratorMessageSchema, agentTypeLabel, apiKeyActorSchema, approvalRequirementSchema, approverClauseSchema, auditLogColdDays, auditLogWarmDays, auditLogWarmSqlCase, authFailureSchema, authRequestSchema, authSuccessSchema, backendGetRequestSchema, backendGetResponseSchema, backendItemSchema, backendSyncRequestSchema, backendSyncResponseSchema, backendTestRequestSchema, backendTestResponseSchema, backendsListRequestSchema, backendsListResponseSchema, backendsSyncAllRequestSchema, backendsSyncAllResponseSchema, browserAuthFailureSchema, browserAuthRefreshSchema, browserAuthRequestSchema, browserAuthSuccessSchema, browserErrorSchema, browserEventLogPayloadChunkSchema, browserEventLogPayloadFetchSchema, browserGapSchema, browserJobContextSchema, browserJobNewSchema, browserJobStatusSchema, browserLogLinesSchema, browserLogStreamTerminatedReason, browserLogStreamTerminatedSchema, browserLogSubscribeSchema, browserLogUnsubscribeSchema, browserPingSchema, browserPongSchema, browserRunEventSchema, browserRunNewSchema, browserRunStatusSchema, browserStatusSubscribeSchema, browserStatusUnsubscribeSchema, browserStepStatusSchema, browserToPlatformMessageSchema, cacheStatsSchema, cacheUserRestoreRequestSchema, cacheUserRestoreResponseSchema, cacheUserSaveCompleteSchema, cacheUserSaveRequestSchema, cacheUserSaveResponseSchema, configAckSchema, createTraceEntry, createWorkflowBundleConfig, createWorkflowDecision, dashboardAccessLogListRequestSchema, dashboardAccessLogListResponseSchema, dashboardDiagnosticsRequestSchema, dashboardDiagnosticsResponseSchema, dashboardEventDlqCountRequestSchema, dashboardEventDlqDiscardRequestSchema, dashboardEventDlqListItemSchema, dashboardEventDlqListRequestSchema, dashboardEventDlqRetryRequestSchema, dashboardEventLogDetailRequestSchema, dashboardEventLogListRequestSchema, dashboardEventLogPayloadChunkSchema, dashboardEventLogPayloadStreamRequestSchema, dashboardJobDetailSchema, dashboardOrchLogsRequestSchema, dashboardOrchLogsResponseSchema, dashboardOrchToPlatformSchema, dashboardPayloadRequestSchema, dashboardPlatformToOrchSchema, dashboardRunDetailApiResponseSchema, dashboardRunDetailRequestSchema, dashboardRunDetailResponseSchema, dashboardRunSummarySchema, dashboardRunsFiltersRequestSchema, dashboardRunsFiltersResponseSchema, dashboardRunsListRequestSchema, dashboardRunsListResponseSchema, dashboardScalerAgentsRequestSchema, dashboardScalerAgentsResponseSchema, dashboardScalerCapacityRequestSchema, dashboardScalerCapacityResponseSchema, dashboardSourceSummarySchema, dashboardSourcesListRequestSchema, dashboardSourcesListResponseSchema, dashboardStepLogsApiResponseSchema, dashboardStepLogsRequestSchema, dashboardStepLogsResponseSchema, decodeActivityCursor, deriveOsArchLabels, encodeActivityCursor, envBindingsListRequestSchema, envBindingsSetRequestSchema, envCreateRequestSchema, envDeleteRequestSchema, envGetRequestSchema, envHistoryRequestSchema, envListRequestSchema, envSecretDeleteRequestSchema, envSecretScopeCreateRequestSchema, envSecretScopeDeleteRequestSchema, envSecretScopeRenameRequestSchema, envSecretSetRequestSchema, envSecretsListRequestSchema, envSourceOverrideDeleteRequestSchema, envSourceOverrideSetRequestSchema, envSourceOverridesListRequestSchema, envTestAccessSetRequestSchema, envUpdateRequestSchema, envVarDeleteRequestSchema, envVarSetRequestSchema, envVarsListRequestSchema, errorSchema, eventEmitResponseSchema, eventEmitSchema, eventLogListItemSchema, executionEventSchema, executionStatusSchema, flattenActor, fleetBundleChunkSchema, fleetBundleErrorSchema, fleetLogsRequestSchema, fleetSelectionSchema, fnv1a32, getAccessLogColdDays, getAccessLogWarmDays, getAuditLogColdDays, getAuditLogWarmDays, getSecretAuditLogColdDays, getSecretAuditLogWarmDays, gitAuthSchema, hasOrchCapability, heartbeatSchema, heldRunApproveRequestSchema, heldRunRejectRequestSchema, heldRunsListRequestSchema, hostLabel, identityLinkItemSchema, identityLinkListResponseSchema, initFailureSchema, isLockDynamicJobFn, isLockInlineValue, isLockStaticJob, isSelfReportedLabel, isTerminal, jobAckSchema, jobCancelSchema, jobConcurrencyAckSchema, jobConcurrencyReportSchema, jobContextMessageSchema, jobDispatchSchema, jobProgressSchema, jobRejectSchema, jobRerouteAckSchema, jobRerouteSchema, jobStatusForwardSchema, jobStatusSchema, joinRequestSchema, joinResponseSchema, logChunkSchema, logPullOrchToPlatformSchema, logPullPlatformToOrchSchema, manualScheduleRequestSchema, matchAllWorkflows, matchBranchPattern, matchPathPatterns, matchRepoPatterns, matchScopePattern, matchWorkflowTriggers, memberIdentityLinkSchema, memberListResponseSchema, memberRoleAssignmentSchema, mergeAutoLabels, minAccessLogWarmDays, minAuditLogWarmDays, minSecretAuditLogWarmDays, nackSchema, normalizeRunsOn, observeCompleteSchema, observeLogSchema, observeStatusSchema, observeStepSchema, observeSubscribeSchema, orchCapabilitiesSchema, orchMetricsSchema, orchestratorToAgentMessageSchema, orchestratorToPlatformMessageSchema, orgMemberSchema, parseActor, parseHostLabel, parseMemoryString, peerAgentTokenRevokeSchema, peerAuthRequestSchema, peerAuthResponseSchema, peerCapabilitiesSchema, peerConfigReloadResponseSchema, peerConfigReloadSchema, peerDiscoverSchema, peerFromPeerMessageSchema, peerHeartbeatSchema, peerHelloResponseSchema, peerHelloSchema, peerJobCancelSchema, peerLeavingSchema, peerLogsCollectChunkSchema, peerLogsCollectErrorSchema, peerLogsCollectRequestSchema, peerScalerEventSchema, peerToPeerMessageSchema, peerUpdateSchema, platformOperatorActorSchema, platformToBrowserMessageSchema, platformToOrchestratorMessageSchema, raftAppendEntriesSchema, raftVoteRequestSchema, raftVoteResponseSchema, registerAckSchema, registrationDeleteRequestSchema, registrationDisableRequestSchema, registrationItemSchema, registrationsListRequestSchema, registrationsListResponseSchema, resolveRoleLabels, resolveRunIdSugar, resolveSecretsForEnvironment, resourceRequestNestedSchema, resourceSpecSchema, runCancelRequestSchema, runEventMessageSchema, runEventSchema, runLineageResponseSchema, runRerunRequestSchema, scalerAgentLabels, scalerLabel, secretAuditLogColdDays, secretAuditLogWarmDays, secretAuditLogWarmSqlCase, serviceAccountActorSchema, shouldRecordAccess, shouldRecordSecretResolve, sourceDeregisterAckSchema, sourceDeregisterSchema, sourceRegistrationAckSchema, sourceRegistrationSchema, staleCheckrunCleanupSchema, stateReplaySchema, stepApprovalRequestSchema, stepApprovalResolvedSchema, stepStatusForwardSchema, stringifyActor, stripScopePrefix, systemActorSchema, testCancelResponseSchema, testCancelSchema, testEventSchema, testTriggerResponseSchema, testTriggerSchema, transition, trustPolicyResponseSchema, trustPolicyUpdateSchema, userActorSchema, validateNoReservedLabels, validateResourceRequest, webhookAckSchema, webhookRelayChunkSchema, webhookRelaySchema, webhookRelayStartSchema };
package/dist/labels.d.ts CHANGED
@@ -30,10 +30,17 @@
30
30
  * Derive kici:os: and kici:arch: labels from platform and architecture strings.
31
31
  */
32
32
  export declare function deriveOsArchLabels(platform: string, arch: string): string[];
33
+ /** Prefix for the agent self-reported hostname label. */
34
+ export declare const HOST_LABEL_PREFIX = "kici:host:";
33
35
  /**
34
36
  * Build a kici:host: label from a hostname.
35
37
  */
36
38
  export declare function hostLabel(hostname: string): string;
39
+ /**
40
+ * Extract the hostname from a kici:host: label, or null if the label is not a
41
+ * host label. Inverse of {@link hostLabel}.
42
+ */
43
+ export declare function parseHostLabel(label: string): string | null;
37
44
  /**
38
45
  * Build a kici:agent: label from the scaler backend type.
39
46
  */
package/dist/labels.js CHANGED
@@ -56,11 +56,20 @@ function deriveOsArchLabels(platform, arch) {
56
56
  }
57
57
  return labels;
58
58
  }
59
+ /** Prefix for the agent self-reported hostname label. */
60
+ const HOST_LABEL_PREFIX = "kici:host:";
59
61
  /**
60
62
  * Build a kici:host: label from a hostname.
61
63
  */
62
64
  function hostLabel(hostname) {
63
- return `kici:host:${hostname}`;
65
+ return `${HOST_LABEL_PREFIX}${hostname}`;
66
+ }
67
+ /**
68
+ * Extract the hostname from a kici:host: label, or null if the label is not a
69
+ * host label. Inverse of {@link hostLabel}.
70
+ */
71
+ function parseHostLabel(label) {
72
+ return label.startsWith("kici:host:") ? label.slice(10) : null;
64
73
  }
65
74
  /**
66
75
  * Build a kici:agent: label from the scaler backend type.
@@ -194,6 +203,6 @@ function separateLabels(labels) {
194
203
  };
195
204
  }
196
205
  //#endregion
197
- export { KNOWN_ROLES, RESERVED_LABEL_PREFIX, ROLE_LABEL_PREFIX, SELF_REPORTED_LABEL_PREFIXES, agentTypeLabel, deriveOsArchLabels, hostLabel, isAutoLabel, isSelfReportedLabel, mergeAutoLabels, normalizeRunsOn, resolveRoleLabels, roleToLabel, scalerAgentLabels, scalerLabel, separateLabels, validateNoReservedLabels };
206
+ export { HOST_LABEL_PREFIX, KNOWN_ROLES, RESERVED_LABEL_PREFIX, ROLE_LABEL_PREFIX, SELF_REPORTED_LABEL_PREFIXES, agentTypeLabel, deriveOsArchLabels, hostLabel, isAutoLabel, isSelfReportedLabel, mergeAutoLabels, normalizeRunsOn, parseHostLabel, resolveRoleLabels, roleToLabel, scalerAgentLabels, scalerLabel, separateLabels, validateNoReservedLabels };
198
207
 
199
208
  //# sourceMappingURL=labels.js.map
@@ -44,6 +44,7 @@ export declare const MetricNames: {
44
44
  readonly KICI_ORCH_JOB_RUNS_TOTAL: "kici_orch_job_runs_total";
45
45
  readonly KICI_ORCH_LOG_BYTES_STORED_TOTAL: "kici_orch_log_bytes_stored_total";
46
46
  readonly KICI_ORCH_LOG_CHUNKS_RECEIVED_TOTAL: "kici_orch_log_chunks_received_total";
47
+ readonly KICI_ORCH_PG_POOL_CLIENT_ERRORS_TOTAL: "kici_orch_pg_pool_client_errors_total";
47
48
  readonly KICI_ORCH_SCALER_CONFIG_RELOADS_TOTAL: "kici_orch_scaler_config_reloads_total";
48
49
  readonly KICI_ORCH_SCALER_CPUS_USED: "kici_orch_scaler_cpus_used";
49
50
  readonly KICI_ORCH_SCALER_MEMORY_BYTES_USED: "kici_orch_scaler_memory_bytes_used";
@@ -86,16 +87,25 @@ export declare const MetricNames: {
86
87
  readonly KICI_PLATFORM_MIMIR_RELAY_ERRORS_TOTAL: "kici_platform_mimir_relay_errors_total";
87
88
  readonly KICI_PLATFORM_ORCH_METRICS_FILTERED_TOTAL: "kici_platform_orch_metrics_filtered_total";
88
89
  readonly KICI_PLATFORM_ORPHAN_CONNECTIONS_SWEPT_TOTAL: "kici_platform_orphan_connections_swept_total";
90
+ readonly KICI_PLATFORM_PG_POOL_CLIENT_ERRORS_TOTAL: "kici_platform_pg_pool_client_errors_total";
89
91
  readonly KICI_PLATFORM_STALE_ORCHESTRATORS_TOTAL: "kici_platform_stale_orchestrators_total";
90
92
  readonly KICI_PLATFORM_STALE_PLATFORM_CONNECTIONS_EVICTED_TOTAL: "kici_platform_stale_platform_connections_evicted_total";
91
93
  readonly KICI_PLATFORM_STALE_RUNS_FAILED_TOTAL: "kici_platform_stale_runs_failed_total";
92
94
  readonly KICI_PLATFORM_STEP_STATUS_FORWARDS_TOTAL: "kici_platform_step_status_forwards_total";
95
+ readonly KICI_REGISTRATIONS_TOTAL: "kici_registrations_total";
93
96
  readonly KICI_UNIVERSAL_GIT_REGISTRATION_ERRORS_TOTAL: "kici_universal_git_registration_errors_total";
94
97
  readonly KICI_VALKEY_CONNECTION_STATUS: "kici_valkey_connection_status";
95
98
  readonly KICI_VALKEY_PUBLISH_TOTAL: "kici_valkey_publish_total";
96
99
  readonly KICI_VALKEY_RELAY_LATENCY_SECONDS: "kici_valkey_relay_latency_seconds";
97
100
  readonly KICI_VALKEY_SUBSCRIBE_RECEIVE_TOTAL: "kici_valkey_subscribe_receive_total";
101
+ readonly KICI_WEBHOOK_BUFFER_BYTES: "kici_webhook_buffer_bytes";
102
+ readonly KICI_WEBHOOK_BUFFER_DEPTH: "kici_webhook_buffer_depth";
103
+ readonly KICI_WEBHOOK_BUFFER_OLDEST_AGE_SECONDS: "kici_webhook_buffer_oldest_age_seconds";
104
+ readonly KICI_WEBHOOK_PG_BREAKER_STATE: "kici_webhook_pg_breaker_state";
105
+ readonly KICI_WEBHOOK_PG_BREAKER_TRANSITIONS_TOTAL: "kici_webhook_pg_breaker_transitions_total";
106
+ readonly KICI_WEBHOOK_PG_DEGRADED_TOTAL: "kici_webhook_pg_degraded_total";
98
107
  readonly KICI_WEBHOOK_PROCESSING_SECONDS: "kici_webhook_processing_seconds";
108
+ readonly KICI_WEBHOOK_REPLAY_DURATION_SECONDS: "kici_webhook_replay_duration_seconds";
99
109
  readonly KICI_WEBHOOK_SIGNATURE_FAILURES_TOTAL: "kici_webhook_signature_failures_total";
100
110
  readonly KICI_WEBHOOKS_RECEIVED_TOTAL: "kici_webhooks_received_total";
101
111
  readonly KICI_WS_CONNECTIONS_ACTIVE: "kici_ws_connections_active";
@@ -167,6 +177,7 @@ export declare const MetricLabels: {
167
177
  readonly KICI_ORCH_JOB_RUNS_TOTAL: readonly ["job", "result"];
168
178
  readonly KICI_ORCH_LOG_BYTES_STORED_TOTAL: readonly [];
169
179
  readonly KICI_ORCH_LOG_CHUNKS_RECEIVED_TOTAL: readonly [];
180
+ readonly KICI_ORCH_PG_POOL_CLIENT_ERRORS_TOTAL: readonly ["source"];
170
181
  readonly KICI_ORCH_SCALER_CONFIG_RELOADS_TOTAL: readonly ["result"];
171
182
  readonly KICI_ORCH_SCALER_CPUS_USED: readonly ["scaler", "machinePool"];
172
183
  readonly KICI_ORCH_SCALER_MEMORY_BYTES_USED: readonly ["scaler", "machinePool"];
@@ -209,16 +220,25 @@ export declare const MetricLabels: {
209
220
  readonly KICI_PLATFORM_MIMIR_RELAY_ERRORS_TOTAL: readonly ["reason"];
210
221
  readonly KICI_PLATFORM_ORCH_METRICS_FILTERED_TOTAL: readonly ["reason", "metric"];
211
222
  readonly KICI_PLATFORM_ORPHAN_CONNECTIONS_SWEPT_TOTAL: readonly [];
223
+ readonly KICI_PLATFORM_PG_POOL_CLIENT_ERRORS_TOTAL: readonly ["source"];
212
224
  readonly KICI_PLATFORM_STALE_ORCHESTRATORS_TOTAL: readonly [];
213
225
  readonly KICI_PLATFORM_STALE_PLATFORM_CONNECTIONS_EVICTED_TOTAL: readonly ["org_id"];
214
226
  readonly KICI_PLATFORM_STALE_RUNS_FAILED_TOTAL: readonly [];
215
227
  readonly KICI_PLATFORM_STEP_STATUS_FORWARDS_TOTAL: readonly ["state"];
228
+ readonly KICI_REGISTRATIONS_TOTAL: readonly [];
216
229
  readonly KICI_UNIVERSAL_GIT_REGISTRATION_ERRORS_TOTAL: readonly ["reason"];
217
230
  readonly KICI_VALKEY_CONNECTION_STATUS: readonly ["role"];
218
231
  readonly KICI_VALKEY_PUBLISH_TOTAL: readonly ["channel"];
219
232
  readonly KICI_VALKEY_RELAY_LATENCY_SECONDS: readonly ["status"];
220
233
  readonly KICI_VALKEY_SUBSCRIBE_RECEIVE_TOTAL: readonly ["channel"];
234
+ readonly KICI_WEBHOOK_BUFFER_BYTES: readonly [];
235
+ readonly KICI_WEBHOOK_BUFFER_DEPTH: readonly [];
236
+ readonly KICI_WEBHOOK_BUFFER_OLDEST_AGE_SECONDS: readonly [];
237
+ readonly KICI_WEBHOOK_PG_BREAKER_STATE: readonly [];
238
+ readonly KICI_WEBHOOK_PG_BREAKER_TRANSITIONS_TOTAL: readonly [];
239
+ readonly KICI_WEBHOOK_PG_DEGRADED_TOTAL: readonly ["outcome", "org_id"];
221
240
  readonly KICI_WEBHOOK_PROCESSING_SECONDS: readonly ["event"];
241
+ readonly KICI_WEBHOOK_REPLAY_DURATION_SECONDS: readonly [];
222
242
  readonly KICI_WEBHOOK_SIGNATURE_FAILURES_TOTAL: readonly ["source", "org_id"];
223
243
  readonly KICI_WEBHOOKS_RECEIVED_TOTAL: readonly ["event", "status", "org_id"];
224
244
  readonly KICI_WS_CONNECTIONS_ACTIVE: readonly ["routing_key"];
@@ -289,6 +309,7 @@ export declare const MetricKind: {
289
309
  readonly KICI_ORCH_JOB_RUNS_TOTAL: "counter";
290
310
  readonly KICI_ORCH_LOG_BYTES_STORED_TOTAL: "counter";
291
311
  readonly KICI_ORCH_LOG_CHUNKS_RECEIVED_TOTAL: "counter";
312
+ readonly KICI_ORCH_PG_POOL_CLIENT_ERRORS_TOTAL: "counter";
292
313
  readonly KICI_ORCH_SCALER_CONFIG_RELOADS_TOTAL: "counter";
293
314
  readonly KICI_ORCH_SCALER_CPUS_USED: "observableGauge";
294
315
  readonly KICI_ORCH_SCALER_MEMORY_BYTES_USED: "observableGauge";
@@ -331,16 +352,25 @@ export declare const MetricKind: {
331
352
  readonly KICI_PLATFORM_MIMIR_RELAY_ERRORS_TOTAL: "counter";
332
353
  readonly KICI_PLATFORM_ORCH_METRICS_FILTERED_TOTAL: "counter";
333
354
  readonly KICI_PLATFORM_ORPHAN_CONNECTIONS_SWEPT_TOTAL: "counter";
355
+ readonly KICI_PLATFORM_PG_POOL_CLIENT_ERRORS_TOTAL: "counter";
334
356
  readonly KICI_PLATFORM_STALE_ORCHESTRATORS_TOTAL: "counter";
335
357
  readonly KICI_PLATFORM_STALE_PLATFORM_CONNECTIONS_EVICTED_TOTAL: "counter";
336
358
  readonly KICI_PLATFORM_STALE_RUNS_FAILED_TOTAL: "counter";
337
359
  readonly KICI_PLATFORM_STEP_STATUS_FORWARDS_TOTAL: "counter";
360
+ readonly KICI_REGISTRATIONS_TOTAL: "counter";
338
361
  readonly KICI_UNIVERSAL_GIT_REGISTRATION_ERRORS_TOTAL: "counter";
339
362
  readonly KICI_VALKEY_CONNECTION_STATUS: "observableGauge";
340
363
  readonly KICI_VALKEY_PUBLISH_TOTAL: "counter";
341
364
  readonly KICI_VALKEY_RELAY_LATENCY_SECONDS: "histogram";
342
365
  readonly KICI_VALKEY_SUBSCRIBE_RECEIVE_TOTAL: "counter";
366
+ readonly KICI_WEBHOOK_BUFFER_BYTES: "observableGauge";
367
+ readonly KICI_WEBHOOK_BUFFER_DEPTH: "observableGauge";
368
+ readonly KICI_WEBHOOK_BUFFER_OLDEST_AGE_SECONDS: "observableGauge";
369
+ readonly KICI_WEBHOOK_PG_BREAKER_STATE: "observableGauge";
370
+ readonly KICI_WEBHOOK_PG_BREAKER_TRANSITIONS_TOTAL: "counter";
371
+ readonly KICI_WEBHOOK_PG_DEGRADED_TOTAL: "counter";
343
372
  readonly KICI_WEBHOOK_PROCESSING_SECONDS: "histogram";
373
+ readonly KICI_WEBHOOK_REPLAY_DURATION_SECONDS: "histogram";
344
374
  readonly KICI_WEBHOOK_SIGNATURE_FAILURES_TOTAL: "counter";
345
375
  readonly KICI_WEBHOOKS_RECEIVED_TOTAL: "counter";
346
376
  readonly KICI_WS_CONNECTIONS_ACTIVE: "upDownCounter";
@@ -411,6 +441,7 @@ export declare const MetricDescription: {
411
441
  readonly KICI_ORCH_JOB_RUNS_TOTAL: "Scheduled job run outcomes, by job and result (success/failure)";
412
442
  readonly KICI_ORCH_LOG_BYTES_STORED_TOTAL: "Total bytes of log data written to storage";
413
443
  readonly KICI_ORCH_LOG_CHUNKS_RECEIVED_TOTAL: "Total number of log chunks received from agents";
444
+ readonly KICI_ORCH_PG_POOL_CLIENT_ERRORS_TOTAL: "Total pg connection errors absorbed without a process restart";
414
445
  readonly KICI_ORCH_SCALER_CONFIG_RELOADS_TOTAL: "Total number of scaler config reload operations";
415
446
  readonly 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.";
416
447
  readonly 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.";
@@ -453,16 +484,25 @@ export declare const MetricDescription: {
453
484
  readonly KICI_PLATFORM_MIMIR_RELAY_ERRORS_TOTAL: "Total Mimir push-relay errors (Platform-embedded metrics). Labels: reason.";
454
485
  readonly KICI_PLATFORM_ORCH_METRICS_FILTERED_TOTAL: "Orchestrator-pushed metric data points dropped or rewritten by the catalog allow-list. Labels: reason, metric.";
455
486
  readonly KICI_PLATFORM_ORPHAN_CONNECTIONS_SWEPT_TOTAL: "Total orphan connections swept from platform_connections";
487
+ readonly KICI_PLATFORM_PG_POOL_CLIENT_ERRORS_TOTAL: "Total pg connection errors absorbed without a process restart";
456
488
  readonly KICI_PLATFORM_STALE_ORCHESTRATORS_TOTAL: "Total orchestrators detected as permanently disconnected";
457
489
  readonly KICI_PLATFORM_STALE_PLATFORM_CONNECTIONS_EVICTED_TOTAL: "platform_connections rows evicted by source.register DB dedup (same-instance reconnect path)";
458
490
  readonly KICI_PLATFORM_STALE_RUNS_FAILED_TOTAL: "Total execution runs failed due to orchestrator staleness";
459
491
  readonly KICI_PLATFORM_STEP_STATUS_FORWARDS_TOTAL: "Total step status forwards received";
492
+ readonly KICI_REGISTRATIONS_TOTAL: "Total user registrations (new personal orgs created on first login)";
460
493
  readonly KICI_UNIVERSAL_GIT_REGISTRATION_ERRORS_TOTAL: "Errors encountered while registering universal-git provider bundles";
461
494
  readonly KICI_VALKEY_CONNECTION_STATUS: "Valkey connection status per role (1=connected, 0=disconnected)";
462
495
  readonly KICI_VALKEY_PUBLISH_TOTAL: "Total messages published to Valkey channels";
463
496
  readonly KICI_VALKEY_RELAY_LATENCY_SECONDS: "Latency of cross-instance Valkey relay operations in seconds";
464
497
  readonly KICI_VALKEY_SUBSCRIBE_RECEIVE_TOTAL: "Total messages received from Valkey subscriptions";
498
+ readonly KICI_WEBHOOK_BUFFER_BYTES: "Total buffered webhook bytes (global Valkey counter)";
499
+ readonly KICI_WEBHOOK_BUFFER_DEPTH: "Buffered webhook count per org";
500
+ readonly KICI_WEBHOOK_BUFFER_OLDEST_AGE_SECONDS: "Age of the oldest buffered webhook per org, in seconds";
501
+ readonly KICI_WEBHOOK_PG_BREAKER_STATE: "PG circuit-breaker state on this instance (0=closed,1=degraded,2=open)";
502
+ readonly KICI_WEBHOOK_PG_BREAKER_TRANSITIONS_TOTAL: "PG circuit-breaker state transitions";
503
+ readonly KICI_WEBHOOK_PG_DEGRADED_TOTAL: "Webhooks handled in PG-degraded mode, by outcome";
465
504
  readonly KICI_WEBHOOK_PROCESSING_SECONDS: "Webhook processing duration in seconds";
505
+ readonly KICI_WEBHOOK_REPLAY_DURATION_SECONDS: "Buffered-webhook replay latency (enqueue → delivered) in seconds";
466
506
  readonly KICI_WEBHOOK_SIGNATURE_FAILURES_TOTAL: "Total number of webhooks rejected at orchestrator signature verification";
467
507
  readonly KICI_WEBHOOKS_RECEIVED_TOTAL: "Total number of webhooks received";
468
508
  readonly KICI_WS_CONNECTIONS_ACTIVE: "Current number of active WebSocket connections";
@@ -540,6 +580,7 @@ export declare const MetricService: {
540
580
  readonly KICI_ORCH_JOB_RUNS_TOTAL: "orchestrator";
541
581
  readonly KICI_ORCH_LOG_BYTES_STORED_TOTAL: "orchestrator";
542
582
  readonly KICI_ORCH_LOG_CHUNKS_RECEIVED_TOTAL: "orchestrator";
583
+ readonly KICI_ORCH_PG_POOL_CLIENT_ERRORS_TOTAL: "orchestrator";
543
584
  readonly KICI_ORCH_SCALER_CONFIG_RELOADS_TOTAL: "orchestrator";
544
585
  readonly KICI_ORCH_SCALER_CPUS_USED: "orchestrator";
545
586
  readonly KICI_ORCH_SCALER_MEMORY_BYTES_USED: "orchestrator";
@@ -582,16 +623,25 @@ export declare const MetricService: {
582
623
  readonly KICI_PLATFORM_MIMIR_RELAY_ERRORS_TOTAL: "platform";
583
624
  readonly KICI_PLATFORM_ORCH_METRICS_FILTERED_TOTAL: "platform";
584
625
  readonly KICI_PLATFORM_ORPHAN_CONNECTIONS_SWEPT_TOTAL: "platform";
626
+ readonly KICI_PLATFORM_PG_POOL_CLIENT_ERRORS_TOTAL: "platform";
585
627
  readonly KICI_PLATFORM_STALE_ORCHESTRATORS_TOTAL: "platform";
586
628
  readonly KICI_PLATFORM_STALE_PLATFORM_CONNECTIONS_EVICTED_TOTAL: "platform";
587
629
  readonly KICI_PLATFORM_STALE_RUNS_FAILED_TOTAL: "platform";
588
630
  readonly KICI_PLATFORM_STEP_STATUS_FORWARDS_TOTAL: "platform";
631
+ readonly KICI_REGISTRATIONS_TOTAL: "platform";
589
632
  readonly KICI_UNIVERSAL_GIT_REGISTRATION_ERRORS_TOTAL: "orchestrator";
590
633
  readonly KICI_VALKEY_CONNECTION_STATUS: "platform";
591
634
  readonly KICI_VALKEY_PUBLISH_TOTAL: "platform";
592
635
  readonly KICI_VALKEY_RELAY_LATENCY_SECONDS: "platform";
593
636
  readonly KICI_VALKEY_SUBSCRIBE_RECEIVE_TOTAL: "platform";
637
+ readonly KICI_WEBHOOK_BUFFER_BYTES: "platform";
638
+ readonly KICI_WEBHOOK_BUFFER_DEPTH: "platform";
639
+ readonly KICI_WEBHOOK_BUFFER_OLDEST_AGE_SECONDS: "platform";
640
+ readonly KICI_WEBHOOK_PG_BREAKER_STATE: "platform";
641
+ readonly KICI_WEBHOOK_PG_BREAKER_TRANSITIONS_TOTAL: "platform";
642
+ readonly KICI_WEBHOOK_PG_DEGRADED_TOTAL: "platform";
594
643
  readonly KICI_WEBHOOK_PROCESSING_SECONDS: "platform";
644
+ readonly KICI_WEBHOOK_REPLAY_DURATION_SECONDS: "platform";
595
645
  readonly KICI_WEBHOOK_SIGNATURE_FAILURES_TOTAL: "platform";
596
646
  readonly KICI_WEBHOOKS_RECEIVED_TOTAL: "platform";
597
647
  readonly KICI_WS_CONNECTIONS_ACTIVE: "platform";