From 4a3febbe291749826b4a817c28576c9c7c684fbf Mon Sep 17 00:00:00 2001 From: Jeroen Schweitzer Date: Mon, 6 Apr 2026 23:32:18 +0200 Subject: [PATCH] refactor(schema): rename commission_certified to commission_certifiable MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The flag is a susceptibility marker, not an absolute state — Commission certification only applies when trading in TRACTUS_PRIMARY zones. Compact-internal trade ignores it entirely. Renamed across all TOML source files, schema docs, workshop outputs, and D-184. Co-Authored-By: Claude Opus 4.6 --- decisions/economics.md | 2 +- .../commodity-catalog/commodities-final.toml | 74 +++++++++---------- .../commodity-catalog/gestalt-validation.md | 2 +- .../commodity-catalog/miri-validation.md | 2 +- .../commodity-catalog/schema-final.md | 8 +- .../commodity-catalog/tyre-round2.md | 18 ++--- wiki/economics/commodities.toml | 74 +++++++++---------- wiki/economics/schema.md | 8 +- 8 files changed, 94 insertions(+), 94 deletions(-) diff --git a/decisions/economics.md b/decisions/economics.md index c2c67ab80..30b781a99 100644 --- a/decisions/economics.md +++ b/decisions/economics.md @@ -238,7 +238,7 @@ This domain covers: currency system, commodity taxonomy, shadow economy, corpora - **3 luxury services** — tourism, entertainment/holo-content, fine dining/hospitality; location-bound - **Source of truth:** `wiki/economics/commodities.toml` and `wiki/economics/production_chains.toml` - 21 production chains including 2 substitution routes - - Schema: 14 fields per commodity including 3 political sub-flags (`commission_certified`, `compact_contested`, `shadow_viable`), `production_ubiquity`, `demand_model`, `panic_threshold_weeks` + - Schema: 14 fields per commodity including 3 political sub-flags (`commission_certifiable`, `compact_contested`, `shadow_viable`), `production_ubiquity`, `demand_model`, `panic_threshold_weeks` - **Rationale:** The catalog is the concrete realization of the D-173 taxonomy. 36 types is rich enough to produce meaningful geographic specialization while remaining authorable. The 14-field schema captures economic, political, and behavioral properties needed by the tâtonnement simulation. Two substitution routes prevent hard lock-outs in chains where one raw source is geographically constrained. - **Raised by:** Full planning team, Sprint 32 Workshop #801. - **Dissent:** None. diff --git a/docs/workshops/commodity-catalog/commodities-final.toml b/docs/workshops/commodity-catalog/commodities-final.toml index 61b8ab240..d292b7890 100644 --- a/docs/workshops/commodity-catalog/commodities-final.toml +++ b/docs/workshops/commodity-catalog/commodities-final.toml @@ -11,7 +11,7 @@ # unit tonnes | units | contracts # production_ubiquity ubiquitous | common | regional | concentrated | monopolistic # demand_model market | utility | compliance -# commission_certified Requires Commission certification for formal sale +# commission_certifiable Requires Commission certification for formal sale # compact_contested Compact contests Commission authority over this # shadow_viable Shadow market routinely exists # panic_threshold_weeks Stockpile level (in weeks) triggering panic hoarding; 0 = no panic @@ -35,7 +35,7 @@ bulk_class = "bulk" unit = "tonnes" production_ubiquity = "common" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -50,7 +50,7 @@ bulk_class = "precision" unit = "tonnes" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -65,7 +65,7 @@ bulk_class = "precision" unit = "tonnes" production_ubiquity = "monopolistic" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = false shadow_viable = true panic_threshold_weeks = 0 @@ -80,7 +80,7 @@ bulk_class = "bulk" unit = "tonnes" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -95,7 +95,7 @@ bulk_class = "perishable" unit = "tonnes" production_ubiquity = "ubiquitous" demand_model = "utility" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -110,7 +110,7 @@ bulk_class = "liquid" unit = "tonnes" production_ubiquity = "ubiquitous" demand_model = "utility" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 1 @@ -125,7 +125,7 @@ bulk_class = "standard" unit = "tonnes" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -140,7 +140,7 @@ bulk_class = "bulk" unit = "tonnes" production_ubiquity = "common" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -155,7 +155,7 @@ bulk_class = "liquid" unit = "tonnes" production_ubiquity = "common" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 0 @@ -176,7 +176,7 @@ bulk_class = "standard" unit = "tonnes" production_ubiquity = "common" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -191,7 +191,7 @@ bulk_class = "standard" unit = "tonnes" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -206,7 +206,7 @@ bulk_class = "liquid" unit = "tonnes" production_ubiquity = "common" demand_model = "utility" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 2 @@ -221,7 +221,7 @@ bulk_class = "standard" unit = "tonnes" production_ubiquity = "ubiquitous" demand_model = "utility" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 2 @@ -236,7 +236,7 @@ bulk_class = "compact" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -251,7 +251,7 @@ bulk_class = "standard" unit = "tonnes" production_ubiquity = "regional" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 3 @@ -266,7 +266,7 @@ bulk_class = "standard" unit = "tonnes" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -281,7 +281,7 @@ bulk_class = "standard" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -296,7 +296,7 @@ bulk_class = "compact" unit = "units" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -311,7 +311,7 @@ bulk_class = "compact" unit = "units" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = false shadow_viable = true panic_threshold_weeks = 0 @@ -332,7 +332,7 @@ bulk_class = "oversized" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -347,7 +347,7 @@ bulk_class = "oversized" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = false panic_threshold_weeks = 0 @@ -362,7 +362,7 @@ bulk_class = "oversized" unit = "units" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = false panic_threshold_weeks = 0 @@ -377,7 +377,7 @@ bulk_class = "compact" unit = "units" production_ubiquity = "ubiquitous" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -392,7 +392,7 @@ bulk_class = "precision" unit = "units" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 0 @@ -407,7 +407,7 @@ bulk_class = "compact" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 0 @@ -422,7 +422,7 @@ bulk_class = "oversized" unit = "units" production_ubiquity = "monopolistic" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 0 @@ -437,7 +437,7 @@ bulk_class = "oversized" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -452,7 +452,7 @@ bulk_class = "oversized" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -473,7 +473,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "common" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -488,7 +488,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "common" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -503,7 +503,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "regional" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 0 @@ -518,7 +518,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -533,7 +533,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "concentrated" demand_model = "compliance" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = false panic_threshold_weeks = 0 @@ -554,7 +554,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -569,7 +569,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "common" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -584,7 +584,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 diff --git a/docs/workshops/commodity-catalog/gestalt-validation.md b/docs/workshops/commodity-catalog/gestalt-validation.md index d810be862..496b0c35b 100644 --- a/docs/workshops/commodity-catalog/gestalt-validation.md +++ b/docs/workshops/commodity-catalog/gestalt-validation.md @@ -140,7 +140,7 @@ implant_hardware gate_components (cert+contested+shadow) (cert+contested+shadow, monopolistic) ``` -Both terminals are commission_certified + compact_contested + shadow_viable. A lattice_grade_material shortage disrupts both at once. The chemicals dependency adds a second, less geographic chokepoint. +Both terminals are commission_certifiable + compact_contested + shadow_viable. A lattice_grade_material shortage disrupts both at once. The chemicals dependency adds a second, less geographic chokepoint. Politically, this means: the Compact's shadow market for implant_hardware is structurally linked to the lattice_grade_material supply chain, which is east-reach anchored. Disrupting east-reach exports affects the formal market everywhere and the shadow market in the Compact zone. diff --git a/docs/workshops/commodity-catalog/miri-validation.md b/docs/workshops/commodity-catalog/miri-validation.md index c10986c3d..9aa77debc 100644 --- a/docs/workshops/commodity-catalog/miri-validation.md +++ b/docs/workshops/commodity-catalog/miri-validation.md @@ -92,7 +92,7 @@ lattice_substrate → gate_components (with advanced_alloys + drive_cores) Assessment: - **Viable.** `lattice_grade_material` is the only monopolistic raw in the catalog. East_reach holds the only source. Everything downstream of lattice_substrate is gated on east_reach supply. - `implant_hardware` and `gate_components` are both high-value finals requiring lattice_substrate. This gives east_reach structural importance to two critical civilizational systems (neural tech and wormhole infrastructure). -- `commission_certified = true` and `shadow_viable = true` on `lattice_grade_material` correctly models the east_reach political tension — state-sanctioned scarcity creates black market pressure. +- `commission_certifiable = true` and `shadow_viable = true` on `lattice_grade_material` correctly models the east_reach political tension — state-sanctioned scarcity creates black market pressure. - The double-path through lattice (implants + gates) means east_reach supply disruption has cascading effects in two independent final-good chains simultaneously. This is good design; it makes east_reach conflict economically legible. --- diff --git a/docs/workshops/commodity-catalog/schema-final.md b/docs/workshops/commodity-catalog/schema-final.md index ea769b12f..45269767c 100644 --- a/docs/workshops/commodity-catalog/schema-final.md +++ b/docs/workshops/commodity-catalog/schema-final.md @@ -35,7 +35,7 @@ CREATE TABLE commodities ( demand_model TEXT NOT NULL CHECK(demand_model IN ( 'market', 'utility', 'compliance' )), - commission_certified INTEGER NOT NULL DEFAULT 0, + commission_certifiable INTEGER NOT NULL DEFAULT 0, compact_contested INTEGER NOT NULL DEFAULT 0, shadow_viable INTEGER NOT NULL DEFAULT 0, panic_threshold_weeks INTEGER NOT NULL DEFAULT 0 CHECK(panic_threshold_weeks >= 0), @@ -97,7 +97,7 @@ CREATE INDEX idx_chain_inputs_commodity ON chain_inputs(commodity_id); | `unit` | enum | yes | `tonnes`, `units`, `contracts` | quantity basis | | `production_ubiquity` | enum | yes | `ubiquitous`, `common`, `regional`, `concentrated`, `monopolistic` | B-S init guidance | | `demand_model` | enum | yes | `market`, `utility`, `compliance` | B-S demand floors | -| `commission_certified` | bool | yes | true/false | Gestalt political | +| `commission_certifiable` | bool | yes | true/false | Gestalt political | | `compact_contested` | bool | yes | true/false | Gestalt political | | `shadow_viable` | bool | yes | true/false | Gestalt political | | `panic_threshold_weeks` | int | yes | ≥ 0 | B-S panic mechanism | @@ -151,7 +151,7 @@ CREATE INDEX idx_chain_inputs_commodity ON chain_inputs(commodity_id); | V-10 | Services (`tier = service_*`) must NOT appear as chain inputs or outputs | D-173: services outside production chain | | V-11 | `panic_threshold_weeks >= 0` | Schema constraint | | V-12 | `demand_model = "utility"` requires `elasticity` ∈ {perfectly_inelastic, inelastic} | Utility demand can't be highly deferrable | -| V-13 | `demand_model = "compliance"` requires `commission_certified = true` | Compliance demand requires a certifying authority | +| V-13 | `demand_model = "compliance"` requires `commission_certifiable = true` | Compliance demand requires a certifying authority | | V-14 | Services must have `bulk_class = "non_physical"` | Services can't be transported | | V-15 | Services must have `unit = "contracts"` | Service unit convention | | V-16 | Commodity IDs must match pattern `[a-z][a-z0-9_]*` | Slug format for Rust/SQL | @@ -163,7 +163,7 @@ CREATE INDEX idx_chain_inputs_commodity ON chain_inputs(commodity_id); | W-01 | Every non-service physical commodity SHOULD appear as chain input or chain output | Orphan detection | | W-02 | Raw tier commodities SHOULD NOT appear as chain outputs | Raws are extracted, not produced | | W-03 | Final tier commodities SHOULD NOT appear as chain inputs | Finals are end-of-chain | -| W-04 | `shadow_viable = true` SHOULD have `commission_certified = true` OR `compact_contested = true` | Shadow markets arise from regulatory friction | +| W-04 | `shadow_viable = true` SHOULD have `commission_certifiable = true` OR `compact_contested = true` | Shadow markets arise from regulatory friction | | W-05 | `production_ubiquity = "monopolistic"` commodities with `elasticity = "inelastic"` SHOULD be reviewed | Monopoly + inelastic = potential runaway pricing | ### Coverage warnings (future — gated by corp data) diff --git a/docs/workshops/commodity-catalog/tyre-round2.md b/docs/workshops/commodity-catalog/tyre-round2.md index e4e7cd7b4..9a2a48d55 100644 --- a/docs/workshops/commodity-catalog/tyre-round2.md +++ b/docs/workshops/commodity-catalog/tyre-round2.md @@ -69,7 +69,7 @@ I'm merging the best from all four proposals. My Round 1 had 8 fields. The conve - `demand_model` — determines tâtonnement behavior: `market` (standard), `utility` (population-driven floor, never hits zero), `compliance` (regulation-driven, tracks Commission presence). This is what makes water/fuel behave differently from consumer goods under the same supply shock. **From Gestalt (replaces my `political_sensitivity` boolean):** -- `commission_certified` — requires Commission certification for formal sale. The cost of certification IS the shadow economy incentive. +- `commission_certifiable` — requires Commission certification for formal sale. The cost of certification IS the shadow economy incentive. - `compact_contested` — Compact officially contests Commission authority. Creates the political friction. - `shadow_viable` — shadow market routinely exists. Flags where the shadow economy bites. @@ -98,7 +98,7 @@ Three booleans instead of one gives the sim three independent political signals # unit — tonnes | units | contracts # production_ubiquity — ubiquitous | common | regional | concentrated | monopolistic # demand_model — market | utility | compliance -# commission_certified — bool; requires Commission certification for formal sale +# commission_certifiable — bool; requires Commission certification for formal sale # compact_contested — bool; Compact contests Commission authority over this # shadow_viable — bool; shadow market routinely exists for this commodity # description — optional flavor text (for wiki/UI, not consumed by sim) @@ -332,7 +332,7 @@ CREATE TABLE commodities ( demand_model TEXT NOT NULL CHECK(demand_model IN ( 'market', 'utility', 'compliance' )), - commission_certified INTEGER NOT NULL DEFAULT 0, + commission_certifiable INTEGER NOT NULL DEFAULT 0, compact_contested INTEGER NOT NULL DEFAULT 0, shadow_viable INTEGER NOT NULL DEFAULT 0, description TEXT @@ -376,14 +376,14 @@ All Round 1 rules remain. Additions for new fields: | All `bulk_class` values must match enum (7 values now) | Expanded from 4 | | Services must have `bulk_class = "non_physical"` | Services can't be transported | | `demand_model = "utility"` commodities must have `elasticity` ∈ {perfectly_inelastic, inelastic} | Utility goods can't be highly elastic — people need them | -| `demand_model = "compliance"` commodities must have `commission_certified = true` | Compliance demand requires a certifying authority | +| `demand_model = "compliance"` commodities must have `commission_certifiable = true` | Compliance demand requires a certifying authority | | `fusion_fuel` must appear as an intermediate, not raw | Directive (c) constraint | ### New soft warnings | Rule | Rationale | |------|-----------| -| Commodities with `shadow_viable = true` SHOULD have `commission_certified = true` OR `compact_contested = true` | Shadow markets arise from regulatory friction — if there's no friction, why shadow? | +| Commodities with `shadow_viable = true` SHOULD have `commission_certifiable = true` OR `compact_contested = true` | Shadow markets arise from regulatory friction — if there's no friction, why shadow? | | `production_ubiquity = "monopolistic"` commodities SHOULD have `elasticity` ∈ {elastic, highly_elastic} | Monopolistic supply + inelastic demand = runaway prices with no equilibrium | --- @@ -402,7 +402,7 @@ bulk_class = "liquid" unit = "tonnes" production_ubiquity = "ubiquitous" demand_model = "utility" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false description = "Water ice, atmospheric gases. Life support critical. Fusion fuel feedstock." @@ -420,7 +420,7 @@ bulk_class = "liquid" unit = "tonnes" production_ubiquity = "common" demand_model = "utility" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true description = "Deuterium/tritium refined from water. Low yield. Continuous consumption." @@ -438,7 +438,7 @@ bulk_class = "precision" unit = "units" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true description = "Neural interfaces, lattice components. Commission-certified. THE Compact flashpoint." @@ -478,7 +478,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "concentrated" demand_model = "compliance" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = false description = "Commission regulatory certification. Tractus-denominated. Availability inverse to shadow economy." diff --git a/wiki/economics/commodities.toml b/wiki/economics/commodities.toml index 61b8ab240..d292b7890 100644 --- a/wiki/economics/commodities.toml +++ b/wiki/economics/commodities.toml @@ -11,7 +11,7 @@ # unit tonnes | units | contracts # production_ubiquity ubiquitous | common | regional | concentrated | monopolistic # demand_model market | utility | compliance -# commission_certified Requires Commission certification for formal sale +# commission_certifiable Requires Commission certification for formal sale # compact_contested Compact contests Commission authority over this # shadow_viable Shadow market routinely exists # panic_threshold_weeks Stockpile level (in weeks) triggering panic hoarding; 0 = no panic @@ -35,7 +35,7 @@ bulk_class = "bulk" unit = "tonnes" production_ubiquity = "common" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -50,7 +50,7 @@ bulk_class = "precision" unit = "tonnes" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -65,7 +65,7 @@ bulk_class = "precision" unit = "tonnes" production_ubiquity = "monopolistic" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = false shadow_viable = true panic_threshold_weeks = 0 @@ -80,7 +80,7 @@ bulk_class = "bulk" unit = "tonnes" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -95,7 +95,7 @@ bulk_class = "perishable" unit = "tonnes" production_ubiquity = "ubiquitous" demand_model = "utility" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -110,7 +110,7 @@ bulk_class = "liquid" unit = "tonnes" production_ubiquity = "ubiquitous" demand_model = "utility" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 1 @@ -125,7 +125,7 @@ bulk_class = "standard" unit = "tonnes" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -140,7 +140,7 @@ bulk_class = "bulk" unit = "tonnes" production_ubiquity = "common" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -155,7 +155,7 @@ bulk_class = "liquid" unit = "tonnes" production_ubiquity = "common" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 0 @@ -176,7 +176,7 @@ bulk_class = "standard" unit = "tonnes" production_ubiquity = "common" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -191,7 +191,7 @@ bulk_class = "standard" unit = "tonnes" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -206,7 +206,7 @@ bulk_class = "liquid" unit = "tonnes" production_ubiquity = "common" demand_model = "utility" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 2 @@ -221,7 +221,7 @@ bulk_class = "standard" unit = "tonnes" production_ubiquity = "ubiquitous" demand_model = "utility" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 2 @@ -236,7 +236,7 @@ bulk_class = "compact" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -251,7 +251,7 @@ bulk_class = "standard" unit = "tonnes" production_ubiquity = "regional" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 3 @@ -266,7 +266,7 @@ bulk_class = "standard" unit = "tonnes" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -281,7 +281,7 @@ bulk_class = "standard" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -296,7 +296,7 @@ bulk_class = "compact" unit = "units" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -311,7 +311,7 @@ bulk_class = "compact" unit = "units" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = false shadow_viable = true panic_threshold_weeks = 0 @@ -332,7 +332,7 @@ bulk_class = "oversized" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -347,7 +347,7 @@ bulk_class = "oversized" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = false panic_threshold_weeks = 0 @@ -362,7 +362,7 @@ bulk_class = "oversized" unit = "units" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = false panic_threshold_weeks = 0 @@ -377,7 +377,7 @@ bulk_class = "compact" unit = "units" production_ubiquity = "ubiquitous" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -392,7 +392,7 @@ bulk_class = "precision" unit = "units" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 0 @@ -407,7 +407,7 @@ bulk_class = "compact" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 0 @@ -422,7 +422,7 @@ bulk_class = "oversized" unit = "units" production_ubiquity = "monopolistic" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 0 @@ -437,7 +437,7 @@ bulk_class = "oversized" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -452,7 +452,7 @@ bulk_class = "oversized" unit = "units" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -473,7 +473,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "common" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -488,7 +488,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "common" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -503,7 +503,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "regional" demand_model = "market" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = true panic_threshold_weeks = 0 @@ -518,7 +518,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -533,7 +533,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "concentrated" demand_model = "compliance" -commission_certified = true +commission_certifiable = true compact_contested = true shadow_viable = false panic_threshold_weeks = 0 @@ -554,7 +554,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "concentrated" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -569,7 +569,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "common" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 @@ -584,7 +584,7 @@ bulk_class = "non_physical" unit = "contracts" production_ubiquity = "regional" demand_model = "market" -commission_certified = false +commission_certifiable = false compact_contested = false shadow_viable = false panic_threshold_weeks = 0 diff --git a/wiki/economics/schema.md b/wiki/economics/schema.md index ea769b12f..45269767c 100644 --- a/wiki/economics/schema.md +++ b/wiki/economics/schema.md @@ -35,7 +35,7 @@ CREATE TABLE commodities ( demand_model TEXT NOT NULL CHECK(demand_model IN ( 'market', 'utility', 'compliance' )), - commission_certified INTEGER NOT NULL DEFAULT 0, + commission_certifiable INTEGER NOT NULL DEFAULT 0, compact_contested INTEGER NOT NULL DEFAULT 0, shadow_viable INTEGER NOT NULL DEFAULT 0, panic_threshold_weeks INTEGER NOT NULL DEFAULT 0 CHECK(panic_threshold_weeks >= 0), @@ -97,7 +97,7 @@ CREATE INDEX idx_chain_inputs_commodity ON chain_inputs(commodity_id); | `unit` | enum | yes | `tonnes`, `units`, `contracts` | quantity basis | | `production_ubiquity` | enum | yes | `ubiquitous`, `common`, `regional`, `concentrated`, `monopolistic` | B-S init guidance | | `demand_model` | enum | yes | `market`, `utility`, `compliance` | B-S demand floors | -| `commission_certified` | bool | yes | true/false | Gestalt political | +| `commission_certifiable` | bool | yes | true/false | Gestalt political | | `compact_contested` | bool | yes | true/false | Gestalt political | | `shadow_viable` | bool | yes | true/false | Gestalt political | | `panic_threshold_weeks` | int | yes | ≥ 0 | B-S panic mechanism | @@ -151,7 +151,7 @@ CREATE INDEX idx_chain_inputs_commodity ON chain_inputs(commodity_id); | V-10 | Services (`tier = service_*`) must NOT appear as chain inputs or outputs | D-173: services outside production chain | | V-11 | `panic_threshold_weeks >= 0` | Schema constraint | | V-12 | `demand_model = "utility"` requires `elasticity` ∈ {perfectly_inelastic, inelastic} | Utility demand can't be highly deferrable | -| V-13 | `demand_model = "compliance"` requires `commission_certified = true` | Compliance demand requires a certifying authority | +| V-13 | `demand_model = "compliance"` requires `commission_certifiable = true` | Compliance demand requires a certifying authority | | V-14 | Services must have `bulk_class = "non_physical"` | Services can't be transported | | V-15 | Services must have `unit = "contracts"` | Service unit convention | | V-16 | Commodity IDs must match pattern `[a-z][a-z0-9_]*` | Slug format for Rust/SQL | @@ -163,7 +163,7 @@ CREATE INDEX idx_chain_inputs_commodity ON chain_inputs(commodity_id); | W-01 | Every non-service physical commodity SHOULD appear as chain input or chain output | Orphan detection | | W-02 | Raw tier commodities SHOULD NOT appear as chain outputs | Raws are extracted, not produced | | W-03 | Final tier commodities SHOULD NOT appear as chain inputs | Finals are end-of-chain | -| W-04 | `shadow_viable = true` SHOULD have `commission_certified = true` OR `compact_contested = true` | Shadow markets arise from regulatory friction | +| W-04 | `shadow_viable = true` SHOULD have `commission_certifiable = true` OR `compact_contested = true` | Shadow markets arise from regulatory friction | | W-05 | `production_ubiquity = "monopolistic"` commodities with `elasticity = "inelastic"` SHOULD be reviewed | Monopoly + inelastic = potential runaway pricing | ### Coverage warnings (future — gated by corp data)