refactor(desktop): remove consumer-less IPC bridge surface - #2065
Merged
Astro-Han merged 2 commits intoAug 4, 2026
Merged
Conversation
Deletes three renderer-dead bridge surfaces, all verified zero-consumer across renderer/overlay/e2e: - appWindow.subscribeOpenSettings + the window:openSettings wiring in app-shell-effects: the only sender (app-menu item) was removed in apache#390; Cmd/Ctrl+, keeps working through the renderer keydown handler. - dailyReview.list/get/delete aliases duplicating the live *Archive variants, plus the daily-review:delete channel end-to-end - retention cleanup calls store.deleteArchive directly and no renderer spelling of delete has a consumer. - The speculative maka.usage preload namespace, per the decision recorded on apache#1982: the main-side usage:* authority handlers (apache#1596) stay for the apache#2010 M4 client adapter, so the IPC surface contract test now carries a self-checking MAIN_ONLY_CHANNELS allowlist documenting that state. The third apache#1978 item (ungated cursor-subscription:logout) became moot when apache#2037 retired the whole Cursor subscription surface. Closes apache#1978. Ref apache#1982. Verification: desktop typecheck clean; main suite 1585/1585 including the IPC surface contract and app-shell effect stability contracts.
The leave-and-return journey only asserted the first chip before navigating away; leaving while the second token is still committing races the draft snapshot and loses the chip on return, which is exactly how this spec failed on CI. Mirror the projectChip assertion for workspaceChip so the draft is known-complete before the navigation.
Contributor
Author
|
The first CI run failed on
|
This was referenced Aug 4, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Removes the three renderer-dead IPC bridge surfaces from #1978 plus the
maka.usagepreload namespace per the decision recorded on #1982. Pure deletion apart from the contract-test allowlist; all items re-verified zero-consumer on currentmainbefore removal.appWindow.subscribeOpenSettings(preload +bridge-contract.d.ts+app-shell-effects.tswiring + stability-contract stub): the onlywindow:openSettingssender was deleted in chore(ui): track Storybook-driven UI polish after file-boundary governance #390; ⌘/Ctrl+, continues to work through the renderer keydown handler (kept).dailyReview.list/get/deletealiases: duplicates of the livelistArchives/getArchivevariants over the same channels.deletehad no consumer in either spelling, so thedaily-review:deletechannel is removed end-to-end — retention cleanup callsstore.deleteArchivedirectly and is unaffected.maka.usagepreload namespace (chore(desktop): decide fate of speculative maka.usage and cursor-subscription IPC surface #1982 decision 2): removed with the now-unusedusage-statstype imports. The main-sideusage:*authority handlers and their tests stay untouched (they are the feat(runtime-host): extract Usage/Pricing authority #1596 Host authority wiring, awaiting the [Tracking] Runtime Host M4 Desktop-first client adapters #2010 M4 adapter). The IPC surface parity test gains aMAIN_ONLY_CHANNELSallowlist that documents this and self-checks in both directions: an allowlisted channel that disappears from main, or that gains a preload consumer, fails the test.The third #1978 finding (
cursor-subscription:logoutnot gated) became moot when #2037 retired the entire Cursor subscription surface.Closes #1978. Ref #1982 (decision 2 of the recorded plan; Pricing Settings spec remains a separate follow-up).
Verification
npm run typecheck(all four desktop tsconfigs) clean.ipc-surface-contractandapp-shell-effect-stability-contract.app-shell-effects.tshandleKeyDown).listArchives/getArchive/saveMarkdownToFileand all main-side store methods unchanged.