* fix(guard): keep protection after trusted catalog updates
Resume an in-progress catalog migration and keep local controls when a
package update leaves a verified Cloud activation bound to the previous
catalog. Invalid activation MACs and untrusted digest changes stay fail-closed.
Signed-off-by: Michael Kantor <6068672+kantorcodes@users.noreply.github.com>
* fix(guard): keep catalog provenance and managed epoch checks
Compare authenticated stale Cloud activation revisions with the durable
epoch, and record catalog-migration provenance when an interrupted
upgrade is resumed.
Signed-off-by: Michael Kantor <6068672+kantorcodes@users.noreply.github.com>
* fix(guard): persist catalog migration provenance on later reads
Record the catalog-migrated event from a protected read after resume so
an interrupted event insert is repaired exactly once on the next read.
Signed-off-by: Michael Kantor <6068672+kantorcodes@users.noreply.github.com>
* fix(guard): keep projected managed controls after catalog resume
Drop the stale-activation shortcut that omitted signed Cloud layers so
catalog upgrades keep the projected managed controls, and still resume
an interrupted catalog migration without recover-authority.
Signed-off-by: Michael Kantor <6068672+kantorcodes@users.noreply.github.com>
* test(guard): assert preserved local-admin control after catalog upgrade
Keep the managed-layer allowance, and check the disabled local-admin
extension control survives the trusted catalog rebind.
Signed-off-by: Michael Kantor <6068672+kantorcodes@users.noreply.github.com>
---------
Signed-off-by: Michael Kantor <6068672+kantorcodes@users.noreply.github.com>