Skip to content

v3.0.0

Compare
Choose a tag to compare
@botzai botzai released this 15 Feb 11:18
· 15 commits to master since this release

3.0.0 (2025-02-15)

Bug Fixes

  • add event listener cleanup in engine test files (705a39c)
  • add interceptors mock to axios test client (edb17b5)
  • add isPathInside imports and handle missing file paths (42b0207)
  • add matchLength undefined checks in maskValue function (2872ec5)
  • add missing Engine interface methods in test mock (fa523d2)
  • add missing ErrorLevel type import in engineRunner (bb8551c)
  • add missing imports for path and pluginRegistry (d98192b)
  • add missing interceptors to axios mock in test (42a72eb)
  • add missing logger import in facts/index.ts (46d09c7)
  • add missing logger.info mock in test setup (c1a3dba)
  • add missing OperatorDefn type import in pluginRegistry (51fcf15)
  • add mock implementation for path.relative in tests (f39ce89)
  • add mock implementation for path.resolve in tests (edd3388)
  • add null check for childPath in isPathInside function (c510bd4)
  • add proper type annotations to express logger functions (7146f70)
  • add proper type annotations to express logger middleware (c0868ce)
  • add type annotation for operators object to fix string indexing (aa3ced1)
  • add type annotation for rest parameter in mock implementation (736fd36)
  • add type assertion for errorSource in engineRunner (f17df2a)
  • add type cast for args spread in plugin function call (f88f3f8)
  • add type cast for rule name property in validate command (5b811ad)
  • add type safety for engine removeAllListeners method in tests (f1bd1c0)
  • avoid reassigning to constant error variable in error handling (5f04405)
  • cast event types to ErrorLevel enum for type safety (f2cb3b5)
  • change logPrefix from const to let for mutability (2ce6b56)
  • correct Engine type definition in engineRunner test (e474084)
  • correct function type signature in plugin registry (f5001df)
  • correct type casting for spread operator in plugin function call (55e1894)
  • correct type signature for pino-http customLogLevel function (8d6cb76)
  • correct TypeScript errors in logger implementation (8da1f9c)
  • correct TypeScript errors in operator and error handling (d2a1927)
  • declare handledError variable before usage in error handling (34a95a9)
  • declare handledError with proper scope in engineRunner (65fc6b9)
  • ensure error handling type safety and add onError schema (b61c183)
  • ensure type safety in engine runner error handling (32a3007)
  • handle missing fs.promises.stat and fix directory structure check (84ff132)
  • handle symlink errors and improve directory structure validation (b2847c9)
  • handle undefined paths and use path.resolve for path normalization (e814259)
  • improve error handling in dependency collection (ee003d2)
  • improve event listener handling and type safety in tests (32d6c3b)
  • improve logger prefix handling and configuration inheritance (42f6d8c)
  • improve operator error detection in rule execution (3590c50)
  • improve plugin error handling and propagation (82315c6)
  • improve TypeScript types for logger and pino middleware (77bd9ac)
  • initialize logger immediately and update test expectations (adc8d76)
  • move operator loading inside function to capture latest plugins (c1df0df)
  • prevent masking of string values in maskSensitiveData util (f9abb11)
  • remove duplicate export statements in types/index.ts (b61504c)
  • remove duplicate function declarations in logger.ts (fe68714)
  • remove duplicate removeAllListeners property in mock Engine object (f77bd1a)
  • remove duplicate setLogLevel function declaration (a6f892a)
  • remove unused plugin types import (47e3bdc)
  • rename errorSource to source in ErrorActionParams interface (d7f2c04)
  • rename reqCustomProps to customProps in express logger config (22f380e)
  • replace Function.apply with Function.call for better type safety (f0e8e2d)
  • resolve logger initialization circular dependency (3d81e87)
  • resolve TypeScript error by avoiding reassignment to constant error (e16fbd6)
  • resolve TypeScript errors in engineRunner test file (26cf0a5)
  • resolve TypeScript errors in logger implementation (5025c92)
  • resolve TypeScript interface inheritance for XFiLogger (01c9069)
  • test: delete invalid tests (6a3e449)
  • update axios client test module imports and error handling (944d83c)
  • update axios mock implementation for 429 retry test (469881c)
  • update customContains operator to handle file analysis result object (961a8cf)
  • update docusaurus config to use correct API paths (749b04f)
  • update function type signatures for plugin facts (7aaf633)
  • update logger implementation to use Pino instead of Winston (78fa960)
  • update logger types and fix pino-http integration (6dbe72e)
  • update pino logger types and middleware configuration (bf3f0bf)
  • update spread args type to tuple for TypeScript compatibility (cf0579b)
  • use call() instead of apply() for proper argument handling (eedc5bf)

