Skip to content

Allium v2 - #6

Merged
henrygarner merged 13 commits into
mainfrom
allium-v2
Mar 5, 2026
Merged

Allium v2#6
henrygarner merged 13 commits into
mainfrom
allium-v2

Conversation

@henrygarner

Copy link
Copy Markdown
Contributor

No description provided.

…fig expressions

ALP-7: guidance: clause ordering validation in rule blocks
ALP-9: contract declarations, expects/offers in surfaces
ALP-10: cross-module config references (already supported, tests added)
ALP-11: implies operator, expression-bearing invariants (top-level and entity-level)
ALP-13: expression-form config defaults (already supported, tests added)

Accept version 2 marker. 60 new tests.
Replace T/EntityMap/Future<ByteArray?> with concrete types
matching Pattern 9. ALP-2 (type parameters) was rejected.
Lexer: remove Expects/Offers tokens, add At token for @.
AST: replace Expects/Offers with ContractsClause and Annotation nodes.
Parser: add contracts: clause parsing, @invariant/@guidance/@Guarantee
annotation parsing, migration diagnostics for removed syntax. Remove
validate_guidance_ordering (moved to future validator). Update fixtures
and tests.

Sync v2 language reference; align structural validator spec rule
numbers to match. Remove prescriptive error catalogue from spec.
Tree-sitter grammar: contract/invariant declarations, implies and
thin-arrow expressions, annotations, contracts clause, comma-separated
block items. VS Code: TextMate keywords, operators, annotation pattern,
snippets. Neovim: highlight queries. Emacs: regex and treesit font-lock,
defun/imenu. TS parsers: contract/invariant/entity/value block parsing.
@henrygarner
henrygarner merged commit e8dee72 into main Mar 5, 2026
3 checks passed
@henrygarner
henrygarner deleted the allium-v2 branch March 5, 2026 07:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant