Codex
0abbe34aed
fix: preserve streamer error semantics for cache probes
2026-11-10 12:55:55 +00:00
Codex
07458f536a
fix: preserve cache fallback and stream failures during access checks
2026-11-10 12:51:09 +00:00
Codex
4fc3c2e042
perf: serve cached OAuth snapshots without GitHub calls
2026-11-10 12:03:52 +00:00
Codex
5267599254
perf: reduce GitHub quota spent validating credentials
2026-11-10 11:36:55 +00:00
Codex
7c7caa845c
fix: prevent folder downloads from exposing GitHub metadata
2026-11-09 10:45:24 +00:00
Codex
ac28c64c6c
fix: bound ZIP directory memory for slow downloads
2026-11-09 08:54:26 +00:00
Codex
6593319c87
fix: persist login sessions across browser restarts
2026-11-08 20:32:03 +00:00
Thomas Durieux and Claude Opus 5.5
c685d833ab
Merge origin/main into feat/ui-redesign
...
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 >
2026-11-08 14:07:33 +00:00
Thomas Durieux and Claude Opus 5.5
579ce970c7
feat(ui): redesign the viewer, landing, author and admin screens
...
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 >
2026-11-08 10:52:10 +00:00
Thomas Durieux
6df74e80ac
fix: keep repositories readable with invalid submodule commits
2026-11-06 12:01:25 +00:00
Thomas Durieux
76e5804404
feat: migrate backend to Go with streaming and provider support
2026-11-04 14:21:36 +00:00
Thomas Durieux
823314b5c2
fix: hide donation links for customers with paid access
2026-11-04 13:26:45 +00:00
Thomas Durieux
7ffbfd09d7
fix: count dollar-prefixed directories as literal paths
2026-11-03 15:09:10 +00:00
Thomas Durieux
d4b9fd85e7
fix: isolate website limits and scope explorer counts
2026-11-03 15:03:23 +00:00
Thomas Durieux
c511e9faff
test: exercise streaming traversal in nested tree regression
2026-11-03 08:41:48 +00:00
Thomas Durieux
c32125fc2e
fix: coordinate deployments when shared cache writers are active
2026-11-03 08:33:12 +00:00
Thomas Durieux
860169f27b
merge: preserve billing admission with bounded tree preparation
2026-11-03 08:33:12 +00:00
Thomas Durieux
70735bd80c
fix: enforce resolved storage quotas across shared cache paths
2026-11-03 08:26:43 +00:00
Thomas Durieux
e71e6b6389
merge: reconcile paid hosting with shared cache and main
2026-11-03 08:26:43 +00:00
Thomas Durieux
97e5b50cf0
merge: integrate main after progress fence and cache merges
2026-11-03 08:25:43 +00:00
Thomas Durieux
88cd1b4cdb
Merge pull request #915 from tdurieux/feat/shared-blob-cache
...
perf: deduplicate cached files across projects and track cache reuse
2026-11-03 09:23:07 +01:00
Thomas Durieux
110f5a5d3b
Merge pull request #917 from tdurieux/fix/anonymization-timeout-retries
...
perf: skip unmatched regex scans in large anonymized files
2026-11-03 09:23:04 +01:00
Thomas Durieux
bb366b370b
fix: handle settings saves before repository cleanup
2026-11-02 22:16:16 +00:00
Thomas Durieux
abfe153cdc
fix: preserve saved snapshot during source replacement
2026-11-02 22:10:28 +00:00
Thomas Durieux
e96d235cc7
fix: fence tree retirement before lifecycle changes
2026-11-02 22:05:03 +00:00
Thomas Durieux
314d961960
fix: retain concurrently published path indexes for cleanup
2026-11-02 21:57:33 +00:00
Thomas Durieux
af23ad9eb5
fix: bound large repository tree memory and cleanup
2026-11-02 21:57:33 +00:00
Thomas Durieux
19b1d5b546
test: declare timer used by progress race regression
2026-11-02 21:55:05 +00:00
Thomas Durieux
807e38dfc7
fix: preserve publication fences during download progress
2026-11-02 21:52:30 +00:00
Thomas Durieux
3c89d3c939
perf: skip unmatched regex scans in large anonymized files
2026-11-02 21:48:40 +00:00
Thomas Durieux
47a436ee4e
fix: admit dated repositories before offering checkout
2026-11-02 21:46:26 +00:00
Thomas Durieux
4dc4454459
fix: protect reactivation claims and retain historical purchase prices
2026-11-02 21:39:17 +00:00
Thomas Durieux
afd7a8ff3b
fix: retain replacement reservations and bound expiration extensions
2026-11-02 21:27:11 +00:00
Thomas Durieux
d7a5243054
fix: admit replacement sources and account for resolved storage
2026-11-02 21:18:43 +00:00
Thomas Durieux
ded6f905fd
merge: reconcile paid hosting with latest main
2026-11-02 21:12:29 +00:00
Thomas Durieux
036eddfa0e
fix: preserve paid hosting deadlines, quotas and review snapshots
2026-11-02 21:03:29 +00:00
Thomas Durieux
410863d253
feat: add paid author and conference hosting with Stripe
2026-11-02 20:49:03 +00:00
Thomas Durieux
f39b83c0da
fix(cache): retry contended fill lease renewals
2026-11-02 14:06:27 +00:00
Thomas Durieux
074a9af315
fix: fence shared transformations and cancel abandoned cache work
2026-11-02 13:58:25 +00:00
Thomas Durieux
d851fdb381
fix: coordinate cache disk reservations and tolerate reader renewal contention
2026-11-02 13:42:10 +00:00
Thomas Durieux
4b8635bd53
fix: preserve shared cache response semantics and recover from contention
2026-11-02 13:03:07 +00:00
Thomas Durieux
dd668c1f4b
perf: share verified blobs and expose bounded cache metrics
2026-11-02 12:14:54 +00:00
Thomas Durieux
d0b217a448
feat: include public GitHub submodules in shared repositories ( #914 )
...
* feat: include public GitHub submodules in shared repositories
* fix: preserve submodule access across token and document contexts
2026-11-02 09:00:02 +01:00
Thomas Durieux
6099356e0e
feat: add scoped repository maintenance access for LLM clients ( #913 )
...
* feat: add scoped repository maintenance access for LLM clients
* fix: translate maintenance API errors
2026-11-02 07:18:04 +00:00
Thomas Durieux
6cf5445972
fix: fill gaps in GitHub Markdown rendering ( #912 )
...
* fix: fill gaps in GitHub Markdown rendering
* fix: harden Markdown dependencies and address review findings
2026-11-02 07:56:32 +01:00
Thomas Durieux
075c3a4622
Suggest existing configurations for duplicate repository URLs ( #911 )
2026-11-02 06:31:57 +00:00
Thomas Durieux
b09ef0e5b0
fix: persist pull request conferences and reconcile runtime tests
2026-11-02 05:55:47 +00:00
Thomas Durieux
a301c46a94
fix: harden repository content and improve access recovery
...
Sandbox executable MIME aliases, enforce strict Mermaid rendering, and add security regression coverage. Upgrade vulnerable dependencies with archive compatibility checks and Node 22/24 CI. Make repository restoration atomic and provide actionable viewer errors with retry controls.
2026-11-02 05:50:34 +00:00
Thomas Durieux
772e40debd
fix: retain recipient suppression after access recovery ( #897 )
...
* fix: retain recipient suppression after access recovery
* fix: migrate cold starts and fence resource deactivation
* docs: stop every writer before alert reconciliation
2026-10-14 19:23:12 +01:00
Thomas Durieux
445a479339
fix: deduplicate owner access alerts per recipient ( #896 )
...
* fix: prevent duplicate access alerts to the same recipient
* fix: address recipient alert recovery review findings
* fix: reconcile unsent alerts and wait for startup migration
* fix: preserve legacy recipient alerts through upgrades
* fix: reconcile alert results and legacy recovery races
* fix: fence dispatch and clean cancelled alert metadata
* fix: fence alert preparation and retain in-flight recovery
* fix: atomically commit alert dispatch and retry deferred recovery
* fix: keep recovery lookups from blocking upstream file reads
2026-10-13 13:55:10 +01:00