Skip to content

Feat/redpanda/v1 rc#16

Merged
redpanda-f merged 78 commits into
mainfrom
feat/redpanda/v1-rc
Jan 16, 2026
Merged

Feat/redpanda/v1 rc#16
redpanda-f merged 78 commits into
mainfrom
feat/redpanda/v1-rc

Conversation

@redpanda-f
Copy link
Copy Markdown
Contributor

No description provided.

@BigLep
Copy link
Copy Markdown
Contributor

BigLep commented Jan 16, 2026

@redpanda-f , @rvagg , and i are going to meet 2026-01-16 UTC about this PR and get it landed. Given @rvagg was able to get a successful localnet setup, my suggestion of conditions for merging are:

  1. Ensure @BigLep comments on the documentation are covered. (I'll take a look at that now.)
  2. See what code review feedback copilot has.
  3. If we can't get CI working, then break that out to a separate issue.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR performs a comprehensive rename of the project from "foc-localnet" to "foc-devnet" across the entire codebase. It also includes significant improvements including new retry utilities, enhanced logging, system information utilities, and updates to the default configuration.

Changes:

  • Project-wide rename from "localnet" to "devnet"
  • Removal of test files (build_lotus_test.rs, build_curio_test.rs) and development documentation (working.md)
  • Addition of new utility modules (retry, system_info) and Docker log collection
  • Chain ID updated from 1414 to 31415926
  • Default configuration updates (Lotus v1.34.4-rc1, filecoin-services branch change)
  • Enhanced error handling and verification with retry logic

Reviewed changes

Copilot reviewed 126 out of 127 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
working.md Deleted development notes/documentation
tests/build_lotus_test.rs Removed Lotus build integration tests
tests/build_curio_test.rs Removed Curio build integration tests
src/version_info.rs Updated branding from "foc-localnet" to "foc-devnet"
src/utils/* New utility modules for retry logic and system info
src/paths.rs Renamed all path functions from foc_localnet_* to foc_devnet_*
src/constants.rs Updated constants including chain ID and container naming
src/config.rs Updated default versions and repository configurations
src/docker/logs.rs New Docker log collection and cleanup utilities
src/commands/status/* Refactored status display with new modules
src/commands/start/* Updated all start command modules with new naming
Comments suppressed due to low confidence (2)

src/commands/start/usdfc_funding/funding_operations.rs:1

  • The --rm flag is removed but the code still includes it on line 62, then adds --name on line 63. This appears to be an editing error - the --rm should be removed consistently as indicated in the diff.
    src/commands/start/synapse_test_e2e/synapse_test_step.rs:1
  • The CLI flag value changed from 'localnet' to 'devnet', but verify that the synapse-sdk's post-deploy-setup.js script accepts 'devnet' as a valid network parameter. This could cause runtime failures if the script doesn't recognize this value.

Comment thread src/constants.rs
Comment thread src/commands/start/mod.rs
Comment thread src/docker/shell.rs
Comment thread src/commands/start/genesis/proof_parameters.rs
Comment thread src/constants.rs
BigLep added a commit that referenced this pull request Jan 16, 2026
- Add command prerequisites (build after init, start after init and build)
- Add 'How defaults work' section explaining config generation
- Update Run ID format to ISO8601 (YYYYMMDDTHHMM_RandomName)
- Improve Step Context documentation with cross-references
- Update Portainer section formatting and add documentation link
- Clarify container descriptions (shared database, dynamic ports)
- Add version strategy section for repository management
- Simplify configuration sharing from 3-step to 2-step process
- Normalize timing claims to percentages (~40% improvement)
- Update directory structure examples to use ISO8601 format

Addresses review feedback from @BigLep in PR #16
@redpanda-f redpanda-f marked this pull request as ready for review January 16, 2026 11:37
@redpanda-f redpanda-f merged commit 629f8e8 into main Jan 16, 2026
2 checks passed
@github-project-automation github-project-automation Bot moved this from ⌨️ In Progress to 🎉 Done in FOC Jan 16, 2026
@redpanda-f redpanda-f deleted the feat/redpanda/v1-rc branch January 16, 2026 11:38
redpanda-f pushed a commit that referenced this pull request Jan 22, 2026
* docs: rename ADVANCED_README.md to README_ADVANCED.md for lexicographical sorting

- Rename ADVANCED_README.md to README_ADVANCED.md using git mv for clear diff tracking
- Update reference in README.md to point to new filename
- Addresses BigLep's comment about naming consistency

* docs: add links and system requirements callout

- Add link from SP nodes control to Configuration System section in README_ADVANCED.md
- Add x86 architecture requirement note to System Requirements table
- Addresses BigLep's comments about missing links and architecture limitation

* docs: add command prerequisites to build and start commands

- Add note that build must be run after init
- Add note that start should be run after build of lotus and curio
- Addresses BigLep's comment about missing command order information

* docs: add 'How Defaults Work' section explaining config generation

- Explain that defaults are defined in code (src/config.rs Config::default())
- Document how init writes defaults to config.toml
- Explain how to update defaults with new versions using init --force
- Addresses BigLep's question about where defaults are defined and how they get updated

* docs: remove duplicate Manual Cleanup section

- Remove second duplicate Manual Cleanup section
- Keep the first one which has more comprehensive content
- Addresses BigLep's comment about duplicate sections

* docs: update Run ID format to ISO8601 (YYYY-MM-DDTHH:MM)

- Change Run ID format from YYmmmDD-HHMM to YYYY-MM-DDTHH:MM (ISO8601)
- Update code in src/run_id/mod.rs to use new format
- Update test regex to match new format
- Update all documentation examples to use new format (2026-01-02T14:30_ZanyPip)
- Addresses BigLep's comment about date format standardization for natural sorting and clarity

* docs: define what a 'step' is when first introduced

- Add definition of 'step' as discrete unit of work in cluster startup
- Link to Detailed Start Sequence section for complete list
- Reorganize Step Context section for better clarity
- Addresses BigLep's comment about defining 'step' when first mentioned

* docs: add links to context keys code location and example

- Link to src/commands/start/ directory for context key implementations
- Add example link to usdfc_deploy/prerequisites.rs showing context.get() usage
- Clarify that context keys are string literals, not constants
- Addresses BigLep's comment about linking to definitive list in code

* docs: add markdown link formatting for Portainer

- Change plain text 'Portainer' to [Portainer](https://docs.docksal.io/use-cases/portainer/)
- Addresses BigLep's comment about proper link formatting

* docs: clarify container architecture in table

- Clarify that Yugabyte is shared by all Curio SPs
- Update port descriptions from 'Dynamic' to 'Dynamic from range' for all Curio containers
- Addresses BigLep's comments about container descriptions

* docs: fix network diagram and correct Yugabyte architecture

- Simplify diagram to show single representative instance with curio-n/yugabyte-n notation
- Correct Yugabyte architecture: each SP has its own Yugabyte instance, not shared
- Update container architecture table to show yugabyte-1 and yugabyte-N (one per SP)
- Update network explanations to reflect one Yugabyte per SP network
- Addresses BigLep's comment about network diagram readability and accuracy

* fix: change Run ID format to condensed ISO8601 (YYYYMMDDTHHMM) for Docker compatibility

- Change from YYYY-MM-DDTHH:MM to YYYYMMDDTHHMM (no dashes/colons)
- Colons and dashes cause issues with Docker network names
- Update code in src/run_id/mod.rs to use %Y%m%dT%H%M format
- Update test regex to match new format
- Update all documentation examples throughout README_ADVANCED.md
- Still ISO8601-based for natural sorting, but Docker-compatible

* docs: improve repository management section

- Convert Required Repositories table to bulleted list with repo links (avoids outdated version info)
- Add Version Strategy section explaining GitTag/GitCommit/GitBranch approaches
- Link to src/config.rs where default versions are defined
- Link 'Updating defaults' to How Defaults Work section
- Addresses BigLep's questions about version strategy and where defaults are defined

* docs: simplify configuration sharing section

- Reduce from verbose 3-step process to simple 2-step (copy file + run init)
- Remove unnecessary export and documentation steps
- Addresses BigLep's comment about verbose configuration sharing

* docs: move Reproducible builds to its own heading

- Move Reproducible builds from under Sharing Configuration to separate section
- Makes it clearer that it's a distinct topic
- Addresses BigLep's comment about moving it to its own heading

* docs: merge Command Flags section with Commands Reference

- Move all flag information into Commands Reference section
- Remove duplicate Command Flags section
- Add inline 'why' explanations for --volumes-dir, --run-dir, and --notest
- Preserve parallelization guidance (why to use/not use --parallel)
- Add parallelization table to Step execution section showing which epochs are parallelized
- Link from start command to Detailed Start Sequence for parallelization details
- Addresses BigLep's comment about eliminating duplication

* docs: restructure lifecycle section

- Remove ASCII diagram
- Reorganize into Before Steps/Steps/Post Start Steps structure
- Remove hardcoded numbers (1-6) and letters (a-k) from step descriptions
- Add links to Step Implementation Pattern and Configuration System
- Add sections for running, stop, and (re)start states
- Addresses BigLep's comment about improving lifecycle documentation structure

* docs: add inline code comments to Rust examples

- Enhance SetupContext struct comments with detailed explanations
- Add inline comments throughout example flow showing context sharing
- Add method-level comments to Step trait explaining each phase
- Improve code readability by explaining what each part does and why
- Addresses BigLep's comment about adding explanatory content to code examples

* docs: rename Advanced Topics and remove Last Updated section

- Rename 'Advanced Topics' to 'Additional User Actions' for clarity
- Add explanation of genesis template location (~/.foc-devnet/docker/volumes/run-specific/<run-id>/genesis/)
- Note that genesis templates are generated during genesis prerequisites phase
- Remove 'Last Updated' section (redundant - version control tracks changes)
- Addresses BigLep's comments about improving section naming and removing low-value content

* docs: remove redundant sections and improve consistency

- Enhance post_execute comment to include 'confirm deployment'
- Remove duplicate 'Phases' section (already explained in inline code comments)
- Remove redundant 'Testing scenarios' section (just comments)
- Remove 'Reference Links' section (redundant with other documentation)

* docs: fix relative links to use correct paths

- Change ../src/config.rs to src/config.rs (root-level paths)
- Change ../src/commands/start/ to src/commands/start/
- Change ../src/commands/start/usdfc_deploy/prerequisites.rs to src/commands/start/usdfc_deploy/prerequisites.rs
- Ensure all local file links use relative paths from root directory
- All relative links now correctly reference files without parent directory traversal

* docs: fix grammar, links, inconsistencies, and heading levels

- Fix grammar error: 'If you are have troubles' -> 'If you have troubles'
- Fix broken GitHub Issues link in System Requirements table
- Update outdated 'Advanced topics' reference to 'Additional user actions'
- Fix timing inconsistency: align '--parallel' timing with detailed sequence (~5 min to ~3 min)
- Fix Yugabyte note: change 'shared by all SPs' to 'one per SP' and update to yugabyte-1
- Fix heading levels: change running/stop/(re)start from ### to #### under Lifecycle Overview
- Fix typos: 'Regenisis' -> 'Regenesis', improve capitalization
- Fix formatting: remove extra blank line after --force option
- Keep latest symlink references (feature documented in code)

* docs: update architecture requirement to reflect macOS/ARM support

- Change from 'x86 Architecture' requirement to 'Architecture' supporting both x86 and ARM64
- Update text to reflect that system automatically selects appropriate binaries
- Reflects changes from PR #32 which added ARM64/Apple Silicon support

* docs: refine dependency repository management section

- Rename 'Repository Management' to 'Dependency Repository Management'
- Rename 'Required Repositories' to 'Required Dependent Repositories'
- Rename 'Version Strategy' to 'Dependent Version Strategy'
- Simplify version strategy explanation
- Rename 'Using Local Repositories' to 'Using Local Dependency Repositories'
- Add note about using same foc-devnet commit when sharing config
- Clarify reproducible builds use 'tags or commits' not just 'commits'

* refactor: remove unused CLI flags for directory paths

Remove --output-dir, --volumes-dir, and --run-dir flags as they are
either unused or should not be user-configurable. The system now always
uses fixed default paths:

- ~/.foc-devnet/bin/ for build outputs
- ~/.foc-devnet/docker-volumes/<run-id>/ for Docker volumes
- ~/.foc-devnet/run/<run-id>/ for run-specific data

This simplifies the CLI interface and ensures consistent behavior.

* style: fix rustfmt formatting issues

- Format match arms on single lines where appropriate
- Format function call on single line
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: 🎉 Done

Development

Successfully merging this pull request may close these issues.

Document for team adoption and maintenance Run with Local/Branch Versions of Components Basic DevNet with End-to-End Deal + Retrieval

6 participants