Skip to content

feat: Vortex/MO2/HoloPatcher parity ports foundation#176

Merged
oldrepublicwizard merged 7 commits into
masterfrom
feat/three-project-parity-foundation
Jul 17, 2026
Merged

feat: Vortex/MO2/HoloPatcher parity ports foundation#176
oldrepublicwizard merged 7 commits into
masterfrom
feat/three-project-parity-foundation

Conversation

@oldrepublicwizard

Copy link
Copy Markdown
Owner

Summary

Expansion-first foundation for Vortex / MO2 / HoloPatcher parity: Core ports wrap existing services so later managed deploy, purge, and deep-link consume can plug in without a second install pipeline.

Core Ports architecture

New seams under ModSync.Core/Ports/:

  • DownloadIDownloadProviderRegistry over existing download handlers
  • InstallationIInstallBackend / classic vs managed adapters (InstallBackends); classic remains the default
  • ProtocolIProtocolHandler + handlers; ModSyncUrl parse/handoff behind the port
  • ProfilesIProfileStore over profile services
  • Guides — guide ingest/draft services (DraftInstructionService) behind guide ports
  • ConflictsIConflictAnalyzer over the file conflict analyzer
  • UpdatesIUpdateCheckResultStore for Nexus update-check result persistence

Adapters implement these ports; GUI/CLI stay thin. Architecture plan: docs/plans/2026-07-16-001-three-project-parity-architecture-plan.md. Living tracker: docs/plans/vortex-mo2-feature-parity-living-plan.md.

Classic default

Install path continues to use the classic backend by default. This PR does not switch production installs to managed hardlink deployment.

Deferred (not on this tip)

Follow-on work called out in the plan / living plan, not completed here:

  • Managed wiring — wire managed deployment into the install pipeline (e.g. open feat: wire managed deployment into install pipeline #168)
  • Purge — per-mod uninstall / newest-first purge GUI over engine APIs
  • modsync:// consume — OS registration / full deep-link consume beyond Phase 1 parse + handoff

Also includes FOMOD post-download prompt path landed via #169 on this branch history.

Test plan

  • dotnet test src/ModSync.Tests/ModSync.Tests.csproj --filter "FullyQualifiedName!~LongRunning" (or at least ParityPortsTests + ModSyncUrlTests)
  • Confirm classic install still runs without requiring managed backend
  • Smoke: ports resolve against existing services; no second pipeline

Copilot added 2 commits July 16, 2026 22:57
Identify Vortex, MO2, and HoloPatcher as the reference systems, map important
capabilities and Core ports, and link the living plan to the expansion-first units.
Introduce expansion-ready Core seams (download, install backend, protocol,
profiles, guides, conflicts, update-check store) wrapping existing services,
land ModSyncUrl parse + draft-instruction ingest behind those ports, and
persist Nexus update-check summaries without changing classic install defaults.
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

Copilot added 5 commits July 16, 2026 23:12
Wire CLI/single-instance handoff into MainWindow (fetch instruction URL, load, activate), add OS registration builders for modsync://, and add Tools/context-menu purge plus deployment status over DeploymentService/ManagedInstallSession.
Address code-review P0/P1 on the three-project parity foundation: remap
staged sources, confirm+bound instruction downloads, lock purge during
live installs, confine uninstall paths, and surface managed config errors.
Resolve protocol/managed-deploy doc and launch-path overlaps after
CountStages and modsync:// Phase 1 landed on master.
Keep managed session wrapping while running the fail-closed FOMOD gate
from #170 on both single-component and install-all cores.
Prefer the path-sandbox and review-flag DraftInstructionService from the
parity branch over the earlier guide-paste copy that landed via #173.
@oldrepublicwizard
oldrepublicwizard merged commit 0640861 into master Jul 17, 2026
11 checks passed
@oldrepublicwizard
oldrepublicwizard deleted the feat/three-project-parity-foundation branch July 17, 2026 05:12
oldrepublicwizard pushed a commit that referenced this pull request Jul 17, 2026
Keep SettingsService-before-pickers ordering from the triage fix while
retaining modsync handoff wiring from #176.
oldrepublicwizard pushed a commit that referenced this pull request Jul 17, 2026
Keep scrollable finish pages while preserving managed-deployment summary
controls; take master modsync:// consume documentation.
oldrepublicwizard pushed a commit that referenced this pull request Jul 17, 2026
Align product-overview, product-vision, and KB index with consume and
OS registration landed via the parity foundation merge.
oldrepublicwizard added a commit that referenced this pull request Jul 17, 2026
Mark Phase 6 FOMOD gate Merged (#170), record #176/#177/#179/#180/#181/#171,
and set Next to residual gaps only.

Co-authored-by: Copilot <th3w1zard1@users.noreply.github.com>
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