docs(explanations): audit updatesfor v3.1#143
Conversation
- fees: update cost table to current source constants (storage, processing, hashing); remove stale Query row - identity: replace outdated "future feature" note with accurate statement that credit withdrawals are live - platform-protocol-document: fix $dataContractId field name, add 7 missing base fields (transfer timestamps and block heights), update DPNS records field from dashUniqueIdentityId/dashAliasIdentityId to identity - platform-protocol-state-transition: add address-based state transition types 9-14 with links to protocol-ref/address-system.md Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- fees: rename User Tip to User Fee Increase; update formula to use feeMultiplier - nft: rename System Only restriction to No Creation Allowed - data-trigger: fix document column (All Document Types -> domain); update links from documents_batch to batch - tokens: correct group member max power parenthetical (65536 -> 65535) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- dashpay: fix schema link path (add v1/ subdirectory) and data triggers link (documents_batch -> batch) - dpns: add 3-character minimum length constraint; fix closing backtick on pattern; fix data triggers link path - data-trigger: add TRANSFER, PURCHASE, UPDATE_PRICE reject trigger rows for DPNS domain - tokens: update source links from v2.0.1 to v3.1-dev with correct paths and line anchors; add Description and Marketplace rules rows; clarify Keep history default Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…oad types Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
✅ Files skipped from review due to trivial changes (2)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughDocumentation-only PR updating multiple Dash Platform spec files: link/path corrections, fee formula and values, schema field renames/additions, new state transition payload type entries, and several constraint/terminology adjustments. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~22 minutes
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Warning Review ran into problems🔥 ProblemsGit: Failed to clone repository. Please run the Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
docs/explanations/fees.md (1)
41-49:⚠️ Potential issue | 🟠 MajorClarify Fee Multiplier scope in description versus formula.
Line 43 states "All fees are multiplied by the Fee Multiplier," but the formula on line 70 applies
feeMultiplieronly toprocessingFee:fee = storageFee + processingFee * feeMultiplier - storageRefundUpdate line 43 to clarify scope. If the multiplier applies only to processing fees, change "All fees" to "Processing fees." If it applies to all fees, update the formula to:
fee = (storageFee + processingFee - storageRefund) * feeMultiplier🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/explanations/fees.md` around lines 41 - 49, The description currently says "All fees are multiplied by the Fee Multiplier" but the implemented formula uses feeMultiplier only on processingFee (symbols: feeMultiplier, processingFee, storageFee, storageRefund); update the docs to be consistent: either change the prose to "Processing fees are multiplied by the Fee Multiplier" if the multiplier only applies to processingFee, or change the displayed formula to apply feeMultiplier to the entire sum (fee = (storageFee + processingFee - storageRefund) * feeMultiplier) if the multiplier should apply to all components; make the change near the "Fee Multiplier" section so prose and the formula match.
🧹 Nitpick comments (2)
docs/explanations/platform-protocol-document.md (1)
80-82: Consider making$dataContractIdexample format explicit.The table defines
$dataContractIdas a 32-byte identifier, but the example shows an object placeholder. A string/byte-encoded sample (or a short note explaining the placeholder) would avoid ambiguity.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/explanations/platform-protocol-document.md` around lines 80 - 82, The example for "$dataContractId" is ambiguous; replace the object placeholder with an explicit 32-byte identifier sample (e.g., hex/base64 string) or add a short clarifying note that the placeholder represents a 32-byte encoded ID. Update the example in the $dataContractId entry so it shows a concrete string value (or indicates the encoding used) and mention the encoding/format (hex, base64, or raw bytes) to remove ambiguity for consumers of the spec.docs/explanations/fees.md (1)
67-67: Optional: Hyphenate compound adjective.Consider hyphenating "high level" to "high-level" when it modifies "formula":
-The high level formula for a state transition's fee is: +The high-level formula for a state transition's fee is:This follows standard English grammar for compound adjectives that precede nouns.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/explanations/fees.md` at line 67, Update the sentence "The high level formula for a state transition's fee is:" to hyphenate the compound adjective so it reads "The high-level formula for a state transition's fee is:"; locate and replace the exact phrase shown in the diff to ensure the compound adjective preceding "formula" is correctly hyphenated.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/explanations/fees.md`:
- Around line 59-70: The formula omits the per-transaction userFeeIncrease
field; update the formula that defines fee (currently showing storageFee,
processingFee and feeMultiplier) to include userFeeIncrease as an additive
prioritization fee: make it explicit that fee = storageFee + (processingFee *
feeMultiplier) + userFeeIncrease - storageRefund and add a short note next to
the symbols (storageFee, processingFee, feeMultiplier, userFeeIncrease,
storageRefund) stating that userFeeIncrease is an extra per-transaction fee used
when the mempool is full.
In `@docs/explanations/nft.md`:
- Line 43: Update the enum label for creationRestrictionMode value 2 so the
protocol reference uses the same wording as the explanation docs: change the
label currently "No creation (System Only)" to "No Creation Allowed" for
creationRestrictionMode=2 (the enum entry for value 2) so both docs use
identical terminology.
In `@docs/explanations/platform-protocol-data-trigger.md`:
- Line 21: Update the intro sentence and related trigger descriptions so they
consistently scope actions to the DPNS `domain` document rather than "All DPNS
document types": replace the sentence starting with "All DPNS document types
have constraints..." with wording that explicitly limits replacing, deleting,
transferring, purchasing, and price updates to the `domain` document, and revise
each trigger description referencing DPNS triggers to mention `domain`-scoped
constraints only (ensure DPNS and `domain` wording is consistent across the
intro and the trigger description block).
---
Outside diff comments:
In `@docs/explanations/fees.md`:
- Around line 41-49: The description currently says "All fees are multiplied by
the Fee Multiplier" but the implemented formula uses feeMultiplier only on
processingFee (symbols: feeMultiplier, processingFee, storageFee,
storageRefund); update the docs to be consistent: either change the prose to
"Processing fees are multiplied by the Fee Multiplier" if the multiplier only
applies to processingFee, or change the displayed formula to apply feeMultiplier
to the entire sum (fee = (storageFee + processingFee - storageRefund) *
feeMultiplier) if the multiplier should apply to all components; make the change
near the "Fee Multiplier" section so prose and the formula match.
---
Nitpick comments:
In `@docs/explanations/fees.md`:
- Line 67: Update the sentence "The high level formula for a state transition's
fee is:" to hyphenate the compound adjective so it reads "The high-level formula
for a state transition's fee is:"; locate and replace the exact phrase shown in
the diff to ensure the compound adjective preceding "formula" is correctly
hyphenated.
In `@docs/explanations/platform-protocol-document.md`:
- Around line 80-82: The example for "$dataContractId" is ambiguous; replace the
object placeholder with an explicit 32-byte identifier sample (e.g., hex/base64
string) or add a short clarifying note that the placeholder represents a 32-byte
encoded ID. Update the example in the $dataContractId entry so it shows a
concrete string value (or indicates the encoding used) and mention the
encoding/format (hex, base64, or raw bytes) to remove ambiguity for consumers of
the spec.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: c1137270-0383-4cd9-87f9-a1f47c14f79d
📒 Files selected for processing (11)
CLAUDE.mddocs/explanations/dashpay.mddocs/explanations/dpns.mddocs/explanations/fees.mddocs/explanations/identity.mddocs/explanations/nft.mddocs/explanations/platform-protocol-data-trigger.mddocs/explanations/platform-protocol-document.mddocs/explanations/platform-protocol-state-transition.mddocs/explanations/platform-protocol.mddocs/explanations/tokens.md
Summary
Audit and correct the
docs/explanations/section against the platform v3.1-dev source code.Changes by file
$dataContract->$dataContractId; added 7 missing base fields; updated DPNS fields (records.identity,saltedDomainHashtype)documents_batch->batchin all links; corrected document column; added TRANSFER/PURCHASE/UPDATE_PRICE trigger rowsPreview build: https://dash-docs-platform--143.org.readthedocs.build/en/143/
Summary by CodeRabbit