Skip to content

docs: point mining guide at Quantus mainnet - #17

Merged
illuzen merged 2 commits into
mainfrom
illuzen/mining-mainnet
Sep 9, 2026
Merged

illuzen merged 2 commits into
mainfrom
illuzen/mining-mainnet

Conversation

@illuzen

@illuzen illuzen commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Switch the public mining guide, installer, and mining skill from Planck (--chain planck, chains/planck/) to Quantus mainnet (--chain mainnet, chains/mainnet/, QTC).
  • Document the Planck → mainnet migration: node v1.0.1+, new data directory, keep the same wormhole inner hash.
  • Warn existing mining.conf users still set to CHAIN=planck, and align QPoW / miner-protocol examples with the live chain.

Test plan

  • Open /guides/mining and confirm the intro, migration section, node command, and log paths all say mainnet.
  • Run ./quantus-mining.sh setup on a clean dir and confirm mining.conf writes CHAIN=mainnet.
  • Point an existing Planck mining.conf at the script and confirm it warns to switch to mainnet.
  • Confirm Copy Context still includes the updated mining skill (--chain mainnet, QTC, v1.0.1+).

Made with Cursor

Planck-era --chain flags and data paths were sending new miners to the retired testnet.

Co-authored-by: Cursor <cursoragent@cursor.com>
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Sep 9, 2026

Copy link
Copy Markdown

Deploying docs with  Cloudflare Pages  Cloudflare Pages

Latest commit: ac6c2ed
Status: ✅  Deploy successful!
Preview URL: https://2c246a94.docs-7or.pages.dev
Branch Preview URL: https://illuzen-mining-mainnet.docs-7or.pages.dev

View logs

@illuzen
illuzen requested a review from n13 September 9, 2026 17:11

@n13 n13 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewer model: GPT 5.6 Sol

Request changes: preserve the existing mining reward identity during the Planck-to-mainnet migration.

  • Blocking — docs/guides/mining.md:74: The new migration path tells an existing Planck installer user to change CHAIN and then run setup --force, while the same guide says to keep the existing wormhole inner hash. In static/scripts/quantus-mining.sh:911-964, cmd_setup does not load the existing config and unconditionally calls generate_wormhole_keys before rewriting INNER_HASH and WORMHOLE_ADDRESS. Unless the user happens to re-derive the exact same identity, following line 74 changes the destination for future rewards and may leave the user with a different recovery phrase than intended. Please either make forced binary refresh preserve the existing reward fields (with regression coverage), or document a migration/update path that replaces the binaries without rerunning key setup and explicitly verifies that the original inner hash remains configured.

Validation: reviewed exact base 9a32657a and head 5c5e41d3; git diff --check, bash -n static/scripts/quantus-mining.sh, frozen Bun install, bun run typecheck, and bun run build passed. I also checksum-verified the current v1.0.1 node and v4.1.0 miner release artifacts, confirmed their auth/TLS CLI flags, and confirmed the bundled mainnet chain spec is live QTC with seven bootnodes. Cloudflare Pages is passing.

setup --force was regenerating INNER_HASH, which would send mainnet rewards to a new address.

Co-authored-by: Cursor <cursoragent@cursor.com>
@illuzen
illuzen requested a review from n13 September 9, 2026 17:38
@illuzen
illuzen merged commit 76a0432 into main Sep 9, 2026
1 check passed

@n13 n13 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewer model: GPT 5.6 Sol

Request changes: the documented Planck-to-mainnet installer migration preserves Planck-era binary pins, so it does not install a mainnet-capable node.

  • Blocking — docs/guides/mining.md:74: A config generated by the Planck-era installer contains non-empty NODE_VERSION and MINER_VERSION values (the new regression fixture itself models v0.9.0 / v3.3.1). After config set CHAIN mainnet, setup --force loads that config and load_version_pins / download_binaries (static/scripts/quantus-mining.sh:388-429) deliberately select those stored tags. It therefore re-downloads the old Planck pair instead of the promised v1.0.1+ node, leaving the user unable to join mainnet. Update the migration path to replace both pins with a compatible mainnet pair (or add an explicit update/latest mode), and exercise the real version-selection path in the regression test; scripts/test-quantus-mining.sh:47-51 currently replaces download_binaries wholesale and masks this behavior.

