Repository navigation
ArchKeel 1.1.2 — Bind native allowances to exact signatures
- Nested map allowances stay bound to the root annotation. An
Annotated
wrapper cannot reuse the inner-map or native-value permission for an unwrapped
Mapping[str, list[dict[str, object]]]signature. Outer-map permission remains
separate; aliases, DTO fields, unions and unproven bindings do not qualify.
See AD-217. - JSON Schema agrees with the parser. A selector with
mapping_depth
requires an emptyfield_path. Omittingfield_pathstill means the direct
signature; a nonempty DTO path is rejected. - Exact native Iterable elements. Direct and proven facade signatures can
permit oneobjectelement inIterable[object], optionally unioned with
None. Match the callable, parameter or return position, complete annotation,
emptyfield_pathandcontainer_depth: 1. Thetypingorcollections.abc
origin and builtinobjectmust be proven. Aliases, DTO fields, wrappers,
other collections, additional union arms and repeated opaque leaves do not
qualify. See AD-218.
Accepted native values remain opaque. These allowances prove neither
serialization nor materialization nor type closure. Contract and result schema
versions are unchanged.
Open gaps remain for contained maps in exact named aliases,
heterogeneous typed-map unions,
static overload re-exports,
quoted builtin annotations
and report-view traceability.
Known report-navigation issue: #447
records an ownership-invalid component/module route that becomes unscoped after
URL normalization and reload. Reproduced on this exact release source; evaluator
results are unchanged. The fix is separate from 1.1.2.