CloudAuroDocsDashboard →

Projects

Guardian: release memory and protected pages

CloudAuro guide · 5 min read

Run a release check#

Open a published project and select Guardian · Beta. Check release creates a saved report for the current deployment. Verified active hosting accounts, including Free and developer access, can run 10 manual checks per account per hour. Automatic checks queue after new deployments and actual rollbacks. Refresh history to see queued, running, completed, skipped, or failed automatic checks.

Understand your report#

Errors identify problems such as missing local assets, protected-page failures, possible private credentials in HTML/CSS/JS, or password inputs in non-POST forms. Recommendations cover page titles, language, viewport, headings, image alt attributes, input labeling, duplicate IDs, HTTP references, and missing fragment targets. Recommendations are heuristics requiring review, not an accessibility or security certification. Forms are explicitly marked untested.

Guardian inspects local HTML references, common srcset references, CSS url() references and imports, and HTML fragments. It never runs uploaded code or fetches remote URLs. Check spelling, filename case, upload destinations, and relative paths when fixing missing targets. Private credential findings omit the detected credential value; remove exposed credentials and rotate them.

Release Memory#

The latest retained check of another release is the baseline. Guardian separates new findings from resolved findings and shows changed files and potentially affected pages through the local dependency graph. Content hashes detect changes to inspected HTML/CSS/JS even when their file sizes match. Other assets are compared by size and presence only, so same-size changes to images/fonts/binaries are not detected. Dependency impact describes possible affected source pages, not a proven visitor failure. Line-number shifts alone do not create new incidents.

Reports always show their deployment ID. A report on an older release remains historical evidence. Resolved findings are confirmed only when both inspections have complete bounded coverage. The first report, or a release whose baseline was pruned, has no comparison. Keep an exported JSON report if you need longer retention.

Protect important pages#

Expand Automation, alerts & protected pages. Enter a local path such as /contact and required text such as Get in touch. Guardian checks that the source page exists and contains that text outside scripts and styles. Up to 20 pages can be protected. This is useful for keeping important content from disappearing during an update, but it does not prove the text is visually displayed, a link works, or a form delivers. Do not enter secrets. Save a check, then run Guardian or publish a release to evaluate it.

Automatic checks and alerts#

Automatic checks are on by default and run through the existing job worker after publication. Turn them off in the project if you prefer manual checks. They do not block publication, take websites offline, or automatically roll back changes. After a real rollback, Guardian creates a fresh automatic report; repeating a no-op rollback does not schedule another check. A failed job retries up to five attempts using the normal queue backoff.

Email alerts are off by default. Opt in to receive a generic dashboard link when new errors are found for the current release. At most one alert job per project per hour is scheduled. The service uses the operator's existing SMTP configuration. Messages contain no finding text, customer filenames, or detected secrets. Delivery is at least once: retry after SMTP acceptance can duplicate an email with the same Message-ID. SMTP acceptance does not guarantee inbox delivery. Disabling alerts, deleting the project, or changing to another deployment prevents stale queued alerts from sending.

History and export#

The newest 20 reports per project are retained, with bounded report size. Use Saved reports and Previous/Next reports to review them. Export JSON downloads a private authenticated report. Reports survive deletion of old deployments but are deleted with the project/account. Full operator PostgreSQL backups include Guardian; customer file/data snapshots do not include Guardian settings or history. History, settings, and exports are owner-only. The dashboard also shows queued/failed alert status, local development previews, and SMTP acceptance; acceptance does not confirm inbox delivery.

Coverage limits#

A check reads at most 200 HTML pages and 200 CSS/JS assets, 2 MB per text file, and 8 MB of text in total. Each HTML/CSS pass examines bounded references/tokens and reports keep at most 100 findings. Reaching a scan, dependency, or report-size limit marks coverage incomplete. Report evidence is capped near 512 KB and history at 20 reports. Error findings take priority over recommendations when the finding cap is reached. Text must be UTF-8.

Absolute links to the assigned site hostname or currently verified custom domains are checked locally without network requests. Other absolute URLs, inline CSS, data-URL srcset, dynamic JavaScript behavior, real browser rendering, form submissions, login/checkout journeys, uptime, DNS, and TLS are outside this version's coverage. No static errors found is not a health, security, accessibility, or delivery guarantee. Browser journeys require a separately isolated runner and are not available yet.

Management API#

POST /api/websites/{site_id}/guardian/check runs and saves a manual check. GET/PATCH /api/websites/{site_id}/guardian/settings reads or changes automatic, emailAlerts, and protectedPages (a list of {path,text}). GET /api/websites/{site_id}/guardian/reports lists history with page and limit; GET /api/websites/{site_id}/guardian/reports/{run_id} reads a report; append /export to download JSON. Mutations require a customer session and X-CSRF-Token from /api/auth/csrf. Customer website visitor credentials do not authorize these management endpoints.