# SHiRE Academy Stage 3C.4.1 — Live UI Contract Fix

This is the corrected Stage 3C.4 package. The first Stage 3C.4 run successfully proved all four real Dice Tower themes and measured `0.000 mm³` chute-corridor collision, but its final live-interface verifier searched for the literal phrase `Core Dice Tower`. The interface correctly displayed `Dice Tower`, so the over-specific assertion triggered a safe rollback.

Stage 3C.4.1 changes only that verification contract: it now checks the actual first-class family selector `value="dice_tower"` plus the independent theme, barrier, mechanics and contract fields already present in the live interface. No geometry, safety boundary or capability is weakened.


This package promotes **Dice Tower** into a reusable first-class functional family. Gothic, cartoon, fortress, sci-fi, minimal and original novelty styling are independent theme layers placed over the same validated mechanical contract.

## Why this stage exists

Inspection of `Cathedral of the Abyss Dice Tower V2` showed that a themed template could still leave geometry obstructing the exit chute. A functional dice tower must not depend on its visual theme for its dice path.

Stage 3C.4 separates:

- **Family:** Dice Tower
- **Mechanical contract:** `shire.dice_tower.core.v1`
- **Theme:** minimal, Gothic, cartoon, fortress, sci-fi or original novelty

Every theme inherits the same mandatory dice-flow rules.

## Shared Dice Tower mechanical contract

Every generated Dice Tower draft must include and validate:

- a hollow tower shell;
- alternating internal ramps;
- a minimum dice-envelope passage;
- a final ramp aligned to the exit;
- a flush zero-step threshold;
- a sloped exit chute;
- an integrated collection tray;
- no vertical-drop exit;
- a protected, barrier-free rolling corridor.

## Hard barrier-removal gate

The builder creates a real 3D clearance probe representing the required air volume above the chute floor. After the shell, ramps and visual theme are applied, SHiRE cuts that protected corridor through the final model. Validation intersects the finished model with the same probe and requires no more than `0.50 mm³` of numerical collision residue.

This prevents a wall lip, decorative rib, threshold, divider or theme feature from blocking the chute.

## Theme separation

Supported validated theme routes include:

- Minimal / Functional
- Gothic
- Cartoon
- Castle / Fortress
- Sci-fi
- Original Novelty

Theme geometry is decorative only and cannot replace or alter the core dice mechanics. A cartoon or novelty Dice Tower therefore receives the same chute, clearances and controlled exit path as a Gothic tower.

## Interface changes

The Fast Builder now exposes separate controls for:

- Object family: **Dice Tower**
- Dice Tower theme

The safe plan explicitly reports:

- family and theme;
- mechanical contract;
- dice envelope and passage width;
- exit chute and clear corridor width;
- barrier inside chute: none;
- zero-step threshold;
- final-ramp alignment;
- continuous roll path without a vertical drop.

The prompt field is expanded to 1,600 characters.

## Installer proof

Before activation, the installer must:

1. preserve recovery copies and protected checksums on network-backed SHiREVault;
2. verify the existing Stage 3C.3.3 installation;
3. start the updated persistent CadQuery Unix-socket worker;
4. create real STEP/STL evidence for four autonomous lessons;
5. build Minimal, Gothic, Cartoon and Fortress Dice Towers through the warm engine;
6. prove all four themes pass the same core mechanical contract;
7. measure the finished chute-corridor collision volume;
8. verify the live UI and API separate family from theme;
9. confirm the protected 371-skill state remains byte-for-byte unchanged.

Any post-swap failure triggers rollback to Stage 3C.3.3.

## Autonomous Academy expansion

Four lessons are added:

- `dice-tower.core-contract`
- `dice-tower.barrier-free-exit`
- `dice-tower.theme-gothic`
- `dice-tower.theme-cartoon`

The autonomous curriculum becomes **30 exercises × 3 variants = 90 protected evidence runs**.

## Permanent boundaries

- Existing 371-skill Academy state remains read-only.
- Boolean canary is not rerun.
- No counted attempt is consumed.
- No certification or Forge permission is changed.
- No arbitrary prompt or code execution is enabled.
- No external network research is enabled.
- No public ports are opened.
- Every output remains a non-load-bearing draft requiring 3D inspection, slicer review and a physical dice-flow test.
