Files
fil/.ai-rulez/rules/alef-generated-bindings.md
Henrik Jess Nielsen b4c07d3693
All checks were successful
Deploy fil (kreuzberg) / deploy (push) Successful in 49s
Nomad changes
2026-06-01 23:40:55 +02:00

1.3 KiB

priority
priority
critical

Alef-Generated Bindings

Files in packages/*/ and binding crates are generated by Alef — DO NOT manually edit.

Workflow

  1. Check alef.toml before editing anything in packages/*/ or binding crates
  2. Modify Rust source files or alef.toml itself
  3. Run task alef:generate to regenerate all Alef-managed output without formatting (alef all --clean --format=false)
  4. Run task alef:format explicitly if Alef post-generation formatting is needed
  5. Run task e2e:test or task e2e:all to verify
  6. Commit Rust source + alef.toml + regenerated bindings atomically

Rename Mappings (from alef.toml)

  • Go: DocumentExtractorExtractor
  • All other languages: no renames

Freshness Check

task alef:generate && git diff --exit-code packages/ crates/kreuzberg-node/ crates/kreuzberg-wasm/ crates/kreuzberg-ffi/

Key alef.toml Sections

  • [crate] — Rust source files parsed for type/function extraction
  • [languages.*] — per-language output path, module name, rename mappings
  • [e2e] — e2e test generation: fixtures dir, output dir, per-language call overrides
  • [readme] — README template generation per language package

Canonical e2e tasks are task e2e:generate, task e2e:build, task e2e:test, and task e2e:all. Do not add legacy aliases.