feat(simulation): brand layer schema and import pipeline (#827)
Adds the brand layer per D-189 §5: - Schema: brand_products, brand_inputs, system_fiscal, corp_financial_state, corp_lifecycle_events (+ 5 indexes). - Importer: reads wiki/economics/corporations/brands.toml, populates the new tables, validates V-B01–V-B05 structural rules, and derives system_fiscal for inhabited systems. - Data: 8 brand_products, 16 brand_inputs, 301 system_fiscal rows. Brand products are demand nodes — they consume commodities; they are not commodities themselves (D-185). Depends on copy PR #127 for the corp records referenced by brands.toml.
This commit is contained in:
@@ -0,0 +1,276 @@
|
||||
# ==========================================================================
|
||||
# Settled Reach — Brand Product Records (Phase 2 Demand Stubs)
|
||||
# Source of truth for brand_products and brand_inputs tables.
|
||||
# Compiled to systems.db via `make economy-db`.
|
||||
#
|
||||
# These 4 canonical brand corps register as commodity demand nodes in the
|
||||
# tâtonnement simulation (D-185: brands consume commodities, not the reverse).
|
||||
# Pricing model and cultural premium curves are Phase 3+ deliverables (D-189).
|
||||
#
|
||||
# Fields per [[brand_products]] entry:
|
||||
# brand_product_id Unique slug (corp_id + product slug)
|
||||
# corp_id Must match a slug in wiki/corporations/
|
||||
# product_name Display name
|
||||
# brand_category terroir|heritage_craft|tech_premium|cultural|
|
||||
# service_premium|commodity_branded|design_heritage|platform_catalogue
|
||||
# value_trajectory appreciating|depreciating|timeless
|
||||
# scarcity_class capped|constrained|scalable|unlimited
|
||||
# product_subcategory Readable product type descriptor
|
||||
# base_premium_multiplier Multiplier over raw commodity input cost (Phase 3 pricing)
|
||||
# premium_floor Minimum administered price floor (Phase 3 pricing)
|
||||
# origin_system GJ catalog ID — must match star_systems.system_id
|
||||
# terroir_locked true: production cannot move from origin_system
|
||||
# currency_denomination tractus|mark|mixed|sol_adjacent
|
||||
# shadow_viable true: circulates in shadow economy
|
||||
# brand_tier halo|volume
|
||||
# halo_brand_id For volume tiers: brand_product_id of parent halo product
|
||||
#
|
||||
# Fields per [[brand_inputs]] entry:
|
||||
# brand_product_id References a brand_products entry above
|
||||
# commodity_id Must match commodities.toml
|
||||
# quantity Demand coefficient (annual units consumed per production run)
|
||||
#
|
||||
# Decisions: D-185 (brands as demand nodes), D-189 (brand layer architecture),
|
||||
# D-190 (volume calibration), D-182 (TOML pipeline)
|
||||
# ==========================================================================
|
||||
|
||||
|
||||
# ==========================================================================
|
||||
# CALLOWAY DISTILLERY (north_reach — terroir, appreciating)
|
||||
# Eleven distilleries, 400 years of production. GJ 3325.
|
||||
# Inputs: grain (agricultural_produce) + water for single malt whisky.
|
||||
# ==========================================================================
|
||||
|
||||
[[brand_products]]
|
||||
brand_product_id = "calloway-single-malt-halo"
|
||||
corp_id = "calloway-distillery"
|
||||
product_name = "Calloway Single Malt 25yr"
|
||||
brand_category = "terroir"
|
||||
value_trajectory = "appreciating"
|
||||
scarcity_class = "capped"
|
||||
product_subcategory = "aged_spirits"
|
||||
base_premium_multiplier = 18.0
|
||||
premium_floor = 0.85
|
||||
origin_system = "GJ 3325"
|
||||
terroir_locked = true
|
||||
currency_denomination = "tractus"
|
||||
shadow_viable = true
|
||||
brand_tier = "halo"
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "calloway-single-malt-halo"
|
||||
commodity_id = "agricultural_produce"
|
||||
quantity = 0.12 # grain — ~12% of annual produce demand per distillery output unit
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "calloway-single-malt-halo"
|
||||
commodity_id = "water"
|
||||
quantity = 0.08 # distillation water
|
||||
|
||||
[[brand_products]]
|
||||
brand_product_id = "calloway-reserve-volume"
|
||||
corp_id = "calloway-distillery"
|
||||
product_name = "Calloway Reserve"
|
||||
brand_category = "terroir"
|
||||
value_trajectory = "appreciating"
|
||||
scarcity_class = "constrained"
|
||||
product_subcategory = "aged_spirits"
|
||||
base_premium_multiplier = 4.5
|
||||
premium_floor = 0.30
|
||||
origin_system = "GJ 3325"
|
||||
terroir_locked = true
|
||||
currency_denomination = "tractus"
|
||||
shadow_viable = true
|
||||
brand_tier = "volume"
|
||||
halo_brand_id = "calloway-single-malt-halo"
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "calloway-reserve-volume"
|
||||
commodity_id = "agricultural_produce"
|
||||
quantity = 0.55 # larger grain demand — volume tier drives commodity draw
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "calloway-reserve-volume"
|
||||
commodity_id = "water"
|
||||
quantity = 0.35
|
||||
|
||||
|
||||
# ==========================================================================
|
||||
# VINS DE GRAND VIDE (west_reach — terroir, appreciating / timeless)
|
||||
# Négociant cooperative, GJ 395. Wine production from châteaux network.
|
||||
# Inputs: agricultural_produce (grapes) + water.
|
||||
# ==========================================================================
|
||||
|
||||
[[brand_products]]
|
||||
brand_product_id = "vgv-premier-cru-halo"
|
||||
corp_id = "vins-de-grand-vide"
|
||||
product_name = "Grand Vide Premier Cru"
|
||||
brand_category = "terroir"
|
||||
value_trajectory = "appreciating"
|
||||
scarcity_class = "capped"
|
||||
product_subcategory = "fine_wine"
|
||||
base_premium_multiplier = 12.0
|
||||
premium_floor = 0.70
|
||||
origin_system = "GJ 395"
|
||||
terroir_locked = true
|
||||
currency_denomination = "tractus"
|
||||
shadow_viable = true
|
||||
brand_tier = "halo"
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "vgv-premier-cru-halo"
|
||||
commodity_id = "agricultural_produce"
|
||||
quantity = 0.18 # estate grapes — limited châteaux harvest
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "vgv-premier-cru-halo"
|
||||
commodity_id = "water"
|
||||
quantity = 0.04
|
||||
|
||||
[[brand_products]]
|
||||
brand_product_id = "vgv-standard-volume"
|
||||
corp_id = "vins-de-grand-vide"
|
||||
product_name = "Grand Vide Standard"
|
||||
brand_category = "terroir"
|
||||
value_trajectory = "timeless"
|
||||
scarcity_class = "scalable"
|
||||
product_subcategory = "wine"
|
||||
base_premium_multiplier = 2.2
|
||||
premium_floor = 0.15
|
||||
origin_system = "GJ 395"
|
||||
terroir_locked = false
|
||||
currency_denomination = "tractus"
|
||||
shadow_viable = false
|
||||
brand_tier = "volume"
|
||||
halo_brand_id = "vgv-premier-cru-halo"
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "vgv-standard-volume"
|
||||
commodity_id = "agricultural_produce"
|
||||
quantity = 0.80 # négociant aggregation — largest agricultural demand node
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "vgv-standard-volume"
|
||||
commodity_id = "water"
|
||||
quantity = 0.20
|
||||
|
||||
|
||||
# ==========================================================================
|
||||
# THRDS (north_reach — heritage_craft, timeless)
|
||||
# Cold-weather technical clothing cooperative, GJ 475.
|
||||
# Inputs: textiles (brach fiber) + organic_compounds (dye, finish).
|
||||
# ==========================================================================
|
||||
|
||||
[[brand_products]]
|
||||
brand_product_id = "thrds-origin-halo"
|
||||
corp_id = "thrds"
|
||||
product_name = "thrds Origin"
|
||||
brand_category = "heritage_craft"
|
||||
value_trajectory = "timeless"
|
||||
scarcity_class = "constrained"
|
||||
product_subcategory = "technical_clothing"
|
||||
base_premium_multiplier = 6.0
|
||||
premium_floor = 0.50
|
||||
origin_system = "GJ 475"
|
||||
terroir_locked = true
|
||||
currency_denomination = "tractus"
|
||||
shadow_viable = false
|
||||
brand_tier = "halo"
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "thrds-origin-halo"
|
||||
commodity_id = "textiles"
|
||||
quantity = 0.30 # brach fiber — origin-specific weave
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "thrds-origin-halo"
|
||||
commodity_id = "organic_compounds"
|
||||
quantity = 0.08 # plant-derived dyes and finishing compounds
|
||||
|
||||
[[brand_products]]
|
||||
brand_product_id = "thrds-standard-volume"
|
||||
corp_id = "thrds"
|
||||
product_name = "thrds Standard"
|
||||
brand_category = "heritage_craft"
|
||||
value_trajectory = "timeless"
|
||||
scarcity_class = "scalable"
|
||||
product_subcategory = "technical_clothing"
|
||||
base_premium_multiplier = 2.8
|
||||
premium_floor = 0.20
|
||||
origin_system = "GJ 475"
|
||||
terroir_locked = false
|
||||
currency_denomination = "tractus"
|
||||
shadow_viable = false
|
||||
brand_tier = "volume"
|
||||
halo_brand_id = "thrds-origin-halo"
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "thrds-standard-volume"
|
||||
commodity_id = "textiles"
|
||||
quantity = 1.20 # primary textile demand driver (volume tier production)
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "thrds-standard-volume"
|
||||
commodity_id = "organic_compounds"
|
||||
quantity = 0.25
|
||||
|
||||
|
||||
# ==========================================================================
|
||||
# BÍFRÖST MARMOR (Compact / north_reach — terroir, appreciating)
|
||||
# Kvitfjell moon marble quarry, Nyrheim (GJ 3737). Nyrheim Cooperative subsidiary.
|
||||
# Inputs: stone (raw marble) + chemicals (polishing, finishing agents).
|
||||
# Shadow viable: Compact-adjacent, some Sol trade on interior luxury markets.
|
||||
# ==========================================================================
|
||||
|
||||
[[brand_products]]
|
||||
brand_product_id = "bifrost-grade-a-halo"
|
||||
corp_id = "bifrost-marmor"
|
||||
product_name = "Kvitfjell Grade A"
|
||||
brand_category = "terroir"
|
||||
value_trajectory = "appreciating"
|
||||
scarcity_class = "capped"
|
||||
product_subcategory = "architectural_stone"
|
||||
base_premium_multiplier = 22.0
|
||||
premium_floor = 1.20
|
||||
origin_system = "GJ 3737"
|
||||
terroir_locked = true
|
||||
currency_denomination = "mark"
|
||||
shadow_viable = true
|
||||
brand_tier = "halo"
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "bifrost-grade-a-halo"
|
||||
commodity_id = "stone"
|
||||
quantity = 0.40 # high-purity calcite marble extraction — geological scarcity
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "bifrost-grade-a-halo"
|
||||
commodity_id = "chemicals"
|
||||
quantity = 0.10 # precision polishing compounds
|
||||
|
||||
[[brand_products]]
|
||||
brand_product_id = "bifrost-commercial-volume"
|
||||
corp_id = "bifrost-marmor"
|
||||
product_name = "Kvitfjell Commercial"
|
||||
brand_category = "terroir"
|
||||
value_trajectory = "appreciating"
|
||||
scarcity_class = "constrained"
|
||||
product_subcategory = "architectural_stone"
|
||||
base_premium_multiplier = 5.5
|
||||
premium_floor = 0.40
|
||||
origin_system = "GJ 3737"
|
||||
terroir_locked = true
|
||||
currency_denomination = "mixed"
|
||||
shadow_viable = true
|
||||
brand_tier = "volume"
|
||||
halo_brand_id = "bifrost-grade-a-halo"
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "bifrost-commercial-volume"
|
||||
commodity_id = "stone"
|
||||
quantity = 1.50 # commercial-grade quarrying — volume demand node
|
||||
|
||||
[[brand_inputs]]
|
||||
brand_product_id = "bifrost-commercial-volume"
|
||||
commodity_id = "chemicals"
|
||||
quantity = 0.30
|
||||
Reference in New Issue
Block a user