Skip to content

Specialize thirdshift on Linux and drop native macOS support - #1673

Merged
JacobStephens2 merged 11 commits into
mainfrom
issue-1665
Oct 30, 2026
Merged

JacobStephens2 merged 11 commits into
mainfrom
issue-1665

Conversation

@JacobStephens2

@JacobStephens2 JacobStephens2 commented Oct 30, 2026 •

Copy link
Copy Markdown
Owner

Summary

Closes #1665.

 thirdshift host support
-native Apple Silicon macOS + x86_64 Linux
+static x86_64 Linux + aarch64 Linux
 CI
-macOS plan, gate, shards and aggregate check
+x86_64 Linux on every PR; ARM Linux on main, nightly, manual and opt-in PR runs
 macOS users
-native binary and LaunchAgent scheduling
+Ubuntu 24.04 aarch64 VM (Lima vz, --mount-none), Linux cron or systemd timers

The three Tickets fit together: #1666 removes native macOS release/CI configuration while preserving #1663's ARM Linux builds and smoke checks; #1667 rejects non-Linux compilation and makes process identity, process watching, Setup probes, Factory-skills handles, child executable inheritance and Linux scope paths unconditional; #1668 updates the README, manual, ADR 0003 and site to match. Windows users use WSL2, and VM repositories stay on the Linux filesystem.

The comparison with main also includes earlier merged work: #1663's ARM prerequisite, #1619's resumable plan-limit Paused Commands, and release 0.18.8. Both review axes covered those changes. This Spec review removed two obsolete macOS path comments, preserving canonicalization and its symlinked-home regression.

Evidence

  • Before: the Console path comments still described macOS /private/var and FSEvents despite the Linux-only Spec.
    After: both comments describe canonical paths and symlinked homes; the reviewer's exact static check passes. No runtime behavior changed in the review correction.
  • cargo clippy --all-targets -- -D warnings, cargo fmt --check, release-generator freshness, and all 34 Python tooling tests pass.
  • RUST_TEST_THREADS=3 scripts/affected-tests main passes: all 61 site tests, all 126 Console browser tests, and the full Rust suite. Rust wall time was 3,072.87 seconds, including a 0.40-second cached compilation check. Local tooling used Python 3.11 and the installed Playwright browser cache.
  • The initial default-thread cargo test run stopped at the unchanged tests/experiments/rechecks.rs:261 test with a lock-contention refusal after the test dropped its lock handle. The exact rerun, cargo test --test experiments rechecks::invalid_concurrent_and_empty_batches_leave_the_experiment_unchanged -- --exact --nocapture, passed (7.19s); the same case also passed within the full three-thread rerun. No source change was made for that validation anomaly.
  • On reviewed head b534fbc5, hosted CI passed, including its full Linux test job. The Release run built both static Linux binaries and passed the ARM Linux, Rocky Linux and WSL2 smoke checks. Full ARM CI was skipped under the documented PR opt-in policy.

Review coverage

  • Standards: 0 findings. Spec: 1 P3 finding, fixed in this review.
  • Each reviewer read all 91 changed files, including generated site/docs/index.html and removed fallback contents. Generated-output exclusions: none. Unread changed files: none under either axis.

Unaddressed findings

Standards

None.

Spec

None; the obsolete macOS comment finding was fixed.

Security

None. A single-session guidance-mode review of git diff 86c8887f557b225573a32552bb3fb0927bc04edf...a665015d762c2bb2d0e58c16bd8a3b251982253e, including supporting code, found no introduced Security findings. The review covered Linux process identity and signaling, executable inheritance, sandbox probing and scope behavior, Factory-skills directory handles, and CI/release trust boundaries. No source fixes or proof-of-concept tests were needed.

Security review outcome

No unaddressed introduced findings.

Merge Danger

Door: two-way

Code and workflow changes can be reverted. This release deliberately ends native macOS installation and source-build support; existing macOS users must move to a Linux VM. Native Windows remains unsupported; WSL2 runs the Linux binary.

Blast Radius: Platforms

Linux process supervision, sandbox probing, release publication, CI and installation documentation. Hosted ARM, Rocky Linux and WSL2 checks remain CI responsibilities.

Built with codex codex-cli 0.166.0 · gpt-6.1-sol · xhigh

Tickets

@JacobStephens2
JacobStephens2 marked this pull request as ready for review October 30, 2026 22:15
Preserve main's release recovery tests as unconditional Linux tests and regenerate the manual from the merged guide.
@JacobStephens2
JacobStephens2 merged commit edcef7b into main Oct 30, 2026
16 checks passed
@JacobStephens2
JacobStephens2 deleted the issue-1665 branch October 30, 2026 23:30
@JacobStephens2 JacobStephens2 mentioned this pull request Oct 31, 2026
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.

Specialize thirdshift on Linux and drop native macOS support

1 participant