harn-parser 0.10.18

Parser, AST, and type checker for the Harn programming language
Documentation
# HARN-STD-102 — public stdlib function missing return type

## What it means

Every public function exported from Harn's embedded standard library is a
contract boundary. The function's return type is part of that contract: callers,
generated docs, LSP hovers, schema export, and downstream agents should be able
to depend on the producer shape without rediscovering it from implementation
details.

This lint warns when a `pub fn` declared inside
`crates/harn-stdlib/src/stdlib/**/*.harn` omits an explicit `-> Type`
annotation. Private helpers remain inferable.

## How to fix

Declare the narrowest honest return type in the function signature:

```harn,ignore
pub fn read_json(path: string) -> Result<JsonValue, JsonReadError> {
  ...
}
```

Use named closed records for finite object shapes, `Result<T, E>` for fallible
operations, and typed maps such as `dict<string, V>` for true open-key maps.
Do not silence the lint with `any` or open `dict` unless the value is genuinely
opaque and the caller must narrow it before use.