Rename "clean" to "dedupe" in the case studies folder#5
Merged
nikosbosse merged 1 commit intomainfrom Jan 15, 2026
Merged
Conversation
hnykda
pushed a commit
that referenced
this pull request
Jan 22, 2026
RafaelPo
added a commit
that referenced
this pull request
Feb 24, 2026
- Make load_refresh_token atomic via GETDEL, re-store on client mismatch - Rename MAX_CSV_CACHE_BYTES to MAX_CSV_CACHE_CHARS (len() counts chars) - Expose revocation_ttl as property, stop crossing class boundary - Use lazy %s logger formatting in app.py startup error - Add HEALTHCHECK to Dockerfile, remove redundant STOPSIGNAL Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
RafaelPo
added a commit
that referenced
this pull request
Feb 24, 2026
* Harden MCP server: auth, CORS, Redis, widgets, and review fixes Security & auth hardening: - Auth code expiration defense-in-depth check after deserialization - Atomic auth code consumption via GETDEL (re-store on client mismatch) - Revocation TTL derived from token remaining lifetime + 60s buffer - SameSite=strict on auth state cookies - Supabase response validation via Pydantic model_validate - Remove exc_info=True from JWT failure debug log Infrastructure improvements: - CORS: restrict origin fallback to localhost (was "*"), add Allow-Headers - Redis: replace @lru_cache singleton with explicit getter/setter for test safety - Prefix-sum optimization for page budget clamping (was O(n log n) JSON serialization) - Exception chaining in UUID validation (raise from exc) - Add missing esc() XSS helper to session widget - Add MCP_SERVER_URL to .env.example - Add .dockerignore, Sentinel support in docker-compose - Add real Redis integration tests for HTTP result flow - Rate limiter: handle None client IP, proxy header trust gating Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * Fix second-round review findings (#1–#5) - Make load_refresh_token atomic via GETDEL, re-store on client mismatch - Rename MAX_CSV_CACHE_BYTES to MAX_CSV_CACHE_CHARS (len() counts chars) - Expose revocation_ttl as property, stop crossing class boundary - Use lazy %s logger formatting in app.py startup error - Add HEALTHCHECK to Dockerfile, remove redundant STOPSIGNAL Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * Move inline data limits to Settings for configurability Move MAX_INLINE_ROWS, MAX_INLINE_DATA_BYTES, MAX_SCHEMA_PROPERTIES from module-level constants in models.py to Settings fields (max_inline_rows, max_inline_data_bytes, max_schema_properties) so they can be overridden via environment variables. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * Read JWT algorithm from JWKS key, reuse conftest Redis in integration tests - _decode_jwt reads alg from signing_key._jwk_data instead of hardcoding RS256, fixing ES256 verification for Supabase projects using ECDSA - Falls back to RS256 when _jwk_data is absent (backwards compatible) - test_http_real.py now uses the shared fake_redis fixture from conftest instead of requiring a manually started Redis on port 6379 - Revert SameSite=strict back to lax on auth cookies (strict breaks the OAuth callback redirect flow from Supabase) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * Add toast confirmation on select all / deselect all Show "Selected all N rows" or "Selection cleared" toast when clicking the select-all button, matching the existing toast pattern used by copy and cell-copy actions. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.