Repository navigation
docs: don't promise a failed paid pointer write went unpaid, in every SDK - #371
Merged
Merged
Conversation
…rial/stack-integration
…o trial/stack-integration
…trial/stack-integration
…o trial/stack-integration
…trial/stack-integration
…ial/stack-integration
…rial/stack-integration
…rial/stack-integration
…ial/stack-integration
…trial/stack-integration
…rial/stack-integration
…to trial/stack-integration
…o trial/stack-integration
…-rust' into trial/stack-integration
…rial/stack-integration
… trial/stack-integration
…rial/stack-integration
… trial/stack-integration
…to trial/stack-integration
…trial/stack-integration
…o trial/stack-integration
… trial/stack-integration
…trial/stack-integration # Conflicts: # README.md # docs/architecture.md # llms-full.txt # llms.txt # skill.md
…trial/stack-integration # Conflicts: # antd-php/README.md
…trial/stack-integration # Conflicts: # antd-lua/README.md
…rial/stack-integration # Conflicts: # antd-go/README.md
… trial/stack-integration # Conflicts: # antd-ruby/README.md # antd-ruby/scripts/generate-protos.sh
…trial/stack-integration # Conflicts: # antd-zig/README.md # antd-zig/build.zig
… trial/stack-integration # Conflicts: # antd-dart/CHANGELOG.md # antd-dart/README.md # antd-dart/example/example.md # antd-dart/tool/generate_proto.sh
…rial/stack-integration # Conflicts: # antd-py/scripts/generate_proto.py # antd-py/src/antd/_grpc.py
…to trial/stack-integration # Conflicts: # antd-kotlin/examples/src/main/kotlin/com/autonomi/examples/Main.kt
… trial/stack-integration # Conflicts: # antd-rust/Cargo.toml # antd-rust/README.md
…to trial/stack-integration # Conflicts: # antd-elixir/README.md # antd-elixir/scripts/generate-protos.sh
…trial/stack-integration # Conflicts: # .github/workflows/python-ci.yml # antd-mcp/README.md
…nto trial/stack-integration # Conflicts: # ant-dev/src/ant_dev/cli.py # ant-dev/src/ant_dev/cmd_example.py
…ether Text that each fan-out branch wrote without the other in place: - MCP tool count 29 -> 31 in README.md and llms.txt (19 storage, 10 pointer, 2 manifest); root README intro mentions manifests. - antd-csharp: the unknown-example message lists 1-9, 'pointers' and 'manifests'; README shows `dotnet run -- 9`. - antd-kotlin README: `all` skips 8 and 9; 8 runnable examples. - antd-swift: NotSupportedError covers the pointer and manifest methods (doc comment and README error table). - antd-js README: 8 runnable scripts; 09-manifests.ts listed before the retry helper. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ifests.proto Both fan-out branches renumbered the $N import aliases in the shared .pbgrpc.dart files, so the clean git merge left stale numbers. Regenerated in one protoc call (protoc 25.3, protoc_plugin 22.3.0, tool/generate_proto.sh): manifests $6, pointers $7, upload $8, wallet $9. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
With both fan-outs in, the server has 31 tools (19 storage, 10 pointer, 2 manifest), and 21 on an SDK without the pointer API. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…nto the integration preview
…rial/stack-integration
… SDK A daemon-wallet pointer write pays before it stores, and the store can still fail after payment, so several error codes cover both unpaid and possibly-paid outcomes: - CONFLICT is a pre-payment refusal while a prepared write awaits payment, but also an update that lost to a newer state in flight, which may already be paid for; - POINTER_FINAL is usually the pre-payment read check, but a pointer that became final while a paid write was in flight is refused by the network after paying; - a transfer's CLOSE_GROUP_SHORTFALL can come before paying (every peer is checked first) or after. The C++, C#, Dart, Elixir, Go, Java, JS, Kotlin, Lua, PHP, Ruby, Rust, Swift and Zig error-class docs and pointer_update / pointer_transfer docs now match the antd-py and antd-mcp wording: which cases are refused before paying, which may already be paid, and to read the pointer (or its finality) before paying again. The READMEs, tutorial-pointers.md, llms.txt, llms-full.txt and skill.md say the same. A create of an existing pointer, the awaiting-payment CONFLICT and the read-time POINTER_FINAL stay described as refused before paying; manifest calls stay free. Also: - skill.md: the shortfall row names the one safe retry (a retryable finalize with the same upload_id); Java's fork class is ForkException. - llms-full.txt: pointer prepare documents include_signed_quotes and the optional signed_quotes; the manifest gRPC limit notes that Dart and Elixir set none, since grpc-dart and grpc-elixir 0.11 have none to raise. - README.md, docs/quickstart-rust.md: the Go and Rust pointer and manifest examples do read ANTD_BASE_URL. No behaviour changes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Nic-dorman
changed the base branch from
nic/stack-integration-preview
to
main
October 19, 2026 15:38
Main now has the whole pointer and manifest stack plus #376, so this PR's diff against main is just its own wording. Clean merge, no conflicts.
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.
Hermes' review of #335/#342 caught that Python and MCP promised a failed paid pointer write "was refused before anything was paid". The same false guarantee was in the other 13 SDKs and the shared docs. This PR fixes those, plus the wording fixes Hermes kept open on #339, #365 and #334. Docs, comments and README text only: no code or behaviour changes, and no
antd/changes.Stacked on #367 (base
nic/stack-integration-preview), because these files come from the fan-out PRs. Fixing them in place would have reset 35 approvals. This PR gets retargeted tomainonce #367 lands.The facts the wording follows
pointer_put, which pays first and stores second.retryabletrue, repeated with the sameupload_idagainst the retained payment.Changes (13 SDKs + docs; Python and MCP were already right after #335/#342)
docs/tutorial-pointers.md,llms.txt,llms-full.txt,skill.md,README.md,docs/quickstart-rust.md.skill.mdshortfall row now names the retryable-finalize exception; Java is listed asForkException;llms-full.txtdocumentsinclude_signed_quotes/ optionalsigned_quoteson pointer prepare.ANTD_BASE_URL), and also from the identical pointers line and the Rust quickstart. The manifest gRPC 256 MiB line now names Dart and Elixir as exceptions.pointerTransferdocblock no longer implies a CLOSE_GROUP_SHORTFALL is pre-payment.Deliberately unchanged (true as written)
InsufficientPeers→ SERVICE_UNAVAILABLE comment ("Nothing was paid") stays. In ant-core 0.13.0, the only pointer source of it ispointer_write_group, which runs before quoting or paying. In finalize,worth_retryingcatches it first.Checks
antd-pypytest: 584 passed.antd-go:go vet,go buildandgo testpass.antd-csharp:dotnet buildsucceeds with 0 warnings.php -l,ruby -candzig fmt --checkare clean on the edited files.git diff --checkis clean.Refs V2-1568.
🤖 Generated with Claude Code