Skip to content

fix: harden workspace boundaries and bound architecture analysis - #36

Merged
linnnn89 merged 1 commit into
mainfrom
codex/architecture-boundaries
Sep 10, 2026
Merged

fix: harden workspace boundaries and bound architecture analysis#36
linnnn89 merged 1 commit into
mainfrom
codex/architecture-boundaries

Conversation

@linnnn89

Copy link
Copy Markdown
Owner

Changes

Harden workspace execution and disk boundaries, and make architecture discovery bounded and cancellable. Repository-local git.cmd and executable fsmonitor settings no longer run through Git probes; linked worktrees are recognized and failed status checks remain unknown. Git probes require 2.36 or later.

Cache/trash paths reject existing links and junctions, cache mutations verify directory identity, and cleanup preserves legacy/unrecognized files. Architecture discovery rejects outside project descriptors and limits entries, descriptor bytes, project count and actual formatted MCP output. The C# whitespace counterexample no longer blocks declaration parsing. Partial trash outcomes and existing workspace recovery remain intact.

Validation

  • Local Windows x64 / Node 24.19.0: npm run check, 385/385 passed, including 12 new safety regressions, build, stdio and delivery verification.
  • Real Roslyn MCP: 22 scenarios passed, including warm identity and MSBuild cancellation/crash/timeout cleanup.
  • Error/recovery contracts: 16 scenarios passed.
  • Formatted-output regression: 137 project declarations previously returned 32,847 characters; now 32,238 within the 32,768 limit.
  • Delivery verification matched; Markdown/link and diff checks passed.

Remaining boundaries

No atomic sandbox against concurrent path replacement, no forced interruption guarantee for permanently stalled OS I/O, and no permanent overflow attachment lease. Fixed-project connections (N1), bounded admission (N3), production cleanup identity (A9), and remaining consumer/long-running validation stay on the roadmap. Desktop tests and existing Codex connections were not refreshed in this change. Required CI must pass for this PR head before merge.

@linnnn89
linnnn89 merged commit fb3cd48 into main Sep 10, 2026
6 checks passed
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