Skip to content

Strip upstream integrations, vendor Docker deploy, rebrand to Zipherscan - #6

Merged
ronkq merged 33 commits into
zsa1from
zipherscan-init
Sep 25, 2026
Merged

ronkq merged 33 commits into
zsa1from
zipherscan-init

Conversation

@ronkq

@ronkq ronkq commented Sep 17, 2026

Copy link
Copy Markdown
Collaborator
  • Remove upstream analytics, donations, Telegram signals, and CDN calls
  • Drop Redis; vendor the deployment Dockerfiles instead
  • Clean up remaining signals references left over from zsa1
  • Document running locally against the QED-it ZSA1_1 node
  • Rename repo references from Cipherscan to Zipherscan; add Zipherscan section to README

@ronkq
ronkq requested a review from PaulLaux September 17, 2026 17:35
@ronkq ronkq self-assigned this Sep 17, 2026
@ronkq
ronkq changed the base branch from main to zsa1 September 22, 2026 09:10

@PaulLaux PaulLaux left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added some comments. Plus:

Please cleanup the main readme.md - we don't need to preserve nothing that is not relevant to ZSA:

  • Some things need to change to Zipherscan. some things need to stay Cipherscan. Some things need to go away completely. Keep only the absolute essentials.

Also, We don't need two sets of dockerfile and two sets of docker-compose. Only properly-named files with what we need.

Also, npm run dev should get info from https://rpc.test-zsa.org not from public zebra node.

Did not tested api localy. will be waiting for the docs/run-locally.md file.

Comment thread README.md Outdated

**What differs from upstream**

- Targets QED-it's ZSA1_1 testnet node (`https://rpc.test-zsa.org`) rather than the public Zcash networks. See [docs/run-locally.md](docs/run-locally.md) for running it and for connecting to that node or your own ZSA zebrad.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see run-locally.md

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, was missed because of .gitignore
Added now

Comment thread app/layout.tsx Outdated
Comment on lines +39 to +40
title: 'ZipherScan Testnet - Zcash Testnet Explorer for TAZ',
description: 'Explore the Zcash testnet with ZipherScan. Search TAZ blocks, transactions, and addresses, monitor pending transactions, and inspect testnet network activity.',

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

".. For ZSA" + adjust description

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

} from './solar';

const WORLD_TOPO_URL = 'https://cdn.jsdelivr.net/npm/world-atlas@2/land-110m.json';
const WORLD_TOPO_URL = '/land-110m.json';

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok nice

Comment thread README.md Outdated
**What differs from upstream**

- Targets QED-it's ZSA1_1 testnet node (`https://rpc.test-zsa.org`) rather than the public Zcash networks. See [docs/run-locally.md](docs/run-locally.md) for running it and for connecting to that node or your own ZSA zebrad.
- Upstream analytics, donation UI, Telegram signals and third-party CDN calls are removed. Redis is optional.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see redis removed completely from package.json. Is it stil optional?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correct, removed completly and not optional

Comment thread package.json
Comment thread docker-compose.qedit.yml Outdated
Comment on lines +14 to +15
lightwalletd:
profiles: [local-node]

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need lightwalletd or not?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, removed

Comment thread ECR.md Outdated
`NEXT_PUBLIC_*` values are compiled into the browser bundle, so the API URL is a
**build arg** — setting it at runtime in compose has no effect. Without it the
bundle falls back to `DEFAULT_API_URLS` in `lib/api-config.ts`, which points at
upstream's `api.testnet.cipherscan.app`.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The default should be test-zsa.org. Nothing should default to regular non zsa version.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed

Comment thread ECR.md Outdated
## api

Build from the **repository root**, not `server/api` — the Dockerfile copies
`server/lib/` and `server/signals/`, which are outside that directory. The

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You removed server/signals/ from this branch

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated the line, fixed

Comment thread package.json
dev-zipherscan-indexer is built from Kenbak/cipherscan-rust, not from this
repo, and tagged zsa-<commit>. Add it to the image table and describe what
the image contains, since the Dockerfile is not committed anywhere.
@QED-it QED-it deleted a comment from seniakalma Sep 23, 2026
@ronkq

ronkq commented Sep 23, 2026

Copy link
Copy Markdown
Collaborator Author

Added some comments. Plus:

Please cleanup the main readme.md - we don't need to preserve nothing that is not relevant to ZSA:

  • Some things need to change to Zipherscan. some things need to stay Cipherscan. Some things need to go away completely. Keep only the absolute essentials.

Also, We don't need two sets of dockerfile and two sets of docker-compose. Only properly-named files with what we need.

Also, npm run dev should get info from https://rpc.test-zsa.org not from public zebra node.

Did not tested api localy. will be waiting for the docs/run-locally.md file.

Rewrote and kept the essentials of the readme.md
Removed the other ones, left one compose and dockerfile
Updated the npm source
And added the run-locally.md file

The API rejected https://cipherscan.test-zsa.org in both its CORS and
WebSocket allowlists, so browser POSTs through the /api proxy got a 500
and the WebSocket a 403. The WebSocket also connected to "/", which Next
serves as a page and closes on upgrade (502); /api/ws goes through the
proxy. CORS_ORIGINS now extends both allowlists, and ECR.md builds web
with the site origin as NEXT_PUBLIC_API_URL, matching the live image.

@PaulLaux PaulLaux left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New issues:

The live site's own origin is blocked by the API:
server/api/server.js:256 (CORS allowlist) and server/api/server.js:309 (WebSocket allowlist).
the PR moves testnet to https://cipherscan.test-zsa.org for the site and https://cipherscan-api.test-zsa.org for the API. Both allowlists still name only upstream's hosts. We get 500 (CORS rejection). All live pages are currentl dead. See #7 for a fix - Merge/adopt.

This one is critical. please rebuild with the updated docker build config and redeploy both api and web after this fix.

Also, removing Redis breaks the API test suite in CI: server/api/test/list-cache.redis.test.js:26 still does require('redis'). Delete the test and remove the Redis service and TEST_REDIS_URL from ci.yml. Then point the CI triggers at zsa1.

Think that's the minimum

@ronkq ronkq closed this Sep 24, 2026
@ronkq ronkq reopened this Sep 24, 2026
@ronkq

ronkq commented Sep 24, 2026

Copy link
Copy Markdown
Collaborator Author

New issues:

The live site's own origin is blocked by the API: server/api/server.js:256 (CORS allowlist) and server/api/server.js:309 (WebSocket allowlist). the PR moves testnet to https://cipherscan.test-zsa.org for the site and https://cipherscan-api.test-zsa.org for the API. Both allowlists still name only upstream's hosts. We get 500 (CORS rejection). All live pages are currentl dead. See #7 for a fix - Merge/adopt.

This one is critical. please rebuild with the updated docker build config and redeploy both api and web after this fix.

Also, removing Redis breaks the API test suite in CI: server/api/test/list-cache.redis.test.js:26 still does require('redis'). Delete the test and remove the Redis service and TEST_REDIS_URL from ci.yml. Then point the CI triggers at zsa1.

Think that's the minimum

Merged #7, rebuilt and redeployed api and web (hash 669a97b), and the live site works.
Removed the Redis test plus the CI service and TEST_REDIS_URL, and pointed CI at zsa1.
CI passes when run manually and I've enabled the Github actions (it's a fork) for it to also run on push/PR.

PaulLaux
PaulLaux previously approved these changes Sep 24, 2026

@PaulLaux PaulLaux left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks better, Please update pr description and fix ci before merge.

@ronkq
ronkq merged commit daeb021 into zsa1 Sep 25, 2026
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants