Repository navigation
docs: document malformed isAuthorized results (base-std@3820cf0) - #2072
Conversation
✅ Heimdall Review Status
|
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Automations to automatically generate PRs for you. |
The sync repeated the full malformed/unknown/inverted isAuthorized rules on every page that mentions isAuthorized. Keep the canonical table on the is-authorized reference and the Policies concept page; elsewhere use one sentence and a link. - Revert restrict-transfer-initiators and restrict-who-can-hold (passing mentions only). - Revert the Cobalt changelog and Beryl upgrade pages: historical records, and this source change is a NatSpec clarification, not a Cobalt/Beryl change. - Seize and Cancel Units, Block an Account: keep the task-specific risk in one sentence and link to the reference. - List Tokenized Stocks, B20 introduction: one sentence each. - is-authorized: turn leftover Dev/Param/Return lines into Parameters and Returns sections and fix Access Control (as approved in #2054). Co-authored-by: Toshi <toshi-noreply@coinbase.com>
|
Replaces closed #2054 (re-run to get a signed bot commit after #2068). Why: this source change (base-std@3820cf0) only clarifies the What changed
Note for reviewers: the content was regenerated by Sonnet 5.5, so the wording differs from what was approved in #2054. 🤖 Reply generated with Toshi |
Drops the Block an Account note and the Policies 'Malformed and unknown IDs' section; the rules remain on the isAuthorized reference page. Co-authored-by: Toshi <toshi-noreply@coinbase.com>
|
Review Error for rayyan224 @ 2026-10-05 20:03:01 UTC |
* test(docs-sync): add eval harness and the base-std@3820cf0 case run-eval.mjs runs the working-tree (or --code-ref) sync code against a pinned docs commit in a throwaway worktree and scores the result against the case's expectations: pages that must, may, and must not change, edit budgets for secondary pages, and restatement of full rules outside their owner pages. The first case is base-std#234 (3820cf0), a NatSpec-only clarification of isAuthorized that the sync spread across ~10 pages (#2054, #2069, #2072). Co-authored-by: Toshi <toshi-noreply@coinbase.com> * fix(docs-sync): stop guide pages being edited for passing mentions - Rule 5: guides and concept pages change only when the source change makes a step, outcome, revert, or recommended setting on the page wrong; otherwise they are returned unchanged. Add 'one owner per fact': full behavior lives on the owning reference page; other pages link to it. - Rule 6: inventory documented surfaces, not mentions. A manifest entry that matches only a mention is not an intersection. Comment-only diffs clarify behavior; edit only statements they show to be wrong. - Step 4: polish only edited paragraphs; callouts only for real behavior changes, never for clarifications. - The anti-noop rule now applies to reference and changelog-entry pages that document the changed symbol, not to pages that only mention it. Co-authored-by: Toshi <toshi-noreply@coinbase.com> * fix(docs-sync): route comment-only changes to reference pages; skip historical pages - isCommentOnlyChange: a dispatch whose source diff only edits Solidity comments is a clarification. Symbol-mention routing then reaches only function-reference and interface-index pages, and the prompt is told the change type. - symbolRouteGate: pages found only by symbol mention are not routed when they are changelog entries for an earlier hardfork or upgrades/<fork>/ pages for a fork other than the newest. Path-routed pages are unaffected. Co-authored-by: Toshi <toshi-noreply@coinbase.com> * test(docs-sync): add base-std@1505323 recall case; must_mention and warn 1505323-token-self-recipient replays base-std#232, a real behavior change (transfers, mints, and seizes to the token's own address now revert) that reaches src/ only as NatSpec. It guards the other direction from the 3820cf0 case: the five function references that list InvalidReceiver must change, and their added lines must state the new condition. - must_mention: a regex the added lines of a page must match, so a cosmetic edit to a required page does not count. - unlisted_pages: "warn" reports pages outside the lists without failing. - README: how to run the evals and what each case guards. Co-authored-by: Toshi <toshi-noreply@coinbase.com> * fix(docs-sync): find NatSpec-documented members; guard code samples and retry streams From the base-std@1505323 eval (0/2 before, 6/6 after across both cases): - natspecDocumentedSymbols: a NatSpec hunk usually stops above the declaration it documents, so mint.mdx was skipped whenever the model's manifest happened not to name mint. Walk the post-change source (already fetched for changelog entries) from each changed comment line to the next declaration; function-reference pages for those members are always called. - isCommentOnlyChange: reference mocks (test/lib/mocks/) count as code. Base Std is interface-only, so NatSpec plus a mock change is a behavior change, not a clarification. The prompt no longer lets the model infer "clarification" from a comment-only diff slice; only the flag decides. - restoreCodeSamples: on guide pages, when no signature changed upstream, restore fenced code blocks (not mermaid) the model altered. A run had rewritten send-a-payout's functionName to "simulateContract". - normalizeForNoop: table re-padding alone is a noop. - llm/client: retry mid-stream overloaded/api errors twice with backoff; the SDK's maxRetries only covers the initial response, and one such error failed a whole sync in the eval. Co-authored-by: Toshi <toshi-noreply@coinbase.com> * docs(docs-sync): shrink the evals README section to a pointer Usage lives in the run-eval.mjs header and each case documents itself; the README only needs to say when to run it. Co-authored-by: Toshi <toshi-noreply@coinbase.com> --------- Co-authored-by: Toshi <toshi-noreply@coinbase.com>
Auto-generated from the source PR above.
Reviewer checklist
Before merging, confirm each item below. The validator catches structural problems (raw HTML, dangerous URLs, secrets); these items need a human eye.
click here, no link text that contradicts its target host.title/descriptionstill match the page's role (reference vs. overview vs. conceptual).<Warning>added describes a real breaking change in the source PR, not a paraphrase the model invented.Newly introduced external URLs
No new external URLs in this sync.
Files touched
docs/base-chain/specs/reference/b20/changelog/02-cobalt-policyregistry-composite-policy.mdxdocs/base-chain/specs/reference/b20/changelog/03-denim-policyregistry-not-policy.mdxdocs/build-on-base/integrate-defi/list-tokenized-stocks.mdxdocs/build-on-base/issue-rwa/restrict-transfer-initiators.mdxdocs/build-on-base/issue-rwa/seize-and-cancel-units.mdxdocs/build-on-base/issue-stablecoins/block-an-account.mdxdocs/build-on-base/issue-stablecoins/restrict-who-can-hold.mdxdocs/specifications/b20/concepts/policies.mdxdocs/specifications/b20/introduction.mdxdocs/specifications/b20/reference/constants.mdxdocs/specifications/b20/reference/interfaces/i-policy-registry/index.mdxdocs/specifications/b20/reference/interfaces/i-policy-registry/is-authorized.mdxdocs/upgrades/beryl/b20.mdxSource provenance
Each row shows which file(s) in
base/base-std@3820cf0drove an edit to a docs page. Click into a source file to verify the claim before merging.docs/base-chain/specs/reference/b20/changelog/02-cobalt-policyregistry-composite-policy.mdxsrc/interfaces/IPolicyRegistry.soldocs/base-chain/specs/reference/b20/changelog/03-denim-policyregistry-not-policy.mdxsrc/interfaces/IPolicyRegistry.soldocs/build-on-base/integrate-defi/list-tokenized-stocks.mdxsrc/interfaces/IPolicyRegistry.soldocs/build-on-base/issue-rwa/restrict-transfer-initiators.mdxsrc/interfaces/IPolicyRegistry.soldocs/build-on-base/issue-rwa/seize-and-cancel-units.mdxsrc/interfaces/IPolicyRegistry.soldocs/build-on-base/issue-stablecoins/block-an-account.mdxsrc/interfaces/IPolicyRegistry.soldocs/build-on-base/issue-stablecoins/restrict-who-can-hold.mdxsrc/interfaces/IPolicyRegistry.soldocs/specifications/b20/concepts/policies.mdxsrc/interfaces/IPolicyRegistry.soldocs/specifications/b20/introduction.mdxsrc/interfaces/IPolicyRegistry.soldocs/specifications/b20/reference/constants.mdxsrc/interfaces/IPolicyRegistry.soldocs/specifications/b20/reference/interfaces/i-policy-registry/index.mdxsrc/interfaces/IPolicyRegistry.soldocs/specifications/b20/reference/interfaces/i-policy-registry/is-authorized.mdxsrc/interfaces/IPolicyRegistry.soldocs/upgrades/beryl/b20.mdxsrc/interfaces/IPolicyRegistry.solOpened by
Apply Base Std Updateworkflow.