From https://datatracker.ietf.org/doc/html/rfc8152#section-3.1 alg:
This parameter MUST be authenticated where the ability to do so exists... This authentication can be done either by placing the header in the protected header bucket or as part of the externally supplied data.
But the example https://github.com/cose-wg/Examples/blob/master/sign1-tests/sign-pass-01.json puts the alg in the unprotected bucket, the protected bucket is a0 (empty) and there is no externally supplied data.
Also, what does "Redo protected" mean in "title":"sign-pass-01: Redo protected"?