Goal
Define the canonical workshop-rs ingestion contract for custom-game-settings JSON/lobby imports so source-language consumers can reach the canonical settings carrier, validation, and emitter without implementing private settings semantics.
Context
del-rs Issue #32 has corpus evidence for import "customGameSettings.json" and .lobby project imports. Released workshop-rs 0.1.1 exposes a canonical settings::Settings tree and settings emission, but no public contract for converting the JSON/lobby carrier used by source-language projects into that tree with stable diagnostics and provenance.
Scope
- Define accepted JSON/lobby input shape, merge semantics, canonical path/key validation, and locale handling.
- Define structured diagnostics for malformed input, unknown settings paths, wrong value kinds, and missing mappings.
- Preserve source-file and member provenance through the carrier and emission boundary.
- Add provenance-linked fixtures and parser/carrier/emitter round-trip evidence.
Non-goals
- DEL project loading or source-language import resolution.
- A DEL-local settings schema, table, locale map, or emitter.
- Presentation-only compiler options.
Acceptance criteria
- A reviewed public
workshop-rs API/contract accepts or rejects the supported JSON/lobby form deterministically.
- Canonical settings validation/emission remains owned by
workshop-rs.
del-rs and other consumers can integrate through the public contract without copying settings data or semantics.
Evidence
Goal
Define the canonical
workshop-rsingestion contract for custom-game-settings JSON/lobby imports so source-language consumers can reach the canonical settings carrier, validation, and emitter without implementing private settings semantics.Context
del-rsIssue #32 has corpus evidence forimport "customGameSettings.json"and.lobbyproject imports. Releasedworkshop-rs 0.1.1exposes a canonicalsettings::Settingstree and settings emission, but no public contract for converting the JSON/lobby carrier used by source-language projects into that tree with stable diagnostics and provenance.Scope
Non-goals
Acceptance criteria
workshop-rsAPI/contract accepts or rejects the supported JSON/lobby form deterministically.workshop-rs.del-rsand other consumers can integrate through the public contract without copying settings data or semantics.Evidence
del-rsDefine canonical embedded Workshop and comment preservation contract #32 and Draft PR Streamline README and centralize documentation navigation #42: feat(project): discover ds.toml entry points del-rs#42workshop-rs 0.1.1exposessettings::Settingsbut not source-project JSON ingestion.