Inputs with arrays containing objects cause invalid type error
## Problem
The step runner fails when inputs contain nested objects inside arrays.
When YAML inputs are unmarshaled into `StepInputs` (`map[string]interface{}` wrapper), nested objects inside arrays are decoded as `StepInputs` instead of `map[string]interface{}`.
These values are later passed to protobuf conversion via `structpb.NewValue`, which does not support custom map types and results in a runtime error.
The issue only manifests when objects are nested inside arrays. Top-level objects are handled correctly.
## Proposal
All input values should be recursively normalized before being passed to protobuf conversion.
In particular:
- Nested objects should always be converted to `map[string]interface{}`
- Arrays (`[]any`) should be recursively traversed to normalize their elements
This would prevent invalid types from reaching `structpb.NewValue` and avoid runtime failures.
## Example
```yaml
debug:
stage: debug
image: alpine:latest
run:
- name: debug
func: ./
inputs:
array_with_objects:
- nested_object:
key: value
```
Produces:
```shell
ERROR: Job failed: executing steps request: run request failed for job "1": rpc error: code = Unknown desc = loading step: compiling steps: compiling function[0]: <nil>: proto: invalid type: schema.StepInputs
```
issue