Restore user/group badges on DB-loaded result cards
The card badge only rendered when f.account_name was set, and the group (role) badge was nested inside that same check. But save_item never persisted account_name — only account_id (a GUID) and user_role. Live SSE cards carried account_name so badges showed during a scan; now that the grid loads finalized scans from the DB, the gap is exposed and both badges vanish for earlier scans. - Persist account_name (migration 11 + save_item) so future scans show the user badge. Both M365 and Google cards already carry it. - _accountPill() in results.js drives the group badge off user_role alone (shows for legacy rows) and resolves a best-effort user label: account_name → S._allUsers (id/email) → email-style account_id → omit. Both card layouts share the one helper. Legacy rows still lack account_name (never captured), but now show the group badge and a resolved/email user label where possible. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
1 parent
29d9168643
commit
b661a94f98
5 files changed
+57
-4
No files matched your search
@@ -313,3 +313,23 @@ class TestOrphanScanRecovery:
|
||||
self._start_unfinished_scan(tmp_db, "orphan-1")
|
||||
assert tmp_db.finalize_orphan_scans() == 1
|
||||
assert tmp_db.finalize_orphan_scans() == 0
|
||||
|
||||
|
||||
# ─────────────────────────────────────────────────────────────────────────────
|
||||
# account_name persistence (user/group badge data)
|
||||
# ─────────────────────────────────────────────────────────────────────────────
|
||||
|
||||
class TestAccountNamePersistence:
|
||||
|
||||
def test_account_name_round_trips(self, tmp_db):
|
||||
sid = tmp_db.begin_scan({"sources": ["email"], "user_ids": []})
|
||||
tmp_db.save_item(sid, _make_card(item_id="an-1")) # account_name="Test User"
|
||||
tmp_db.finish_scan(sid, total_scanned=1)
|
||||
|
||||
row = [r for r in tmp_db.get_open_items() if r["id"] == "an-1"][0]
|
||||
assert row.get("account_name") == "Test User"
|
||||
|
||||
def test_account_name_column_exists(self, tmp_db):
|
||||
cols = [r[1] for r in tmp_db._connect().execute(
|
||||
"PRAGMA table_info(flagged_items)").fetchall()]
|
||||
assert "account_name" in cols
|
||||
Reference in new issue
Block a user