game-views ATLAS: mirror SCROLL log styling (strikethrough) + honour the redact filter

The merged ATLAS feed now reads its provenance rows the way SCROLL does:

- Struck (retracted/redacted) logs carry the strikethrough — buildAtlasFeed captures the source .drama-event-body.struck state and renderAtlasRow re-applies it as .atlas-row-body.struck (styled to match .drama-event-body.struck).
- A log hidden by the SCROLL Frame/Redact gear filter (display:none) is skipped in the ATLAS merge too — buildAtlasFeed checks getComputedStyle(ev).display, so unchecking Redact on SCROLL keeps those rows out of ATLAS.
- Also lays the source-toggle seam: atlasSources() reads the (forthcoming) ATLAS gear's view-checkboxes (scroll→provenance, post→post), defaulting to both when absent.

Verified: Jasmine renderAtlasRow struck spec + two FTs (struck row shows struck in ATLAS; redact-filtered rows absent from ATLAS) + the existing atlas aggregate FT, all green.

[[project-room-game-views-carousel]]
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Disco DeDisco
2026-06-02 15:19:23 -04:00
parent ced324081f
commit 9754f6a54c
5 changed files with 119 additions and 21 deletions

View File

@@ -247,7 +247,14 @@ html.sea-open #id_aperture_fill {
padding-inline-start: 0.5rem;
.atlas-row-who { font-weight: bold; color: rgba(var(--quaUser), 1); flex-shrink: 0; }
.atlas-row-body { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.atlas-row-body {
flex: 1;
min-width: 0;
overflow-wrap: anywhere;
// Struck (retracted/redacted) provenance rows read the same
// strikethrough they do in SCROLL (.drama-event-body.struck).
&.struck { text-decoration: line-through; opacity: 0.5; }
}
// The merged rows carry the ORIGINAL <time> from their source row
// (.drama-event-time from SCROLL, .post-line-time from POST). Those
// source rules are scoped to the feed/thread, so restate the shared