Skip to content

refactor: remove obsolete CLI and native Cursor backends - #13

Open
hxy91819 wants to merge 6 commits into
raphaelluethy:mainfrom
hxy91819:upstream/sdk-only-backend
Open

hxy91819 wants to merge 6 commits into
raphaelluethy:mainfrom
hxy91819:upstream/sdk-only-backend

Conversation

@hxy91819

@hxy91819 hxy91819 commented Oct 9, 2026 •

Copy link
Copy Markdown

Problem

The adapter still carries obsolete CLI/native backend paths after adopting SDK prompt execution, complicating authentication, session lifecycle and test coverage.

Evidence

The source diff removes CLI runner/native ACP/assistant-stream/settings-preload implementations and their obsolete tests. Existing SDK behavior assertions are retained or rewritten, and persisted ACP and SDK identities become explicitly separate.

Fix

Keep the SDK as the sole execution/authentication backend, simplify agent and storage handling, remove obsolete exports/implementations, and preserve SDK ACP regression coverage and stricter resume E2E assertions. Update usage and contributor documentation.

Depends on fix/sdk-session-resume (linked issue #5; prerequisite PR pending). Unique scope is fix/sdk-session-resume..feature/sdk-only-backend: 25 files, 366 insertions and 4,982 deletions. Removing exported CLI/native APIs and changing persisted metadata is compatibility-sensitive, not merely dead-code cleanup. Existing consumers and older session metadata deserve explicit maintainer review.

This source is not stacked on #4, skill-discovery, model-parameters, discovery-errors or permission-mode; mechanical merges against each of those branches conflict. Do not present their integration as independent. The session-fork and usage-ledger stacks both depend on this removal.

Validation

Fresh exact-source verification of validated source, not a descendant/aggregate substitution:

nub install --frozen-lockfile — exit 0
nub run check — exit 0
Found 0 warnings and 0 errors.
All matched files use the correct format.
nub run test:run — exit 0
 Test Files  15 passed | 1 skipped (16)
      Tests  120 passed | 2 skipped (122)
nub run build — exit 0

Tracked worktree remained clean after validation. Used a disposable detached worktree and its own frozen-lockfile Nub install. Opt-in real-model tests, where present, remained skipped; these results do not claim live authentication, billing or real sandbox containment.

Rebase, dependencies and evidence

Merge/review prerequisites first: #12.

Submission alias has the same tree as the verified source branch; current upstream main remains the source baseline. Overlapping implementations and compatibility limitations are documented above. Exact-source validation is now complete. This PR is ready for maintainer review; declared prerequisites and integration conflicts still constrain merge order.

Ready for review

Exact-source check, full default test suite and build all passed. The earlier source-verification gap is closed. Declared prerequisites remain merge-order constraints, not a reason to prevent review; this does not authorize merging unrelated prerequisite features.

Compatibility review: the loader accepts legacy backendSessionId metadata as well as new sdkSessionId; the legacy-field regression passes. The public exports CursorCliRunner, CursorNativeAcpClient and parseAuthStatus are intentionally removed. Library consumers using those exports must migrate to the SDK surface. Maintainer approval and an appropriate release/versioning decision are required; this PR does not claim API compatibility.

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