diff --git a/.env b/.env index 0768485..c124671 100644 --- a/.env +++ b/.env @@ -1,13 +1,13 @@ # Smelt Service Images # # Override these to use different registries, images, or tags. -# Example: PIRI_IMAGE=ghcr.io/storacha/piri:v1.2.3 +# Example: PIRI_IMAGE=ghcr.io/fil-forge/piri:v1.2.3 # # These variables are automatically loaded by Docker Compose when running # from the project root directory. -# Storacha services +# Forge services #PIRI_IMAGE= #DELEGATOR_IMAGE= #INDEXER_IMAGE= @@ -15,7 +15,7 @@ #SIGNER_IMAGE= #UPLOAD_IMAGE= -# Storacha Client +# Forge Client #GUPPY_IMAGE= # Infrastructure diff --git a/CLAUDE.md b/CLAUDE.md index 0f70b3e..7d774fa 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1,10 +1,10 @@ -# Smelt - Local Development Environment for Storacha +# Smelt - Local Development Environment for Forge This document provides context for AI-assisted development with Claude Code. It describes the project structure, key concepts, and common operations needed to work effectively with this codebase. ## Project Overview -Smelt orchestrates a complete Storacha network on a single machine using Docker Compose. The environment includes 10+ services: blockchain, storage nodes, indexing, upload coordination, and a CLI client. Its purpose is straightforward: let developers test changes locally without deploying to production or coordinating with others. +Smelt orchestrates a complete Forge network on a single machine using Docker Compose. The environment includes 10+ services: blockchain, storage nodes, indexing, upload coordination, and a CLI client. Its purpose is straightforward: let developers test changes locally without deploying to production or coordinating with others. The name comes from metallurgy (extracting metal from ore), not ichthyology (a small fish). The metaphor is apt; the reality is Docker containers. @@ -12,7 +12,7 @@ The name comes from metallurgy (extracting metal from ore), not ichthyology (a s Understanding these concepts will save considerable debugging time. -### Storacha +### Forge A decentralized storage network where data is stored across multiple providers with cryptographic verification. Content is addressed by CID (Content Identifier), and storage providers prove they actually hold the data they claim to hold. @@ -157,7 +157,7 @@ dlv connect localhost:2345 # or VS Code "Connect to server" / GoLand "Go Remote" ``` -**IDE source mapping for sprue**: remote path `/go/src/sprue` maps to your local sprue checkout (e.g. `~/workspace/src/github.com/storacha/sprue`). +**IDE source mapping for sprue**: remote path `/go/src/sprue` maps to your local sprue checkout (e.g. `~/workspace/src/github.com/fil-forge/sprue`). To test a locally-built dev image instead of the published `:main-dev`: @@ -368,7 +368,7 @@ Each system in `systems//` is self-contained and can theoretically run sta ### Network Topology -All services connect to a shared `storacha-network` Docker network. Service names are DNS-resolvable within the network (e.g., `http://piri:3000` from upload service). +All services connect to a shared `forge-network` Docker network. Service names are DNS-resolvable within the network (e.g., `http://piri:3000` from upload service). ### Key Generation @@ -421,12 +421,12 @@ The capability string must match exactly. `space/blob/add` is not `blob/add`. Ch | Repository | Description | |------------|-------------| -| `storacha/piri` | Storage node implementation | -| `storacha/guppy` | CLI client | -| `storacha/indexing-service` | Indexer service | -| `storacha/delegator` | Delegation service | -| `storacha/go-ucanto` | UCAN implementation in Go | -| `storacha/specs` | Protocol specifications | +| `fil-forge/piri` | Storage node implementation | +| `fil-forge/guppy` | CLI client | +| `fil-forge/indexing-service` | Indexer service | +| `fil-forge/delegator` | Delegation service | +| `fil-forge/go-ucanto` | UCAN implementation in Go | +| `fil-forge/specs` | Protocol specifications | ## Configurable Service Images @@ -434,7 +434,7 @@ Service images are configurable via environment variables, with defaults in `.en ```bash # Override one image -PIRI_IMAGE=ghcr.io/storacha/piri:v1.2.3 make up +PIRI_IMAGE=ghcr.io/fil-forge/piri:v1.2.3 make up # Override several at once PIRI_IMAGE=myregistry/piri:test GUPPY_IMAGE=myregistry/guppy:test make up diff --git a/Makefile b/Makefile index cd0bbf5..135bddc 100644 --- a/Makefile +++ b/Makefile @@ -8,7 +8,7 @@ YES ?= 0 # Default target - show help help: - @echo "Storacha Compose - Local Development Environment" + @echo "Forge Compose - Local Development Environment" @echo "" @echo "Quick Start:" @echo " make up Start the network (initializes if needed)" diff --git a/README.md b/README.md index bce5d5c..227a87f 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ # Smelt ⚗️ -_The Smelter_: A complete Storacha network running on your laptop. Upload your first file in under five minutes. +_The Smelter_: A complete Forge network running on your laptop. Upload your first file in under five minutes. -Smelt is a Docker Compose environment that runs every service in the Storacha distributed storage network locally. It exists so you can test changes, debug integrations, and develop features without deploying anything to production—or waiting for anyone else. +Smelt is a Docker Compose environment that runs every service in the Forge distributed storage network locally. It exists so you can test changes, debug integrations, and develop features without deploying anything to production—or waiting for anyone else. ## Quick Start @@ -16,7 +16,7 @@ Smelt is a Docker Compose environment that runs every service in the Storacha di ### Start the Network ```bash -git clone https://github.com/storacha/smelt.git +git clone https://github.com/fil-forge/smelt.git cd smelt make up ``` @@ -46,12 +46,12 @@ guppy login your@email.com export SPACE=$(guppy space generate) # Add a source then upload the space -echo "Hello Storacha" > /tmp/hello.txt +echo "Hello Forge" > /tmp/hello.txt guppy upload source add "$SPACE" /tmp/hello.txt guppy upload "$SPACE" ``` -You now have content stored on your local Storacha network, complete with blockchain proofs and content indexing. +You now have content stored on your local Forge network, complete with blockchain proofs and content indexing. ## What's Running diff --git a/cmd/smelt/cmd/generate.go b/cmd/smelt/cmd/generate.go index e7c75cc..6f49662 100644 --- a/cmd/smelt/cmd/generate.go +++ b/cmd/smelt/cmd/generate.go @@ -4,7 +4,7 @@ import ( "fmt" "github.com/spf13/cobra" - "github.com/storacha/smelt/pkg/generate" + "github.com/fil-forge/smelt/pkg/generate" ) var generateCmd = &cobra.Command{ diff --git a/cmd/smelt/cmd/root.go b/cmd/smelt/cmd/root.go index 87f243a..5d11174 100644 --- a/cmd/smelt/cmd/root.go +++ b/cmd/smelt/cmd/root.go @@ -4,7 +4,7 @@ import "github.com/spf13/cobra" var rootCmd = &cobra.Command{ Use: "smelt", - Short: "Storacha local development environment manager", + Short: "Forge local development environment manager", } func Execute() error { diff --git a/cmd/smelt/cmd/snapshot.go b/cmd/smelt/cmd/snapshot.go index bf15e73..a8afcb6 100644 --- a/cmd/smelt/cmd/snapshot.go +++ b/cmd/smelt/cmd/snapshot.go @@ -7,7 +7,7 @@ import ( "time" "github.com/spf13/cobra" - "github.com/storacha/smelt/pkg/snapshot" + "github.com/fil-forge/smelt/pkg/snapshot" ) var snapshotCmd = &cobra.Command{ diff --git a/cmd/smelt/main.go b/cmd/smelt/main.go index 5499c35..0a45910 100644 --- a/cmd/smelt/main.go +++ b/cmd/smelt/main.go @@ -4,7 +4,7 @@ import ( "fmt" "os" - "github.com/storacha/smelt/cmd/smelt/cmd" + "github.com/fil-forge/smelt/cmd/smelt/cmd" ) func main() { diff --git a/compose.yml b/compose.yml index b4e878d..57f6588 100644 --- a/compose.yml +++ b/compose.yml @@ -1,4 +1,4 @@ -# Storacha Compose - Local Development Environment +# Forge Compose - Local Development Environment # # This is the root compose file that includes all system components. # Run with: docker compose up -d @@ -6,7 +6,7 @@ # Individual systems can be run standalone from their directories. # Example: cd systems/blockchain && docker compose up -d # -# Note: The storacha-network must be created before starting. +# Note: The forge-network must be created before starting. # Run `make init` or `./scripts/init.sh` first. # Pin project name so docker volume names (e.g. `smelt_piri-0-data`) are @@ -26,7 +26,7 @@ include: - path: systems/guppy/compose.yml networks: - storacha-network: + forge-network: # `make up` uses the shared external network (created by # `make init`) so that `cd systems/X && docker compose up` can # drop into the same network for standalone per-system runs. diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index 923ffd3..47e640a 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -2,7 +2,7 @@ ## Start Here -Storacha is a decentralized storage network where data is stored across multiple providers with cryptographic verification. Unlike traditional cloud storage, content is addressed by its cryptographic hash (CID), and storage providers must prove they actually hold the data they claim to hold. +Forge is a decentralized storage network where data is stored across multiple providers with cryptographic verification. Unlike traditional cloud storage, content is addressed by its cryptographic hash (CID), and storage providers must prove they actually hold the data they claim to hold. **Why so many services?** Each service has a specific responsibility. The storage node (Piri) stores blobs. The indexer tracks where content lives. The delegator manages authorization. The signing service handles blockchain transactions. This separation of concerns allows each component to be developed, tested, and scaled independently. @@ -87,7 +87,7 @@ When any piri node declares `db: postgres` or `blob: s3` in `smelt.yml`, the gen **Role**: Local Filecoin-compatible EVM blockchain for PDP (Provable Data Possession) contracts. -**Image**: `ghcr.io/storacha/filecoin-localdev:` (default pinned in `.env`). +**Image**: `ghcr.io/fil-forge/filecoin-localdev:` (default pinned in `.env`). **What it does**: - Runs Anvil (Foundry's local Ethereum node) with 3-second block times @@ -158,7 +158,7 @@ were working with. ### 4. Indexer Service - Container port 80 (host 15050) -**Role**: Storacha's caching layer for content claims - sits between clients and IPNI. +**Role**: Forge's caching layer for content claims - sits between clients and IPNI. **Build context**: `../indexing-service` @@ -245,7 +245,7 @@ pkg/indexerclient/client.go → UCAN client for Indexer communication (assert/in ### 6. Piri - Container port 3000, host 15100+N -**Role**: Storage node(s) implementing the Storacha storage protocol with PDP proofs. Smelt runs one or more piri nodes based on `smelt.yml`; each is a separate service (`piri-0`, `piri-1`, ..., up to `piri-8`) with its own key, wallet, data volume, and on-chain provider registration. Host port is `15100 + N` where N is the node index. +**Role**: Storage node(s) implementing the Forge storage protocol with PDP proofs. Smelt runs one or more piri nodes based on `smelt.yml`; each is a separate service (`piri-0`, `piri-1`, ..., up to `piri-8`) with its own key, wallet, data volume, and on-chain provider registration. Host port is `15100 + N` where N is the node index. **Build context**: `../piri` @@ -315,7 +315,7 @@ Both services are only emitted into `generated/compose/piri.yml` when at least o ### 7. Guppy - CLI Client -**Role**: Command-line client for uploading and retrieving content from Storacha. +**Role**: Command-line client for uploading and retrieving content from Forge. **Build context**: `../guppy` diff --git a/docs/EXTENDING.md b/docs/EXTENDING.md index f49ced8..5f980ee 100644 --- a/docs/EXTENDING.md +++ b/docs/EXTENDING.md @@ -58,7 +58,7 @@ services: condition: service_healthy restart: unless-stopped networks: - - storacha-network + - forge-network volumes: my-service-data: @@ -95,7 +95,7 @@ Order matters only insofar as it affects readability. Docker Compose resolves de ### Network Connectivity -All services connect to `storacha-network`, an external Docker network created during `make init`. This provides: +All services connect to `forge-network`, an external Docker network created during `make init`. This provides: - **DNS resolution**: Service names are resolvable as hostnames. From any container, `http://piri:3000` reaches piri. - **Isolation**: Only services on this network can communicate. Your host machine accesses services through published ports. @@ -224,7 +224,7 @@ services: - ./toxiproxy.json:/config/toxiproxy.json:ro command: ["-config", "/config/toxiproxy.json"] networks: - - storacha-network + - forge-network ``` **toxiproxy.json**: @@ -404,7 +404,7 @@ If you're developing a service (piri, guppy, indexer) and want to test local cha ```bash # In piri repository -docker build -t forreststoracha/piri:dev . +docker build -t piri:dev . # Or use docker compose build if piri's compose.yml has a build context ``` @@ -430,10 +430,10 @@ cd systems/common && docker compose up -d cd systems/indexing && docker compose up -d ``` -Note that most systems declare `external: true` for `storacha-network`, so you must create it first: +Note that most systems declare `external: true` for `forge-network`, so you must create it first: ```bash -docker network create storacha-network +docker network create forge-network ``` Or run `make init` once to handle all setup. @@ -587,7 +587,7 @@ docker compose exec guppy curl -v http://piri-0:3000/ docker compose exec guppy nslookup piri-0 # List containers on the network -docker network inspect storacha-network --format '{{range .Containers}}{{.Name}} {{end}}' +docker network inspect forge-network --format '{{range .Containers}}{{.Name}} {{end}}' ``` ### Resetting Individual Services diff --git a/docs/GETTING_STARTED.md b/docs/GETTING_STARTED.md index d4324b7..5c63b2d 100644 --- a/docs/GETTING_STARTED.md +++ b/docs/GETTING_STARTED.md @@ -1,6 +1,6 @@ # Getting Started with Smelt -This guide walks you through setting up Smelt—a complete Storacha network running on your laptop—from first clone to first upload. It explains what happens at each step, because developers who understand their tools make fewer trips to Stack Overflow. +This guide walks you through setting up Smelt—a complete Forge network running on your laptop—from first clone to first upload. It explains what happens at each step, because developers who understand their tools make fewer trips to Stack Overflow. --- @@ -93,7 +93,7 @@ Windows (including WSL2) is not a supported development host. Clone the repository and enter the directory: ```bash -git clone https://github.com/storacha/smelt.git +git clone https://github.com/fil-forge/smelt.git cd smelt ``` @@ -204,10 +204,10 @@ This proof enables egress tracking functionality through the delegator. #### Step 6: Create Docker Network -Finally, the script creates the `storacha-network` Docker network: +Finally, the script creates the `forge-network` Docker network: ```bash -docker network create storacha-network +docker network create forge-network ``` All services attach to this network, enabling them to reach each other by container name (e.g., `http://piri:3000` from within the upload service). @@ -367,7 +367,7 @@ more files or directories as *sources* of a space, then `guppy upload ```bash # Create some test data (min 1 KiB; use randdir for something realistic) -echo "Hello Storacha" > /tmp/hello.txt +echo "Hello Forge" > /tmp/hello.txt # Register the file as a source of the space guppy upload source add "$SPACE" /tmp/hello.txt @@ -435,7 +435,7 @@ Replace `bafybei...` with the actual CID from your upload. ```bash cat /tmp/retrieved.txt -# Should output: Hello Storacha +# Should output: Hello Forge ``` --- diff --git a/docs/MULTI_PIRI.md b/docs/MULTI_PIRI.md index 11f5beb..a6d316f 100644 --- a/docs/MULTI_PIRI.md +++ b/docs/MULTI_PIRI.md @@ -4,7 +4,7 @@ Smelt supports running N piri storage nodes from a single declarative manifest. ## Objective -The Storacha network is designed around multiple storage providers. Testing with a single piri node leaves important behaviors unverified — how the upload service routes to multiple providers, how indexing works when content is spread across nodes, and how the system behaves under provider heterogeneity (different storage backends, different versions). +The Forge network is designed around multiple storage providers. Testing with a single piri node leaves important behaviors unverified — how the upload service routes to multiple providers, how indexing works when content is spread across nodes, and how the system behaves under provider heterogeneity (different storage backends, different versions). Multi-piri support lets developers: diff --git a/docs/SNAPSHOTS.md b/docs/SNAPSHOTS.md index df583e5..f9ed55a 100644 --- a/docs/SNAPSHOTS.md +++ b/docs/SNAPSHOTS.md @@ -167,7 +167,7 @@ into the Go module via `//go:embed`, so consumers that import smelt as a dependency can reach them without knowing any filesystem paths: ```go -import "github.com/storacha/smelt/pkg/stack" +import "github.com/fil-forge/smelt/pkg/stack" func TestFromExternalRepo(t *testing.T) { s := stack.MustNewStack(t, @@ -257,7 +257,7 @@ func TestMain(m *testing.M) { `CleanupLeaked` removes every container and volume whose name starts with `smeltery-` (the compose project prefix used by `NewStack`). It -doesn't touch the shared `storacha-network` or anything outside that +doesn't touch the shared `forge-network` or anything outside that namespace. Safe to run on a machine where unrelated docker projects live; not safe when two pkg/stack-using test suites run concurrently (the sweeper from one will nuke the other's live stacks). @@ -355,7 +355,7 @@ compose config and reports two kinds of drift independently: ``` WARNING: images differ from snapshot: - piri-0: tag ghcr.io/storacha/piri:main → ghcr.io/storacha/piri:test-build + piri-0: tag ghcr.io/fil-forge/piri:main → ghcr.io/fil-forge/piri:test-build blockchain: digest drift at filecoin-localdev:local (sha256:83bfc639… → sha256:a1b2c3d4…) ``` diff --git a/docs/TROUBLESHOOTING.md b/docs/TROUBLESHOOTING.md index 130418e..cdb967d 100644 --- a/docs/TROUBLESHOOTING.md +++ b/docs/TROUBLESHOOTING.md @@ -74,7 +74,7 @@ download from docker.com. docker ps # Check network exists -docker network ls | grep storacha +docker network ls | grep forge # Check keys exist ls generated/keys/ @@ -563,13 +563,13 @@ make nuke && make up **Diagnostic**: ```bash # Check Docker network exists -docker network ls | grep storacha +docker network ls | grep forge # Should show: -# storacha-network bridge local +# forge-network bridge local # Check services are on the network -docker network inspect storacha-network +docker network inspect forge-network ``` **Solution**: @@ -746,7 +746,7 @@ make fresh ### Where to Get Help -- **File an issue**: [github.com/storacha/smelt/issues](https://github.com/storacha/smelt/issues) +- **File an issue**: [github.com/fil-forge/smelt/issues](https://github.com/fil-forge/smelt/issues) - **Include in your issue**: - Output of `make status` - Relevant service logs (`docker compose logs `) @@ -805,7 +805,7 @@ curl -s http://localhost:15030/healthcheck ```bash # Check Docker network -docker network inspect storacha-network +docker network inspect forge-network # Check disk space docker system df diff --git a/embed.go b/embed.go index 31adbf4..d03d725 100644 --- a/embed.go +++ b/embed.go @@ -1,4 +1,4 @@ -// Package smelt provides embedded files for the Storacha local development environment. +// Package smelt provides embedded files for the Forge local development environment. package smelt import "embed" diff --git a/go.mod b/go.mod index c39e1d1..307a167 100644 --- a/go.mod +++ b/go.mod @@ -1,13 +1,13 @@ -module github.com/storacha/smelt +module github.com/fil-forge/smelt go 1.25.5 require ( github.com/docker/docker v28.5.2+incompatible + github.com/fil-forge/go-ucanto v0.0.0-20260507172450-5cb5d073f8ab github.com/google/uuid v1.6.0 github.com/lib/pq v0.0.0-20150723085316-0dad96c0b94f github.com/spf13/cobra v1.10.2 - github.com/storacha/go-ucanto v0.7.2 github.com/testcontainers/testcontainers-go v0.42.0 github.com/testcontainers/testcontainers-go/modules/compose v0.42.0 golang.org/x/sync v0.20.0 diff --git a/go.sum b/go.sum index 77795f4..4d4aea2 100644 --- a/go.sum +++ b/go.sum @@ -188,6 +188,8 @@ github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7 github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= +github.com/fil-forge/go-ucanto v0.0.0-20260507172450-5cb5d073f8ab h1:2J2cDThqTKP6/0k3SfdlSxfyPa3aLqjTYnmvbEcryfg= +github.com/fil-forge/go-ucanto v0.0.0-20260507172450-5cb5d073f8ab/go.mod h1:lZF3UXZ2hGLKYmXdquG50JqI9pRlUrV6lubGtgOYfwc= github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= github.com/fsnotify/fsevents v0.2.0 h1:BRlvlqjvNTfogHfeBOFvSC9N0Ddy+wzQCQukyoD7o/c= @@ -695,8 +697,6 @@ github.com/spf13/pflag v1.0.9/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An github.com/spf13/pflag v1.0.10 h1:4EBh2KAYBwaONj6b2Ye1GiHfwjqyROoF4RwYO+vPwFk= github.com/spf13/pflag v1.0.10/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spf13/viper v1.8.1/go.mod h1:o0Pch8wJ9BVSWGQMbra6iw0oQ5oktSIBaujf1rJH9Ns= -github.com/storacha/go-ucanto v0.7.2 h1:sLg+swDM/6VEcrb9VOik3hP8ek3NvqqKWiZRmsva5X0= -github.com/storacha/go-ucanto v0.7.2/go.mod h1:DZlWyzuSkXk3phAuJpGDyhxYWpJogW1RFqp/VfldT64= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.5.3 h1:jmXUvGomnU1o3W/V5h2VEradbpJDwGrzugQQvL0POH4= github.com/stretchr/objx v0.5.3/go.mod h1:rDQraq+vQZU7Fde9LOZLr8Tax6zZvy4kuNKF+QYS+U0= diff --git a/pkg/clients/guppy/container.go b/pkg/clients/guppy/container.go index eb82c1d..24842dc 100644 --- a/pkg/clients/guppy/container.go +++ b/pkg/clients/guppy/container.go @@ -9,7 +9,7 @@ import ( "testing" "time" - "github.com/storacha/smelt/pkg/stack" + "github.com/fil-forge/smelt/pkg/stack" "golang.org/x/sync/errgroup" ) diff --git a/pkg/clients/guppy/exec_doer.go b/pkg/clients/guppy/exec_doer.go index a3b72f1..46847f4 100644 --- a/pkg/clients/guppy/exec_doer.go +++ b/pkg/clients/guppy/exec_doer.go @@ -11,7 +11,7 @@ import ( "strconv" "strings" - "github.com/storacha/smelt/pkg/stack" + "github.com/fil-forge/smelt/pkg/stack" ) // ExecDoer is an http.Client-shaped HTTP doer that issues requests via `curl` diff --git a/pkg/clients/guppy/login_validation.go b/pkg/clients/guppy/login_validation.go index a54f4cf..539404e 100644 --- a/pkg/clients/guppy/login_validation.go +++ b/pkg/clients/guppy/login_validation.go @@ -8,7 +8,7 @@ import ( "strings" "time" - "github.com/storacha/smelt/pkg/clients/smtp4dev" + "github.com/fil-forge/smelt/pkg/clients/smtp4dev" ) // Clicker issues the POST against the validation link pulled out of the email diff --git a/pkg/generate/compose.go b/pkg/generate/compose.go index d3908e1..55ad00f 100644 --- a/pkg/generate/compose.go +++ b/pkg/generate/compose.go @@ -5,7 +5,7 @@ import ( "fmt" "strings" - "github.com/storacha/smelt/pkg/manifest" + "github.com/fil-forge/smelt/pkg/manifest" "gopkg.in/yaml.v3" ) @@ -67,7 +67,7 @@ func GeneratePiriCompose(nodes []manifest.ResolvedPiriNode) ([]byte, error) { } func buildPiriService(node manifest.ResolvedPiriNode) ComposeService { - image := "${PIRI_IMAGE:-ghcr.io/storacha/piri:main}" + image := "${PIRI_IMAGE:-ghcr.io/fil-forge/piri:main}" if node.Image != "" { image = node.Image } @@ -133,7 +133,7 @@ func buildPiriService(node manifest.ResolvedPiriNode) ComposeService { StartPeriod: "180s", }, Restart: "unless-stopped", - Networks: []string{"storacha-network"}, + Networks: []string{"forge-network"}, } } diff --git a/pkg/generate/generate.go b/pkg/generate/generate.go index 4e13ff4..6517055 100644 --- a/pkg/generate/generate.go +++ b/pkg/generate/generate.go @@ -5,7 +5,7 @@ import ( "os" "path/filepath" - "github.com/storacha/smelt/pkg/manifest" + "github.com/fil-forge/smelt/pkg/manifest" ) // Options controls the generation process. diff --git a/pkg/generate/generate_test.go b/pkg/generate/generate_test.go index 781feaa..a669ed1 100644 --- a/pkg/generate/generate_test.go +++ b/pkg/generate/generate_test.go @@ -6,7 +6,7 @@ import ( "strings" "testing" - "github.com/storacha/smelt/pkg/manifest" + "github.com/fil-forge/smelt/pkg/manifest" "gopkg.in/yaml.v3" ) diff --git a/pkg/generate/keys.go b/pkg/generate/keys.go index 0cdca6c..d8768ef 100644 --- a/pkg/generate/keys.go +++ b/pkg/generate/keys.go @@ -12,7 +12,7 @@ import ( "path/filepath" "strings" - "github.com/storacha/smelt/pkg/manifest" + "github.com/fil-forge/smelt/pkg/manifest" ) // nonPiriServiceKeys is the list of services that need Ed25519 keys (excluding piri). diff --git a/pkg/manifest/manifest_test.go b/pkg/manifest/manifest_test.go index 9ded62c..afac988 100644 --- a/pkg/manifest/manifest_test.go +++ b/pkg/manifest/manifest_test.go @@ -53,7 +53,7 @@ piri: db: postgres blob: s3 - name: piri-2 - image: ghcr.io/storacha/piri:test + image: ghcr.io/fil-forge/piri:test storage: db: postgres `) @@ -83,7 +83,7 @@ piri: if nodes[2].Storage.DB != DBPostgres || nodes[2].Storage.Blob != BlobFS { t.Errorf("piri-2: expected postgres/filesystem, got %s/%s", nodes[2].Storage.DB, nodes[2].Storage.Blob) } - if nodes[2].Image != "ghcr.io/storacha/piri:test" { + if nodes[2].Image != "ghcr.io/fil-forge/piri:test" { t.Errorf("piri-2: expected image override, got %q", nodes[2].Image) } } diff --git a/pkg/snapshot/descriptor.go b/pkg/snapshot/descriptor.go index e0b9583..b94837d 100644 --- a/pkg/snapshot/descriptor.go +++ b/pkg/snapshot/descriptor.go @@ -39,10 +39,10 @@ type Descriptor struct { // ImageInfo is the per-service image identity captured in a snapshot. type ImageInfo struct { // Tag is the resolved image reference from `docker compose config`, - // e.g. "ghcr.io/storacha/piri:main" or "filecoin-localdev:local". + // e.g. "ghcr.io/fil-forge/piri:main" or "filecoin-localdev:local". Tag string `json:"tag"` // Digest is the immutable content identifier: a RepoDigest - // ("ghcr.io/storacha/piri@sha256:…") when the image came from a + // ("ghcr.io/fil-forge/piri@sha256:…") when the image came from a // registry, or the docker image Id ("sha256:…") for locally-built // images that have no RepoDigest yet. Digest string `json:"digest,omitempty"` diff --git a/pkg/snapshot/snapshot.go b/pkg/snapshot/snapshot.go index 6f949fa..b07412b 100644 --- a/pkg/snapshot/snapshot.go +++ b/pkg/snapshot/snapshot.go @@ -23,8 +23,8 @@ import ( "strings" "time" - "github.com/storacha/smelt/pkg/generate" - "github.com/storacha/smelt/pkg/manifest" + "github.com/fil-forge/smelt/pkg/generate" + "github.com/fil-forge/smelt/pkg/manifest" ) // Fixed subdirectories written inside every snapshot. diff --git a/pkg/snapshot/volumes.go b/pkg/snapshot/volumes.go index 3df0410..b2e6b08 100644 --- a/pkg/snapshot/volumes.go +++ b/pkg/snapshot/volumes.go @@ -7,7 +7,7 @@ import ( "os/exec" "path/filepath" - "github.com/storacha/smelt/pkg/manifest" + "github.com/fil-forge/smelt/pkg/manifest" ) // busyboxImage is the helper used to tar/untar through docker volumes. diff --git a/pkg/stack/cleanup.go b/pkg/stack/cleanup.go index 2789579..828f52c 100644 --- a/pkg/stack/cleanup.go +++ b/pkg/stack/cleanup.go @@ -60,7 +60,7 @@ func dumpProjectLogs(t *testing.T, projectName string) { // // Only removes resources whose names start with "smeltery-" (the compose // project prefix used by NewStack). Does not touch the shared -// `storacha-network` since it's reused across test runs, and does not +// `forge-network` since it's reused across test runs, and does not // interfere with a parallel test suite running against the same host — // unless that suite ALSO uses pkg/stack and happens to be live when // CleanupLeaked runs. For single-suite test machines this is safe. diff --git a/pkg/stack/embedded.go b/pkg/stack/embedded.go index f6b7940..85f89e7 100644 --- a/pkg/stack/embedded.go +++ b/pkg/stack/embedded.go @@ -7,7 +7,7 @@ import ( "path/filepath" "sort" - "github.com/storacha/smelt" + "github.com/fil-forge/smelt" ) // embeddedSnapshotsRoot is the path within smelt.EmbeddedFiles under diff --git a/pkg/stack/extract.go b/pkg/stack/extract.go index 74828f1..e4bb177 100644 --- a/pkg/stack/extract.go +++ b/pkg/stack/extract.go @@ -6,7 +6,7 @@ import ( "path/filepath" "testing" - "github.com/storacha/smelt" + "github.com/fil-forge/smelt" ) // extractFiles extracts all embedded files to a temp directory, diff --git a/pkg/stack/options.go b/pkg/stack/options.go index 7eea941..cde9f45 100644 --- a/pkg/stack/options.go +++ b/pkg/stack/options.go @@ -4,7 +4,7 @@ import ( "fmt" "time" - "github.com/storacha/smelt/pkg/manifest" + "github.com/fil-forge/smelt/pkg/manifest" ) // PiriNodeConfig configures a single piri node in the test stack. diff --git a/pkg/stack/proofs.go b/pkg/stack/proofs.go index c0e684f..585e8e0 100644 --- a/pkg/stack/proofs.go +++ b/pkg/stack/proofs.go @@ -8,13 +8,13 @@ import ( "os" "path/filepath" - "github.com/storacha/go-ucanto/core/delegation" - "github.com/storacha/go-ucanto/did" - "github.com/storacha/go-ucanto/principal" - ed25519 "github.com/storacha/go-ucanto/principal/ed25519/signer" - "github.com/storacha/go-ucanto/principal/signer" - "github.com/storacha/go-ucanto/ucan" - "github.com/storacha/smelt/pkg/manifest" + "github.com/fil-forge/go-ucanto/core/delegation" + "github.com/fil-forge/go-ucanto/did" + "github.com/fil-forge/go-ucanto/principal" + ed25519 "github.com/fil-forge/go-ucanto/principal/ed25519/signer" + "github.com/fil-forge/go-ucanto/principal/signer" + "github.com/fil-forge/go-ucanto/ucan" + "github.com/fil-forge/smelt/pkg/manifest" ) // proofSpec defines a UCAN delegation proof to generate. diff --git a/pkg/stack/snapshot.go b/pkg/stack/snapshot.go index 4fd3654..fff5593 100644 --- a/pkg/stack/snapshot.go +++ b/pkg/stack/snapshot.go @@ -6,8 +6,8 @@ import ( "os" "path/filepath" - "github.com/storacha/smelt/pkg/manifest" - "github.com/storacha/smelt/pkg/snapshot" + "github.com/fil-forge/smelt/pkg/manifest" + "github.com/fil-forge/smelt/pkg/snapshot" ) // resolveSnapshotDir resolves the user-provided snapshot path to an diff --git a/pkg/stack/stack.go b/pkg/stack/stack.go index b643119..c022d6f 100644 --- a/pkg/stack/stack.go +++ b/pkg/stack/stack.go @@ -1,4 +1,4 @@ -// Package stack provides a simple API for spinning up the complete Storacha +// Package stack provides a simple API for spinning up the complete Forge // network in Go tests using testcontainers-go. // // Example usage: @@ -30,12 +30,12 @@ import ( "github.com/testcontainers/testcontainers-go/modules/compose" "github.com/testcontainers/testcontainers-go/wait" - "github.com/storacha/smelt/pkg/generate" - "github.com/storacha/smelt/pkg/manifest" - "github.com/storacha/smelt/pkg/snapshot" + "github.com/fil-forge/smelt/pkg/generate" + "github.com/fil-forge/smelt/pkg/manifest" + "github.com/fil-forge/smelt/pkg/snapshot" ) -// Stack represents a running Storacha network. +// Stack represents a running Forge network. type Stack struct { t *testing.T compose compose.ComposeStack @@ -44,7 +44,7 @@ type Stack struct { piriNodes []manifest.ResolvedPiriNode } -// NewStack creates and starts a complete Storacha network. +// NewStack creates and starts a complete Forge network. // Returns error if startup fails. Cleanup is automatically registered via t.Cleanup(). func NewStack(ctx context.Context, t *testing.T, opts ...Option) (*Stack, error) { cfg := defaultConfig() @@ -142,7 +142,7 @@ func NewStack(ctx context.Context, t *testing.T, opts ...Option) (*Stack, error) // - every host-side port binding becomes ephemeral (Docker assigns // a random port per stack, so parallel tests don't collide on // fixed 15XXX numbers) - // - the storacha-network declaration becomes non-external, so each + // - the forge-network declaration becomes non-external, so each // stack gets its own project-scoped network instead of all // sharing the one `make up` bridge // - sprue's public_url is overridden to the in-network hostname diff --git a/pkg/stack/stack_test.go b/pkg/stack/stack_test.go index 1874d84..5f5fd2d 100644 --- a/pkg/stack/stack_test.go +++ b/pkg/stack/stack_test.go @@ -5,9 +5,9 @@ import ( "path/filepath" "testing" - "github.com/storacha/smelt" - "github.com/storacha/smelt/pkg/generate" - "github.com/storacha/smelt/pkg/manifest" + "github.com/fil-forge/smelt" + "github.com/fil-forge/smelt/pkg/generate" + "github.com/fil-forge/smelt/pkg/manifest" ) func TestExtractFiles(t *testing.T) { diff --git a/pkg/stack/testmode_env.go b/pkg/stack/testmode_env.go index cddb111..03b7e62 100644 --- a/pkg/stack/testmode_env.go +++ b/pkg/stack/testmode_env.go @@ -3,14 +3,14 @@ package stack import ( "fmt" - "github.com/storacha/smelt/pkg/manifest" + "github.com/fil-forge/smelt/pkg/manifest" ) // testModeEnv returns the SMELT_* environment variables pkg/stack sets when // provisioning a stack for SDK tests. They feed the `${VAR:-default}` // interpolations baked into the compose files (see systems/*/compose.yml and // pkg/generate/compose.go), flipping every host-side port mapping to -// ephemeral and marking the storacha-network as non-external. +// ephemeral and marking the forge-network as non-external. // // Setting a port var to just the container-side number (no colon) makes // compose publish on an ephemeral host port; MappedPort on the resulting @@ -19,7 +19,7 @@ import ( func testModeEnv(nodes []manifest.ResolvedPiriNode) map[string]string { env := map[string]string{ // Network: per-project (compose-created) instead of the shared - // external `storacha-network`. Parallel test stacks otherwise + // external `forge-network`. Parallel test stacks otherwise // collide on service DNS names inside the one shared bridge. "SMELT_NETWORK_EXTERNAL": "false", diff --git a/scripts/init.sh b/scripts/init.sh index 562f54d..c95eb86 100755 --- a/scripts/init.sh +++ b/scripts/init.sh @@ -17,7 +17,7 @@ GENERATED_DIR="$PROJECT_DIR/generated" FORCE=${1:-""} echo "========================================" -echo "Storacha Compose - Environment Setup" +echo "Forge Compose - Environment Setup" echo "========================================" echo "" @@ -76,11 +76,11 @@ fi # Step 4: Create Docker network echo "" echo "Step 4: Creating Docker network..." -if docker network inspect storacha-network >/dev/null 2>&1; then - echo " Network 'storacha-network' already exists" +if docker network inspect forge-network >/dev/null 2>&1; then + echo " Network 'forge-network' already exists" else - docker network create storacha-network - echo " Created network 'storacha-network'" + docker network create forge-network + echo " Created network 'forge-network'" fi # Summary diff --git a/systems/blockchain/compose.yml b/systems/blockchain/compose.yml index ada2c64..ac3ac59 100644 --- a/systems/blockchain/compose.yml +++ b/systems/blockchain/compose.yml @@ -5,7 +5,7 @@ services: blockchain: - image: ${BLOCKCHAIN_IMAGE:-ghcr.io/storacha/filecoin-localdev:main} + image: ${BLOCKCHAIN_IMAGE:-ghcr.io/fil-forge/filecoin-localdev:main} # Port mapping is env-var interpolated so pkg/stack can override to # `"8545"` (container-only, ephemeral host port) for parallel SDK # test stacks. `make up` leaves the var unset and gets the fixed @@ -38,4 +38,4 @@ services: start_period: 30s restart: unless-stopped networks: - - storacha-network + - forge-network diff --git a/systems/common/compose.yml b/systems/common/compose.yml index 1f51368..bf43ba3 100644 --- a/systems/common/compose.yml +++ b/systems/common/compose.yml @@ -41,7 +41,7 @@ services: start_period: 10s restart: unless-stopped networks: - - storacha-network + - forge-network # MinIO for S3-compatible storage minio: image: minio/minio:latest @@ -63,14 +63,14 @@ services: start_period: 10s restart: unless-stopped networks: - - storacha-network + - forge-network email: image: rnwood/smtp4dev:v3 ports: - "${SMELT_SMTP_PORT:-15080:25}" - "${SMELT_SMTP_WEB_PORT:-15081:80}" # Web UI / API networks: - - storacha-network + - forge-network volumes: minio-data: diff --git a/systems/delegator/compose.yml b/systems/delegator/compose.yml index 3c0eb73..caa8d57 100644 --- a/systems/delegator/compose.yml +++ b/systems/delegator/compose.yml @@ -5,7 +5,7 @@ services: delegator: - image: ${DELEGATOR_IMAGE:-ghcr.io/storacha/delegator:main} + image: ${DELEGATOR_IMAGE:-ghcr.io/fil-forge/delegator:main} user: "0:0" # Run as root for volume permissions (key files are 600) ports: # Internal port 80 for did:web resolution @@ -29,4 +29,4 @@ services: start_period: 10s restart: unless-stopped networks: - - storacha-network + - forge-network diff --git a/systems/guppy/compose.yml b/systems/guppy/compose.yml index bd6faa6..38c5d93 100644 --- a/systems/guppy/compose.yml +++ b/systems/guppy/compose.yml @@ -4,7 +4,7 @@ services: guppy: - image: ${GUPPY_IMAGE:-ghcr.io/storacha/guppy:main-dev} + image: ${GUPPY_IMAGE:-ghcr.io/fil-forge/guppy:main-dev} volumes: - ./config/guppy-config.toml:/root/.config/guppy/config.toml:ro - guppy-data:/root/.storacha/guppy @@ -17,7 +17,7 @@ services: entrypoint: ["sleep", "infinity"] restart: unless-stopped networks: - - storacha-network + - forge-network volumes: guppy-data: diff --git a/systems/indexing/README.md b/systems/indexing/README.md index 52d331e..2c8853f 100644 --- a/systems/indexing/README.md +++ b/systems/indexing/README.md @@ -12,7 +12,7 @@ InterPlanetary Network Indexer for content discovery. - **ipni** - Content discovery indexer (storetheindex) ### indexer/ -Storacha's content claims caching layer. +Forge's content claims caching layer. - **redis** - Cache backend - **indexer** - Content claims caching and query service diff --git a/systems/indexing/compose.yml b/systems/indexing/compose.yml index 6fe46ea..3d44203 100644 --- a/systems/indexing/compose.yml +++ b/systems/indexing/compose.yml @@ -5,7 +5,7 @@ # # Sub-packages: # - ipni/ - InterPlanetary Network Indexer (content discovery) -# - indexer/ - Storacha indexing service (claims caching) +# - indexer/ - Forge indexing service (claims caching) # # Used by: upload, piri, guppy diff --git a/systems/indexing/indexer/README.md b/systems/indexing/indexer/README.md index 06d7310..0be9678 100644 --- a/systems/indexing/indexer/README.md +++ b/systems/indexing/indexer/README.md @@ -1,6 +1,6 @@ # Indexer Sub-Package -Storacha's content claims caching layer. +Forge's content claims caching layer. ## Services diff --git a/systems/indexing/indexer/compose.yml b/systems/indexing/indexer/compose.yml index bc93f1e..5c46fde 100644 --- a/systems/indexing/indexer/compose.yml +++ b/systems/indexing/indexer/compose.yml @@ -1,4 +1,4 @@ -# Indexer System - Storacha's content claims caching layer +# Indexer System - Forge's content claims caching layer # # Provides caching and query interface for content claims. # Depends on IPNI for content discovery and Redis for caching. @@ -18,11 +18,11 @@ services: start_period: 10s restart: unless-stopped networks: - - storacha-network + - forge-network - # Indexing Service - Storacha's caching layer for content claims + # Indexing Service - Forge's caching layer for content claims indexer: - image: ${INDEXER_IMAGE:-ghcr.io/storacha/indexing-service:main} + image: ${INDEXER_IMAGE:-ghcr.io/fil-forge/indexing-service:main} user: "0:0" # Run as root for volume permissions (key files are 600) ports: - "${SMELT_INDEXER_PORT:-15050:80}" # Host 15050 -> container 80 @@ -51,4 +51,4 @@ services: start_period: 30s restart: unless-stopped networks: - - storacha-network + - forge-network diff --git a/systems/indexing/ipni/compose.yml b/systems/indexing/ipni/compose.yml index 680f59c..8a6979c 100644 --- a/systems/indexing/ipni/compose.yml +++ b/systems/indexing/ipni/compose.yml @@ -1,7 +1,7 @@ # IPNI System - InterPlanetary Network Indexer # # Content discovery indexer using storetheindex. -# Provides content routing for the Storacha network. +# Provides content routing for the Forge network. # # Note: The storetheindex image is distroless with debug variant (has busybox shell). @@ -10,7 +10,7 @@ services: # Uses the same distroless debug image with busybox shell # Runs as root to initialize the data directory, then chowns to nonroot (65532) ipni-init: - image: ${IPNI_IMAGE:-ghcr.io/storacha/storetheindex:main} + image: ${IPNI_IMAGE:-ghcr.io/fil-forge/storetheindex:latest} user: "0:0" entrypoint: ["/busybox/sh", "-c"] command: @@ -28,11 +28,11 @@ services: - ipni-data:/data restart: "no" networks: - - storacha-network + - forge-network # IPNI (storetheindex) - Content discovery indexer ipni: - image: ${IPNI_IMAGE:-ghcr.io/storacha/storetheindex:main} + image: ${IPNI_IMAGE:-ghcr.io/fil-forge/storetheindex:latest} depends_on: ipni-init: condition: service_completed_successfully @@ -60,7 +60,7 @@ services: start_period: 30s restart: unless-stopped networks: - - storacha-network + - forge-network volumes: ipni-data: diff --git a/systems/signing-service/compose.yml b/systems/signing-service/compose.yml index a994328..cbdf984 100644 --- a/systems/signing-service/compose.yml +++ b/systems/signing-service/compose.yml @@ -5,7 +5,7 @@ services: signing-service: - image: ${SIGNER_IMAGE:-ghcr.io/storacha/piri-signing-service:main} + image: ${SIGNER_IMAGE:-ghcr.io/fil-forge/piri-signing-service:main} user: root ports: - "${SMELT_SIGNING_SERVICE_PORT:-15030:7446}" @@ -34,4 +34,4 @@ services: start_period: 10s restart: unless-stopped networks: - - storacha-network + - forge-network diff --git a/systems/stress-tester/cmd/stress/retrieve/burst.go b/systems/stress-tester/cmd/stress/retrieve/burst.go index 57708d7..06f1c36 100644 --- a/systems/stress-tester/cmd/stress/retrieve/burst.go +++ b/systems/stress-tester/cmd/stress/retrieve/burst.go @@ -11,8 +11,8 @@ import ( "github.com/spf13/cobra" "github.com/spf13/viper" - "github.com/storacha/smelt/systems/stress-tester/internal/app" - "github.com/storacha/smelt/systems/stress-tester/internal/config" + "github.com/fil-forge/smelt/systems/stress-tester/internal/app" + "github.com/fil-forge/smelt/systems/stress-tester/internal/config" ) var burstCmd = &cobra.Command{ diff --git a/systems/stress-tester/cmd/stress/retrieve/continuous.go b/systems/stress-tester/cmd/stress/retrieve/continuous.go index 532e6a9..5dab482 100644 --- a/systems/stress-tester/cmd/stress/retrieve/continuous.go +++ b/systems/stress-tester/cmd/stress/retrieve/continuous.go @@ -11,8 +11,8 @@ import ( "github.com/spf13/cobra" "github.com/spf13/viper" - "github.com/storacha/smelt/systems/stress-tester/internal/app" - "github.com/storacha/smelt/systems/stress-tester/internal/config" + "github.com/fil-forge/smelt/systems/stress-tester/internal/app" + "github.com/fil-forge/smelt/systems/stress-tester/internal/config" ) var continuousCmd = &cobra.Command{ diff --git a/systems/stress-tester/cmd/stress/retrieve/retrieve.go b/systems/stress-tester/cmd/stress/retrieve/retrieve.go index 3387597..1997179 100644 --- a/systems/stress-tester/cmd/stress/retrieve/retrieve.go +++ b/systems/stress-tester/cmd/stress/retrieve/retrieve.go @@ -8,7 +8,7 @@ import ( var Cmd = &cobra.Command{ Use: "retrieve", Short: "Retrieval stress testing commands", - Long: `Commands for running retrieval stress tests against the Storacha network.`, + Long: `Commands for running retrieval stress tests against the Forge network.`, } func init() { diff --git a/systems/stress-tester/cmd/stress/retrieve/status.go b/systems/stress-tester/cmd/stress/retrieve/status.go index 28d1635..abae5a5 100644 --- a/systems/stress-tester/cmd/stress/retrieve/status.go +++ b/systems/stress-tester/cmd/stress/retrieve/status.go @@ -6,8 +6,8 @@ import ( "github.com/spf13/cobra" - "github.com/storacha/smelt/systems/stress-tester/internal/config" - "github.com/storacha/smelt/systems/stress-tester/internal/store" + "github.com/fil-forge/smelt/systems/stress-tester/internal/config" + "github.com/fil-forge/smelt/systems/stress-tester/internal/store" ) // formatBytes converts bytes to human-readable format diff --git a/systems/stress-tester/cmd/stress/root.go b/systems/stress-tester/cmd/stress/root.go index 0363dc4..283a806 100644 --- a/systems/stress-tester/cmd/stress/root.go +++ b/systems/stress-tester/cmd/stress/root.go @@ -7,8 +7,8 @@ import ( "github.com/spf13/cobra" "github.com/spf13/viper" - "github.com/storacha/smelt/systems/stress-tester/cmd/stress/retrieve" - "github.com/storacha/smelt/systems/stress-tester/cmd/stress/upload" + "github.com/fil-forge/smelt/systems/stress-tester/cmd/stress/retrieve" + "github.com/fil-forge/smelt/systems/stress-tester/cmd/stress/upload" ) var ( @@ -16,9 +16,9 @@ var ( rootCmd = &cobra.Command{ Use: "stress", - Short: "Stress testing tool for Storacha network", + Short: "Stress testing tool for Forge network", Long: `A stress testing service that performs uploads and retrievals -against the Storacha network, tracking state and metrics. +against the Forge network, tracking state and metrics. Commands are organized by operation type (upload/retrieve) and mode (burst/continuous/chaos). diff --git a/systems/stress-tester/cmd/stress/status.go b/systems/stress-tester/cmd/stress/status.go index a9ec5a5..6ac41ea 100644 --- a/systems/stress-tester/cmd/stress/status.go +++ b/systems/stress-tester/cmd/stress/status.go @@ -6,8 +6,8 @@ import ( "github.com/spf13/cobra" - "github.com/storacha/smelt/systems/stress-tester/internal/config" - "github.com/storacha/smelt/systems/stress-tester/internal/store" + "github.com/fil-forge/smelt/systems/stress-tester/internal/config" + "github.com/fil-forge/smelt/systems/stress-tester/internal/store" ) var statusCmd = &cobra.Command{ diff --git a/systems/stress-tester/cmd/stress/upload/burst.go b/systems/stress-tester/cmd/stress/upload/burst.go index 2274964..3f29194 100644 --- a/systems/stress-tester/cmd/stress/upload/burst.go +++ b/systems/stress-tester/cmd/stress/upload/burst.go @@ -11,8 +11,8 @@ import ( "github.com/spf13/cobra" "github.com/spf13/viper" - "github.com/storacha/smelt/systems/stress-tester/internal/app" - "github.com/storacha/smelt/systems/stress-tester/internal/config" + "github.com/fil-forge/smelt/systems/stress-tester/internal/app" + "github.com/fil-forge/smelt/systems/stress-tester/internal/config" ) var burstCmd = &cobra.Command{ diff --git a/systems/stress-tester/cmd/stress/upload/continuous.go b/systems/stress-tester/cmd/stress/upload/continuous.go index f398fe3..faa3f03 100644 --- a/systems/stress-tester/cmd/stress/upload/continuous.go +++ b/systems/stress-tester/cmd/stress/upload/continuous.go @@ -11,8 +11,8 @@ import ( "github.com/spf13/cobra" "github.com/spf13/viper" - "github.com/storacha/smelt/systems/stress-tester/internal/app" - "github.com/storacha/smelt/systems/stress-tester/internal/config" + "github.com/fil-forge/smelt/systems/stress-tester/internal/app" + "github.com/fil-forge/smelt/systems/stress-tester/internal/config" ) var continuousCmd = &cobra.Command{ diff --git a/systems/stress-tester/cmd/stress/upload/status.go b/systems/stress-tester/cmd/stress/upload/status.go index 310667b..0b9c0bc 100644 --- a/systems/stress-tester/cmd/stress/upload/status.go +++ b/systems/stress-tester/cmd/stress/upload/status.go @@ -6,8 +6,8 @@ import ( "github.com/spf13/cobra" - "github.com/storacha/smelt/systems/stress-tester/internal/config" - "github.com/storacha/smelt/systems/stress-tester/internal/store" + "github.com/fil-forge/smelt/systems/stress-tester/internal/config" + "github.com/fil-forge/smelt/systems/stress-tester/internal/store" ) // formatBytes converts bytes to human-readable format diff --git a/systems/stress-tester/cmd/stress/upload/upload.go b/systems/stress-tester/cmd/stress/upload/upload.go index 133d880..afedb84 100644 --- a/systems/stress-tester/cmd/stress/upload/upload.go +++ b/systems/stress-tester/cmd/stress/upload/upload.go @@ -8,7 +8,7 @@ import ( var Cmd = &cobra.Command{ Use: "upload", Short: "Upload stress testing commands", - Long: `Commands for running upload stress tests against the Storacha network.`, + Long: `Commands for running upload stress tests against the Forge network.`, } func init() { diff --git a/systems/stress-tester/compose.yml b/systems/stress-tester/compose.yml index 0c62def..37d4bd6 100644 --- a/systems/stress-tester/compose.yml +++ b/systems/stress-tester/compose.yml @@ -23,7 +23,7 @@ services: upload: condition: service_healthy networks: - - storacha-network + - forge-network healthcheck: test: ["CMD", "wget", "-q", "--spider", "http://localhost:9091/health"] interval: 10s diff --git a/systems/stress-tester/config/config.yaml b/systems/stress-tester/config/config.yaml index 7adfd70..840b48f 100644 --- a/systems/stress-tester/config/config.yaml +++ b/systems/stress-tester/config/config.yaml @@ -12,7 +12,7 @@ guppy: store: # Path to SQLite database - path: "/home/frrist/workspace/src/github.com/storacha/smelt/systems/stress-tester/stress.db" + path: "/home/frrist/workspace/src/github.com/fil-forge/smelt/systems/stress-tester/stress.db" telemetry: # Port for Prometheus metrics endpoint diff --git a/systems/stress-tester/go.mod b/systems/stress-tester/go.mod index fb3e0a0..300e285 100644 --- a/systems/stress-tester/go.mod +++ b/systems/stress-tester/go.mod @@ -1,4 +1,4 @@ -module github.com/storacha/smelt/systems/stress-tester +module github.com/fil-forge/smelt/systems/stress-tester go 1.24.0 diff --git a/systems/stress-tester/internal/app/app.go b/systems/stress-tester/internal/app/app.go index 0251440..3981f82 100644 --- a/systems/stress-tester/internal/app/app.go +++ b/systems/stress-tester/internal/app/app.go @@ -6,12 +6,12 @@ import ( "log/slog" "time" - "github.com/storacha/smelt/systems/stress-tester/internal/config" - "github.com/storacha/smelt/systems/stress-tester/internal/generator" - "github.com/storacha/smelt/systems/stress-tester/internal/guppy" - "github.com/storacha/smelt/systems/stress-tester/internal/runner" - "github.com/storacha/smelt/systems/stress-tester/internal/store" - "github.com/storacha/smelt/systems/stress-tester/internal/telemetry" + "github.com/fil-forge/smelt/systems/stress-tester/internal/config" + "github.com/fil-forge/smelt/systems/stress-tester/internal/generator" + "github.com/fil-forge/smelt/systems/stress-tester/internal/guppy" + "github.com/fil-forge/smelt/systems/stress-tester/internal/runner" + "github.com/fil-forge/smelt/systems/stress-tester/internal/store" + "github.com/fil-forge/smelt/systems/stress-tester/internal/telemetry" ) // RunUploadBurstApp creates and runs the upload burst stress test diff --git a/systems/stress-tester/internal/runner/retrieve_burst.go b/systems/stress-tester/internal/runner/retrieve_burst.go index e70532b..d71a4e2 100644 --- a/systems/stress-tester/internal/runner/retrieve_burst.go +++ b/systems/stress-tester/internal/runner/retrieve_burst.go @@ -9,10 +9,10 @@ import ( "sync/atomic" "time" - "github.com/storacha/smelt/systems/stress-tester/internal/config" - "github.com/storacha/smelt/systems/stress-tester/internal/guppy" - "github.com/storacha/smelt/systems/stress-tester/internal/store" - "github.com/storacha/smelt/systems/stress-tester/internal/telemetry" + "github.com/fil-forge/smelt/systems/stress-tester/internal/config" + "github.com/fil-forge/smelt/systems/stress-tester/internal/guppy" + "github.com/fil-forge/smelt/systems/stress-tester/internal/store" + "github.com/fil-forge/smelt/systems/stress-tester/internal/telemetry" ) // RetrieveBurstRunner runs a burst of retrievals diff --git a/systems/stress-tester/internal/runner/retrieve_continuous.go b/systems/stress-tester/internal/runner/retrieve_continuous.go index 4b4d762..1f9eb86 100644 --- a/systems/stress-tester/internal/runner/retrieve_continuous.go +++ b/systems/stress-tester/internal/runner/retrieve_continuous.go @@ -9,10 +9,10 @@ import ( "sync/atomic" "time" - "github.com/storacha/smelt/systems/stress-tester/internal/config" - "github.com/storacha/smelt/systems/stress-tester/internal/guppy" - "github.com/storacha/smelt/systems/stress-tester/internal/store" - "github.com/storacha/smelt/systems/stress-tester/internal/telemetry" + "github.com/fil-forge/smelt/systems/stress-tester/internal/config" + "github.com/fil-forge/smelt/systems/stress-tester/internal/guppy" + "github.com/fil-forge/smelt/systems/stress-tester/internal/store" + "github.com/fil-forge/smelt/systems/stress-tester/internal/telemetry" ) // RetrieveContinuousRunner runs continuous retrievals diff --git a/systems/stress-tester/internal/runner/upload_burst.go b/systems/stress-tester/internal/runner/upload_burst.go index 0a106d3..bcd0910 100644 --- a/systems/stress-tester/internal/runner/upload_burst.go +++ b/systems/stress-tester/internal/runner/upload_burst.go @@ -8,11 +8,11 @@ import ( "sync/atomic" "time" - "github.com/storacha/smelt/systems/stress-tester/internal/config" - "github.com/storacha/smelt/systems/stress-tester/internal/generator" - "github.com/storacha/smelt/systems/stress-tester/internal/guppy" - "github.com/storacha/smelt/systems/stress-tester/internal/store" - "github.com/storacha/smelt/systems/stress-tester/internal/telemetry" + "github.com/fil-forge/smelt/systems/stress-tester/internal/config" + "github.com/fil-forge/smelt/systems/stress-tester/internal/generator" + "github.com/fil-forge/smelt/systems/stress-tester/internal/guppy" + "github.com/fil-forge/smelt/systems/stress-tester/internal/store" + "github.com/fil-forge/smelt/systems/stress-tester/internal/telemetry" ) // UploadBurstRunner runs a burst of uploads diff --git a/systems/stress-tester/internal/runner/upload_continuous.go b/systems/stress-tester/internal/runner/upload_continuous.go index 6fc4619..5c609ae 100644 --- a/systems/stress-tester/internal/runner/upload_continuous.go +++ b/systems/stress-tester/internal/runner/upload_continuous.go @@ -8,11 +8,11 @@ import ( "sync/atomic" "time" - "github.com/storacha/smelt/systems/stress-tester/internal/config" - "github.com/storacha/smelt/systems/stress-tester/internal/generator" - "github.com/storacha/smelt/systems/stress-tester/internal/guppy" - "github.com/storacha/smelt/systems/stress-tester/internal/store" - "github.com/storacha/smelt/systems/stress-tester/internal/telemetry" + "github.com/fil-forge/smelt/systems/stress-tester/internal/config" + "github.com/fil-forge/smelt/systems/stress-tester/internal/generator" + "github.com/fil-forge/smelt/systems/stress-tester/internal/guppy" + "github.com/fil-forge/smelt/systems/stress-tester/internal/store" + "github.com/fil-forge/smelt/systems/stress-tester/internal/telemetry" ) // UploadContinuousRunner runs continuous uploads diff --git a/systems/telemetry/compose.yml b/systems/telemetry/compose.yml index 79eed36..d982a5d 100644 --- a/systems/telemetry/compose.yml +++ b/systems/telemetry/compose.yml @@ -27,7 +27,7 @@ services: # The collector logs "Health Check state change status=ready" when healthy restart: unless-stopped networks: - - storacha-network + - forge-network # Prometheus - Metrics storage prometheus: @@ -50,7 +50,7 @@ services: retries: 5 restart: unless-stopped networks: - - storacha-network + - forge-network # Tempo - Distributed tracing tempo: @@ -70,7 +70,7 @@ services: retries: 5 restart: unless-stopped networks: - - storacha-network + - forge-network # Grafana - Visualization grafana: @@ -99,7 +99,7 @@ services: retries: 5 restart: unless-stopped networks: - - storacha-network + - forge-network volumes: prometheus-data: diff --git a/systems/upload/compose.yml b/systems/upload/compose.yml index a03cd22..518993b 100644 --- a/systems/upload/compose.yml +++ b/systems/upload/compose.yml @@ -5,7 +5,7 @@ services: upload: - image: ${UPLOAD_IMAGE:-ghcr.io/storacha/sprue:main} + image: ${UPLOAD_IMAGE:-ghcr.io/fil-forge/sprue:main} command: ["serve", "--config", "/etc/sprue/config.yaml"] ports: - "${SMELT_UPLOAD_PORT:-15060:80}" @@ -45,7 +45,7 @@ services: start_period: 10s restart: unless-stopped networks: - - storacha-network + - forge-network # Postgres for sprue's metadata stores. Sprue runs goose migrations on # startup, so no init sidecar is needed — the `sprue` database created by @@ -70,7 +70,7 @@ services: start_period: 10s restart: unless-stopped networks: - - storacha-network + - forge-network volumes: upload-postgres-data: diff --git a/tests/e2e/main_test.go b/tests/e2e/main_test.go index 07d3ada..e76c9cd 100644 --- a/tests/e2e/main_test.go +++ b/tests/e2e/main_test.go @@ -9,7 +9,7 @@ import ( "testing" "time" - "github.com/storacha/smelt/pkg/stack" + "github.com/fil-forge/smelt/pkg/stack" ) // TestMain sweeps leaked containers and volumes from prior test runs diff --git a/tests/e2e/smoke_test.go b/tests/e2e/smoke_test.go index 173771a..7f891aa 100644 --- a/tests/e2e/smoke_test.go +++ b/tests/e2e/smoke_test.go @@ -9,8 +9,8 @@ import ( "testing" "time" - "github.com/storacha/smelt/pkg/clients/guppy" - "github.com/storacha/smelt/pkg/stack" + "github.com/fil-forge/smelt/pkg/clients/guppy" + "github.com/fil-forge/smelt/pkg/stack" ) func TestUploadAndRetrieve(t *testing.T) { diff --git a/tests/e2e/snapshot_test.go b/tests/e2e/snapshot_test.go index 7d6d224..7abfcb7 100644 --- a/tests/e2e/snapshot_test.go +++ b/tests/e2e/snapshot_test.go @@ -9,8 +9,8 @@ import ( "testing" "time" - "github.com/storacha/smelt/pkg/clients/guppy" - "github.com/storacha/smelt/pkg/stack" + "github.com/fil-forge/smelt/pkg/clients/guppy" + "github.com/fil-forge/smelt/pkg/stack" ) // TestStackFromSnapshot exercises stack.WithSnapshot: the committed