chore: demote Whale Watcher to public-safe fixture-only surface - #7
Merged
Merged
Conversation
Align walletwall-whale-watcher with the other public surface repos (stable-seer, holder-wall, coinstellation): publish the product surface, keep the implementation as the private moat. Removed (now private-only): - api/ backend, server.js, scripts/, vercel.json — live Dune proxy, rate-limit/quota/caching strategy, execution guards - src/ heuristic + signal engines, scoring/quantum-readiness logic, proof-of-readiness system, 9 live /api/* fetch paths - README Dune query column schema, .env.example provider matrix, SECURITY_AUDIT_REPORT.md Added (fixture-only surface, mirrors sibling repos): - React 18 + Vite 6 surface on a synthetic whale-watcher.fixture.json (KPIs, type filter, watched-wallet leaderboard, 12-week cadence chart) - docs/PUBLIC_SAFE_SCOPE.md, SURFACE_OVERVIEW.md, DATA_FIXTURES.md - tests/no-secrets, public-safety, and surface tests (26 passing) - demo-safe README/SECURITY/AGENTS/CONTRIBUTING; CI lint step dropped No secrets, Dune query IDs, scoring weights, or backend remain. The real implementation stays in the private walletwall app, which already serves whales.walletwall.org. Co-Authored-By: Claude Opus 4.8 <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.
Why
Aligns
walletwall-whale-watcherwith the strategy already used bywalletwall-stable-seer,walletwall-holder-wall, andwalletwall-coinstellation: open-source the product surface to build trust, keep the implementation private as the moat.Today this repo is the odd one out — it published a near-verbatim copy of the private backend (live Dune proxy, scoring/heuristic engines, quota/caching strategy) plus a README documenting the Dune query column schema. No secrets or query IDs leaked, but it handed competitors the full reconstruction recipe. This PR reduces it to a UI surface + synthetic fixture, exactly like the sibling repos.
Removed (now private-only)
api/backend,server.js,scripts/,vercel.json— live Dune proxy, rate-limit/quota/caching strategy, execution guardssrc/heuristic + signal engines, scoring / quantum-readiness logic, proof-of-readiness system, 9 live/api/*fetch paths.env.exampleprovider matrix,SECURITY_AUDIT_REPORT.mdAdded (fixture-only surface, mirrors sibling repos)
src/data/whale-watcher.fixture.json— KPIs, entity-type filter, watched-wallet leaderboard, per-wallet detail, 12-week activity cadence chartdocs/PUBLIC_SAFE_SCOPE.md,SURFACE_OVERVIEW.md,DATA_FIXTURES.mdtests/no-secrets.test.js,public-safety.test.jsx,whale-watcher.test.jsx— 26 passingREADME/SECURITY/AGENTS/CONTRIBUTING; CI lint step dropped (no lint script in fixture-only scope)Verification
npm run test→ 26/26 passing (no-secrets scan, disclaimer/read-only assertions, surface behavior)npm run build→ clean (32 modules)DUNE_QUERY*,queryId,SCORE_WEIGHT*,process.env,/api/, real addresses, or provider hosts remain (only the guard docs/tests that list banned patterns)Note for maintainer
The real backend remains recoverable in this repo's git history (it was public 2026-06-20 → now). If that history is itself considered sensitive, a history scrub / repo re-init is a separate follow-up — flag if you want it.
🤖 Generated with Claude Code