Skip to content

Split bin/continuum.rs by responsibility - #5241

Merged
joelteply merged 3 commits into
canaryfrom
fable/split-continuum-bin
Oct 21, 2026
Merged

joelteply merged 3 commits into
canaryfrom
fable/split-continuum-bin

Conversation

@joelteply

Copy link
Copy Markdown
Contributor

Splits core/continuum-core/src/bin/continuum.rs (9,811 lines) into bin/continuum/: help, core_conn, checkpoint, dispatch, start, reboot, warm_build, core_service, deploy_verify, core_artifact, deploy_claim, deploy_ledger, install, deploy_consume, ci_core, processes, launch, graceful_stop, stop, desktop, plus tests.rs and tests/_tests.rs. No behaviour change; items are pub(super) and re-exposed through glob uses. Every file <= 1000 lines.

Uncompiled locally (serving node); CI is the compile check.

🤖 Generated with Claude Code

@joelteply

Copy link
Copy Markdown
Contributor Author

PASS #5241 at 57e37a8, Cormac. Claim checked: a pure move. With visibility normalized (pub(super) stripped), the multiset diff leaves only:

  • the #[path = "continuum/x.rs"] mod x; use x::*; wiring and 28 use super::*;;
  • 9 #![cfg(test)] headers and 2 use serde_json::json;;
  • the CI exact-name test paths, re-pointed to tests::reboot_tests:: / tests::deploy_consume_tests:: (checked: the names match the moved modules);
  • the baseline.
    The one removed line left unmatched, struct WarmBuildReceipt(PathBuf);, is continuum/warm_build.rs:51 pub(super) struct WarmBuildReceipt(pub(super) PathBuf);, a visibility change only.

Base automatically changed from fable/split-every-oversized-file to canary October 21, 2026 07:13
joelteply and others added 3 commits October 21, 2026 02:14
…haviour change)

Moved out of the 9,811-line root (now ~450 lines: header, imports, CliError,
main, run); items are pub(super) and re-exposed to siblings via `use <mod>::*;`.
Each declaration carries #[path] because a crate-root file resolves `mod x;`
beside itself. Tests moved verbatim (dedented) into continuum/tests.rs + tests/*.

- help.rs: --help rendering and usage text
- core_conn.rs: socket, Connection, liveness probe, bind decision
- checkpoint.rs: legacy checkpoint inspect/adopt
- dispatch.rs: command dispatch and flag->params adaptation
- start.rs: `continuum start`
- reboot.rs: RebootOptions, PrebuiltCore, `reboot`
- warm_build.rs: warm-build gate, priority yield, receipt, preparation
- core_service.rs: Windows installed-service host and prepared core service task
- deploy_verify.rs: post-deploy provenance verification
- core_artifact.rs: core artifact resolution and runtime-library env
- deploy_claim.rs: deploy claim/lease and repo-checkout bookkeeping
- deploy_ledger.rs: deploy-consume options, attempt ledger, git helpers
- install.rs: supervisor/CLI/core/airc install and uninstall
- deploy_consume.rs: deploy consumer log and per-pass flow
- ci_core.rs: CI-published prebuilt core fetch/preparation
- processes.rs: process discovery, build progress, kill plans
- launch.rs: core launch plan, build env, binary/start-script lookup
- graceful_stop.rs: graceful-stop protocol
- stop.rs: `continuum stop` policies and orphan reaping
- desktop.rs: desktop port/URL/receipt
- tests.rs + tests/{checkpoint,core_artifact,deploy_consume,dispatch,processes,reboot,stop,warm_build}_tests.rs

Not compiled locally (serving node); CI is the compile check.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LoTjvf5j3Ez13g6k8mRkFo
(cherry picked from commit f6a667c)
…size baseline to 45,242

The hygiene scanner identifies test files by a leading #![cfg(test)]; without it
the moved tests counted as production unwraps/spawns. file_size lines-over
measured 45,242 (was 54,053).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LoTjvf5j3Ez13g6k8mRkFo
(cherry picked from commit 17d0c2e)
The bin/continuum tests moved to tests::<group>_tests::; the --exact filters in
continuum-rust-tests.yml named the old tests:: paths and found zero tests.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LoTjvf5j3Ez13g6k8mRkFo
(cherry picked from commit 57e37a8)
@joelteply
joelteply force-pushed the fable/split-continuum-bin branch from 57e37a8 to 601b6e3 Compare October 21, 2026 07:14
@joelteply
joelteply merged commit 13ce66b into canary Oct 21, 2026
9 checks passed
@joelteply
joelteply deleted the fable/split-continuum-bin branch October 21, 2026 08:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant