is it safe to leak some information about scrypt result? I am encrypting a file via AES-CBC and am using scrypt to extract a key from a user-provided password. The IV is public and is stored with the encrypted file.

Is it safe to generate my IV (public) and key (private) together using scrypt (e.g. set dklen=64 then use scrypt[0...31] for key and scrypt[32...63] for IV), or will I be leaking some kind of state information?
That should be fine, as long as you never reuse it for any other purpose.  (E.g., if you want to encrypt another file with the same password, generate a fresh salt.)

But there's a simpler approach: Use AES256-CTR with nonce 0 and forget about AES256-CBC altogether.  No more worry about unaligned message lengths or padding, how to choose initialization vectors, etc.

I encourage you to consider authentication too.  For example, instead of the unauthenticated AES256-CBC, you could use AES256-GCM, or AES256-CTR with HMAC-SHA256 in encrypt-then-MAC composition.  In fact, maybe you would be better off just using the scrypt(1) utility, which has a simple format.