session-report · RPT-96F725549C39

Concresca FULL ROOT r7 — corrected activation sequence and error reports

Host activation and status routing

Source identity

Record
RPT-96F725549C39
Original file
Concresca-FULL-ROOT-r7-README.md
Original SHA-256
b26574834f9c4dbe1974eb0ff8d1f348b3d17b6f4608ac11ff3942ceadb5942c
Source family
repair-conversation
Public copy SHA-256
b26574834f9c4dbe1974eb0ff8d1f348b3d17b6f4608ac11ff3942ceadb5942c
Original custody
Exact bytes retained in the private project package under docs/_evidence/; not a public download.

Read the public source-text copy

Disposition and proof of use

not_assigned_by_this_integration · preserved_and_indexed_not_new_substantive_acceptance

Memory owners: .uai/architecture.uai, .uai/operations.uai, .uai/test-plan.uai. These are private repository records, not public web routes.

Jump to a report section

Report body

Concresca FULL ROOT r7 — corrected activation sequence and error reports

Release concresca-full-root-20260927-r7, 27 September 2026.

This is a complete flat-root release, not an overlay. It includes the existing application, website, automatic verifier and authenticated PHP activation page. R7 corrects two reproduced r6 activation-interface defects. It does not claim that the live Python route has been activated or that all workflows have passed.

Deploy the whole release

Extract the entire archive into the EXISTING website document root containing passenger_wsgi.py, concresca_runtime/, assets/ and status/. There is no outer project folder and no separate public/ directory to merge. A previous r6 installation is not required. Do not empty the destination first.

Preserve the existing root .htaccess, external private environment, Python environment, database, runtime/ state, and account-home .concresca-diagnostics/ directory. These host-specific resources are NOT included in the archive. Back up the existing installation before replacing code. A release archive is not a copy of your hosting account or credentials.

Open a fresh page at:

https://concresca.com/concresca-diagnostics.php

The footer must identify concresca-locked-diagnostics-20260927-root-r7. Unlock using the current code from the existing private account-home file .concresca-diagnostics/access-code.txt. Do not send the code in chat or URLs.

In Activate installed release, choose Check activation prerequisites. When it passes, tick the consent checkbox and choose Activate installed release. The check no longer consumes the start action's rate limit. Repeated checks and repeated starts still have their own short rate limits; concurrent installation is independently prevented by the backend process lock.

No terminal command is required for this path. Uploading files alone still does not execute the host installer. The one-time authenticated activation runs the fixed packaged installer to configure routing and the automatic schedule. Subsequent verifier runs do not require this page to remain open or unlocked.

Two demonstrated r6 defects corrected

Cross-action rate limiting: r6 used one timestamp for both prerequisite checking and installation start. A start immediately after a check could return HTTP 429 ACTIVATION_RATE_LIMIT. A native local Apache/PHP HTTPS test reproduced this with the unmodified r6 page/backend. R7 uses separate action timestamps, retains repeat-submission limits and sends a bounded Retry-After value.

Stale error export: after a start request was rejected, r6 could leave the Download activation result button exporting the previous preflight_passed result instead of the new error. The regression test reproduced that exact mismatch. R7 replaces the displayed/downloadable result with a redacted report of the current failed request. Network errors, unconfirmed server errors and non-JSON responses get an explicit unavailable-response report, not raw server text or a stale success.

These defects are local reproductions. They are NOT established as the cause of the existing live HTTP 404, nor proof that an r6 activation was attempted.

Interpreting results

A backend result uses schema concresca.web-activation.v1. A browser request failure report uses concresca.web-activation.client-result.v1; it is not an installer completion receipt. Its allowlisted fields include the requested action, HTTP status when available, error code and bounded retry interval. No tokens, access codes, arbitrary error strings, response bodies or paths are included. The current failure remains downloadable even after a prior successful prerequisite check.

preflight_passed means only that prerequisites passed; it made no routing change. started or running is progress, not service readiness. installed_verification_pending is the installer's historical observation of routing and scheduler registration, not current workflow acceptance.

request_rejected describes a refused request. response_unavailable means that the browser did not obtain a usable result; a submitted start may still have reached the backend. Do NOT repeatedly click start in that case: use Refresh activation result to read the saved job. It does not start a job. After a lost session or FRESH_UNLOCK_REQUIRED, reopen and unlock the page, then refresh the saved result. Download the current redacted result for review.

A started job executes independently of the browser. Its private state is saved at account-home .concresca-diagnostics/activation-state.json. An unfinished job without its process lock is reported as interrupted, not successful. Hard host termination or concurrent deployment can prevent complete rollback, so an interrupted result does not certify rollback.

Existing installer behavior retained

The PHP action accepts no arbitrary command, URL, interpreter or private path. It requires authentication, CSRF validation, explicit release-specific consent, a recent unlock and matching backend source hashes. It invokes the fixed Python backend without a shell. Whole-release verification and existing account-local Python, private configuration and scheduler checks occur before installation. The installer preserves unrelated host configuration and schedules, removes only the recognized static status placeholder, checks the served runtime and private-route protection, and registers verification every five minutes. Readback failures enter its compare-before-restore transaction. This release does not bypass disabled PHP process functions, unavailable host integration, missing dependencies, account permissions, cron restrictions or database errors.

The CLI alternative remains python concresca-repair/activate.py using the existing application Python. It is not required for browser activation.

Readiness completion criterion

First the readiness URL must return genuine runtime JSON rather than 404, and /status/current.json must not serve the static placeholder. Then the verifier must obtain current matching evidence for all 22 workflows and a healthy heartbeat before productionReady is true and /autonomyz returns HTTP 200. No status flag, receipt TTL or workflow requirement was weakened in r7.

Validation boundary

See TEST-RESULTS.md and the external validation record for executed results. Native tests here use local Apache/mod_php, not LiteSpeed/Passenger on your account. The new HTTPS fixture deliberately lacks production configuration: the real backend starts and correctly stops without changing routing. Successful installer transactions remain simulated-host tests. Browser-report tests use a synthetic DOM, not a completed browser navigation. No production deployment, MySQL activation or unattended production recovery is claimed.

Implementation references (not proof of production configuration): https://www.php.net/manual/en/function.proc-open.php https://docs.litespeedtech.com/lsws/cp/cpanel/cloudlinux/