Backend, scripts, docs and their tests take main's newer code where both
sides changed the same lines (the shared blob cache, GitHubStream and
markdown fixes landed on main after the Go migration branch was cut).
The Dockerfile keeps the Go build from the migration, plus main's
owner-alert-protocol label; .gitignore keeps both sides' entries.
Frontend keeps the redesign and folds in main's features: Stripe billing
in the New anonymization submit bar, GitHub access repair, redaction
syntax help, the preview expand toggle, configurable redaction mask,
folder counts, reviewer-route header rules, link expiry (now in the
viewer's snapshot details) and the explorer error card. main's
narrow-only wrap logic is dropped because the redesign wraps on desktop
and scrolls sideways on phones.
Tests: 1534 passing with SESSION_SECRET set (as in CI). Three main tests
were updated for the agreed viewer design (no site header in the viewer,
no repository-wide file count).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Viewer: full-height app bar with a Help menu, search + ZIP sidebar, one
toolbar for README and code, reading mode with a scroll-tracking outline,
docked find for Markdown and code, and redaction slots (a blank stone slot
holding the term number) in prose, headings, code, the tree and the path.
Landing and FAQ: live redaction demo, serif display headings, teal accent.
Author screens: My work table with copy/open/edit actions, a usage meter,
a single-container New anonymization flow with a sticky submit bar, themed
form controls, and consistent GitHub connection cards.
Admin: underline tabs, severity-first errors chart and list, error tiles
that filter (older pages load until matches appear), queue and overview
health states, and shared toolbar heights and borders.
Fixes: guarded localStorage access, failed README images render a
placeholder, phone hover states no longer stick, and UI tests updated for
the new copy and markup.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- The mask from /api/options is stored once loaded; code markers and
rendered Markdown are refreshed when it arrives instead of keeping the
XXXX default.
- Mermaid sources are left untouched so diagrams still parse.
- Fenced code blocks are marked from a Prism complete hook, after Prism
has rewritten their HTML.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Explorer: redacted terms are highlighted in Markdown and code, the
sidebar shows when the link expires, "Download repository" is the one
primary action, and signed-out reviewers get a header without Sign in
or the source-code link.
- Status: a ready anonymization leads with a copyable share link; the
support links sit flat inside their section.
- One primary colour (accent) for actions and progress; mono is kept for
IDs, hashes and paths; settings are plain sections instead of cards.
- Font sizes snap to one scale (10-40px); rem values keep following the
reader's browser font size.
- Ko-fi button uses a dark surface in dark mode instead of a white pill.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- Explorer: 13px code, page-coloured dark editor, padded Markdown with a
readable width, full repository ID on hover, sidebar footer kept clear
of the floating Ko-fi button.
- Explorer errors render as a card with links home and to the FAQ; the
empty action bar and Raw/Download buttons are hidden.
- Unknown error codes show the generic message instead of the raw
ERRORS.<code> key.
- All app pages share one content column; New anonymization starts at
the top instead of floating mid-screen.
- Status page: spaced action buttons, aligned status pill, no second
Ko-fi embed under the support cards.
- Claim placeholders; consistent notebook option on new conferences.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>