NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev
A configuration-driven, architecture-agnostic linter for Dart & Flutter.
Last release 9 months ago
28 Dec 2025
Too new to tell
only 2 release windows
Nearly every release is documented
notes for 6 of 6 stable releases
Nothing withdrawn
no release was ever pulled
9 months old
6 releases · first in 2025
One column per month.
Refactor: Improve parameter name matching in type safety rules
TypeSafetyLogic to differentiate between regular expression and exact string
matching for parameter identifiers.matchesParameterName which uses RegExp only if the pattern contains special
regex characters; otherwise, it performs a strict equality check.id no
longer incorrectly applies to a parameter named middleName.Refactor: Improve member identifier matching and code clarity.
Feature: Introduced new grammar tokens for phrase validation.
noun.phrase, noun.singular.phrase, noun.plural.phrase.verb.phrase, verb.present.phrase, verb.past.phrase.Docs: Restructure and clarify README documentation
README.md for improved clarity and readability by converting descriptive
paragraphs into structured tables for core concepts like modules and components.Definitions and Properties into distinct sections with their own tables to
clarify configuration structure.pattern, antipattern,
and grammar tokens.List<Enum> to
Set<Enum>).Reference section from the table of contents.Refactor: Replace language engine with lexicor from dictionaryx and enhance grammar logic.
lexicor from dictionaryx and enhance grammar logic.ArchLogger, a new tagged logging utility, to aid in debugging complex
grammar and file resolution logic.README.md for better readability by converting descriptive sections into
clear, tabular formats.modules, components, actions, and other core
concepts with detailed tables.The first release of Architecture Lints, a configuration-driven, architecture-agnostic static analysis engine.
🎉 Initial Beta Release
The first release of Architecture Lints, a configuration-driven, architecture-agnostic static analysis engine.
architecture.yaml.FileResolver: Identifies architectural components based on file paths.ComponentRefiner: Disambiguates co-located files (e.g., Interface vs. Implementation)
using AST analysis (Inheritance, Naming Patterns, and Structure).mode (namespace/file/part), kind (class/enum), and
modifier (abstract/sealed).${source.name.pascalCase}) in configurations.arch_dep_component: Enforces strict dependency rules between layers (e.g., Domain cannot
import UI).allowed (whitelist) and forbidden (blacklist) imports.arch_naming_pattern: Enforces regex patterns (e.g., ${name}UseCase).arch_naming_antipattern: Bans specific naming conventions.${noun}, ${verb}) for semantic naming.arch_safety_return_strict: Enforces return types (e.g., FutureEither<T>).arch_safety_param_strict: Enforces parameter types (e.g., UserId instead of int).arch_structure_modifier: Enforces Dart keywords (e.g., Interfaces must be abstract).arch_parity_missing: Detects missing companion files (e.g., Port missing its UseCase).arch_exception_forbidden: Bans specific operations (throw/catch) per layer.arch_usage_global_access: Detects and bans Service Locator usage in pure layers.debug_component_identity rule to visualize how the engine parses your code.Your coding agent can read these notes before it upgrades. Set up the MCP server →