[aside] otel.span の start/end_unix_nano を内部 kernel fields では JSON 数値(u64)で持ったが、OTLP/JSON の wire は fixed64/uint64 を文字列でエンコードする ── egress 実装時に変換 seam が要る

PR #385 で `otel_span.rs` の `OtelSpan` は start_unix_nano/end_unix_nano を `u64`、`from_fields` は JSON number として deserialize する(quacker 内部表現は我々が決めるので number が自然)。だが proto3 JSON mapping では uint64/fixed64 は **string** で運ぶのが OTLP/JSON 規約。

- 今回触らない判断: OTLP egress は deferred follow-up なので内部表現は number のままにした。
- トリガー: OTLP egress(出力)を実装する follow-up。number↔string の変換を 1 箇所に置く必要(逆に collector から OTLP/JSON を ingest する経路を作るなら parse 側も)。見落とすと「文字列期待の collector に数値を吐いて弾かれる」or「数値が文字列で来て deserialize 失敗」。