Skip to content

Add macOS and Linux support - #1

Merged
dd3ok merged 5 commits into
mainfrom
agent/add-macos-linux-support
Jul 29, 2026
Merged

Add macOS and Linux support#1
dd3ok merged 5 commits into
mainfrom
agent/add-macos-linux-support

Conversation

@dd3ok

@dd3ok dd3ok commented Jul 29, 2026

Copy link
Copy Markdown
Owner

What changed

  • add platform-aware path comparison for Windows, macOS, Linux, and WSL
  • detect symbolic links, Windows reparse points and junctions, and nested or bind mounts
  • read Linux mount identity from /proc/self/mountinfo and macOS mount identity from the native mount table
  • support CODEX_HOME, CODEX_SQLITE_HOME, and an explicit -StateRoot
  • bump the read-only snapshot schema to version 4 with platform safety metadata
  • make the synthetic link/junction regression portable
  • replace the Windows-only storage map with a cross-platform reference
  • update English and Korean documentation
  • add a Windows, Ubuntu, and macOS GitHub Actions matrix

Why

The original implementation was intentionally Windows-only. Its case-insensitive comparisons, junction/reparse-point model, default paths, and regression fixtures were not sufficient to claim safe cleanup support on case-sensitive POSIX filesystems or across mount and bind-mount boundaries.

Safety impact

The snapshot remains permanently read-only and non-authorizing. Unknown platforms, incomplete mount inventories, links, nested mounts, ambiguous state roots, inconsistent task graphs, and changing captures fail closed. Historical content and regenerable data still require a separate expiring manifest and exact later selection.

Local checks

  • PASS: isolated snapshot safety regression tests
  • Skill is valid!
  • PowerShell parser passed
  • production destructive primitive scan: 0 hits
  • sensitive-pattern scan: 0 hits
  • test residue: 0 files
  • live Windows read-only snapshot reported schema 4 and platform safety complete, then correctly blocked classification while the active task changed during capture

The cross-platform GitHub Actions matrix is included in this PR and will be used to validate Ubuntu and macOS behavior before merge.

@gemini-code-assist

Copy link
Copy Markdown

Caution

The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased.

@dd3ok
dd3ok marked this pull request as ready for review July 29, 2026 06:41
@gemini-code-assist

Copy link
Copy Markdown

Caution

The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased.

@dd3ok
dd3ok merged commit ae7d2a6 into main Jul 29, 2026
6 checks passed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 8c9fb4affa

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +574 to +575
$python = Get-Command python -CommandType Application -ErrorAction SilentlyContinue |
Select-Object -First 1

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Discover python3 on POSIX hosts

On macOS and many Linux installations, Python 3 is available only as python3; the unversioned python command is absent. In that supported environment this lookup returns null, Get-StateSnapshot reports the state helper as unavailable, and every task-dependent classification remains blocked despite the documented Python 3 requirement. The workflow does not expose this because actions/setup-python provides a python shim; resolve python3 as a fallback (and verify its supported version) for real POSIX hosts.

Useful? React with 👍 / 👎.

@dd3ok
dd3ok deleted the agent/add-macos-linux-support branch August 13, 2026 08:01
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.

1 participant