@kici-dev/orchestrator 0.1.24 → 0.1.26
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/app.d.ts +24 -0
- package/dist/audit/access-log.d.ts +4 -0
- package/dist/cancel/cancel-run.d.ts +2 -0
- package/dist/cli/api-client.d.ts +2 -0
- package/dist/cli/commands/attestations-list.d.ts +49 -0
- package/dist/cli/commands/attestations-retry.d.ts +28 -0
- package/dist/cli/commands/attestations.d.ts +2 -1
- package/dist/cli/commands/cluster.d.ts +3 -0
- package/dist/cli/local-github-ingress-url.d.ts +8 -0
- package/dist/cli.js +1021 -404
- package/dist/cluster/cluster-identity.d.ts +11 -0
- package/dist/cluster/reconcile-identity.d.ts +50 -0
- package/dist/cold-store/load-access-log-range.d.ts +4 -0
- package/dist/config.d.ts +2 -0
- package/dist/dashboard/attestation-filters.d.ts +62 -1
- package/dist/dashboard/handler.d.ts +24 -4
- package/dist/db/migrations/061_execution_runs_environment_id.d.ts +4 -0
- package/dist/db/migrations/062_execution_runs_agent_label.d.ts +4 -0
- package/dist/db/migrations/063_access_log_agent_label_index.d.ts +10 -0
- package/dist/db/migrations/064_execution_jobs_skipped_environments.d.ts +17 -0
- package/dist/db/migrations/065_pending_attestations.d.ts +22 -0
- package/dist/db/migrations/066_pending_attestations_rejected.d.ts +13 -0
- package/dist/db/types.d.ts +58 -0
- package/dist/environments/protection/satisfiability.d.ts +14 -9
- package/dist/events/circuit-breaker.d.ts +8 -5
- package/dist/events/event-router.d.ts +12 -4
- package/dist/events/event-store.d.ts +21 -3
- package/dist/events/trust-store.d.ts +6 -1
- package/dist/events/types.d.ts +6 -1
- package/dist/helpers/rate-limiter.d.ts +17 -2
- package/dist/index.js +2 -1
- package/dist/metrics/prometheus.d.ts +6 -0
- package/dist/pipeline/dispatch-matched-workflow.d.ts +6 -0
- package/dist/pipeline/manual-schedule.d.ts +1 -1
- package/dist/pipeline/process-webhook.d.ts +14 -1
- package/dist/pipeline/rerun.d.ts +1 -1
- package/dist/pipeline/test-pipeline.d.ts +6 -0
- package/dist/provenance/attestation-retrier.d.ts +92 -0
- package/dist/provenance/backfill-run.d.ts +41 -0
- package/dist/provenance/pending-attestations-repo.d.ts +64 -0
- package/dist/provenance/verify-at-ingest.d.ts +10 -3
- package/dist/reporting/execution-tracker.d.ts +15 -3
- package/dist/reporting/run-aggregator.d.ts +5 -1
- package/dist/routes/admin-access-log.d.ts +2 -1
- package/dist/routes/admin.d.ts +14 -0
- package/dist/routes/github-webhook.d.ts +37 -0
- package/dist/routes/health.d.ts +9 -0
- package/dist/routes/webhooks.d.ts +2 -4
- package/dist/server.js +3462 -1886
- package/dist/sources/source-store.d.ts +6 -0
- package/dist/stale-detector/workflow-deadline-detector.d.ts +25 -0
- package/dist/standalone.js +19335 -18258
- package/dist/webhook/dedup.d.ts +14 -0
- package/dist/ws/agent-handler.d.ts +23 -0
- package/dist/ws/oidc-token-relay.d.ts +31 -21
- package/dist/ws/orch-rpc.d.ts +9 -0
- package/dist/ws/platform-client.d.ts +18 -1
- package/dist/ws/test-relay-handlers.d.ts +2 -0
- package/installer-image-digests.json +3 -3
- package/package.json +5 -5
- package/sbom.spdx.json +55 -50
package/dist/webhook/dedup.d.ts
CHANGED
|
@@ -24,6 +24,20 @@ export declare class DedupCache {
|
|
|
24
24
|
* Idempotent -- duplicate marks are silently ignored.
|
|
25
25
|
*/
|
|
26
26
|
mark(deliveryId: string): Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* Atomically claim a delivery ID. Returns `true` when this call inserted the
|
|
29
|
+
* row (the caller owns this delivery — proceed), `false` when a row already
|
|
30
|
+
* existed (duplicate — drop it).
|
|
31
|
+
*
|
|
32
|
+
* This replaces the historic `exists()`-then-`mark()` check-then-act, which
|
|
33
|
+
* raced across cluster instances: behind an external load balancer, GitHub's
|
|
34
|
+
* own retries and LB retries can fan the same `X-GitHub-Delivery` to two
|
|
35
|
+
* instances concurrently — both passed `exists()` and both dispatched. The
|
|
36
|
+
* single `INSERT … ON CONFLICT (delivery_id) DO NOTHING` is the atomic
|
|
37
|
+
* arbiter backed by the `dedup_cache` primary key, so exactly one caller
|
|
38
|
+
* wins regardless of how many instances receive the same delivery.
|
|
39
|
+
*/
|
|
40
|
+
claim(deliveryId: string): Promise<boolean>;
|
|
27
41
|
/**
|
|
28
42
|
* Remove expired entries from the database.
|
|
29
43
|
* Also trims the in-memory cache to MAX_MEMORY_CACHE_SIZE.
|
|
@@ -213,6 +213,29 @@ export interface AgentWsHandlerDeps {
|
|
|
213
213
|
verifyReason: string | null;
|
|
214
214
|
verifiedAt: Date | null;
|
|
215
215
|
}) => Promise<void>;
|
|
216
|
+
/**
|
|
217
|
+
* Optional callback when an agent reports a deferred attestation (transient
|
|
218
|
+
* mint failure). Persists the frozen envelope into the deferred-attestation
|
|
219
|
+
* outbox; the job stays green and the token is minted later.
|
|
220
|
+
*/
|
|
221
|
+
onProvenanceDefer?: (record: {
|
|
222
|
+
runId: string;
|
|
223
|
+
jobId: string;
|
|
224
|
+
subjectName: string;
|
|
225
|
+
subjectDigest: string;
|
|
226
|
+
audience: string;
|
|
227
|
+
mediaType: string;
|
|
228
|
+
statementHash: string;
|
|
229
|
+
dsseEnvelope: unknown;
|
|
230
|
+
publicKey: unknown;
|
|
231
|
+
originKind: 'deferred' | 'offline-backfill';
|
|
232
|
+
}) => Promise<void>;
|
|
233
|
+
/**
|
|
234
|
+
* Classify a deferred attestation's origin from the local run row: a run
|
|
235
|
+
* ingested while the Platform was down is `offline-backfill`, otherwise a
|
|
236
|
+
* transient blip is `deferred`. Defaults to always-`deferred` when unset.
|
|
237
|
+
*/
|
|
238
|
+
classifyDeferOrigin?: (runId: string) => Promise<'deferred' | 'offline-backfill'>;
|
|
216
239
|
/** Optional rate limiter configuration. */
|
|
217
240
|
rateLimiterConfig?: RateLimiterConfig;
|
|
218
241
|
/** Optional ownership tracker for validating job-related messages. */
|
|
@@ -4,39 +4,43 @@
|
|
|
4
4
|
* Backs the `oidc.token.request` agent.api method: an agent asks for a
|
|
5
5
|
* short-lived OIDC ID token for a job it is running; the orchestrator verifies
|
|
6
6
|
* the agent owns that job, resolves its runId from its own dispatch state, and
|
|
7
|
-
* relays a mint request to the Platform
|
|
8
|
-
*
|
|
9
|
-
* credentials and never asserts its own identity claims — the Platform
|
|
10
|
-
* every identity claim from its own run/job rows.
|
|
7
|
+
* relays a mint request to the Platform over the authenticated orchestrator↔
|
|
8
|
+
* Platform WebSocket (orchestrator-initiated RPC). The agent never holds
|
|
9
|
+
* Platform credentials and never asserts its own identity claims — the Platform
|
|
10
|
+
* derives every identity claim from its own run/job rows.
|
|
11
11
|
*/
|
|
12
|
-
import { type OidcTokenResult } from '@kici-dev/engine/protocol/messages/oidc-token-relay';
|
|
13
|
-
/**
|
|
12
|
+
import { type OidcTokenResult, type DeferredMintParams } from '@kici-dev/engine/protocol/messages/oidc-token-relay';
|
|
13
|
+
/** rejected: the run/job is missing on the Platform or the job is terminal. */
|
|
14
14
|
export declare class MintRejectedError extends Error {
|
|
15
15
|
}
|
|
16
|
-
/**
|
|
16
|
+
/** unavailable: provenance signing is not configured / the Platform is unavailable. */
|
|
17
17
|
export declare class MintUnavailableError extends Error {
|
|
18
18
|
}
|
|
19
|
-
/** Any other
|
|
19
|
+
/** Any other failure (transport or Platform-side). */
|
|
20
20
|
export declare class MintRelayError extends Error {
|
|
21
21
|
}
|
|
22
|
-
/**
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
*/
|
|
27
|
-
export declare function deriveHttpBaseFromWsUrl(wsUrl: string): string;
|
|
22
|
+
/** Minimal surface the relay needs from the Platform WS client. */
|
|
23
|
+
export interface MintPlatformClient {
|
|
24
|
+
sendRequestAndAwait<Res>(type: 'oidc.mint.request', payload: Record<string, unknown>, timeoutMs?: number): Promise<Res>;
|
|
25
|
+
}
|
|
28
26
|
export interface RequestMintArgs {
|
|
29
|
-
|
|
30
|
-
token: string;
|
|
27
|
+
platformClient: MintPlatformClient;
|
|
31
28
|
orchestratorId: string;
|
|
32
29
|
runId: string;
|
|
33
30
|
jobId: string;
|
|
34
31
|
audience: string;
|
|
32
|
+
/**
|
|
33
|
+
* Deferred *fulfilment* mint: when set, the request knowingly targets a
|
|
34
|
+
* completed (terminal) job and binds the frozen statement hash + origin so
|
|
35
|
+
* the Platform relaxes its live-job check and stamps the mint-timing marker.
|
|
36
|
+
* The live agent path never sets this.
|
|
37
|
+
*/
|
|
38
|
+
deferred?: DeferredMintParams;
|
|
35
39
|
}
|
|
36
40
|
/**
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
41
|
+
* Send a mint request over the WS and map the typed response to either a result
|
|
42
|
+
* or one of the three error classes. The user-facing strings are produced here
|
|
43
|
+
* (client-side) so they stay stable regardless of Platform wording.
|
|
40
44
|
*/
|
|
41
45
|
export declare function requestMint(args: RequestMintArgs): Promise<OidcTokenResult>;
|
|
42
46
|
export interface OidcTokenHandlerDeps {
|
|
@@ -45,9 +49,15 @@ export interface OidcTokenHandlerDeps {
|
|
|
45
49
|
runId: string;
|
|
46
50
|
} | undefined;
|
|
47
51
|
};
|
|
48
|
-
|
|
49
|
-
platformHttpBase: string;
|
|
52
|
+
platformClient: MintPlatformClient;
|
|
50
53
|
orchestratorId: string;
|
|
54
|
+
/** Test-only fault-injection master switch (config.testMode). */
|
|
55
|
+
testMode: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Test-only: force-defer the *initial* agent mint for any job requesting this
|
|
58
|
+
* OIDC audience (config.testMintDeferAudience). Ignored unless `testMode`.
|
|
59
|
+
*/
|
|
60
|
+
testMintDeferAudience?: string;
|
|
51
61
|
}
|
|
52
62
|
/**
|
|
53
63
|
* Build the agent.api handler for `OIDC_TOKEN_REQUEST_METHOD`. Validates the
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/** Platform->orch message types that resolve a pending orch-initiated request. */
|
|
2
|
+
export declare const ORCH_RPC_RESPONSE_TYPES: ReadonlySet<string>;
|
|
3
|
+
export declare class OrchRpcRegistry {
|
|
4
|
+
private readonly pending;
|
|
5
|
+
register(requestId: string, timeoutMs: number): Promise<unknown>;
|
|
6
|
+
resolve(requestId: string, msg: unknown): void;
|
|
7
|
+
rejectAll(err: Error): void;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=orch-rpc.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type OrchestratorToPlatformMessage, type WebhookRelay, type WebhookRelayResult, type TrustPolicyUpdate, type StaleCheckrunCleanup, type DashboardRunDetailRequest, type DashboardRunStructuredRequest, type DashboardRunsListRequest, type DashboardRunsFiltersRequest, type DashboardSourcesListRequest, type DashboardStepLogsRequest, type DashboardAttestationsListRequest, type DashboardAttestationsListAllRequest, type DashboardAttestationGetRequest, type DashboardOrchLogsRequest, type RunRerunRequest, type ManualScheduleRequest, type RunCancelRequest, type DashboardPayloadRequest, type DashboardPlatformToOrchMessage, type TestRelayRequest, type DashboardDiagnosticsRequest, type DashboardScalerCapacityRequest, type DashboardScalerAgentsRequest, type DashboardFleetHostsRequest, type DashboardFleetHostRequest, type DashboardFleetPreviewRequest, type DashboardFleetWorkflowsForHostRequest, type JoinRequest, type JoinResponse, type DeploymentIdentity, type OrchCapabilities, type OrchRole } from '@kici-dev/engine';
|
|
1
|
+
import { type OrchestratorToPlatformMessage, type WebhookRelay, type WebhookRelayResult, type TrustPolicyUpdate, type StaleCheckrunCleanup, type DashboardRunDetailRequest, type DashboardRunStructuredRequest, type DashboardRunsListRequest, type DashboardRunsFiltersRequest, type DashboardSourcesListRequest, type DashboardStepLogsRequest, type DashboardAttestationsListRequest, type DashboardAttestationsListAllRequest, type DashboardAttestationGetRequest, type DashboardAttestationRetryRequest, type DashboardOrchLogsRequest, type RunRerunRequest, type ManualScheduleRequest, type RunCancelRequest, type DashboardPayloadRequest, type DashboardPlatformToOrchMessage, type TestRelayRequest, type DashboardDiagnosticsRequest, type DashboardScalerCapacityRequest, type DashboardScalerAgentsRequest, type DashboardFleetHostsRequest, type DashboardFleetHostRequest, type DashboardFleetPreviewRequest, type DashboardFleetWorkflowsForHostRequest, type JoinRequest, type JoinResponse, type DeploymentIdentity, type OrchCapabilities, type OrchRole } from '@kici-dev/engine';
|
|
2
2
|
import { RelayBufferRegistry, type RelayStartMeta } from '../webhook/relay-buffer.js';
|
|
3
3
|
/**
|
|
4
4
|
* Verification + processing outcome returned by the chunked relay path's
|
|
@@ -124,6 +124,7 @@ export interface PlatformClientOptions {
|
|
|
124
124
|
onDashboardAttestationsListAll?: (msg: DashboardAttestationsListAllRequest) => void;
|
|
125
125
|
/** Optional callback for single-attestation detail requests from Platform. */
|
|
126
126
|
onDashboardAttestationGet?: (msg: DashboardAttestationGetRequest) => void;
|
|
127
|
+
onDashboardAttestationRetry?: (msg: DashboardAttestationRetryRequest) => void;
|
|
127
128
|
/** Optional callback for run re-run requests from Platform (dashboard action). */
|
|
128
129
|
onRunRerun?: (msg: RunRerunRequest) => void;
|
|
129
130
|
/** Optional callback for manual schedule trigger requests from Platform (dashboard action). */
|
|
@@ -226,6 +227,12 @@ export declare class PlatformClient {
|
|
|
226
227
|
* `source.register.ack` arrives, or rejected on timeout / disconnect.
|
|
227
228
|
*/
|
|
228
229
|
private readonly pendingSourceRegistrations;
|
|
230
|
+
/**
|
|
231
|
+
* Generic orchestrator-initiated RPC correlation (e.g. the provenance OIDC
|
|
232
|
+
* mint). The orchestrator sends a `requestId`-keyed request over the WS and
|
|
233
|
+
* awaits the Platform's matching `.response`; rejected on timeout or close.
|
|
234
|
+
*/
|
|
235
|
+
private readonly orchRpc;
|
|
229
236
|
private readonly instanceId?;
|
|
230
237
|
private readonly clusterName?;
|
|
231
238
|
private readonly clusterId?;
|
|
@@ -252,6 +259,7 @@ export declare class PlatformClient {
|
|
|
252
259
|
private readonly onDashboardAttestationsList?;
|
|
253
260
|
private readonly onDashboardAttestationsListAll?;
|
|
254
261
|
private readonly onDashboardAttestationGet?;
|
|
262
|
+
private readonly onDashboardAttestationRetry?;
|
|
255
263
|
private readonly onRunRerun?;
|
|
256
264
|
private readonly onManualSchedule?;
|
|
257
265
|
private readonly onRunCancel?;
|
|
@@ -332,6 +340,15 @@ export declare class PlatformClient {
|
|
|
332
340
|
* NOT in the OrchestratorToPlatformMessage union (they are in the separate log pull schema).
|
|
333
341
|
*/
|
|
334
342
|
sendRaw(data: unknown): void;
|
|
343
|
+
/**
|
|
344
|
+
* Send an orchestrator-initiated request over the Platform WS and await its
|
|
345
|
+
* typed `.response`. The reverse of the Platform's dashboard-RPC pattern: we
|
|
346
|
+
* hold the pending map and resolve on the echoed requestId. Rejects on timeout
|
|
347
|
+
* or connection close; protocol-level errors arrive inside the response body.
|
|
348
|
+
* The request type is a member of the typed orch->Platform union, so it rides
|
|
349
|
+
* the validated `send()` path.
|
|
350
|
+
*/
|
|
351
|
+
sendRequestAndAwait<Res>(type: OrchestratorToPlatformMessage['type'], payload: Record<string, unknown>, timeoutMs?: number): Promise<Res>;
|
|
335
352
|
/**
|
|
336
353
|
* Register a new source at runtime (e.g., after config reload adds a new GitHub app).
|
|
337
354
|
* Separate from the post-auth registration which sends all sources at once.
|
|
@@ -58,6 +58,8 @@ export interface TestTriggerPayload {
|
|
|
58
58
|
status: 'accepted' | 'rejected';
|
|
59
59
|
reason?: string;
|
|
60
60
|
jobIds: string[];
|
|
61
|
+
/** User-visible warnings on acceptance (e.g. skipped non-test bound environments). */
|
|
62
|
+
warnings?: string[];
|
|
61
63
|
}
|
|
62
64
|
/**
|
|
63
65
|
* Resolve the overlay tarball URL + decryption keys from the upload record, then
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "0.1.
|
|
2
|
+
"version": "0.1.26",
|
|
3
3
|
"images": {
|
|
4
|
-
"kici-agent": "sha256:
|
|
5
|
-
"kici-orchestrator": "sha256:
|
|
4
|
+
"kici-agent": "sha256:f53aeb2bc7c0da72461fbbbe13c94b119ed2c3ed564e2c3f528acde58124a6a9",
|
|
5
|
+
"kici-orchestrator": "sha256:eff0bddaff3ee355aeb1f05c46ea773cef75b57d04d18919068329f758aa63fb"
|
|
6
6
|
}
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kici-dev/orchestrator",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.26",
|
|
4
4
|
"description": "Customer-deployable orchestrator for the KiCI CI/CD stack. Receives webhook events (direct or via Platform relay), matches triggers against the lock file, and dispatches jobs to connected agents.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ci",
|
|
@@ -71,6 +71,7 @@
|
|
|
71
71
|
"dockerode": "^5.0.0",
|
|
72
72
|
"hashi-vault-js": "^0.5.1",
|
|
73
73
|
"hono": "^4.12.25",
|
|
74
|
+
"jose": "^6.1.0",
|
|
74
75
|
"jsonpath-plus": "^10.4.0",
|
|
75
76
|
"jszip": "^3.10.1",
|
|
76
77
|
"kysely": "^0.29.2",
|
|
@@ -83,8 +84,8 @@
|
|
|
83
84
|
"ws": "^8.21.0",
|
|
84
85
|
"yaml": "^2.9.0",
|
|
85
86
|
"zod": "^4.4.3",
|
|
86
|
-
"@kici-dev/engine": "0.1.
|
|
87
|
-
"@kici-dev/shared": "0.1.
|
|
87
|
+
"@kici-dev/engine": "0.1.26",
|
|
88
|
+
"@kici-dev/shared": "0.1.26"
|
|
88
89
|
},
|
|
89
90
|
"kici": {
|
|
90
91
|
"metrics": {
|
|
@@ -97,9 +98,8 @@
|
|
|
97
98
|
"devDependencies": {
|
|
98
99
|
"@types/archiver": "^8.0.0",
|
|
99
100
|
"@types/dockerode": "^4.0.1",
|
|
100
|
-
"jose": "^6.1.0",
|
|
101
101
|
"kysely-ctl": "^0.21.0",
|
|
102
|
-
"@kici-dev/agent": "0.1.
|
|
102
|
+
"@kici-dev/agent": "0.1.26"
|
|
103
103
|
},
|
|
104
104
|
"scripts": {
|
|
105
105
|
"build": "node ../../scripts/build-service.mjs && tsc --emitDeclarationOnly",
|
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/orchestrator@0.1.
|
|
6
|
-
"documentNamespace": "https://kici.dev/sbom/%40kici-dev%2Forchestrator/0.1.
|
|
5
|
+
"name": "@kici-dev/orchestrator@0.1.26",
|
|
6
|
+
"documentNamespace": "https://kici.dev/sbom/%40kici-dev%2Forchestrator/0.1.26/9c3ff4ff-35af-480a-9ce4-a8615e3dc279",
|
|
7
7
|
"creationInfo": {
|
|
8
|
-
"created": "2026-
|
|
8
|
+
"created": "2026-07-06T04:29:58Z",
|
|
9
9
|
"creators": [
|
|
10
10
|
"Tool: kici-sbom-generator"
|
|
11
11
|
]
|
|
@@ -1190,9 +1190,9 @@
|
|
|
1190
1190
|
"homepage": "https://ericsmekens.github.io/jsep/tree/master/packages/regex#readme"
|
|
1191
1191
|
},
|
|
1192
1192
|
{
|
|
1193
|
-
"SPDXID": "SPDXRef-Package--kici-dev-core-0.1.
|
|
1193
|
+
"SPDXID": "SPDXRef-Package--kici-dev-core-0.1.26",
|
|
1194
1194
|
"name": "@kici-dev/core",
|
|
1195
|
-
"versionInfo": "0.1.
|
|
1195
|
+
"versionInfo": "0.1.26",
|
|
1196
1196
|
"downloadLocation": "NOASSERTION",
|
|
1197
1197
|
"filesAnalyzed": false,
|
|
1198
1198
|
"licenseConcluded": "NOASSERTION",
|
|
@@ -1203,16 +1203,16 @@
|
|
|
1203
1203
|
{
|
|
1204
1204
|
"referenceCategory": "PACKAGE-MANAGER",
|
|
1205
1205
|
"referenceType": "purl",
|
|
1206
|
-
"referenceLocator": "pkg:npm/%40kici-dev/core@0.1.
|
|
1206
|
+
"referenceLocator": "pkg:npm/%40kici-dev/core@0.1.26"
|
|
1207
1207
|
}
|
|
1208
1208
|
],
|
|
1209
1209
|
"description": "Light shared utilities for the KiCI stack (logging, errors, formatting, crypto, zx init, the TypeScript ESM loader hook). No server-side dependencies.",
|
|
1210
1210
|
"homepage": "https://kici.dev"
|
|
1211
1211
|
},
|
|
1212
1212
|
{
|
|
1213
|
-
"SPDXID": "SPDXRef-Package--kici-dev-engine-0.1.
|
|
1213
|
+
"SPDXID": "SPDXRef-Package--kici-dev-engine-0.1.26",
|
|
1214
1214
|
"name": "@kici-dev/engine",
|
|
1215
|
-
"versionInfo": "0.1.
|
|
1215
|
+
"versionInfo": "0.1.26",
|
|
1216
1216
|
"downloadLocation": "NOASSERTION",
|
|
1217
1217
|
"filesAnalyzed": false,
|
|
1218
1218
|
"licenseConcluded": "NOASSERTION",
|
|
@@ -1223,7 +1223,7 @@
|
|
|
1223
1223
|
{
|
|
1224
1224
|
"referenceCategory": "PACKAGE-MANAGER",
|
|
1225
1225
|
"referenceType": "purl",
|
|
1226
|
-
"referenceLocator": "pkg:npm/%40kici-dev/engine@0.1.
|
|
1226
|
+
"referenceLocator": "pkg:npm/%40kici-dev/engine@0.1.26"
|
|
1227
1227
|
}
|
|
1228
1228
|
],
|
|
1229
1229
|
"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.",
|
|
@@ -1232,7 +1232,7 @@
|
|
|
1232
1232
|
{
|
|
1233
1233
|
"SPDXID": "SPDXRef-RootPackage",
|
|
1234
1234
|
"name": "@kici-dev/orchestrator",
|
|
1235
|
-
"versionInfo": "0.1.
|
|
1235
|
+
"versionInfo": "0.1.26",
|
|
1236
1236
|
"downloadLocation": "NOASSERTION",
|
|
1237
1237
|
"filesAnalyzed": false,
|
|
1238
1238
|
"licenseConcluded": "NOASSERTION",
|
|
@@ -1243,16 +1243,16 @@
|
|
|
1243
1243
|
{
|
|
1244
1244
|
"referenceCategory": "PACKAGE-MANAGER",
|
|
1245
1245
|
"referenceType": "purl",
|
|
1246
|
-
"referenceLocator": "pkg:npm/%40kici-dev/orchestrator@0.1.
|
|
1246
|
+
"referenceLocator": "pkg:npm/%40kici-dev/orchestrator@0.1.26"
|
|
1247
1247
|
}
|
|
1248
1248
|
],
|
|
1249
1249
|
"description": "Customer-deployable orchestrator for the KiCI CI/CD stack. Receives webhook events (direct or via Platform relay), matches triggers against the lock file, and dispatches jobs to connected agents.",
|
|
1250
1250
|
"homepage": "https://kici.dev"
|
|
1251
1251
|
},
|
|
1252
1252
|
{
|
|
1253
|
-
"SPDXID": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
1253
|
+
"SPDXID": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
1254
1254
|
"name": "@kici-dev/shared",
|
|
1255
|
-
"versionInfo": "0.1.
|
|
1255
|
+
"versionInfo": "0.1.26",
|
|
1256
1256
|
"downloadLocation": "NOASSERTION",
|
|
1257
1257
|
"filesAnalyzed": false,
|
|
1258
1258
|
"licenseConcluded": "NOASSERTION",
|
|
@@ -1263,7 +1263,7 @@
|
|
|
1263
1263
|
{
|
|
1264
1264
|
"referenceCategory": "PACKAGE-MANAGER",
|
|
1265
1265
|
"referenceType": "purl",
|
|
1266
|
-
"referenceLocator": "pkg:npm/%40kici-dev/shared@0.1.
|
|
1266
|
+
"referenceLocator": "pkg:npm/%40kici-dev/shared@0.1.26"
|
|
1267
1267
|
}
|
|
1268
1268
|
],
|
|
1269
1269
|
"description": "Shared utilities for the KiCI CI/CD stack — logging, zx setup, crypto, telemetry, health and metrics routes. No business logic.",
|
|
@@ -8201,57 +8201,57 @@
|
|
|
8201
8201
|
"relationshipType": "DEPENDS_ON"
|
|
8202
8202
|
},
|
|
8203
8203
|
{
|
|
8204
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-core-0.1.
|
|
8204
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-core-0.1.26",
|
|
8205
8205
|
"relatedSpdxElement": "SPDXRef-Package-oxc-transform-0.135.0",
|
|
8206
8206
|
"relationshipType": "DEPENDS_ON"
|
|
8207
8207
|
},
|
|
8208
8208
|
{
|
|
8209
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-core-0.1.
|
|
8209
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-core-0.1.26",
|
|
8210
8210
|
"relatedSpdxElement": "SPDXRef-Package-picocolors-1.1.1",
|
|
8211
8211
|
"relationshipType": "DEPENDS_ON"
|
|
8212
8212
|
},
|
|
8213
8213
|
{
|
|
8214
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-core-0.1.
|
|
8214
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-core-0.1.26",
|
|
8215
8215
|
"relatedSpdxElement": "SPDXRef-Package-winston-daily-rotate-file-5.0.0",
|
|
8216
8216
|
"relationshipType": "DEPENDS_ON"
|
|
8217
8217
|
},
|
|
8218
8218
|
{
|
|
8219
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-core-0.1.
|
|
8219
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-core-0.1.26",
|
|
8220
8220
|
"relatedSpdxElement": "SPDXRef-Package-winston-3.19.0",
|
|
8221
8221
|
"relationshipType": "DEPENDS_ON"
|
|
8222
8222
|
},
|
|
8223
8223
|
{
|
|
8224
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-core-0.1.
|
|
8224
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-core-0.1.26",
|
|
8225
8225
|
"relatedSpdxElement": "SPDXRef-Package-zod-4.4.3",
|
|
8226
8226
|
"relationshipType": "DEPENDS_ON"
|
|
8227
8227
|
},
|
|
8228
8228
|
{
|
|
8229
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-core-0.1.
|
|
8229
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-core-0.1.26",
|
|
8230
8230
|
"relatedSpdxElement": "SPDXRef-Package-zx-8.8.5",
|
|
8231
8231
|
"relationshipType": "DEPENDS_ON"
|
|
8232
8232
|
},
|
|
8233
8233
|
{
|
|
8234
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-engine-0.1.
|
|
8234
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-engine-0.1.26",
|
|
8235
8235
|
"relatedSpdxElement": "SPDXRef-Package-jose-6.2.3",
|
|
8236
8236
|
"relationshipType": "DEPENDS_ON"
|
|
8237
8237
|
},
|
|
8238
8238
|
{
|
|
8239
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-engine-0.1.
|
|
8239
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-engine-0.1.26",
|
|
8240
8240
|
"relatedSpdxElement": "SPDXRef-Package-jsonpath-plus-10.4.0",
|
|
8241
8241
|
"relationshipType": "DEPENDS_ON"
|
|
8242
8242
|
},
|
|
8243
8243
|
{
|
|
8244
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-engine-0.1.
|
|
8244
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-engine-0.1.26",
|
|
8245
8245
|
"relatedSpdxElement": "SPDXRef-Package-picomatch-4.0.4",
|
|
8246
8246
|
"relationshipType": "DEPENDS_ON"
|
|
8247
8247
|
},
|
|
8248
8248
|
{
|
|
8249
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-engine-0.1.
|
|
8249
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-engine-0.1.26",
|
|
8250
8250
|
"relatedSpdxElement": "SPDXRef-Package-safe-regex-2.1.1",
|
|
8251
8251
|
"relationshipType": "DEPENDS_ON"
|
|
8252
8252
|
},
|
|
8253
8253
|
{
|
|
8254
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-engine-0.1.
|
|
8254
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-engine-0.1.26",
|
|
8255
8255
|
"relatedSpdxElement": "SPDXRef-Package-zod-4.4.3",
|
|
8256
8256
|
"relationshipType": "DEPENDS_ON"
|
|
8257
8257
|
},
|
|
@@ -8287,12 +8287,12 @@
|
|
|
8287
8287
|
},
|
|
8288
8288
|
{
|
|
8289
8289
|
"spdxElementId": "SPDXRef-RootPackage",
|
|
8290
|
-
"relatedSpdxElement": "SPDXRef-Package--kici-dev-engine-0.1.
|
|
8290
|
+
"relatedSpdxElement": "SPDXRef-Package--kici-dev-engine-0.1.26",
|
|
8291
8291
|
"relationshipType": "DEPENDS_ON"
|
|
8292
8292
|
},
|
|
8293
8293
|
{
|
|
8294
8294
|
"spdxElementId": "SPDXRef-RootPackage",
|
|
8295
|
-
"relatedSpdxElement": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8295
|
+
"relatedSpdxElement": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8296
8296
|
"relationshipType": "DEPENDS_ON"
|
|
8297
8297
|
},
|
|
8298
8298
|
{
|
|
@@ -8335,6 +8335,11 @@
|
|
|
8335
8335
|
"relatedSpdxElement": "SPDXRef-Package-hono-4.12.25",
|
|
8336
8336
|
"relationshipType": "DEPENDS_ON"
|
|
8337
8337
|
},
|
|
8338
|
+
{
|
|
8339
|
+
"spdxElementId": "SPDXRef-RootPackage",
|
|
8340
|
+
"relatedSpdxElement": "SPDXRef-Package-jose-6.2.3",
|
|
8341
|
+
"relationshipType": "DEPENDS_ON"
|
|
8342
|
+
},
|
|
8338
8343
|
{
|
|
8339
8344
|
"spdxElementId": "SPDXRef-RootPackage",
|
|
8340
8345
|
"relatedSpdxElement": "SPDXRef-Package-jsonpath-plus-10.4.0",
|
|
@@ -8396,112 +8401,112 @@
|
|
|
8396
8401
|
"relationshipType": "DEPENDS_ON"
|
|
8397
8402
|
},
|
|
8398
8403
|
{
|
|
8399
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8404
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8400
8405
|
"relatedSpdxElement": "SPDXRef-Package--aws-sdk-client-s3-3.1064.0",
|
|
8401
8406
|
"relationshipType": "DEPENDS_ON"
|
|
8402
8407
|
},
|
|
8403
8408
|
{
|
|
8404
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8405
|
-
"relatedSpdxElement": "SPDXRef-Package--kici-dev-core-0.1.
|
|
8409
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8410
|
+
"relatedSpdxElement": "SPDXRef-Package--kici-dev-core-0.1.26",
|
|
8406
8411
|
"relationshipType": "DEPENDS_ON"
|
|
8407
8412
|
},
|
|
8408
8413
|
{
|
|
8409
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8414
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8410
8415
|
"relatedSpdxElement": "SPDXRef-Package--opentelemetry-api-1.9.1",
|
|
8411
8416
|
"relationshipType": "DEPENDS_ON"
|
|
8412
8417
|
},
|
|
8413
8418
|
{
|
|
8414
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8419
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8415
8420
|
"relatedSpdxElement": "SPDXRef-Package--opentelemetry-exporter-metrics-otlp-http-0.218.0",
|
|
8416
8421
|
"relationshipType": "DEPENDS_ON"
|
|
8417
8422
|
},
|
|
8418
8423
|
{
|
|
8419
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8424
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8420
8425
|
"relatedSpdxElement": "SPDXRef-Package--opentelemetry-exporter-prometheus-0.218.0",
|
|
8421
8426
|
"relationshipType": "DEPENDS_ON"
|
|
8422
8427
|
},
|
|
8423
8428
|
{
|
|
8424
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8429
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8425
8430
|
"relatedSpdxElement": "SPDXRef-Package--opentelemetry-exporter-trace-otlp-http-0.218.0",
|
|
8426
8431
|
"relationshipType": "DEPENDS_ON"
|
|
8427
8432
|
},
|
|
8428
8433
|
{
|
|
8429
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8434
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8430
8435
|
"relatedSpdxElement": "SPDXRef-Package--opentelemetry-instrumentation-runtime-node-0.31.0",
|
|
8431
8436
|
"relationshipType": "DEPENDS_ON"
|
|
8432
8437
|
},
|
|
8433
8438
|
{
|
|
8434
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8439
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8435
8440
|
"relatedSpdxElement": "SPDXRef-Package--opentelemetry-resources-2.7.1",
|
|
8436
8441
|
"relationshipType": "DEPENDS_ON"
|
|
8437
8442
|
},
|
|
8438
8443
|
{
|
|
8439
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8444
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8440
8445
|
"relatedSpdxElement": "SPDXRef-Package--opentelemetry-sdk-node-0.218.0",
|
|
8441
8446
|
"relationshipType": "DEPENDS_ON"
|
|
8442
8447
|
},
|
|
8443
8448
|
{
|
|
8444
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8449
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8445
8450
|
"relatedSpdxElement": "SPDXRef-Package--opentelemetry-semantic-conventions-1.41.1",
|
|
8446
8451
|
"relationshipType": "DEPENDS_ON"
|
|
8447
8452
|
},
|
|
8448
8453
|
{
|
|
8449
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8454
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8450
8455
|
"relatedSpdxElement": "SPDXRef-Package-archiver-8.0.0",
|
|
8451
8456
|
"relationshipType": "DEPENDS_ON"
|
|
8452
8457
|
},
|
|
8453
8458
|
{
|
|
8454
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8459
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8455
8460
|
"relatedSpdxElement": "SPDXRef-Package-diff-9.0.0",
|
|
8456
8461
|
"relationshipType": "DEPENDS_ON"
|
|
8457
8462
|
},
|
|
8458
8463
|
{
|
|
8459
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8464
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8460
8465
|
"relatedSpdxElement": "SPDXRef-Package-hono-4.12.25",
|
|
8461
8466
|
"relationshipType": "DEPENDS_ON"
|
|
8462
8467
|
},
|
|
8463
8468
|
{
|
|
8464
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8469
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8465
8470
|
"relatedSpdxElement": "SPDXRef-Package-kysely-0.29.2",
|
|
8466
8471
|
"relationshipType": "DEPENDS_ON"
|
|
8467
8472
|
},
|
|
8468
8473
|
{
|
|
8469
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8474
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8470
8475
|
"relatedSpdxElement": "SPDXRef-Package-oxc-transform-0.135.0",
|
|
8471
8476
|
"relationshipType": "DEPENDS_ON"
|
|
8472
8477
|
},
|
|
8473
8478
|
{
|
|
8474
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8479
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8475
8480
|
"relatedSpdxElement": "SPDXRef-Package-pg-8.21.0",
|
|
8476
8481
|
"relationshipType": "DEPENDS_ON"
|
|
8477
8482
|
},
|
|
8478
8483
|
{
|
|
8479
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8484
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8480
8485
|
"relatedSpdxElement": "SPDXRef-Package-picocolors-1.1.1",
|
|
8481
8486
|
"relationshipType": "DEPENDS_ON"
|
|
8482
8487
|
},
|
|
8483
8488
|
{
|
|
8484
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8489
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8485
8490
|
"relatedSpdxElement": "SPDXRef-Package-winston-daily-rotate-file-5.0.0",
|
|
8486
8491
|
"relationshipType": "DEPENDS_ON"
|
|
8487
8492
|
},
|
|
8488
8493
|
{
|
|
8489
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8494
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8490
8495
|
"relatedSpdxElement": "SPDXRef-Package-winston-3.19.0",
|
|
8491
8496
|
"relationshipType": "DEPENDS_ON"
|
|
8492
8497
|
},
|
|
8493
8498
|
{
|
|
8494
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8499
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8495
8500
|
"relatedSpdxElement": "SPDXRef-Package-yaml-2.9.0",
|
|
8496
8501
|
"relationshipType": "DEPENDS_ON"
|
|
8497
8502
|
},
|
|
8498
8503
|
{
|
|
8499
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8504
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8500
8505
|
"relatedSpdxElement": "SPDXRef-Package-zod-4.4.3",
|
|
8501
8506
|
"relationshipType": "DEPENDS_ON"
|
|
8502
8507
|
},
|
|
8503
8508
|
{
|
|
8504
|
-
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.
|
|
8509
|
+
"spdxElementId": "SPDXRef-Package--kici-dev-shared-0.1.26",
|
|
8505
8510
|
"relatedSpdxElement": "SPDXRef-Package-zx-8.8.5",
|
|
8506
8511
|
"relationshipType": "DEPENDS_ON"
|
|
8507
8512
|
},
|