Skip to content

Comments

docs: remove coordinator and mothership terminology from all documentation#210

Merged
deanq merged 3 commits intomainfrom
refactor/ae-2210-docs-for-simplified
Feb 20, 2026
Merged

docs: remove coordinator and mothership terminology from all documentation#210
deanq merged 3 commits intomainfrom
refactor/ae-2210-docs-for-simplified

Conversation

@deanq
Copy link
Member

@deanq deanq commented Feb 20, 2026

Prerequisite: #208

Summary

  • Replace hub-and-spoke "coordinator" architecture descriptions with accurate peer-to-peer topology across all documentation
  • Remove "coordinator endpoint", "child endpoint", and "primary endpoint" terminology -- all deployed Flash endpoints are equal peers
  • Replace mothership_id with flash_environment_id in StateManagerClient examples
  • Remove MothershipsProvisioner references, legacy FLASH_IS_MOTHERSHIP env var sections, and outdated Docker testing section
  • Delete obsolete VERIFICATION.md
  • Clarify that reconciliation happens at deploy time via CLI (flash deploy), not at endpoint boot

Changed files

Architecture docs: Deployment_Architecture.md, Flash_Deploy_Guide.md, Cross_Endpoint_Routing.md, Load_Balancer_Endpoints.md
CLI docs: flash-deploy.md, flash-build.md
Root: README.md
Deleted: VERIFICATION.md

Context

The previous doc round (PR #208) correctly removed old skeleton patterns (main.py, workers/, FastAPI boilerplate) but incorrectly replaced "mothership" with "coordinator", creating a false impression of a hub-and-spoke architecture with a privileged central node. This PR corrects that in two passes:

  1. Coordinator removal (d168633): All diagrams and prose now reflect the flat peer topology where endpoints discover each other via State Manager GraphQL.
  2. Mothership cleanup (dd22a72): Remaining mothership references removed -- mothership_idflash_environment_id, MothershipsProvisioner prose removed, FLASH_IS_MOTHERSHIP env var sections dropped, Docker testing section removed, VERIFICATION.md deleted.

Test plan

  • make quality-check passes (format, lint, 1033+ tests, 68.70% coverage)
  • grep -ri "coordinator" docs/ src/runpod_flash/cli/docs/ README.md returns zero user-facing hits
  • grep -ri "mothership" docs/ src/runpod_flash/cli/docs/ README.md returns zero user-facing hits
  • No references to "orchestrator", "hub", or "central" in architectural descriptions
  • Diagrams show flat peer topology, not hub-and-spoke

Copy link
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 corrects terminology introduced in PR #208, replacing the incorrect "coordinator" concept with accurate peer-to-peer architecture documentation. All Flash endpoints are equal peers that discover each other via State Manager GraphQL—there is no privileged central coordinator node.

Changes:

  • Removed "coordinator", "mothership", and "hub-and-spoke" terminology from all documentation
  • Updated architecture diagrams to show flat peer topology instead of hierarchical coordinator model
  • Clarified that reconciliation happens at deploy time via CLI (flash deploy), not at endpoint boot
  • Scoped FLASH_IS_MOTHERSHIP as a legacy environment variable with no architectural significance in production

Reviewed changes

Copilot reviewed 46 out of 47 changed files in this pull request and generated no comments.

Show a summary per file
File Description
tests/unit/test_skeleton.py Updated tests to reflect new flat-file skeleton structure (gpu_worker.py, cpu_worker.py, lb_worker.py)
tests/unit/resources/test_serverless.py Added tests for live provisioning health check behavior and template exclusion logic
tests/unit/cli/test_run.py Extensive new tests for auto-discovery, hot-reload, server generation, and numeric directory handling
tests/unit/cli/commands/build_utils/test_path_utilities.py New test file for path utility functions (file_to_url_prefix, file_to_resource_name, file_to_module_path)
tests/unit/cli/commands/build_utils/test_manifest_mothership.py Deleted file - mothership detection tests no longer needed
tests/integration/test_run_auto_provision.py Deleted file - auto-provision tests moved to unit tests
src/runpod_flash/stubs/registry.py Added CpuLiveLoadBalancer stub registration
src/runpod_flash/stubs/load_balancer_sls.py Updated to use LiveServerlessMixin instead of specific LiveLoadBalancer class
src/runpod_flash/core/resources/serverless.py Added live provisioning health check skip, template exclusion logic, and FLASH_MODULE_PATH injection
src/runpod_flash/core/resources/resource_manager.py Removed verbose URL logging
src/runpod_flash/core/resources/load_balancer_sls_resource.py Updated logging for LB endpoint deployment
src/runpod_flash/core/api/runpod.py Updated GraphQL logging messages
src/runpod_flash/client.py Added LB route handler passthrough logic for direct execution on LB endpoints
src/runpod_flash/cli/commands/run.py Major rewrite: auto-discovery of @remote functions, .flash/server.py generation, hot-reload via watchfiles
src/runpod_flash/cli/commands/init.py Updated output to show new flat-file structure
src/runpod_flash/cli/commands/build_utils/scanner.py Added path utility functions and is_lb_route_handler field
src/runpod_flash/cli/commands/build_utils/manifest.py Removed mothership detection, added file_path/local_path_prefix/module_path fields
src/runpod_flash/cli/commands/build_utils/lb_handler_generator.py Removed reconciliation logic from LB handler lifespan
src/runpod_flash/cli/commands/build.py Removed main.py requirement from project validation
src/runpod_flash/cli/commands/_run_server_helpers.py New file: helpers for LB route execution in dev server
src/runpod_flash/cli/utils/skeleton_template/* Complete restructure: removed workers/, main.py, mothership.py; added gpu_worker.py, cpu_worker.py, lb_worker.py
docs/*.md Updated all architecture documentation to remove coordinator terminology and reflect peer-to-peer topology
src/runpod_flash/cli/docs/*.md Updated CLI documentation to reflect auto-discovery and new skeleton structure
README.md Updated quickstart guide to reflect new flat-file structure and auto-discovery
PRD.md New file: Product Requirements Document for zero-boilerplate experience
scripts/validate-wheel.sh Updated to validate new skeleton template files

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@deanq deanq changed the title docs: remove coordinator terminology, all endpoints are peers docs: remove coordinator and mothership terminology from all documentation Feb 20, 2026
@deanq deanq requested a review from Copilot February 20, 2026 17:50
Copy link
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

Copilot reviewed 47 out of 48 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

The previous doc round incorrectly replaced "mothership" with
"coordinator", implying a hub-and-spoke architecture. Flash endpoints
are equal peers that discover each other via State Manager GraphQL.

- Replace hub-and-spoke diagrams with flat peer topology
- Remove "coordinator endpoint", "child endpoint", "primary endpoint"
- Reconciliation happens at deploy time via CLI, not at boot
- Scope FLASH_IS_MOTHERSHIP as legacy env var, not architectural concept
- Merge endpoint boot phases into single peer-based flow
Replace mothership_id with flash_environment_id in StateManagerClient
examples, remove MothershipsProvisioner from prose, drop legacy
FLASH_IS_MOTHERSHIP env var sections, remove outdated Docker testing
section, and delete obsolete VERIFICATION.md.
@deanq deanq force-pushed the refactor/ae-2210-docs-for-simplified branch from 79806e5 to 50fb688 Compare February 20, 2026 22:45
@deanq deanq merged commit 4ba5a36 into main Feb 20, 2026
6 checks passed
@deanq deanq deleted the refactor/ae-2210-docs-for-simplified branch February 20, 2026 23:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants