Automatic compatibility reports

Disclosure version 2 ยท Clarified September 28, 2026

We record your agreement time, server receipt time, extension and disclosure versions, and a hashed random installation support code. Report receipts use that same key, not your email or payment identifier. Share the code from Settings with support to find reports from your installation. Once shared, those reports can be linked to you through your support conversation; these records are pseudonymous, not anonymous. Agreement events and report links expire after 14 days. An agreement event does not prove a report was received.

After you explicitly agree in the extension popup and server collection is enabled for your released version, CanvasNinja automatically sends limited Canvas page structure and compatibility results to its own backend to diagnose and test extension behavior. The temporary campaign runs September 26 through October 10, 2026 at 00:00 UTC. Until that fixed deadline, feature activation is paused without agreement; your login and purchases remain intact. After the deadline diagnostics is optional, and feature access follows your existing settings and entitlement. Expiry never grants reporting consent. A delayed Store release shortens this period rather than extending the deadline.

Reports contain allowed element categories, reviewed fixed Canvas classes and markers, control types, synthetic question/answer ID families, label and ARIA references, control-group relationships, extension version, toolbar status and approximate rendering time. Unknown selectors are counted, not copied. Coverage records identify omitted quiz containers, unresolved links and frames whose contents were not captured. Original dynamic IDs and input names are replaced locally. Reports do not contain raw HTML, question text, answer choices, entered responses, selected answers, grades, personal names, page URLs, course identifiers, cookies, or tokens.

Up to three reports are attempted per installation each day. The server also enforces an account-level limit. Authentication is used to prevent abuse; the report payload is not attached to your email or payment account. A keyed account digest is retained separately for quotas and deduplication. Connection metadata may still be processed by our hosting provider; these reports are not claimed to be fully anonymous.

Reports expire 14 days after first receipt. Daily quota records expire after 14 days; deduplication digests expire after 90 days. Newly created report-derived fixtures remove their stored structure after a saved test run. Untested fixtures, historical reviewed fixtures and synthetic test-result summaries remain until deleted. Reconstructed pages use developer-owned content and do not reproduce Canvas scripts, styling, network services or institutional logging. Reports are used only to maintain extension compatibility, not for advertising or sale.

Withdraw agreement in the popup to stop new collection and cancel pending requests. Already received reports cannot be recalled by cancelling a request and expire according to the retention policy. Refresh open Canvas pages when safe to finish deactivating scripts already loaded.

AI Answers is separate: using that feature sends question content to the configured AI service. This compatibility disclosure does not claim that AI Answers processes no question content.

Contact hello@canvasninja.app about privacy or deletion. The use of collected data is subject to the Chrome Web Store User Data Policy, including Limited Use restrictions.

CanvasNinja privacy policy