The previous reward-identity blocker is resolved: setup --force now preserves the existing inner hash, wormhole address, node name, and resource settings.

Validation: reviewed exact base 9a32657a and head ac6c2ed6; git diff --check, Bash syntax checks, the checked-in identity-preservation test, TypeScript typecheck, and Docusaurus production build passed. A version-selection regression probe using the real download_binaries flow selected v0.9.0 / v3.3.1 and failed the expected v1.0.1 assertion. Current releases are node v1.0.1 and miner v4.1.0; Cloudflare Pages passed. The PR was merged while this review was in progress.

adamtpang added a commit to adamtpang/docs that referenced this pull request Sep 14, 2026
Main moved the mining guide to mainnet in Quantus-Network#17 and retired Planck. This branch
still pinned the Planck pair (node v0.10.0, miner v4.0.2) and both installers
refused any network but Planck, so as merged they would have installed and
synced a retired chain.

Conflicts in the guide, skill, installer and config example are resolved by
keeping this branch's verified installers and short guide, then carrying main's
mainnet content into them rather than keeping two descriptions of setup:

  - The manifest now pins node v1.0.1 and miner v4.2.0 on mainnet, with every
    URL and SHA-256 taken from GitHub's own release digests. The node's
    Windows digest also matches the release's sha256sums file.
  - Both installers accept only a mainnet manifest.
  - setup --force on an existing install keeps the reward identity, which is
    the behaviour main added. Here the preimage lives in its owner-only
    rewards-inner-hash file, so main's regression test is adapted to assert
    that file is untouched and that the preimage is never written into the
    public config. It moves a Planck install to mainnet without asking for the
    recovery phrase again.
  - A Planck config is named as the retired testnet when start refuses it.
  - Guide gains "Coming from Planck", including main's warning never to pass
    --force-authoring. Skill and agent prompt describe mainnet and stop saying
    tokens have no value.
  - Node v1.0.1 publishes no Intel macOS build, so that platform is dropped
    from the manifest and refused with a clear message rather than paired with
    a node that does not exist.
  - The desktop app page now says that release was built for Planck and is not
    verified for mainnet funds.

Verified on a Windows 11 laptop with an RTX 3070 before changing the pin: the
v1.0.1 node carries the mainnet chain spec (id mainnet, 7 bootnodes), joins
mainnet with peers and writes its miner auth files; miner v4.2.0 authenticates,
connects and waits for work, and benchmarks at 45.7 MH/s. Then the real
installer, end to end against mainnet with a throwaway identity: setup -Force
downloaded and verified both assets and moved a Planck config to mainnet with
the identity kept; start, status and stop all worked; status reported "block
32,055 of 42,203 (76.0%), 84 blocks/s, about 2 min left, 7 peers". Stopped
before tip, 0 blocks sealed.

That run found two Windows bugs, fixed here:

  - start never returned when its output was captured. Start-Process with
    redirection passes the script's standard handles to the node and miner,
    which then hold the caller's pipe open forever. Every agent-driven setup
    would hang there. Processes now launch through WMI, which inherits nothing,
    with cmd.exe doing the log redirection; PID files still hold the real node
    and miner PIDs. The same piped start now returns in 12 seconds.
  - config show and config set always printed usage: the function's parameter
    was named $Args, PowerShell's automatic variable, which shadowed it.

28 tests pass (4 new: missing-platform refusal, non-mainnet refusal, identity
preservation, mainnet wording), typecheck clean, docs build passes.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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