@cat-factory/kernel 0.29.0 → 0.30.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/domain/gate-registry.d.ts +13 -2
- package/dist/domain/gate-registry.d.ts.map +1 -1
- package/dist/domain/gate-registry.js +5 -0
- package/dist/domain/gate-registry.js.map +1 -1
- package/dist/domain/provider-registry.d.ts +33 -0
- package/dist/domain/provider-registry.d.ts.map +1 -0
- package/dist/domain/provider-registry.js +63 -0
- package/dist/domain/provider-registry.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -3,6 +3,7 @@ import type { AgentRunResult } from '../ports/agent-executor.js';
|
|
|
3
3
|
import type { RaiseNotificationInput } from '../ports/notification-channel.js';
|
|
4
4
|
import type { Clock } from '../ports/runtime.js';
|
|
5
5
|
import type { RunInitiatorScope } from '../ports/user-secret-repositories.js';
|
|
6
|
+
import { type ProviderToken } from './provider-registry.js';
|
|
6
7
|
/** The outcome of a single gate precheck against its provider. */
|
|
7
8
|
export interface GateProbe {
|
|
8
9
|
/**
|
|
@@ -155,8 +156,10 @@ export interface GateDefinition {
|
|
|
155
156
|
* The shared engine seams a registered (custom) gate legitimately needs, handed to its
|
|
156
157
|
* factory at registry-build time. Deliberately minimal + runtime-neutral: the engine
|
|
157
158
|
* keeps owning dispatch, budget resolution, persistence and the state machine. A custom
|
|
158
|
-
* gate reaches its OWN provider (the source for `wired()`/`probe()`)
|
|
159
|
-
*
|
|
159
|
+
* gate reaches its OWN provider (the source for `wired()`/`probe()`) through the typed
|
|
160
|
+
* provider registry via {@link GateContext.getProvider} / {@link GateContext.requireProvider} —
|
|
161
|
+
* the facade wires the impl against a {@link ProviderToken} at startup, so the gate no
|
|
162
|
+
* longer closes over a hand-authored module-level handle.
|
|
160
163
|
*/
|
|
161
164
|
export interface GateContext {
|
|
162
165
|
/** The engine clock (monotonic-ish ms), for time-windowed gates. */
|
|
@@ -167,6 +170,14 @@ export interface GateContext {
|
|
|
167
170
|
runInitiatorScope: RunInitiatorScope;
|
|
168
171
|
/** Raise (or re-raise) a human-actionable notification, e.g. from `onExhausted`. */
|
|
169
172
|
raiseNotification(workspaceId: string, input: RaiseNotificationInput): Promise<void>;
|
|
173
|
+
/** The wired impl for a provider token, or `undefined` (drives a gate's `wired()`). */
|
|
174
|
+
getProvider<T>(token: ProviderToken<T>): T | undefined;
|
|
175
|
+
/**
|
|
176
|
+
* The wired impl for a provider token, or throw. SAFE inside `probe()` — the engine only
|
|
177
|
+
* probes a gate whose `wired()` returned true, and a gate's `wired()` should be
|
|
178
|
+
* `isProviderWired(token)` — so this replaces the old `getFoo()!` assertion with a guard.
|
|
179
|
+
*/
|
|
180
|
+
requireProvider<T>(token: ProviderToken<T>): T;
|
|
170
181
|
}
|
|
171
182
|
/**
|
|
172
183
|
* A registered gate is a factory the engine invokes ONCE at registry-build time with a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gate-registry.d.ts","sourceRoot":"","sources":["../../src/domain/gate-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EACL,iBAAiB,EACjB,WAAW,EACX,aAAa,EACb,oBAAoB,EACpB,YAAY,EACb,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAA;AAC9E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;
|
|
1
|
+
{"version":3,"file":"gate-registry.d.ts","sourceRoot":"","sources":["../../src/domain/gate-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { getProvider as registryGetProvider, requireProvider as registryRequireProvider, } from './provider-registry.js';
|
|
1
2
|
/**
|
|
2
3
|
* Build the record of a just-finished gate-helper attempt (a ci-fixer / conflict-resolver
|
|
3
4
|
* run) for {@link GateStepState.attemptLog}. The summary is the helper's OWN account — its
|
|
@@ -52,6 +53,10 @@ export function stubGateContext(overrides = {}) {
|
|
|
52
53
|
getBlock: async () => null,
|
|
53
54
|
runInitiatorScope: (_initiatedBy, fn) => fn(),
|
|
54
55
|
raiseNotification: async () => { },
|
|
56
|
+
// Default to the real process-wide registry so a gate test that wires a provider sees
|
|
57
|
+
// it, and `requireProvider` on an unwired token throws exactly as it would in prod.
|
|
58
|
+
getProvider: registryGetProvider,
|
|
59
|
+
requireProvider: registryRequireProvider,
|
|
55
60
|
...overrides,
|
|
56
61
|
};
|
|
57
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gate-registry.js","sourceRoot":"","sources":["../../src/domain/gate-registry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gate-registry.js","sourceRoot":"","sources":["../../src/domain/gate-registry.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,WAAW,IAAI,mBAAmB,EAClC,eAAe,IAAI,uBAAuB,GAE3C,MAAM,wBAAwB,CAAA;AAgD/B;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAAiD,EACjD,OAA0B,EAC1B,EAAU;IAEV,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,QAAQ;QACtB,EAAE;QACF,OAAO,EAAE,OAAO,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;QAC1D,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI;QAC7B,OAAO,EACL,OAAO,CAAC,KAAK,KAAK,MAAM;YACtB,CAAC,CAAC,OAAO,CAAC,MAAM;YAChB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,4CAA4C,CAAC;KACtE,CAAA;AACH,CAAC;AAwID,0FAA0F;AAC1F,wFAAwF;AACxF,sFAAsF;AACtF,0FAA0F;AAC1F,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAuB,CAAA;AAE/C;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,OAAoB;IAC7D,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AAC7B,CAAC;AAED,wDAAwD;AACxD,MAAM,UAAU,uBAAuB;IACrC,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;AACpE,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,oBAAoB;IAClC,QAAQ,CAAC,KAAK,EAAE,CAAA;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,SAAS,GAAyB,EAAE;IAClE,OAAO;QACL,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE;QACvB,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI;QAC1B,iBAAiB,EAAE,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;QAC7C,iBAAiB,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;QACjC,sFAAsF;QACtF,oFAAoF;QACpF,WAAW,EAAE,mBAAmB;QAChC,eAAe,EAAE,uBAAuB;QACxC,GAAG,SAAS;KACb,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A typed handle for a wired provider. The phantom `T` carries the provider's interface so
|
|
3
|
+
* `wireProvider`/`getProvider`/`requireProvider` are type-checked against the token. Create
|
|
4
|
+
* one with {@link defineProviderToken} and export it next to the provider interface.
|
|
5
|
+
*/
|
|
6
|
+
export interface ProviderToken<T> {
|
|
7
|
+
/** Unique identity for the registry map (one per `defineProviderToken` call). */
|
|
8
|
+
readonly key: symbol;
|
|
9
|
+
/** Human description, used in error messages and validation output. */
|
|
10
|
+
readonly description: string;
|
|
11
|
+
/** Phantom field carrying `T` — never read at runtime. */
|
|
12
|
+
readonly __type?: T;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Define a new provider token. Call once at module scope and export the result, e.g.
|
|
16
|
+
* `export const LICENSE_PROVIDER = defineProviderToken<LicenseProvider>('license')`.
|
|
17
|
+
*/
|
|
18
|
+
export declare function defineProviderToken<T>(description: string): ProviderToken<T>;
|
|
19
|
+
/** Wire (or clear, with `undefined`) the impl for a token. */
|
|
20
|
+
export declare function wireProvider<T>(token: ProviderToken<T>, impl: T | undefined): void;
|
|
21
|
+
/** The wired impl for a token, or `undefined` when nothing is wired. */
|
|
22
|
+
export declare function getProvider<T>(token: ProviderToken<T>): T | undefined;
|
|
23
|
+
/** Whether an impl is wired for a token (the canonical source for a gate's `wired()`). */
|
|
24
|
+
export declare function isProviderWired<T>(token: ProviderToken<T>): boolean;
|
|
25
|
+
/**
|
|
26
|
+
* The wired impl for a token, or throw when nothing is wired. SAFE inside a gate's
|
|
27
|
+
* `probe()` — the engine only probes a gate whose `wired()` (i.e. {@link isProviderWired})
|
|
28
|
+
* returned true — so it replaces the old `getFoo()!` assertion with a real guard.
|
|
29
|
+
*/
|
|
30
|
+
export declare function requireProvider<T>(token: ProviderToken<T>): T;
|
|
31
|
+
/** Clear EVERY wired provider. Intended for tests that exercise wiring in isolation. */
|
|
32
|
+
export declare function clearProviders(): void;
|
|
33
|
+
//# sourceMappingURL=provider-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-registry.d.ts","sourceRoot":"","sources":["../../src/domain/provider-registry.ts"],"names":[],"mappings":"AAsBA;;;;GAIG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B,iFAAiF;IACjF,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,uEAAuE;IACvE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,0DAA0D;IAC1D,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;CACpB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAE5E;AAMD,8DAA8D;AAC9D,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,SAAS,GAAG,IAAI,CAGlF;AAED,wEAAwE;AACxE,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAErE;AAED,0FAA0F;AAC1F,wBAAgB,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,OAAO,CAEnE;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAM7D;AAED,wFAAwF;AACxF,wBAAgB,cAAc,IAAI,IAAI,CAErC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// A typed, process-wide registry of wired "providers" — the deployment-supplied data
|
|
3
|
+
// sources a gate (or any extension) probes. It replaces the per-provider module-global
|
|
4
|
+
// `let provider; wireFoo(); getFoo()` trio that every gate package used to hand-author,
|
|
5
|
+
// and the unsafe `getFoo()!` non-null assertion that followed a `wired()` check.
|
|
6
|
+
//
|
|
7
|
+
// A provider is identified by a {@link ProviderToken} — an opaque, phantom-typed handle
|
|
8
|
+
// the registrant defines once and exports. The deployment wires an impl against the token
|
|
9
|
+
// at startup ({@link wireProvider}); the gate reads it back through its {@link GateContext}
|
|
10
|
+
// (`ctx.getProvider` / `ctx.requireProvider`), so it no longer closes over a module global.
|
|
11
|
+
//
|
|
12
|
+
// `requireProvider` throws when the token is unwired — which is SAFE inside a gate's
|
|
13
|
+
// `probe()` because the engine only ever probes a gate whose `wired()` returned true, and
|
|
14
|
+
// a gate's `wired()` is `isProviderWired(token)`. So the "checked wired, then asserted with
|
|
15
|
+
// `!`" race the old pattern had is gone: the same token drives both.
|
|
16
|
+
//
|
|
17
|
+
// This lives in kernel (alongside the gate / pipeline registries) so both the kernel
|
|
18
|
+
// `GateContext` and the `@cat-factory/gates` package can reference it, and so a deployment
|
|
19
|
+
// package can wire a provider as a startup import side effect without depending on the heavy
|
|
20
|
+
// orchestration package.
|
|
21
|
+
// ---------------------------------------------------------------------------
|
|
22
|
+
/**
|
|
23
|
+
* Define a new provider token. Call once at module scope and export the result, e.g.
|
|
24
|
+
* `export const LICENSE_PROVIDER = defineProviderToken<LicenseProvider>('license')`.
|
|
25
|
+
*/
|
|
26
|
+
export function defineProviderToken(description) {
|
|
27
|
+
return { key: Symbol(description), description };
|
|
28
|
+
}
|
|
29
|
+
// Process-wide map, keyed by the token's symbol. Mirrors the gate / agent-kind / pipeline
|
|
30
|
+
// registry model: wiring is a startup side effect, read at gate-probe time.
|
|
31
|
+
const providers = new Map();
|
|
32
|
+
/** Wire (or clear, with `undefined`) the impl for a token. */
|
|
33
|
+
export function wireProvider(token, impl) {
|
|
34
|
+
if (impl === undefined)
|
|
35
|
+
providers.delete(token.key);
|
|
36
|
+
else
|
|
37
|
+
providers.set(token.key, impl);
|
|
38
|
+
}
|
|
39
|
+
/** The wired impl for a token, or `undefined` when nothing is wired. */
|
|
40
|
+
export function getProvider(token) {
|
|
41
|
+
return providers.get(token.key);
|
|
42
|
+
}
|
|
43
|
+
/** Whether an impl is wired for a token (the canonical source for a gate's `wired()`). */
|
|
44
|
+
export function isProviderWired(token) {
|
|
45
|
+
return providers.has(token.key);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* The wired impl for a token, or throw when nothing is wired. SAFE inside a gate's
|
|
49
|
+
* `probe()` — the engine only probes a gate whose `wired()` (i.e. {@link isProviderWired})
|
|
50
|
+
* returned true — so it replaces the old `getFoo()!` assertion with a real guard.
|
|
51
|
+
*/
|
|
52
|
+
export function requireProvider(token) {
|
|
53
|
+
const impl = providers.get(token.key);
|
|
54
|
+
if (impl === undefined) {
|
|
55
|
+
throw new Error(`Provider "${token.description}" is not wired.`);
|
|
56
|
+
}
|
|
57
|
+
return impl;
|
|
58
|
+
}
|
|
59
|
+
/** Clear EVERY wired provider. Intended for tests that exercise wiring in isolation. */
|
|
60
|
+
export function clearProviders() {
|
|
61
|
+
providers.clear();
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=provider-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-registry.js","sourceRoot":"","sources":["../../src/domain/provider-registry.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,qFAAqF;AACrF,uFAAuF;AACvF,wFAAwF;AACxF,iFAAiF;AACjF,EAAE;AACF,wFAAwF;AACxF,0FAA0F;AAC1F,4FAA4F;AAC5F,4FAA4F;AAC5F,EAAE;AACF,qFAAqF;AACrF,0FAA0F;AAC1F,4FAA4F;AAC5F,qEAAqE;AACrE,EAAE;AACF,qFAAqF;AACrF,2FAA2F;AAC3F,6FAA6F;AAC7F,yBAAyB;AACzB,8EAA8E;AAgB9E;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAI,WAAmB;IACxD,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,CAAA;AAClD,CAAC;AAED,0FAA0F;AAC1F,4EAA4E;AAC5E,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmB,CAAA;AAE5C,8DAA8D;AAC9D,MAAM,UAAU,YAAY,CAAI,KAAuB,EAAE,IAAmB;IAC1E,IAAI,IAAI,KAAK,SAAS;QAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;;QAC9C,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;AACrC,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,WAAW,CAAI,KAAuB;IACpD,OAAO,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAkB,CAAA;AAClD,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,eAAe,CAAI,KAAuB;IACxD,OAAO,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AACjC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAI,KAAuB;IACxD,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACrC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,aAAa,KAAK,CAAC,WAAW,iBAAiB,CAAC,CAAA;IAClE,CAAC;IACD,OAAO,IAAS,CAAA;AAClB,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,cAAc;IAC5B,SAAS,CAAC,KAAK,EAAE,CAAA;AACnB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ export { seedBlocks, seedPipelines, BLUEPRINT_PIPELINE_ID, DEP_UPDATE_PIPELINE_I
|
|
|
9
9
|
export { registerPipeline, registerPipelines, registeredPipelines, clearRegisteredPipelines, } from './domain/pipeline-registry.js';
|
|
10
10
|
export { type GateProbe, type GateHelperOutcome, type GateHelperJobResult, type GateHelperCompletionArgs, type GateExhaustedArgs, type GateDefinition, type GateContext, type GateFactory, recordGateAttempt, registerGate, registeredGateFactories, clearRegisteredGates, stubGateContext, } from './domain/gate-registry.js';
|
|
11
11
|
export { type StepResolverContext, type StepResolution, type StepCompletionResolver, type ResolverContext, type StepResolverFactory, registerStepResolver, registeredStepResolverFactories, clearRegisteredStepResolvers, stubResolverContext, } from './domain/step-resolver-registry.js';
|
|
12
|
+
export { type ProviderToken, defineProviderToken, wireProvider, getProvider, isProviderWired, requireProvider, clearProviders, } from './domain/provider-registry.js';
|
|
12
13
|
export { CI_AGENT_KIND, CI_FIXER_AGENT_KIND, CONFLICTS_AGENT_KIND, CONFLICT_RESOLVER_AGENT_KIND, POST_RELEASE_HEALTH_AGENT_KIND, ON_CALL_AGENT_KIND, type CiVerdict, type ReleaseGateVerdict, aggregateCi, isCiGreen, listFailingChecks, describeFailingChecks, classifyReleaseHealth, describeRegressedSignals, renderReleaseEvidence, } from './domain/gate-logic.js';
|
|
13
14
|
export * from './ports/index.js';
|
|
14
15
|
export { type ServiceRegistrationDeps, registerServiceForFrame, } from './domain/service-registration.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,cAAc,mBAAmB,CAAA;AACjC,OAAO,EACL,WAAW,EACX,aAAa,EACb,eAAe,EACf,aAAa,EACb,uBAAuB,EACvB,WAAW,EACX,eAAe,EACf,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC7B,KAAK,cAAc,GACpB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,kCAAkC,EAClC,cAAc,EACd,0BAA0B,EAC1B,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,KAAK,eAAe,GACrB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,aAAa,EACb,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,qBAAqB,EACrB,iBAAiB,EACjB,0BAA0B,EAC1B,sBAAsB,EACtB,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,0BAA0B,EAC1B,kCAAkC,GACnC,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kBAAkB,CAAA;AAIzB,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,+BAA+B,CAAA;AAMtC,OAAO,EACL,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,iBAAiB,EACjB,YAAY,EACZ,uBAAuB,EACvB,oBAAoB,EACpB,eAAe,GAChB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,oBAAoB,EACpB,+BAA+B,EAC/B,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,oCAAoC,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -18,6 +18,10 @@ export { registerPipeline, registerPipelines, registeredPipelines, clearRegister
|
|
|
18
18
|
// built-ins. See `domain/gate-registry.ts` / `domain/step-resolver-registry.ts`.
|
|
19
19
|
export { recordGateAttempt, registerGate, registeredGateFactories, clearRegisteredGates, stubGateContext, } from './domain/gate-registry.js';
|
|
20
20
|
export { registerStepResolver, registeredStepResolverFactories, clearRegisteredStepResolvers, stubResolverContext, } from './domain/step-resolver-registry.js';
|
|
21
|
+
// Typed provider registry: the deployment-supplied data sources a gate (or other
|
|
22
|
+
// extension) probes, keyed by an opaque {@link ProviderToken}. Replaces the per-provider
|
|
23
|
+
// module-global wire/get boilerplate. See `domain/provider-registry.ts`.
|
|
24
|
+
export { defineProviderToken, wireProvider, getProvider, isProviderWired, requireProvider, clearProviders, } from './domain/provider-registry.js';
|
|
21
25
|
// Pure gate logic + gate/helper agent-kind constants, shared by the built-in gate suite
|
|
22
26
|
// (`@cat-factory/gates`) and the engine. See `domain/gate-logic.ts`.
|
|
23
27
|
export { CI_AGENT_KIND, CI_FIXER_AGENT_KIND, CONFLICTS_AGENT_KIND, CONFLICT_RESOLVER_AGENT_KIND, POST_RELEASE_HEALTH_AGENT_KIND, ON_CALL_AGENT_KIND, aggregateCi, isCiGreen, listFailingChecks, describeFailingChecks, classifyReleaseHealth, describeRegressedSignals, renderReleaseEvidence, } from './domain/gate-logic.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,8DAA8D;AAE9D,cAAc,mBAAmB,CAAA;AACjC,OAAO,EACL,WAAW,EACX,aAAa,EACb,eAAe,EACf,aAAa,EACb,uBAAuB,EACvB,WAAW,EACX,eAAe,GAIhB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,kCAAkC,EAClC,cAAc,EACd,0BAA0B,EAC1B,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,GAEvB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAOL,aAAa,EACb,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EAEpB,qBAAqB,EACrB,iBAAiB,EACjB,0BAA0B,EAC1B,sBAAsB,EACtB,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,0BAA0B,EAC1B,kCAAkC,GACnC,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kBAAkB,CAAA;AACzB,kFAAkF;AAClF,yFAAyF;AACzF,qEAAqE;AACrE,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,+BAA+B,CAAA;AAEtC,gFAAgF;AAChF,uFAAuF;AACvF,mFAAmF;AACnF,iFAAiF;AACjF,OAAO,EASL,iBAAiB,EACjB,YAAY,EACZ,uBAAuB,EACvB,oBAAoB,EACpB,eAAe,GAChB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAML,oBAAoB,EACpB,+BAA+B,EAC/B,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,oCAAoC,CAAA;AAE3C,wFAAwF;AACxF,qEAAqE;AACrE,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,4BAA4B,EAC5B,8BAA8B,EAC9B,kBAAkB,EAGlB,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,wBAAwB,CAAA;AAE/B,cAAc,kBAAkB,CAAA;AAEhC,OAAO,EAEL,uBAAuB,GACxB,MAAM,kCAAkC,CAAA;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,KAAK,cAAc,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EACL,cAAc,EACd,YAAY,EACZ,cAAc,EACd,WAAW,GACZ,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AACnG,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEvD,OAAO,EAAwB,iBAAiB,EAAE,MAAM,gCAAgC,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,8DAA8D;AAE9D,cAAc,mBAAmB,CAAA;AACjC,OAAO,EACL,WAAW,EACX,aAAa,EACb,eAAe,EACf,aAAa,EACb,uBAAuB,EACvB,WAAW,EACX,eAAe,GAIhB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,kCAAkC,EAClC,cAAc,EACd,0BAA0B,EAC1B,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,GAEvB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAOL,aAAa,EACb,oBAAoB,EACpB,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EAEpB,qBAAqB,EACrB,iBAAiB,EACjB,0BAA0B,EAC1B,sBAAsB,EACtB,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,0BAA0B,EAC1B,kCAAkC,GACnC,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kBAAkB,CAAA;AACzB,kFAAkF;AAClF,yFAAyF;AACzF,qEAAqE;AACrE,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,+BAA+B,CAAA;AAEtC,gFAAgF;AAChF,uFAAuF;AACvF,mFAAmF;AACnF,iFAAiF;AACjF,OAAO,EASL,iBAAiB,EACjB,YAAY,EACZ,uBAAuB,EACvB,oBAAoB,EACpB,eAAe,GAChB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAML,oBAAoB,EACpB,+BAA+B,EAC/B,4BAA4B,EAC5B,mBAAmB,GACpB,MAAM,oCAAoC,CAAA;AAE3C,iFAAiF;AACjF,yFAAyF;AACzF,yEAAyE;AACzE,OAAO,EAEL,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,eAAe,EACf,eAAe,EACf,cAAc,GACf,MAAM,+BAA+B,CAAA;AAEtC,wFAAwF;AACxF,qEAAqE;AACrE,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,4BAA4B,EAC5B,8BAA8B,EAC9B,kBAAkB,EAGlB,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,wBAAwB,CAAA;AAE/B,cAAc,kBAAkB,CAAA;AAEhC,OAAO,EAEL,uBAAuB,GACxB,MAAM,kCAAkC,CAAA;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,KAAK,cAAc,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EACL,cAAc,EACd,YAAY,EACZ,cAAc,EACd,WAAW,GACZ,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AACnG,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEvD,OAAO,EAAwB,iBAAiB,EAAE,MAAM,gCAAgC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cat-factory/kernel",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.30.0",
|
|
4
4
|
"description": "Shared vocabulary, pure logic, and port interfaces for the Agent Architecture Board.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"ai": "^6.0.209",
|
|
28
|
-
"@cat-factory/contracts": "0.
|
|
28
|
+
"@cat-factory/contracts": "0.27.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"typescript": "7.0.1-rc"
|