From f27ec770fce9e3f4f79808f5d2ad764a60057873 Mon Sep 17 00:00:00 2001 From: CLU Date: Fri, 30 Oct 2026 00:31:21 -0500 Subject: [PATCH] fix(signal): the uninstall does not uninstall Observed on the operator's machine 2026-10-30 while reinstalling to put the app to use. Four months after the package was purged, a fresh install found ~/.config/Signal/sql/db.sqlite (54,214,656 bytes, mtime 2026-06-21), tried to open it, and aborted before the linking screen: MainSQL: sqlite(SQLITE_NOTADB): file is not a database in PRAGMA journal_mode = WAL MainSQL: migrateDatabase: Migration without cipher change failed sql.initialize was unsuccessful; returning early The SQLCipher key in config.json no longer resolved. The UI named nothing and offered only 'Delete data and restart', which discards the history. Moving the config directory aside fixes it; nothing in the product says so. Recorded as a medium finding, status open. The score does not move: 76.4 / B. local_data_exposure was already 5 for exactly this behaviour, and a finding is evidence, not a point. What changes is that the number now has a receipt instead of a rationale. Artifact: Servetus/00-Artifacts/2026/10-Oct/30/clu-signal-startup-failure/ main.log.excerpt - the failing run, verbatim 00-provenance.txt - package version, file sizes, sha256 of the retained db Retained state moved to ~/Signal-backup-2026-10-30-0026, not deleted. --- packages/core/db/render.mjs | 32 +++++++++++++-- .../core/db/seed/0005-signal-uninstall.sql | 34 +++++++++++++++ packages/core/src/data/generated/catalog.json | 41 +++++++++++-------- packages/core/src/data/generated/catalog.ts | 41 +++++++++++-------- packages/web/public/badges.html | 32 +++++++++++++-- packages/web/public/catalog.json | 41 +++++++++++-------- packages/web/public/index.html | 32 +++++++++++++-- packages/web/public/method.html | 32 +++++++++++++-- packages/web/public/oath.json | 6 +-- .../web/public/report/signal-desktop.html | 36 ++++++++++++++-- 10 files changed, 261 insertions(+), 66 deletions(-) create mode 100644 packages/core/db/seed/0005-signal-uninstall.sql diff --git a/packages/core/db/render.mjs b/packages/core/db/render.mjs index 1e57241..a501a55 100644 --- a/packages/core/db/render.mjs +++ b/packages/core/db/render.mjs @@ -59,7 +59,12 @@ a:hover{border-bottom-color:var(--amber)} .note{color:var(--dim);font-size:.8rem;line-height:1.65;margin:1rem 0 0} pre{overflow-x:auto;background:#111413;border:1px solid var(--rule);padding:1rem;font-size:.76rem;line-height:1.5;color:var(--bone)} code{font-size:.86em;color:var(--bone)} -footer{margin-top:5rem;padding-top:1.5rem;border-top:1px solid var(--rule);color:var(--dim);font-size:.75rem} +footer{margin-top:4rem;padding:1.25rem 0 2rem;border-top:1px dashed var(--rule);color:var(--dim);font-size:.78rem} +footer a{color:var(--dim);border-bottom:1px solid var(--rule)} +footer a:hover{color:var(--amber);border-color:var(--amber)} +.frow{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;margin-bottom:.6rem} +.frow>div{flex:1 1 22rem;min-width:16rem} +.fmeta{font-size:.72rem;letter-spacing:.02em} `; const NAV = `