com um clique
adding-error-codes
Use when adding new diagnostic error codes to the compiler
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
Use when adding new diagnostic error codes to the compiler
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
| name | adding-error-codes |
| description | Use when adding new diagnostic error codes to the compiler |
Vole uses structured error codes: E0xxx (lexer), E1xxx (parser), E2xxx (semantic).
Get next available code:
just dev next-error sema # For semantic errors (E2xxx)
just dev next-error parser # For parser errors (E1xxx)
just dev next-error lexer # For lexer errors (E0xxx)
List existing errors (for reference):
just dev list-errors sema
just dev list-errors parser
just dev list-errors all # All categories
Add error variant to the appropriate file:
| Error Type | File |
|---|---|
| Lexer | src/crates/vole-frontend/src/errors/lexer.rs |
| Parser | src/crates/vole-frontend/src/errors/parser.rs |
| Semantic | src/crates/vole-sema/src/errors/mod.rs |
Emit the error in the relevant analyzer/parser code:
| Error Type | Emission Location |
|---|---|
| Lexer | src/crates/vole-frontend/src/lexer.rs |
| Parser | src/crates/vole-frontend/src/parser/*.rs |
| Semantic | src/crates/vole-sema/src/analyzer/**/*.rs |
Sema errors use self.add_error(SemanticError::Variant { span }, span).
Add snapshot test for error message:
test/snapshot/check/sema/your_error.vole with code that triggers the errorcargo run -p vole-snap -- bless test/snapshot/check/sema/your_error.voleVerify:
just pre-commit
Automated performance optimization loop. Generates large benchmark workloads with vole-stress, profiles with perf, identifies hotspots in our code, fixes them, verifies improvement, repeats.
Automated bug-hunting loop using vole-stress + vole-reduce. Generates random codebases, tests them, reduces failures, fixes bugs, verifies, and repeats.
Use when you are asked to implement tickets (tasks/epics) created in `tk`
Incremental Rust code quality loop. Scans the compiler codebase for one refactoring opportunity per round — duplicated logic, poor factoring, mechanical lint fixes — applies it, verifies, and repeats.
Use when you have a design or requirements and need to create tickets (epics/tasks) for implementation
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.