fix: handle mixed function+attrset defs at provides sub-aspects (#464)
## Summary
- When a sub-aspect (`_.sub`) received both a parametric function and a
plain attrset from different modules, `providerType`'s either merge fell
back to `aspectType` which evaluated the function as a NixOS module —
failing with "attribute 'host' missing"
- Add a custom merge on `providerType` that detects mixed defs and
coerces parametric functions to `{ includes = [fn]; }` before merging as
aspects
- Single-def functions keep their identity (preserving `functionArgs`
for namespace export/import per #352)
## Test plan
- [x] `deadbugs-issue-448` tests: mixed function+attrset merge on both
fx and legacy pipelines
- [x] `deadbugs-issue-352` tests still pass (function arg reflection
preserved)
- [x] Full CI suite passes (491/491)
Fixes #448
Co-authored-by: Victor Borja <vborja@apache.org>
authored by