Symptom
fda pipelines and fda status <pipeline> fail with Unable to parse the detailed response when any pipeline on the instance has a checkpoint whose fingerprint exceeds i64::MAX. One such checkpoint breaks listing every pipeline, because the list endpoint embeds storage_status_details.
Repro
Run any pipeline with storage and fault tolerance enabled until it writes a checkpoint whose random u64 fingerprint has the top bit set (half of them do), then run fda pipelines.
{"checkpoints": [{"fingerprint": 14128757731148314856, ...}]}
Cause
The circuit fingerprint is u64 (crates/feldera-types/src/checkpoint.rs:122) and the server serializes the full range. utoipa maps it to "type": "integer", "format": "int64", "minimum": 0 in openapi.json (CheckpointMetadata.fingerprint), and progenitor generates i64 from format: int64, so the client generated into fda refuses any value above i64::MAX.
Fix directions
- Serialize the fingerprint as a string in the REST types, the usual JSON answer for 64-bit values; or
- annotate the schema so generated clients use
u64 (progenitor honors format: uint64).
Symptom
fda pipelinesandfda status <pipeline>fail withUnable to parse the detailed responsewhen any pipeline on the instance has a checkpoint whose fingerprint exceedsi64::MAX. One such checkpoint breaks listing every pipeline, because the list endpoint embedsstorage_status_details.Repro
Run any pipeline with storage and fault tolerance enabled until it writes a checkpoint whose random
u64fingerprint has the top bit set (half of them do), then runfda pipelines.{"checkpoints": [{"fingerprint": 14128757731148314856, ...}]}Cause
The circuit fingerprint is
u64(crates/feldera-types/src/checkpoint.rs:122) and the server serializes the full range. utoipa maps it to"type": "integer", "format": "int64", "minimum": 0inopenapi.json(CheckpointMetadata.fingerprint), and progenitor generatesi64fromformat: int64, so the client generated into fda refuses any value abovei64::MAX.Fix directions
u64(progenitor honorsformat: uint64).