@agent-e/core 1.5.0 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
1
  /** High-level parameter categories (what it IS, not what it's called) */
2
2
  type ParameterType = 'cost' | 'fee' | 'reward' | 'yield' | 'rate' | 'cap' | 'penalty' | 'multiplier' | string;
3
3
  /** How a parameter change affects net currency flow */
4
- type FlowImpact = 'sink' | 'faucet' | 'neutral' | 'mixed';
4
+ type FlowImpact = 'sink' | 'faucet' | 'neutral' | 'mixed' | 'friction' | 'redistribution';
5
5
  /** Scope narrows which concrete parameter a type resolves to */
6
6
  interface ParameterScope {
7
7
  system?: string;
@@ -22,6 +22,16 @@ interface RegisteredParameter {
22
22
  currentValue?: number;
23
23
  /** Human-readable description */
24
24
  description?: string;
25
+ /** Priority tiebreaker — higher wins when specificity scores are equal */
26
+ priority?: number;
27
+ /** Human-readable label for UIs and logs */
28
+ label?: string;
29
+ }
30
+ /** Result of registry.validate() */
31
+ interface RegistryValidationResult {
32
+ valid: boolean;
33
+ warnings: string[];
34
+ errors: string[];
25
35
  }
26
36
  declare class ParameterRegistry {
27
37
  private parameters;
@@ -33,11 +43,12 @@ declare class ParameterRegistry {
33
43
  * Resolve a parameterType + scope to a concrete RegisteredParameter.
34
44
  * Returns the best match, or undefined if no match.
35
45
  *
36
- * Matching rules (in priority order):
37
- * 1. Exact type match + all scope fields match
38
- * 2. Exact type match + partial scope match (tags overlap)
39
- * 3. Exact type match + no scope constraints
40
- * 4. undefined (no match)
46
+ * Matching rules:
47
+ * 1. Filter candidates by type
48
+ * 2. Score each by scope specificity (system +10, currency +5, tags +3 each)
49
+ * 3. Mismatched scope fields disqualify (score = -Infinity)
50
+ * 4. Ties broken by `priority` (higher wins), then registration order
51
+ * 5. All disqualified → undefined
41
52
  */
42
53
  resolve(type: ParameterType, scope?: Partial<ParameterScope>): RegisteredParameter | undefined;
43
54
  /** Find all parameters of a given type. */
@@ -54,7 +65,12 @@ declare class ParameterRegistry {
54
65
  getAll(): RegisteredParameter[];
55
66
  /** Number of registered parameters. */
56
67
  get size(): number;
57
- private scopeMatchScore;
68
+ /**
69
+ * Validate the registry for common misconfigurations.
70
+ * Returns warnings (non-fatal) and errors (likely broken).
71
+ */
72
+ validate(): RegistryValidationResult;
73
+ private scopeSpecificity;
58
74
  }
59
75
 
60
76
  type EconomicEventType = 'trade' | 'mint' | 'burn' | 'transfer' | 'produce' | 'consume' | 'role_change' | 'enter' | 'churn';
@@ -143,6 +159,9 @@ interface EconomyMetrics {
143
159
  giftTradeRatio: number;
144
160
  disposalTradeRatioByCurrency: Record<string, number>;
145
161
  disposalTradeRatio: number;
162
+ systems: string[];
163
+ sources: string[];
164
+ sinks: string[];
146
165
  flowBySystem: Record<string, number>;
147
166
  activityBySystem: Record<string, number>;
148
167
  participantsBySystem: Record<string, number>;
@@ -320,6 +339,8 @@ interface AgentEConfig {
320
339
  dominantRoles?: string[];
321
340
  idealDistribution?: Record<string, number>;
322
341
  parameters?: RegisteredParameter[];
342
+ /** Run registry.validate() on startup and log warnings/errors (default: true) */
343
+ validateRegistry?: boolean;
323
344
  tickConfig?: Partial<TickConfig>;
324
345
  gracePeriod?: number;
325
346
  checkInterval?: number;
@@ -514,6 +535,7 @@ declare class Planner {
514
535
  private lockedParams;
515
536
  private constraints;
516
537
  private cooldowns;
538
+ private typeCooldowns;
517
539
  private activePlanCount;
518
540
  lock(param: string): void;
519
541
  unlock(param: string): void;
@@ -534,6 +556,8 @@ declare class Planner {
534
556
  isOnCooldown(param: string, currentTick: number, cooldownTicks: number): boolean;
535
557
  /** Reset all cooldowns (useful for testing) */
536
558
  resetCooldowns(): void;
559
+ private typeCooldownKey;
560
+ private isTypeCooldown;
537
561
  }
538
562
 
539
563
  declare class Executor {
@@ -560,6 +584,20 @@ declare class PersonaTracker {
560
584
  private classify;
561
585
  }
562
586
 
587
+ /**
588
+ * Find the system with the worst metric value.
589
+ * Works with flat Record<string, number> maps like flowBySystem.
590
+ *
591
+ * @param metrics - Current economy metrics snapshot
592
+ * @param check - Function that returns a numeric "badness" score per system (higher = worse)
593
+ * @param tolerancePercent - Only flag if the worst system exceeds the average by this % (default 0)
594
+ * @returns The system name and its score, or undefined if no systems or none exceeds tolerance
595
+ */
596
+ declare function findWorstSystem(metrics: EconomyMetrics, check: (systemName: string, metrics: EconomyMetrics) => number, tolerancePercent?: number): {
597
+ system: string;
598
+ score: number;
599
+ } | undefined;
600
+
563
601
  interface ValidationError {
564
602
  path: string;
565
603
  expected: string;
@@ -597,7 +635,7 @@ declare const P8_RegulatorCannotFightDesign: Principle;
597
635
  declare const INCENTIVE_PRINCIPLES: Principle[];
598
636
 
599
637
  declare const P9_RoleSwitchingNeedsFriction: Principle;
600
- declare const P10_SpawnWeightingUsesInversePopulation: Principle;
638
+ declare const P10_EntryWeightingUsesInversePopulation: Principle;
601
639
  declare const P11_TwoTierPressure: Principle;
602
640
  declare const P46_PersonaDiversity: Principle;
603
641
  declare const POPULATION_PRINCIPLES: Principle[];
@@ -630,8 +668,8 @@ declare const P28_StructuralDominanceIsNotPathological: Principle;
630
668
  declare const P38_CommunicationPreventsRevolt: Principle;
631
669
  declare const REGULATOR_PRINCIPLES: Principle[];
632
670
 
633
- declare const P29_PinchPoint: Principle;
634
- declare const P30_MovingPinchPoint: Principle;
671
+ declare const P29_BottleneckDetection: Principle;
672
+ declare const P30_DynamicBottleneckRotation: Principle;
635
673
  declare const P57_CombinatorialPriceSpace: Principle;
636
674
  declare const MARKET_DYNAMICS_PRINCIPLES: Principle[];
637
675
 
@@ -666,14 +704,14 @@ declare const P47_SmokeTest: Principle;
666
704
  declare const P48_CurrencyInsulation: Principle;
667
705
  declare const OPEN_ECONOMY_PRINCIPLES: Principle[];
668
706
 
669
- declare const P51_SharkTooth: Principle;
707
+ declare const P51_CyclicalEngagement: Principle;
670
708
  declare const P52_EndowmentEffect: Principle;
671
709
  declare const P53_EventCompletionRate: Principle;
672
- declare const P54_LiveOpsCadence: Principle;
673
- declare const P56_ContentDropShock: Principle;
710
+ declare const P54_OperationalCadence: Principle;
711
+ declare const P56_SupplyShockAbsorption: Principle;
674
712
  declare const OPERATIONS_PRINCIPLES: Principle[];
675
713
 
676
714
  /** All 60 built-in principles in priority order (supply chain → operations) */
677
715
  declare const ALL_PRINCIPLES: Principle[];
678
716
 
679
- export { ALL_PRINCIPLES, type ActionPlan, AgentE, type AgentEConfig, type AgentEMode, BOOTSTRAP_PRINCIPLES, CURRENCY_FLOW_PRINCIPLES, DEFAULT_THRESHOLDS, type DecisionEntry, DecisionLog, type DecisionResult, Diagnoser, type Diagnosis, type EconomicEvent, type EconomicEventType, type EconomyAdapter, type EconomyMetrics, type EconomyState, Executor, FEEDBACK_LOOP_PRINCIPLES, type FlowImpact, INCENTIVE_PRINCIPLES, MARKET_DYNAMICS_PRINCIPLES, MEASUREMENT_PRINCIPLES, type MetricQuery, type MetricQueryResult, type MetricResolution, MetricStore, OPEN_ECONOMY_PRINCIPLES, OPERATIONS_PRINCIPLES, Observer, P10_SpawnWeightingUsesInversePopulation, P11_TwoTierPressure, P12_OnePrimaryFaucet, P13_PotsAreZeroSumAndSelfRegulate, P14_TrackActualInjection, P15_PoolsNeedCapAndDecay, P16_WithdrawalPenaltyScales, P17_GracePeriodBeforeIntervention, P18_FirstProducerNeedsStartingInventory, P19_StartingSupplyExceedsDemand, P1_ProductionMatchesConsumption, P20_DecayPreventsAccumulation, P21_PriceFromGlobalSupply, P22_MarketAwarenessPreventsSurplus, P23_ProfitabilityFactorsFeasibility, P24_BlockedAgentsDecayFaster, P25_CorrectLeversForCorrectProblems, P26_ContinuousPressureBeatsThresholdCuts, P27_AdjustmentsNeedCooldowns, P28_StructuralDominanceIsNotPathological, P29_PinchPoint, P2_ClosedLoopsNeedDirectHandoff, P30_MovingPinchPoint, P31_AnchorValueTracking, P32_VelocityAboveSupply, P33_FairNotEqual, P34_ExtractionRatio, P35_DestructionCreatesValue, P36_MechanicFrictionDetector, P37_LatecommerProblem, P38_CommunicationPreventsRevolt, P39_TheLagPrinciple, P3_BootstrapCapitalCoversFirstTransaction, P40_ReplacementRate, P41_MultiResolutionMonitoring, P42_TheMedianPrinciple, P43_SimulationMinimum, P44_ComplexityBudget, P45_TimeBudget, P46_PersonaDiversity, P47_SmokeTest, P48_CurrencyInsulation, P49_IdleAssetTax, P4_MaterialsFlowFasterThanCooldown, P50_PayPowerRatio, P51_SharkTooth, P52_EndowmentEffect, P53_EventCompletionRate, P54_LiveOpsCadence, P55_ArbitrageThermometer, P56_ContentDropShock, P57_CombinatorialPriceSpace, P58_NoNaturalNumeraire, P59_GiftEconomyNoise, P5_ProfitabilityIsCompetitive, P60_SurplusDisposalAsymmetry, P6_CrowdingMultiplierOnAllRoles, P7_NonSpecialistsSubsidiseSpecialists, P8_RegulatorCannotFightDesign, P9_RoleSwitchingNeedsFriction, PARTICIPANT_EXPERIENCE_PRINCIPLES, PERSONA_HEALTHY_RANGES, POPULATION_PRINCIPLES, ParameterRegistry, type ParameterScope, type ParameterType, type PersonaProfile, PersonaTracker, type PersonaType, type PinchPointStatus, Planner, type Principle, type PrincipleCategory, type PrincipleOk, type PrincipleResult, type PrincipleViolation, REGULATOR_PRINCIPLES, RESOURCE_MGMT_PRINCIPLES, type RegisteredParameter, type RollbackCondition, STATISTICAL_PRINCIPLES, SUPPLY_CHAIN_PRINCIPLES, SYSTEM_DYNAMICS_PRINCIPLES, type SimulationOutcome, type SimulationResult, Simulator, type SuggestedAction, type Thresholds, type TickConfig, type ValidationError, type ValidationResult, type ValidationWarning, emptyMetrics, validateEconomyState };
717
+ export { ALL_PRINCIPLES, type ActionPlan, AgentE, type AgentEConfig, type AgentEMode, BOOTSTRAP_PRINCIPLES, CURRENCY_FLOW_PRINCIPLES, DEFAULT_THRESHOLDS, type DecisionEntry, DecisionLog, type DecisionResult, Diagnoser, type Diagnosis, type EconomicEvent, type EconomicEventType, type EconomyAdapter, type EconomyMetrics, type EconomyState, Executor, FEEDBACK_LOOP_PRINCIPLES, type FlowImpact, INCENTIVE_PRINCIPLES, MARKET_DYNAMICS_PRINCIPLES, MEASUREMENT_PRINCIPLES, type MetricQuery, type MetricQueryResult, type MetricResolution, MetricStore, OPEN_ECONOMY_PRINCIPLES, OPERATIONS_PRINCIPLES, Observer, P10_EntryWeightingUsesInversePopulation, P11_TwoTierPressure, P12_OnePrimaryFaucet, P13_PotsAreZeroSumAndSelfRegulate, P14_TrackActualInjection, P15_PoolsNeedCapAndDecay, P16_WithdrawalPenaltyScales, P17_GracePeriodBeforeIntervention, P18_FirstProducerNeedsStartingInventory, P19_StartingSupplyExceedsDemand, P1_ProductionMatchesConsumption, P20_DecayPreventsAccumulation, P21_PriceFromGlobalSupply, P22_MarketAwarenessPreventsSurplus, P23_ProfitabilityFactorsFeasibility, P24_BlockedAgentsDecayFaster, P25_CorrectLeversForCorrectProblems, P26_ContinuousPressureBeatsThresholdCuts, P27_AdjustmentsNeedCooldowns, P28_StructuralDominanceIsNotPathological, P29_BottleneckDetection, P2_ClosedLoopsNeedDirectHandoff, P30_DynamicBottleneckRotation, P31_AnchorValueTracking, P32_VelocityAboveSupply, P33_FairNotEqual, P34_ExtractionRatio, P35_DestructionCreatesValue, P36_MechanicFrictionDetector, P37_LatecommerProblem, P38_CommunicationPreventsRevolt, P39_TheLagPrinciple, P3_BootstrapCapitalCoversFirstTransaction, P40_ReplacementRate, P41_MultiResolutionMonitoring, P42_TheMedianPrinciple, P43_SimulationMinimum, P44_ComplexityBudget, P45_TimeBudget, P46_PersonaDiversity, P47_SmokeTest, P48_CurrencyInsulation, P49_IdleAssetTax, P4_MaterialsFlowFasterThanCooldown, P50_PayPowerRatio, P51_CyclicalEngagement, P52_EndowmentEffect, P53_EventCompletionRate, P54_OperationalCadence, P55_ArbitrageThermometer, P56_SupplyShockAbsorption, P57_CombinatorialPriceSpace, P58_NoNaturalNumeraire, P59_GiftEconomyNoise, P5_ProfitabilityIsCompetitive, P60_SurplusDisposalAsymmetry, P6_CrowdingMultiplierOnAllRoles, P7_NonSpecialistsSubsidiseSpecialists, P8_RegulatorCannotFightDesign, P9_RoleSwitchingNeedsFriction, PARTICIPANT_EXPERIENCE_PRINCIPLES, PERSONA_HEALTHY_RANGES, POPULATION_PRINCIPLES, ParameterRegistry, type ParameterScope, type ParameterType, type PersonaProfile, PersonaTracker, type PersonaType, type PinchPointStatus, Planner, type Principle, type PrincipleCategory, type PrincipleOk, type PrincipleResult, type PrincipleViolation, REGULATOR_PRINCIPLES, RESOURCE_MGMT_PRINCIPLES, type RegisteredParameter, type RegistryValidationResult, type RollbackCondition, STATISTICAL_PRINCIPLES, SUPPLY_CHAIN_PRINCIPLES, SYSTEM_DYNAMICS_PRINCIPLES, type SimulationOutcome, type SimulationResult, Simulator, type SuggestedAction, type Thresholds, type TickConfig, type ValidationError, type ValidationResult, type ValidationWarning, emptyMetrics, findWorstSystem, validateEconomyState };
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /** High-level parameter categories (what it IS, not what it's called) */
2
2
  type ParameterType = 'cost' | 'fee' | 'reward' | 'yield' | 'rate' | 'cap' | 'penalty' | 'multiplier' | string;
3
3
  /** How a parameter change affects net currency flow */
4
- type FlowImpact = 'sink' | 'faucet' | 'neutral' | 'mixed';
4
+ type FlowImpact = 'sink' | 'faucet' | 'neutral' | 'mixed' | 'friction' | 'redistribution';
5
5
  /** Scope narrows which concrete parameter a type resolves to */
6
6
  interface ParameterScope {
7
7
  system?: string;
@@ -22,6 +22,16 @@ interface RegisteredParameter {
22
22
  currentValue?: number;
23
23
  /** Human-readable description */
24
24
  description?: string;
25
+ /** Priority tiebreaker — higher wins when specificity scores are equal */
26
+ priority?: number;
27
+ /** Human-readable label for UIs and logs */
28
+ label?: string;
29
+ }
30
+ /** Result of registry.validate() */
31
+ interface RegistryValidationResult {
32
+ valid: boolean;
33
+ warnings: string[];
34
+ errors: string[];
25
35
  }
26
36
  declare class ParameterRegistry {
27
37
  private parameters;
@@ -33,11 +43,12 @@ declare class ParameterRegistry {
33
43
  * Resolve a parameterType + scope to a concrete RegisteredParameter.
34
44
  * Returns the best match, or undefined if no match.
35
45
  *
36
- * Matching rules (in priority order):
37
- * 1. Exact type match + all scope fields match
38
- * 2. Exact type match + partial scope match (tags overlap)
39
- * 3. Exact type match + no scope constraints
40
- * 4. undefined (no match)
46
+ * Matching rules:
47
+ * 1. Filter candidates by type
48
+ * 2. Score each by scope specificity (system +10, currency +5, tags +3 each)
49
+ * 3. Mismatched scope fields disqualify (score = -Infinity)
50
+ * 4. Ties broken by `priority` (higher wins), then registration order
51
+ * 5. All disqualified → undefined
41
52
  */
42
53
  resolve(type: ParameterType, scope?: Partial<ParameterScope>): RegisteredParameter | undefined;
43
54
  /** Find all parameters of a given type. */
@@ -54,7 +65,12 @@ declare class ParameterRegistry {
54
65
  getAll(): RegisteredParameter[];
55
66
  /** Number of registered parameters. */
56
67
  get size(): number;
57
- private scopeMatchScore;
68
+ /**
69
+ * Validate the registry for common misconfigurations.
70
+ * Returns warnings (non-fatal) and errors (likely broken).
71
+ */
72
+ validate(): RegistryValidationResult;
73
+ private scopeSpecificity;
58
74
  }
59
75
 
60
76
  type EconomicEventType = 'trade' | 'mint' | 'burn' | 'transfer' | 'produce' | 'consume' | 'role_change' | 'enter' | 'churn';
@@ -143,6 +159,9 @@ interface EconomyMetrics {
143
159
  giftTradeRatio: number;
144
160
  disposalTradeRatioByCurrency: Record<string, number>;
145
161
  disposalTradeRatio: number;
162
+ systems: string[];
163
+ sources: string[];
164
+ sinks: string[];
146
165
  flowBySystem: Record<string, number>;
147
166
  activityBySystem: Record<string, number>;
148
167
  participantsBySystem: Record<string, number>;
@@ -320,6 +339,8 @@ interface AgentEConfig {
320
339
  dominantRoles?: string[];
321
340
  idealDistribution?: Record<string, number>;
322
341
  parameters?: RegisteredParameter[];
342
+ /** Run registry.validate() on startup and log warnings/errors (default: true) */
343
+ validateRegistry?: boolean;
323
344
  tickConfig?: Partial<TickConfig>;
324
345
  gracePeriod?: number;
325
346
  checkInterval?: number;
@@ -514,6 +535,7 @@ declare class Planner {
514
535
  private lockedParams;
515
536
  private constraints;
516
537
  private cooldowns;
538
+ private typeCooldowns;
517
539
  private activePlanCount;
518
540
  lock(param: string): void;
519
541
  unlock(param: string): void;
@@ -534,6 +556,8 @@ declare class Planner {
534
556
  isOnCooldown(param: string, currentTick: number, cooldownTicks: number): boolean;
535
557
  /** Reset all cooldowns (useful for testing) */
536
558
  resetCooldowns(): void;
559
+ private typeCooldownKey;
560
+ private isTypeCooldown;
537
561
  }
538
562
 
539
563
  declare class Executor {
@@ -560,6 +584,20 @@ declare class PersonaTracker {
560
584
  private classify;
561
585
  }
562
586
 
587
+ /**
588
+ * Find the system with the worst metric value.
589
+ * Works with flat Record<string, number> maps like flowBySystem.
590
+ *
591
+ * @param metrics - Current economy metrics snapshot
592
+ * @param check - Function that returns a numeric "badness" score per system (higher = worse)
593
+ * @param tolerancePercent - Only flag if the worst system exceeds the average by this % (default 0)
594
+ * @returns The system name and its score, or undefined if no systems or none exceeds tolerance
595
+ */
596
+ declare function findWorstSystem(metrics: EconomyMetrics, check: (systemName: string, metrics: EconomyMetrics) => number, tolerancePercent?: number): {
597
+ system: string;
598
+ score: number;
599
+ } | undefined;
600
+
563
601
  interface ValidationError {
564
602
  path: string;
565
603
  expected: string;
@@ -597,7 +635,7 @@ declare const P8_RegulatorCannotFightDesign: Principle;
597
635
  declare const INCENTIVE_PRINCIPLES: Principle[];
598
636
 
599
637
  declare const P9_RoleSwitchingNeedsFriction: Principle;
600
- declare const P10_SpawnWeightingUsesInversePopulation: Principle;
638
+ declare const P10_EntryWeightingUsesInversePopulation: Principle;
601
639
  declare const P11_TwoTierPressure: Principle;
602
640
  declare const P46_PersonaDiversity: Principle;
603
641
  declare const POPULATION_PRINCIPLES: Principle[];
@@ -630,8 +668,8 @@ declare const P28_StructuralDominanceIsNotPathological: Principle;
630
668
  declare const P38_CommunicationPreventsRevolt: Principle;
631
669
  declare const REGULATOR_PRINCIPLES: Principle[];
632
670
 
633
- declare const P29_PinchPoint: Principle;
634
- declare const P30_MovingPinchPoint: Principle;
671
+ declare const P29_BottleneckDetection: Principle;
672
+ declare const P30_DynamicBottleneckRotation: Principle;
635
673
  declare const P57_CombinatorialPriceSpace: Principle;
636
674
  declare const MARKET_DYNAMICS_PRINCIPLES: Principle[];
637
675
 
@@ -666,14 +704,14 @@ declare const P47_SmokeTest: Principle;
666
704
  declare const P48_CurrencyInsulation: Principle;
667
705
  declare const OPEN_ECONOMY_PRINCIPLES: Principle[];
668
706
 
669
- declare const P51_SharkTooth: Principle;
707
+ declare const P51_CyclicalEngagement: Principle;
670
708
  declare const P52_EndowmentEffect: Principle;
671
709
  declare const P53_EventCompletionRate: Principle;
672
- declare const P54_LiveOpsCadence: Principle;
673
- declare const P56_ContentDropShock: Principle;
710
+ declare const P54_OperationalCadence: Principle;
711
+ declare const P56_SupplyShockAbsorption: Principle;
674
712
  declare const OPERATIONS_PRINCIPLES: Principle[];
675
713
 
676
714
  /** All 60 built-in principles in priority order (supply chain → operations) */
677
715
  declare const ALL_PRINCIPLES: Principle[];
678
716
 
679
- export { ALL_PRINCIPLES, type ActionPlan, AgentE, type AgentEConfig, type AgentEMode, BOOTSTRAP_PRINCIPLES, CURRENCY_FLOW_PRINCIPLES, DEFAULT_THRESHOLDS, type DecisionEntry, DecisionLog, type DecisionResult, Diagnoser, type Diagnosis, type EconomicEvent, type EconomicEventType, type EconomyAdapter, type EconomyMetrics, type EconomyState, Executor, FEEDBACK_LOOP_PRINCIPLES, type FlowImpact, INCENTIVE_PRINCIPLES, MARKET_DYNAMICS_PRINCIPLES, MEASUREMENT_PRINCIPLES, type MetricQuery, type MetricQueryResult, type MetricResolution, MetricStore, OPEN_ECONOMY_PRINCIPLES, OPERATIONS_PRINCIPLES, Observer, P10_SpawnWeightingUsesInversePopulation, P11_TwoTierPressure, P12_OnePrimaryFaucet, P13_PotsAreZeroSumAndSelfRegulate, P14_TrackActualInjection, P15_PoolsNeedCapAndDecay, P16_WithdrawalPenaltyScales, P17_GracePeriodBeforeIntervention, P18_FirstProducerNeedsStartingInventory, P19_StartingSupplyExceedsDemand, P1_ProductionMatchesConsumption, P20_DecayPreventsAccumulation, P21_PriceFromGlobalSupply, P22_MarketAwarenessPreventsSurplus, P23_ProfitabilityFactorsFeasibility, P24_BlockedAgentsDecayFaster, P25_CorrectLeversForCorrectProblems, P26_ContinuousPressureBeatsThresholdCuts, P27_AdjustmentsNeedCooldowns, P28_StructuralDominanceIsNotPathological, P29_PinchPoint, P2_ClosedLoopsNeedDirectHandoff, P30_MovingPinchPoint, P31_AnchorValueTracking, P32_VelocityAboveSupply, P33_FairNotEqual, P34_ExtractionRatio, P35_DestructionCreatesValue, P36_MechanicFrictionDetector, P37_LatecommerProblem, P38_CommunicationPreventsRevolt, P39_TheLagPrinciple, P3_BootstrapCapitalCoversFirstTransaction, P40_ReplacementRate, P41_MultiResolutionMonitoring, P42_TheMedianPrinciple, P43_SimulationMinimum, P44_ComplexityBudget, P45_TimeBudget, P46_PersonaDiversity, P47_SmokeTest, P48_CurrencyInsulation, P49_IdleAssetTax, P4_MaterialsFlowFasterThanCooldown, P50_PayPowerRatio, P51_SharkTooth, P52_EndowmentEffect, P53_EventCompletionRate, P54_LiveOpsCadence, P55_ArbitrageThermometer, P56_ContentDropShock, P57_CombinatorialPriceSpace, P58_NoNaturalNumeraire, P59_GiftEconomyNoise, P5_ProfitabilityIsCompetitive, P60_SurplusDisposalAsymmetry, P6_CrowdingMultiplierOnAllRoles, P7_NonSpecialistsSubsidiseSpecialists, P8_RegulatorCannotFightDesign, P9_RoleSwitchingNeedsFriction, PARTICIPANT_EXPERIENCE_PRINCIPLES, PERSONA_HEALTHY_RANGES, POPULATION_PRINCIPLES, ParameterRegistry, type ParameterScope, type ParameterType, type PersonaProfile, PersonaTracker, type PersonaType, type PinchPointStatus, Planner, type Principle, type PrincipleCategory, type PrincipleOk, type PrincipleResult, type PrincipleViolation, REGULATOR_PRINCIPLES, RESOURCE_MGMT_PRINCIPLES, type RegisteredParameter, type RollbackCondition, STATISTICAL_PRINCIPLES, SUPPLY_CHAIN_PRINCIPLES, SYSTEM_DYNAMICS_PRINCIPLES, type SimulationOutcome, type SimulationResult, Simulator, type SuggestedAction, type Thresholds, type TickConfig, type ValidationError, type ValidationResult, type ValidationWarning, emptyMetrics, validateEconomyState };
717
+ export { ALL_PRINCIPLES, type ActionPlan, AgentE, type AgentEConfig, type AgentEMode, BOOTSTRAP_PRINCIPLES, CURRENCY_FLOW_PRINCIPLES, DEFAULT_THRESHOLDS, type DecisionEntry, DecisionLog, type DecisionResult, Diagnoser, type Diagnosis, type EconomicEvent, type EconomicEventType, type EconomyAdapter, type EconomyMetrics, type EconomyState, Executor, FEEDBACK_LOOP_PRINCIPLES, type FlowImpact, INCENTIVE_PRINCIPLES, MARKET_DYNAMICS_PRINCIPLES, MEASUREMENT_PRINCIPLES, type MetricQuery, type MetricQueryResult, type MetricResolution, MetricStore, OPEN_ECONOMY_PRINCIPLES, OPERATIONS_PRINCIPLES, Observer, P10_EntryWeightingUsesInversePopulation, P11_TwoTierPressure, P12_OnePrimaryFaucet, P13_PotsAreZeroSumAndSelfRegulate, P14_TrackActualInjection, P15_PoolsNeedCapAndDecay, P16_WithdrawalPenaltyScales, P17_GracePeriodBeforeIntervention, P18_FirstProducerNeedsStartingInventory, P19_StartingSupplyExceedsDemand, P1_ProductionMatchesConsumption, P20_DecayPreventsAccumulation, P21_PriceFromGlobalSupply, P22_MarketAwarenessPreventsSurplus, P23_ProfitabilityFactorsFeasibility, P24_BlockedAgentsDecayFaster, P25_CorrectLeversForCorrectProblems, P26_ContinuousPressureBeatsThresholdCuts, P27_AdjustmentsNeedCooldowns, P28_StructuralDominanceIsNotPathological, P29_BottleneckDetection, P2_ClosedLoopsNeedDirectHandoff, P30_DynamicBottleneckRotation, P31_AnchorValueTracking, P32_VelocityAboveSupply, P33_FairNotEqual, P34_ExtractionRatio, P35_DestructionCreatesValue, P36_MechanicFrictionDetector, P37_LatecommerProblem, P38_CommunicationPreventsRevolt, P39_TheLagPrinciple, P3_BootstrapCapitalCoversFirstTransaction, P40_ReplacementRate, P41_MultiResolutionMonitoring, P42_TheMedianPrinciple, P43_SimulationMinimum, P44_ComplexityBudget, P45_TimeBudget, P46_PersonaDiversity, P47_SmokeTest, P48_CurrencyInsulation, P49_IdleAssetTax, P4_MaterialsFlowFasterThanCooldown, P50_PayPowerRatio, P51_CyclicalEngagement, P52_EndowmentEffect, P53_EventCompletionRate, P54_OperationalCadence, P55_ArbitrageThermometer, P56_SupplyShockAbsorption, P57_CombinatorialPriceSpace, P58_NoNaturalNumeraire, P59_GiftEconomyNoise, P5_ProfitabilityIsCompetitive, P60_SurplusDisposalAsymmetry, P6_CrowdingMultiplierOnAllRoles, P7_NonSpecialistsSubsidiseSpecialists, P8_RegulatorCannotFightDesign, P9_RoleSwitchingNeedsFriction, PARTICIPANT_EXPERIENCE_PRINCIPLES, PERSONA_HEALTHY_RANGES, POPULATION_PRINCIPLES, ParameterRegistry, type ParameterScope, type ParameterType, type PersonaProfile, PersonaTracker, type PersonaType, type PinchPointStatus, Planner, type Principle, type PrincipleCategory, type PrincipleOk, type PrincipleResult, type PrincipleViolation, REGULATOR_PRINCIPLES, RESOURCE_MGMT_PRINCIPLES, type RegisteredParameter, type RegistryValidationResult, type RollbackCondition, STATISTICAL_PRINCIPLES, SUPPLY_CHAIN_PRINCIPLES, SYSTEM_DYNAMICS_PRINCIPLES, type SimulationOutcome, type SimulationResult, Simulator, type SuggestedAction, type Thresholds, type TickConfig, type ValidationError, type ValidationResult, type ValidationWarning, emptyMetrics, findWorstSystem, validateEconomyState };