@cat-factory/gates 0.1.5 → 0.1.7

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/gates.d.ts CHANGED
@@ -8,7 +8,7 @@ export declare const ciGate: (ctx: GateContext) => GateDefinition;
8
8
  * Conflicts gate: check PR mergeability; escalate to a `conflict-resolver` on conflict. A
9
9
  * pass-through until {@link wireMergeabilityProvider} supplies a provider.
10
10
  */
11
- export declare const conflictsGate: (_ctx: GateContext) => GateDefinition;
11
+ export declare const conflictsGate: (ctx: GateContext) => GateDefinition;
12
12
  /**
13
13
  * Post-release-health gate: after deploy, watch the release's Datadog monitors/SLOs over a
14
14
  * window; escalate to the `on-call` agent on a regression. The on-call agent INVESTIGATES
@@ -1 +1 @@
1
- {"version":3,"file":"gates.d.ts","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EAKf,MAAM,qBAAqB,CAAA;AAwC5B;;;GAGG;AACH,eAAO,MAAM,MAAM,QAAS,WAAW,KAAG,cA+CxC,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,SAAU,WAAW,KAAG,cA6BhD,CAAA;AAiEF;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,QAAS,WAAW,KAAG,cAwIvD,CAAA"}
1
+ {"version":3,"file":"gates.d.ts","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EAKf,MAAM,qBAAqB,CAAA;AAyC5B;;;GAGG;AACH,eAAO,MAAM,MAAM,QAAS,WAAW,KAAG,cA+CxC,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,QAAS,WAAW,KAAG,cA+B/C,CAAA;AAkEF;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,QAAS,WAAW,KAAG,cA4IvD,CAAA"}
package/dist/gates.js CHANGED
@@ -1,6 +1,6 @@
1
- import { aggregateCi, CI_AGENT_KIND, CI_FIXER_AGENT_KIND, classifyReleaseHealth, CONFLICT_RESOLVER_AGENT_KIND, CONFLICTS_AGENT_KIND, DEFAULT_MERGE_PRESET, describeFailingChecks, describeRegressedSignals, isCiGreen, listFailingChecks, ON_CALL_AGENT_KIND, POST_RELEASE_HEALTH_AGENT_KIND, renderReleaseEvidence, } from '@cat-factory/kernel';
1
+ import { aggregateCi, CI_AGENT_KIND, CI_FIXER_AGENT_KIND, classifyReleaseHealth, CONFLICT_RESOLVER_AGENT_KIND, CONFLICTS_AGENT_KIND, DEFAULT_MERGE_PRESET, describeFailingChecks, describeRegressedSignals, isCiGreen, isProviderWired, listFailingChecks, ON_CALL_AGENT_KIND, POST_RELEASE_HEALTH_AGENT_KIND, renderReleaseEvidence, } from '@cat-factory/kernel';
2
2
  import { parseOnCallAssessment } from '@cat-factory/contracts';
3
- import { getCiStatusProvider, getIncidentEnrichment, getMergeabilityProvider, getReleaseHealthProvider, } from './providers.js';
3
+ import { CI_STATUS_PROVIDER, INCIDENT_ENRICHMENT_PROVIDER, MERGEABILITY_PROVIDER, RELEASE_HEALTH_PROVIDER, } from './providers.js';
4
4
  /**
5
5
  * Conflict-resolver attempt cap. Unlike CI (where each fixer round gets fresh red-check
6
6
  * output to act on), a conflict retry re-merges the SAME base and gets no new signal, so a
@@ -20,10 +20,10 @@ function pct(score) {
20
20
  export const ciGate = (ctx) => ({
21
21
  kind: CI_AGENT_KIND,
22
22
  helperKind: CI_FIXER_AGENT_KIND,
23
- wired: () => !!getCiStatusProvider(),
23
+ wired: () => isProviderWired(CI_STATUS_PROVIDER),
24
24
  unwiredOutput: 'CI gate skipped (no CI status provider configured).',
25
25
  probe: async (workspaceId, blockId) => {
26
- const report = await getCiStatusProvider().getStatus(workspaceId, blockId);
26
+ const report = await ctx.requireProvider(CI_STATUS_PROVIDER).getStatus(workspaceId, blockId);
27
27
  const verdict = aggregateCi(report.checks);
28
28
  if (isCiGreen(verdict)) {
29
29
  return {
@@ -68,14 +68,16 @@ export const ciGate = (ctx) => ({
68
68
  * Conflicts gate: check PR mergeability; escalate to a `conflict-resolver` on conflict. A
69
69
  * pass-through until {@link wireMergeabilityProvider} supplies a provider.
70
70
  */
