Skip to content

Browser subsystem: make Panel/View/Portal a real separation (24k lines, 4 files over 1k) #99

Description

@arzafran

BrowserPanel.swift (~4,050-line god object, eight concerns), BrowserPanelView.swift (6.8k, WebViewRepresentable alone 2,400 lines), BrowserWindowPortal.swift (4.1k). The review's verdict: Panel/View/Portal is a layered separation in name only; it is three parallel implementations of window-hosting geometry. The inspector-dock dedup issue is the prerequisite; after that, Codex's proposed BrowserPageSession facade (eval/find/click/screenshot/dialog/console/storage) separates automation from panel UI state.

Cleared by review: BrowserDataImport's per-browser parsers are proportionate, not duplication.


From the 2026-07-09 nuclear review (10 module reviewers + Codex cross-model pass, disprove-first). Line refs are against the reductive-audit branch (PR #81).

Metadata

Metadata

Assignees

No one assigned

    Labels

    nuclear-reviewFrom the 2026-07-09 whole-codebase nuclear reviewtech-debtKnown latent issue / maintenance debt

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions