Skip to content

docs: fix prerelease doc URLs + accuracy issues from v3 review#448

Merged
ankurdotb merged 4 commits into
prereleasefrom
docs/fix-migration-guide-source-url
Jun 20, 2026
Merged

docs: fix prerelease doc URLs + accuracy issues from v3 review#448
ankurdotb merged 4 commits into
prereleasefrom
docs/fix-migration-guide-source-url

Conversation

@ankurdotb

@ankurdotb ankurdotb commented Jun 19, 2026

Copy link
Copy Markdown
Collaborator

What

Two batches of doc fixes for the v3.x line, all verified against source.

Prerelease URLs (resolve today on the prerelease branch)

  1. Migration guide source-of-truth URLdocs.zama.org/protocol/sdk/alpha/migration/migrate-v2-to-v3.md (was …/sdk/guides/…, which 404s).
  2. llms.txt / llms-full.txt links in build-with-an-llm + the migration guide → prerelease branch (was main; those artifacts only land on main after a release).
  3. corpus.config.json rawGithubBaseUrlprerelease, so every generated link in llms.txt/llms-full.txt/corpus-manifest.json resolves now. Without this the prerelease llms.txt was an index of main links that 404.
  4. .lycheeignore — dropped the now-unneeded main/llms exemption so lychee checks these links for real.

On the main merge, the prerelease paths (doc bodies + corpus.config.json) flip back to main.

Accuracy fixes (vetted from a follow-up review)

  • Security model — shield/unshield amounts are public ERC-20 movements visible on-chain; corrected the claim that shield amounts are FHE-encrypted before reaching the chain.
  • Configuration — relayers are shared by relayer-object identity (one web() call referenced from each chain), not by passing the same options object.
  • encrypt-decrypt / migration guideuseDecryptValues is disabled by default; examples now opt in with { enabled: true } (the hook already gates on non-empty inputs and a connected wallet).
  • shield-tokens / transfer-privatelymutateAsync resolves to TransactionResult { txHash, receipt }; destructure { txHash }.
  • unshield-tokensunshieldAll operates on the encrypted balance handle; it does not decrypt first.
  • wallet-exchange-integration — the SDK shield path does not do decimal conversion.

Why

These docs feed llms-full.txt; wrong URLs break agent-driven migration and wrong claims mislead both developers and LLMs. Cheapest to fix pre-GA.

Validation

Affected URLs fetch live (docs.zama.org/…/alpha/migration/…, raw…/sdk/prerelease/llms{,-full}.txt → 200). pnpm format:check, pnpm docs:check-links (88 pages), pnpm llm:check, and typecheck (6 projects) all pass.

🤖 Generated with Claude Code

…gent prompt

The "SOURCE OF TRUTH" URL pointed at the pre-publish path
(`/protocol/sdk/guides/migrate-v2-to-v3.md`). The page actually publishes under
the alpha space's Migration section, so an agent fetching the old URL would 404.

Corrected to `https://docs.zama.org/protocol/sdk/alpha/migration/migrate-v2-to-v3.md`.
Regenerated llms-full.txt.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@cla-bot cla-bot Bot added the cla-signed label Jun 19, 2026
@github-actions

Copy link
Copy Markdown

Public API Changes

✅ No public API changes detected.

@github-actions

github-actions Bot commented Jun 19, 2026

Copy link
Copy Markdown

Coverage Report

Status Category Percentage Covered / Total
🔵 Lines 92.18% (🎯 80%) 3116 / 3380
🔵 Statements 92.26% 3210 / 3479
🔵 Functions 92.44% (🎯 80%) 1040 / 1125
🔵 Branches 84.73% (🎯 80%) 1199 / 1415
File CoverageNo changed files found.
Generated in workflow #2712 for commit 0682c87 by the Vitest Coverage Report Action

ghermet
ghermet previously approved these changes Jun 19, 2026
build-with-an-llm and the migration guide linked to
raw.githubusercontent.com/zama-ai/sdk/main/llms{,-full}.txt, but those
artifacts only land on main after a release. On prerelease, point them at
the prerelease branch (which already has them) so the links resolve today;
the main paths can be restored when this merges to main.

Drop the now-unneeded .lycheeignore exemption so lychee checks the links
for real, and regenerate llms-full.txt.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@ankurdotb ankurdotb changed the title docs(gitbook): fix source-of-truth URL in the v2→v3 migration guide prompt docs(gitbook): fix prerelease doc URLs (migration source-of-truth + llms.txt links) Jun 19, 2026
@ankurdotb ankurdotb changed the title docs(gitbook): fix prerelease doc URLs (migration source-of-truth + llms.txt links) docs: fix prerelease doc URLs + accuracy issues from v3 review Jun 20, 2026
Vetted a follow-up review against the source and applied the findings that hold up:

- corpus.config.json: point the generated llms.txt/llms-full.txt link index at the
  prerelease branch (was main). The docs only exist on prerelease until release, so the
  main links 404 today; this makes the prerelease llms.txt fully resolvable. Flip back to
  main on the main merge, same as the doc-body URLs.
- security model: shield/unshield amounts are public ERC-20 movements visible on-chain —
  corrected the claim that shield amounts are FHE-encrypted before reaching the chain.
- configuration: relayers are shared by relayer-object identity (one web() call referenced
  from each chain), not by passing the same options object — the dispatcher groups by
  config reference.
- encrypt-decrypt / migrate-v2-to-v3: useDecryptValues is disabled by default; pass
  { enabled: true } so the example opts in (the hook already gates on non-empty inputs and
  a connected wallet).
- shield-tokens / transfer-privately: mutateAsync resolves to TransactionResult
  { txHash, receipt }; destructure { txHash } instead of naming the whole object txHash.
- unshield-tokens: unshieldAll operates on the encrypted balance handle; it does not
  decrypt first.
- wallet-exchange-integration: the SDK shield path does not do decimal conversion (the
  bigint is passed through unchanged).

Regenerated llms.txt / llms-full.txt / corpus-manifest.json.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@ankurdotb ankurdotb force-pushed the docs/fix-migration-guide-source-url branch from faae3f3 to da585a6 Compare June 20, 2026 11:45
- useDecryptValues reference page: corrected the "automatically fires" claim
  (frontmatter description + intro line) — the hook is disabled by default and you
  opt in with `enabled`; gate on a cached permit to avoid an unexpected wallet
  prompt. Added `enabled` to the grouping snippet so it runs as copied. The
  frontmatter description feeds the llms.txt index.
- shield-tokens / transfer-privately: prose now says the SDK/hooks resolve to a
  TransactionResult { txHash, receipt }, matching the now-destructured examples.
- wallet-exchange-integration: decimals()/rate() are wrapper views read from the
  confidential token contract, not "via the underlying contract".

Regenerated llms.txt / llms-full.txt / corpus-manifest.json.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@ankurdotb ankurdotb merged commit 2743748 into prerelease Jun 20, 2026
13 checks passed
@ankurdotb ankurdotb deleted the docs/fix-migration-guide-source-url branch June 20, 2026 12:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants