# category_rule

category_code: fashion
requirement_overrides: {"material":"Required"}
video_mode: inherit
created_by: seed
created_at: 2026-06-12 22:43:39
free_text_rules:
  For Fashion products the Description must include fabric composition (e.g. "80% cotton, 20% polyester") and care instructions (washing temperature, ironing, tumble-drying).


category_code: travel
requirement_overrides: {"youtube_url":"Required"}
video_mode: inherit
created_by: seed
created_at: 2026-06-12 22:43:39
free_text_rules:
  For Travel products the YouTube URL should be required and feature the destination. The Description must name the destination, duration and what is included.


category_code: wine
requirement_overrides: []
video_mode: inherit
created_by: seed
created_at: 2026-06-12 22:43:39
free_text_rules:
  For Wine products the Description must include grape variety, region, vintage and recommended serving temperature.


# config_setting

name: cost.price_table
updated_at: 2026-06-12 22:43:39
value:
  {"gemini-2.5-pro":{"input_per_1k":0.0045,"output_per_1k":0.018},"gemini-2.5-flash":{"input_per_1k":0.0003,"output_per_1k":0.0012},"gemini-2.5-flash-image":{"per_image":0.035,"input_per_1k":0.0003},"image-segmentation-001":{"per_call":0.002},"veo-3.1-fast-generate-preview":{"per_video":0.6},"veo-3.1-generate-preview":{"per_video":1.6},"veo-3.0-generate-001":{"per_video":3.0},"mock-model":{"input_per_1k":0.0003,"output_per_1k":0.001,"per_image":0.01,"per_call":0.0005,"per_video":0.01},"mock-model-video":{"per_video":0.01}}


name: content_links.allowed_mime
updated_at: 2026-06-12 22:43:39
value:
  ["application\/pdf","application\/zip","image\/jpeg","image\/png","image\/webp","text\/plain","text\/csv"]


# manipulation_rule_set

type: attribute
created_by: seed
note: Initial seeded version
created_at: 2026-06-12 22:43:39
payload:
  {"attributes":{"product_name":{"include":true,"rule":"State clearly what the product is, using the product's own name. Do not include the brand or information already held in other attributes (size, colour, unit, \u2026)."},"description":{"include":true,"rule":"Clean HTML only (<p>, <ul>, <li>, <strong>, <h2>\/<h3>); no inline styles, no shop-specific phrasing, no prices. Titles bold and ending with a colon; bullet lists use standard bullets and every bullet starts with a capital letter; links open in a new tab. Cosmetics and food supplements must list all ingredients when available.\n\nStructure \u2014 Regular products: Introduction \u2192 Features (technical specifications \/ product details) \u2192 Scope of delivery; if a datasheet exists, append \u201cFurther information can be found in the datasheet under Specifications\u201d.\nFood & cosmetics: Introduction (if available) \u2192 Ingredients (full list for cosmetics\/supplements) \u2192 Nutritional values per 100 g (left-aligned bullet points, never a table) \u2192 Allergy information (if available).\nAppliances \/ Tech \/ IT: include the scope of delivery for multi-part products (main product first); state compatibility where applicable; refurbished products must be clearly marked as refurbished (not new) and state their warranty.\nLarge \/ freight items (fitness equipment, TVs, washing machines, \u2026): append the standard \u201cImportant Notice Regarding Delivery of Large Appliances\u201d (curbside delivery; inspect packaging with the driver; refuse and document visible damage; report hidden damage within 48 h; photograph all damage)."},"brand":{"include":true,"rule":""},"product_categories":{"include":true,"rule":""},"gtin":{"include":true,"rule":""},"mpn":{"include":true,"rule":""},"article_number":{"include":true,"rule":""},"sku":{"include":false,"rule":""},"color":{"include":true,"rule":""},"size":{"include":true,"rule":""},"material":{"include":true,"rule":""},"weight":{"include":true,"rule":""},"voucher_value":{"include":true,"rule":""},"coupon_code":{"include":true,"rule":""},"recommended_retail_price":{"include":false,"rule":"RRP Master = the price of the highest relevant Swiss shop listed on Google that meets all of: Swiss online shop (imprint in CH), product availability, guaranteed return policy and warranty. Use the trusted\/reliable sources list."},"purchasable_for_u_18":{"include":false,"rule":"Flag as not purchasable for under 18: all alcoholic beverages, and travel activities that explicitly require it."}},"general":{"additional_rules":"","units":"Normalise units to SI with a non-breaking space (e.g. \"42 cm\", \"1.5 kg\"). Decimal separator is a dot.","casing":"Title-case the Product Name. Preserve brand casing exactly as on the manufacturer site.","currency_formatting":"Discount free text and newsletter\/overview tiles: amounts always end with \".00\". Within the product description itself, write prices without \".00\" or \".-\", except for cent amounts.","category_mapping":"Map Product Categories to the deepest matching node in the Digt Category Tree. Never invent or rename a category.","forbidden_phrases":["best price","cheapest","sale","buy now","limited offer"]}}


