Examples · µLang Git production contract

ForgePolicyActivation

Entity
RuleSetActivation · 10 fields
Actions
activate_rules initialize_forge
Clauses
14
sha256
404a998926f152ddda02caa4650f3d5e5c8e40d2c98768402aaabd8e871c9ab3
Source
.forge/rules/ForgePolicyActivation.ul · raw · open in the playground
// Governed Forge policy. Clause IDs are stable SOURCE names.
CONTRACT ForgePolicyActivation {
  ENFORCEMENT_MODE: enforced
  CONTEXT {
    ENTITIES RuleSetActivation {
      rule_set_hash: string
      landed_on_main: bool
      compiled_ok: bool
      unsupported_clause_count: int
      all_contracts_enforce_mode: bool
      clause_count: int
      human_approvals: int
      requester_is_genesis_authority: bool
      active_policy_exists: bool
      requester_is_owner: bool
    }
    CONSTANTS {
      zero: int == 0 [SOURCE:FORGE-POLICY-V1]
      max_clauses: int == 200 [SOURCE:FORGE-POLICY-V1]
    }
  }
  TRIGGER {
    activate_rules()
    initialize_forge()
  }
  PROHIBITION {
    FORBID activate_rules WHEN RuleSetActivation.landed_on_main == false [SOURCE:activation_landed]
    FORBID activate_rules WHEN RuleSetActivation.compiled_ok == false [SOURCE:activation_compiled]
    FORBID activate_rules WHEN RuleSetActivation.unsupported_clause_count != zero [SOURCE:activation_supported]
    FORBID activate_rules WHEN RuleSetActivation.all_contracts_enforce_mode == false [SOURCE:activation_enforced]
    FORBID activate_rules WHEN RuleSetActivation.clause_count > max_clauses [SOURCE:activation_clause_cap]
    FORBID activate_rules WHEN RuleSetActivation.clause_count <= zero [SOURCE:activation_nonempty]
    FORBID activate_rules WHEN RuleSetActivation.requester_is_owner == false [SOURCE:activation_owner]
    FORBID initialize_forge WHEN RuleSetActivation.requester_is_genesis_authority == false [SOURCE:genesis_authority]
    FORBID initialize_forge WHEN RuleSetActivation.active_policy_exists == true [SOURCE:genesis_once]
    FORBID initialize_forge WHEN RuleSetActivation.compiled_ok == false [SOURCE:genesis_compiled]
    FORBID initialize_forge WHEN RuleSetActivation.unsupported_clause_count != zero [SOURCE:genesis_supported]
    FORBID initialize_forge WHEN RuleSetActivation.all_contracts_enforce_mode == false [SOURCE:genesis_enforced]
    FORBID initialize_forge WHEN RuleSetActivation.clause_count > max_clauses [SOURCE:genesis_clause_cap]
    FORBID initialize_forge WHEN RuleSetActivation.clause_count <= zero [SOURCE:genesis_nonempty]
  }
  OBSERVABILITY {
    LOG "ForgePolicyActivation evaluated" ON decision
  }
}