@harness-engineering/core 0.26.0 → 0.26.1

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/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { Result, LoadingLevel, SkillContextBudget, SessionSectionName, SessionEntry, SessionSections, WorkflowStep, WorkflowStepResult, Workflow, WorkflowResult, SkillLifecycleHooks, SkillContext, SkillResult, TurnContext, CICheckName, CIFailOnSeverity, CICheckReport, RoadmapFeature, ExternalTicket, ExternalTicketState, TrackerComment, TrackerSyncConfig, CINotifyOptions, Roadmap, FeatureStatus, SyncResult, Priority, ModelPricing, UsageRecord, DailyUsage, SessionUsage, SkillInvocationRecord, SkillAdoptionSummary, StabilityTier, TelemetryIdentity, TelemetryConfig, ConsentState, TelemetryEvent, SolutionCategory, SanitizedResult, PulseConfig, PulseAdapter, PulseWindow } from '@harness-engineering/types';
1
+ import { Result, LoadingLevel, SkillContextBudget, SessionSectionName, SessionEntry, SessionSections, WorkflowStep, WorkflowStepResult, Workflow, WorkflowResult, SkillLifecycleHooks, SkillContext, SkillResult, TurnContext, CICheckName, CIFailOnSeverity, CICheckReport, RoadmapFeature, ExternalTicket, ExternalTicketState, TrackerComment, TrackerSyncConfig, CINotifyOptions, Roadmap, FeatureStatus, SyncResult, Priority, ModelPricing, UsageRecord, DailyUsage, SessionUsage, SkillInvocationRecord, SkillAdoptionSummary, StabilityTier, TelemetryIdentity, TelemetryConfig, ConsentState, TelemetryEvent, PromptCacheStats, SolutionCategory, SanitizedResult, PulseConfig, PulseAdapter, PulseWindow } from '@harness-engineering/types';
2
2
  export * from '@harness-engineering/types';
3
3
  export { BlockerRef, BugTrackCategory, Issue, IssueTrackerClient, KnowledgeTrackCategory, PulseAdapter, PulseConfig, PulseDbSource, PulseRunStatus, PulseRunStatusType, PulseSources, PulseWindow, SanitizeFn, SanitizedResult, SolutionCategory, SolutionDocFrontmatter, SolutionTrack, TrackerConfig } from '@harness-engineering/types';
4
4
  import { z } from 'zod';
@@ -8804,6 +8804,16 @@ declare function isUpdateCheckEnabled(configInterval?: number): boolean;
8804
8804
  * If state is null (never checked), returns true.
8805
8805
  */
8806
8806
  declare function shouldRunCheck(state: UpdateCheckState | null, intervalMs: number): boolean;
8807
+ /**
8808
+ * Removes the cached update-check state.
8809
+ *
8810
+ * Call after a successful `harness update` so the next CLI invocation cannot
8811
+ * print a stale "Update available" notification reflecting the pre-upgrade
8812
+ * state. With the file gone, `readCheckState` returns null and the
8813
+ * notification path bails out; the next invocation will rerun the background
8814
+ * check on its normal cadence.
8815
+ */
8816
+ declare function invalidateCheckState(): void;
8807
8817
  /**
8808
8818
  * Reads the update check state from ~/.harness/update-check.json.
8809
8819
  * Returns null if the file is missing, unreadable, or has invalid content.
@@ -9296,6 +9306,188 @@ declare function collectEvents(projectRoot: string, consent: ConsentState & {
9296
9306
  */
9297
9307
  declare function send(events: TelemetryEvent[], apiKey: string): Promise<void>;
9298
9308
 