type: image_manipulation
created_by: seed
note: Initial seeded version
created_at: 2026-06-12 22:43:39
payload:
  {"background_removal":"segmentation","keep_lifestyle_background":true,"centring":"optical","shadows_reflections":"passthrough","note":"Hero + additional images are studio-isolated and optically centred. Mood images use a centre crop."}


type: image_creation
created_by: seed
note: Initial seeded version
created_at: 2026-06-12 22:43:39
payload:
  {"enabled":true,"style":"Clean studio product photography on pure white (#FFFFFF), soft even lighting, no props, no text.","seed_with_sourced_references":true,"negative_prompt":"text, watermark, logo, price tag, hands, mannequin, busy background, drop shadow","guidance":"Render the exact product described by the attributes; do not add accessories not present in the references."}


type: image_specs
created_by: seed
note: Initial seeded version
created_at: 2026-06-12 22:43:39
payload:
  {"product_canvas":{"aspect_ratio":"4:5","width":1200,"height":1500,"padding_percent":5,"display_container":{"width":480,"height":600}},"mood_canvas":{"aspect_ratio":"16:9","width":1600,"height":900},"counts":{"hero":{"min":1,"max":1},"additional":{"min":1,"max":8},"mood":{"min":1,"max":1}},"count_policy":"Target 3\u20135 images per product. Complex or expensive products that need more explanation may have up to 10 images; cheap products no more than 5. The first image is the hero \u2014 white background showing the full scope of delivery \u2014 and every product should include one lifestyle\/mood image.","encoding":{"format":"webp","bit_depth":8,"colour_profile":"sRGB","alpha_behaviour":"pre-composite-onto-white"},"file_size_guard":{"max_bytes":870400,"webp_quality_floor":60,"webp_quality_start":90},"resolution":{"min_input_width":512,"min_input_height":512},"file_naming_pattern":"{sku}_{position}_{type}_{ISO8601Timestamp}.{ext}","forbidden_overlays":["shop logo","retailer watermark","price","discount badge","brand strip","brand banner","\"new\" label","\"sale\" label","\"best price\" label","country flag","language tag"]}


type: tone_of_voice
created_by: seed
note: Initial seeded version
created_at: 2026-06-12 22:43:39
payload:
  {"de_CH":"Sachlich, vertrauensw\u00fcrdig, kundenorientiert. Schweizer Hochdeutsch (kein \u00df). Keine Superlative, keine Preisangaben. Gutschein-\/Voucher-Texte immer in der H\u00f6flichkeitsform (\u00abSie\u00bb); Anf\u00fchrungszeichen \u00ab \u00bb statt \" \". Aus Partnersicht schreiben (kein \u00abwir\/uns\/unser\u00bb, ausser es bezieht sich auf den Partner). W\u00e4hrungsbetr\u00e4ge im Rabatt-Freitext enden auf \u00ab.00\u00bb.","default":"Factual, trustworthy, customer-oriented. No superlatives, no price claims. Voucher texts use formal address and \u00ab \u00bb quotation marks (never \" \"), written from the partner's perspective. Discount free-text currency amounts end in \".00\"."}


