refactor(simulation): remove superseded skeleton String stubs (T-984)
D-229 makes BuildingPropertyTag the typed step-3 output that replaces the era/ society_profile/zone_palette String stubs on the skeleton. The tag + its derivation (zone_type_id, flavor_ref, era/ConstructionEra, FloorExtent) all landed under T-957/ T-1006; this removes the now-dead stub fields they superseded: - BlockSkeleton.era_modifications: Vec<EraModification> (era is per-footprint on BuildingPropertyTag.era now; era_cause retained as the block-level cause) - QuarterSkeleton.society_profile: SocietyProfileRef (culture → tag.flavor_ref) - QuarterSkeleton.zone_palette: Vec<ZoneDefinition> (zoning → tag.zone_type_id; distinct from FloorZone.zone_palette: ZonePalette, the real D-101 palette, kept) - the now-orphaned `EraModification` and `SocietyProfileRef` String aliases Kept: chunk_layout (real ChunkLayout / D-234 street network), z_band_zones (still uses the ZoneDefinition alias), boundaries (separate stub, not D-229 scope). cargo check + clippy -D warnings --all-targets clean; full server lib suite 1325 passed / 0 failed. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -46,16 +46,12 @@ pub type WaterType = String;
|
||||
pub type SpecializedFunction = String;
|
||||
/// Cultural / architectural era tag. Stub.
|
||||
pub type Era = String;
|
||||
/// Single era modification applied to a block (conversion, overlay, hybrid). Stub.
|
||||
pub type EraModification = String;
|
||||
/// Landmark slot description within a block. Stub.
|
||||
pub type LandmarkSlot = String;
|
||||
// `ChunkLayout`, `CorridorSpine`, `AccessPoint` are typed street-network structs
|
||||
// (D-234, #957) — see the "Street-network types" section below.
|
||||
/// District context — neighboring districts, world position, system. Stub.
|
||||
pub type QuarterContext = String;
|
||||
/// Society profile reference (Miri's cultural ingredients). Stub.
|
||||
pub type SocietyProfileRef = String;
|
||||
/// Zone definition — base palette + modifiers + zone name. Stub.
|
||||
pub type ZoneDefinition = String;
|
||||
/// District boundary system — edge descriptors with neighbors. Stub.
|
||||
@@ -1104,9 +1100,9 @@ pub struct BlockSkeleton {
|
||||
pub reservation: Option<ReservationId>,
|
||||
pub chunk_layout: ChunkLayout,
|
||||
pub hosted_sites: Vec<SocialSiteId>,
|
||||
// Per-block `era: Era` (String stub) removed in #957 — construction era now
|
||||
// lives per-footprint on `BuildingPropertyTag.era` (typed `ConstructionEra`).
|
||||
pub era_modifications: Vec<EraModification>,
|
||||
// Per-block `era: Era` / `era_modifications` String stubs removed (#957, T-984) —
|
||||
// construction era now lives per-footprint on `BuildingPropertyTag.era` (typed
|
||||
// `ConstructionEra`); `era_cause` is retained as the block-level cause.
|
||||
pub era_cause: Option<EraCause>,
|
||||
/// Build density percentage (0 = open/empty, 100 = fully built-up).
|
||||
/// Integer to avoid f32 non-determinism (D-010).
|
||||
@@ -1298,9 +1294,9 @@ pub struct QuarterSkeleton {
|
||||
pub social_sites: Vec<SocialSitePlacement>,
|
||||
pub access_points: Vec<AccessPoint>,
|
||||
|
||||
// ── Cultural / World Context ──────────────────────────
|
||||
pub society_profile: SocietyProfileRef,
|
||||
pub zone_palette: Vec<ZoneDefinition>,
|
||||
// Cultural / zone String stubs (`society_profile`, `zone_palette`) removed
|
||||
// (T-984, D-229) — per-building culture and zoning now live on
|
||||
// `BuildingPropertyTag` (`flavor_ref`, `zone_type_id`) in the district's `block_tags`.
|
||||
|
||||
// ── Boundary System ───────────────────────────────────
|
||||
pub boundaries: QuarterBoundaries,
|
||||
|
||||
Reference in New Issue
Block a user