# ADR 0001: Keep Cosmic/GMS v83 authoritative

Status: accepted

Date: 2026-08-19

## Context

The requested browser client is GMS v83. The supplied Moonlight reference is a locally modified Swordie GMS v214.1 stack. Although both use the MapleStory name and commonly use login port 8484, their handshakes, encryption stages, opcodes, packet bodies, IDs, jobs, databases, content scripts, and login architecture differ.

## Decision

Use the existing v83 client, `docs/ms-network-protocol.md`, and a pinned unmodified P0nk/Cosmic baseline as protocol/gameplay authorities. Use Moonlight only for high-level invariants, operational patterns, manifest ideas, and QA-scenario inspiration that is independently re-derived and tested against v83.

Do not port Moonlight's launcher API, token passport, WinForms launcher, DLL injection, WinSock hooks, v214 server code, WZ/XML/DAT data, or numeric protocol/content identifiers.

## Consequences

- There is no shortcut from Moonlight's much larger modern feature inventory to v83 client completeness.
- Feature work is tracked explicitly at packet, state, render, interaction, and test layers.
- Protocol incompatibilities cannot silently enter the client.
- Direct Moonlight code/license provenance is avoided.
