ADDED Requirements
Requirement: The loader SHALL report pack identity collisions
The loader SHALL report a valid module whose pack id is already registered to the pack service, which SHALL offer explicit Replace or Keep both as a copy handling. Replacement keeps the authored id; a copy receives the next available suffixed id and forkOf provenance. Either operation SHALL validate completely before changing the registry.
Scenario: Duplicate pack ids are rejected
- WHEN a second local module exports an already registered pack id
- THEN the loader reports the collision without silently replacing the original pack and exposes the two explicit resolution choices
Scenario: A forked local pack gets fresh progress identity
- WHEN the player chooses
Keep both as a copyfor a duplicate local module - THEN the registered pack receives a suffixed id with
forkOfprovenance and progress is keyed by the new id