Kaizen
Browse modulesRulesrules/sharedSchemas and constants

Variable: updateRuleInputSchema

const updateRuleInputSchema: ZodObject<{
  changeReason: ZodOptional<ZodNullable<ZodString>>;
  conditionLogic: ZodOptional<ZodType<ConditionLogicNode, unknown, $ZodTypeInternals<ConditionLogicNode, unknown>>>;
  description: ZodOptional<ZodNullable<ZodString>>;
  domainConfig: ZodOptional<ZodRecord<ZodString, ZodUnknown>>;
  effectiveEnd: ZodOptional<ZodNullable<ZodCoercedDate<unknown>>>;
  effectiveStart: ZodOptional<ZodCoercedDate<unknown>>;
  module: ZodOptional<ZodNullable<ZodString>>;
  name: ZodOptional<ZodString>;
  priority: ZodOptional<ZodNumber>;
  rateTierId: ZodOptional<ZodNullable<ZodUUID>>;
  ruleEffectiveDate: ZodOptional<ZodNullable<ZodCoercedDate<unknown>>>;
  ruleExpirationDate: ZodOptional<ZodNullable<ZodCoercedDate<unknown>>>;
  scheduleConditionId: ZodOptional<ZodNullable<ZodUUID>>;
  scopes: ZodOptional<ZodArray<ZodObject<{
     scope_type: ZodString;
     scope_value: ZodArray<ZodString>;
  }, $strip>>>;
}, $strip>;

Defined in: shared/rules/schemas.ts:55

Inputs accepted by RuleService.createVersion. Any field provided creates a new RuleVersions row; omitted version-level fields are copied forward from the current version. Parent-level fields (name, description, module) update the Rules row in the same transaction. Status changes go through setStatus, not here.