chore: archival snapshot docs#6713
Conversation
WalkthroughTwo documentation files were updated to provide comprehensive guidance on partial archival node setup and snapshot archival procedures. The primary file was substantially rewritten with detailed procedures, worked examples, and explicit steps for downloading, importing, and validating lite and diff snapshots. The secondary file was updated with clarified snapshot type descriptions and cross-references to the newly expanded guide. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related issues
Suggested reviewers
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (3)
docs/docs/users/guides/advanced/archival_snapshots.md (3)
8-11: Consider mentioning Lotus compatibility.Based on the linked repository context showing that Lotus uses Forest-hosted snapshots and the snapshot service docs mention both Forest and Lotus can read snapshots, it would be helpful to explicitly note in this guide whether these archival snapshots (lite and diff) are compatible with Lotus or Forest-only.
💭 Suggested addition
Consider adding a note in the introduction, such as:
Forest supports building partial or full archival nodes using **lite** and **diff** snapshots. This guide explains the snapshot types, how they relate to each other, and how to use them for common workflows. :::note These archival snapshots are in Forest's CAR format. While standard Forest snapshots are compatible with Lotus, archival lite and diff snapshots are currently supported only in Forest due to the specialized import and state computation workflow. :::🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/docs/users/guides/advanced/archival_snapshots.md` around lines 8 - 11, The intro to archival_snapshots.md should explicitly state Lotus compatibility: add a short note after the opening paragraph clarifying whether lite and diff archival snapshots are compatible with Lotus or only supported by Forest; reference the snapshot types "lite" and "diff" and mention the CAR format if relevant, e.g., an :::note block saying these archival lite/diff snapshots are Forest-specific (or compatible with Lotus if that's the case) and explain why (import/state computation workflow) so readers of the "lite" and "diff" sections understand tooling scope.
30-71: Excellent warning and golden rule section!The warning box with concrete error examples is very helpful for preventing common mistakes. The "golden rule" and visual example make the lite+diff relationship crystal clear.
Minor improvement: Add language specifiers to the fenced code blocks at lines 37, 43, and 62 for better rendering and accessibility. Since these are error messages and diagrams (not executable code), you can use
textorplaintext:📝 Suggested language specifiers
Line 37:
-``` +```text failed to lookup actor f410f...Line 43: ```diff -``` +```text failed to read init actor address mapLine 62: ```diff -``` +```text Lite `@3`,480,000 ─┬─ Diff `@3`,480,000+3,000 ─── ...</details> <details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against the current code and only fix it if needed.
In
@docs/docs/users/guides/advanced/archival_snapshots.mdaround lines 30 - 71,
Add language specifiers "text" (or "plaintext") to the three fenced code blocks
that contain the error message "failed to lookup actor f410f...", the error
message "failed to read init actor address map", and the diagram beginning "Lite
@3,480,000 ─┬─ Diff@3,480,000+3,000..." so they render/accessibly as
non-executable text; locate the three triple-backtick blocks surrounding those
exact strings and change the opening fence fromtotext (or
76-113: Clear algorithm and excellent worked example!The step-by-step algorithm for determining required snapshots is logical and easy to follow. The calibnet example with the complete table makes it very practical for users. I verified the math:
floor(3,506,992 / 30,000) × 30,000 = 3,480,000✓ and the 9 diffs + 1 base lite = 10 snapshots ✓.Minor improvement: Add language specifiers to the pseudocode blocks:
📝 Suggested language specifiers
Lines 83-85 and 90-95 should use
textorplaintext:-``` +```text base_epoch = floor(E / 30,000) × 30,000```diff -``` +```text diff `@base_epoch` + 3,000 ...</details> <details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against the current code and only fix it if needed.
In
@docs/docs/users/guides/advanced/archival_snapshots.mdaround lines 76 - 113,
Add explicit language specifiers to the two fenced pseudocode blocks: update the
block containing "base_epoch = floor(E / 30,000) × 30,000" to use ```text (orwith "diff `@base_epoch` + 3,000" to use ```text (or ```plaintext) so the pseudo-code is rendered as plain text rather than being language-agnostic.
🤖 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/docs/users/guides/advanced/archival_snapshots.md`:
- Around line 161-178: The docs show using "forest-cli state compute --epoch
<LITE_EPOCH> -n <NUMBER_OF_EPOCHS>" and an example of "-n 200" but don't explain
that 200 is only illustrative; add a brief note after the example that for a
full archival node you must compute all epochs covered by your snapshots (i.e.,
from the base lite epoch through the latest diff snapshot) and that the -n value
should be adjusted to match that total, while the 200-epoch value is just a
demonstration.
---
Nitpick comments:
In `@docs/docs/users/guides/advanced/archival_snapshots.md`:
- Around line 8-11: The intro to archival_snapshots.md should explicitly state
Lotus compatibility: add a short note after the opening paragraph clarifying
whether lite and diff archival snapshots are compatible with Lotus or only
supported by Forest; reference the snapshot types "lite" and "diff" and mention
the CAR format if relevant, e.g., an :::note block saying these archival
lite/diff snapshots are Forest-specific (or compatible with Lotus if that's the
case) and explain why (import/state computation workflow) so readers of the
"lite" and "diff" sections understand tooling scope.
- Around line 30-71: Add language specifiers "text" (or "plaintext") to the
three fenced code blocks that contain the error message "failed to lookup actor
f410f...", the error message "failed to read init actor address map", and the
diagram beginning "Lite `@3`,480,000 ─┬─ Diff `@3`,480,000+3,000..." so they
render/accessibly as non-executable text; locate the three triple-backtick
blocks surrounding those exact strings and change the opening fence from ``` to
```text (or ```plaintext).
- Around line 76-113: Add explicit language specifiers to the two fenced
pseudocode blocks: update the block containing "base_epoch = floor(E / 30,000) ×
30,000" to use ```text (or ```plaintext) and likewise update the block
containing the diff list starting with "diff `@base_epoch` + 3,000" to use ```text
(or ```plaintext) so the pseudo-code is rendered as plain text rather than being
language-agnostic.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: f656a228-705c-4d84-8e44-ee9806ab4a33
📒 Files selected for processing (2)
docs/docs/users/guides/advanced/archival_snapshots.mddocs/docs/users/knowledge_base/snapshot_service.md
Summary of changes
Changes introduced in this pull request:
Reference issue to close (if applicable)
Closes
Other information and links
Part of #6695
Change checklist
Outside contributions
Summary by CodeRabbit