What to do about "File X is not in either expected pre- or post-patch state for Y" errors in install.log?
I managed to fix this just now by booting into safe-mode and running software update.
To boot into safe-mode, restart your computer and hold ⇧ shift during start up.
I rebooted the machine last night and that stopped the softwareupdated process from writing those messages to the log. Then this afternoon I told my Mac to install 10.10.4 and it worked successfully without any issues.
I'm still not clear on what was causing these messages but I don't think it was anything to do with a bad download of the 10.10.4 update as has been suggested elsewhere. According to the install.log it never actually started downloading the install. From the sequence of log messages it appears that my Mac had downloaded a catalog of available updates from Apple's servers, scanned through that catalog for available updates and this scan somehow resulted in these errors. My current best guess is that it was some sort of validation step before downloading and installing 10.10.4. Checking to see which version of 10.10.4 should be downloaded perhaps.
Jun 30 16:26:40 vincent softwareupdated[214]: Adding client SUUpdateServiceClient pid=6495, uid=501, installAuth=NO rights=(), transactions=0 (/System/Library/Frameworks/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.WebContent.xpc/Contents/MacOS/com.apple.WebKit.WebContent)
Jun 30 16:26:47 vincent softwareupdated[214]: Scan for changed products with previous 1 updates: 031-25780(R) (plus 123 predicate-only)
Jun 30 16:26:47 vincent softwareupdated[214]: SoftwareUpdate: Scan for client pid 214 (/System/Library/CoreServices/Software Update.app/Contents/Resources/softwareupdated)
Jun 30 16:26:50 vincent softwareupdated[214]: SoftwareUpdate: Using catalog https://swscan.apple.com/content/catalogs/others/index-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz
Jun 30 16:26:51 vincent softwareupdated[214]: SoftwareUpdate: elapsed scan time = 3.9
Jun 30 16:26:51 vincent softwareupdated[214]: SoftwareUpdate: 031-25780 is unseen ramped
Jun 30 16:26:51 vincent softwareupdated[214]: Scan (f=0, d=0) found 1 updates: 031-25780(R) (plus 123 predicate-only)
Jun 30 16:26:51 vincent softwareupdated[214]: Package Authoring: File FWAVC.framework/Versions/A/FWAVC is not in either expected pre- or post-patch state for (package: com.apple.pkg.update.os.10.10.4.14E46.delta)
Jun 30 16:26:51 vincent softwareupdated[214]: Package Authoring: finalSHA1String = 2276768b20f52471f8097c493254cae3f0e2f33f, digest = 1edd7f907902ac44e0d895302abe4fa7d8393e94 (package: com.apple.pkg.update.os.10.10.4.14E46.delta)
Jun 30 16:26:52 vincent softwareupdated[214]: Package Authoring: File FWAVC.framework/Versions/A/FWAVC is not in either expected pre- or post-patch state for (package: com.apple.pkg.update.os.10.10.4.14E46.delta)
Jun 30 16:26:52 vincent softwareupdated[214]: Package Authoring: finalSHA1String = 2276768b20f52471f8097c493254cae3f0e2f33f, digest = 1edd7f907902ac44e0d895302abe4fa7d8393e94 (package: com.apple.pkg.update.os.10.10.4.14E46.delta)
Jun 30 16:26:52 vincent softwareupdated[214]: Package Authoring: File FWAVC.framework/Versions/A/FWAVC is not in either expected pre- or post-patch state for (package: com.apple.pkg.update.os.10.10.4.14E46.delta)
Jun 30 16:26:52 vincent softwareupdated[214]: Package Authoring: finalSHA1String = 2276768b20f52471f8097c493254cae3f0e2f33f, digest = 1edd7f907902ac44e0d895302abe4fa7d8393e94 (package: com.apple.pkg.update.os.10.10.4.14E46.delta)
Jun 30 16:26:52 vincent softwareupdated[214]: Package Authoring: File FWAVC.framework/Versions/A/FWAVC is not in either expected pre- or post-patch state for (package: com.apple.pkg.update.os.10.10.4.14E46.delta)
Jun 30 16:26:52 vincent softwareupdated[214]: Package Authoring: finalSHA1String = 2276768b20f52471f8097c493254cae3f0e2f33f, digest = 1edd7f907902ac44e0d895302abe4fa7d8393e94 (package: com.apple.pkg.update.os.10.10.4.14E46.delta)
Jun 30 16:26:52 vincent softwareupdated[214]: Package Authoring: File FWAVC.framework/Versions/A/FWAVC is not in either expected pre- or post-patch state for (package: com.apple.pkg.update.os.10.10.4.14E46.delta)
Jun 30 16:26:52 vincent softwareupdated[214]: Package Authoring: finalSHA1String = 2276768b20f52471f8097c493254cae3f0e2f33f, digest = 1edd7f907902ac44e0d895302abe4fa7d8393e94 (package: com.apple.pkg.update.os.10.10.4.14E46.delta)
Interestingly the catalog file mentioned in the logs index-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz contains a link to the actual installer PKG file, but also points to a package metadata (PKGM) file. This PKGM file lists all the files contained within the update along with version numbers. Perhaps softwareupdated was checking the existing file against these version numbers.