71
- export const conflictsGate = (_ctx) => ({
71
+ export const conflictsGate = (ctx) => ({
72
72
  kind: CONFLICTS_AGENT_KIND,
73
73
  helperKind: CONFLICT_RESOLVER_AGENT_KIND,
74
- wired: () => !!getMergeabilityProvider(),
74
+ wired: () => isProviderWired(MERGEABILITY_PROVIDER),
75
75
  unwiredOutput: 'Conflict gate skipped (no mergeability provider configured).',
76
76
  attemptBudget: () => CONFLICT_RESOLVER_MAX_ATTEMPTS,
77
77
  probe: async (workspaceId, blockId) => {
78
- const report = await getMergeabilityProvider().getMergeability(workspaceId, blockId);
78
+ const report = await ctx
79
+ .requireProvider(MERGEABILITY_PROVIDER)
80
+ .getMergeability(workspaceId, blockId);
79
81
  // No PR resolved, or it merges cleanly → nothing to do; advance.
80
82
  if (report.headSha === null || report.verdict === 'mergeable') {
81
83
  return {
@@ -125,8 +127,8 @@ async function raiseReleaseRegression(ctx, workspaceId, args, assessment, signal
125
127
  * monitors/SLOs) with the on-call investigation. NOT alerting — those systems already
126
128
  * paged. A no-op when no provider is wired or no matching incident exists.
127
129
  */
128
- async function enrichIncident(workspaceId, args, assessment, signals, since) {
129
- const incidentEnrichment = getIncidentEnrichment();
130
+ async function enrichIncident(ctx, workspaceId, args, assessment, signals, since) {
131
+ const incidentEnrichment = ctx.getProvider(INCIDENT_ENRICHMENT_PROVIDER);
130
132
  if (!incidentEnrichment)
131
133
  return;
132
134
  const { block } = args;
@@ -154,7 +156,7 @@ async function enrichIncident(workspaceId, args, assessment, signals, since) {
154
156
  export const postReleaseHealthGate = (ctx) => ({
155
157
  kind: POST_RELEASE_HEALTH_AGENT_KIND,
156
158
  helperKind: ON_CALL_AGENT_KIND,
157
- wired: () => !!getReleaseHealthProvider(),
159
+ wired: () => isProviderWired(RELEASE_HEALTH_PROVIDER),
158
160
  unwiredOutput: 'Post-release health gate skipped (no release-health provider configured).',
159
161
  attemptBudget: (preset) => preset.releaseMaxAttempts,
160
162
  // Running out of poll budget while still watching means the window outlasted the driver's
@@ -175,7 +177,9 @@ export const postReleaseHealthGate = (ctx) => ({
175
177
  };
176
178
  }
177
179
  const since = gateState.watchSince ?? ctx.clock.now();
178
- const report = await getReleaseHealthProvider().probe(workspaceId, blockId, since);
180
+ const report = await ctx
181
+ .requireProvider(RELEASE_HEALTH_PROVIDER)
182
+ .probe(workspaceId, blockId, since);
179
183
  // No signals configured for this block → nothing to watch; advance immediately (don't
180
184
  // park for the whole window on an unmapped release).
181
185
  if (report.signals.length === 0) {
@@ -210,7 +214,9 @@ export const postReleaseHealthGate = (ctx) => ({
210
214
  // gathered fresh at dispatch.
211
215
  gatherHelperPriorOutputs: async (workspaceId, blockId, gateState) => {
212
216
  const since = gateState.watchSince ?? ctx.clock.now();
213
- const evidence = await getReleaseHealthProvider().gatherEvidence(workspaceId, blockId, since);
217
+ const evidence = await ctx
218
+ .requireProvider(RELEASE_HEALTH_PROVIDER)
219
+ .gatherEvidence(workspaceId, blockId, since);
214
220
  // Stash the regressed signals on the gate state so the on-call COMPLETION handler
215
221
  // (resolveHelperCompletion) builds the notification + incident enrichment from the SAME
216
222
  // evidence the agent investigated — rather than re-reading Datadog a third time. The
@@ -249,7 +255,7 @@ export const postReleaseHealthGate = (ctx) => ({
249
255
  // persisted (e.g. an older parked run).
250
256
  const since = step.gate?.watchSince ?? ctx.clock.now();
251
257
  let regressedSignals = step.gate?.regressedSignals ?? [];
252
- const provider = getReleaseHealthProvider();
258
+ const provider = ctx.getProvider(RELEASE_HEALTH_PROVIDER);
253
259
  if (regressedSignals.length === 0 && provider) {
254
260
  try {
255
261
  const evidence = await provider.gatherEvidence(workspaceId, block.id, since);
@@ -264,7 +270,7 @@ export const postReleaseHealthGate = (ctx) => ({
264
270
  ? `${baseSummary} The automated on-call investigation could not complete, so no culprit assessment is available — investigate manually.`.trim()
265
271
  : baseSummary;
266
272
  await raiseReleaseRegression(ctx, workspaceId, { instance, block }, assessment, regressedSignals, summary);
267
- await enrichIncident(workspaceId, { block }, assessment, regressedSignals, since);
273
+ await enrichIncident(ctx, workspaceId, { block }, assessment, regressedSignals, since);
268
274
  const output = assessment
269
275
  ? `On-call investigation: ${assessment.recommendation} (culprit confidence ${pct(assessment.culpritConfidence)}). ${assessment.rationale}`
270
276
  : investigationFailed
package/dist/gates.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"gates.js","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gates.js","sourceRoot":"","sources":["../src/gates.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { wireCiStatusProvider, wireMergeabilityProvider, wireReleaseHealthProvider, wireIncidentEnrichment, clearGateProviders, applyGateProviders, type GateProviderOverrides, } from './providers.js';
1
+ export { CI_STATUS_PROVIDER, MERGEABILITY_PROVIDER, RELEASE_HEALTH_PROVIDER, INCIDENT_ENRICHMENT_PROVIDER, wireCiStatusProvider, wireMergeabilityProvider, wireReleaseHealthProvider, wireIncidentEnrichment, clearGateProviders, applyGateProviders, type GateProviderOverrides, } from './providers.js';
2
2
  export { ciGate, conflictsGate, postReleaseHealthGate } from './gates.js';
3
3
  /**
4
4
  * Register the built-in gate suite. Idempotent (the registry replaces by kind), so importing
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA4BA,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,qBAAqB,GAC3B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAEzE;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAI3C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA4BA,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EACvB,4BAA4B,EAC5B,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,qBAAqB,GAC3B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAEzE;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAI3C"}
package/dist/index.js CHANGED
@@ -19,7 +19,7 @@ import { ciGate, conflictsGate, postReleaseHealthGate } from './gates.js';
19
19
  //
20
20
  // Until a gate's provider is wired it is a harmless pass-through, so a bare import is safe.
21
21
  // ---------------------------------------------------------------------------
22
- export { wireCiStatusProvider, wireMergeabilityProvider, wireReleaseHealthProvider, wireIncidentEnrichment, clearGateProviders, applyGateProviders, } from './providers.js';
22
+ export { CI_STATUS_PROVIDER, MERGEABILITY_PROVIDER, RELEASE_HEALTH_PROVIDER, INCIDENT_ENRICHMENT_PROVIDER, wireCiStatusProvider, wireMergeabilityProvider, wireReleaseHealthProvider, wireIncidentEnrichment, clearGateProviders, applyGateProviders, } from './providers.js';
23
23
  export { ciGate, conflictsGate, postReleaseHealthGate } from './gates.js';
24
24
  /**
25
25
  * Register the built-in gate suite. Idempotent (the registry replaces by kind), so importing
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,8BAA8B,EAC9B,YAAY,GACb,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAEzE,8EAA8E;AAC9E,sFAAsF;AACtF,0FAA0F;AAC1F,kFAAkF;AAClF,gFAAgF;AAChF,mFAAmF;AACnF,uEAAuE;AACvE,EAAE;AACF,4FAA4F;AAC5F,8BAA8B;AAC9B,EAAE;AACF,gCAAgC;AAChC,0DAA0D;AAC1D,kEAAkE;AAClE,sEAAsE;AACtE,yEAAyE;AACzE,EAAE;AACF,4FAA4F;AAC5F,8EAA8E;AAE9E,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,GAEnB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAEzE;;;;GAIG;AACH,MAAM,UAAU,oBAAoB;IAClC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;IACnC,YAAY,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAA;IACjD,YAAY,CAAC,8BAA8B,EAAE,qBAAqB,CAAC,CAAA;AACrE,CAAC;AAED,qEAAqE;AACrE,oBAAoB,EAAE,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,8BAA8B,EAC9B,YAAY,GACb,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAEzE,8EAA8E;AAC9E,sFAAsF;AACtF,0FAA0F;AAC1F,kFAAkF;AAClF,gFAAgF;AAChF,mFAAmF;AACnF,uEAAuE;AACvE,EAAE;AACF,4FAA4F;AAC5F,8BAA8B;AAC9B,EAAE;AACF,gCAAgC;AAChC,0DAA0D;AAC1D,kEAAkE;AAClE,sEAAsE;AACtE,yEAAyE;AACzE,EAAE;AACF,4FAA4F;AAC5F,8EAA8E;AAE9E,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EACvB,4BAA4B,EAC5B,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,GAEnB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAEzE;;;;GAIG;AACH,MAAM,UAAU,oBAAoB;IAClC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;IACnC,YAAY,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAA;IACjD,YAAY,CAAC,8BAA8B,EAAE,qBAAqB,CAAC,CAAA;AACrE,CAAC;AAED,qEAAqE;AACrE,oBAAoB,EAAE,CAAA"}
@@ -1,4 +1,12 @@
1
- import type { CiStatusProvider, IncidentEnrichmentProvider, PullRequestMergeabilityProvider, ReleaseHealthProvider } from '@cat-factory/kernel';
1
+ import { type CiStatusProvider, type IncidentEnrichmentProvider, type ProviderToken, type PullRequestMergeabilityProvider, type ReleaseHealthProvider } from '@cat-factory/kernel';
2
+ /** Token for the CI check-runs source the `ci` gate probes. */
3
+ export declare const CI_STATUS_PROVIDER: ProviderToken<CiStatusProvider>;
4
+ /** Token for the PR-mergeability source the `conflicts` gate probes. */
5
+ export declare const MERGEABILITY_PROVIDER: ProviderToken<PullRequestMergeabilityProvider>;
6
+ /** Token for the release-health source the `post-release-health` gate probes. */
7
+ export declare const RELEASE_HEALTH_PROVIDER: ProviderToken<ReleaseHealthProvider>;
8
+ /** Token for the incident-enrichment source the on-call escalation annotates. */
9
+ export declare const INCIDENT_ENRICHMENT_PROVIDER: ProviderToken<IncidentEnrichmentProvider>;
2
10
  /** Wire (or clear, with `undefined`) the CI check-runs source the `ci` gate probes. */
3
11
  export declare function wireCiStatusProvider(provider: CiStatusProvider | undefined): void;
4
12
  /** Wire (or clear) the PR-mergeability source the `conflicts` gate probes. */
@@ -7,12 +15,10 @@ export declare function wireMergeabilityProvider(provider: PullRequestMergeabili
7
15
  export declare function wireReleaseHealthProvider(provider: ReleaseHealthProvider | undefined): void;
8
16
  /** Wire (or clear) the incident-enrichment source the on-call escalation annotates. */
9
17
  export declare function wireIncidentEnrichment(provider: IncidentEnrichmentProvider | undefined): void;
10
- export declare const getCiStatusProvider: () => CiStatusProvider | undefined;
11
- export declare const getMergeabilityProvider: () => PullRequestMergeabilityProvider | undefined;
12
- export declare const getReleaseHealthProvider: () => ReleaseHealthProvider | undefined;
13
- export declare const getIncidentEnrichment: () => IncidentEnrichmentProvider | undefined;
14
- /** Clear every wired provider. Intended for tests that exercise the gates in isolation. */
18
+ /** Clear every built-in gate provider (the four tokens above). Intended for tests. */
15
19
  export declare function clearGateProviders(): void;
20
+ /** Whether the CI status provider is wired (the `ci` gate's `wired()`). */
21
+ export declare const isCiStatusProviderWired: () => boolean;
16
22
  /** The built-in gates' providers as one optional bag, for wiring through a build step. */
17
23
  export interface GateProviderOverrides {
18
24
  ciStatus?: CiStatusProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,0BAA0B,EAC1B,+BAA+B,EAC/B,qBAAqB,EACtB,MAAM,qBAAqB,CAAA;AAiB5B,uFAAuF;AACvF,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,IAAI,CAEjF;AAED,8EAA8E;AAC9E,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,+BAA+B,GAAG,SAAS,GACpD,IAAI,CAEN;AAED,uFAAuF;AACvF,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,SAAS,GAAG,IAAI,CAE3F;AAED,uFAAuF;AACvF,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,0BAA0B,GAAG,SAAS,GAAG,IAAI,CAE7F;AAGD,eAAO,MAAM,mBAAmB,QAAO,gBAAgB,GAAG,SAA6B,CAAA;AACvF,eAAO,MAAM,uBAAuB,QAAO,+BAA+B,GAAG,SACvD,CAAA;AACtB,eAAO,MAAM,wBAAwB,QAAO,qBAAqB,GAAG,SAC7C,CAAA;AACvB,eAAO,MAAM,qBAAqB,QAAO,0BAA0B,GAAG,SAClD,CAAA;AAEpB,2FAA2F;AAC3F,wBAAgB,kBAAkB,IAAI,IAAI,CAKzC;AAED,0FAA0F;AAC1F,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,gBAAgB,CAAA;IAC3B,YAAY,CAAC,EAAE,+BAA+B,CAAA;IAC9C,aAAa,CAAC,EAAE,qBAAqB,CAAA;IACrC,kBAAkB,CAAC,EAAE,0BAA0B,CAAA;CAChD;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,qBAAqB,GAAG,SAAS,GAAG,IAAI,CAMrF"}
1
+ {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,gBAAgB,EACrB,KAAK,0BAA0B,EAC/B,KAAK,aAAa,EAClB,KAAK,+BAA+B,EACpC,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAA;AAe5B,+DAA+D;AAC/D,eAAO,MAAM,kBAAkB,iCAAqD,CAAA;AACpF,wEAAwE;AACxE,eAAO,MAAM,qBAAqB,gDACoC,CAAA;AACtE,iFAAiF;AACjF,eAAO,MAAM,uBAAuB,sCAA+D,CAAA;AACnG,iFAAiF;AACjF,eAAO,MAAM,4BAA4B,2CAC+B,CAAA;AAExE,uFAAuF;AACvF,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS,GAAG,IAAI,CAEjF;AAED,8EAA8E;AAC9E,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,+BAA+B,GAAG,SAAS,GACpD,IAAI,CAEN;AAED,uFAAuF;AACvF,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,SAAS,GAAG,IAAI,CAE3F;AAED,uFAAuF;AACvF,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,0BAA0B,GAAG,SAAS,GAAG,IAAI,CAE7F;AAED,sFAAsF;AACtF,wBAAgB,kBAAkB,IAAI,IAAI,CASzC;AAED,2EAA2E;AAC3E,eAAO,MAAM,uBAAuB,QAAO,OAA8C,CAAA;AAEzF,0FAA0F;AAC1F,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,gBAAgB,CAAA;IAC3B,YAAY,CAAC,EAAE,+BAA+B,CAAA;IAC9C,aAAa,CAAC,EAAE,qBAAqB,CAAA;IACrC,kBAAkB,CAAC,EAAE,0BAA0B,CAAA;CAChD;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,qBAAqB,GAAG,SAAS,GAAG,IAAI,CAMrF"}
package/dist/providers.js CHANGED
@@ -1,44 +1,53 @@
1
- // The data sources the built-in gates probe are module-level handles a deployment wires at
2
- // startup (exactly like a custom gate wires its own provider see
3
- // `@cat-factory/example-custom-agent`'s `wireLicenseProvider`). The gate factories close
4
- // over these; until a provider is wired its gate is a harmless pass-through (`wired()`
5
- // returns false), so a bare `import '@cat-factory/gates'` is always safe.
1
+ import { defineProviderToken, isProviderWired, wireProvider, } from '@cat-factory/kernel';
2
+ // The data sources the built-in gates probe are wired into the typed kernel provider
3
+ // registry at startup (exactly like a custom gate wires its own provider — see
4
+ // `@cat-factory/example-custom-agent`'s `LICENSE_PROVIDER`). The gates read them back through
5
+ // their `GateContext` (`ctx.getProvider`/`ctx.requireProvider`); until a provider is wired its
6
+ // gate is a harmless pass-through (`wired()` returns false), so a bare `import
7
+ // '@cat-factory/gates'` is always safe.
6
8
  //
7
9
  // This is the whole point of the externalization: the engine no longer holds these
8
10
  // providers. A facade constructs its impl (GitHubCiStatusProvider, RegistryReleaseHealth…)
9
- // and hands it here, instead of threading it through the engine's constructor.
10
- let ciStatusProvider;
11
- let mergeabilityProvider;
12
- let releaseHealthProvider;
13
- let incidentEnrichment;
11
+ // and hands it here, instead of threading it through the engine's constructor. The
12
+ // `wireX`/`clearGateProviders`/`applyGateProviders` public surface is unchanged — only the
13
+ // storage moved from four module-level `let`s to the shared token registry.
14
+ /** Token for the CI check-runs source the `ci` gate probes. */
15
+ export const CI_STATUS_PROVIDER = defineProviderToken('ci-status');
16
+ /** Token for the PR-mergeability source the `conflicts` gate probes. */
17
+ export const MERGEABILITY_PROVIDER = defineProviderToken('mergeability');
18
+ /** Token for the release-health source the `post-release-health` gate probes. */
19
+ export const RELEASE_HEALTH_PROVIDER = defineProviderToken('release-health');
20
+ /** Token for the incident-enrichment source the on-call escalation annotates. */
21
+ export const INCIDENT_ENRICHMENT_PROVIDER = defineProviderToken('incident-enrichment');
14
22
  /** Wire (or clear, with `undefined`) the CI check-runs source the `ci` gate probes. */
15
23
  export function wireCiStatusProvider(provider) {
16
- ciStatusProvider = provider;
24
+ wireProvider(CI_STATUS_PROVIDER, provider);
17
25
  }
18
26
  /** Wire (or clear) the PR-mergeability source the `conflicts` gate probes. */
19
27
  export function wireMergeabilityProvider(provider) {
20
- mergeabilityProvider = provider;
28
+ wireProvider(MERGEABILITY_PROVIDER, provider);
21
29
  }
22
30
  /** Wire (or clear) the release-health source the `post-release-health` gate probes. */
23
31
  export function wireReleaseHealthProvider(provider) {
24
- releaseHealthProvider = provider;
32
+ wireProvider(RELEASE_HEALTH_PROVIDER, provider);
25
33
  }
26
34
  /** Wire (or clear) the incident-enrichment source the on-call escalation annotates. */
27
35
  export function wireIncidentEnrichment(provider) {
28
- incidentEnrichment = provider;
36
+ wireProvider(INCIDENT_ENRICHMENT_PROVIDER, provider);
29
37
  }
30
- // Internal accessors the gate factories read at probe time (after startup wiring).
31
- export const getCiStatusProvider = () => ciStatusProvider;
32
- export const getMergeabilityProvider = () => mergeabilityProvider;
33
- export const getReleaseHealthProvider = () => releaseHealthProvider;
34
- export const getIncidentEnrichment = () => incidentEnrichment;
35
- /** Clear every wired provider. Intended for tests that exercise the gates in isolation. */
38
+ /** Clear every built-in gate provider (the four tokens above). Intended for tests. */
36
39
  export function clearGateProviders() {
37
- ciStatusProvider = undefined;
38
- mergeabilityProvider = undefined;
39
- releaseHealthProvider = undefined;
40
- incidentEnrichment = undefined;
40
+ for (const token of [
41
+ CI_STATUS_PROVIDER,
42
+ MERGEABILITY_PROVIDER,
43
+ RELEASE_HEALTH_PROVIDER,
44
+ INCIDENT_ENRICHMENT_PROVIDER,
45
+ ]) {
46
+ wireProvider(token, undefined);
47
+ }
41
48
  }
49
+ /** Whether the CI status provider is wired (the `ci` gate's `wired()`). */
50
+ export const isCiStatusProviderWired = () => isProviderWired(CI_STATUS_PROVIDER);
42
51
  /**
43
52
  * Wire any provided gate providers (leaving the rest untouched). A facade build runs
44
53
  * `clearGateProviders()` then re-wires from its config; this is the seam by which a test
@@ -1 +1 @@
1
- {"version":3,"file":"providers.js","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"AAOA,2FAA2F;AAC3F,mEAAmE;AACnE,yFAAyF;AACzF,uFAAuF;AACvF,0EAA0E;AAC1E,EAAE;AACF,mFAAmF;AACnF,2FAA2F;AAC3F,+EAA+E;AAE/E,IAAI,gBAA8C,CAAA;AAClD,IAAI,oBAAiE,CAAA;AACrE,IAAI,qBAAwD,CAAA;AAC5D,IAAI,kBAA0D,CAAA;AAE9D,uFAAuF;AACvF,MAAM,UAAU,oBAAoB,CAAC,QAAsC;IACzE,gBAAgB,GAAG,QAAQ,CAAA;AAC7B,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,wBAAwB,CACtC,QAAqD;IAErD,oBAAoB,GAAG,QAAQ,CAAA;AACjC,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,yBAAyB,CAAC,QAA2C;IACnF,qBAAqB,GAAG,QAAQ,CAAA;AAClC,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,sBAAsB,CAAC,QAAgD;IACrF,kBAAkB,GAAG,QAAQ,CAAA;AAC/B,CAAC;AAED,mFAAmF;AACnF,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAiC,EAAE,CAAC,gBAAgB,CAAA;AACvF,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAgD,EAAE,CACvF,oBAAoB,CAAA;AACtB,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAsC,EAAE,CAC9E,qBAAqB,CAAA;AACvB,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAA2C,EAAE,CAChF,kBAAkB,CAAA;AAEpB,2FAA2F;AAC3F,MAAM,UAAU,kBAAkB;IAChC,gBAAgB,GAAG,SAAS,CAAA;IAC5B,oBAAoB,GAAG,SAAS,CAAA;IAChC,qBAAqB,GAAG,SAAS,CAAA;IACjC,kBAAkB,GAAG,SAAS,CAAA;AAChC,CAAC;AAUD;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAA4C;IAC7E,IAAI,CAAC,SAAS;QAAE,OAAM;IACtB,IAAI,SAAS,CAAC,QAAQ;QAAE,oBAAoB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;IAChE,IAAI,SAAS,CAAC,YAAY;QAAE,wBAAwB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;IAC5E,IAAI,SAAS,CAAC,aAAa;QAAE,yBAAyB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;IAC/E,IAAI,SAAS,CAAC,kBAAkB;QAAE,sBAAsB,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAA;AACxF,CAAC"}
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,YAAY,GAMb,MAAM,qBAAqB,CAAA;AAE5B,qFAAqF;AACrF,+EAA+E;AAC/E,8FAA8F;AAC9F,+FAA+F;AAC/F,+EAA+E;AAC/E,wCAAwC;AACxC,EAAE;AACF,mFAAmF;AACnF,2FAA2F;AAC3F,mFAAmF;AACnF,2FAA2F;AAC3F,4EAA4E;AAE5E,+DAA+D;AAC/D,MAAM,CAAC,MAAM,kBAAkB,GAAG,mBAAmB,CAAmB,WAAW,CAAC,CAAA;AACpF,wEAAwE;AACxE,MAAM,CAAC,MAAM,qBAAqB,GAChC,mBAAmB,CAAkC,cAAc,CAAC,CAAA;AACtE,iFAAiF;AACjF,MAAM,CAAC,MAAM,uBAAuB,GAAG,mBAAmB,CAAwB,gBAAgB,CAAC,CAAA;AACnG,iFAAiF;AACjF,MAAM,CAAC,MAAM,4BAA4B,GACvC,mBAAmB,CAA6B,qBAAqB,CAAC,CAAA;AAExE,uFAAuF;AACvF,MAAM,UAAU,oBAAoB,CAAC,QAAsC;IACzE,YAAY,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAA;AAC5C,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,wBAAwB,CACtC,QAAqD;IAErD,YAAY,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAA;AAC/C,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,yBAAyB,CAAC,QAA2C;IACnF,YAAY,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAA;AACjD,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,sBAAsB,CAAC,QAAgD;IACrF,YAAY,CAAC,4BAA4B,EAAE,QAAQ,CAAC,CAAA;AACtD,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,kBAAkB;IAChC,KAAK,MAAM,KAAK,IAAI;QAClB,kBAAkB;QAClB,qBAAqB;QACrB,uBAAuB;QACvB,4BAA4B;KACD,EAAE,CAAC;QAC9B,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IAChC,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAY,EAAE,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAA;AAUzF;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAA4C;IAC7E,IAAI,CAAC,SAAS;QAAE,OAAM;IACtB,IAAI,SAAS,CAAC,QAAQ;QAAE,oBAAoB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;IAChE,IAAI,SAAS,CAAC,YAAY;QAAE,wBAAwB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;IAC5E,IAAI,SAAS,CAAC,aAAa;QAAE,yBAAyB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;IAC/E,IAAI,SAAS,CAAC,kBAAkB;QAAE,sBAAsB,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAA;AACxF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/gates",
3
- "version": "0.1.5",
3
+ "version": "0.1.7",
4
4
  "description": "The built-in polling-gate suite (CI, merge-conflicts, post-release health + the on-call escalation) for the Agent Architecture Board, authored entirely through the public gate-registry seam — depends only on @cat-factory/kernel + @cat-factory/contracts, never the engine. A deployment imports it for side effect and wires each gate's provider via the exported wireX handles.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -24,8 +24,8 @@
24
24
  "access": "public"
25
25
  },
26
26
  "dependencies": {
27
- "@cat-factory/contracts": "0.25.1",
28
- "@cat-factory/kernel": "0.28.1"
27
+ "@cat-factory/contracts": "0.27.0",
28
+ "@cat-factory/kernel": "0.30.0"
29
29
  },
30
30
  "devDependencies": {
31
31
  "typescript": "7.0.1-rc",