@kici-dev/engine 0.11.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/audit/access-log-policy.d.ts +2 -2
- package/dist/audit/access-log-policy.js +2 -2
- package/dist/audit/activity.d.ts +1 -2
- package/dist/audit/activity.js +1 -2
- package/dist/audit/retention-policy.d.ts +1 -3
- package/dist/audit/retention-policy.js +1 -1
- package/dist/context/hold-reason.d.ts +3 -5
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3 -2
- package/dist/labels.d.ts +1 -1
- package/dist/labels.js +1 -1
- package/dist/mcp/tool-schemas.d.ts +1 -1
- package/dist/mcp/tool-schemas.js +1 -1
- package/dist/metrics/catalog-policy.d.ts +1 -2
- package/dist/metrics/catalog-policy.js +1 -2
- package/dist/protocol/dashboard-global-workflows.d.ts +1 -1
- package/dist/protocol/messages/common.d.ts +0 -1
- package/dist/protocol/messages/common.js +0 -1
- package/dist/protocol/messages/dashboard.d.ts +1 -1
- package/dist/protocol/messages/dashboard.js +4 -4
- package/dist/protocol/messages/orchestrator-agent.d.ts +0 -1
- package/dist/protocol/messages/orchestrator-agent.js +0 -1
- package/dist/protocol/messages/peer.js +1 -1
- package/dist/protocol/messages/platform-orchestrator.d.ts +6 -6
- package/dist/protocol/messages/platform-orchestrator.js +6 -6
- package/dist/registration/registerable-trigger-type.d.ts +1 -1
- package/dist/registration/registerable-trigger-type.js +1 -1
- package/dist/trigger/decision-trace.d.ts +9 -3
- package/dist/trigger/decision-trace.js +3 -3
- package/dist/trigger/diff-range.d.ts +66 -0
- package/dist/trigger/diff-range.js +68 -0
- package/dist/trigger/matcher.d.ts +14 -1
- package/dist/trigger/matcher.js +53 -21
- package/dist/trigger/types.d.ts +14 -2
- package/package.json +2 -2
- package/sbom.spdx.json +5 -5
|
@@ -48,8 +48,8 @@ export interface AccessLogRateLimiter {
|
|
|
48
48
|
permit(action: AccessLogAction, actorKey: string, perMinute: number): boolean;
|
|
49
49
|
}
|
|
50
50
|
/**
|
|
51
|
-
*
|
|
52
|
-
*
|
|
51
|
+
* Per-action recording policy (the platform-operator override is applied
|
|
52
|
+
* separately in `shouldRecordAccess`).
|
|
53
53
|
*
|
|
54
54
|
* Exhaustive over `AccessLogAction.options` — TypeScript catches additions.
|
|
55
55
|
*/
|
|
@@ -32,8 +32,8 @@ const AccessLogPolicyKind = z.enum([
|
|
|
32
32
|
"rate_limit"
|
|
33
33
|
]);
|
|
34
34
|
/**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
35
|
+
* Per-action recording policy (the platform-operator override is applied
|
|
36
|
+
* separately in `shouldRecordAccess`).
|
|
37
37
|
*
|
|
38
38
|
* Exhaustive over `AccessLogAction.options` — TypeScript catches additions.
|
|
39
39
|
*/
|
package/dist/audit/activity.d.ts
CHANGED
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
* Unified Activity row + filter schemas for the dashboard's federated
|
|
3
3
|
* "Activity" view. Federates Platform `audit_log` (mutation events,
|
|
4
4
|
* free-form target_type) with orchestrator `access_log` (reads + admin
|
|
5
|
-
* mutations, strict-enum target_type) at the query layer
|
|
6
|
-
* `~/.claude/plans/ui-audit-logs-page-sleepy-wave.md`.
|
|
5
|
+
* mutations, strict-enum target_type) at the query layer.
|
|
7
6
|
*
|
|
8
7
|
* The `source` discriminator on each row tells the UI whether to render
|
|
9
8
|
* the audit_log or access_log column set. Fields unique to access_log
|
package/dist/audit/activity.js
CHANGED
|
@@ -7,8 +7,7 @@ import { z } from "zod";
|
|
|
7
7
|
* Unified Activity row + filter schemas for the dashboard's federated
|
|
8
8
|
* "Activity" view. Federates Platform `audit_log` (mutation events,
|
|
9
9
|
* free-form target_type) with orchestrator `access_log` (reads + admin
|
|
10
|
-
* mutations, strict-enum target_type) at the query layer
|
|
11
|
-
* `~/.claude/plans/ui-audit-logs-page-sleepy-wave.md`.
|
|
10
|
+
* mutations, strict-enum target_type) at the query layer.
|
|
12
11
|
*
|
|
13
12
|
* The `source` discriminator on each row tells the UI whether to render
|
|
14
13
|
* the audit_log or access_log column set. Fields unique to access_log
|
|
@@ -8,9 +8,7 @@
|
|
|
8
8
|
* `./access-log-policy.ts`; both modules classify by the same action
|
|
9
9
|
* dimension, just for different downstream decisions.
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
* and the user's
|
|
13
|
-
* `## Decisions` section. Two override layers apply uniformly:
|
|
11
|
+
* Two override layers apply uniformly:
|
|
14
12
|
*
|
|
15
13
|
* 1. `outcome` is `denied` or `error` → retain 180d (forensic value).
|
|
16
14
|
* 2. `actor.type === 'platform_operator'` → retain 365d
|
|
@@ -100,7 +100,7 @@ const FORENSIC_OUTCOME_DAYS = 180;
|
|
|
100
100
|
const PLATFORM_OPERATOR_DAYS = 365;
|
|
101
101
|
/**
|
|
102
102
|
* Default warm TTL for action strings outside `AccessLogAction.options`. Hit
|
|
103
|
-
* by
|
|
103
|
+
* by synthetic test action names and would-be-future enum additions on a
|
|
104
104
|
* rolling deploy. Matches the conservative `180d` mutations bucket so
|
|
105
105
|
* unknown rows are never archived sooner than a tenant-plane mutation.
|
|
106
106
|
*/
|
|
@@ -4,16 +4,14 @@
|
|
|
4
4
|
* `minimumTrust`.
|
|
5
5
|
*
|
|
6
6
|
* Single source of truth for the sentence: the orchestrator's trust gate emits
|
|
7
|
-
* it,
|
|
8
|
-
*
|
|
9
|
-
* (`.claude/rules/code-style.md` § "Enums over hardcoded strings").
|
|
7
|
+
* it, and test fixtures and assertions compare against it. One copy means a
|
|
8
|
+
* copy edit moves every site at once.
|
|
10
9
|
*
|
|
11
10
|
* `held_runs.reason` is a free-text column, so this is a function rather than
|
|
12
11
|
* an enum: the sentence carries the context name, which is per-hold data.
|
|
13
12
|
*
|
|
14
13
|
* Carries no runtime import on purpose — this module reaches the browser
|
|
15
|
-
* through the engine barrel, which must pull in no Node built-ins
|
|
16
|
-
* (`.claude/rules/engine.md` § "Browser-safe barrel export"). The one import
|
|
14
|
+
* through the engine barrel, which must pull in no Node built-ins. The one import
|
|
17
15
|
* below is type-only and is erased at compile time.
|
|
18
16
|
*/
|
|
19
17
|
import type { TrustTier } from './types.js';
|
package/dist/index.d.ts
CHANGED
|
@@ -53,6 +53,7 @@ export * from './trigger/text-match.js';
|
|
|
53
53
|
export * from './trigger/trigger-event-type.js';
|
|
54
54
|
export * from './trigger/decision-trace.js';
|
|
55
55
|
export * from './trigger/matcher.js';
|
|
56
|
+
export * from './trigger/diff-range.js';
|
|
56
57
|
export { getRepoGlobMatcher } from './trigger/compiled-matchers.js';
|
|
57
58
|
export { REGEX_NEGATIVE_ASSERTION, isNegatedPattern, negatedPatternReason, } from './repo/pattern-negation.js';
|
|
58
59
|
export * from './trigger/event-buckets.js';
|
package/dist/index.js
CHANGED
|
@@ -55,7 +55,8 @@ import { KNOWN_LINUX_CAPABILITIES, canonicalizeCapability, isKnownCapability } f
|
|
|
55
55
|
import { compileSafeRegex, describeTextMatch, evaluateTextMatch, textMatchHasQuery } from "./trigger/text-match.js";
|
|
56
56
|
import { REDACTED_TRACE_FIELD, TRACE_TEXT_MAX, TRACE_TRUNCATION_WORKFLOW_NAME, TraceCheck, TraceVerdict, appendChecks, createCommitMessageTraceEntry, createContentRequirementsTraceEntry, createDispatchFailureTraceEntry, createGlobalFilterTraceEntry, createTraceEntry, createTraceTruncationMarker, createWorkflowDecision, truncateDecisionsToByteBudget, truncateTraceText, utf8ByteLength } from "./trigger/decision-trace.js";
|
|
57
57
|
import { getRepoGlobMatcher } from "./trigger/compiled-matchers.js";
|
|
58
|
-
import {
|
|
58
|
+
import { diffRangeKindSchema, isDeferrableRange, isZeroSha, resolveDiffRange } from "./trigger/diff-range.js";
|
|
59
|
+
import { DEFERRED_PATHS_SUMMARY_SUFFIX, UnavailablePathsTrace, matchAllWorkflows, matchBranchPattern, matchPathPatterns, matchRepoPatterns, matchTrigger, matchWorkflowTriggers } from "./trigger/matcher.js";
|
|
59
60
|
import { TRIGGER_TYPE_TO_EVENT_TYPES, matchWorkflowsForEvent, prepareEventBuckets } from "./trigger/event-buckets.js";
|
|
60
61
|
import { scheduleTriggerKey } from "./trigger/schedule-key.js";
|
|
61
62
|
import { DispatchInputType, InputDescriptor, InputsDescriptorMapSchema } from "./inputs/descriptor.js";
|
|
@@ -95,4 +96,4 @@ import { ARTIFACT_INVALID_NAME_PREFIX, ARTIFACT_NAME_MAX_LENGTH, ArtifactNameSch
|
|
|
95
96
|
import { PLAN_TYPES, PaidPlanType, PlanType, isPaidTier, planRank } from "./billing/plan-type.js";
|
|
96
97
|
import { SUBSCRIPTION_EXISTS_CODE, StripeSubscriptionStatus, blocksNewCheckout } from "./billing/subscription-status.js";
|
|
97
98
|
import { INFRA_ALERT_TYPES, InfraAlertSeverity, InfraAlertType, normalizeInfraAlertSeverity } from "./diagnostics/infra-alert.js";
|
|
98
|
-
export { ACCESS_LOG_COLD_DAYS, ACCESS_LOG_WARM_DAYS, ACTOR_AGENT_SUFFIX, AGENT_API_REQUEST_TIMEOUT_MS, AGENT_CAPABILITIES, AGENT_FEATURE_LABELS, AGENT_FEATURE_LABEL_PREFIX, AGENT_REQUIRED_KICI_VARS, ALLOWED_SYSTEM_VARS, ARTIFACT_INVALID_NAME_PREFIX, ARTIFACT_NAME_MAX_LENGTH, AccessLogAction, AccessLogOutcome, AccessLogPolicyKind, AccessLogSource, AccessLogTargetType, ActivityFilterSource, ActivityRowSource, ActorType, AgentCapabilityFlag, AgentFailureCategory, AgentFeature, ApprovalDecision, ArtifactCompleteAckOutcome, ArtifactDownloadOutcome, ArtifactNameSchema, ArtifactRejectReason, ArtifactUploadOutcome, AttestationOrigin, BREAKING_FLOOR, CANONICAL_STATUSES, CAPABILITY_LABEL_PREFIX, CLUSTER_MEMBERSHIP_MAX_WORKERS, CONTAINER_BUILD_RUNTIME_LABEL, CONTEXTS_MAX, CacheOutcome, CacheRefScope, CacheRunEventType, CacheStepType, CheckMode, CheckRunConclusion, CheckStepOutcome, CiTrustLevel, ConcurrencyStrategy, ConfigPathsSchema, ContextDeleteErrorCode, ContextGateRejectReason, ContextType, DASHBOARD_REQUEST_TYPES, DASHBOARD_REQUEST_TYPE_SET, DEAD_ORCH_FAILURE_REASON, DEFAULT_APPROVAL_EXPIRY_HOURS, DEFAULT_APPROVAL_EXPIRY_SECONDS, DEFAULT_CONCURRENCY_STRATEGY, DEFAULT_HOLD_EXPIRY_SECONDS, DEVELOPER_OPERATIONS, DashboardResponseErrorCode, DeploymentContainerRuntimeSchema, DeploymentIdentitySchema, DeploymentModeSchema, DispatchInputError, DispatchInputType, EVENT_LOG_PAYLOAD_CHUNK_BYTES, EventLogPayloadStreamError, EventLogSource, EventLogStatus, ExecutionJobStatus, ExecutionRunStatus, ExecutionStepStatus, FanoutCause, FanoutError, FleetHostDisposition, ForkPolicy, GLOBAL_APPROVAL_MIN_READER, GLOBAL_EVAL_SKIPS_RESULT_AWARE_LABEL, HEARTBEAT_CLOSE_MS, HEARTBEAT_DEGRADED_MS, HEARTBEAT_FRESH_MS, HEARTBEAT_STALE_THRESHOLD_SECONDS, HEARTBEAT_UNHEALTHY_MARK_MS, HOST_LABEL_PREFIX, HeldRunQueueType, HeldRunStatus, HoldScope, HoldType, HostInventoryEntry, HostPropertyValue, HostTargetSelector, HostTargetValue, ID_TOKEN_CLAIM_NAMES, INFRA_ALERT_TYPES, INIT_LABEL, INIT_RUNNER_ROLE_LABEL, INSTALL_JOB_ID_PREFIX, INTERNAL_EVENT_NAME_PREFIX, InfraAlertSeverity, InfraAlertType, InitFailureCategory, InputDescriptor, InputsDescriptorMapSchema, InventoryHostStatus, InventoryLifecycleClass, InventorySelectorSchema, JOB_IMAGE_RUNTIME_LABEL, JobKind, JobRejectReason, KICI_AGENT_ENV_PREFIX, KICI_EVENT_NAME_PREFIX, KNOWN_LINUX_CAPABILITIES, KNOWN_ROLES, LEGACY_STATUS_ALIASES, LabelMatcher, LockFileParseError, LogStream, MAX_APPROVAL_EXPIRY_HOURS, MAX_APPROVAL_EXPIRY_SECONDS, MAX_FANOUT_JOBS, MAX_JOBS_PER_RUN, MAX_MATRIX_MATERIALIZATION, MIN_APPROVAL_EXPIRY_SECONDS, MIN_PROTOCOL_VERSION, MatrixShapeError, MinimumTrustSchema, NACK_EXEMPT_MESSAGE_TYPES, NeedsEntrySchema, NeedsGroupEntrySchema, NeedsRunOn, NeedsWhen, ORCH_AGENT_CAPABILITIES, ORCH_CAPABILITIES, ORCH_TO_PLATFORM_RECOGNIZED_TYPES, OWN_INGRESS_MODES, OnUnreachableMode, OrchLogPhase, OrchRole, OrchestratorMode, PING_EVENT_TYPE, PLAN_TYPES, PLATFORM_CAPABILITIES, PLATFORM_CONNECTED_MODES, PLATFORM_TAINT_LABELS, PLATFORM_TO_ORCH_RECOGNIZED_TYPES, POLICY_BY_ACTION, PRIVILEGED_ROOT_LABEL, PROTOCOL_VERSION, PULL_REQUEST_FAMILY_TRIGGER_EVENTS, PaidPlanType, PatKind, PayloadOmittedReason, PlanType, REDACTED_TRACE_FIELD, REGEX_NEGATIVE_ASSERTION, RELAY_INGRESS_MODES, REPO_IDENTIFIER_MAX, RUNS_ON_LABELS_MAX, RUNTIME_LABEL_PREFIX, RegisterableTriggerType, RunFailureClass, RunsOnPick, RuntimeFact, SANDBOX_DEFAULT_VARS, SANDBOX_NETWORK_MODES, SCALER_EVENT_NAMES, SCHEMA_VERSION, SCOPE_NAME_MAX_LENGTH, SCOPE_SEGMENT_PATTERN, SECONDS_PER_HOUR, SECRET_KEY_MAX_LENGTH, SECRET_KEY_PATTERN, SECURITY_HOLD_JOB_IDS, SECURITY_HOLD_JOB_LABELS, SELF_REPORTED_LABEL_PREFIXES, SSH_TRANSPORT_CAPABILITY, STATE_REPLAY_MAX_RUNS, STATUS_EPOCH_MAX, STATUS_FAILURE_CLASS, STATUS_FREE_TEXT_MAX, STATUS_ID_MAX, STATUS_PRECEDENCE, SUBSCRIBABLE_WEBHOOK_EVENT_TYPES, SUBSCRIPTION_EXISTS_CODE, ScaleDownReason, ScalerArch, ScalerBackendType, ScalerEventType, ScalerOs, ScalerScaleDownPayload, ScalerScaleUpPayload, ScopeNameError, SecretKeyError, SetupStepType, SourceOrigin, SourceProvider, SourceSubtype, StatusFailureClass, StepApprovalOutcome, StepConcurrencyKind, StripeSubscriptionStatus, SubscribableWebhookEventType, TERMINAL_JOB_STATES, TERMINAL_RUN_STATES, TERMINAL_STEP_STATES, TRACE_TEXT_MAX, TRACE_TRUNCATION_WORKFLOW_NAME, TRIGGER_EVENT_META, TRIGGER_EVENT_TYPES, TRIGGER_TYPE_TO_EVENT_TYPES, TRUSTED_ENV_SCRUB_EXACT, TestRelayType, TimeoutReason, TraceCheck, TraceVerdict, TriggerSource, TrustTierSchema, UNRESOLVED_CLAIM, UnsupportedDispatchInputError, VariantKind, WEBHOOK_RELAY_CHUNK_SIZE, WEBHOOK_RELAY_MAX_BODY_BYTES, WORKFLOW_MODIFICATION_JOB_ID, 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_REBALANCE, WS_CLOSE_SUPERSEDED_BY_RECONNECT, WS_CLOSE_UNAUTHORIZED, WS_MAX_PAYLOAD_BYTES, WebhookEventType, WebhookRelayResult, WsRateLimiter, accessLogFilterSchema, accessLogItemSchema, accessLogWarmSqlCase, ackSchema, activityCursorSchema, activityFilterSchema, activityRowSchema, actorPrincipalSchema, agentApiRequestSchema, agentApiResponseSchema, agentAuthFailureSchema, agentAuthRequestSchema, agentAuthSuccessSchema, agentCapabilitiesSchema, agentDiagnosticsConnectionSchema, agentDiagnosticsSchema, agentFeatureLabel, agentJobResultSchema, agentLabelOf, agentLogChunkSchema, agentMetricsSchema, agentOrchestratorSummarySchema, agentOrgSummarySchema, agentRegisterSchema, agentRunListItemSchema, agentRunResultSchema, agentSecretScopeSchema, agentStatusSchema, agentStepLogsSchema, agentStepResultSchema, agentStepStatusSchema, agentToOrchestratorMessageSchema, agentTypeLabel, agentWorkflowSummarySchema, apiKeyActorSchema, appendChecks, applyIncludeExclude, approvalExpiryHoursOf, approvalExpirySecondsOf, approvalRequirementSchema, approvalTimeoutSecondsSchema, approveRunToolSchema, approverClauseSchema, artifactInvalidNameError, artifactListItemSchema, artifactsDownloadRequestSchema, artifactsDownloadResponseSchema, artifactsUploadCompleteAckSchema, artifactsUploadCompleteSchema, artifactsUploadRequestSchema, artifactsUploadResponseSchema, assertScheduleInputsSatisfiable, assertValidScopeName, assertValidSecretKey, attestationListFiltersSchema, attestationListItemSchema, attestationListSummarySchema, attestationVerifyStatusSchema, auditLogColdDays, auditLogWarmDays, auditLogWarmSqlCase, authFailureSchema, authRequestSchema, authSuccessSchema, backendGetRequestSchema, backendGetResponseSchema, backendItemSchema, backendSyncRequestSchema, backendSyncResponseSchema, backendTestRequestSchema, backendTestResponseSchema, backendsListRequestSchema, backendsListResponseSchema, backendsSyncAllRequestSchema, backendsSyncAllResponseSchema, blocksNewCheckout, browserAuthFailureSchema, browserAuthRefreshSchema, browserAuthRequestSchema, browserAuthSuccessSchema, browserErrorSchema, browserEventLogPayloadChunkSchema, browserEventLogPayloadFetchSchema, browserGapSchema, browserJobContextSchema, browserJobNewSchema, browserJobStatusSchema, browserLogLinesSchema, browserLogStreamTerminatedReason, browserLogStreamTerminatedSchema, browserLogSubscribeSchema, browserLogUnsubscribeSchema, browserOrchLogLinesSchema, browserOrchLogSubscribeSchema, browserOrchLogUnsubscribeSchema, browserPingSchema, browserPongSchema, browserRunEventSchema, browserRunNewSchema, browserRunStatusSchema, browserStatusSubscribeSchema, browserStatusUnsubscribeSchema, browserStepStatusSchema, browserToPlatformMessageSchema, buildEventClaims, buildIdTokenSubject, buildTrustedPassthroughEnv, buildUnsupportedMessageNack, buildZodFromDescriptor, buildZodObjectFromMap, cacheStatsSchema, cacheUserRestoreRequestSchema, cacheUserRestoreResponseSchema, cacheUserSaveCompleteSchema, cacheUserSaveRequestSchema, cacheUserSaveResponseSchema, cancelRunToolSchema, cancelRunsByBranchToolSchema, canonicalizeCapability, canonicalizeLabel, canonicalizeLabelSet, canonicalizeLabels, canonicalizeMatcher, capabilityLabel, changedFilesStatusSchema, checkArtifactName, clusterMembershipSchema, coerceDispatchInputs, coerceHostPropertyValue, collectDiscriminatorTypes, compileRegexMatcher, compileSafeRegex, configAckSchema, connectionHealthStatusSchema, contextBindingEntrySchema, contextBindingsListRequestSchema, contextBindingsSetRequestSchema, contextCreateRequestSchema, contextDeleteRequestSchema, contextGetRequestSchema, contextHistoryRequestSchema, contextHistoryResponseSchema, contextListRequestSchema, contextSecretDeleteRequestSchema, contextSecretScopeCreateRequestSchema, contextSecretScopeDeleteRequestSchema, contextSecretScopeRenameRequestSchema, contextSecretSetRequestSchema, contextSecretsListRequestSchema, contextSourceOverrideDeleteRequestSchema, contextSourceOverrideSetRequestSchema, contextSourceOverridesListRequestSchema, contextTestAccessSetRequestSchema, contextUpdateRequestSchema, contextVarDeleteRequestSchema, contextVarSetRequestSchema, contextVarsListRequestSchema, createCommitMessageTraceEntry, createContentRequirementsTraceEntry, createDispatchFailureTraceEntry, createGlobalFilterTraceEntry, createTraceEntry, createTraceTruncationMarker, createWorkflowBundleConfig, createWorkflowDecision, dashboardAccessLogListRequestSchema, dashboardAccessLogListResponseSchema, dashboardAdminTokenSummarySchema, dashboardAdminTokensListRequestSchema, dashboardAdminTokensListResponseSchema, dashboardArtifactsListRequestSchema, dashboardArtifactsListResponseSchema, dashboardAttestationGetRequestSchema, dashboardAttestationGetResponseSchema, dashboardAttestationRetryRequestSchema, dashboardAttestationRetryResponseSchema, dashboardAttestationsApiResponseSchema, dashboardAttestationsListAllRequestSchema, dashboardAttestationsListAllResponseSchema, dashboardAttestationsListRequestSchema, dashboardAttestationsListResponseSchema, dashboardDiagnosticsRequestSchema, dashboardDiagnosticsResponseSchema, dashboardEventDlqCountRequestSchema, dashboardEventDlqDiscardRequestSchema, dashboardEventDlqListItemSchema, dashboardEventDlqListRequestSchema, dashboardEventDlqRetryRequestSchema, dashboardEventLogActivityRequestSchema, dashboardEventLogActivityResponseSchema, dashboardEventLogDetailRequestSchema, dashboardEventLogListRequestSchema, dashboardEventLogPayloadChunkSchema, dashboardEventLogPayloadStreamRequestSchema, dashboardFleetHostRequestSchema, dashboardFleetHostResponseSchema, dashboardFleetHostsRequestSchema, dashboardFleetHostsResponseSchema, dashboardFleetPreviewRequestSchema, dashboardFleetPreviewResponseSchema, dashboardFleetWorkflowsForHostRequestSchema, dashboardFleetWorkflowsForHostResponseSchema, dashboardJobDetailSchema, dashboardOrchLogsRequestSchema, dashboardOrchLogsResponseSchema, dashboardOrchToPlatformSchema, dashboardPayloadRequestSchema, dashboardPlatformToOrchSchema, dashboardRunDetailApiResponseSchema, dashboardRunDetailRequestSchema, dashboardRunDetailResponseSchema, dashboardRunStateRequestSchema, dashboardRunStateResponseSchema, dashboardRunStructuredRequestSchema, dashboardRunStructuredResponseSchema, dashboardRunSummarySchema, dashboardRunsFiltersRequestSchema, dashboardRunsFiltersResponseSchema, dashboardRunsListRequestSchema, dashboardRunsListResponseSchema, dashboardScalerAgentsRequestSchema, dashboardScalerAgentsResponseSchema, dashboardScalerCapacityRequestSchema, dashboardScalerCapacityResponseSchema, dashboardSourceSummarySchema, dashboardSourcesListRequestSchema, dashboardSourcesListResponseSchema, dashboardStepLogsApiResponseSchema, dashboardStepLogsRequestSchema, dashboardStepLogsResponseSchema, decodeActivityCursor, deriveOsArchLabels, derivePlatformTaints, describeTextMatch, developerOpsForEntrypoint, diagnosticsInfraAlertSchema, diagnosticsInfrastructureResponseSchema, diagnosticsSummaryResponseSchema, encodeActivityCursor, errorSchema, evaluateTextMatch, eventEmitResponseSchema, eventEmitSchema, eventLogActivityCountsSchema, eventLogListItemSchema, executionEventSchema, executionStatusSchema, expandMatrix, expandMultiDimension, expandSingleDimension, extractInputDescriptor, extractInputsDescriptorMap, fanoutEnvelopeFields, findDuplicateCombination, flattenActor, fleetBundleChunkSchema, fleetBundleErrorSchema, fleetHostDeclareRequestSchema, fleetHostDeclareResponseSchema, fleetHostRemoveRequestSchema, fleetHostRemoveResponseSchema, fleetHostWorkflowSchema, fleetLogsRequestSchema, fleetPinnedRunSchema, fleetPreviewHostSchema, fleetSelectionSchema, fnv1a32, formatExpandedJobName, formatMatrixSuffix, getAccessLogColdDays, getAccessLogWarmDays, getAuditLogColdDays, getAuditLogWarmDays, getDiagnosticsToolSchema, getRepoGlobMatcher, getRunToolSchema, getSecretAuditLogColdDays, getSecretAuditLogWarmDays, getStepLogsToolSchema, gitAuthSchema, githubIngressPath, githubWebhookPath, globalEvalCandidateResultSchema, globalEvalRoundResultSchema, hasAgentCapability, hasOrchAgentCapability, hasOrchCapability, hasPlatformCapability, heartbeatSchema, heldRunApproveRequestSchema, heldRunRejectRequestSchema, heldRunsListRequestSchema, hostEnvelopeFields, hostLabel, hostSatisfiesTarget, hostToScalerPlatform, identityLinkItemSchema, identityLinkListResponseSchema, initFailureSchema, installGateJobId, invokeResultSchema, isFailureStatus, isInputSatisfiableFromDefaults, isKnownCapability, isLockDynamicJobFn, isLockParallelStep, isLockStaticJob, isMintedRef, isNegatedPattern, isPaidTier, isPullRequestFamilyTriggerEvent, isSecurityHoldJobId, isSelfReportedLabel, isSetupStepType, isTrustedEnvScrubbed, jobAckSchema, jobCancelSchema, jobConcurrencyAckSchema, jobConcurrencyReportSchema, jobContextMessageSchema, jobDispatchSchema, jobProgressAckSchema, jobProgressSchema, jobRejectSchema, jobRerouteAckSchema, jobRerouteSchema, jobStatusForwardSchema, jobStatusSchema, joinRequestSchema, joinResponseSchema, listOrchestratorsToolSchema, listOrgsToolSchema, listRunsToolSchema, listSecretsToolSchema, listWorkflowsToolSchema, logChunkSchema, logPullOrchToPlatformSchema, logPullPlatformToOrchSchema, manualScheduleRequestSchema, matchAllWorkflows, matchBranchPattern, matchPathPatterns, matchRepoPatterns, matchScopePattern, matchTrigger, matchWorkflowTriggers, matchWorkflowsForEvent, matcherMatches, matcherSatisfiedBy, materializeFanout, materializeResolvedHosts, materializeResolvedMatrix, matrixCombinationCount, matrixEnvelopeFields, memberIdentityLinkSchema, memberListResponseSchema, memberRoleAssignmentSchema, mergeAutoLabels, mergeOrderedMaps, minAccessLogWarmDays, minAuditLogWarmDays, minSecretAuditLogWarmDays, nackSchema, negatedPatternReason, nodeArchToScalerArch, nodePlatformToScalerOs, normalizeInfraAlertSeverity, normalizeMatrixInput, normalizePersistedHoldType, normalizeRegexFlags, normalizeRunsOn, orchAgentCapabilitiesSchema, orchCapabilitiesSchema, orchLogChunkSchema, orchMetricsSchema, orchestratorToAgentMessageSchema, orchestratorToPlatformMessageSchema, orgMemberSchema, parseActor, parseHostLabel, parseHostPropertyAssignments, parseInputPairs, parseMemoryString, partitionMatchers, peerAgentTokenRevokeSchema, peerAuthRequestSchema, peerAuthResponseSchema, peerCapabilitiesSchema, peerClusterSettingsRequestSchema, peerClusterSettingsResponseSchema, peerConfigReloadResponseSchema, peerConfigReloadSchema, peerDiscoverSchema, peerFromPeerMessageSchema, peerHeartbeatSchema, peerHelloResponseSchema, peerHelloSchema, peerJobCancelSchema, peerLeavingSchema, peerLogsCollectChunkSchema, peerLogsCollectErrorSchema, peerLogsCollectRequestSchema, peerScalerEventSchema, peerToPeerMessageSchema, peerUpdateSchema, persistedHoldTypeSpellings, planHeadroomSchema, planRank, platformCapabilitiesMessageSchema, platformCapabilitiesSchema, platformOperatorActorSchema, platformToBrowserMessageSchema, platformToOrchestratorMessageSchema, platformToOsArchLabels, platformToTaints, prepareEventBuckets, provenanceContextSchema, provenanceUploadCompleteSchema, provenanceUploadDeferSchema, provenanceUploadRequestSchema, provenanceUploadResponseSchema, raftAppendEntriesSchema, raftVoteRequestSchema, raftVoteResponseSchema, rateLimitWarningSchema, registerAckSchema, registrationDeleteRequestSchema, registrationDisableRequestSchema, registrationItemSchema, registrationsListRequestSchema, registrationsListResponseSchema, rejectRunToolSchema, renderFenced, rerunRunToolSchema, reservedEventNamePrefix, resolveContentFormat, resolveHeldRunId, resolveRoleLabels, resolveRunIdSugar, resolveScheduleInputs, resolveSecretsForContext, resolveSecretsWithProvenance, resolveWhenToRunOn, resourceRequestNestedSchema, resourceSpecSchema, runCancelRequestSchema, runEventMessageSchema, runEventSchema, runLineageResponseSchema, runListItemSchema, runListResponseSchema, runRerunRequestSchema, runtimeLabel, scalerAgentLabels, scalerClaimCredentialsResponseSchema, scalerClaimCredentialsSchema, scalerLabel, scalerPlatformSchema, scheduleTriggerKey, secretAuditLogColdDays, secretAuditLogWarmDays, secretAuditLogWarmSqlCase, serviceAccountActorSchema, shouldRecordAccess, shouldRecordSecretResolve, sourceDeregisterAckSchema, sourceDeregisterSchema, sourceRegistrationAckSchema, sourceRegistrationSchema, staleCheckrunCleanupSchema, stateReplayRunSchema, stateReplaySchema, statusOptionsForLevel, stepApprovalPayloadSchema, stepApprovalRequestSchema, stepApprovalResolvedSchema, stepStatusForwardSchema, stringifyActor, stripScopePrefix, stripStatefulRegexFlags, systemActorSchema, testRelayCancelRequestSchema, testRelayCancelResponseSchema, testRelayRunLogsRequestSchema, testRelayRunLogsResponseSchema, testRelayRunStatusRequestSchema, testRelayRunStatusResponseSchema, testRelayTriggerRequestSchema, testRelayTriggerResponseSchema, testRelayUploadsInitRequestSchema, testRelayUploadsInitResponseSchema, textMatchHasQuery, toCanonicalStatus, triggerRunToolSchema, truncateDecisionsToByteBudget, truncateTraceText, trustPolicyResponseSchema, trustPolicySchema, trustPolicyUpdateSchema, trustedContributorHoldReason, untrusted, upstreamSnapshotSchema, userActorSchema, utf8ByteLength, validateNoReservedLabels, validateResourceRequest, validateScopeName, validateSecretKey, webhookAckSchema, webhookRelayChunkSchema, webhookRelaySchema, webhookRelayStartSchema, workerClusterSettingsSchema, worstStatus, wrapUntrusted };
|
|
99
|
+
export { ACCESS_LOG_COLD_DAYS, ACCESS_LOG_WARM_DAYS, ACTOR_AGENT_SUFFIX, AGENT_API_REQUEST_TIMEOUT_MS, AGENT_CAPABILITIES, AGENT_FEATURE_LABELS, AGENT_FEATURE_LABEL_PREFIX, AGENT_REQUIRED_KICI_VARS, ALLOWED_SYSTEM_VARS, ARTIFACT_INVALID_NAME_PREFIX, ARTIFACT_NAME_MAX_LENGTH, AccessLogAction, AccessLogOutcome, AccessLogPolicyKind, AccessLogSource, AccessLogTargetType, ActivityFilterSource, ActivityRowSource, ActorType, AgentCapabilityFlag, AgentFailureCategory, AgentFeature, ApprovalDecision, ArtifactCompleteAckOutcome, ArtifactDownloadOutcome, ArtifactNameSchema, ArtifactRejectReason, ArtifactUploadOutcome, AttestationOrigin, BREAKING_FLOOR, CANONICAL_STATUSES, CAPABILITY_LABEL_PREFIX, CLUSTER_MEMBERSHIP_MAX_WORKERS, CONTAINER_BUILD_RUNTIME_LABEL, CONTEXTS_MAX, CacheOutcome, CacheRefScope, CacheRunEventType, CacheStepType, CheckMode, CheckRunConclusion, CheckStepOutcome, CiTrustLevel, ConcurrencyStrategy, ConfigPathsSchema, ContextDeleteErrorCode, ContextGateRejectReason, ContextType, DASHBOARD_REQUEST_TYPES, DASHBOARD_REQUEST_TYPE_SET, DEAD_ORCH_FAILURE_REASON, DEFAULT_APPROVAL_EXPIRY_HOURS, DEFAULT_APPROVAL_EXPIRY_SECONDS, DEFAULT_CONCURRENCY_STRATEGY, DEFAULT_HOLD_EXPIRY_SECONDS, DEFERRED_PATHS_SUMMARY_SUFFIX, DEVELOPER_OPERATIONS, DashboardResponseErrorCode, DeploymentContainerRuntimeSchema, DeploymentIdentitySchema, DeploymentModeSchema, DispatchInputError, DispatchInputType, EVENT_LOG_PAYLOAD_CHUNK_BYTES, EventLogPayloadStreamError, EventLogSource, EventLogStatus, ExecutionJobStatus, ExecutionRunStatus, ExecutionStepStatus, FanoutCause, FanoutError, FleetHostDisposition, ForkPolicy, GLOBAL_APPROVAL_MIN_READER, GLOBAL_EVAL_SKIPS_RESULT_AWARE_LABEL, HEARTBEAT_CLOSE_MS, HEARTBEAT_DEGRADED_MS, HEARTBEAT_FRESH_MS, HEARTBEAT_STALE_THRESHOLD_SECONDS, HEARTBEAT_UNHEALTHY_MARK_MS, HOST_LABEL_PREFIX, HeldRunQueueType, HeldRunStatus, HoldScope, HoldType, HostInventoryEntry, HostPropertyValue, HostTargetSelector, HostTargetValue, ID_TOKEN_CLAIM_NAMES, INFRA_ALERT_TYPES, INIT_LABEL, INIT_RUNNER_ROLE_LABEL, INSTALL_JOB_ID_PREFIX, INTERNAL_EVENT_NAME_PREFIX, InfraAlertSeverity, InfraAlertType, InitFailureCategory, InputDescriptor, InputsDescriptorMapSchema, InventoryHostStatus, InventoryLifecycleClass, InventorySelectorSchema, JOB_IMAGE_RUNTIME_LABEL, JobKind, JobRejectReason, KICI_AGENT_ENV_PREFIX, KICI_EVENT_NAME_PREFIX, KNOWN_LINUX_CAPABILITIES, KNOWN_ROLES, LEGACY_STATUS_ALIASES, LabelMatcher, LockFileParseError, LogStream, MAX_APPROVAL_EXPIRY_HOURS, MAX_APPROVAL_EXPIRY_SECONDS, MAX_FANOUT_JOBS, MAX_JOBS_PER_RUN, MAX_MATRIX_MATERIALIZATION, MIN_APPROVAL_EXPIRY_SECONDS, MIN_PROTOCOL_VERSION, MatrixShapeError, MinimumTrustSchema, NACK_EXEMPT_MESSAGE_TYPES, NeedsEntrySchema, NeedsGroupEntrySchema, NeedsRunOn, NeedsWhen, ORCH_AGENT_CAPABILITIES, ORCH_CAPABILITIES, ORCH_TO_PLATFORM_RECOGNIZED_TYPES, OWN_INGRESS_MODES, OnUnreachableMode, OrchLogPhase, OrchRole, OrchestratorMode, PING_EVENT_TYPE, PLAN_TYPES, PLATFORM_CAPABILITIES, PLATFORM_CONNECTED_MODES, PLATFORM_TAINT_LABELS, PLATFORM_TO_ORCH_RECOGNIZED_TYPES, POLICY_BY_ACTION, PRIVILEGED_ROOT_LABEL, PROTOCOL_VERSION, PULL_REQUEST_FAMILY_TRIGGER_EVENTS, PaidPlanType, PatKind, PayloadOmittedReason, PlanType, REDACTED_TRACE_FIELD, REGEX_NEGATIVE_ASSERTION, RELAY_INGRESS_MODES, REPO_IDENTIFIER_MAX, RUNS_ON_LABELS_MAX, RUNTIME_LABEL_PREFIX, RegisterableTriggerType, RunFailureClass, RunsOnPick, RuntimeFact, SANDBOX_DEFAULT_VARS, SANDBOX_NETWORK_MODES, SCALER_EVENT_NAMES, SCHEMA_VERSION, SCOPE_NAME_MAX_LENGTH, SCOPE_SEGMENT_PATTERN, SECONDS_PER_HOUR, SECRET_KEY_MAX_LENGTH, SECRET_KEY_PATTERN, SECURITY_HOLD_JOB_IDS, SECURITY_HOLD_JOB_LABELS, SELF_REPORTED_LABEL_PREFIXES, SSH_TRANSPORT_CAPABILITY, STATE_REPLAY_MAX_RUNS, STATUS_EPOCH_MAX, STATUS_FAILURE_CLASS, STATUS_FREE_TEXT_MAX, STATUS_ID_MAX, STATUS_PRECEDENCE, SUBSCRIBABLE_WEBHOOK_EVENT_TYPES, SUBSCRIPTION_EXISTS_CODE, ScaleDownReason, ScalerArch, ScalerBackendType, ScalerEventType, ScalerOs, ScalerScaleDownPayload, ScalerScaleUpPayload, ScopeNameError, SecretKeyError, SetupStepType, SourceOrigin, SourceProvider, SourceSubtype, StatusFailureClass, StepApprovalOutcome, StepConcurrencyKind, StripeSubscriptionStatus, SubscribableWebhookEventType, TERMINAL_JOB_STATES, TERMINAL_RUN_STATES, TERMINAL_STEP_STATES, TRACE_TEXT_MAX, TRACE_TRUNCATION_WORKFLOW_NAME, TRIGGER_EVENT_META, TRIGGER_EVENT_TYPES, TRIGGER_TYPE_TO_EVENT_TYPES, TRUSTED_ENV_SCRUB_EXACT, TestRelayType, TimeoutReason, TraceCheck, TraceVerdict, TriggerSource, TrustTierSchema, UNRESOLVED_CLAIM, UnavailablePathsTrace, UnsupportedDispatchInputError, VariantKind, WEBHOOK_RELAY_CHUNK_SIZE, WEBHOOK_RELAY_MAX_BODY_BYTES, WORKFLOW_MODIFICATION_JOB_ID, 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_REBALANCE, WS_CLOSE_SUPERSEDED_BY_RECONNECT, WS_CLOSE_UNAUTHORIZED, WS_MAX_PAYLOAD_BYTES, WebhookEventType, WebhookRelayResult, WsRateLimiter, accessLogFilterSchema, accessLogItemSchema, accessLogWarmSqlCase, ackSchema, activityCursorSchema, activityFilterSchema, activityRowSchema, actorPrincipalSchema, agentApiRequestSchema, agentApiResponseSchema, agentAuthFailureSchema, agentAuthRequestSchema, agentAuthSuccessSchema, agentCapabilitiesSchema, agentDiagnosticsConnectionSchema, agentDiagnosticsSchema, agentFeatureLabel, agentJobResultSchema, agentLabelOf, agentLogChunkSchema, agentMetricsSchema, agentOrchestratorSummarySchema, agentOrgSummarySchema, agentRegisterSchema, agentRunListItemSchema, agentRunResultSchema, agentSecretScopeSchema, agentStatusSchema, agentStepLogsSchema, agentStepResultSchema, agentStepStatusSchema, agentToOrchestratorMessageSchema, agentTypeLabel, agentWorkflowSummarySchema, apiKeyActorSchema, appendChecks, applyIncludeExclude, approvalExpiryHoursOf, approvalExpirySecondsOf, approvalRequirementSchema, approvalTimeoutSecondsSchema, approveRunToolSchema, approverClauseSchema, artifactInvalidNameError, artifactListItemSchema, artifactsDownloadRequestSchema, artifactsDownloadResponseSchema, artifactsUploadCompleteAckSchema, artifactsUploadCompleteSchema, artifactsUploadRequestSchema, artifactsUploadResponseSchema, assertScheduleInputsSatisfiable, assertValidScopeName, assertValidSecretKey, attestationListFiltersSchema, attestationListItemSchema, attestationListSummarySchema, attestationVerifyStatusSchema, auditLogColdDays, auditLogWarmDays, auditLogWarmSqlCase, authFailureSchema, authRequestSchema, authSuccessSchema, backendGetRequestSchema, backendGetResponseSchema, backendItemSchema, backendSyncRequestSchema, backendSyncResponseSchema, backendTestRequestSchema, backendTestResponseSchema, backendsListRequestSchema, backendsListResponseSchema, backendsSyncAllRequestSchema, backendsSyncAllResponseSchema, blocksNewCheckout, browserAuthFailureSchema, browserAuthRefreshSchema, browserAuthRequestSchema, browserAuthSuccessSchema, browserErrorSchema, browserEventLogPayloadChunkSchema, browserEventLogPayloadFetchSchema, browserGapSchema, browserJobContextSchema, browserJobNewSchema, browserJobStatusSchema, browserLogLinesSchema, browserLogStreamTerminatedReason, browserLogStreamTerminatedSchema, browserLogSubscribeSchema, browserLogUnsubscribeSchema, browserOrchLogLinesSchema, browserOrchLogSubscribeSchema, browserOrchLogUnsubscribeSchema, browserPingSchema, browserPongSchema, browserRunEventSchema, browserRunNewSchema, browserRunStatusSchema, browserStatusSubscribeSchema, browserStatusUnsubscribeSchema, browserStepStatusSchema, browserToPlatformMessageSchema, buildEventClaims, buildIdTokenSubject, buildTrustedPassthroughEnv, buildUnsupportedMessageNack, buildZodFromDescriptor, buildZodObjectFromMap, cacheStatsSchema, cacheUserRestoreRequestSchema, cacheUserRestoreResponseSchema, cacheUserSaveCompleteSchema, cacheUserSaveRequestSchema, cacheUserSaveResponseSchema, cancelRunToolSchema, cancelRunsByBranchToolSchema, canonicalizeCapability, canonicalizeLabel, canonicalizeLabelSet, canonicalizeLabels, canonicalizeMatcher, capabilityLabel, changedFilesStatusSchema, checkArtifactName, clusterMembershipSchema, coerceDispatchInputs, coerceHostPropertyValue, collectDiscriminatorTypes, compileRegexMatcher, compileSafeRegex, configAckSchema, connectionHealthStatusSchema, contextBindingEntrySchema, contextBindingsListRequestSchema, contextBindingsSetRequestSchema, contextCreateRequestSchema, contextDeleteRequestSchema, contextGetRequestSchema, contextHistoryRequestSchema, contextHistoryResponseSchema, contextListRequestSchema, contextSecretDeleteRequestSchema, contextSecretScopeCreateRequestSchema, contextSecretScopeDeleteRequestSchema, contextSecretScopeRenameRequestSchema, contextSecretSetRequestSchema, contextSecretsListRequestSchema, contextSourceOverrideDeleteRequestSchema, contextSourceOverrideSetRequestSchema, contextSourceOverridesListRequestSchema, contextTestAccessSetRequestSchema, contextUpdateRequestSchema, contextVarDeleteRequestSchema, contextVarSetRequestSchema, contextVarsListRequestSchema, createCommitMessageTraceEntry, createContentRequirementsTraceEntry, createDispatchFailureTraceEntry, createGlobalFilterTraceEntry, createTraceEntry, createTraceTruncationMarker, createWorkflowBundleConfig, createWorkflowDecision, dashboardAccessLogListRequestSchema, dashboardAccessLogListResponseSchema, dashboardAdminTokenSummarySchema, dashboardAdminTokensListRequestSchema, dashboardAdminTokensListResponseSchema, dashboardArtifactsListRequestSchema, dashboardArtifactsListResponseSchema, dashboardAttestationGetRequestSchema, dashboardAttestationGetResponseSchema, dashboardAttestationRetryRequestSchema, dashboardAttestationRetryResponseSchema, dashboardAttestationsApiResponseSchema, dashboardAttestationsListAllRequestSchema, dashboardAttestationsListAllResponseSchema, dashboardAttestationsListRequestSchema, dashboardAttestationsListResponseSchema, dashboardDiagnosticsRequestSchema, dashboardDiagnosticsResponseSchema, dashboardEventDlqCountRequestSchema, dashboardEventDlqDiscardRequestSchema, dashboardEventDlqListItemSchema, dashboardEventDlqListRequestSchema, dashboardEventDlqRetryRequestSchema, dashboardEventLogActivityRequestSchema, dashboardEventLogActivityResponseSchema, dashboardEventLogDetailRequestSchema, dashboardEventLogListRequestSchema, dashboardEventLogPayloadChunkSchema, dashboardEventLogPayloadStreamRequestSchema, dashboardFleetHostRequestSchema, dashboardFleetHostResponseSchema, dashboardFleetHostsRequestSchema, dashboardFleetHostsResponseSchema, dashboardFleetPreviewRequestSchema, dashboardFleetPreviewResponseSchema, dashboardFleetWorkflowsForHostRequestSchema, dashboardFleetWorkflowsForHostResponseSchema, dashboardJobDetailSchema, dashboardOrchLogsRequestSchema, dashboardOrchLogsResponseSchema, dashboardOrchToPlatformSchema, dashboardPayloadRequestSchema, dashboardPlatformToOrchSchema, dashboardRunDetailApiResponseSchema, dashboardRunDetailRequestSchema, dashboardRunDetailResponseSchema, dashboardRunStateRequestSchema, dashboardRunStateResponseSchema, dashboardRunStructuredRequestSchema, dashboardRunStructuredResponseSchema, dashboardRunSummarySchema, dashboardRunsFiltersRequestSchema, dashboardRunsFiltersResponseSchema, dashboardRunsListRequestSchema, dashboardRunsListResponseSchema, dashboardScalerAgentsRequestSchema, dashboardScalerAgentsResponseSchema, dashboardScalerCapacityRequestSchema, dashboardScalerCapacityResponseSchema, dashboardSourceSummarySchema, dashboardSourcesListRequestSchema, dashboardSourcesListResponseSchema, dashboardStepLogsApiResponseSchema, dashboardStepLogsRequestSchema, dashboardStepLogsResponseSchema, decodeActivityCursor, deriveOsArchLabels, derivePlatformTaints, describeTextMatch, developerOpsForEntrypoint, diagnosticsInfraAlertSchema, diagnosticsInfrastructureResponseSchema, diagnosticsSummaryResponseSchema, diffRangeKindSchema, encodeActivityCursor, errorSchema, evaluateTextMatch, eventEmitResponseSchema, eventEmitSchema, eventLogActivityCountsSchema, eventLogListItemSchema, executionEventSchema, executionStatusSchema, expandMatrix, expandMultiDimension, expandSingleDimension, extractInputDescriptor, extractInputsDescriptorMap, fanoutEnvelopeFields, findDuplicateCombination, flattenActor, fleetBundleChunkSchema, fleetBundleErrorSchema, fleetHostDeclareRequestSchema, fleetHostDeclareResponseSchema, fleetHostRemoveRequestSchema, fleetHostRemoveResponseSchema, fleetHostWorkflowSchema, fleetLogsRequestSchema, fleetPinnedRunSchema, fleetPreviewHostSchema, fleetSelectionSchema, fnv1a32, formatExpandedJobName, formatMatrixSuffix, getAccessLogColdDays, getAccessLogWarmDays, getAuditLogColdDays, getAuditLogWarmDays, getDiagnosticsToolSchema, getRepoGlobMatcher, getRunToolSchema, getSecretAuditLogColdDays, getSecretAuditLogWarmDays, getStepLogsToolSchema, gitAuthSchema, githubIngressPath, githubWebhookPath, globalEvalCandidateResultSchema, globalEvalRoundResultSchema, hasAgentCapability, hasOrchAgentCapability, hasOrchCapability, hasPlatformCapability, heartbeatSchema, heldRunApproveRequestSchema, heldRunRejectRequestSchema, heldRunsListRequestSchema, hostEnvelopeFields, hostLabel, hostSatisfiesTarget, hostToScalerPlatform, identityLinkItemSchema, identityLinkListResponseSchema, initFailureSchema, installGateJobId, invokeResultSchema, isDeferrableRange, isFailureStatus, isInputSatisfiableFromDefaults, isKnownCapability, isLockDynamicJobFn, isLockParallelStep, isLockStaticJob, isMintedRef, isNegatedPattern, isPaidTier, isPullRequestFamilyTriggerEvent, isSecurityHoldJobId, isSelfReportedLabel, isSetupStepType, isTrustedEnvScrubbed, isZeroSha, jobAckSchema, jobCancelSchema, jobConcurrencyAckSchema, jobConcurrencyReportSchema, jobContextMessageSchema, jobDispatchSchema, jobProgressAckSchema, jobProgressSchema, jobRejectSchema, jobRerouteAckSchema, jobRerouteSchema, jobStatusForwardSchema, jobStatusSchema, joinRequestSchema, joinResponseSchema, listOrchestratorsToolSchema, listOrgsToolSchema, listRunsToolSchema, listSecretsToolSchema, listWorkflowsToolSchema, logChunkSchema, logPullOrchToPlatformSchema, logPullPlatformToOrchSchema, manualScheduleRequestSchema, matchAllWorkflows, matchBranchPattern, matchPathPatterns, matchRepoPatterns, matchScopePattern, matchTrigger, matchWorkflowTriggers, matchWorkflowsForEvent, matcherMatches, matcherSatisfiedBy, materializeFanout, materializeResolvedHosts, materializeResolvedMatrix, matrixCombinationCount, matrixEnvelopeFields, memberIdentityLinkSchema, memberListResponseSchema, memberRoleAssignmentSchema, mergeAutoLabels, mergeOrderedMaps, minAccessLogWarmDays, minAuditLogWarmDays, minSecretAuditLogWarmDays, nackSchema, negatedPatternReason, nodeArchToScalerArch, nodePlatformToScalerOs, normalizeInfraAlertSeverity, normalizeMatrixInput, normalizePersistedHoldType, normalizeRegexFlags, normalizeRunsOn, orchAgentCapabilitiesSchema, orchCapabilitiesSchema, orchLogChunkSchema, orchMetricsSchema, orchestratorToAgentMessageSchema, orchestratorToPlatformMessageSchema, orgMemberSchema, parseActor, parseHostLabel, parseHostPropertyAssignments, parseInputPairs, parseMemoryString, partitionMatchers, peerAgentTokenRevokeSchema, peerAuthRequestSchema, peerAuthResponseSchema, peerCapabilitiesSchema, peerClusterSettingsRequestSchema, peerClusterSettingsResponseSchema, peerConfigReloadResponseSchema, peerConfigReloadSchema, peerDiscoverSchema, peerFromPeerMessageSchema, peerHeartbeatSchema, peerHelloResponseSchema, peerHelloSchema, peerJobCancelSchema, peerLeavingSchema, peerLogsCollectChunkSchema, peerLogsCollectErrorSchema, peerLogsCollectRequestSchema, peerScalerEventSchema, peerToPeerMessageSchema, peerUpdateSchema, persistedHoldTypeSpellings, planHeadroomSchema, planRank, platformCapabilitiesMessageSchema, platformCapabilitiesSchema, platformOperatorActorSchema, platformToBrowserMessageSchema, platformToOrchestratorMessageSchema, platformToOsArchLabels, platformToTaints, prepareEventBuckets, provenanceContextSchema, provenanceUploadCompleteSchema, provenanceUploadDeferSchema, provenanceUploadRequestSchema, provenanceUploadResponseSchema, raftAppendEntriesSchema, raftVoteRequestSchema, raftVoteResponseSchema, rateLimitWarningSchema, registerAckSchema, registrationDeleteRequestSchema, registrationDisableRequestSchema, registrationItemSchema, registrationsListRequestSchema, registrationsListResponseSchema, rejectRunToolSchema, renderFenced, rerunRunToolSchema, reservedEventNamePrefix, resolveContentFormat, resolveDiffRange, resolveHeldRunId, resolveRoleLabels, resolveRunIdSugar, resolveScheduleInputs, resolveSecretsForContext, resolveSecretsWithProvenance, resolveWhenToRunOn, resourceRequestNestedSchema, resourceSpecSchema, runCancelRequestSchema, runEventMessageSchema, runEventSchema, runLineageResponseSchema, runListItemSchema, runListResponseSchema, runRerunRequestSchema, runtimeLabel, scalerAgentLabels, scalerClaimCredentialsResponseSchema, scalerClaimCredentialsSchema, scalerLabel, scalerPlatformSchema, scheduleTriggerKey, secretAuditLogColdDays, secretAuditLogWarmDays, secretAuditLogWarmSqlCase, serviceAccountActorSchema, shouldRecordAccess, shouldRecordSecretResolve, sourceDeregisterAckSchema, sourceDeregisterSchema, sourceRegistrationAckSchema, sourceRegistrationSchema, staleCheckrunCleanupSchema, stateReplayRunSchema, stateReplaySchema, statusOptionsForLevel, stepApprovalPayloadSchema, stepApprovalRequestSchema, stepApprovalResolvedSchema, stepStatusForwardSchema, stringifyActor, stripScopePrefix, stripStatefulRegexFlags, systemActorSchema, testRelayCancelRequestSchema, testRelayCancelResponseSchema, testRelayRunLogsRequestSchema, testRelayRunLogsResponseSchema, testRelayRunStatusRequestSchema, testRelayRunStatusResponseSchema, testRelayTriggerRequestSchema, testRelayTriggerResponseSchema, testRelayUploadsInitRequestSchema, testRelayUploadsInitResponseSchema, textMatchHasQuery, toCanonicalStatus, triggerRunToolSchema, truncateDecisionsToByteBudget, truncateTraceText, trustPolicyResponseSchema, trustPolicySchema, trustPolicyUpdateSchema, trustedContributorHoldReason, untrusted, upstreamSnapshotSchema, userActorSchema, utf8ByteLength, validateNoReservedLabels, validateResourceRequest, validateScopeName, validateSecretKey, webhookAckSchema, webhookRelayChunkSchema, webhookRelaySchema, webhookRelayStartSchema, workerClusterSettingsSchema, worstStatus, wrapUntrusted };
|
package/dist/labels.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ import { z } from 'zod';
|
|
|
13
13
|
* kici:os: — operating system (kici:os:linux, kici:os:macos, kici:os:windows)
|
|
14
14
|
* kici:arch: — CPU architecture (kici:arch:x64, kici:arch:amd64, kici:arch:arm64)
|
|
15
15
|
* kici:agent: — scaler/execution backend type (kici:agent:container, kici:agent:bare-metal, kici:agent:firecracker)
|
|
16
|
-
* kici:scaler: — scaler backend name (kici:scaler:
|
|
16
|
+
* kici:scaler: — scaler backend name (kici:scaler:linux-container, kici:scaler:prod-firecracker)
|
|
17
17
|
* kici:host: — hostname of the machine running the agent (kici:host:<hostname>)
|
|
18
18
|
* kici:role: — agent role (kici:role:builder, kici:role:init-runner)
|
|
19
19
|
*
|
package/dist/labels.js
CHANGED
|
@@ -15,7 +15,7 @@ import { z } from "zod";
|
|
|
15
15
|
* kici:os: — operating system (kici:os:linux, kici:os:macos, kici:os:windows)
|
|
16
16
|
* kici:arch: — CPU architecture (kici:arch:x64, kici:arch:amd64, kici:arch:arm64)
|
|
17
17
|
* kici:agent: — scaler/execution backend type (kici:agent:container, kici:agent:bare-metal, kici:agent:firecracker)
|
|
18
|
-
* kici:scaler: — scaler backend name (kici:scaler:
|
|
18
|
+
* kici:scaler: — scaler backend name (kici:scaler:linux-container, kici:scaler:prod-firecracker)
|
|
19
19
|
* kici:host: — hostname of the machine running the agent (kici:host:<hostname>)
|
|
20
20
|
* kici:role: — agent role (kici:role:builder, kici:role:init-runner)
|
|
21
21
|
*
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Browser-safe (zod only) so they live in the shared engine barrel. Each export
|
|
5
5
|
* is a Zod *raw shape* (a plain object of Zod fields) so it can be passed
|
|
6
6
|
* directly as an MCP tool `inputSchema`. The Platform-hosted developer MCP
|
|
7
|
-
* server
|
|
7
|
+
* server is the consumer.
|
|
8
8
|
*/
|
|
9
9
|
import { z } from 'zod';
|
|
10
10
|
export declare const listRunsToolSchema: {
|
package/dist/mcp/tool-schemas.js
CHANGED
|
@@ -7,7 +7,7 @@ import { z } from "zod";
|
|
|
7
7
|
* Browser-safe (zod only) so they live in the shared engine barrel. Each export
|
|
8
8
|
* is a Zod *raw shape* (a plain object of Zod fields) so it can be passed
|
|
9
9
|
* directly as an MCP tool `inputSchema`. The Platform-hosted developer MCP
|
|
10
|
-
* server
|
|
10
|
+
* server is the consumer.
|
|
11
11
|
*/
|
|
12
12
|
/**
|
|
13
13
|
* Optional organization id. When the calling user belongs to exactly one org
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
* Hand-maintained label-value policy on top of the auto-generated
|
|
3
3
|
* `MetricLabels` / `MetricKind` allow-list in
|
|
4
4
|
* `./metric-catalog.generated.ts`. Consumed by the Platform's
|
|
5
|
-
* orchestrator-metrics filter
|
|
6
|
-
* to harden the WS `orch.metrics` push path against pollution of the
|
|
5
|
+
* orchestrator-metrics filter to harden the WS `orch.metrics` push path against pollution of the
|
|
7
6
|
* monitoring system.
|
|
8
7
|
*
|
|
9
8
|
* Three layers compose:
|
|
@@ -7,8 +7,7 @@ import { MetricNames, MetricService } from "./metric-catalog.generated.js";
|
|
|
7
7
|
* Hand-maintained label-value policy on top of the auto-generated
|
|
8
8
|
* `MetricLabels` / `MetricKind` allow-list in
|
|
9
9
|
* `./metric-catalog.generated.ts`. Consumed by the Platform's
|
|
10
|
-
* orchestrator-metrics filter
|
|
11
|
-
* to harden the WS `orch.metrics` push path against pollution of the
|
|
10
|
+
* orchestrator-metrics filter to harden the WS `orch.metrics` push path against pollution of the
|
|
12
11
|
* monitoring system.
|
|
13
12
|
*
|
|
14
13
|
* Three layers compose:
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Consumers import from `@kici-dev/engine/protocol/dashboard-global-workflows`.
|
|
5
5
|
* This file is intentionally kept out of the engine barrel so it remains a
|
|
6
|
-
* server-only surface
|
|
6
|
+
* server-only surface: the barrel must stay browser-safe.
|
|
7
7
|
*/
|
|
8
8
|
export * from './messages/dashboard-global-workflows.js';
|
|
9
9
|
//# sourceMappingURL=dashboard-global-workflows.d.ts.map
|
|
@@ -24,7 +24,6 @@ export declare const WS_MAX_PAYLOAD_BYTES: number;
|
|
|
24
24
|
* FAST-PATHED: A manual validator exists in
|
|
25
25
|
* packages/orchestrator/src/ws/agent-handler.ts (isValidHeartbeat).
|
|
26
26
|
* If you change this schema, update the manual validator in the same commit.
|
|
27
|
-
* See CLAUDE.md rule: "Zod fast-path sync invariant".
|
|
28
27
|
*/
|
|
29
28
|
export declare const heartbeatSchema: z.ZodObject<{
|
|
30
29
|
type: z.ZodLiteral<"heartbeat">;
|
|
@@ -26,7 +26,6 @@ const WS_MAX_PAYLOAD_BYTES = 26214400;
|
|
|
26
26
|
* FAST-PATHED: A manual validator exists in
|
|
27
27
|
* packages/orchestrator/src/ws/agent-handler.ts (isValidHeartbeat).
|
|
28
28
|
* If you change this schema, update the manual validator in the same commit.
|
|
29
|
-
* See CLAUDE.md rule: "Zod fast-path sync invariant".
|
|
30
29
|
*/
|
|
31
30
|
const heartbeatSchema = z.object({
|
|
32
31
|
type: z.literal("heartbeat"),
|
|
@@ -34,7 +34,7 @@ export declare const dashboardRunDetailRequestSchema: z.ZodObject<{
|
|
|
34
34
|
/**
|
|
35
35
|
* Request the machine-first, provenance-tagged structured run result from the
|
|
36
36
|
* orchestrator (user-plane equivalent of the orchestrator-admin
|
|
37
|
-
* `/runs/:id/structured` endpoint). Reuses the
|
|
37
|
+
* `/runs/:id/structured` endpoint). Reuses the `AgentRunResult` shape.
|
|
38
38
|
*/
|
|
39
39
|
export declare const dashboardRunStructuredRequestSchema: z.ZodObject<{
|
|
40
40
|
type: z.ZodLiteral<"dashboard.run.structured">;
|
|
@@ -33,7 +33,7 @@ const dashboardRunDetailRequestSchema = z.object({
|
|
|
33
33
|
/**
|
|
34
34
|
* Request the machine-first, provenance-tagged structured run result from the
|
|
35
35
|
* orchestrator (user-plane equivalent of the orchestrator-admin
|
|
36
|
-
* `/runs/:id/structured` endpoint). Reuses the
|
|
36
|
+
* `/runs/:id/structured` endpoint). Reuses the `AgentRunResult` shape.
|
|
37
37
|
*/
|
|
38
38
|
const dashboardRunStructuredRequestSchema = z.object({
|
|
39
39
|
type: z.literal("dashboard.run.structured"),
|
|
@@ -605,7 +605,7 @@ const runRerunRequestSchema = z.object({
|
|
|
605
605
|
actor: actorPrincipalSchema,
|
|
606
606
|
runId: z.string(),
|
|
607
607
|
/**
|
|
608
|
-
*
|
|
608
|
+
* The Platform forwards the original run's `routing_key` so the
|
|
609
609
|
* orchestrator can probe its cold-store under the right tenant prefix
|
|
610
610
|
* when the run is missing from PG. Optional for backwards compatibility
|
|
611
611
|
* with older Platform versions in mixed deploys; if absent, the
|
|
@@ -747,7 +747,7 @@ const dashboardEventLogDetailRequestSchema = z.object({
|
|
|
747
747
|
orgId: z.string(),
|
|
748
748
|
deliveryId: z.string(),
|
|
749
749
|
/**
|
|
750
|
-
*
|
|
750
|
+
* Cold-store hint: when the Platform side has resurrected the
|
|
751
751
|
* archived `event_log` row, it forwards the `routing_key` so the
|
|
752
752
|
* orchestrator can scope its own cold-store fetch to a single tenant
|
|
753
753
|
* prefix instead of scanning every routing_key for the org.
|
|
@@ -831,7 +831,7 @@ const dashboardEventLogPayloadStreamRequestSchema = z.object({
|
|
|
831
831
|
orgId: z.string(),
|
|
832
832
|
deliveryId: z.string(),
|
|
833
833
|
/**
|
|
834
|
-
*
|
|
834
|
+
* Cold-store hint: when Platform has resurrected the archived
|
|
835
835
|
* `event_log` row, it forwards `routing_key` so the orchestrator can scope
|
|
836
836
|
* its own cold-store fetch to a single tenant prefix instead of scanning
|
|
837
837
|
* every routing_key for the org. Mirrors `dashboardEventLogDetailRequestSchema`.
|
|
@@ -378,7 +378,6 @@ export declare const jobAckSchema: z.ZodObject<{
|
|
|
378
378
|
* FAST-PATHED: A manual validator exists in
|
|
379
379
|
* packages/orchestrator/src/ws/agent-handler.ts (isValidLogChunk).
|
|
380
380
|
* If you change this schema, update the manual validator in the same commit.
|
|
381
|
-
* See CLAUDE.md rule: "Zod fast-path sync invariant".
|
|
382
381
|
*/
|
|
383
382
|
export declare const agentLogChunkSchema: z.ZodObject<{
|
|
384
383
|
type: z.ZodLiteral<"log.chunk">;
|
|
@@ -442,7 +442,6 @@ const jobAckSchema = z.object({
|
|
|
442
442
|
* FAST-PATHED: A manual validator exists in
|
|
443
443
|
* packages/orchestrator/src/ws/agent-handler.ts (isValidLogChunk).
|
|
444
444
|
* If you change this schema, update the manual validator in the same commit.
|
|
445
|
-
* See CLAUDE.md rule: "Zod fast-path sync invariant".
|
|
446
445
|
*/
|
|
447
446
|
const agentLogChunkSchema = z.object({
|
|
448
447
|
type: z.literal("log.chunk"),
|
|
@@ -41,7 +41,7 @@ const peerCapabilitiesSchema = z.object({
|
|
|
41
41
|
* version-skew signal rather than something to ignore.
|
|
42
42
|
*/
|
|
43
43
|
const scalerCapacitySummarySchema = z.object({
|
|
44
|
-
/** Scaler backend name (e.g. "
|
|
44
|
+
/** Scaler backend name (e.g. "worker-bare-metal") */
|
|
45
45
|
name: z.string().optional(),
|
|
46
46
|
/** Scaler backend type (e.g. "bare-metal", "container") */
|
|
47
47
|
type: z.string().optional(),
|
|
@@ -143,12 +143,12 @@ export type TrustPolicyUpdate = z.infer<typeof trustPolicyUpdateSchema>;
|
|
|
143
143
|
*
|
|
144
144
|
* NOT a wire-parseable schema: this shape is intentionally absent from the
|
|
145
145
|
* `platformToOrchestratorMessageSchema` discriminated union so that a rogue
|
|
146
|
-
* or compromised Platform process
|
|
146
|
+
* or compromised Platform process cannot fabricate one and bypass the
|
|
147
147
|
* on-orchestrator HMAC verification gate. The only legitimate construction
|
|
148
148
|
* site is `completeChunkedRelay` in `packages/orchestrator/src/ws/platform-client.ts`,
|
|
149
149
|
* which synthesizes this shape AFTER `onVerifyInbound` returns `'accepted'`.
|
|
150
150
|
*
|
|
151
|
-
*
|
|
151
|
+
* The Platform migration that dropped the webhook secret columns
|
|
152
152
|
* makes the orch-side `verifyInboundWebhook` (called from `onVerifyInbound` on
|
|
153
153
|
* the chunked relay path `webhook.relay.start` / `webhook.relay.chunk`) the
|
|
154
154
|
* sole trust boundary against a malicious Platform; keeping this schema OUT
|
|
@@ -310,7 +310,7 @@ export type PlatformCapabilitiesMessage = z.infer<typeof platformCapabilitiesMes
|
|
|
310
310
|
* Platform's monitoring system: a malformed or hostile push fails Zod
|
|
311
311
|
* parse at the WS edge and never reaches the aggregator or the Mimir
|
|
312
312
|
* relay. The content-level allow-list (catalog) is enforced one step
|
|
313
|
-
* deeper
|
|
313
|
+
* deeper, in the Platform's orchestrator-metrics filter.
|
|
314
314
|
*
|
|
315
315
|
* Caps:
|
|
316
316
|
* - 2000 metric data points per push (one orch ships ~60 today)
|
|
@@ -552,10 +552,10 @@ export type OrchCapabilitiesUpdate = z.infer<typeof orchCapabilitiesUpdateSchema
|
|
|
552
552
|
* The single-frame `webhookRelaySchema` is intentionally NOT a member of this
|
|
553
553
|
* union: that shape carries an attacker-controlled `payload` and pre-existed
|
|
554
554
|
* the chunked relay's on-orch HMAC verification, so accepting it on the wire
|
|
555
|
-
* would let a compromised Platform
|
|
555
|
+
* would let a compromised Platform fabricate webhook deliveries that
|
|
556
556
|
* bypass the only trust boundary against a malicious Platform (see the
|
|
557
|
-
* docblock on `webhookRelaySchema` above and migration
|
|
558
|
-
*
|
|
557
|
+
* docblock on `webhookRelaySchema` above and the Platform migration that
|
|
558
|
+
* dropped the webhook secret columns).
|
|
559
559
|
* The chunked path `webhook.relay.start` + `webhook.relay.chunk` is the sole
|
|
560
560
|
* legitimate route from Platform to `onWebhookRelay`. */
|
|
561
561
|
export declare const platformToOrchestratorMessageSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
@@ -173,12 +173,12 @@ const trustPolicyUpdateSchema = z.object({
|
|
|
173
173
|
*
|
|
174
174
|
* NOT a wire-parseable schema: this shape is intentionally absent from the
|
|
175
175
|
* `platformToOrchestratorMessageSchema` discriminated union so that a rogue
|
|
176
|
-
* or compromised Platform process
|
|
176
|
+
* or compromised Platform process cannot fabricate one and bypass the
|
|
177
177
|
* on-orchestrator HMAC verification gate. The only legitimate construction
|
|
178
178
|
* site is `completeChunkedRelay` in `packages/orchestrator/src/ws/platform-client.ts`,
|
|
179
179
|
* which synthesizes this shape AFTER `onVerifyInbound` returns `'accepted'`.
|
|
180
180
|
*
|
|
181
|
-
*
|
|
181
|
+
* The Platform migration that dropped the webhook secret columns
|
|
182
182
|
* makes the orch-side `verifyInboundWebhook` (called from `onVerifyInbound` on
|
|
183
183
|
* the chunked relay path `webhook.relay.start` / `webhook.relay.chunk`) the
|
|
184
184
|
* sole trust boundary against a malicious Platform; keeping this schema OUT
|
|
@@ -363,7 +363,7 @@ const platformCapabilitiesMessageSchema = z.object({
|
|
|
363
363
|
* Platform's monitoring system: a malformed or hostile push fails Zod
|
|
364
364
|
* parse at the WS edge and never reaches the aggregator or the Mimir
|
|
365
365
|
* relay. The content-level allow-list (catalog) is enforced one step
|
|
366
|
-
* deeper
|
|
366
|
+
* deeper, in the Platform's orchestrator-metrics filter.
|
|
367
367
|
*
|
|
368
368
|
* Caps:
|
|
369
369
|
* - 2000 metric data points per push (one orch ships ~60 today)
|
|
@@ -543,10 +543,10 @@ const orchCapabilitiesUpdateSchema = z.object({
|
|
|
543
543
|
* The single-frame `webhookRelaySchema` is intentionally NOT a member of this
|
|
544
544
|
* union: that shape carries an attacker-controlled `payload` and pre-existed
|
|
545
545
|
* the chunked relay's on-orch HMAC verification, so accepting it on the wire
|
|
546
|
-
* would let a compromised Platform
|
|
546
|
+
* would let a compromised Platform fabricate webhook deliveries that
|
|
547
547
|
* bypass the only trust boundary against a malicious Platform (see the
|
|
548
|
-
* docblock on `webhookRelaySchema` above and migration
|
|
549
|
-
*
|
|
548
|
+
* docblock on `webhookRelaySchema` above and the Platform migration that
|
|
549
|
+
* dropped the webhook secret columns).
|
|
550
550
|
* The chunked path `webhook.relay.start` + `webhook.relay.chunk` is the sole
|
|
551
551
|
* legitimate route from Platform to `onWebhookRelay`. */
|
|
552
552
|
const platformToOrchestratorMessageSchema = z.discriminatedUnion("type", [
|
|
@@ -14,7 +14,7 @@ import { z } from 'zod';
|
|
|
14
14
|
* matched via the per-event lock file pipeline on the same-source path
|
|
15
15
|
* (e.g. a real GitHub push webhook). Registering them in addition is
|
|
16
16
|
* what makes cross-source dispatch work for a generic webhook that
|
|
17
|
-
* targets an externally-hosted repo
|
|
17
|
+
* targets an externally-hosted repo: the cross-source
|
|
18
18
|
* branch looks up `(customer_id, repo_identifier)` and reuses the
|
|
19
19
|
* stored `provider_context` (installation id, app id, …) to mint
|
|
20
20
|
* credentials for the actual provider bundle that owns the repo.
|
|
@@ -16,7 +16,7 @@ import { z } from "zod";
|
|
|
16
16
|
* matched via the per-event lock file pipeline on the same-source path
|
|
17
17
|
* (e.g. a real GitHub push webhook). Registering them in addition is
|
|
18
18
|
* what makes cross-source dispatch work for a generic webhook that
|
|
19
|
-
* targets an externally-hosted repo
|
|
19
|
+
* targets an externally-hosted repo: the cross-source
|
|
20
20
|
* branch looks up `(customer_id, repo_identifier)` and reuses the
|
|
21
21
|
* stored `provider_context` (installation id, app id, …) to mint
|
|
22
22
|
* credentials for the actual provider bundle that owns the repo.
|
|
@@ -30,6 +30,12 @@ export interface WorkflowDecision {
|
|
|
30
30
|
checks: TraceEntry[];
|
|
31
31
|
/** Summary reason */
|
|
32
32
|
summary: string;
|
|
33
|
+
/**
|
|
34
|
+
* The `paths` lists of triggers that matched only because the changed files
|
|
35
|
+
* were unavailable while a git range existed. Set only when no trigger
|
|
36
|
+
* matched outright; the agent decides these from its clone.
|
|
37
|
+
*/
|
|
38
|
+
deferredPaths?: string[][];
|
|
33
39
|
}
|
|
34
40
|
/**
|
|
35
41
|
* Max characters of any free-text field a trace entry carries, so an
|
|
@@ -159,9 +165,9 @@ export declare function createCommitMessageTraceEntry(args: {
|
|
|
159
165
|
* What a withheld trace field is replaced with when the reader does not hold
|
|
160
166
|
* `event_log:read_payload`.
|
|
161
167
|
*
|
|
162
|
-
* Lives here rather than beside the Platform's redactor because
|
|
163
|
-
*
|
|
164
|
-
*
|
|
168
|
+
* Lives here rather than beside the Platform's redactor because it crosses
|
|
169
|
+
* packages: the Platform writes it, the dashboard renders it, and tests assert
|
|
170
|
+
* the permission boundary against it. A literal repeated at each site
|
|
165
171
|
* would drift into a marker one of them no longer recognizes.
|
|
166
172
|
*/
|
|
167
173
|
export declare const REDACTED_TRACE_FIELD = "[redacted \u2014 requires event_log:read_payload]";
|
|
@@ -145,9 +145,9 @@ function createCommitMessageTraceEntry(args) {
|
|
|
145
145
|
* What a withheld trace field is replaced with when the reader does not hold
|
|
146
146
|
* `event_log:read_payload`.
|
|
147
147
|
*
|
|
148
|
-
* Lives here rather than beside the Platform's redactor because
|
|
149
|
-
*
|
|
150
|
-
*
|
|
148
|
+
* Lives here rather than beside the Platform's redactor because it crosses
|
|
149
|
+
* packages: the Platform writes it, the dashboard renders it, and tests assert
|
|
150
|
+
* the permission boundary against it. A literal repeated at each site
|
|
151
151
|
* would drift into a marker one of them no longer recognizes.
|
|
152
152
|
*/
|
|
153
153
|
const REDACTED_TRACE_FIELD = "[redacted — requires event_log:read_payload]";
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which files an event changed, expressed as a git range.
|
|
3
|
+
*
|
|
4
|
+
* The one definition the orchestrator's changed-files fetchers and the agent's
|
|
5
|
+
* clone diff share, so both layers reach the same answer from the same event.
|
|
6
|
+
* Pure — no I/O and no `node:*` import — because the engine barrel is
|
|
7
|
+
* browser-safe.
|
|
8
|
+
*/
|
|
9
|
+
import { z } from 'zod';
|
|
10
|
+
export declare const diffRangeKindSchema: z.ZodEnum<{
|
|
11
|
+
deleted: "deleted";
|
|
12
|
+
"new-branch": "new-branch";
|
|
13
|
+
none: "none";
|
|
14
|
+
pr: "pr";
|
|
15
|
+
"two-dot": "two-dot";
|
|
16
|
+
}>;
|
|
17
|
+
export type DiffRangeKind = z.infer<typeof diffRangeKindSchema>;
|
|
18
|
+
declare const Kind: {
|
|
19
|
+
deleted: "deleted";
|
|
20
|
+
"new-branch": "new-branch";
|
|
21
|
+
none: "none";
|
|
22
|
+
pr: "pr";
|
|
23
|
+
"two-dot": "two-dot";
|
|
24
|
+
};
|
|
25
|
+
export type DiffRange =
|
|
26
|
+
/** `git diff base..head` — a push to an existing branch. */
|
|
27
|
+
{
|
|
28
|
+
kind: (typeof Kind)['two-dot'];
|
|
29
|
+
base: string;
|
|
30
|
+
head: string;
|
|
31
|
+
}
|
|
32
|
+
/** Three-dot `defaultBranch...head` — the files a new branch adds. */
|
|
33
|
+
| {
|
|
34
|
+
kind: (typeof Kind)['new-branch'];
|
|
35
|
+
defaultBranch: string;
|
|
36
|
+
head: string;
|
|
37
|
+
}
|
|
38
|
+
/** A deleted branch: no files changed. */
|
|
39
|
+
| {
|
|
40
|
+
kind: typeof Kind.deleted;
|
|
41
|
+
}
|
|
42
|
+
/** Three-dot `base...HEAD` — a pull request. */
|
|
43
|
+
| {
|
|
44
|
+
kind: typeof Kind.pr;
|
|
45
|
+
base: string;
|
|
46
|
+
}
|
|
47
|
+
/** No range exists: nobody can compute a diff for this event. */
|
|
48
|
+
| {
|
|
49
|
+
kind: typeof Kind.none;
|
|
50
|
+
};
|
|
51
|
+
/** The event fields a range is read from; `SimulatedEvent` and the SDK `EventPayload` both fit. */
|
|
52
|
+
export interface DiffRangeEvent {
|
|
53
|
+
type: string;
|
|
54
|
+
targetBranch?: string;
|
|
55
|
+
baseBranch?: string;
|
|
56
|
+
defaultBranch?: string;
|
|
57
|
+
payload?: Record<string, unknown>;
|
|
58
|
+
}
|
|
59
|
+
/** Whether a SHA is git's all-zero placeholder (a created or deleted ref). */
|
|
60
|
+
export declare function isZeroSha(sha: string): boolean;
|
|
61
|
+
/** The git range an event changed, or `none` when no diff exists anywhere. */
|
|
62
|
+
export declare function resolveDiffRange(event: DiffRangeEvent): DiffRange;
|
|
63
|
+
/** Whether a range lets an agent compute the diff the orchestrator could not. */
|
|
64
|
+
export declare function isDeferrableRange(range: DiffRange): boolean;
|
|
65
|
+
export {};
|
|
66
|
+
//# sourceMappingURL=diff-range.d.ts.map
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import "../rolldown-runtime-ClRpJifh.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/trigger/diff-range.ts
|
|
4
|
+
/**
|
|
5
|
+
* Which files an event changed, expressed as a git range.
|
|
6
|
+
*
|
|
7
|
+
* The one definition the orchestrator's changed-files fetchers and the agent's
|
|
8
|
+
* clone diff share, so both layers reach the same answer from the same event.
|
|
9
|
+
* Pure — no I/O and no `node:*` import — because the engine barrel is
|
|
10
|
+
* browser-safe.
|
|
11
|
+
*/
|
|
12
|
+
const diffRangeKindSchema = z.enum([
|
|
13
|
+
"two-dot",
|
|
14
|
+
"new-branch",
|
|
15
|
+
"deleted",
|
|
16
|
+
"pr",
|
|
17
|
+
"none"
|
|
18
|
+
]);
|
|
19
|
+
const Kind = diffRangeKindSchema.enum;
|
|
20
|
+
const ZERO_SHA_RE = /^0+$/;
|
|
21
|
+
/** Whether a SHA is git's all-zero placeholder (a created or deleted ref). */
|
|
22
|
+
function isZeroSha(sha) {
|
|
23
|
+
return ZERO_SHA_RE.test(sha);
|
|
24
|
+
}
|
|
25
|
+
function nonEmptyString(value) {
|
|
26
|
+
return typeof value === "string" && value.length > 0 ? value : void 0;
|
|
27
|
+
}
|
|
28
|
+
function defaultBranchOf(event) {
|
|
29
|
+
if (event.defaultBranch) return event.defaultBranch;
|
|
30
|
+
const repository = event.payload?.repository;
|
|
31
|
+
if (repository === null || typeof repository !== "object") return void 0;
|
|
32
|
+
return nonEmptyString(repository.default_branch);
|
|
33
|
+
}
|
|
34
|
+
/** The git range an event changed, or `none` when no diff exists anywhere. */
|
|
35
|
+
function resolveDiffRange(event) {
|
|
36
|
+
if (event.type === "pull_request") {
|
|
37
|
+
const base = event.baseBranch ?? event.targetBranch;
|
|
38
|
+
return base ? {
|
|
39
|
+
kind: Kind.pr,
|
|
40
|
+
base
|
|
41
|
+
} : { kind: Kind.none };
|
|
42
|
+
}
|
|
43
|
+
if (event.type !== "push") return { kind: Kind.none };
|
|
44
|
+
const before = nonEmptyString(event.payload?.before);
|
|
45
|
+
const after = nonEmptyString(event.payload?.after);
|
|
46
|
+
if (!before || !after) return { kind: Kind.none };
|
|
47
|
+
if (isZeroSha(after)) return { kind: Kind.deleted };
|
|
48
|
+
if (!isZeroSha(before)) return {
|
|
49
|
+
kind: Kind["two-dot"],
|
|
50
|
+
base: before,
|
|
51
|
+
head: after
|
|
52
|
+
};
|
|
53
|
+
const defaultBranch = defaultBranchOf(event);
|
|
54
|
+
if (!defaultBranch || defaultBranch === event.targetBranch) return { kind: Kind.none };
|
|
55
|
+
return {
|
|
56
|
+
kind: Kind["new-branch"],
|
|
57
|
+
defaultBranch,
|
|
58
|
+
head: after
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
/** Whether a range lets an agent compute the diff the orchestrator could not. */
|
|
62
|
+
function isDeferrableRange(range) {
|
|
63
|
+
return range.kind === Kind["two-dot"] || range.kind === Kind["new-branch"] || range.kind === Kind.pr;
|
|
64
|
+
}
|
|
65
|
+
//#endregion
|
|
66
|
+
export { diffRangeKindSchema, isDeferrableRange, isZeroSha, resolveDiffRange };
|
|
67
|
+
|
|
68
|
+
//# sourceMappingURL=diff-range.js.map
|
|
@@ -17,10 +17,23 @@ export declare function matchPathPatterns(paths: readonly string[], changedFiles
|
|
|
17
17
|
* Empty array = no filtering (matches all repos).
|
|
18
18
|
*/
|
|
19
19
|
export declare function matchRepoPatterns(repos: readonly LockBranchPattern[], sourceRepo: string): boolean;
|
|
20
|
+
/** Set by a push/pr trigger whose `paths` check passed only because the diff was unavailable. */
|
|
21
|
+
/** Trace value of a `paths` check that read an unavailable diff. */
|
|
22
|
+
export declare const UnavailablePathsTrace: {
|
|
23
|
+
/** A git range exists: the agent decides from its clone. */
|
|
24
|
+
readonly DecidedOnAgent: '[unavailable — decided on agent]';
|
|
25
|
+
/** No range the agent can diff: the workflow runs conservatively. */
|
|
26
|
+
readonly Conservative: '[unavailable — matched conservatively]';
|
|
27
|
+
};
|
|
28
|
+
/** Appended to a matched decision's summary when its paths are left to the agent. */
|
|
29
|
+
export declare const DEFERRED_PATHS_SUMMARY_SUFFIX = " \u2014 paths decided on the agent";
|
|
30
|
+
export interface TriggerMatchNotes {
|
|
31
|
+
conservativePaths?: readonly string[];
|
|
32
|
+
}
|
|
20
33
|
/**
|
|
21
34
|
* Match a trigger against a simulated event.
|
|
22
35
|
*/
|
|
23
|
-
export declare function matchTrigger(trigger: LockTrigger, event: SimulatedEvent, traces: TraceEntry[]): boolean;
|
|
36
|
+
export declare function matchTrigger(trigger: LockTrigger, event: SimulatedEvent, traces: TraceEntry[], notes?: TriggerMatchNotes): boolean;
|
|
24
37
|
/**
|
|
25
38
|
* Match all triggers for a workflow against an event.
|
|
26
39
|
* Returns WorkflowDecision with full trace.
|
package/dist/trigger/matcher.js
CHANGED
|
@@ -2,6 +2,7 @@ import "../rolldown-runtime-ClRpJifh.js";
|
|
|
2
2
|
import { evaluateTextMatch } from "./text-match.js";
|
|
3
3
|
import { TraceCheck, createCommitMessageTraceEntry, createTraceEntry, createWorkflowDecision } from "./decision-trace.js";
|
|
4
4
|
import { getCompiledRegex, getGlobMatcher, getRepoGlobMatcher } from "./compiled-matchers.js";
|
|
5
|
+
import { isDeferrableRange, resolveDiffRange } from "./diff-range.js";
|
|
5
6
|
import { matchJsonPath, matchJsonPathNot } from "./jsonpath-matcher.js";
|
|
6
7
|
//#region src/trigger/matcher.ts
|
|
7
8
|
/**
|
|
@@ -142,10 +143,37 @@ function evaluateCommitMessageFilter(trigger, event, traces) {
|
|
|
142
143
|
}));
|
|
143
144
|
return result.pass;
|
|
144
145
|
}
|
|
146
|
+
/** Set by a push/pr trigger whose `paths` check passed only because the diff was unavailable. */
|
|
147
|
+
/** Trace value of a `paths` check that read an unavailable diff. */
|
|
148
|
+
const UnavailablePathsTrace = {
|
|
149
|
+
/** A git range exists: the agent decides from its clone. */
|
|
150
|
+
DecidedOnAgent: "[unavailable — decided on agent]",
|
|
151
|
+
/** No range the agent can diff: the workflow runs conservatively. */
|
|
152
|
+
Conservative: "[unavailable — matched conservatively]"
|
|
153
|
+
};
|
|
154
|
+
/** Appended to a matched decision's summary when its paths are left to the agent. */
|
|
155
|
+
const DEFERRED_PATHS_SUMMARY_SUFFIX = " — paths decided on the agent";
|
|
156
|
+
/**
|
|
157
|
+
* Evaluate a push/pr trigger's `paths` list and trace it. An `unavailable`
|
|
158
|
+
* diff matches; when the event still has a git range, the match is recorded in
|
|
159
|
+
* `notes` so the workflow's path decision moves to the agent's clone.
|
|
160
|
+
*/
|
|
161
|
+
function checkTriggerPaths(paths, event, traces, notes) {
|
|
162
|
+
if (paths.length === 0) return true;
|
|
163
|
+
const changedFiles = event.changedFiles ?? [];
|
|
164
|
+
const { include, exclude } = splitStringPatterns(paths);
|
|
165
|
+
const unavailable = event.changedFilesStatus === "unavailable";
|
|
166
|
+
const deferrable = unavailable && isDeferrableRange(resolveDiffRange(event));
|
|
167
|
+
const matches = matchPathPatterns(paths, changedFiles, event.changedFilesStatus);
|
|
168
|
+
const value = !unavailable ? `[${changedFiles.join(", ")}]` : deferrable ? UnavailablePathsTrace.DecidedOnAgent : UnavailablePathsTrace.Conservative;
|
|
169
|
+
traces.push(createTraceEntry("paths", `include: [${include.join(", ")}] exclude: [${exclude.join(", ")}]`, value, matches));
|
|
170
|
+
if (deferrable && notes) notes.conservativePaths = paths;
|
|
171
|
+
return matches;
|
|
172
|
+
}
|
|
145
173
|
/**
|
|
146
174
|
* Match a PR trigger against a simulated event.
|
|
147
175
|
*/
|
|
148
|
-
function matchPrTrigger(trigger, event, traces) {
|
|
176
|
+
function matchPrTrigger(trigger, event, traces, notes) {
|
|
149
177
|
if (event.type !== "pull_request") {
|
|
150
178
|
traces.push(createTraceEntry("event type", "pull_request", event.type, false));
|
|
151
179
|
return false;
|
|
@@ -171,13 +199,7 @@ function matchPrTrigger(trigger, event, traces) {
|
|
|
171
199
|
traces.push(createTraceEntry("source branch", trigger.sourceBranches.map((p) => p.pattern).join("|"), event.sourceBranch, matches));
|
|
172
200
|
if (!matches) return false;
|
|
173
201
|
}
|
|
174
|
-
if (trigger.paths
|
|
175
|
-
const changedFiles = event.changedFiles ?? [];
|
|
176
|
-
const { include, exclude } = splitStringPatterns(trigger.paths);
|
|
177
|
-
const matches = matchPathPatterns(trigger.paths, changedFiles, event.changedFilesStatus);
|
|
178
|
-
traces.push(createTraceEntry("paths", `include: [${include.join(", ")}] exclude: [${exclude.join(", ")}]`, event.changedFilesStatus === "unavailable" ? "[unavailable — matched conservatively]" : `[${changedFiles.join(", ")}]`, matches));
|
|
179
|
-
if (!matches) return false;
|
|
180
|
-
}
|
|
202
|
+
if (!checkTriggerPaths(trigger.paths, event, traces, notes)) return false;
|
|
181
203
|
if (!evaluateCommitMessageFilter(trigger, event, traces)) return false;
|
|
182
204
|
if (!evaluateRepoFilter(trigger, event, traces)) return false;
|
|
183
205
|
return true;
|
|
@@ -185,7 +207,7 @@ function matchPrTrigger(trigger, event, traces) {
|
|
|
185
207
|
/**
|
|
186
208
|
* Match a push trigger against a simulated event.
|
|
187
209
|
*/
|
|
188
|
-
function matchPushTrigger(trigger, event, traces) {
|
|
210
|
+
function matchPushTrigger(trigger, event, traces, notes) {
|
|
189
211
|
if (event.type !== "push") {
|
|
190
212
|
traces.push(createTraceEntry("event type", "push", event.type, false));
|
|
191
213
|
return false;
|
|
@@ -196,13 +218,7 @@ function matchPushTrigger(trigger, event, traces) {
|
|
|
196
218
|
traces.push(createTraceEntry("branch", trigger.branches.map((p) => p.pattern).join("|"), event.targetBranch, matches));
|
|
197
219
|
if (!matches) return false;
|
|
198
220
|
}
|
|
199
|
-
if (trigger.paths
|
|
200
|
-
const changedFiles = event.changedFiles ?? [];
|
|
201
|
-
const { include, exclude } = splitStringPatterns(trigger.paths);
|
|
202
|
-
const matches = matchPathPatterns(trigger.paths, changedFiles, event.changedFilesStatus);
|
|
203
|
-
traces.push(createTraceEntry("paths", `include: [${include.join(", ")}] exclude: [${exclude.join(", ")}]`, event.changedFilesStatus === "unavailable" ? "[unavailable — matched conservatively]" : `[${changedFiles.join(", ")}]`, matches));
|
|
204
|
-
if (!matches) return false;
|
|
205
|
-
}
|
|
221
|
+
if (!checkTriggerPaths(trigger.paths, event, traces, notes)) return false;
|
|
206
222
|
if (!evaluateCommitMessageFilter(trigger, event, traces)) return false;
|
|
207
223
|
if (!evaluateRepoFilter(trigger, event, traces)) return false;
|
|
208
224
|
return true;
|
|
@@ -737,10 +753,10 @@ function matchLifecycleTrigger(trigger, event, traces) {
|
|
|
737
753
|
/**
|
|
738
754
|
* Match a trigger against a simulated event.
|
|
739
755
|
*/
|
|
740
|
-
function matchTrigger(trigger, event, traces) {
|
|
756
|
+
function matchTrigger(trigger, event, traces, notes) {
|
|
741
757
|
switch (trigger._type) {
|
|
742
|
-
case "pr": return matchPrTrigger(trigger, event, traces);
|
|
743
|
-
case "push": return matchPushTrigger(trigger, event, traces);
|
|
758
|
+
case "pr": return matchPrTrigger(trigger, event, traces, notes);
|
|
759
|
+
case "push": return matchPushTrigger(trigger, event, traces, notes);
|
|
744
760
|
case "tag": return matchTagTrigger(trigger, event, traces);
|
|
745
761
|
case "comment": return matchCommentTrigger(trigger, event, traces);
|
|
746
762
|
case "review": return matchReviewTrigger(trigger, event, traces);
|
|
@@ -772,13 +788,29 @@ function matchTrigger(trigger, event, traces) {
|
|
|
772
788
|
function matchWorkflowTriggers(workflow, event) {
|
|
773
789
|
const allTraces = [];
|
|
774
790
|
if (workflow.triggers.length === 0) return createWorkflowDecision(workflow.name, false, [], void 0, "No triggers defined");
|
|
791
|
+
let firstDeferred;
|
|
792
|
+
const deferredPaths = [];
|
|
775
793
|
for (let i = 0; i < workflow.triggers.length; i++) {
|
|
776
794
|
const trigger = workflow.triggers[i];
|
|
777
795
|
if (trigger == null) continue;
|
|
778
796
|
const triggerTraces = [];
|
|
779
|
-
|
|
797
|
+
const notes = {};
|
|
798
|
+
if (matchTrigger(trigger, event, triggerTraces, notes)) {
|
|
799
|
+
if (notes.conservativePaths === void 0) return createWorkflowDecision(workflow.name, true, triggerTraces, i, `Matched trigger ${i + 1} (${trigger._type})`);
|
|
800
|
+
deferredPaths.push([...notes.conservativePaths]);
|
|
801
|
+
firstDeferred ??= {
|
|
802
|
+
index: i,
|
|
803
|
+
traces: triggerTraces,
|
|
804
|
+
type: trigger._type
|
|
805
|
+
};
|
|
806
|
+
continue;
|
|
807
|
+
}
|
|
780
808
|
allTraces.push(...triggerTraces);
|
|
781
809
|
}
|
|
810
|
+
if (firstDeferred) return {
|
|
811
|
+
...createWorkflowDecision(workflow.name, true, firstDeferred.traces, firstDeferred.index, `Matched trigger ${firstDeferred.index + 1} (${firstDeferred.type})${DEFERRED_PATHS_SUMMARY_SUFFIX}`),
|
|
812
|
+
deferredPaths
|
|
813
|
+
};
|
|
782
814
|
return createWorkflowDecision(workflow.name, false, allTraces, void 0, "No triggers matched");
|
|
783
815
|
}
|
|
784
816
|
/**
|
|
@@ -788,6 +820,6 @@ function matchAllWorkflows(workflows, event) {
|
|
|
788
820
|
return workflows.map((w) => matchWorkflowTriggers(w, event));
|
|
789
821
|
}
|
|
790
822
|
//#endregion
|
|
791
|
-
export { matchAllWorkflows, matchBranchPattern, matchPathPatterns, matchRepoPatterns, matchTrigger, matchWorkflowTriggers };
|
|
823
|
+
export { DEFERRED_PATHS_SUMMARY_SUFFIX, UnavailablePathsTrace, matchAllWorkflows, matchBranchPattern, matchPathPatterns, matchRepoPatterns, matchTrigger, matchWorkflowTriggers };
|
|
792
824
|
|
|
793
825
|
//# sourceMappingURL=matcher.js.map
|
package/dist/trigger/types.d.ts
CHANGED
|
@@ -732,9 +732,15 @@ export interface ResolvedSandboxGrant {
|
|
|
732
732
|
capabilities?: string[];
|
|
733
733
|
/** Network override; when set it wins over the config network mode. */
|
|
734
734
|
network?: SandboxNetworkMode;
|
|
735
|
-
/**
|
|
735
|
+
/**
|
|
736
|
+
* Force a read-only rootfs. The orchestrator does not grant it; the agent's
|
|
737
|
+
* own config sets it.
|
|
738
|
+
*/
|
|
736
739
|
readonlyRootfs?: boolean;
|
|
737
|
-
/**
|
|
740
|
+
/**
|
|
741
|
+
* Run the container as this user. The orchestrator does not grant it; the
|
|
742
|
+
* agent's own config sets it.
|
|
743
|
+
*/
|
|
738
744
|
user?: string;
|
|
739
745
|
}
|
|
740
746
|
/**
|
|
@@ -1125,6 +1131,12 @@ export interface SimulatedEvent {
|
|
|
1125
1131
|
isForkPR?: boolean;
|
|
1126
1132
|
/** Base branch ref for PR events (the branch being merged into). */
|
|
1127
1133
|
baseBranch?: string;
|
|
1134
|
+
/**
|
|
1135
|
+
* The repository's default branch, when the delivery names it. A new-branch
|
|
1136
|
+
* push diffs against it (`resolveDiffRange`); absent, the range falls back to
|
|
1137
|
+
* `payload.repository.default_branch`.
|
|
1138
|
+
*/
|
|
1139
|
+
defaultBranch?: string;
|
|
1128
1140
|
/** Sender username from the webhook payload (e.g. GitHub login). */
|
|
1129
1141
|
senderUsername?: string;
|
|
1130
1142
|
/**
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kici-dev/engine",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.13.0",
|
|
4
4
|
"description": "Shared business logic for the KiCI CI/CD stack: protocol, triggers, state machine, and provider interfaces used by the Platform relay, orchestrator, and compiler.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ci",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
},
|
|
24
24
|
"license": "AGPL-3.0-only",
|
|
25
25
|
"engines": {
|
|
26
|
-
"node": ">=24"
|
|
26
|
+
"node": ">=24.5.0"
|
|
27
27
|
},
|
|
28
28
|
"type": "module",
|
|
29
29
|
"files": [
|
package/sbom.spdx.json
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
"spdxVersion": "SPDX-2.3",
|
|
3
3
|
"dataLicense": "CC0-1.0",
|
|
4
4
|
"SPDXID": "SPDXRef-DOCUMENT",
|
|
5
|
-
"name": "@kici-dev/engine@0.
|
|
6
|
-
"documentNamespace": "https://kici.dev/sbom/%40kici-dev%2Fengine/0.
|
|
5
|
+
"name": "@kici-dev/engine@0.13.0",
|
|
6
|
+
"documentNamespace": "https://kici.dev/sbom/%40kici-dev%2Fengine/0.13.0/4b96027f-523a-4ba7-ab05-2b81a6793c87",
|
|
7
7
|
"creationInfo": {
|
|
8
|
-
"created": "2026-09-
|
|
8
|
+
"created": "2026-09-30T15:38:56Z",
|
|
9
9
|
"creators": [
|
|
10
10
|
"Tool: kici-sbom-generator"
|
|
11
11
|
]
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
{
|
|
55
55
|
"SPDXID": "SPDXRef-RootPackage",
|
|
56
56
|
"name": "@kici-dev/engine",
|
|
57
|
-
"versionInfo": "0.
|
|
57
|
+
"versionInfo": "0.13.0",
|
|
58
58
|
"downloadLocation": "NOASSERTION",
|
|
59
59
|
"filesAnalyzed": false,
|
|
60
60
|
"licenseConcluded": "NOASSERTION",
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
{
|
|
66
66
|
"referenceCategory": "PACKAGE-MANAGER",
|
|
67
67
|
"referenceType": "purl",
|
|
68
|
-
"referenceLocator": "pkg:npm/%40kici-dev/engine@0.
|
|
68
|
+
"referenceLocator": "pkg:npm/%40kici-dev/engine@0.13.0"
|
|
69
69
|
}
|
|
70
70
|
],
|
|
71
71
|
"description": "Shared business logic for the KiCI CI/CD stack: protocol, triggers, state machine, and provider interfaces used by the Platform relay, orchestrator, and compiler.",
|