Although the javadoc of o.a.j.v.packaging.JcrPackage#isInstalled() is stating
Checks if this package is installed. Note: the default implementation only checks the JcrPackageDefinition.getLastUnpacked() date. If the package is replaced since it was installed. this method will return false.
this method is returning true in case the package has been reuploaded in between (with the same group, package name and version). This is violating the contract of this method.
Please either fix implementation or javadoc description.
That issue already lead to downstream issues in the com.adobe.granite.installer.factory.packages.impl.PackageTransformer which therefore only installs a package once.