Skip to content

Changelogs

This section tracks the history of significant changes, refactors, and updates to the IGNIS framework.

Planned Features

FeatureDescriptionPriority
Schema MigratorLoopBack 4-style auto schema migration without Drizzle KitHigh

Recent Changes

DateTitleType
2026-09-07Atlas Recognises the IGNIS Checkout by Its Workspace ManifestBug Fix
2026-09-07Atlas Gains version and changes Tools and a Generated Release TableNew Feature
2026-09-07CRUD Controllers Narrow Their Rows; The Asset Controller Takes Two HooksNew Feature
2026-09-07WorkerApplication Gains configs.projectRoot; BaseKafkaHelper Turns protectedNew Feature
2026-09-07Atlas Gains a symbol Tool and a Generated Symbol TableNew Feature
2026-09-06BullMQHelper and KafkaConsumerHelper Gain Extension SeamsNew Feature
2026-09-06setListHeaders Takes offset + total; toContentRange Is ExportedNew Feature
2026-09-06ignis-artifacts Warns When an --ignore Pattern Hides a Decorated ClassNew Feature
2026-09-06configs.artifacts Accepts { when, index } Entries - the Run-Mode Gate Lives in the ConfigNew Feature
2026-09-06configs.projectRoot Replaces the getProjectRoot() OverrideNew Feature
2026-09-06ignis-artifacts check Compares the Index Body, Not Its Header LineBehavior Change
2026-09-06helpers Declares Its @hono/zod-openapi Peer; the Generated Index Header Names the Command That Produced ItBehavior Change
2026-09-06configs.server Passes idleTimeout and maxRequestBodySize to Bun.serveNew Feature
2026-09-06A Bare @repository() Inherits Its Parent's Model and Datasource; the Console Fallback Warns on the First Log Line; ignis-artifacts Runs SilentlyNew Feature, Bug Fix
2026-09-06applicationEnvironment and the Module Registry Are Shared Across Module Copies; configs.path.base Is Checked at ConstructionBug Fix
2026-09-06ignis-docs-mcp Is Replaced by @venizia/ignis-atlasBehavior Change
2026-09-05@venizia/ignis No Longer Depends on @venizia/ignis-bootBehavior Change
2026-09-05Boot Checks - Every Binding Resolves, No Hand Registration Beside the Generated Index, No Silent Key OverrideNew Feature
2026-09-05List Responses Share One Contract - respond Takes a Range on BaseRestController, and POST /search Gets Its HeadersNew Feature, Bug Fix, Breaking Change
2026-09-04Dependency Floors Raised Across the Chain, Audit Down to Six Accepted AdvisoriesEnhancement, Security, Breaking Change
2026-09-03The Deprecated Runtime Boot API Is Fully RemovedBreaking Change
2026-09-02Bundled and Compiled Apps - Helpers Exports Stay Defined, NODE_ENV Stays a Runtime Read, One Logger Provider Across CopiesBug Fix, Enhancement
2026-09-02Artifacts Register From a Generated Index, and the Runtime Boot System Is RetiredNew Feature, Breaking Change
2026-08-31EventBus Retry Gets Jitter, a Bounded Per-Registration Window, and a Tagged Handler ReferenceNew Feature, Enhancement, Breaking Change
2026-08-31TEntityId Makes a String Id Impossible to Confuse With a StringNew Feature
2026-08-31PolicyDefinition Gets domain_type and domain_id (Release A - Both Forms Written)New Feature, Migration Required
2026-08-31An Application Refuses to Start When scopeFilter Cannot Take EffectSecurity, Behavior Change
2026-08-31PolicyDefinition Reads the Domain Pair and the domain Column Is Gone (Release B)Breaking Change, Migration Required
2026-08-30A Row Scope Every Query Carries, Denied by Default When It Cannot Be ResolvedNew Feature, Security
2026-08-30Where Clauses Now Type-Check the Value, Not Just the ColumnBreaking Change, Enhancement
2026-08-30Tree Utilities Join helpers, and RecursiveTreeSql Bounds Every Recursive Walk in kernelNew Feature, Security
2026-08-30A Real Hash Class Replaces the Removed hash() UtilityNew Feature, Security, Breaking Change
2026-08-30PolicyDefinition.variant Stays Closed by Default, but an App Can Now Declare Its Own Edge KindsEnhancement
2026-08-30authorize() Denies When No Enforcer Is RegisteredSecurity, Breaking Change
2026-08-30getHealth() Never Throws, Imports Keep Progress, and collectionExists() Never Lies About AbsenceBehavior Change, Bug Fix
2026-08-29Casbin Domain Hierarchy - Parent Domains Reach Their ChildrenNew Feature
2026-08-24Two Query Shapes You No Longer Have to RebuildNew API, Enhancement
2026-08-22Log Lines Stop Carrying Color Outside DevelopmentBehavior Change, Enhancement
2026-08-21Services Prove Themselves to Each Other, Without a Shared PasswordNew Feature, Security
2026-08-19Your Own Authentication Strategies, and Tokens That Say Who They Are ForNew Feature, Security, Enhancement, Breaking Change
2026-08-19A Browser BFF That Survives a Second TabNew Feature, Security, Breaking Change, Bug Fix
2026-08-18A Second ID Generator, for IDs People ReadNew Feature
2026-08-18Every Browser-Safe Package Now Ships ESMEnhancement, Bug Fix, Behavior Change
2026-08-13A Browser-Pure Kernel Under @venizia/ignisNew Feature, Enhancement, Internal Refactor
2026-08-12Log Arguments Under %j No Longer Collapse to [Circular]Bug Fix, Security, Behavior Change
2026-08-07Call Sites No Longer Have to Know Which Fields Are TextNew Feature, Enhancement
2026-08-07Nested i18n Fields Become Filterable and SortableNew Feature, Bug Fix, Behavior Change
2026-08-07One Transport for Every Typesense SearchNew Feature, Bug Fix, Behavior Change
2026-08-06AES Keys Derive with PBKDF2, and Ciphertext Carries a Key IdBreaking Change, Security, New Feature
2026-08-05Search Filters Now Mean What Relational Filters MeanSecurity, Breaking Change, Bug Fix, Enhancement
2026-08-02SQLite and PGlite - Two Embedded Relational EnginesNew Feature, Enhancement
2026-08-01Relational Connector Lift - Engine-Neutral SQL TierBreaking Change, Enhancement, Bug Fix, Behavior Change
2026-07-26Search and Mail Errors Join the Framework CatalogEnhancement
2026-07-25ignis-filter - the Filter Vocabulary as a Browser-Safe PackageNew Package, Enhancement
2026-07-25Readable Error Logs and a logLevel Option on getErrorNew Feature, Enhancement
2026-07-21BaseFilteredAdapter Connector Resolution FixBug Fix
2026-07-20fromError - Rehydrate a Server Error on the ClientNew API
2026-07-20Casbin Single-Wave Extraction - Recursive CTE Replaces the Second Query WaveEnhancement, Behavior Change, Bug Fix
2026-07-20Casbin Custom Grants - Operation-Subset Grants in One RowNew Feature, Enhancement
2026-07-18Logger Overhaul - ILogger Tier, Pino Provider, Single-Provider LoadingBreaking Change, New Feature, Enhancement, Bug Fix
2026-07-18Dependency Refresh & DI CleanupMaintenance, Breaking Change, Bug Fix
2026-07-18Repository Read Retry - Predicate-Driven Retries for Replica LagNew Feature
2026-07-17Error Module RedesignBreaking Change, Enhancement
2026-07-17Logger Correctness PassBug Fix, Enhancement, Behavior Change
2026-07-17Secrets Peers Invisible to Bundlers - No More external node-vaultBug Fix, Behavior Change
2026-07-16Error Handling - Normalized Messages, Error Catalog, and a Recovered causeBug Fix, Enhancement, New API
2026-07-16Secrets & Vault IntegrationNew Feature, Enhancement
2026-07-14Optional Peers, Actually Optional - The Driver Is a Class NowBreaking Change, Bug Fix, Enhancement
2026-07-13The Hardening Round - SQL Injection, Scope Escapes and Silent LeaksSecurity, Breaking Change, Bug Fix, Enhancement
2026-07-12Core Consolidation & Deduplication - Mixin Functions Removed, Narrowing Default-Filter Merge, isApplicationErrorBreaking Change, Enhancement, Bug Fix
2026-07-11Postgres Driver Seam & Supabase - Transaction Correctness, postgres-js, RLS Auth ContextNew Feature, Refactor, Breaking Change, Security
2026-07-11Connectors Consistency Hardening - Strict find(), engineParams, SQL-Semantics ParityBug Fix, Enhancement, Breaking Change
2026-07-08Typesense Advanced Search - Vector/Semantic, Multi-Search, SynonymsNew Feature, Breaking Change
2026-07-05Unified Repository & Connectors Architecture - PostgreSQL, Typesense & Memory EnginesNew Feature, Refactor, Breaking Change
2026-06-25Redis Helpers Refactor - Abstract Base, Interfaces, Sentinel & FactoryRefactor, New Feature, Breaking Change
2026-06-18Current User Information Endpoint - GET /me & who-am-i FlagNew Feature
2026-06-14Validation Message Codes, SQLSTATE-Class DB Errors & Production Error HardeningNew Feature, Security, Breaking Change
2026-06-02Scoped RBAC Authorization - Edge-Table Model, Pooled Enforcer, Redis-Only CacheNew Feature, Breaking Change
2026-05-27Casbin Domain Matching Function - Wildcard/Pattern Domains in gNew Feature
2026-05-25Per-Model Default Limit via @model SettingsNew Feature
2026-05-22Drizzle Casbin Adapter - Schema-Qualified TablesEnhancement, Breaking Change
2026-05-21Mass Update/Delete Guards - Blank Id & Empty WhereBug Fix, Security
2026-05-20Consistent Default Limit for To-Many RelationsBug Fix, Breaking Change
2026-05-08CRUD Route Toggles & Typed JSON ResponsesNew Feature, Enhancement
2026-05-05Refresh Access Token EndpointNew Feature
2026-04-23Error Responses - messageCode & Extra FieldsEnhancement
2026-03-31TypeScript 6 Upgrade & Toolchain RefreshMaintenance
2026-03-30Row-Level Locking (FOR UPDATE)New Feature
2026-03-15gRPC Support - ConnectRPC Integration, BaseGrpcController, RPC DecoratorsNew Feature
2026-03-12Kafka Helpers Enhancement - Health, Callbacks, Transactions, Schema RegistryEnhancement, New Feature
2026-03-10Kafka Helpers Refactor & @platformatic/kafka v1.30.0Refactor, Breaking Change
2026-03-06Filter Offset/Skip Bug FixBug Fix
2026-03-04Customizable JWT Payload Field CodecsNew Feature, Breaking Change
2026-03-02Model Authorize SettingsNew Feature
2026-02-27JWKS Authentication & Service Hierarchy RefactorNew Feature, Refactor, Breaking Change, Security
2026-02-26Core/Helpers DecouplingRefactor, Breaking Change
2026-02-16Authorization System & Auth Module RefactorNew Feature, Refactor, Breaking Change
2026-02-11WebSocket Generic Type ParametersEnhancement
2026-02-11WebSocket Encrypted DeliveryNew Feature
2026-02-11Crypto Algorithm Refactor & ECDHRefactor, New Feature, Breaking Change
2026-02-10WebSocket Heartbeat & Payload LimitNew Feature, Enhancement
2026-02-06Socket.IO Integration FixBug Fix, New Feature, Breaking Change
2026-01-11Logger Optimization & HfLoggerEnhancement, New Feature
2026-01-07Controller Route CustomizationNew Feature
2026-01-06Basic Authentication StrategyNew Feature
2026-01-05Range Queries & Content-Range HeaderNew Feature
2026-01-02Default Filter & Repository MixinsNew Feature
2025-12-31JSON Path Filtering & Array OperatorsNew Feature
2025-12-31String ID with Custom GeneratorEnhancement
2025-12-30Repository EnhancementsEnhancement
2025-12-29Snowflake UID HelperNew Feature
2025-12-29Dynamic Binding Registration FixBug Fix
2025-12-26Transaction SupportEnhancement
2025-12-26Nested Relations & Generic TypesEnhancement
2025-12-18Performance OptimizationsEnhancement
2025-12-18Repository Validation & SecurityBreaking Change, Security
2025-12-17Inversion of Control RefactorRefactor
2025-12-16Model-Repository-DataSource RefactorBreaking Change
2025-12-16Initial ArchitectureDocumentation

How to Read Changelogs

Each changelog entry includes:

  • Overview: Summary of changes
  • Breaking Changes: Any changes that require migration
  • New Features: New capabilities added
  • Files Changed: List of modified files
  • Migration Guide: Steps to update existing code (if applicable)