docs: fix prerelease doc URLs + accuracy issues from v3 review#448
Merged
Conversation
…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>
Public API Changes✅ No public API changes detected. |
Coverage Report
File CoverageNo changed files found. |
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>
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>
faae3f3 to
da585a6
Compare
- 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>
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.
What
Two batches of doc fixes for the v3.x line, all verified against source.
Prerelease URLs (resolve today on the
prereleasebranch)docs.zama.org/protocol/sdk/alpha/migration/migrate-v2-to-v3.md(was…/sdk/guides/…, which 404s).llms.txt/llms-full.txtlinks inbuild-with-an-llm+ the migration guide →prereleasebranch (wasmain; those artifacts only land onmainafter a release).corpus.config.jsonrawGithubBaseUrl→prerelease, so every generated link inllms.txt/llms-full.txt/corpus-manifest.jsonresolves now. Without this the prereleasellms.txtwas an index ofmainlinks that 404..lycheeignore— dropped the now-unneededmain/llmsexemption so lychee checks these links for real.Accuracy fixes (vetted from a follow-up review)
web()call referenced from each chain), not by passing the same options object.useDecryptValuesis disabled by default; examples now opt in with{ enabled: true }(the hook already gates on non-empty inputs and a connected wallet).mutateAsyncresolves toTransactionResult { txHash, receipt }; destructure{ txHash }.unshieldAlloperates on the encrypted balance handle; it does not decrypt first.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