# Concresca repair revision 2 This release supersedes the first autonomous-repair ZIP. It is the same targeted-installer format and retains all 22 real acceptance requirements. ## Fixed 1. Installation on a host that does not contain the source-only SDK directory, including safe rollback of the newly created directory. 2. Valid relative Passenger restart-directory settings and equivalent settings on an installer rerun. 3. Permanent retry exhaustion during cleanup or the separate public-SDK participant. Retry work is bounded per invocation, with durable original identities/requests and existing scheduler/backoff. 4. Loss of the specific safe cause of an installation readback failure. 5. A cleanup request cannot temporarily project a healthy running heartbeat while cleanup is incomplete. ## Packaging and validation The manifest accepts both previously installed worker files and the known diagnostic baseline; unknown edits remain protected. The actual shipped payload hashes and upgrade assumptions are tested. 203 Python tests and 78 browser assertions pass; three tests exercise a real loopback Apache process. Native Passenger and MySQL and live-host execution remain unverified here. Extract into the existing application root and run the installer using that application's Python: ```sh python3 concresca-repair/install.py --app-root . ``` This is one installation command, not a manual recurring verification command. It may also be executed by an existing deployment hook. A package upload alone does not execute the installer. Do not replace the root hosting configuration with a generic source archive, and do not copy only the payload while omitting the installer. See README.md for prerequisites, the exact actions, rollback, and the live completion criterion. See TEST-RESULTS.md for evidence and limitations.