9309
+ /**
9310
+ * CacheMetricsRecorder — in-memory ring buffer recording prompt-cache
9311
+ * hits/misses per backend invocation. Powers `GET /api/v1/telemetry/cache/stats`
9312
+ * and the dashboard `/insights/cache` widget.
9313
+ *
9314
+ * Design notes:
9315
+ * - Sliding window of the last `capacity` records (default 1000). When
9316
+ * the buffer is full, oldest records are evicted FIFO. Restarts reset
9317
+ * the window — this is intentional: prompt-cache hit-rate is a
9318
+ * debugging/observability signal, not an audit record.
9319
+ * - `windowStartedAt` is set on the first `record()` after construction
9320
+ * (or after `reset()`) and is reported as a unix-ms timestamp. Empty
9321
+ * recorders report `0` so the API response remains JSON-stable.
9322
+ * - All operations are O(1) amortized; `record()` is on the hot path
9323
+ * for every Anthropic response and must not allocate.
9324
+ */
9325
+
9326
+ interface CacheMetricsRecorderOptions {
9327
+ capacity?: number;
9328
+ /** Injectable clock for deterministic testing. Defaults to `Date.now`. */
9329
+ now?: () => number;
9330
+ }
9331
+ declare class CacheMetricsRecorder {
9332
+ private readonly capacity;
9333
+ private readonly now;
9334
+ private readonly buffer;
9335
+ private windowStartedAt;
9336
+ constructor(opts?: CacheMetricsRecorderOptions);
9337
+ /**
9338
+ * Append a single cache observation. Hot-path: O(1) amortized, no
9339
+ * allocations beyond the sample object itself.
9340
+ */
9341
+ record(backendId: string, hit: boolean, tokensCreated: number, tokensRead: number): void;
9342
+ /** Aggregate the current window into a `PromptCacheStats` snapshot. */
9343
+ getStats(): PromptCacheStats;
9344
+ /** Clear the buffer and reset the window-start marker. */
9345
+ reset(): void;
9346
+ }
9347
+
9348
+ /**
9349
+ * In-tree trace span shapes for the OTLP/HTTP JSON exporter.
9350
+ *
9351
+ * These are the internal representations the orchestrator buffers and
9352
+ * hands to `OTLPExporter.push()`. The exporter converts them to the OTLP
9353
+ * wire format (string-encoded int64 timestamps, hex-encoded ids) before
9354
+ * serializing as JSON for `/v1/traces` requests.
9355
+ *
9356
+ * See `packages/types/src/telemetry.ts` for the OTLP wire-format shapes
9357
+ * and the rationale for stringly-typed nanosecond timestamps.
9358
+ */
9359
+ /**
9360
+ * SpanKind enum mirroring the OTel spec values 1..5. Spans emitted by
9361
+ * the orchestrator are predominantly `INTERNAL`; we leave the other
9362
+ * variants exposed for future producer/consumer fanout instrumentation.
9363
+ */
9364
+ declare enum SpanKind {
9365
+ INTERNAL = 1,
9366
+ SERVER = 2,
9367
+ CLIENT = 3,
9368
+ PRODUCER = 4,
9369
+ CONSUMER = 5
9370
+ }
9371
+ /**
9372
+ * Free-form attribute bag attached to a span. Values must be scalar:
9373
+ * strings, numbers, or booleans (the OTLP/HTTP JSON converter only
9374
+ * supports `stringValue` / `intValue` / `doubleValue` / `boolValue`).
9375
+ */
9376
+ interface SpanAttributes {
9377
+ [key: string]: string | number | boolean;
9378
+ }
9379
+ /**
9380
+ * A completed trace span ready for export. `startTimeNs` and `endTimeNs`
9381
+ * are unix epoch nanoseconds as `bigint` (JS `number` cannot losslessly
9382
+ * hold int64); the exporter stringifies them for the OTLP JSON payload.
9383
+ *
9384
+ * `traceId` is a 32-char lowercase hex string (16 bytes); `spanId` and
9385
+ * `parentSpanId` are 16-char lowercase hex strings (8 bytes) per the
9386
+ * OTel trace context spec.
9387
+ *
9388
+ * `statusCode` follows OTel convention: 0 = UNSET, 1 = OK, 2 = ERROR.
9389
+ */
9390
+ interface TraceSpan {
9391
+ traceId: string;
9392
+ spanId: string;
9393
+ parentSpanId?: string;
9394
+ name: string;
9395
+ kind: SpanKind;
9396
+ startTimeNs: bigint;
9397
+ endTimeNs: bigint;
9398
+ attributes: SpanAttributes;
9399
+ statusCode?: 0 | 1 | 2;
9400
+ }
9401
+
9402
+ /**
9403
+ * OTLPExporter — hand-rolled OTLP/HTTP JSON exporter for trace spans.
9404
+ *
9405
+ * Buffers `TraceSpan` instances in-memory and flushes them as OTLP/HTTP
9406
+ * v1.0.0 JSON payloads to a configurable `/v1/traces` endpoint on a
9407
+ * timer (default 2 s) or when the batch size is hit (default 64).
9408
+ *
9409
+ * Design contracts:
9410
+ * - {@link push} is synchronous and never awaits. The orchestrator hot
9411
+ * path may call `push()` thousands of times per second; we must add
9412
+ * < 5 ms p99 to dispatch latency (Phase 5 acceptance criterion).
9413
+ * - {@link flush} is fire-and-forget. On HTTP failure we retry up to 3
9414
+ * times with 1 s / 2 s / 4 s backoff, then drop the batch and log a
9415
+ * single `console.warn`. The exporter never queues to disk.
9416
+ * - When `enabled: false`, {@link push} is a constant-time no-op so
9417
+ * callers can wire the recorder unconditionally without branching.
9418
+ * - {@link stop} flushes the remaining buffer before resolving so we
9419
+ * don't lose data on graceful shutdown.
9420
+ *
9421
+ * Wire format (per OTLP/HTTP v1.0.0 spec):
9422
+ * ```json
9423
+ * {
9424
+ * "resourceSpans": [{
9425
+ * "resource": { "attributes": [{ "key": "service.name", "value": { "stringValue": "harness" } }] },
9426
+ * "scopeSpans": [{
9427
+ * "scope": { "name": "harness" },
9428
+ * "spans": [ ...OTLPSpan[] ]
9429
+ * }]
9430
+ * }]
9431
+ * }
9432
+ * ```
9433
+ *
9434
+ * `traceId` / `spanId` are lowercase hex strings (16 / 8 bytes); time
9435
+ * fields are stringly-typed nanoseconds (JSON cannot losslessly hold
9436
+ * int64).
9437
+ */
9438
+
9439
+ interface OTLPExporterOptions {
9440
+ /** Full OTLP/HTTP traces endpoint, e.g. `http://localhost:4318/v1/traces`. */
9441
+ endpoint: string;
9442
+ /** Default `true`. When `false`, push() is a no-op. */
9443
+ enabled?: boolean;
9444
+ /** Custom headers (auth tokens, etc.). */
9445
+ headers?: Record<string, string>;
9446
+ /** Flush interval in ms. Default 2000. */
9447
+ flushIntervalMs?: number;
9448
+ /** Buffer size that triggers an immediate flush. Default 64. */
9449
+ batchSize?: number;
9450
+ /** Injectable fetch for tests. Defaults to `globalThis.fetch`. */
9451
+ fetchImpl?: typeof fetch;
9452
+ /** Injectable warn for tests. Defaults to `console.warn`. */
9453
+ warn?: (...args: unknown[]) => void;
9454
+ }
9455
+ declare class OTLPExporter {
9456
+ private readonly endpoint;
9457
+ private readonly enabled;
9458
+ private readonly headers;
9459
+ private readonly flushIntervalMs;
9460
+ private readonly batchSize;
9461
+ private readonly fetchImpl;
9462
+ private readonly warn;
9463
+ private buffer;
9464
+ private timer;
9465
+ private readonly inFlightFlushes;
9466
+ constructor(opts: OTLPExporterOptions);
9467
+ /**
9468
+ * O(1) buffer push. When `enabled === false` this is a no-op. If the
9469
+ * buffer reaches `batchSize`, a flush is triggered without awaiting.
9470
+ */
9471
+ push(span: TraceSpan): void;
9472
+ /** Start the periodic flush timer. Idempotent. */
9473
+ start(): void;
9474
+ /** Flush any pending spans and stop the timer. Awaits all in-flight flushes. */
9475
+ stop(): Promise<void>;
9476
+ /**
9477
+ * Synchronously claim the current buffer and POST it to `/v1/traces`.
9478
+ * Each invocation runs independently — concurrent flushes (e.g. one
9479
+ * from the timer, one from a `batchSize` trip) each drain their own
9480
+ * batch. Retries up to 3 times on transport or 5xx failure, then
9481
+ * drops with a single warning.
9482
+ */
9483
+ private flush;
9484
+ /**
9485
+ * Build the OTLP/HTTP JSON envelope for a batch of spans. Public for
9486
+ * tests; not part of the supported API surface.
9487
+ */
9488
+ spansToOTLPJSON(spans: TraceSpan[]): unknown;
9489
+ }
9490
+
9299
9491
  declare class CompoundLockHeldError extends Error {
9300
9492
  readonly category: SolutionCategory;
9301
9493
  readonly holderPid: number;
@@ -9722,6 +9914,6 @@ interface AssembleInput {
9722
9914
  }
9723
9915
  declare function assembleCandidateReport(input: AssembleInput): string;
9724
9916
 
9725
- declare const VERSION = "0.23.3";
9917
+ declare const VERSION = "0.25.0";
9726
9918
 
9727
- export { AGENT_DESCRIPTORS, AGREEMENT_LINE_GAP, ALLOWED_FIELD_KEYS, ALL_SOLUTION_CATEGORIES, ARCHITECTURE_DESCRIPTOR, type AST, type AcquireOptions, type ActionContext, type ActionEvent, type ActionEventHandler, type ActionEventType, type ActionResult, type ActionSink, type ActionTracker, type ActionType, type AdjustedForecast, AdjustedForecastSchema, type AgentAction, AgentActionEmitter, type AgentConfigFallbackReason, type AgentConfigFinding, type AgentConfigOptions, type AgentConfigSeverity, type AgentConfigValidation, type AgentExecutor, type AgentMapLink, type AgentMapSection, type AgentMapValidation, type AgentProcess, type AgentReviewResult, type AgentType, type AgentsMapConfig, type AnnotationIssue, type AnnotationIssueType, AnthropicCacheAdapter, type AppendLearningResult, ArchBaseline, ArchBaselineManager, ArchConfig, ArchDiffResult, ArchMetricCategory, type AssembleInput, BUG_DETECTION_DESCRIPTOR, BUG_TRACK_CATEGORIES, type BaseError, type Baseline, BaselineManager, type BaselinesFile, type BenchmarkResult, type BenchmarkRunOptions, BenchmarkRunner, type BlueprintData, BlueprintGenerator, type BlueprintModule, type BlueprintOptions, type BoundaryDefinition, type BoundaryValidation, type BoundaryValidator, type BoundaryViolation, type BranchValidationResult, type BranchingConfig, type BrokenLink, type BudgetedLearningsOptions, type Bundle, type BundleConstraints, BundleConstraintsSchema, BundleSchema, CACHE_TTL_MS, CINotifier, COMPLIANCE_DESCRIPTOR, CORROBORATED_AGREEMENT, type CacheAdapter, type CategoryForecast, CategoryForecastSchema, CategorySnapshotSchema, type ChangeType, type ChangedFile, ChecklistBuilder, type CircularDependency, CircularDepsCollector, type CircularDepsResult, type CleanupFinding, type CodeBlock, type CodeChanges, type CodePattern, type CodeReference, type CodeSymbol, type CodebaseSnapshot, Collector, type CommentedCodeBlock, type CommitFormat, type CommitHistoryEntry, type CommitValidation, CompactionPipeline, type CompactionStrategy, ComplexityCollector, type ComplexityConfig, type ComplexityReport, type ComplexityThresholds, type ComplexityViolation, type CompoundLockHandle, CompoundLockHeldError, type ConfidenceTier, ConfidenceTierSchema, type ConfigError, type ConfigPattern, type Confirmation, ConfirmationSchema, ConflictError, type ConflictReport, ConsoleSink, type ConstraintError, type ConstraintNodeStore, ConstraintRule, type Content, type ContextBundle, type ContextError, type ContextFile, type ContextFilterResult, type ContextScopeOptions, ContributingFeatureSchema, type Contributions, ContributionsSchema, type Convention, CouplingCollector, type CouplingConfig, type CouplingReport, type CouplingThresholds, type CouplingViolation, type CoverageOptions, type CoverageReport, type CriticalPathEntry, CriticalPathResolver, type CriticalPathSet, type CustomRule, type CustomRuleResult, DEFAULT_LOADER_CONFIG, DEFAULT_PROVIDER_TIERS, DEFAULT_SECURITY_CONFIG, DEFAULT_STABILITY_THRESHOLDS, DEFAULT_STATE, DEFAULT_STREAM_INDEX, DEFAULT_TOKEN_BUDGET, DESTRUCTIVE_BASH, DOMAIN_BASELINES, type DailyAdoption, type DataPoint, type DeadCodeConfig, type DeadCodeReport, type DeadExport, type DeadFile, type DeadInternal, type DeduplicateFindingsOptions, DepDepthCollector, type DependencyEdge, type DependencyGraph, type DependencyValidation, type DependencyViolation, type DetectStaleResult, type DiffInfo, type Direction$1 as Direction, DirectionSchema$1 as DirectionSchema, type DocumentationDrift, type DocumentationFile, type DocumentationGap, type DriftConfig, type DriftReport, EMPTY_SUPPLY_CHAIN, ETagStore, EVIDENCE_SATURATION, EXTENSION_MAP, type EligibilityResult, EmergenceResult, type EmitEventInput, type EmitEventOptions, type EmitEventResult, type EmitInteractionInput, EmitInteractionInputSchema, EntropyAnalyzer, type EntropyConfig, EntropyConfigSchema, type EntropyError, type EntropyReport, type EstimatorCoefficients, type EventType, type EvidenceCoverageReport, ExclusionSet, type ExecutorHealth, type Export, type ExportMap, type ExternalSyncOptions, FACTOR_WEIGHTS, type FailureEntry, FailureEntrySchema, type FallbackPricingFile, type FanOutOptions, type FeaturePatch, type FeedbackAgentConfig, type FeedbackConfig, type FeedbackError$1 as FeedbackError, type FileCategory, type FileLessScoredCandidate, FileSink, type FindingLifecycle, FindingLifecycleSchema, type FindingSeverity, type Fix, type FixConfig, type FixResult, type FixType, ForbiddenImportCollector, type ForbiddenImportViolation, type ForbiddenPattern, type GateConfig, GateConfigSchema, type GateResult, GateResultSchema, GeminiCacheAdapter, type GenerateRubricOptions, type GenerationSection, type GitHubInlineComment, GitHubIssuesSyncAdapter, type GitScanOptions, type GraphAdapter, type GraphComplexityData, type GraphCouplingData, type GraphCoverageData, type GraphCriticalPathData, type GraphDependencyData, type GraphHarnessCheckData, type GraphImpactData, type GraphNode, type Handoff, HandoffSchema, type HarnessState, HarnessStateSchema, type HealthCheckResult, type HistoryEvent, type HistoryEventType, type Hotspot$1 as Hotspot, type HotspotContext, type Import, type InjectionFinding, type InjectionPattern, type InjectionSeverity, type InlineReference, type IntegrityReport, type InteractionType, InteractionTypeSchema, type InternalSymbol, type IsoWeek, type JSDocComment, KNOWLEDGE_TRACK_CATEGORIES, LITELLM_PRICING_URL, type LanguageParser, type Layer, type LayerConfig, LayerViolationCollector, type LearningPattern, type LearningsFrontmatter, type LearningsIndexEntry, type LiteLLMModelEntry, type LiteLLMPricingData, type LoadEventsOptions, type LoaderConfig, type Lockfile, type LockfilePackage, LockfilePackageSchema, LockfileSchema, type LogEntry, type LogFilter, MOCK_ADAPTER_NAME, type MakeTrackerConflictBodyOptions, type Manifest, ManifestSchema, type MechanicalCheckOptions, type MechanicalCheckResult, type MechanicalCheckStatus, type MechanicalFinding, type MergeResult, type Metric, MetricResult, type ModelProvider, type ModelTier, type ModelTierConfig, type ModuleDependency, ModuleSizeCollector, type NewFeatureInput, NoOpExecutor, NoOpSink, NoOpTelemetryAdapter, OpenAICacheAdapter, type OrchestratorResult, type OrphanedDep, type OutlineResult, type OverlapDimensions, type OverlapResult, PII_FIELD_DENYLIST, PII_LINE_RE, PII_TOKENS, type PackedEnvelope, type PaginatedSlice, type PaginationMeta, type ParallelGroups, type ParseError, type ParsedFile, type ParsedSection, type ParserLookup, type PatternConfig, PatternConfigSchema, type PatternMatch, type PatternReport, type PatternViolation, type PeerReview, type PeerReviewOptions, type PilotScoringOptions, type PipelineContext, type PipelineFlags, type PipelineOptions, type PipelineResult, type PrMetadata, PredictionEngine, type PredictionOptions, PredictionOptionsSchema, type RegressionResult as PredictionRegressionResult, RegressionResultSchema as PredictionRegressionResultSchema, type PredictionResult, PredictionResultSchema, type PredictionWarning, PredictionWarningSchema, type PricingCacheFile, type PricingDataset, type PriorReview, ProjectScanner, type PromoteResult, type ProtectedRegion, type ProtectedRegionMap, type ProtectionScope, type ProviderDefaults, type ProviderSystemBlock, type ProviderToolBlock, type PruneResult, PulseAdapterAlreadyRegisteredError, PulseConfigSchema, type PulseConfigValidation, PulseDbSourceSchema, PulseSourcesSchema, type Question, QuestionSchema, REQUIRED_SECTIONS, type ReachabilityNode, RegressionDetector, type RegressionFit, type RegressionReport, type RegressionResult$1 as RegressionResult, type ReviewAgentDescriptor, type ReviewAssessment, type ReviewChecklist, type ReviewComment, type ReviewContext, type ReviewDomain, type ReviewFinding, type ReviewItem, type ReviewOutputOptions, type ReviewPipelineResult, type ReviewStage, type ReviewStrength, type RoadmapMode, type RoadmapModeConfig, type RoadmapModeValidationConfig, type RoadmapTrackerClient, type Rubric, type RubricItem, type RuleOverride, RuleRegistry, type RunCIChecksInput, type RunPipelineOptions, SECURITY_DESCRIPTOR, STALENESS_WARNING_DAYS, STANDALONE_AGREEMENT, STATUS_RANK, type SafetyLevel, type ScanConfigFileResult, type ScanConfigFinding, type ScanConfigResult, type Hotspot as ScanHotspot, type HotspotOptions as ScanHotspotOptions, type ScanResult, type ScannedCommit, type ScoredCandidate, type SearchMatch, type SearchResult, type SecurityCategory, type SecurityCategorySnapshot, SecurityCategorySnapshotSchema, type SecurityConfidence, type SecurityConfig, SecurityConfigSchema, type Direction as SecurityDirection, DirectionSchema as SecurityDirectionSchema, type SecurityFinding, type SecurityRule, SecurityScanner, type SecuritySeverity, type SecurityTimelineFile, SecurityTimelineFileSchema, SecurityTimelineManager, type SecurityTimelineSnapshot, SecurityTimelineSnapshotSchema, type SecurityTrendLine, SecurityTrendLineSchema, type SecurityTrendResult, SecurityTrendResultSchema, type SeedOptions, type SelfReviewConfig, type SessionSummaryData, SharableBoundaryConfigSchema, SharableForbiddenImportSchema, SharableLayerSchema, SharableSecurityRulesSchema, type SizeBudgetConfig, type SizeBudgetReport, type SizeBudgetViolation, type SkillEvent, SkillEventSchema, type SkillExecutor, type SkillLoadPlan, SolutionDocFrontmatterSchema, type SolutionsDirValidation, type SourceFile, type Span, type SpanEvent, type SpecImpactEstimate, SpecImpactEstimateSchema, SpecImpactEstimator, SpecImpactSignalsSchema, type StabilityForecast, StabilityForecastSchema, type StabilityTaggedBlock, type StaleConstraint, type StalenessEntry, type StalenessReport, type StepExecutor, type StrategySeed, type StreamIndex, StreamIndexSchema, type StreamInfo, StreamInfoSchema, StructuralStrategy, type StructureValidation, type Suggestion, type SuggestionReport, type SupplyChainSnapshot, SupplyChainSnapshotSchema, type SupportedLanguage, type SuppressionRecord, type SymbolKind, type SyncChange, type SyncOptions, type TaintCheckResult, type TaintFinding, type TaintState, type TelemetryAdapter, type TelemetryHealth, ThresholdConfig, type TimeRange, type TimeToFixResult, TimeToFixResultSchema, type TimeToFixStats, TimeToFixStatsSchema, type CategorySnapshot as TimelineCategorySnapshot, type TimelineFile, TimelineFileSchema, TimelineManager, type TimelineSnapshot, TimelineSnapshotSchema, type TokenBudget, type TokenBudgetOverrides, type ToolDefinition, type Trace, type TrackedFeature, type TrackerClientConfig, type TrackerConflictBody, type TrackerSyncAdapter, type Transition, TransitionSchema, type TrendAttribution, TrendAttributionSchema, type TrendLine, TrendLineSchema, type TrendResult, TrendResultSchema, TruncationStrategy, type TrustScoreOptions, type TurnExecutor, TypeScriptParser, type UnfoldResult, type UnusedImport, type UpdateCheckState, VALIDATION_SCORES, VALID_SCOPES, VERSION, type ValidateFindingsOptions, type ValidationError, Violation, type ViolationCluster, ViolationHistory, ViolationHistoryManager, ViolationSnapshot, WHATWG_BAD_PORTS, type WorkflowPhase, type WritePulseConfigOptions, acquireCompoundLock, addProvenance, agentConfigRules, aggregateByDay as aggregateAdoptionByDay, aggregateByDay$1 as aggregateByDay, aggregateBySession, aggregateBySkill, analyzeDiff, analyzeLearningPatterns, appendFailure, appendLearning, appendSessionEntry, applyFixes, applyHotspotDowngrade, applyRecencyWeights, applySyncChanges, archiveFailures, archiveLearnings, archiveSession, archiveStream, assembleCandidateReport, assembleReport, assertPortUsable, assertSanitized, assignFeature, buildDependencyGraph, buildExclusionSet, buildSnapshot, calculateCacheSavings, calculateCost, checkDocCoverage, checkEligibility, checkEvidenceCoverage, checkOverlap, checkTaint, classifyConfidence, classifyFinding, clearEventHashCache, clearFailuresCache, clearLearningsCache, clearPulseAdapters, clearTaint, clusterViolations, collectEvents, computeContentHash, computeHotspots, computeLexicalSimilarity, computeLoadPlan, computeOverallSeverity, computeScanExitCode, computeTrustScores, computeWindow, configureFeedback, constraintRuleId, contextBudget, contextFilter, countLearningEntries, createBoundaryValidator, createCommentedCodeFixes, createError, createFixes, createForbiddenImportFixes, createOrphanedDepFixes, createParseError, createRegionMap, createSelfReview, createStream, createTrackerClient, crossReferenceUndocumentedFixes, cryptoRules, deduplicateCleanupFindings, deduplicateFindings, deepMergeConstraints, defaultCollectors, defineLayer, deserializationRules, detectChangeType, detectCircularDeps, detectCircularDepsInFiles, detectComplexityViolations, detectCouplingViolations, detectDeadCode, detectDocDrift, detectEmergentConstraints, detectLanguage, detectPatternViolations, detectSizeBudgetViolations, detectStack, detectStaleConstraints, detectStaleLearnings, determineAssessment, diff, emitEvent, estimateTokens, executeWorkflow, expressRules, extractBundle, extractDirectoryScope, extractFileReferences, extractHeadlines, extractIndexEntry, extractLevel, extractMarkdownLinks, extractSections, fanOutReview, findParallelGroups, formatCIReportAsMarkdown, formatEventTimeline, formatFindingBlock, formatGitHubComment, formatGitHubSummary, formatIsoWeek, formatOutline, formatTerminalOutput, fullSync, generateAgentsMap, generateRubric, generateSuggestions, getActionEmitter, getExitCode, getFeedbackConfig, getInjectionPatterns, getModelPrice, getOrCreateInstallId, getOutline, getParser, getPhaseCategories, getPulseAdapter, getRoadmapMode, getStreamForBranch, getTaintFilePath, getTrustLevel, getUpdateNotification, gitScan, goRules, injectionRules, insecureDefaultsRules, isBadPort, isDuplicateFinding, isRegression, isSanitizedResult, isSmallSuggestion, isUpdateCheckEnabled, isoWeek, listActiveSessions, listPulseAdapters, listStreams, listTaintedSessions, loadBudgetedLearnings, loadEvents, loadFailures, loadHandoff, loadIndexEntries, loadPricingData, loadProjectRoadmapMode, loadRelevantLearnings, loadSessionSummary, loadState, loadStreamIndex, loadTrackerClientConfigFromProject, loadTrackerSyncConfig, logAgentAction, makeTrackerConflictBody, mapInjectionFindings, mapSecurityFindings, mapSecuritySeverity, markProtectedFindings, mcpRules, index as migrate, migrateToStreams, networkRules, nodeRules, normalizeLearningContent, normalizeViolationPattern, paginate, parseCCRecords, parseDateFromEntry, parseDiff, parseFile, parseFileRegions, parseFrontmatter, parseHarnessIgnore, parseLiteLLMData, parseLookback, parseManifest, parseProtectedRegions, parseRoadmap, parseSections, parseSecurityConfig, parseSize, pathTraversalRules, previewFix, projectValue, promoteSessionLearnings, pruneLearnings, reactRules, readAdoptionRecords, readCheckState, readCostRecords, readIdentity, readLockfile, readSessionSection, readSessionSections, readTaint, registerMockAdapter, registerPulseAdapter, removeContributions, removeProvenance, requestMultiplePeerReviews, requestPeerReview, resetFeedbackConfig, resetParserCache, resolveConsent, resolveFileToLayer, resolveModelTier, resolveReverseStatus, resolveRuleSeverity, resolveSessionDir, resolveStability, resolveStreamPath, resolveThresholds, runFallbackRules as runAgentConfigFallbackRules, runAll, runArchitectureAgent, runBugDetectionAgent, runCIChecks, runComplianceAgent, runMechanicalChecks, runMechanicalGate, runMultiTurnPipeline, runPipeline, runPulse, runReviewPipeline, runSecurityAgent, saveHandoff, saveState, saveStreamIndex, scanForInjection, scopeContext, scoreRoadmapCandidates, scoreRoadmapCandidatesFileLess, scoreRoadmapCandidatesForMode, searchSymbols, secretRules, securityFindingId, seedFromStrategy, send, serializeEnvelope, serializeRoadmap, setActiveStream, sharpEdgesRules, shouldRunCheck, spawnBackgroundCheck, splitBundlesByStage, stageDomains, suggestCategory, syncConstraintNodes, syncFromExternal, syncRoadmap, syncToExternal, tagUncitedFindings, topSkills, touchStream, trackAction, unfoldRange, unfoldSymbol, updateSessionEntryStatus, updateSessionIndex, validateAgentConfigs, validateAgentsMap, validateBoundaries, validateBranchName, validateCommitMessage, validateConfig, validateDependencies, validateFileStructure, validateFindings, validateKnowledgeMap, validatePatternConfig, validatePulseConfig, validateRoadmapMode, validateSolutionsDir, violationId, weeksUntilThreshold, weightedLinearRegression, writeConfig, writeLockfile, writePulseConfig, writeSessionSummary, writeTaint, xssRules };
9919
+ export { AGENT_DESCRIPTORS, AGREEMENT_LINE_GAP, ALLOWED_FIELD_KEYS, ALL_SOLUTION_CATEGORIES, ARCHITECTURE_DESCRIPTOR, type AST, type AcquireOptions, type ActionContext, type ActionEvent, type ActionEventHandler, type ActionEventType, type ActionResult, type ActionSink, type ActionTracker, type ActionType, type AdjustedForecast, AdjustedForecastSchema, type AgentAction, AgentActionEmitter, type AgentConfigFallbackReason, type AgentConfigFinding, type AgentConfigOptions, type AgentConfigSeverity, type AgentConfigValidation, type AgentExecutor, type AgentMapLink, type AgentMapSection, type AgentMapValidation, type AgentProcess, type AgentReviewResult, type AgentType, type AgentsMapConfig, type AnnotationIssue, type AnnotationIssueType, AnthropicCacheAdapter, type AppendLearningResult, ArchBaseline, ArchBaselineManager, ArchConfig, ArchDiffResult, ArchMetricCategory, type AssembleInput, BUG_DETECTION_DESCRIPTOR, BUG_TRACK_CATEGORIES, type BaseError, type Baseline, BaselineManager, type BaselinesFile, type BenchmarkResult, type BenchmarkRunOptions, BenchmarkRunner, type BlueprintData, BlueprintGenerator, type BlueprintModule, type BlueprintOptions, type BoundaryDefinition, type BoundaryValidation, type BoundaryValidator, type BoundaryViolation, type BranchValidationResult, type BranchingConfig, type BrokenLink, type BudgetedLearningsOptions, type Bundle, type BundleConstraints, BundleConstraintsSchema, BundleSchema, CACHE_TTL_MS, CINotifier, COMPLIANCE_DESCRIPTOR, CORROBORATED_AGREEMENT, type CacheAdapter, CacheMetricsRecorder, type CacheMetricsRecorderOptions, type CategoryForecast, CategoryForecastSchema, CategorySnapshotSchema, type ChangeType, type ChangedFile, ChecklistBuilder, type CircularDependency, CircularDepsCollector, type CircularDepsResult, type CleanupFinding, type CodeBlock, type CodeChanges, type CodePattern, type CodeReference, type CodeSymbol, type CodebaseSnapshot, Collector, type CommentedCodeBlock, type CommitFormat, type CommitHistoryEntry, type CommitValidation, CompactionPipeline, type CompactionStrategy, ComplexityCollector, type ComplexityConfig, type ComplexityReport, type ComplexityThresholds, type ComplexityViolation, type CompoundLockHandle, CompoundLockHeldError, type ConfidenceTier, ConfidenceTierSchema, type ConfigError, type ConfigPattern, type Confirmation, ConfirmationSchema, ConflictError, type ConflictReport, ConsoleSink, type ConstraintError, type ConstraintNodeStore, ConstraintRule, type Content, type ContextBundle, type ContextError, type ContextFile, type ContextFilterResult, type ContextScopeOptions, ContributingFeatureSchema, type Contributions, ContributionsSchema, type Convention, CouplingCollector, type CouplingConfig, type CouplingReport, type CouplingThresholds, type CouplingViolation, type CoverageOptions, type CoverageReport, type CriticalPathEntry, CriticalPathResolver, type CriticalPathSet, type CustomRule, type CustomRuleResult, DEFAULT_LOADER_CONFIG, DEFAULT_PROVIDER_TIERS, DEFAULT_SECURITY_CONFIG, DEFAULT_STABILITY_THRESHOLDS, DEFAULT_STATE, DEFAULT_STREAM_INDEX, DEFAULT_TOKEN_BUDGET, DESTRUCTIVE_BASH, DOMAIN_BASELINES, type DailyAdoption, type DataPoint, type DeadCodeConfig, type DeadCodeReport, type DeadExport, type DeadFile, type DeadInternal, type DeduplicateFindingsOptions, DepDepthCollector, type DependencyEdge, type DependencyGraph, type DependencyValidation, type DependencyViolation, type DetectStaleResult, type DiffInfo, type Direction$1 as Direction, DirectionSchema$1 as DirectionSchema, type DocumentationDrift, type DocumentationFile, type DocumentationGap, type DriftConfig, type DriftReport, EMPTY_SUPPLY_CHAIN, ETagStore, EVIDENCE_SATURATION, EXTENSION_MAP, type EligibilityResult, EmergenceResult, type EmitEventInput, type EmitEventOptions, type EmitEventResult, type EmitInteractionInput, EmitInteractionInputSchema, EntropyAnalyzer, type EntropyConfig, EntropyConfigSchema, type EntropyError, type EntropyReport, type EstimatorCoefficients, type EventType, type EvidenceCoverageReport, ExclusionSet, type ExecutorHealth, type Export, type ExportMap, type ExternalSyncOptions, FACTOR_WEIGHTS, type FailureEntry, FailureEntrySchema, type FallbackPricingFile, type FanOutOptions, type FeaturePatch, type FeedbackAgentConfig, type FeedbackConfig, type FeedbackError$1 as FeedbackError, type FileCategory, type FileLessScoredCandidate, FileSink, type FindingLifecycle, FindingLifecycleSchema, type FindingSeverity, type Fix, type FixConfig, type FixResult, type FixType, ForbiddenImportCollector, type ForbiddenImportViolation, type ForbiddenPattern, type GateConfig, GateConfigSchema, type GateResult, GateResultSchema, GeminiCacheAdapter, type GenerateRubricOptions, type GenerationSection, type GitHubInlineComment, GitHubIssuesSyncAdapter, type GitScanOptions, type GraphAdapter, type GraphComplexityData, type GraphCouplingData, type GraphCoverageData, type GraphCriticalPathData, type GraphDependencyData, type GraphHarnessCheckData, type GraphImpactData, type GraphNode, type Handoff, HandoffSchema, type HarnessState, HarnessStateSchema, type HealthCheckResult, type HistoryEvent, type HistoryEventType, type Hotspot$1 as Hotspot, type HotspotContext, type Import, type InjectionFinding, type InjectionPattern, type InjectionSeverity, type InlineReference, type IntegrityReport, type InteractionType, InteractionTypeSchema, type InternalSymbol, type IsoWeek, type JSDocComment, KNOWLEDGE_TRACK_CATEGORIES, LITELLM_PRICING_URL, type LanguageParser, type Layer, type LayerConfig, LayerViolationCollector, type LearningPattern, type LearningsFrontmatter, type LearningsIndexEntry, type LiteLLMModelEntry, type LiteLLMPricingData, type LoadEventsOptions, type LoaderConfig, type Lockfile, type LockfilePackage, LockfilePackageSchema, LockfileSchema, type LogEntry, type LogFilter, MOCK_ADAPTER_NAME, type MakeTrackerConflictBodyOptions, type Manifest, ManifestSchema, type MechanicalCheckOptions, type MechanicalCheckResult, type MechanicalCheckStatus, type MechanicalFinding, type MergeResult, type Metric, MetricResult, type ModelProvider, type ModelTier, type ModelTierConfig, type ModuleDependency, ModuleSizeCollector, type NewFeatureInput, NoOpExecutor, NoOpSink, NoOpTelemetryAdapter, OTLPExporter, type OTLPExporterOptions, OpenAICacheAdapter, type OrchestratorResult, type OrphanedDep, type OutlineResult, type OverlapDimensions, type OverlapResult, PII_FIELD_DENYLIST, PII_LINE_RE, PII_TOKENS, type PackedEnvelope, type PaginatedSlice, type PaginationMeta, type ParallelGroups, type ParseError, type ParsedFile, type ParsedSection, type ParserLookup, type PatternConfig, PatternConfigSchema, type PatternMatch, type PatternReport, type PatternViolation, type PeerReview, type PeerReviewOptions, type PilotScoringOptions, type PipelineContext, type PipelineFlags, type PipelineOptions, type PipelineResult, type PrMetadata, PredictionEngine, type PredictionOptions, PredictionOptionsSchema, type RegressionResult as PredictionRegressionResult, RegressionResultSchema as PredictionRegressionResultSchema, type PredictionResult, PredictionResultSchema, type PredictionWarning, PredictionWarningSchema, type PricingCacheFile, type PricingDataset, type PriorReview, ProjectScanner, type PromoteResult, type ProtectedRegion, type ProtectedRegionMap, type ProtectionScope, type ProviderDefaults, type ProviderSystemBlock, type ProviderToolBlock, type PruneResult, PulseAdapterAlreadyRegisteredError, PulseConfigSchema, type PulseConfigValidation, PulseDbSourceSchema, PulseSourcesSchema, type Question, QuestionSchema, REQUIRED_SECTIONS, type ReachabilityNode, RegressionDetector, type RegressionFit, type RegressionReport, type RegressionResult$1 as RegressionResult, type ReviewAgentDescriptor, type ReviewAssessment, type ReviewChecklist, type ReviewComment, type ReviewContext, type ReviewDomain, type ReviewFinding, type ReviewItem, type ReviewOutputOptions, type ReviewPipelineResult, type ReviewStage, type ReviewStrength, type RoadmapMode, type RoadmapModeConfig, type RoadmapModeValidationConfig, type RoadmapTrackerClient, type Rubric, type RubricItem, type RuleOverride, RuleRegistry, type RunCIChecksInput, type RunPipelineOptions, SECURITY_DESCRIPTOR, STALENESS_WARNING_DAYS, STANDALONE_AGREEMENT, STATUS_RANK, type SafetyLevel, type ScanConfigFileResult, type ScanConfigFinding, type ScanConfigResult, type Hotspot as ScanHotspot, type HotspotOptions as ScanHotspotOptions, type ScanResult, type ScannedCommit, type ScoredCandidate, type SearchMatch, type SearchResult, type SecurityCategory, type SecurityCategorySnapshot, SecurityCategorySnapshotSchema, type SecurityConfidence, type SecurityConfig, SecurityConfigSchema, type Direction as SecurityDirection, DirectionSchema as SecurityDirectionSchema, type SecurityFinding, type SecurityRule, SecurityScanner, type SecuritySeverity, type SecurityTimelineFile, SecurityTimelineFileSchema, SecurityTimelineManager, type SecurityTimelineSnapshot, SecurityTimelineSnapshotSchema, type SecurityTrendLine, SecurityTrendLineSchema, type SecurityTrendResult, SecurityTrendResultSchema, type SeedOptions, type SelfReviewConfig, type SessionSummaryData, SharableBoundaryConfigSchema, SharableForbiddenImportSchema, SharableLayerSchema, SharableSecurityRulesSchema, type SizeBudgetConfig, type SizeBudgetReport, type SizeBudgetViolation, type SkillEvent, SkillEventSchema, type SkillExecutor, type SkillLoadPlan, SolutionDocFrontmatterSchema, type SolutionsDirValidation, type SourceFile, type Span, type SpanAttributes, type SpanEvent, SpanKind, type SpecImpactEstimate, SpecImpactEstimateSchema, SpecImpactEstimator, SpecImpactSignalsSchema, type StabilityForecast, StabilityForecastSchema, type StabilityTaggedBlock, type StaleConstraint, type StalenessEntry, type StalenessReport, type StepExecutor, type StrategySeed, type StreamIndex, StreamIndexSchema, type StreamInfo, StreamInfoSchema, StructuralStrategy, type StructureValidation, type Suggestion, type SuggestionReport, type SupplyChainSnapshot, SupplyChainSnapshotSchema, type SupportedLanguage, type SuppressionRecord, type SymbolKind, type SyncChange, type SyncOptions, type TaintCheckResult, type TaintFinding, type TaintState, type TelemetryAdapter, type TelemetryHealth, ThresholdConfig, type TimeRange, type TimeToFixResult, TimeToFixResultSchema, type TimeToFixStats, TimeToFixStatsSchema, type CategorySnapshot as TimelineCategorySnapshot, type TimelineFile, TimelineFileSchema, TimelineManager, type TimelineSnapshot, TimelineSnapshotSchema, type TokenBudget, type TokenBudgetOverrides, type ToolDefinition, type Trace, type TraceSpan, type TrackedFeature, type TrackerClientConfig, type TrackerConflictBody, type TrackerSyncAdapter, type Transition, TransitionSchema, type TrendAttribution, TrendAttributionSchema, type TrendLine, TrendLineSchema, type TrendResult, TrendResultSchema, TruncationStrategy, type TrustScoreOptions, type TurnExecutor, TypeScriptParser, type UnfoldResult, type UnusedImport, type UpdateCheckState, VALIDATION_SCORES, VALID_SCOPES, VERSION, type ValidateFindingsOptions, type ValidationError, Violation, type ViolationCluster, ViolationHistory, ViolationHistoryManager, ViolationSnapshot, WHATWG_BAD_PORTS, type WorkflowPhase, type WritePulseConfigOptions, acquireCompoundLock, addProvenance, agentConfigRules, aggregateByDay as aggregateAdoptionByDay, aggregateByDay$1 as aggregateByDay, aggregateBySession, aggregateBySkill, analyzeDiff, analyzeLearningPatterns, appendFailure, appendLearning, appendSessionEntry, applyFixes, applyHotspotDowngrade, applyRecencyWeights, applySyncChanges, archiveFailures, archiveLearnings, archiveSession, archiveStream, assembleCandidateReport, assembleReport, assertPortUsable, assertSanitized, assignFeature, buildDependencyGraph, buildExclusionSet, buildSnapshot, calculateCacheSavings, calculateCost, checkDocCoverage, checkEligibility, checkEvidenceCoverage, checkOverlap, checkTaint, classifyConfidence, classifyFinding, clearEventHashCache, clearFailuresCache, clearLearningsCache, clearPulseAdapters, clearTaint, clusterViolations, collectEvents, computeContentHash, computeHotspots, computeLexicalSimilarity, computeLoadPlan, computeOverallSeverity, computeScanExitCode, computeTrustScores, computeWindow, configureFeedback, constraintRuleId, contextBudget, contextFilter, countLearningEntries, createBoundaryValidator, createCommentedCodeFixes, createError, createFixes, createForbiddenImportFixes, createOrphanedDepFixes, createParseError, createRegionMap, createSelfReview, createStream, createTrackerClient, crossReferenceUndocumentedFixes, cryptoRules, deduplicateCleanupFindings, deduplicateFindings, deepMergeConstraints, defaultCollectors, defineLayer, deserializationRules, detectChangeType, detectCircularDeps, detectCircularDepsInFiles, detectComplexityViolations, detectCouplingViolations, detectDeadCode, detectDocDrift, detectEmergentConstraints, detectLanguage, detectPatternViolations, detectSizeBudgetViolations, detectStack, detectStaleConstraints, detectStaleLearnings, determineAssessment, diff, emitEvent, estimateTokens, executeWorkflow, expressRules, extractBundle, extractDirectoryScope, extractFileReferences, extractHeadlines, extractIndexEntry, extractLevel, extractMarkdownLinks, extractSections, fanOutReview, findParallelGroups, formatCIReportAsMarkdown, formatEventTimeline, formatFindingBlock, formatGitHubComment, formatGitHubSummary, formatIsoWeek, formatOutline, formatTerminalOutput, fullSync, generateAgentsMap, generateRubric, generateSuggestions, getActionEmitter, getExitCode, getFeedbackConfig, getInjectionPatterns, getModelPrice, getOrCreateInstallId, getOutline, getParser, getPhaseCategories, getPulseAdapter, getRoadmapMode, getStreamForBranch, getTaintFilePath, getTrustLevel, getUpdateNotification, gitScan, goRules, injectionRules, insecureDefaultsRules, invalidateCheckState, isBadPort, isDuplicateFinding, isRegression, isSanitizedResult, isSmallSuggestion, isUpdateCheckEnabled, isoWeek, listActiveSessions, listPulseAdapters, listStreams, listTaintedSessions, loadBudgetedLearnings, loadEvents, loadFailures, loadHandoff, loadIndexEntries, loadPricingData, loadProjectRoadmapMode, loadRelevantLearnings, loadSessionSummary, loadState, loadStreamIndex, loadTrackerClientConfigFromProject, loadTrackerSyncConfig, logAgentAction, makeTrackerConflictBody, mapInjectionFindings, mapSecurityFindings, mapSecuritySeverity, markProtectedFindings, mcpRules, index as migrate, migrateToStreams, networkRules, nodeRules, normalizeLearningContent, normalizeViolationPattern, paginate, parseCCRecords, parseDateFromEntry, parseDiff, parseFile, parseFileRegions, parseFrontmatter, parseHarnessIgnore, parseLiteLLMData, parseLookback, parseManifest, parseProtectedRegions, parseRoadmap, parseSections, parseSecurityConfig, parseSize, pathTraversalRules, previewFix, projectValue, promoteSessionLearnings, pruneLearnings, reactRules, readAdoptionRecords, readCheckState, readCostRecords, readIdentity, readLockfile, readSessionSection, readSessionSections, readTaint, registerMockAdapter, registerPulseAdapter, removeContributions, removeProvenance, requestMultiplePeerReviews, requestPeerReview, resetFeedbackConfig, resetParserCache, resolveConsent, resolveFileToLayer, resolveModelTier, resolveReverseStatus, resolveRuleSeverity, resolveSessionDir, resolveStability, resolveStreamPath, resolveThresholds, runFallbackRules as runAgentConfigFallbackRules, runAll, runArchitectureAgent, runBugDetectionAgent, runCIChecks, runComplianceAgent, runMechanicalChecks, runMechanicalGate, runMultiTurnPipeline, runPipeline, runPulse, runReviewPipeline, runSecurityAgent, saveHandoff, saveState, saveStreamIndex, scanForInjection, scopeContext, scoreRoadmapCandidates, scoreRoadmapCandidatesFileLess, scoreRoadmapCandidatesForMode, searchSymbols, secretRules, securityFindingId, seedFromStrategy, send, serializeEnvelope, serializeRoadmap, setActiveStream, sharpEdgesRules, shouldRunCheck, spawnBackgroundCheck, splitBundlesByStage, stageDomains, suggestCategory, syncConstraintNodes, syncFromExternal, syncRoadmap, syncToExternal, tagUncitedFindings, topSkills, touchStream, trackAction, unfoldRange, unfoldSymbol, updateSessionEntryStatus, updateSessionIndex, validateAgentConfigs, validateAgentsMap, validateBoundaries, validateBranchName, validateCommitMessage, validateConfig, validateDependencies, validateFileStructure, validateFindings, validateKnowledgeMap, validatePatternConfig, validatePulseConfig, validateRoadmapMode, validateSolutionsDir, violationId, weeksUntilThreshold, weightedLinearRegression, writeConfig, writeLockfile, writePulseConfig, writeSessionSummary, writeTaint, xssRules };
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { Result, LoadingLevel, SkillContextBudget, SessionSectionName, SessionEntry, SessionSections, WorkflowStep, WorkflowStepResult, Workflow, WorkflowResult, SkillLifecycleHooks, SkillContext, SkillResult, TurnContext, CICheckName, CIFailOnSeverity, CICheckReport, RoadmapFeature, ExternalTicket, ExternalTicketState, TrackerComment, TrackerSyncConfig, CINotifyOptions, Roadmap, FeatureStatus, SyncResult, Priority, ModelPricing, UsageRecord, DailyUsage, SessionUsage, SkillInvocationRecord, SkillAdoptionSummary, StabilityTier, TelemetryIdentity, TelemetryConfig, ConsentState, TelemetryEvent, SolutionCategory, SanitizedResult, PulseConfig, PulseAdapter, PulseWindow } from '@harness-engineering/types';
1
+ import { Result, LoadingLevel, SkillContextBudget, SessionSectionName, SessionEntry, SessionSections, WorkflowStep, WorkflowStepResult, Workflow, WorkflowResult, SkillLifecycleHooks, SkillContext, SkillResult, TurnContext, CICheckName, CIFailOnSeverity, CICheckReport, RoadmapFeature, ExternalTicket, ExternalTicketState, TrackerComment, TrackerSyncConfig, CINotifyOptions, Roadmap, FeatureStatus, SyncResult, Priority, ModelPricing, UsageRecord, DailyUsage, SessionUsage, SkillInvocationRecord, SkillAdoptionSummary, StabilityTier, TelemetryIdentity, TelemetryConfig, ConsentState, TelemetryEvent, PromptCacheStats, SolutionCategory, SanitizedResult, PulseConfig, PulseAdapter, PulseWindow } from '@harness-engineering/types';
2
2
  export * from '@harness-engineering/types';
3
3
  export { BlockerRef, BugTrackCategory, Issue, IssueTrackerClient, KnowledgeTrackCategory, PulseAdapter, PulseConfig, PulseDbSource, PulseRunStatus, PulseRunStatusType, PulseSources, PulseWindow, SanitizeFn, SanitizedResult, SolutionCategory, SolutionDocFrontmatter, SolutionTrack, TrackerConfig } from '@harness-engineering/types';
4
4
  import { z } from 'zod';
@@ -8804,6 +8804,16 @@ declare function isUpdateCheckEnabled(configInterval?: number): boolean;
8804
8804
  * If state is null (never checked), returns true.
8805
8805
  */
8806
8806
  declare function shouldRunCheck(state: UpdateCheckState | null, intervalMs: number): boolean;
8807
+ /**
8808
+ * Removes the cached update-check state.
8809
+ *
8810
+ * Call after a successful `harness update` so the next CLI invocation cannot
8811
+ * print a stale "Update available" notification reflecting the pre-upgrade
8812
+ * state. With the file gone, `readCheckState` returns null and the
8813
+ * notification path bails out; the next invocation will rerun the background
8814
+ * check on its normal cadence.
8815
+ */
8816
+ declare function invalidateCheckState(): void;
8807
8817
  /**
8808
8818
  * Reads the update check state from ~/.harness/update-check.json.
8809
8819
  * Returns null if the file is missing, unreadable, or has invalid content.
@@ -9296,6 +9306,188 @@ declare function collectEvents(projectRoot: string, consent: ConsentState & {
9296
9306
  */
9297
9307
  declare function send(events: TelemetryEvent[], apiKey: string): Promise<void>;
9298
9308
 
9309
+ /**
9310
+ * CacheMetricsRecorder — in-memory ring buffer recording prompt-cache
9311
+ * hits/misses per backend invocation. Powers `GET /api/v1/telemetry/cache/stats`
9312
+ * and the dashboard `/insights/cache` widget.
9313
+ *
9314
+ * Design notes:
9315
+ * - Sliding window of the last `capacity` records (default 1000). When
9316
+ * the buffer is full, oldest records are evicted FIFO. Restarts reset
9317
+ * the window — this is intentional: prompt-cache hit-rate is a
9318
+ * debugging/observability signal, not an audit record.
9319
+ * - `windowStartedAt` is set on the first `record()` after construction
9320
+ * (or after `reset()`) and is reported as a unix-ms timestamp. Empty
9321
+ * recorders report `0` so the API response remains JSON-stable.
9322
+ * - All operations are O(1) amortized; `record()` is on the hot path
9323
+ * for every Anthropic response and must not allocate.
9324
+ */
9325
+
9326
+ interface CacheMetricsRecorderOptions {
9327
+ capacity?: number;
9328
+ /** Injectable clock for deterministic testing. Defaults to `Date.now`. */
9329
+ now?: () => number;
9330
+ }
9331
+ declare class CacheMetricsRecorder {
9332
+ private readonly capacity;
9333
+ private readonly now;
9334
+ private readonly buffer;
9335
+ private windowStartedAt;
9336
+ constructor(opts?: CacheMetricsRecorderOptions);
9337
+ /**
9338
+ * Append a single cache observation. Hot-path: O(1) amortized, no
9339
+ * allocations beyond the sample object itself.
9340
+ */
9341
+ record(backendId: string, hit: boolean, tokensCreated: number, tokensRead: number): void;
9342
+ /** Aggregate the current window into a `PromptCacheStats` snapshot. */
9343
+ getStats(): PromptCacheStats;
9344
+ /** Clear the buffer and reset the window-start marker. */
9345
+ reset(): void;
9346
+ }
9347
+
9348
+ /**
9349
+ * In-tree trace span shapes for the OTLP/HTTP JSON exporter.
9350
+ *
9351
+ * These are the internal representations the orchestrator buffers and
9352
+ * hands to `OTLPExporter.push()`. The exporter converts them to the OTLP
9353
+ * wire format (string-encoded int64 timestamps, hex-encoded ids) before
9354
+ * serializing as JSON for `/v1/traces` requests.
9355
+ *
9356
+ * See `packages/types/src/telemetry.ts` for the OTLP wire-format shapes
9357
+ * and the rationale for stringly-typed nanosecond timestamps.
9358
+ */
9359
+ /**
9360
+ * SpanKind enum mirroring the OTel spec values 1..5. Spans emitted by
9361
+ * the orchestrator are predominantly `INTERNAL`; we leave the other
9362
+ * variants exposed for future producer/consumer fanout instrumentation.
9363
+ */
9364
+ declare enum SpanKind {
9365
+ INTERNAL = 1,
9366
+ SERVER = 2,
9367
+ CLIENT = 3,
9368
+ PRODUCER = 4,
9369
+ CONSUMER = 5
9370
+ }
9371
+ /**
9372
+ * Free-form attribute bag attached to a span. Values must be scalar:
9373
+ * strings, numbers, or booleans (the OTLP/HTTP JSON converter only
9374
+ * supports `stringValue` / `intValue` / `doubleValue` / `boolValue`).
9375
+ */
9376
+ interface SpanAttributes {
9377
+ [key: string]: string | number | boolean;
9378
+ }
9379
+ /**
9380
+ * A completed trace span ready for export. `startTimeNs` and `endTimeNs`
9381
+ * are unix epoch nanoseconds as `bigint` (JS `number` cannot losslessly
9382
+ * hold int64); the exporter stringifies them for the OTLP JSON payload.
9383
+ *
9384
+ * `traceId` is a 32-char lowercase hex string (16 bytes); `spanId` and
9385
+ * `parentSpanId` are 16-char lowercase hex strings (8 bytes) per the
9386
+ * OTel trace context spec.
9387
+ *
9388
+ * `statusCode` follows OTel convention: 0 = UNSET, 1 = OK, 2 = ERROR.
9389
+ */
9390
+ interface TraceSpan {
9391
+ traceId: string;
9392
+ spanId: string;
9393
+ parentSpanId?: string;
9394
+ name: string;
9395
+ kind: SpanKind;
9396
+ startTimeNs: bigint;
9397
+ endTimeNs: bigint;
9398
+ attributes: SpanAttributes;
9399
+ statusCode?: 0 | 1 | 2;
9400
+ }
9401
+
9402
+ /**
9403
+ * OTLPExporter — hand-rolled OTLP/HTTP JSON exporter for trace spans.
9404
+ *
9405
+ * Buffers `TraceSpan` instances in-memory and flushes them as OTLP/HTTP
9406
+ * v1.0.0 JSON payloads to a configurable `/v1/traces` endpoint on a
9407
+ * timer (default 2 s) or when the batch size is hit (default 64).
9408
+ *
9409
+ * Design contracts:
9410
+ * - {@link push} is synchronous and never awaits. The orchestrator hot
9411
+ * path may call `push()` thousands of times per second; we must add
9412
+ * < 5 ms p99 to dispatch latency (Phase 5 acceptance criterion).
9413
+ * - {@link flush} is fire-and-forget. On HTTP failure we retry up to 3
9414
+ * times with 1 s / 2 s / 4 s backoff, then drop the batch and log a
9415
+ * single `console.warn`. The exporter never queues to disk.
9416
+ * - When `enabled: false`, {@link push} is a constant-time no-op so
9417
+ * callers can wire the recorder unconditionally without branching.
9418
+ * - {@link stop} flushes the remaining buffer before resolving so we
9419
+ * don't lose data on graceful shutdown.
9420
+ *
9421
+ * Wire format (per OTLP/HTTP v1.0.0 spec):
9422
+ * ```json
9423
+ * {
9424
+ * "resourceSpans": [{
9425
+ * "resource": { "attributes": [{ "key": "service.name", "value": { "stringValue": "harness" } }] },
9426
+ * "scopeSpans": [{
9427
+ * "scope": { "name": "harness" },
9428
+ * "spans": [ ...OTLPSpan[] ]
9429
+ * }]
9430
+ * }]
9431
+ * }
9432
+ * ```
9433
+ *
9434
+ * `traceId` / `spanId` are lowercase hex strings (16 / 8 bytes); time
9435
+ * fields are stringly-typed nanoseconds (JSON cannot losslessly hold
9436
+ * int64).
9437
+ */
9438
+
9439
+ interface OTLPExporterOptions {
9440
+ /** Full OTLP/HTTP traces endpoint, e.g. `http://localhost:4318/v1/traces`. */
9441
+ endpoint: string;
9442
+ /** Default `true`. When `false`, push() is a no-op. */
9443
+ enabled?: boolean;
9444
+ /** Custom headers (auth tokens, etc.). */
9445
+ headers?: Record<string, string>;
9446
+ /** Flush interval in ms. Default 2000. */
9447
+ flushIntervalMs?: number;
9448
+ /** Buffer size that triggers an immediate flush. Default 64. */
9449
+ batchSize?: number;
9450
+ /** Injectable fetch for tests. Defaults to `globalThis.fetch`. */
9451
+ fetchImpl?: typeof fetch;
9452
+ /** Injectable warn for tests. Defaults to `console.warn`. */
9453
+ warn?: (...args: unknown[]) => void;
9454
+ }
9455
+ declare class OTLPExporter {
9456
+ private readonly endpoint;
9457
+ private readonly enabled;
9458
+ private readonly headers;
9459
+ private readonly flushIntervalMs;
9460
+ private readonly batchSize;
9461
+ private readonly fetchImpl;
9462
+ private readonly warn;
9463
+ private buffer;
9464
+ private timer;
9465
+ private readonly inFlightFlushes;
9466
+ constructor(opts: OTLPExporterOptions);
9467
+ /**
9468
+ * O(1) buffer push. When `enabled === false` this is a no-op. If the
9469
+ * buffer reaches `batchSize`, a flush is triggered without awaiting.
9470
+ */
9471
+ push(span: TraceSpan): void;
9472
+ /** Start the periodic flush timer. Idempotent. */
9473
+ start(): void;
9474
+ /** Flush any pending spans and stop the timer. Awaits all in-flight flushes. */
9475
+ stop(): Promise<void>;
9476
+ /**
9477
+ * Synchronously claim the current buffer and POST it to `/v1/traces`.
9478
+ * Each invocation runs independently — concurrent flushes (e.g. one
9479
+ * from the timer, one from a `batchSize` trip) each drain their own
9480
+ * batch. Retries up to 3 times on transport or 5xx failure, then
9481
+ * drops with a single warning.
9482
+ */
9483
+ private flush;
9484
+ /**
9485
+ * Build the OTLP/HTTP JSON envelope for a batch of spans. Public for
9486
+ * tests; not part of the supported API surface.
9487
+ */
9488
+ spansToOTLPJSON(spans: TraceSpan[]): unknown;
9489
+ }
9490
+
9299
9491
  declare class CompoundLockHeldError extends Error {
9300
9492
  readonly category: SolutionCategory;
9301
9493
  readonly holderPid: number;
@@ -9722,6 +9914,6 @@ interface AssembleInput {
9722
9914
  }
9723
9915
  declare function assembleCandidateReport(input: AssembleInput): string;
9724
9916
 
9725
- declare const VERSION = "0.23.3";
9917
+ declare const VERSION = "0.25.0";
9726
9918
 
9727
- export { AGENT_DESCRIPTORS, AGREEMENT_LINE_GAP, ALLOWED_FIELD_KEYS, ALL_SOLUTION_CATEGORIES, ARCHITECTURE_DESCRIPTOR, type AST, type AcquireOptions, type ActionContext, type ActionEvent, type ActionEventHandler, type ActionEventType, type ActionResult, type ActionSink, type ActionTracker, type ActionType, type AdjustedForecast, AdjustedForecastSchema, type AgentAction, AgentActionEmitter, type AgentConfigFallbackReason, type AgentConfigFinding, type AgentConfigOptions, type AgentConfigSeverity, type AgentConfigValidation, type AgentExecutor, type AgentMapLink, type AgentMapSection, type AgentMapValidation, type AgentProcess, type AgentReviewResult, type AgentType, type AgentsMapConfig, type AnnotationIssue, type AnnotationIssueType, AnthropicCacheAdapter, type AppendLearningResult, ArchBaseline, ArchBaselineManager, ArchConfig, ArchDiffResult, ArchMetricCategory, type AssembleInput, BUG_DETECTION_DESCRIPTOR, BUG_TRACK_CATEGORIES, type BaseError, type Baseline, BaselineManager, type BaselinesFile, type BenchmarkResult, type BenchmarkRunOptions, BenchmarkRunner, type BlueprintData, BlueprintGenerator, type BlueprintModule, type BlueprintOptions, type BoundaryDefinition, type BoundaryValidation, type BoundaryValidator, type BoundaryViolation, type BranchValidationResult, type BranchingConfig, type BrokenLink, type BudgetedLearningsOptions, type Bundle, type BundleConstraints, BundleConstraintsSchema, BundleSchema, CACHE_TTL_MS, CINotifier, COMPLIANCE_DESCRIPTOR, CORROBORATED_AGREEMENT, type CacheAdapter, type CategoryForecast, CategoryForecastSchema, CategorySnapshotSchema, type ChangeType, type ChangedFile, ChecklistBuilder, type CircularDependency, CircularDepsCollector, type CircularDepsResult, type CleanupFinding, type CodeBlock, type CodeChanges, type CodePattern, type CodeReference, type CodeSymbol, type CodebaseSnapshot, Collector, type CommentedCodeBlock, type CommitFormat, type CommitHistoryEntry, type CommitValidation, CompactionPipeline, type CompactionStrategy, ComplexityCollector, type ComplexityConfig, type ComplexityReport, type ComplexityThresholds, type ComplexityViolation, type CompoundLockHandle, CompoundLockHeldError, type ConfidenceTier, ConfidenceTierSchema, type ConfigError, type ConfigPattern, type Confirmation, ConfirmationSchema, ConflictError, type ConflictReport, ConsoleSink, type ConstraintError, type ConstraintNodeStore, ConstraintRule, type Content, type ContextBundle, type ContextError, type ContextFile, type ContextFilterResult, type ContextScopeOptions, ContributingFeatureSchema, type Contributions, ContributionsSchema, type Convention, CouplingCollector, type CouplingConfig, type CouplingReport, type CouplingThresholds, type CouplingViolation, type CoverageOptions, type CoverageReport, type CriticalPathEntry, CriticalPathResolver, type CriticalPathSet, type CustomRule, type CustomRuleResult, DEFAULT_LOADER_CONFIG, DEFAULT_PROVIDER_TIERS, DEFAULT_SECURITY_CONFIG, DEFAULT_STABILITY_THRESHOLDS, DEFAULT_STATE, DEFAULT_STREAM_INDEX, DEFAULT_TOKEN_BUDGET, DESTRUCTIVE_BASH, DOMAIN_BASELINES, type DailyAdoption, type DataPoint, type DeadCodeConfig, type DeadCodeReport, type DeadExport, type DeadFile, type DeadInternal, type DeduplicateFindingsOptions, DepDepthCollector, type DependencyEdge, type DependencyGraph, type DependencyValidation, type DependencyViolation, type DetectStaleResult, type DiffInfo, type Direction$1 as Direction, DirectionSchema$1 as DirectionSchema, type DocumentationDrift, type DocumentationFile, type DocumentationGap, type DriftConfig, type DriftReport, EMPTY_SUPPLY_CHAIN, ETagStore, EVIDENCE_SATURATION, EXTENSION_MAP, type EligibilityResult, EmergenceResult, type EmitEventInput, type EmitEventOptions, type EmitEventResult, type EmitInteractionInput, EmitInteractionInputSchema, EntropyAnalyzer, type EntropyConfig, EntropyConfigSchema, type EntropyError, type EntropyReport, type EstimatorCoefficients, type EventType, type EvidenceCoverageReport, ExclusionSet, type ExecutorHealth, type Export, type ExportMap, type ExternalSyncOptions, FACTOR_WEIGHTS, type FailureEntry, FailureEntrySchema, type FallbackPricingFile, type FanOutOptions, type FeaturePatch, type FeedbackAgentConfig, type FeedbackConfig, type FeedbackError$1 as FeedbackError, type FileCategory, type FileLessScoredCandidate, FileSink, type FindingLifecycle, FindingLifecycleSchema, type FindingSeverity, type Fix, type FixConfig, type FixResult, type FixType, ForbiddenImportCollector, type ForbiddenImportViolation, type ForbiddenPattern, type GateConfig, GateConfigSchema, type GateResult, GateResultSchema, GeminiCacheAdapter, type GenerateRubricOptions, type GenerationSection, type GitHubInlineComment, GitHubIssuesSyncAdapter, type GitScanOptions, type GraphAdapter, type GraphComplexityData, type GraphCouplingData, type GraphCoverageData, type GraphCriticalPathData, type GraphDependencyData, type GraphHarnessCheckData, type GraphImpactData, type GraphNode, type Handoff, HandoffSchema, type HarnessState, HarnessStateSchema, type HealthCheckResult, type HistoryEvent, type HistoryEventType, type Hotspot$1 as Hotspot, type HotspotContext, type Import, type InjectionFinding, type InjectionPattern, type InjectionSeverity, type InlineReference, type IntegrityReport, type InteractionType, InteractionTypeSchema, type InternalSymbol, type IsoWeek, type JSDocComment, KNOWLEDGE_TRACK_CATEGORIES, LITELLM_PRICING_URL, type LanguageParser, type Layer, type LayerConfig, LayerViolationCollector, type LearningPattern, type LearningsFrontmatter, type LearningsIndexEntry, type LiteLLMModelEntry, type LiteLLMPricingData, type LoadEventsOptions, type LoaderConfig, type Lockfile, type LockfilePackage, LockfilePackageSchema, LockfileSchema, type LogEntry, type LogFilter, MOCK_ADAPTER_NAME, type MakeTrackerConflictBodyOptions, type Manifest, ManifestSchema, type MechanicalCheckOptions, type MechanicalCheckResult, type MechanicalCheckStatus, type MechanicalFinding, type MergeResult, type Metric, MetricResult, type ModelProvider, type ModelTier, type ModelTierConfig, type ModuleDependency, ModuleSizeCollector, type NewFeatureInput, NoOpExecutor, NoOpSink, NoOpTelemetryAdapter, OpenAICacheAdapter, type OrchestratorResult, type OrphanedDep, type OutlineResult, type OverlapDimensions, type OverlapResult, PII_FIELD_DENYLIST, PII_LINE_RE, PII_TOKENS, type PackedEnvelope, type PaginatedSlice, type PaginationMeta, type ParallelGroups, type ParseError, type ParsedFile, type ParsedSection, type ParserLookup, type PatternConfig, PatternConfigSchema, type PatternMatch, type PatternReport, type PatternViolation, type PeerReview, type PeerReviewOptions, type PilotScoringOptions, type PipelineContext, type PipelineFlags, type PipelineOptions, type PipelineResult, type PrMetadata, PredictionEngine, type PredictionOptions, PredictionOptionsSchema, type RegressionResult as PredictionRegressionResult, RegressionResultSchema as PredictionRegressionResultSchema, type PredictionResult, PredictionResultSchema, type PredictionWarning, PredictionWarningSchema, type PricingCacheFile, type PricingDataset, type PriorReview, ProjectScanner, type PromoteResult, type ProtectedRegion, type ProtectedRegionMap, type ProtectionScope, type ProviderDefaults, type ProviderSystemBlock, type ProviderToolBlock, type PruneResult, PulseAdapterAlreadyRegisteredError, PulseConfigSchema, type PulseConfigValidation, PulseDbSourceSchema, PulseSourcesSchema, type Question, QuestionSchema, REQUIRED_SECTIONS, type ReachabilityNode, RegressionDetector, type RegressionFit, type RegressionReport, type RegressionResult$1 as RegressionResult, type ReviewAgentDescriptor, type ReviewAssessment, type ReviewChecklist, type ReviewComment, type ReviewContext, type ReviewDomain, type ReviewFinding, type ReviewItem, type ReviewOutputOptions, type ReviewPipelineResult, type ReviewStage, type ReviewStrength, type RoadmapMode, type RoadmapModeConfig, type RoadmapModeValidationConfig, type RoadmapTrackerClient, type Rubric, type RubricItem, type RuleOverride, RuleRegistry, type RunCIChecksInput, type RunPipelineOptions, SECURITY_DESCRIPTOR, STALENESS_WARNING_DAYS, STANDALONE_AGREEMENT, STATUS_RANK, type SafetyLevel, type ScanConfigFileResult, type ScanConfigFinding, type ScanConfigResult, type Hotspot as ScanHotspot, type HotspotOptions as ScanHotspotOptions, type ScanResult, type ScannedCommit, type ScoredCandidate, type SearchMatch, type SearchResult, type SecurityCategory, type SecurityCategorySnapshot, SecurityCategorySnapshotSchema, type SecurityConfidence, type SecurityConfig, SecurityConfigSchema, type Direction as SecurityDirection, DirectionSchema as SecurityDirectionSchema, type SecurityFinding, type SecurityRule, SecurityScanner, type SecuritySeverity, type SecurityTimelineFile, SecurityTimelineFileSchema, SecurityTimelineManager, type SecurityTimelineSnapshot, SecurityTimelineSnapshotSchema, type SecurityTrendLine, SecurityTrendLineSchema, type SecurityTrendResult, SecurityTrendResultSchema, type SeedOptions, type SelfReviewConfig, type SessionSummaryData, SharableBoundaryConfigSchema, SharableForbiddenImportSchema, SharableLayerSchema, SharableSecurityRulesSchema, type SizeBudgetConfig, type SizeBudgetReport, type SizeBudgetViolation, type SkillEvent, SkillEventSchema, type SkillExecutor, type SkillLoadPlan, SolutionDocFrontmatterSchema, type SolutionsDirValidation, type SourceFile, type Span, type SpanEvent, type SpecImpactEstimate, SpecImpactEstimateSchema, SpecImpactEstimator, SpecImpactSignalsSchema, type StabilityForecast, StabilityForecastSchema, type StabilityTaggedBlock, type StaleConstraint, type StalenessEntry, type StalenessReport, type StepExecutor, type StrategySeed, type StreamIndex, StreamIndexSchema, type StreamInfo, StreamInfoSchema, StructuralStrategy, type StructureValidation, type Suggestion, type SuggestionReport, type SupplyChainSnapshot, SupplyChainSnapshotSchema, type SupportedLanguage, type SuppressionRecord, type SymbolKind, type SyncChange, type SyncOptions, type TaintCheckResult, type TaintFinding, type TaintState, type TelemetryAdapter, type TelemetryHealth, ThresholdConfig, type TimeRange, type TimeToFixResult, TimeToFixResultSchema, type TimeToFixStats, TimeToFixStatsSchema, type CategorySnapshot as TimelineCategorySnapshot, type TimelineFile, TimelineFileSchema, TimelineManager, type TimelineSnapshot, TimelineSnapshotSchema, type TokenBudget, type TokenBudgetOverrides, type ToolDefinition, type Trace, type TrackedFeature, type TrackerClientConfig, type TrackerConflictBody, type TrackerSyncAdapter, type Transition, TransitionSchema, type TrendAttribution, TrendAttributionSchema, type TrendLine, TrendLineSchema, type TrendResult, TrendResultSchema, TruncationStrategy, type TrustScoreOptions, type TurnExecutor, TypeScriptParser, type UnfoldResult, type UnusedImport, type UpdateCheckState, VALIDATION_SCORES, VALID_SCOPES, VERSION, type ValidateFindingsOptions, type ValidationError, Violation, type ViolationCluster, ViolationHistory, ViolationHistoryManager, ViolationSnapshot, WHATWG_BAD_PORTS, type WorkflowPhase, type WritePulseConfigOptions, acquireCompoundLock, addProvenance, agentConfigRules, aggregateByDay as aggregateAdoptionByDay, aggregateByDay$1 as aggregateByDay, aggregateBySession, aggregateBySkill, analyzeDiff, analyzeLearningPatterns, appendFailure, appendLearning, appendSessionEntry, applyFixes, applyHotspotDowngrade, applyRecencyWeights, applySyncChanges, archiveFailures, archiveLearnings, archiveSession, archiveStream, assembleCandidateReport, assembleReport, assertPortUsable, assertSanitized, assignFeature, buildDependencyGraph, buildExclusionSet, buildSnapshot, calculateCacheSavings, calculateCost, checkDocCoverage, checkEligibility, checkEvidenceCoverage, checkOverlap, checkTaint, classifyConfidence, classifyFinding, clearEventHashCache, clearFailuresCache, clearLearningsCache, clearPulseAdapters, clearTaint, clusterViolations, collectEvents, computeContentHash, computeHotspots, computeLexicalSimilarity, computeLoadPlan, computeOverallSeverity, computeScanExitCode, computeTrustScores, computeWindow, configureFeedback, constraintRuleId, contextBudget, contextFilter, countLearningEntries, createBoundaryValidator, createCommentedCodeFixes, createError, createFixes, createForbiddenImportFixes, createOrphanedDepFixes, createParseError, createRegionMap, createSelfReview, createStream, createTrackerClient, crossReferenceUndocumentedFixes, cryptoRules, deduplicateCleanupFindings, deduplicateFindings, deepMergeConstraints, defaultCollectors, defineLayer, deserializationRules, detectChangeType, detectCircularDeps, detectCircularDepsInFiles, detectComplexityViolations, detectCouplingViolations, detectDeadCode, detectDocDrift, detectEmergentConstraints, detectLanguage, detectPatternViolations, detectSizeBudgetViolations, detectStack, detectStaleConstraints, detectStaleLearnings, determineAssessment, diff, emitEvent, estimateTokens, executeWorkflow, expressRules, extractBundle, extractDirectoryScope, extractFileReferences, extractHeadlines, extractIndexEntry, extractLevel, extractMarkdownLinks, extractSections, fanOutReview, findParallelGroups, formatCIReportAsMarkdown, formatEventTimeline, formatFindingBlock, formatGitHubComment, formatGitHubSummary, formatIsoWeek, formatOutline, formatTerminalOutput, fullSync, generateAgentsMap, generateRubric, generateSuggestions, getActionEmitter, getExitCode, getFeedbackConfig, getInjectionPatterns, getModelPrice, getOrCreateInstallId, getOutline, getParser, getPhaseCategories, getPulseAdapter, getRoadmapMode, getStreamForBranch, getTaintFilePath, getTrustLevel, getUpdateNotification, gitScan, goRules, injectionRules, insecureDefaultsRules, isBadPort, isDuplicateFinding, isRegression, isSanitizedResult, isSmallSuggestion, isUpdateCheckEnabled, isoWeek, listActiveSessions, listPulseAdapters, listStreams, listTaintedSessions, loadBudgetedLearnings, loadEvents, loadFailures, loadHandoff, loadIndexEntries, loadPricingData, loadProjectRoadmapMode, loadRelevantLearnings, loadSessionSummary, loadState, loadStreamIndex, loadTrackerClientConfigFromProject, loadTrackerSyncConfig, logAgentAction, makeTrackerConflictBody, mapInjectionFindings, mapSecurityFindings, mapSecuritySeverity, markProtectedFindings, mcpRules, index as migrate, migrateToStreams, networkRules, nodeRules, normalizeLearningContent, normalizeViolationPattern, paginate, parseCCRecords, parseDateFromEntry, parseDiff, parseFile, parseFileRegions, parseFrontmatter, parseHarnessIgnore, parseLiteLLMData, parseLookback, parseManifest, parseProtectedRegions, parseRoadmap, parseSections, parseSecurityConfig, parseSize, pathTraversalRules, previewFix, projectValue, promoteSessionLearnings, pruneLearnings, reactRules, readAdoptionRecords, readCheckState, readCostRecords, readIdentity, readLockfile, readSessionSection, readSessionSections, readTaint, registerMockAdapter, registerPulseAdapter, removeContributions, removeProvenance, requestMultiplePeerReviews, requestPeerReview, resetFeedbackConfig, resetParserCache, resolveConsent, resolveFileToLayer, resolveModelTier, resolveReverseStatus, resolveRuleSeverity, resolveSessionDir, resolveStability, resolveStreamPath, resolveThresholds, runFallbackRules as runAgentConfigFallbackRules, runAll, runArchitectureAgent, runBugDetectionAgent, runCIChecks, runComplianceAgent, runMechanicalChecks, runMechanicalGate, runMultiTurnPipeline, runPipeline, runPulse, runReviewPipeline, runSecurityAgent, saveHandoff, saveState, saveStreamIndex, scanForInjection, scopeContext, scoreRoadmapCandidates, scoreRoadmapCandidatesFileLess, scoreRoadmapCandidatesForMode, searchSymbols, secretRules, securityFindingId, seedFromStrategy, send, serializeEnvelope, serializeRoadmap, setActiveStream, sharpEdgesRules, shouldRunCheck, spawnBackgroundCheck, splitBundlesByStage, stageDomains, suggestCategory, syncConstraintNodes, syncFromExternal, syncRoadmap, syncToExternal, tagUncitedFindings, topSkills, touchStream, trackAction, unfoldRange, unfoldSymbol, updateSessionEntryStatus, updateSessionIndex, validateAgentConfigs, validateAgentsMap, validateBoundaries, validateBranchName, validateCommitMessage, validateConfig, validateDependencies, validateFileStructure, validateFindings, validateKnowledgeMap, validatePatternConfig, validatePulseConfig, validateRoadmapMode, validateSolutionsDir, violationId, weeksUntilThreshold, weightedLinearRegression, writeConfig, writeLockfile, writePulseConfig, writeSessionSummary, writeTaint, xssRules };
9919
+ export { AGENT_DESCRIPTORS, AGREEMENT_LINE_GAP, ALLOWED_FIELD_KEYS, ALL_SOLUTION_CATEGORIES, ARCHITECTURE_DESCRIPTOR, type AST, type AcquireOptions, type ActionContext, type ActionEvent, type ActionEventHandler, type ActionEventType, type ActionResult, type ActionSink, type ActionTracker, type ActionType, type AdjustedForecast, AdjustedForecastSchema, type AgentAction, AgentActionEmitter, type AgentConfigFallbackReason, type AgentConfigFinding, type AgentConfigOptions, type AgentConfigSeverity, type AgentConfigValidation, type AgentExecutor, type AgentMapLink, type AgentMapSection, type AgentMapValidation, type AgentProcess, type AgentReviewResult, type AgentType, type AgentsMapConfig, type AnnotationIssue, type AnnotationIssueType, AnthropicCacheAdapter, type AppendLearningResult, ArchBaseline, ArchBaselineManager, ArchConfig, ArchDiffResult, ArchMetricCategory, type AssembleInput, BUG_DETECTION_DESCRIPTOR, BUG_TRACK_CATEGORIES, type BaseError, type Baseline, BaselineManager, type BaselinesFile, type BenchmarkResult, type BenchmarkRunOptions, BenchmarkRunner, type BlueprintData, BlueprintGenerator, type BlueprintModule, type BlueprintOptions, type BoundaryDefinition, type BoundaryValidation, type BoundaryValidator, type BoundaryViolation, type BranchValidationResult, type BranchingConfig, type BrokenLink, type BudgetedLearningsOptions, type Bundle, type BundleConstraints, BundleConstraintsSchema, BundleSchema, CACHE_TTL_MS, CINotifier, COMPLIANCE_DESCRIPTOR, CORROBORATED_AGREEMENT, type CacheAdapter, CacheMetricsRecorder, type CacheMetricsRecorderOptions, type CategoryForecast, CategoryForecastSchema, CategorySnapshotSchema, type ChangeType, type ChangedFile, ChecklistBuilder, type CircularDependency, CircularDepsCollector, type CircularDepsResult, type CleanupFinding, type CodeBlock, type CodeChanges, type CodePattern, type CodeReference, type CodeSymbol, type CodebaseSnapshot, Collector, type CommentedCodeBlock, type CommitFormat, type CommitHistoryEntry, type CommitValidation, CompactionPipeline, type CompactionStrategy, ComplexityCollector, type ComplexityConfig, type ComplexityReport, type ComplexityThresholds, type ComplexityViolation, type CompoundLockHandle, CompoundLockHeldError, type ConfidenceTier, ConfidenceTierSchema, type ConfigError, type ConfigPattern, type Confirmation, ConfirmationSchema, ConflictError, type ConflictReport, ConsoleSink, type ConstraintError, type ConstraintNodeStore, ConstraintRule, type Content, type ContextBundle, type ContextError, type ContextFile, type ContextFilterResult, type ContextScopeOptions, ContributingFeatureSchema, type Contributions, ContributionsSchema, type Convention, CouplingCollector, type CouplingConfig, type CouplingReport, type CouplingThresholds, type CouplingViolation, type CoverageOptions, type CoverageReport, type CriticalPathEntry, CriticalPathResolver, type CriticalPathSet, type CustomRule, type CustomRuleResult, DEFAULT_LOADER_CONFIG, DEFAULT_PROVIDER_TIERS, DEFAULT_SECURITY_CONFIG, DEFAULT_STABILITY_THRESHOLDS, DEFAULT_STATE, DEFAULT_STREAM_INDEX, DEFAULT_TOKEN_BUDGET, DESTRUCTIVE_BASH, DOMAIN_BASELINES, type DailyAdoption, type DataPoint, type DeadCodeConfig, type DeadCodeReport, type DeadExport, type DeadFile, type DeadInternal, type DeduplicateFindingsOptions, DepDepthCollector, type DependencyEdge, type DependencyGraph, type DependencyValidation, type DependencyViolation, type DetectStaleResult, type DiffInfo, type Direction$1 as Direction, DirectionSchema$1 as DirectionSchema, type DocumentationDrift, type DocumentationFile, type DocumentationGap, type DriftConfig, type DriftReport, EMPTY_SUPPLY_CHAIN, ETagStore, EVIDENCE_SATURATION, EXTENSION_MAP, type EligibilityResult, EmergenceResult, type EmitEventInput, type EmitEventOptions, type EmitEventResult, type EmitInteractionInput, EmitInteractionInputSchema, EntropyAnalyzer, type EntropyConfig, EntropyConfigSchema, type EntropyError, type EntropyReport, type EstimatorCoefficients, type EventType, type EvidenceCoverageReport, ExclusionSet, type ExecutorHealth, type Export, type ExportMap, type ExternalSyncOptions, FACTOR_WEIGHTS, type FailureEntry, FailureEntrySchema, type FallbackPricingFile, type FanOutOptions, type FeaturePatch, type FeedbackAgentConfig, type FeedbackConfig, type FeedbackError$1 as FeedbackError, type FileCategory, type FileLessScoredCandidate, FileSink, type FindingLifecycle, FindingLifecycleSchema, type FindingSeverity, type Fix, type FixConfig, type FixResult, type FixType, ForbiddenImportCollector, type ForbiddenImportViolation, type ForbiddenPattern, type GateConfig, GateConfigSchema, type GateResult, GateResultSchema, GeminiCacheAdapter, type GenerateRubricOptions, type GenerationSection, type GitHubInlineComment, GitHubIssuesSyncAdapter, type GitScanOptions, type GraphAdapter, type GraphComplexityData, type GraphCouplingData, type GraphCoverageData, type GraphCriticalPathData, type GraphDependencyData, type GraphHarnessCheckData, type GraphImpactData, type GraphNode, type Handoff, HandoffSchema, type HarnessState, HarnessStateSchema, type HealthCheckResult, type HistoryEvent, type HistoryEventType, type Hotspot$1 as Hotspot, type HotspotContext, type Import, type InjectionFinding, type InjectionPattern, type InjectionSeverity, type InlineReference, type IntegrityReport, type InteractionType, InteractionTypeSchema, type InternalSymbol, type IsoWeek, type JSDocComment, KNOWLEDGE_TRACK_CATEGORIES, LITELLM_PRICING_URL, type LanguageParser, type Layer, type LayerConfig, LayerViolationCollector, type LearningPattern, type LearningsFrontmatter, type LearningsIndexEntry, type LiteLLMModelEntry, type LiteLLMPricingData, type LoadEventsOptions, type LoaderConfig, type Lockfile, type LockfilePackage, LockfilePackageSchema, LockfileSchema, type LogEntry, type LogFilter, MOCK_ADAPTER_NAME, type MakeTrackerConflictBodyOptions, type Manifest, ManifestSchema, type MechanicalCheckOptions, type MechanicalCheckResult, type MechanicalCheckStatus, type MechanicalFinding, type MergeResult, type Metric, MetricResult, type ModelProvider, type ModelTier, type ModelTierConfig, type ModuleDependency, ModuleSizeCollector, type NewFeatureInput, NoOpExecutor, NoOpSink, NoOpTelemetryAdapter, OTLPExporter, type OTLPExporterOptions, OpenAICacheAdapter, type OrchestratorResult, type OrphanedDep, type OutlineResult, type OverlapDimensions, type OverlapResult, PII_FIELD_DENYLIST, PII_LINE_RE, PII_TOKENS, type PackedEnvelope, type PaginatedSlice, type PaginationMeta, type ParallelGroups, type ParseError, type ParsedFile, type ParsedSection, type ParserLookup, type PatternConfig, PatternConfigSchema, type PatternMatch, type PatternReport, type PatternViolation, type PeerReview, type PeerReviewOptions, type PilotScoringOptions, type PipelineContext, type PipelineFlags, type PipelineOptions, type PipelineResult, type PrMetadata, PredictionEngine, type PredictionOptions, PredictionOptionsSchema, type RegressionResult as PredictionRegressionResult, RegressionResultSchema as PredictionRegressionResultSchema, type PredictionResult, PredictionResultSchema, type PredictionWarning, PredictionWarningSchema, type PricingCacheFile, type PricingDataset, type PriorReview, ProjectScanner, type PromoteResult, type ProtectedRegion, type ProtectedRegionMap, type ProtectionScope, type ProviderDefaults, type ProviderSystemBlock, type ProviderToolBlock, type PruneResult, PulseAdapterAlreadyRegisteredError, PulseConfigSchema, type PulseConfigValidation, PulseDbSourceSchema, PulseSourcesSchema, type Question, QuestionSchema, REQUIRED_SECTIONS, type ReachabilityNode, RegressionDetector, type RegressionFit, type RegressionReport, type RegressionResult$1 as RegressionResult, type ReviewAgentDescriptor, type ReviewAssessment, type ReviewChecklist, type ReviewComment, type ReviewContext, type ReviewDomain, type ReviewFinding, type ReviewItem, type ReviewOutputOptions, type ReviewPipelineResult, type ReviewStage, type ReviewStrength, type RoadmapMode, type RoadmapModeConfig, type RoadmapModeValidationConfig, type RoadmapTrackerClient, type Rubric, type RubricItem, type RuleOverride, RuleRegistry, type RunCIChecksInput, type RunPipelineOptions, SECURITY_DESCRIPTOR, STALENESS_WARNING_DAYS, STANDALONE_AGREEMENT, STATUS_RANK, type SafetyLevel, type ScanConfigFileResult, type ScanConfigFinding, type ScanConfigResult, type Hotspot as ScanHotspot, type HotspotOptions as ScanHotspotOptions, type ScanResult, type ScannedCommit, type ScoredCandidate, type SearchMatch, type SearchResult, type SecurityCategory, type SecurityCategorySnapshot, SecurityCategorySnapshotSchema, type SecurityConfidence, type SecurityConfig, SecurityConfigSchema, type Direction as SecurityDirection, DirectionSchema as SecurityDirectionSchema, type SecurityFinding, type SecurityRule, SecurityScanner, type SecuritySeverity, type SecurityTimelineFile, SecurityTimelineFileSchema, SecurityTimelineManager, type SecurityTimelineSnapshot, SecurityTimelineSnapshotSchema, type SecurityTrendLine, SecurityTrendLineSchema, type SecurityTrendResult, SecurityTrendResultSchema, type SeedOptions, type SelfReviewConfig, type SessionSummaryData, SharableBoundaryConfigSchema, SharableForbiddenImportSchema, SharableLayerSchema, SharableSecurityRulesSchema, type SizeBudgetConfig, type SizeBudgetReport, type SizeBudgetViolation, type SkillEvent, SkillEventSchema, type SkillExecutor, type SkillLoadPlan, SolutionDocFrontmatterSchema, type SolutionsDirValidation, type SourceFile, type Span, type SpanAttributes, type SpanEvent, SpanKind, type SpecImpactEstimate, SpecImpactEstimateSchema, SpecImpactEstimator, SpecImpactSignalsSchema, type StabilityForecast, StabilityForecastSchema, type StabilityTaggedBlock, type StaleConstraint, type StalenessEntry, type StalenessReport, type StepExecutor, type StrategySeed, type StreamIndex, StreamIndexSchema, type StreamInfo, StreamInfoSchema, StructuralStrategy, type StructureValidation, type Suggestion, type SuggestionReport, type SupplyChainSnapshot, SupplyChainSnapshotSchema, type SupportedLanguage, type SuppressionRecord, type SymbolKind, type SyncChange, type SyncOptions, type TaintCheckResult, type TaintFinding, type TaintState, type TelemetryAdapter, type TelemetryHealth, ThresholdConfig, type TimeRange, type TimeToFixResult, TimeToFixResultSchema, type TimeToFixStats, TimeToFixStatsSchema, type CategorySnapshot as TimelineCategorySnapshot, type TimelineFile, TimelineFileSchema, TimelineManager, type TimelineSnapshot, TimelineSnapshotSchema, type TokenBudget, type TokenBudgetOverrides, type ToolDefinition, type Trace, type TraceSpan, type TrackedFeature, type TrackerClientConfig, type TrackerConflictBody, type TrackerSyncAdapter, type Transition, TransitionSchema, type TrendAttribution, TrendAttributionSchema, type TrendLine, TrendLineSchema, type TrendResult, TrendResultSchema, TruncationStrategy, type TrustScoreOptions, type TurnExecutor, TypeScriptParser, type UnfoldResult, type UnusedImport, type UpdateCheckState, VALIDATION_SCORES, VALID_SCOPES, VERSION, type ValidateFindingsOptions, type ValidationError, Violation, type ViolationCluster, ViolationHistory, ViolationHistoryManager, ViolationSnapshot, WHATWG_BAD_PORTS, type WorkflowPhase, type WritePulseConfigOptions, acquireCompoundLock, addProvenance, agentConfigRules, aggregateByDay as aggregateAdoptionByDay, aggregateByDay$1 as aggregateByDay, aggregateBySession, aggregateBySkill, analyzeDiff, analyzeLearningPatterns, appendFailure, appendLearning, appendSessionEntry, applyFixes, applyHotspotDowngrade, applyRecencyWeights, applySyncChanges, archiveFailures, archiveLearnings, archiveSession, archiveStream, assembleCandidateReport, assembleReport, assertPortUsable, assertSanitized, assignFeature, buildDependencyGraph, buildExclusionSet, buildSnapshot, calculateCacheSavings, calculateCost, checkDocCoverage, checkEligibility, checkEvidenceCoverage, checkOverlap, checkTaint, classifyConfidence, classifyFinding, clearEventHashCache, clearFailuresCache, clearLearningsCache, clearPulseAdapters, clearTaint, clusterViolations, collectEvents, computeContentHash, computeHotspots, computeLexicalSimilarity, computeLoadPlan, computeOverallSeverity, computeScanExitCode, computeTrustScores, computeWindow, configureFeedback, constraintRuleId, contextBudget, contextFilter, countLearningEntries, createBoundaryValidator, createCommentedCodeFixes, createError, createFixes, createForbiddenImportFixes, createOrphanedDepFixes, createParseError, createRegionMap, createSelfReview, createStream, createTrackerClient, crossReferenceUndocumentedFixes, cryptoRules, deduplicateCleanupFindings, deduplicateFindings, deepMergeConstraints, defaultCollectors, defineLayer, deserializationRules, detectChangeType, detectCircularDeps, detectCircularDepsInFiles, detectComplexityViolations, detectCouplingViolations, detectDeadCode, detectDocDrift, detectEmergentConstraints, detectLanguage, detectPatternViolations, detectSizeBudgetViolations, detectStack, detectStaleConstraints, detectStaleLearnings, determineAssessment, diff, emitEvent, estimateTokens, executeWorkflow, expressRules, extractBundle, extractDirectoryScope, extractFileReferences, extractHeadlines, extractIndexEntry, extractLevel, extractMarkdownLinks, extractSections, fanOutReview, findParallelGroups, formatCIReportAsMarkdown, formatEventTimeline, formatFindingBlock, formatGitHubComment, formatGitHubSummary, formatIsoWeek, formatOutline, formatTerminalOutput, fullSync, generateAgentsMap, generateRubric, generateSuggestions, getActionEmitter, getExitCode, getFeedbackConfig, getInjectionPatterns, getModelPrice, getOrCreateInstallId, getOutline, getParser, getPhaseCategories, getPulseAdapter, getRoadmapMode, getStreamForBranch, getTaintFilePath, getTrustLevel, getUpdateNotification, gitScan, goRules, injectionRules, insecureDefaultsRules, invalidateCheckState, isBadPort, isDuplicateFinding, isRegression, isSanitizedResult, isSmallSuggestion, isUpdateCheckEnabled, isoWeek, listActiveSessions, listPulseAdapters, listStreams, listTaintedSessions, loadBudgetedLearnings, loadEvents, loadFailures, loadHandoff, loadIndexEntries, loadPricingData, loadProjectRoadmapMode, loadRelevantLearnings, loadSessionSummary, loadState, loadStreamIndex, loadTrackerClientConfigFromProject, loadTrackerSyncConfig, logAgentAction, makeTrackerConflictBody, mapInjectionFindings, mapSecurityFindings, mapSecuritySeverity, markProtectedFindings, mcpRules, index as migrate, migrateToStreams, networkRules, nodeRules, normalizeLearningContent, normalizeViolationPattern, paginate, parseCCRecords, parseDateFromEntry, parseDiff, parseFile, parseFileRegions, parseFrontmatter, parseHarnessIgnore, parseLiteLLMData, parseLookback, parseManifest, parseProtectedRegions, parseRoadmap, parseSections, parseSecurityConfig, parseSize, pathTraversalRules, previewFix, projectValue, promoteSessionLearnings, pruneLearnings, reactRules, readAdoptionRecords, readCheckState, readCostRecords, readIdentity, readLockfile, readSessionSection, readSessionSections, readTaint, registerMockAdapter, registerPulseAdapter, removeContributions, removeProvenance, requestMultiplePeerReviews, requestPeerReview, resetFeedbackConfig, resetParserCache, resolveConsent, resolveFileToLayer, resolveModelTier, resolveReverseStatus, resolveRuleSeverity, resolveSessionDir, resolveStability, resolveStreamPath, resolveThresholds, runFallbackRules as runAgentConfigFallbackRules, runAll, runArchitectureAgent, runBugDetectionAgent, runCIChecks, runComplianceAgent, runMechanicalChecks, runMechanicalGate, runMultiTurnPipeline, runPipeline, runPulse, runReviewPipeline, runSecurityAgent, saveHandoff, saveState, saveStreamIndex, scanForInjection, scopeContext, scoreRoadmapCandidates, scoreRoadmapCandidatesFileLess, scoreRoadmapCandidatesForMode, searchSymbols, secretRules, securityFindingId, seedFromStrategy, send, serializeEnvelope, serializeRoadmap, setActiveStream, sharpEdgesRules, shouldRunCheck, spawnBackgroundCheck, splitBundlesByStage, stageDomains, suggestCategory, syncConstraintNodes, syncFromExternal, syncRoadmap, syncToExternal, tagUncitedFindings, topSkills, touchStream, trackAction, unfoldRange, unfoldSymbol, updateSessionEntryStatus, updateSessionIndex, validateAgentConfigs, validateAgentsMap, validateBoundaries, validateBranchName, validateCommitMessage, validateConfig, validateDependencies, validateFileStructure, validateFindings, validateKnowledgeMap, validatePatternConfig, validatePulseConfig, validateRoadmapMode, validateSolutionsDir, violationId, weeksUntilThreshold, weightedLinearRegression, writeConfig, writeLockfile, writePulseConfig, writeSessionSummary, writeTaint, xssRules };
package/dist/index.js CHANGED
@@ -55,6 +55,7 @@ __export(index_exports, {
55
55
  CINotifier: () => CINotifier,
56
56
  COMPLIANCE_DESCRIPTOR: () => COMPLIANCE_DESCRIPTOR,
57
57
  CORROBORATED_AGREEMENT: () => CORROBORATED_AGREEMENT,
58
+ CacheMetricsRecorder: () => CacheMetricsRecorder,
58
59
  CategoryBaselineSchema: () => CategoryBaselineSchema,
59
60
  CategoryForecastSchema: () => CategoryForecastSchema,
60
61
  CategoryRegressionSchema: () => CategoryRegressionSchema,
@@ -119,6 +120,7 @@ __export(index_exports, {
119
120
  NoOpExecutor: () => NoOpExecutor,
120
121
  NoOpSink: () => NoOpSink,
121
122
  NoOpTelemetryAdapter: () => NoOpTelemetryAdapter,
123
+ OTLPExporter: () => OTLPExporter,
122
124
  OpenAICacheAdapter: () => OpenAICacheAdapter,
123
125
  PII_FIELD_DENYLIST: () => PII_FIELD_DENYLIST,
124
126
  PII_LINE_RE: () => PII_LINE_RE,
@@ -157,6 +159,7 @@ __export(index_exports, {
157
159
  SharableSecurityRulesSchema: () => SharableSecurityRulesSchema,
158
160
  SkillEventSchema: () => SkillEventSchema,
159
161
  SolutionDocFrontmatterSchema: () => SolutionDocFrontmatterSchema,
162
+ SpanKind: () => SpanKind,
160
163
  SpecImpactEstimateSchema: () => SpecImpactEstimateSchema,
161
164
  SpecImpactEstimator: () => SpecImpactEstimator,
162
165
  SpecImpactSignalsSchema: () => SpecImpactSignalsSchema,
@@ -325,6 +328,7 @@ __export(index_exports, {
325
328
  goRules: () => goRules,
326
329
  injectionRules: () => injectionRules,
327
330
  insecureDefaultsRules: () => insecureDefaultsRules,
331
+ invalidateCheckState: () => invalidateCheckState,
328
332
  isBadPort: () => isBadPort,
329
333
  isDuplicateFinding: () => isDuplicateFinding,
330
334
  isRegression: () => isRegression,
@@ -5645,7 +5649,10 @@ function findDeadFiles(snapshot, reachability) {
5645
5649
  return deadFiles;
5646
5650
  }
5647
5651
  function isIdentifierUsedInAST(ast, identifier, skipImportDeclaration = true) {
5648
- const astString = JSON.stringify(ast);
5652
+ const astString = JSON.stringify(
5653
+ ast,
5654
+ (_key, value) => typeof value === "bigint" ? value.toString() : value
5655
+ );
5649
5656
  const identifierPattern = new RegExp(`"name"\\s*:\\s*"${identifier}"`, "g");
5650
5657
  const matches = astString.match(identifierPattern);
5651
5658
  if (!matches) return false;
@@ -20193,6 +20200,12 @@ function shouldRunCheck(state, intervalMs) {
20193
20200
  if (state === null) return true;
20194
20201
  return state.lastCheckTime + intervalMs <= Date.now();
20195
20202
  }
20203
+ function invalidateCheckState() {
20204
+ try {
20205
+ fs36.unlinkSync(getStatePath());
20206
+ } catch {
20207
+ }
20208
+ }
20196
20209
  function readCheckState() {
20197
20210
  try {
20198
20211
  const raw = fs36.readFileSync(getStatePath(), "utf-8");
@@ -21390,7 +21403,7 @@ function resolveConsent(projectRoot, config) {
21390
21403
  }
21391
21404
 
21392
21405
  // src/version.ts
21393
- var VERSION = "0.23.3";
21406
+ var VERSION = "0.25.0";
21394
21407
 
21395
21408
  // src/telemetry/collector.ts
21396
21409
  function mapOutcome(outcome) {
@@ -21451,6 +21464,221 @@ async function send(events, apiKey) {
21451
21464
  }
21452
21465
  }
21453
21466
 
21467
+ // src/telemetry/cache-metrics.ts
21468
+ var DEFAULT_CAPACITY = 1e3;
21469
+ var CacheMetricsRecorder = class {
21470
+ capacity;
21471
+ now;
21472
+ buffer = [];
21473
+ windowStartedAt = 0;
21474
+ constructor(opts = {}) {
21475
+ this.capacity = opts.capacity ?? DEFAULT_CAPACITY;
21476
+ this.now = opts.now ?? Date.now;
21477
+ }
21478
+ /**
21479
+ * Append a single cache observation. Hot-path: O(1) amortized, no
21480
+ * allocations beyond the sample object itself.
21481
+ */
21482
+ record(backendId, hit, tokensCreated, tokensRead) {
21483
+ if (this.windowStartedAt === 0) this.windowStartedAt = this.now();
21484
+ if (this.buffer.length >= this.capacity) this.buffer.shift();
21485
+ this.buffer.push({ backendId, hit, tokensCreated, tokensRead });
21486
+ }
21487
+ /** Aggregate the current window into a `PromptCacheStats` snapshot. */
21488
+ getStats() {
21489
+ let hits = 0;
21490
+ let misses = 0;
21491
+ const byBackend = {};
21492
+ for (const s of this.buffer) {
21493
+ if (s.hit) hits++;
21494
+ else misses++;
21495
+ const slot = byBackend[s.backendId] ?? { hits: 0, misses: 0 };
21496
+ if (s.hit) slot.hits++;
21497
+ else slot.misses++;
21498
+ byBackend[s.backendId] = slot;
21499
+ }
21500
+ const totalRequests = hits + misses;
21501
+ const hitRate = totalRequests === 0 ? 0 : hits / totalRequests;
21502
+ return {
21503
+ totalRequests,
21504
+ hits,
21505
+ misses,
21506
+ hitRate,
21507
+ byBackend,
21508
+ windowStartedAt: this.windowStartedAt
21509
+ };
21510
+ }
21511
+ /** Clear the buffer and reset the window-start marker. */
21512
+ reset() {
21513
+ this.buffer.length = 0;
21514
+ this.windowStartedAt = 0;
21515
+ }
21516
+ };
21517
+
21518
+ // src/telemetry/exporter/otlp-http.ts
21519
+ var RETRY_BACKOFFS_MS = [1e3, 2e3, 4e3];
21520
+ function toUnixNanoString(ns) {
21521
+ return ns.toString(10);
21522
+ }
21523
+ function attributesToOTLP(attrs) {
21524
+ const out = [];
21525
+ for (const [key, value] of Object.entries(attrs)) {
21526
+ if (typeof value === "string") {
21527
+ out.push({ key, value: { stringValue: value } });
21528
+ } else if (typeof value === "boolean") {
21529
+ out.push({ key, value: { boolValue: value } });
21530
+ } else if (typeof value === "number") {
21531
+ if (Number.isInteger(value)) {
21532
+ out.push({ key, value: { intValue: String(value) } });
21533
+ } else {
21534
+ out.push({ key, value: { doubleValue: value } });
21535
+ }
21536
+ }
21537
+ }
21538
+ return out;
21539
+ }
21540
+ var OTLPExporter = class {
21541
+ endpoint;
21542
+ enabled;
21543
+ headers;
21544
+ flushIntervalMs;
21545
+ batchSize;
21546
+ fetchImpl;
21547
+ warn;
21548
+ buffer = [];
21549
+ timer = null;
21550
+ inFlightFlushes = /* @__PURE__ */ new Set();
21551
+ constructor(opts) {
21552
+ this.endpoint = opts.endpoint;
21553
+ this.enabled = opts.enabled !== false;
21554
+ this.headers = { "Content-Type": "application/json", ...opts.headers ?? {} };
21555
+ this.flushIntervalMs = opts.flushIntervalMs ?? 2e3;
21556
+ this.batchSize = opts.batchSize ?? 64;
21557
+ this.fetchImpl = opts.fetchImpl ?? globalThis.fetch.bind(globalThis);
21558
+ this.warn = opts.warn ?? ((...a) => console.warn(...a));
21559
+ }
21560
+ /**
21561
+ * O(1) buffer push. When `enabled === false` this is a no-op. If the
21562
+ * buffer reaches `batchSize`, a flush is triggered without awaiting.
21563
+ */
21564
+ push(span) {
21565
+ if (!this.enabled) return;
21566
+ this.buffer.push(span);
21567
+ if (this.buffer.length >= this.batchSize) {
21568
+ void this.flush();
21569
+ }
21570
+ }
21571
+ /** Start the periodic flush timer. Idempotent. */
21572
+ start() {
21573
+ if (!this.enabled || this.timer !== null) return;
21574
+ this.timer = setInterval(() => {
21575
+ void this.flush();
21576
+ }, this.flushIntervalMs);
21577
+ if (typeof this.timer.unref === "function") {
21578
+ this.timer.unref();
21579
+ }
21580
+ }
21581
+ /** Flush any pending spans and stop the timer. Awaits all in-flight flushes. */
21582
+ async stop() {
21583
+ if (this.timer !== null) {
21584
+ clearInterval(this.timer);
21585
+ this.timer = null;
21586
+ }
21587
+ void this.flush();
21588
+ while (this.inFlightFlushes.size > 0) {
21589
+ await Promise.all([...this.inFlightFlushes]);
21590
+ }
21591
+ }
21592
+ /**
21593
+ * Synchronously claim the current buffer and POST it to `/v1/traces`.
21594
+ * Each invocation runs independently — concurrent flushes (e.g. one
21595
+ * from the timer, one from a `batchSize` trip) each drain their own
21596
+ * batch. Retries up to 3 times on transport or 5xx failure, then
21597
+ * drops with a single warning.
21598
+ */
21599
+ flush() {
21600
+ if (this.buffer.length === 0) return Promise.resolve();
21601
+ const batch = this.buffer;
21602
+ this.buffer = [];
21603
+ const payload = this.spansToOTLPJSON(batch);
21604
+ const work = (async () => {
21605
+ let lastError = null;
21606
+ for (let attempt = 0; attempt < RETRY_BACKOFFS_MS.length; attempt++) {
21607
+ try {
21608
+ const response = await this.fetchImpl(this.endpoint, {
21609
+ method: "POST",
21610
+ headers: this.headers,
21611
+ body: JSON.stringify(payload)
21612
+ });
21613
+ if (response.ok) return;
21614
+ try {
21615
+ await response.text();
21616
+ } catch {
21617
+ }
21618
+ lastError = new Error(`OTLP endpoint returned ${response.status}`);
21619
+ } catch (err) {
21620
+ lastError = err;
21621
+ }
21622
+ const backoff = RETRY_BACKOFFS_MS[attempt] ?? 0;
21623
+ if (attempt < RETRY_BACKOFFS_MS.length - 1) {
21624
+ await new Promise((resolve12) => setTimeout(resolve12, backoff));
21625
+ }
21626
+ }
21627
+ this.warn(
21628
+ `[harness telemetry] dropping ${batch.length} span(s) after 3 failed OTLP attempts:`,
21629
+ lastError
21630
+ );
21631
+ })();
21632
+ this.inFlightFlushes.add(work);
21633
+ void work.finally(() => this.inFlightFlushes.delete(work));
21634
+ return work;
21635
+ }
21636
+ /**
21637
+ * Build the OTLP/HTTP JSON envelope for a batch of spans. Public for
21638
+ * tests; not part of the supported API surface.
21639
+ */
21640
+ spansToOTLPJSON(spans) {
21641
+ return {
21642
+ resourceSpans: [
21643
+ {
21644
+ resource: {
21645
+ attributes: [{ key: "service.name", value: { stringValue: "harness" } }]
21646
+ },
21647
+ scopeSpans: [
21648
+ {
21649
+ scope: { name: "harness" },
21650
+ spans: spans.map((s) => {
21651
+ const span = {
21652
+ traceId: s.traceId,
21653
+ spanId: s.spanId,
21654
+ name: s.name,
21655
+ kind: s.kind,
21656
+ startTimeUnixNano: toUnixNanoString(s.startTimeNs),
21657
+ endTimeUnixNano: toUnixNanoString(s.endTimeNs),
21658
+ attributes: attributesToOTLP(s.attributes)
21659
+ };
21660
+ if (s.parentSpanId !== void 0) span["parentSpanId"] = s.parentSpanId;
21661
+ if (s.statusCode !== void 0) span["status"] = { code: s.statusCode };
21662
+ return span;
21663
+ })
21664
+ }
21665
+ ]
21666
+ }
21667
+ ]
21668
+ };
21669
+ }
21670
+ };
21671
+
21672
+ // src/telemetry/exporter/types.ts
21673
+ var SpanKind = /* @__PURE__ */ ((SpanKind2) => {
21674
+ SpanKind2[SpanKind2["INTERNAL"] = 1] = "INTERNAL";
21675
+ SpanKind2[SpanKind2["SERVER"] = 2] = "SERVER";
21676
+ SpanKind2[SpanKind2["CLIENT"] = 3] = "CLIENT";
21677
+ SpanKind2[SpanKind2["PRODUCER"] = 4] = "PRODUCER";
21678
+ SpanKind2[SpanKind2["CONSUMER"] = 5] = "CONSUMER";
21679
+ return SpanKind2;
21680
+ })(SpanKind || {});
21681
+
21454
21682
  // src/locks/compound-lock.ts
21455
21683
  var fs43 = __toESM(require("fs"));
21456
21684
  var path43 = __toESM(require("path"));
@@ -22210,6 +22438,7 @@ function assembleCandidateReport(input) {
22210
22438
  CINotifier,
22211
22439
  COMPLIANCE_DESCRIPTOR,
22212
22440
  CORROBORATED_AGREEMENT,
22441
+ CacheMetricsRecorder,
22213
22442
  CategoryBaselineSchema,
22214
22443
  CategoryForecastSchema,
22215
22444
  CategoryRegressionSchema,
@@ -22274,6 +22503,7 @@ function assembleCandidateReport(input) {
22274
22503
  NoOpExecutor,
22275
22504
  NoOpSink,
22276
22505
  NoOpTelemetryAdapter,
22506
+ OTLPExporter,
22277
22507
  OpenAICacheAdapter,
22278
22508
  PII_FIELD_DENYLIST,
22279
22509
  PII_LINE_RE,
@@ -22312,6 +22542,7 @@ function assembleCandidateReport(input) {
22312
22542
  SharableSecurityRulesSchema,
22313
22543
  SkillEventSchema,
22314
22544
  SolutionDocFrontmatterSchema,
22545
+ SpanKind,
22315
22546
  SpecImpactEstimateSchema,
22316
22547
  SpecImpactEstimator,
22317
22548
  SpecImpactSignalsSchema,
@@ -22480,6 +22711,7 @@ function assembleCandidateReport(input) {
22480
22711
  goRules,
22481
22712
  injectionRules,
22482
22713
  insecureDefaultsRules,
22714
+ invalidateCheckState,
22483
22715
  isBadPort,
22484
22716
  isDuplicateFinding,
22485
22717
  isRegression,
package/dist/index.mjs CHANGED
@@ -3988,7 +3988,10 @@ function findDeadFiles(snapshot, reachability) {
3988
3988
  return deadFiles;
3989
3989
  }
3990
3990
  function isIdentifierUsedInAST(ast, identifier, skipImportDeclaration = true) {
3991
- const astString = JSON.stringify(ast);
3991
+ const astString = JSON.stringify(
3992
+ ast,
3993
+ (_key, value) => typeof value === "bigint" ? value.toString() : value
3994
+ );
3992
3995
  const identifierPattern = new RegExp(`"name"\\s*:\\s*"${identifier}"`, "g");
3993
3996
  const matches = astString.match(identifierPattern);
3994
3997
  if (!matches) return false;
@@ -16920,6 +16923,12 @@ function shouldRunCheck(state, intervalMs) {
16920
16923
  if (state === null) return true;
16921
16924
  return state.lastCheckTime + intervalMs <= Date.now();
16922
16925
  }
16926
+ function invalidateCheckState() {
16927
+ try {
16928
+ fs36.unlinkSync(getStatePath());
16929
+ } catch {
16930
+ }
16931
+ }
16923
16932
  function readCheckState() {
16924
16933
  try {
16925
16934
  const raw = fs36.readFileSync(getStatePath(), "utf-8");
@@ -18117,7 +18126,7 @@ function resolveConsent(projectRoot, config) {
18117
18126
  }
18118
18127
 
18119
18128
  // src/version.ts
18120
- var VERSION = "0.23.3";
18129
+ var VERSION = "0.25.0";
18121
18130
 
18122
18131
  // src/telemetry/collector.ts
18123
18132
  function mapOutcome(outcome) {
@@ -18178,6 +18187,221 @@ async function send(events, apiKey) {
18178
18187
  }
18179
18188
  }
18180
18189
 
18190
+ // src/telemetry/cache-metrics.ts
18191
+ var DEFAULT_CAPACITY = 1e3;
18192
+ var CacheMetricsRecorder = class {
18193
+ capacity;
18194
+ now;
18195
+ buffer = [];
18196
+ windowStartedAt = 0;
18197
+ constructor(opts = {}) {
18198
+ this.capacity = opts.capacity ?? DEFAULT_CAPACITY;
18199
+ this.now = opts.now ?? Date.now;
18200
+ }
18201
+ /**
18202
+ * Append a single cache observation. Hot-path: O(1) amortized, no
18203
+ * allocations beyond the sample object itself.
18204
+ */
18205
+ record(backendId, hit, tokensCreated, tokensRead) {
18206
+ if (this.windowStartedAt === 0) this.windowStartedAt = this.now();
18207
+ if (this.buffer.length >= this.capacity) this.buffer.shift();
18208
+ this.buffer.push({ backendId, hit, tokensCreated, tokensRead });
18209
+ }
18210
+ /** Aggregate the current window into a `PromptCacheStats` snapshot. */
18211
+ getStats() {
18212
+ let hits = 0;
18213
+ let misses = 0;
18214
+ const byBackend = {};
18215
+ for (const s of this.buffer) {
18216
+ if (s.hit) hits++;
18217
+ else misses++;
18218
+ const slot = byBackend[s.backendId] ?? { hits: 0, misses: 0 };
18219
+ if (s.hit) slot.hits++;
18220
+ else slot.misses++;
18221
+ byBackend[s.backendId] = slot;
18222
+ }
18223
+ const totalRequests = hits + misses;
18224
+ const hitRate = totalRequests === 0 ? 0 : hits / totalRequests;
18225
+ return {
18226
+ totalRequests,
18227
+ hits,
18228
+ misses,
18229
+ hitRate,
18230
+ byBackend,
18231
+ windowStartedAt: this.windowStartedAt
18232
+ };
18233
+ }
18234
+ /** Clear the buffer and reset the window-start marker. */
18235
+ reset() {
18236
+ this.buffer.length = 0;
18237
+ this.windowStartedAt = 0;
18238
+ }
18239
+ };
18240
+
18241
+ // src/telemetry/exporter/otlp-http.ts
18242
+ var RETRY_BACKOFFS_MS = [1e3, 2e3, 4e3];
18243
+ function toUnixNanoString(ns) {
18244
+ return ns.toString(10);
18245
+ }
18246
+ function attributesToOTLP(attrs) {
18247
+ const out = [];
18248
+ for (const [key, value] of Object.entries(attrs)) {
18249
+ if (typeof value === "string") {
18250
+ out.push({ key, value: { stringValue: value } });
18251
+ } else if (typeof value === "boolean") {
18252
+ out.push({ key, value: { boolValue: value } });
18253
+ } else if (typeof value === "number") {
18254
+ if (Number.isInteger(value)) {
18255
+ out.push({ key, value: { intValue: String(value) } });
18256
+ } else {
18257
+ out.push({ key, value: { doubleValue: value } });
18258
+ }
18259
+ }
18260
+ }
18261
+ return out;
18262
+ }
18263
+ var OTLPExporter = class {
18264
+ endpoint;
18265
+ enabled;
18266
+ headers;
18267
+ flushIntervalMs;
18268
+ batchSize;
18269
+ fetchImpl;
18270
+ warn;
18271
+ buffer = [];
18272
+ timer = null;
18273
+ inFlightFlushes = /* @__PURE__ */ new Set();
18274
+ constructor(opts) {
18275
+ this.endpoint = opts.endpoint;
18276
+ this.enabled = opts.enabled !== false;
18277
+ this.headers = { "Content-Type": "application/json", ...opts.headers ?? {} };
18278
+ this.flushIntervalMs = opts.flushIntervalMs ?? 2e3;
18279
+ this.batchSize = opts.batchSize ?? 64;
18280
+ this.fetchImpl = opts.fetchImpl ?? globalThis.fetch.bind(globalThis);
18281
+ this.warn = opts.warn ?? ((...a) => console.warn(...a));
18282
+ }
18283
+ /**
18284
+ * O(1) buffer push. When `enabled === false` this is a no-op. If the
18285
+ * buffer reaches `batchSize`, a flush is triggered without awaiting.
18286
+ */
18287
+ push(span) {
18288
+ if (!this.enabled) return;
18289
+ this.buffer.push(span);
18290
+ if (this.buffer.length >= this.batchSize) {
18291
+ void this.flush();
18292
+ }
18293
+ }
18294
+ /** Start the periodic flush timer. Idempotent. */
18295
+ start() {
18296
+ if (!this.enabled || this.timer !== null) return;
18297
+ this.timer = setInterval(() => {
18298
+ void this.flush();
18299
+ }, this.flushIntervalMs);
18300
+ if (typeof this.timer.unref === "function") {
18301
+ this.timer.unref();
18302
+ }
18303
+ }
18304
+ /** Flush any pending spans and stop the timer. Awaits all in-flight flushes. */
18305
+ async stop() {
18306
+ if (this.timer !== null) {
18307
+ clearInterval(this.timer);
18308
+ this.timer = null;
18309
+ }
18310
+ void this.flush();
18311
+ while (this.inFlightFlushes.size > 0) {
18312
+ await Promise.all([...this.inFlightFlushes]);
18313
+ }
18314
+ }
18315
+ /**
18316
+ * Synchronously claim the current buffer and POST it to `/v1/traces`.
18317
+ * Each invocation runs independently — concurrent flushes (e.g. one
18318
+ * from the timer, one from a `batchSize` trip) each drain their own
18319
+ * batch. Retries up to 3 times on transport or 5xx failure, then
18320
+ * drops with a single warning.
18321
+ */
18322
+ flush() {
18323
+ if (this.buffer.length === 0) return Promise.resolve();
18324
+ const batch = this.buffer;
18325
+ this.buffer = [];
18326
+ const payload = this.spansToOTLPJSON(batch);
18327
+ const work = (async () => {
18328
+ let lastError = null;
18329
+ for (let attempt = 0; attempt < RETRY_BACKOFFS_MS.length; attempt++) {
18330
+ try {
18331
+ const response = await this.fetchImpl(this.endpoint, {
18332
+ method: "POST",
18333
+ headers: this.headers,
18334
+ body: JSON.stringify(payload)
18335
+ });
18336
+ if (response.ok) return;
18337
+ try {
18338
+ await response.text();
18339
+ } catch {
18340
+ }
18341
+ lastError = new Error(`OTLP endpoint returned ${response.status}`);
18342
+ } catch (err) {
18343
+ lastError = err;
18344
+ }
18345
+ const backoff = RETRY_BACKOFFS_MS[attempt] ?? 0;
18346
+ if (attempt < RETRY_BACKOFFS_MS.length - 1) {
18347
+ await new Promise((resolve10) => setTimeout(resolve10, backoff));
18348
+ }
18349
+ }
18350
+ this.warn(
18351
+ `[harness telemetry] dropping ${batch.length} span(s) after 3 failed OTLP attempts:`,
18352
+ lastError
18353
+ );
18354
+ })();
18355
+ this.inFlightFlushes.add(work);
18356
+ void work.finally(() => this.inFlightFlushes.delete(work));
18357
+ return work;
18358
+ }
18359
+ /**
18360
+ * Build the OTLP/HTTP JSON envelope for a batch of spans. Public for
18361
+ * tests; not part of the supported API surface.
18362
+ */
18363
+ spansToOTLPJSON(spans) {
18364
+ return {
18365
+ resourceSpans: [
18366
+ {
18367
+ resource: {
18368
+ attributes: [{ key: "service.name", value: { stringValue: "harness" } }]
18369
+ },
18370
+ scopeSpans: [
18371
+ {
18372
+ scope: { name: "harness" },
18373
+ spans: spans.map((s) => {
18374
+ const span = {
18375
+ traceId: s.traceId,
18376
+ spanId: s.spanId,
18377
+ name: s.name,
18378
+ kind: s.kind,
18379
+ startTimeUnixNano: toUnixNanoString(s.startTimeNs),
18380
+ endTimeUnixNano: toUnixNanoString(s.endTimeNs),
18381
+ attributes: attributesToOTLP(s.attributes)
18382
+ };
18383
+ if (s.parentSpanId !== void 0) span["parentSpanId"] = s.parentSpanId;
18384
+ if (s.statusCode !== void 0) span["status"] = { code: s.statusCode };
18385
+ return span;
18386
+ })
18387
+ }
18388
+ ]
18389
+ }
18390
+ ]
18391
+ };
18392
+ }
18393
+ };
18394
+
18395
+ // src/telemetry/exporter/types.ts
18396
+ var SpanKind = /* @__PURE__ */ ((SpanKind2) => {
18397
+ SpanKind2[SpanKind2["INTERNAL"] = 1] = "INTERNAL";
18398
+ SpanKind2[SpanKind2["SERVER"] = 2] = "SERVER";
18399
+ SpanKind2[SpanKind2["CLIENT"] = 3] = "CLIENT";
18400
+ SpanKind2[SpanKind2["PRODUCER"] = 4] = "PRODUCER";
18401
+ SpanKind2[SpanKind2["CONSUMER"] = 5] = "CONSUMER";
18402
+ return SpanKind2;
18403
+ })(SpanKind || {});
18404
+
18181
18405
  // src/locks/compound-lock.ts
18182
18406
  import * as fs43 from "fs";
18183
18407
  import * as path43 from "path";
@@ -18935,6 +19159,7 @@ export {
18935
19159
  CINotifier,
18936
19160
  COMPLIANCE_DESCRIPTOR,
18937
19161
  CORROBORATED_AGREEMENT,
19162
+ CacheMetricsRecorder,
18938
19163
  CategoryBaselineSchema,
18939
19164
  CategoryForecastSchema,
18940
19165
  CategoryRegressionSchema,
@@ -18999,6 +19224,7 @@ export {
18999
19224
  NoOpExecutor,
19000
19225
  NoOpSink,
19001
19226
  NoOpTelemetryAdapter,
19227
+ OTLPExporter,
19002
19228
  OpenAICacheAdapter,
19003
19229
  PII_FIELD_DENYLIST,
19004
19230
  PII_LINE_RE,
@@ -19037,6 +19263,7 @@ export {
19037
19263
  SharableSecurityRulesSchema,
19038
19264
  SkillEventSchema,
19039
19265
  SolutionDocFrontmatterSchema,
19266
+ SpanKind,
19040
19267
  SpecImpactEstimateSchema,
19041
19268
  SpecImpactEstimator,
19042
19269
  SpecImpactSignalsSchema,
@@ -19205,6 +19432,7 @@ export {
19205
19432
  goRules,
19206
19433
  injectionRules,
19207
19434
  insecureDefaultsRules,
19435
+ invalidateCheckState,
19208
19436
  isBadPort,
19209
19437
  isDuplicateFinding,
19210
19438
  isRegression,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@harness-engineering/core",
3
- "version": "0.26.0",
3
+ "version": "0.26.1",
4
4
  "description": "Core library for Harness Engineering toolkit",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",