The interval of [-\frac{p}{2}, \frac{p}{2}) is chosen automatically by OpenFHE.

For all negative values v, the unsigned value is computed as v + p. E.g., if v = -65536, then the value is mapped as -65536 + 65537 = 1. Same can be shown for all values in your output.

If you want to work with [0,p) (not a typical choice), then you can feed only unsigned (positive) numbers in the input vector, and then apply an extra step after decryption: if you get a negative number, you can remap it to a positive number by adding p to it.

Hi no it isn’t clueless, it is in fact an often asked question since it is a twist unique to FHE encoding/decoding. To add to what @ypolyakov said, it is up to the application level to determine which range you want (signed or unsigned) in that they are treated identically in the encrypted form.

But your input data is outside either of those ranges, it is [-(p-1) … p-1]
to correctly encode it needs to be either [0…p) or [−p/2…p/2). I use the latter when encoding bits. In this case (with this value of p) I can encode a nibble per slot. This is useful, for example, in key encapsulation, where I want to encode a symmetric key within a BGV/BFV ciphertext.

Remember all data is operated on mod p, so it is essential to make sure the p you select is large enough so that your input data will no overflow, and wrap around when you perform your encrypted computation.