Features

  • add basic plugin example with custom operator and fact (7af5f0f)
  • add custom error handling and action execution for rules (4eb80a3)
  • add dynamic log level configuration and prefix management (3bdf085)
  • add dynamic log level control and improve environment variable handling (138f6d0)
  • add dynamic log level control and improve initialization logging (0640350)
  • add environment variable control for log level (95197a5)
  • add error behavior configuration for rule execution (2380704)
  • add error count tracking to codebase analysis results (c8e5847)
  • add error demo plugin with comprehensive error handling (336d24a)
  • add error handling and export utility modules (ea41b07)
  • add errorCount field to ResultMetadata interface (24f8d84)
  • add ErrorLevel type for rule failure levels (1523f9f)
  • add explicit method signatures to XFiLogger interface (af1684d)
  • add extensions file option to CLI and banner display (3512f4f)
  • add external API integration with regex value extraction (c019226)
  • add external sample rules loading for basic plugin (b63fb0a)
  • add fallback to global modules for plugin loading (52949fb)
  • add operation field to dependency error logging (457050b)
  • add plugin error handling with result propagation (8f0a78e)
  • add plugin loading support to CLI mode (7c23f01)
  • add regex validator plugin with API validation support (664cdb5)
  • add regex validator plugin with validation endpoint support (0cc8b55)
  • add routeBasePath to TypeDoc plugin for correct API docs routing (255bbe5)
  • add sample rule using customFact and customOperator (27f864f)
  • add sample rules loading to sample plugin (c1ef6f4)
  • add sample rules support to plugin interface (e263728)
  • add source map support and error location enhancement to logger (f641a69)
  • add src/plugins as first lookup path for plugin loading (bd2e8b5)
  • add subpath exports for logger and axios utilities (21a9ff2)
  • add support for loading external plugins via extensions (d044e02)
  • add symlink support with cycle detection in file operations (7862c52)
  • add test command as default CLI action (40ad784)
  • add test server script for serving mock JSON responses (e204196)
  • add validate command for archetype configuration validation (31d489a)
  • enhance error handling with source classification and stack traces (eaaf0e0)
  • enhance Pino logger with multistream and improved serialization (3956a0b)
  • enhance plugin loading logs with detailed facts and operators info (96b49eb)
  • enhance plugin registration with validation and module format support (785445b)
  • enhance sensitive data protection in logging and env vars (b7dc977)
  • expose TypeScript type definitions in package exports (8c0dd86)
  • implement intermittent masking pattern for sensitive data (18a5d84)
  • implement partial masking for sensitive data with string support (d8dc195)
  • implement plugin system for custom facts and operators (6a03a2c)
  • improve sensitive data masking to maintain original length (b47cbca)
  • integrate plugin facts into allFacts registry (89504e4)
  • plugin framework: refactor and improve extensibility (d999ebc)
  • support loading multiple npm modules as extensions directly (e485c6b)
  • update basic plugin to support external API calls and regex extraction (c23941c)
  • update mask function to show 6 characters at each end (9b8babe)

BREAKING CHANGES

  • plugin framework: cli options extended to include -e loading plugins, and enhancements to AI
    integration options