Skip to content

Delete types and contract protocols nothing references - #1364

Merged
malpern merged 1 commit into
masterfrom
claude/delete-dead-types
Nov 7, 2026
Merged

malpern merged 1 commit into
masterfrom
claude/delete-dead-types

Conversation

@malpern

@malpern malpern commented Nov 7, 2026

Copy link
Copy Markdown
Owner

Summary

Removes 1,129 lines that nothing references. Each type was re-checked with git grep -w against Sources and Tests on master:

  • DragToAuthorizeProofOfConcept, MockConfigRepairService, ProcessKiller, EventTapController (and its TapError), SimpleLogViewer, SafetyAlertPresenter, KindaVimDetector, WizardPreflightView, MockSystemData
  • The Core/Contracts protocols LifecycleControlling, PermissionChecking, Logging and EventTapping, along with the types that only they used (LogLevel, LoggingConfiguration, LogDestination, SystemPermissionType, PermissionStatus, PermissionConfidence, SystemPermissionSnapshot, TapHandle). PermissionSet and PermissionSubject hits elsewhere are different types (PermissionOracle.PermissionSet, and the wizard module's own PermissionSubject).

From the architecture review's next tier ("12+ types with no references", "Unused contract protocols"). The dead SystemFacade start/stop/restart paths and kanata.entitlements are left for the privileged-stack deletion, because they belong to the retired stack and its signing contract.

Testing

  • swift build: passes with no errors.
  • No test file references any removed type; CI runs the suite.

Review gate: remote review gate selected (the local review run timed out with no output).

🤖 Generated with Claude Code

The architecture review found these with no use outside their own files;
each was re-checked against Sources and Tests on master:
DragToAuthorizeProofOfConcept, MockConfigRepairService, ProcessKiller,
EventTapController (and its TapError), SimpleLogViewer, SafetyAlertPresenter,
KindaVimDetector, WizardPreflightView, MockSystemData, and the
LifecycleControlling, PermissionChecking, Logging and EventTapping contracts
with the types only they used.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 7, 2026 •

Copy link
Copy Markdown
Codex Review Summary: ✅ Completed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-07T11:08:49.192030Z 6c6212a PR opened
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@claude

claude Bot commented Nov 7, 2026

Copy link
Copy Markdown

Review of the diff (1129 deletions, no additions): I found no correctness, security or performance problems in the removed code. Most of it looks like dead scaffolding. That includes the unused contract protocols, EventTapController, SimpleLogViewer, and the sudo kill helper ProcessKiller.

I could only see the diff, so I couldn't check for remaining references. Please confirm that nothing still uses these symbols, including in Tests/, previews, and any Package.swift or Xcode project file lists:

  • MockConfigRepairService. This is a public type and may be used by tests or by DI defaults when AI is disabled.
  • MockSystemData. This is public in KeyPathCore.
  • KindaVimDetector, WizardPreflightView, and DragToAuthorizeProofOfConcept.
  • LogLevel, LoggingConfiguration, TapError, TapHandle, SystemPermissionType, PermissionStatus, PermissionSubject, and PermissionSet. Other files may use these names even if the protocols are unused.
  • SafetyAlertPresenter.presentSafetyTimeoutAlert.

A green swift build plus the test targets (KeyPathTests, the smoke and snapshot tests) should settle this. Also check that python3 Scripts/check-accessibility.py and any docs or ADRs that mention the deleted files don't need updating.

No other actionable findings.

@malpern
malpern merged commit a859b1a into master Nov 7, 2026
6 checks passed
@malpern
malpern deleted the claude/delete-dead-types branch November 7, 2026 14:46
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