Files
agentic-dev/packages/core-shared/src/conformance/index.ts
Danijel Martinek c62de6fce9 feat(core-shared): add rate-limit type primitives and manifest field
Adds IRateLimit, RateLimitBudget, RateLimitDecision to a new
rate-limit sub-module; adds RateLimited<F> brand and isRateLimited
predicate following the Captured/ConsentChecked pattern; extends
UseCaseManifest with rateLimit?: readonly RateLimitBudget[] so
features can declare rate-limit gates in their manifests.

Exports new types from @repo/core-shared/rate-limit and
@repo/core-shared/conformance. Blocks stories 02, 03, and 04.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-20 08:21:42 +00:00

39 lines
984 B
TypeScript

export type {
Instrumented,
Captured,
Analyzed,
ConsentChecked,
RateLimited,
} from "./brands";
export type { FeatureManifest, UseCaseManifest } from "./define-feature";
export { defineFeature } from "./define-feature";
export type {
CoverageBand,
CoverageBands,
CoverageManifest,
VitestThresholds,
} from "./coverage";
export {
DEFAULT_COVERAGE_BANDS,
DEFAULT_MUTATION_SCORE,
DEFAULT_MUTATION_TARGETS,
getCoverageBands,
getMutationConfig,
vitestThresholdsFromBands,
vitestThresholdsFromManifest,
} from "./coverage";
export type { ProductionUseCase } from "./production-use-case";
export {
attachBrand,
isInstrumented,
isCaptured,
isAudited,
isAnalyzed,
isConsentChecked,
isRateLimited,
} from "./brand-runtime";
export { ConformanceError } from "./conformance-error";
export { assertFeatureConformance } from "./assert-bindings";
export { wireUseCase } from "./wire-use-case";
export type { WireUseCaseOptions } from "./wire-use-case";