Rename the shared code namespace Contraband -> Institution; add license

The suite's classes all lived in namespace Contraband -- a historical artifact from the original
Contraband monolith, which read oddly for a class in Corrections or Policing. Renamed to namespace
Institution across every layer (46 .cs, the XML Class= refs, RootNamespace, the aggregate shim). The
Contraband MODULE, its Contraband.dll assembly, and the Contraband-named classes (CompContraband,
MapComponent_Contraband, ContrabandUtility, ...) are unchanged. Harness-verified 45/0.

Also adds a CC-BY-NC-SA 4.0 LICENSE file.

Aggregate: the settings shim now writes Institution.InstitutionSettings; Assemblies re-vendored with
the renamed DLLs; ROADMAP status refreshed to the six-layer suite at 0.1.0.
This commit is contained in:
flan
2026-07-16 01:45:34 +00:00
parent e96ac23949
commit 3fc4ef7a1d
10 changed files with 46 additions and 19 deletions
+16 -13
View File
@@ -4,20 +4,23 @@ A set of RimWorld mods about **what an institution does to the people inside it*
policing, and justice that put them there. Each mod is a separate install on a shared **Core**;
together they form one system.
> **Status (2026-07-15): shipped as a five-layer suite behind one install.** The monolith split into
> **Core** (propensity, criminal record, secured context, the shared treatment engine), **Contraband**
> (the physical smuggling loop), **Justice** (classification, deterrence, discipline, parole, regime,
> and **policing** — colony crime → a weighed arrest), **Gangs** (contraband economies), and **Ward**
> (psychiatric care), folded in from a former standalone sister mod. All five bundle into the single
> **Institution** mod with a toggle each while staying separate repos; **Foul Play** stands alone and
> bridges in. See the [README](README.md) for the current mod table.
> **Status (2026-07-16): a six-layer suite behind one install, at 0.1.0.** Along the separation of
> powers the suite is: **Core** (propensity, criminal record, secured context, the shared treatment
> engine, the deterrence seam), **Contraband** (the physical smuggling loop), **Policing** (colony
> crime → investigation → a weighed arrest → the deterrence feedback loop → riots), **Corrections**
> (classification, discipline & reform, parole, regime), **Gangs** (contraband economies), and **Ward**
> (psychiatric care). The former **Justice** module was split into **Policing** + **Corrections** and is
> deprecated/archived. All six bundle into the single **Institution** mod with a toggle each while
> staying separate repos; **Foul Play** stands alone and bridges in. See the [README](README.md) for the
> current mod table.
>
> The pre-arrest loop (crime → witnesses → investigate → weighed arrest) and the post-arrest
> corrections arc (rehabilitate → parole, discipline-as-order, classification enforcement, on the
> shared treatment engine) are **wired and harness-verified**. What remains is **Regime depth**
> (schedule / needs / visitation), **ideology-flavoured** release, and — above all — real
> **playtesting** to tune the numbers, none of which are play-tested yet. The design sections below
> predate the split in how they *group* modules, but the mechanics and north star are unchanged.
> The full loop — crime → witnesses → investigate → weighed arrest → contraband/gangs → rehabilitate →
> parole, on the shared treatment engine — is **wired and harness-verified (45/0)**, and two audit→zero
> passes plus a headless tuning run are behind it. The shared code namespace is now `Institution` (was
> `Contraband`). A future **Judiciary** layer (a court: charge → trial → sentence) is reserved as a Core
> `sentence` seam — no dead code added. What remains before a real release is, above all, **playtesting**
> to tune the numbers (they are still first guesses) and the Steam Workshop upload. The design sections
> below predate the split in how they *group* modules, but the mechanics and north star are unchanged.
## North star