Skip to content

Security: pb64-lean/lentil

Security

SECURITY.md

Security policy

Supported versions

Lentil is pre-release. Only the current main development line receives security fixes; no released version currently carries a stable support commitment.

Reporting a vulnerability

Please do not open a public issue for a suspected vulnerability. Use GitHub's private vulnerability reporting flow from this repository's Security tab. If that flow is unavailable, contact the repository maintainers privately through the pb64-lean organization before disclosing details publicly.

Include, when possible:

  • the affected revision and build or runtime environment;
  • a minimal reproduction or proof of concept;
  • the expected and observed trust-boundary behavior;
  • potential impact; and
  • any known mitigation.

The maintainers do not currently promise a response SLA. They will coordinate validation, remediation, and disclosure through the private report.

Relevant security boundary

Lentil's attributes and commands run metaprogramming code during Lean elaboration, so imported Lean modules and build inputs are trusted. Generated declarations are checked by Lean, but that does not establish that a bean factory's computation is safe or that its IO effects have the intended behavior. Compile-time dependency selection and cycle checks likewise do not sandbox factories or prove application-specific security properties.

Environment variables consumed by Config.Config and @[lentil_config] are untrusted runtime input. Applications are responsible for validating values whose domain constraints go beyond their EnvValue parser and for protecting the resulting configuration in logs and memory. Built-in parse errors omit raw values, but custom EnvValue instances control their own diagnostic text. Custom parsers for secrets should not include the input value in an error.

There aren't any published security advisories