Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Changed the definition of "create_order", "find_compatibility_evidence", "get_offer" and 5 more
before
{"$id":"https://catalogue.nitech.fr/schemas/mcp/create-order-output-v0.1.schema.json","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"const":"confirmation_required"}}},"then":{"required":["confirmation","summary","order_created","payment_created"]}},{"if":{"properties":{"status":{"const":"created"}}},"then":{"required":["order_id","reference","state","origin","currency","amount_to_pay","payment_created","replayed"]}},{"if":{"properties":{"status":{"enum":["pending","rejected","unknown"]}}},"then":{"required":["error"]}},{"if":{"properties":{"status":{"const":"pending"}}},"then":{"required":["operation_reference"]}}],"properties":{"amount_to_pay":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"confirmation":{"additionalProperties":false,"properties":{"expires_at":{"format":"date-time","type":"string"},"quote_digest":{"maxLength":64,"minLength":64,"pattern":"^[a-f0-9]{64}$","type":"string"},"terms_version":{"const":"nitech-mcp-cgv-2026-11-02-v1"},"token":{"maxLength":1024,"minLength":1,"pattern":"^[A-Za-z0-9_-]+\\.[a-f0-9]{64}$","type":"string"}},"required":["token","expires_at","quote_digest","terms_version"],"type":"object"},"currency":{"const":"EUR"},"error":{"additionalProperties":false,"properties":{"arguments_may_change":{"type":"boolean"},"category":{"enum":["invalid_input","destination_not_served","temporarily_unavailable","operation_uncertain","other_rejection"]},"code":{"maxLength":80,"minLength":1,"pattern":"^[A-Z0-9_]+$","type":"string"},"fields":{"items":{"additionalProperties":false,"properties":{"expected_correction":{"maxLength":600,"minLength":1,"type":"string"},"path":{"maxLength":160,"type":["string","null"]},"reason":{"maxLength":80,"pattern":"^[a-z_]+$","type":"string"},"validation_layer":{"enum":["format","serviceability","reference","technical"]}},"required":["path","reason","expected_correction","validation_layer"],"type":"object"},"maxItems":25,"type":"array"},"message":{"maxLength":1000,"minLength":1,"type":"string"},"next_action":{"enum":["correct_then_requote_and_confirm","change_destination_or_contact_nitech","retry_same_request","reconcile_same_key_same_arguments","renew_confirmation","contact_nitech","search_relay_then_requote_and_confirm","change_delivery_then_requote_and_confirm"]},"retry_same_key":{"type":"boolean"}},"required":["code","message","retry_same_key"],"type":"object"},"operation_outcome":{"enum":["not_created","unknown"]},"operation_reference":{"maxLength":64,"minLength":64,"pattern":"^[a-f0-9]{64}$","type":"string"},"order_created":{"const":false,"type":"boolean"},"order_id":{"minimum":1,"type":"integer"},"origin":{"const":"MCP"},"payment_created":{"const":false,"type":"boolean"},"reference":{"maxLength":32,"minLength":1,"type":"string"},"replayed":{"type":"boolean"},"schema_version":{"const":"1.0"},"state":{"enum":["awaiting_payment","paid","payment_accepted","payment_captured","payment_status_unknown","cancelled"]},"status":{"enum":["confirmation_required","created","pending","rejected","unknown"]},"summary":{"additionalProperties":false,"properties":{"amount_to_pay":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"billing_address":{"additionalProperties":false,"properties":{"address_line1":{"maxLength":200,"minLength":1,"type":"string"},"address_line2":{"maxLength":200,"minLength":0,"type":"string"},"city":{"maxLength":100,"minLength":1,"type":"string"},"company":{"maxLength":120,"minLength":0,"type":"string"},"country_code":{"maxLength":2,"minLength":2,"pattern":"^[A-Z]{2}$","type":"string"},"first_name":{"maxLength":80,"minLength":1,"type":"string"},"last_name":{"maxLength":80,"minLength":1,"type":"string"},"postal_code":{"maxLength":12,"minLength":1,"pattern":"^[A-Za-z0-9 -]+$","type":"string"}},"required":["first_name","last_name","address_line1","postal_code","city","country_code"],"type":"object"},"currency":{"const":"EUR"},"customer":{"additionalProperties":false,"properties":{"email":{"format":"email","maxLength":80,"minLength":1,"type":"string"},"phone":{"maxLength":30,"minLength":1,"pattern":"^[+0-9 ()/.-]{5,30}$","type":"string"}},"required":["email","phone"],"type":"object"},"delivery":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"const":"gls_pickup"},"relay":{"additionalProperties":false,"properties":{"address":{"additionalProperties":false,"properties":{"address_line1":{"maxLength":200,"minLength":1,"type":"string"},"address_line2":{"maxLength":161,"minLength":0,"type":"string"},"city":{"maxLength":100,"minLength":1,"type":"string"},"country_code":{"pattern":"^[A-Z]{2}$","type":"string"},"postal_code":{"maxLength":12,"minLength":1,"type":"string"}},"required":["address_line1","address_line2","postal_code","city","country_code"],"type":"object"},"holidays_gls":{"items":{"additionalProperties":false,"properties":{"EndDate":{"format":"date","type":"string"},"StartDate":{"format":"date","type":"string"}},"required":["StartDate","EndDate"],"type":"object"},"maxItems":100,"type":"array"},"name":{"maxLength":120,"minLength":1,"type":"string"},"opening_hours":{"items":{"additionalProperties":false,"properties":{"breaks":{"items":{"additionalProperties":false,"properties":{"from":{"pattern":"^(?:[01][0-9]|2[0-3]):[0-5][0-9]$|^24:00$","type":"string"},"to":{"pattern":"^(?:[01][0-9]|2[0-3]):[0-5][0-9]$|^24:00$","type":"string"}},"required":["from","to"],"type":"object"},"maxItems":10,"type":"array"},"day":{"enum":["MON","TUE","WED","THU","FRI","SAT","SUN"]},"periods":{"items":{"additionalProperties":false,"properties":{"from":{"pattern":"^(?:[01][0-9]|2[0-3]):[0-5][0-9]$|^24:00$","type":"string"},"to":{"pattern":"^(?:[01][0-9]|2[0-3]):[0-5][0-9]$|^24:00$","type":"string"}},"required":["from","to"],"type":"object"},"maxItems":10,"minItems":1,"type":"array"}},"required":["day","periods","breaks"],"type":"object"},"maxItems":7,"type":"array"},"relay_id":{"pattern":"^[A-Za-z0-9_-]{1,80}$","type":"string"},"working_days_gls":{"items":{"additionalProperties":false,"properties":{"Breaks":{"additionalProperties":false,"properties":{"OpeningHours":{"items":{"additionalProperties":false,"properties":{"From":{"maximum":86400000,"minimum":-3600000,"type":"integer"},"To":{"maximum":86400000,"minimum":-3600000,"type":"integer"}},"required":["From","To"],"type":"object"},"maxItems":10,"type":"array"}},"required":["OpeningHours"],"type":"object"},"DayOfWeek":{"enum":["MON","TUE","WED","THU","FRI","SAT","SUN"]},"OpeningHours":{"additionalProperties":false,"properties":{"OpeningHours":{"items":{"additionalProperties":false,"properties":{"From":{"maximum":86400000,"minimum":-3600000,"type":"integer"},"To":{"maximum":86400000,"minimum":-3600000,"type":"integer"}},"required":["From","To"],"type":"object"},"maxItems":10,"type":"array"}},"required":["OpeningHours"],"type":"object"}},"required":["DayOfWeek","OpeningHours"],"type":"object"},"maxItems":7,"type":"array"}},"required":["relay_id","name","address"],"type":"object"}},"required":["mode","relay"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"const":"home"}},"required":["mode"],"type":"object"}]},"grand_total_ht":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"lines":{"items":{"additionalProperties":false,"properties":{"designation":{"maxLength":2000,"minLength":0,"type":"string"},"line_amount_ht":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"line_amount_ttc":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"product_id":{"maximum":2147483647,"minimum":1,"type":"integer"},"public_reference":{"anyOf":[{"type":"string"},{"type":"null"}]},"quantity":{"maximum":100,"minimum":1,"type":"integer"},"tax_rate":{"maxLength":16,"minLength":1,"type":"string"},"unit_amount_ht":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"unit_amount_ttc":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"}},"required":["product_id","public_reference","designation","quantity","unit_amount_ht","unit_amount_ttc","tax_rate","line_amount_ht","line_amount_ttc"],"type":"object"},"maxItems":30,"minItems":1,"type":"array"},"products_amount_ht":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"shipping_address":{"additionalProperties":false,"properties":{"address_line1":{"maxLength":200,"minLength":1,"type":"string"},"address_line2":{"maxLength":200,"minLength":0,"type":"string"},"city":{"maxLength":100,"minLength":1,"type":"string"},"company":{"maxLength":120,"minLength":0,"type":"string"},"country_code":{"maxLength":2,"minLength":2,"pattern":"^[A-Z]{2}$","type":"string"},"first_name":{"maxLength":80,"minLength":1,"type":"string"},"last_name":{"maxLength":80,"minLength":1,"type":"string"},"postal_code":{"maxLength":12,"minLength":1,"pattern":"^[A-Za-z0-9 -]+$","type":"string"}},"required":["first_name","last_name","address_line1","postal_code","city","country_code"],"type":"object"},"shipping_amount_ht":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"shipping_amount_ttc":{"pattern":"^[0-9]+[.][0-9]{2}$","type":"string"},"tax_breakdown":{"items":{"additionalProperties":false,"properties":{"line_tax_sum":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"products_amount_ht":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"products_tax_amount":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"rounding_adjustment_ttc":{"pattern":"^-?(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"shipping_amount_ht":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"shipping_tax_amount":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"tax_amount":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"tax_rate":{"pattern":"^(0|[1-9][0-9]{0,2})(\\.[0-9]{1,6})?$","type":"string"},"taxable_amount_ht":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"}},"required":["tax_rate","products_amount_ht","products_tax_amount","shipping_amount_ht","shipping_tax_amount","taxable_amount_ht","tax_amount","line_tax_sum","rounding_adjustment_ttc"],"type":"object"},"maxItems":31,"minItems":1,"type":"array"},"terms_notice":{"maxLength":2000,"minLength":1,"type":"string"},"terms_sha256":{"const":"f230ffaafbccf237d225b3ece289e4b03787c4399eb2aaa6a6103d2620e951c9"},"terms_text":{"maxLength":1000,"minLength":1,"type":"string"},"terms_url":{"const":"https://mcp.nitech.fr/payments/terms/nitech-mcp-cgv-2026-11-02-v1.txt"},"terms_version":{"const":"nitech-mcp-cgv-2026-11-02-v1"}},"required":["customer","billing_address","shipping_address","lines","currency","products_amount_ht","shipping_amount_ht","grand_total_ht","amount_to_pay","tax_breakdown","terms_text","terms_notice","terms_version","terms_url","terms_sha256"],"type":"object"},"web_resume":{"oneOf":[{"additionalProperties":false,"properties":{"shops":{"maxItems":0,"type":"array"},"status":{"const":"unavailable"}},"required":["status","shops"],"type":"object"},{"additionalProperties":false,"properties":{"expires_at":{"format":"date-time","type":"string"},"shops":{"items":{"additionalProperties":false,"properties":{"label":{"maxLength":80,"minLength":1,"type":"string"},"shop":{"enum":["d_chau","n_nego","d_ther","e_sani"]},"url":{"maxLength":2048,"minLength":1,"pattern":"^https://www\\.(direct-chaudiere\\.com/boutique/|nitech-negoce\\.com/panier/|douchetherapy\\.com/noindex/order/|eausanitaire\\.com/boutique/caddie/)\\?mcp_resume=m1\\.[A-Za-z0-9_-]+\\.[a-f0-9]{64}$","type":"string"}},"required":["shop","label","url"],"type":"object"},"maxItems":4,"minItems":4,"type":"array"},"status":{"const":"available"}},"required":["status","expires_at","shops"],"type":"object"}]}},"required":["schema_version","status"],"type":"object"}after
{"$id":"https://catalogue.nitech.fr/schemas/mcp/create-order-output-v0.1.schema.json","$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"const":"confirmation_required"}}},"then":{"required":["confirmation","summary","order_created","payment_created"]}},{"if":{"properties":{"status":{"const":"created"}}},"then":{"required":["order_id","reference","state","origin","currency","amount_to_pay","payment_created","replayed"]}},{"if":{"properties":{"status":{"enum":["pending","rejected","unknown"]}}},"then":{"required":["error"]}},{"if":{"properties":{"status":{"const":"pending"}}},"then":{"required":["operation_reference"]}}],"properties":{"amount_to_pay":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"confirmation":{"additionalProperties":false,"properties":{"expires_at":{"format":"date-time","type":"string"},"quote_digest":{"maxLength":64,"minLength":64,"pattern":"^[a-f0-9]{64}$","type":"string"},"terms_version":{"const":"nitech-mcp-cgv-2026-11-04-v1"},"token":{"maxLength":1024,"minLength":1,"pattern":"^[A-Za-z0-9_-]+\\.[a-f0-9]{64}$","type":"string"}},"required":["token","expires_at","quote_digest","terms_version"],"type":"object"},"currency":{"const":"EUR"},"error":{"additionalProperties":false,"properties":{"arguments_may_change":{"type":"boolean"},"category":{"enum":["invalid_input","destination_not_served","temporarily_unavailable","operation_uncertain","other_rejection"]},"code":{"maxLength":80,"minLength":1,"pattern":"^[A-Z0-9_]+$","type":"string"},"fields":{"items":{"additionalProperties":false,"properties":{"expected_correction":{"maxLength":600,"minLength":1,"type":"string"},"path":{"maxLength":160,"type":["string","null"]},"reason":{"maxLength":80,"pattern":"^[a-z_]+$","type":"string"},"validation_layer":{"enum":["format","serviceability","reference","technical"]}},"required":["path","reason","expected_correction","validation_layer"],"type":"object"},"maxItems":25,"type":"array"},"message":{"maxLength":1000,"minLength":1,"type":"string"},"next_action":{"enum":["correct_then_requote_and_confirm","change_destination_or_contact_nitech","retry_same_request","reconcile_same_key_same_arguments","renew_confirmation","contact_nitech","search_relay_then_requote_and_confirm","change_delivery_then_requote_and_confirm"]},"retry_same_key":{"type":"boolean"}},"required":["code","message","retry_same_key"],"type":"object"},"operation_outcome":{"enum":["not_created","unknown"]},"operation_reference":{"maxLength":64,"minLength":64,"pattern":"^[a-f0-9]{64}$","type":"string"},"order_created":{"const":false,"type":"boolean"},"order_id":{"minimum":1,"type":"integer"},"origin":{"const":"MCP"},"payment_created":{"const":false,"type":"boolean"},"reference":{"maxLength":32,"minLength":1,"type":"string"},"replayed":{"type":"boolean"},"schema_version":{"const":"1.0"},"state":{"enum":["awaiting_payment","paid","payment_accepted","payment_captured","payment_status_unknown","cancelled"]},"status":{"enum":["confirmation_required","created","pending","rejected","unknown"]},"summary":{"additionalProperties":false,"properties":{"amount_to_pay":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"billing_address":{"additionalProperties":false,"properties":{"address_line1":{"maxLength":200,"minLength":1,"type":"string"},"address_line2":{"maxLength":200,"minLength":0,"type":"string"},"city":{"maxLength":100,"minLength":1,"type":"string"},"company":{"maxLength":120,"minLength":0,"type":"string"},"country_code":{"maxLength":2,"minLength":2,"pattern":"^[A-Z]{2}$","type":"string"},"first_name":{"maxLength":80,"minLength":1,"type":"string"},"last_name":{"maxLength":80,"minLength":1,"type":"string"},"postal_code":{"maxLength":12,"minLength":1,"pattern":"^[A-Za-z0-9 -]+$","type":"string"}},"required":["first_name","last_name","address_line1","postal_code","city","country_code"],"type":"object"},"currency":{"const":"EUR"},"customer":{"additionalProperties":false,"properties":{"email":{"format":"email","maxLength":80,"minLength":1,"type":"string"},"phone":{"maxLength":30,"minLength":1,"pattern":"^[+0-9 ()/.-]{5,30}$","type":"string"}},"required":["email","phone"],"type":"object"},"delivery":{"oneOf":[{"additionalProperties":false,"properties":{"mode":{"const":"gls_pickup"},"relay":{"additionalProperties":false,"properties":{"address":{"additionalProperties":false,"properties":{"address_line1":{"maxLength":200,"minLength":1,"type":"string"},"address_line2":{"maxLength":161,"minLength":0,"type":"string"},"city":{"maxLength":100,"minLength":1,"type":"string"},"country_code":{"pattern":"^[A-Z]{2}$","type":"string"},"postal_code":{"maxLength":12,"minLength":1,"type":"string"}},"required":["address_line1","address_line2","postal_code","city","country_code"],"type":"object"},"holidays_gls":{"items":{"additionalProperties":false,"properties":{"EndDate":{"format":"date","type":"string"},"StartDate":{"format":"date","type":"string"}},"required":["StartDate","EndDate"],"type":"object"},"maxItems":100,"type":"array"},"name":{"maxLength":120,"minLength":1,"type":"string"},"opening_hours":{"items":{"additionalProperties":false,"properties":{"breaks":{"items":{"additionalProperties":false,"properties":{"from":{"pattern":"^(?:[01][0-9]|2[0-3]):[0-5][0-9]$|^24:00$","type":"string"},"to":{"pattern":"^(?:[01][0-9]|2[0-3]):[0-5][0-9]$|^24:00$","type":"string"}},"required":["from","to"],"type":"object"},"maxItems":10,"type":"array"},"day":{"enum":["MON","TUE","WED","THU","FRI","SAT","SUN"]},"periods":{"items":{"additionalProperties":false,"properties":{"from":{"pattern":"^(?:[01][0-9]|2[0-3]):[0-5][0-9]$|^24:00$","type":"string"},"to":{"pattern":"^(?:[01][0-9]|2[0-3]):[0-5][0-9]$|^24:00$","type":"string"}},"required":["from","to"],"type":"object"},"maxItems":10,"minItems":1,"type":"array"}},"required":["day","periods","breaks"],"type":"object"},"maxItems":7,"type":"array"},"relay_id":{"pattern":"^[A-Za-z0-9_-]{1,80}$","type":"string"},"working_days_gls":{"items":{"additionalProperties":false,"properties":{"Breaks":{"additionalProperties":false,"properties":{"OpeningHours":{"items":{"additionalProperties":false,"properties":{"From":{"maximum":86400000,"minimum":-3600000,"type":"integer"},"To":{"maximum":86400000,"minimum":-3600000,"type":"integer"}},"required":["From","To"],"type":"object"},"maxItems":10,"type":"array"}},"required":["OpeningHours"],"type":"object"},"DayOfWeek":{"enum":["MON","TUE","WED","THU","FRI","SAT","SUN"]},"OpeningHours":{"additionalProperties":false,"properties":{"OpeningHours":{"items":{"additionalProperties":false,"properties":{"From":{"maximum":86400000,"minimum":-3600000,"type":"integer"},"To":{"maximum":86400000,"minimum":-3600000,"type":"integer"}},"required":["From","To"],"type":"object"},"maxItems":10,"type":"array"}},"required":["OpeningHours"],"type":"object"}},"required":["DayOfWeek","OpeningHours"],"type":"object"},"maxItems":7,"type":"array"}},"required":["relay_id","name","address"],"type":"object"}},"required":["mode","relay"],"type":"object"},{"additionalProperties":false,"properties":{"mode":{"const":"home"}},"required":["mode"],"type":"object"}]},"grand_total_ht":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"lines":{"items":{"additionalProperties":false,"properties":{"designation":{"maxLength":2000,"minLength":0,"type":"string"},"line_amount_ht":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"line_amount_ttc":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"product_id":{"maximum":2147483647,"minimum":1,"type":"integer"},"public_reference":{"anyOf":[{"type":"string"},{"type":"null"}]},"quantity":{"maximum":100,"minimum":1,"type":"integer"},"tax_rate":{"maxLength":16,"minLength":1,"type":"string"},"unit_amount_ht":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"unit_amount_ttc":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"}},"required":["product_id","public_reference","designation","quantity","unit_amount_ht","unit_amount_ttc","tax_rate","line_amount_ht","line_amount_ttc"],"type":"object"},"maxItems":30,"minItems":1,"type":"array"},"products_amount_ht":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"shipping_address":{"additionalProperties":false,"properties":{"address_line1":{"maxLength":200,"minLength":1,"type":"string"},"address_line2":{"maxLength":200,"minLength":0,"type":"string"},"city":{"maxLength":100,"minLength":1,"type":"string"},"company":{"maxLength":120,"minLength":0,"type":"string"},"country_code":{"maxLength":2,"minLength":2,"pattern":"^[A-Z]{2}$","type":"string"},"first_name":{"maxLength":80,"minLength":1,"type":"string"},"last_name":{"maxLength":80,"minLength":1,"type":"string"},"postal_code":{"maxLength":12,"minLength":1,"pattern":"^[A-Za-z0-9 -]+$","type":"string"}},"required":["first_name","last_name","address_line1","postal_code","city","country_code"],"type":"object"},"shipping_amount_ht":{"maxLength":16,"minLength":1,"pattern":"^(0|[1-9][0-9]{0,7})\\.[0-9]{2}$","type":"string"},"shipping_amount_ttc":{"pattern":"^[0-9]+[.][0-9]{2}$","type":"string"},"tax_breakdown":{"items":{"additionalProperties":false,"properties":{"line_tax_sum":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"products_amount_ht":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"products_tax_amount":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"rounding_adjustment_ttc":{"pattern":"^-?(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"shipping_amount_ht":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"shipping_tax_amount":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"tax_amount":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"},"tax_rate":{"pattern":"^(0|[1-9][0-9]{0,2})(\\.[0-9]{1,6})?$","type":"string"},"taxable_amount_ht":{"pattern":"^(0|[1-9][0-9]{0,13})\\.[0-9]{2}$","type":"string"}},"required":["tax_rate","products_amount_ht","products_tax_amount","shipping_amount_ht","shipping_tax_amount","taxable_amount_ht","tax_amount","line_tax_sum","rounding_adjustment_ttc"],"type":"object"},"maxItems":31,"minItems":1,"type":"array"},"terms_notice":{"maxLength":2000,"minLength":1,"type":"string"},"terms_sha256":{"const":"1ca1d4335380fee439ca08fcaaf2b3c571626d86bf444c61836deb9fe9106f7f"},"terms_text":{"maxLength":1000,"minLength":1,"type":"string"},"terms_url":{"const":"https://mcp.nitech.fr/payments/terms/nitech-mcp-cgv-2026-11-04-v1.txt"},"terms_version":{"const":"nitech-mcp-cgv-2026-11-04-v1"}},"required":["customer","billing_address","shipping_address","lines","currency","products_amount_ht","shipping_amount_ht","grand_total_ht","amount_to_pay","tax_breakdown","terms_text","terms_notice","terms_version","terms_url","terms_sha256"],"type":"object"},"web_resume":{"oneOf":[{"additionalProperties":false,"properties":{"shops":{"maxItems":0,"type":"array"},"status":{"const":"unavailable"}},"required":["status","shops"],"type":"object"},{"additionalProperties":false,"properties":{"expires_at":{"format":"date-time","type":"string"},"shops":{"items":{"additionalProperties":false,"properties":{"label":{"maxLength":80,"minLength":1,"type":"string"},"shop":{"enum":["d_chau","n_nego","d_ther","e_sani"]},"url":{"maxLength":2048,"minLength":1,"pattern":"^https://www\\.(direct-chaudiere\\.com/boutique/|nitech-negoce\\.com/panier/|douchetherapy\\.com/noindex/order/|eausanitaire\\.com/boutique/caddie/)\\?mcp_resume=m1\\.[A-Za-z0-9_-]+\\.[a-f0-9]{64}$","type":"string"}},"required":["shop","label","url"],"type":"object"},"maxItems":4,"minItems":4,"type":"array"},"status":{"const":"available"}},"required":["status","expires_at","shops"],"type":"object"}]}},"required":["schema_version","status"],"type":"object"}Retrouver les preuvespubliablesdocumentéespièce/appareildisponiblesdupourpilote.une pièce et un appareil. La couverture documentaire est partielle ; une absence de preuve ne démontre ni compatibilité ni incompatibilité. verified exige une décision humaine active liée à ⟨26 unchanged words⟩
⟨14 unchanged words⟩ de commande distinctes. Cette consultation ne réserve aucunstockstock.;Prixlaetqualificationdisponibilitémétiersont lus dans le catalogue de production ; ils ne prouvent pas lafichecompatibilitéresteavecséparée.un appareil.
⟨5 unchanged words⟩ ,"properties":{"product_id":{"description":"
⟨5 unchanged words⟩ ,"properties":{"product_id":{"description":"PIDIdentifiant interne ducatalogue actif. PID1843produitestdans lepilote qualifié ; les autres projections restent provisoirescatalogueenNitechrecette.(entier).","maximum":2147483647,"minimum":1,"type ⟨5 unchanged words⟩
before
{"$defs":{"canonical":{"$defs":{"alias":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"kind":{"enum":["commercial_name","spelling_variant"]},"value":{"minLength":1,"type":"string"}},"required":["value","kind","evidence"],"type":"object"},"appliance":{"additionalProperties":false,"properties":{"brand":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"model":{"minLength":1,"type":"string"},"productId":{"anyOf":[{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["productId","brand","model","reference"],"type":"object"},"availability":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"observations":{"items":{"$ref":"#/$defs/canonical/$defs/availabilityObservation"},"minItems":0,"type":"array"},"orderable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"status":{"enum":["in_stock","out_of_stock","on_order","preorder","unknown","conflicting","on_request","not_for_sale"]}},"required":["status","orderable","observations","evidence"],"type":"object"},"availabilityObservation":{"additionalProperties":false,"properties":{"channel":{"enum":["human","jsonld","backoffice"]},"rawValue":{"minLength":1,"type":"string"},"reportedStatus":{"enum":["in_stock","out_of_stock","on_order","preorder","for_sale","unknown"]},"sourceRef":{"minLength":1,"type":"string"}},"required":["sourceRef","channel","reportedStatus","rawValue"],"type":"object"},"category":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"legacyId":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}]},"name":{"minLength":1,"type":"string"}},"required":["legacyId","name","evidence"],"type":"object"},"compatibility":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"enum":["confirmed","incompatible"]}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}}}}},{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}}}}}],"properties":{"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"scope":{"minLength":1,"type":"string"},"status":{"enum":["asserted","confirmed","incompatible","unknown","conflicting","verified","inferred"]},"target":{"$ref":"#/$defs/canonical/$defs/appliance"},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]}},"required":["target","status","scope","evidence"],"type":"object"},"document":{"additionalProperties":false,"properties":{"confirmedAppliance":{"maxLength":150,"type":"string"},"contentInspection":{"enum":["not_inspected","partially_inspected","inspected"]},"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"kind":{"enum":["manual","technical_sheet","certificate","unknown","user_manual","installation_manual","parts_diagram","commercial","other","irrelevant"]},"mediaType":{"anyOf":[{"enum":["application/pdf","text/html","image/jpeg","image/png"]},{"type":"null"}]},"reviewStatus":{"enum":["relevant","not_relevant","unreadable","wrong_appliance"]},"scope":{"additionalProperties":false,"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"type":{"enum":["product","related_appliance"]}},"required":["type","productId"],"type":"object"},"title":{"minLength":1,"type":"string"},"url":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]}},"required":["id","kind","title","url","mediaType","scope","contentInspection","evidence"],"type":"object"},"evidence":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"enum":["observed","inferred","validated"]}}},"then":{"properties":{"sourceRefs":{"minItems":1}}}},{"if":{"properties":{"status":{"const":"unconfirmed"}}},"then":{"properties":{"confidence":{"const":"unknown"}}}}],"properties":{"confidence":{"enum":["high","medium","low","unknown"]},"note":{"minLength":1,"type":"string"},"sourceRefs":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true},"status":{"enum":["observed","inferred","unconfirmed","validated"]}},"required":["status","confidence","sourceRefs","note"],"type":"object"},"explodedView":{"additionalProperties":false,"properties":{"appliance":{"$ref":"#/$defs/canonical/$defs/appliance"},"documentIds":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"occurrences":{"items":{"additionalProperties":false,"properties":{"marker":{"maxLength":64,"minLength":1,"type":"string"},"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"}},"required":["productId","marker"],"type":"object"},"minItems":1,"type":"array"},"planUrl":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]},"version":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","appliance","planUrl","version","documentIds","occurrences","evidence"],"type":"object"},"https":{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},"humanDecision":{"additionalProperties":false,"properties":{"at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"id":{"minimum":1,"type":"integer"},"outcome":{"enum":["relevant","not_relevant","unreadable","wrong_appliance","confirmed","rejected","qualified"]},"sourceFingerprint":{"pattern":"^[a-f0-9]{64}$","type":"string"},"sourceRef":{"pattern":"^human-decision-[1-9][0-9]*$","type":"string"}},"required":["id","outcome","at","sourceFingerprint","sourceRef"],"type":"object"},"identifier":{"additionalProperties":false,"properties":{"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"kind":{"enum":["manufacturer_reference_displayed","adaptable_reference","legacy_public_sku","gtin","other","nitech_reference","former_reference","supplier_reference","unknown"]},"value":{"minLength":1,"type":"string"}},"required":["kind","value","evidence"],"type":"object"},"image":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"mediaType":{"anyOf":[{"enum":["image/jpeg","image/png","image/webp","image/avif"]},{"type":"null"}]},"role":{"enum":["primary","secondary"]},"url":{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"}},"required":["url","role","mediaType","evidence"],"type":"object"},"issue":{"additionalProperties":false,"properties":{"code":{"pattern":"^[a-z][a-z0-9_]*$","type":"string"},"message":{"minLength":1,"type":"string"},"path":{"pattern":"^/","type":"string"},"severity":{"enum":["info","review_required","publication_blocker"]},"sourceRefs":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true}},"required":["code","path","severity","message","sourceRefs"],"type":"object"},"measurement":{"oneOf":[{"additionalProperties":false,"properties":{"amount":{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"},"kind":{"const":"number"},"qualifier":{"enum":["exact","approximate"]},"unit":{"minLength":1,"type":"string"}},"required":["kind","amount","unit","qualifier"],"type":"object"},{"additionalProperties":false,"properties":{"interpretation":{"enum":["literal","ambiguous"]},"kind":{"const":"text"},"text":{"minLength":1,"type":"string"},"unit":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","text","unit","interpretation"],"type":"object"}]},"price":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"amountHt":{"type":"null"},"amountTtc":{"type":"null"},"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"taxRate":{"type":"null"},"validUntil":{"type":"null"}}}},{"if":{"properties":{"status":{"const":"observed"}}},"then":{"properties":{"amountTtc":{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},"evidence":{"properties":{"status":{"enum":["observed","validated"]}}}}}},{"else":{"properties":{"validityEvidence":{"type":"null"}}},"if":{"properties":{"validUntil":{"type":"string"}}},"then":{"properties":{"validityEvidence":{"$ref":"#/$defs/canonical/$defs/evidence"}}}}],"properties":{"amountHt":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},{"type":"null"}]},"amountTtc":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},{"type":"null"}]},"currency":{"const":"EUR"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"status":{"enum":["observed","unknown"]},"taxRate":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]{0,2})(?:\\.[0-9]{1,2})?$","type":"string"},{"type":"null"}]},"validUntil":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"validityEvidence":{"anyOf":[{"$ref":"#/$defs/canonical/$defs/evidence"},{"type":"null"}]}},"required":["status","amountTtc","amountHt","currency","taxRate","validUntil","evidence","validityEvidence"],"type":"object"},"relation":{"additionalProperties":false,"allOf":[{"if":{"properties":{"qualification":{"const":"confirmed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}}}}}],"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"qualification":{"enum":["asserted","confirmed","unknown"]},"target":{"$ref":"#/$defs/canonical/$defs/target"}},"required":["target","qualification","evidence"],"type":"object"},"relationGroup":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/relation"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"source":{"additionalProperties":false,"allOf":[{"anyOf":[{"properties":{"url":{"$ref":"#/$defs/canonical/$defs/https"}}},{"properties":{"artifactPath":{"type":"string"}}},{"properties":{"kind":{"const":"catalogue_read"}}},{"properties":{"kind":{"const":"human_review"}}}]},{"if":{"properties":{"visibility":{"const":"public"}}},"then":{"allOf":[{"else":{"properties":{"url":{"$ref":"#/$defs/canonical/$defs/https"}}},"if":{"properties":{"kind":{"enum":["catalogue_read","human_review"]}}},"then":{"type":"object"}}],"properties":{"artifactPath":{"type":"null"}}}},{"if":{"properties":{"kind":{"const":"catalogue_read"}}},"then":{"properties":{"observedAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}}],"properties":{"artifactPath":{"anyOf":[{"pattern":"^(?!/)(?!.*\\.\\.)(?!.*\\\\)[A-Za-z0-9_./-]+$","type":"string"},{"type":"null"}]},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"kind":{"enum":["backoffice","public_page","manufacturer_document","audit_record","historical_capture","catalogue_read","human_review"]},"locator":{"minLength":1,"type":"string"},"observedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"observedOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-fA-F0-9]{64}$","type":"string"},{"type":"null"}]},"url":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]},"visibility":{"enum":["public","internal"]}},"required":["id","kind","url","artifactPath","locator","observedOn","observedAt","visibility","sha256"],"type":"object"},"specification":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"key":{"pattern":"^[a-z][a-z0-9_]*$","type":"string"},"label":{"minLength":1,"type":"string"},"sourceText":{"minLength":1,"type":"string"},"value":{"$ref":"#/$defs/canonical/$defs/measurement"}},"required":["key","label","value","sourceText","evidence"],"type":"object"},"statement":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"minLength":1,"type":"string"}},"required":["text","evidence"],"type":"object"},"stock":{"additionalProperties":false,"allOf":[{"if":{"properties":{"managed":{"enum":[false,null]}}},"then":{"properties":{"quantity":{"type":"null"}}}},{"if":{"properties":{"visibility":{"const":"public"}}},"then":{"properties":{"quantity":{"type":"null"},"rawQuantity":{"type":"null"}}}}],"properties":{"counted":{"type":"boolean"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"managed":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"quantity":{"anyOf":[{"type":"integer"},{"type":"null"}]},"rawQuantity":{"anyOf":[{"type":"integer"},{"type":"null"}]},"visibility":{"enum":["internal","public"]}},"required":["managed","quantity","rawQuantity","visibility","evidence"],"type":"object"},"target":{"additionalProperties":false,"anyOf":[{"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"}}},{"properties":{"reference":{"minLength":1,"type":"string"}}}],"properties":{"label":{"minLength":1,"type":"string"},"productId":{"anyOf":[{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["productId","reference","label"],"type":"object"}},"additionalProperties":false,"allOf":[{"if":{"properties":{"recordType":{"const":"source_snapshot"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"expiresAt":{"type":"null"},"policy":{"const":"snapshot_only"}}}}},"visibility":{"properties":{"publication":{"const":"not_approved"},"record":{"const":"internal"}}}}}},{"if":{"properties":{"verification":{"properties":{"status":{"const":"pending_business_review"}}}}},"then":{"properties":{"verification":{"properties":{"verifiedAt":{"type":"null"},"verifiedBy":{"type":"null"}}}}}},{"if":{"properties":{"verification":{"properties":{"status":{"const":"approved"}}}}},"then":{"properties":{"verification":{"properties":{"verifiedAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"verifiedBy":{"minLength":1,"type":"string"}}}}}},{"if":{"properties":{"visibility":{"properties":{"publication":{"const":"approved"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"verification":{"properties":{"status":{"const":"approved"}}}}}},{"if":{"properties":{"offer":{"properties":{"freshness":{"properties":{"policy":{"const":"bounded"}}}}}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"expiresAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}}}}}},{"if":{"properties":{"visibility":{"properties":{"record":{"const":"public"}}}}},"then":{"properties":{"visibility":{"properties":{"publication":{"enum":["approved","published_read_only"]}}}}}},{"else":{"allOf":[{"if":{"properties":{"visibility":{"properties":{"record":{"const":"preview"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"verification":{"properties":{"status":{"const":"pending_business_review"}}},"visibility":{"properties":{"publication":{"const":"not_approved"}}}}}},{"if":{"properties":{"recordType":{"const":"source_snapshot"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"freshness_status":{"const":"source_snapshot"}}}}}}}},{"if":{"properties":{"recordType":{"const":"canonical_product"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"freshness_status":{"enum":["not_certified","unknown","current_read"]}}}}}}}}],"properties":{"compatibilities":{"properties":{"items":{"items":{"allOf":[{"if":{"properties":{"status":{"enum":["verified","incompatible"]}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}},"verified_at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}},{"if":{"properties":{"status":{"const":"inferred"}}},"then":{"properties":{"evidence":{"properties":{"sourceRefs":{"minItems":1},"status":{"const":"inferred"}}},"verified_at":{"type":"null"}}}},{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"verified_at":{"type":"null"}}}}],"properties":{"evidence":{"properties":{"sourceRefs":{"minItems":1}}},"status":{"enum":["verified","inferred","incompatible","unknown"]}},"required":["verified_at"]}}}},"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","unknown","on_request","not_for_sale"]}}},"freshness":{"allOf":[{"if":{"properties":{"freshness_status":{"const":"source_snapshot"}}},"then":{"properties":{"policy":{"const":"snapshot_only"}}}},{"if":{"properties":{"freshness_status":{"const":"not_certified"}}},"then":{"properties":{"observed_at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"policy":{"const":"observation_only"}}}},{"if":{"properties":{"freshness_status":{"const":"unknown"}}},"then":{"properties":{"observed_at":{"type":"null"},"policy":{"const":"observation_only"},"verified_at":{"type":"null"}}}}],"properties":{"expiresAt":{"type":"null"},"policy":{"enum":["snapshot_only","observation_only"]}},"required":["source_updated_at","observed_at","verified_at","freshness_status"]}}}}},"if":{"properties":{"schemaVersion":{"const":"0.1.0"}}},"then":{"properties":{"compatibilities":{"properties":{"items":{"items":{"properties":{"status":{"enum":["asserted","confirmed","incompatible","unknown","conflicting"]},"verified_at":{"not":{}}}}}}},"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","on_order","preorder","unknown","conflicting"]}}},"freshness":{"properties":{"freshness_status":{"not":{}},"observed_at":{"not":{}},"policy":{"enum":["snapshot_only","bounded"]},"source_updated_at":{"not":{}},"verified_at":{"not":{}}}},"stock":{"properties":{"quantity":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}]}}}}},"provenance":{"properties":{"sources":{"items":{"properties":{"kind":{"enum":["backoffice","public_page","manufacturer_document","audit_record","historical_capture"]}}}}}},"visibility":{"properties":{"record":{"enum":["internal","public"]}}}}}},{"if":{"properties":{"schemaVersion":{"const":"0.1.0"}}},"then":{"properties":{"classification":{"properties":{"brandLabel":{"properties":{"name":{"type":"string"}}},"categoryPath":{"minItems":1}}},"names":{"properties":{"preferred":{"type":"string"}}},"references":{"properties":{"identifiers":{"minItems":1}}}}}},{"if":{"properties":{"visibility":{"properties":{"publication":{"const":"published_read_only"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"schemaVersion":{"enum":["0.1.1","0.1.2","0.1.3"]},"verification":{"properties":{"status":{"const":"pending_business_review"}}},"visibility":{"properties":{"record":{"const":"public"}}}}}},{"else":{"properties":{"offer":{"not":{"anyOf":[{"required":["sale_status"]},{"required":["order_mode"]},{"required":["order_reason"]},{"required":["review_reasons"]}]},"properties":{"availability":{"properties":{"status":{"not":{"const":"not_for_sale"}}}},"freshness":{"properties":{"freshness_status":{"not":{"const":"current_read"}}}},"stock":{"not":{"required":["counted"]}}}}}},"if":{"properties":{"schemaVersion":{"enum":["0.1.2","0.1.3"]}}},"then":{"properties":{"offer":{"properties":{"availability":{"properties":{"orderable":{"type":"boolean"}}},"freshness":{"properties":{"freshness_status":{"const":"current_read"},"observed_at":{"format":"date-time","type":"string"},"policy":{"const":"observation_only"}}},"stock":{"required":["counted"]}},"required":["sale_status","order_mode","order_reason","review_reasons"]},"recordType":{"const":"canonical_product"}}}},{"else":{"properties":{"compatibilities":{"properties":{"items":{"items":{"properties":{"decision":{"not":{}}}}}}},"documents":{"properties":{"items":{"items":{"properties":{"confirmedAppliance":{"not":{}},"decision":{"not":{}},"kind":{"enum":["manual","technical_sheet","certificate","unknown"]},"reviewStatus":{"not":{}}}}}}},"humanReview":{"not":{}},"provenance":{"properties":{"sources":{"items":{"properties":{"kind":{"not":{"const":"human_review"}}}}}}},"references":{"properties":{"identifiers":{"items":{"properties":{"decision":{"not":{}},"kind":{"enum":["manufacturer_reference_displayed","adaptable_reference","legacy_public_sku","gtin","other"]}}}}}}}},"if":{"properties":{"schemaVersion":{"const":"0.1.3"}}},"then":{"required":["humanReview"]}}],"description":"0.1.3 : qualifications humaines distinctes, liées à une source stable ; lecture commerciale courante inchangée.","properties":{"canonical_url":{"format":"uri","pattern":"^https://catalogue\\.nitech\\.fr/produits/[1-9][0-9]{0,9}$","type":"string"},"classification":{"additionalProperties":false,"properties":{"brandLabel":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"minLength":1}},"required":["name","evidence"],"type":"object"},"categoryPath":{"items":{"$ref":"#/$defs/canonical/$defs/category"},"minItems":0,"type":"array"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"manufacturer":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"name":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["name","evidence"],"type":"object"}},"required":["brandLabel","manufacturer","categoryPath","evidence"],"type":"object"},"compatibilities":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/compatibility"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"description":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/statement"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"documents":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/document"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"explodedViews":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/explodedView"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"humanReview":{"additionalProperties":false,"properties":{"productFingerprint":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reviewedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"reviewedFingerprint":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"status":{"enum":["pending","reviewed"]}},"required":["status","productFingerprint","reviewedFingerprint","reviewedAt"],"type":"object"},"identity":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"kind":{"enum":["spare_part","product","appliance"]},"legacyPid":{"minimum":1,"type":"integer"}},"required":["id","legacyPid","kind","evidence"],"type":"object"},"images":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/image"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"names":{"additionalProperties":false,"properties":{"aliases":{"items":{"$ref":"#/$defs/canonical/$defs/alias"},"minItems":0,"type":"array"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"preferred":{"anyOf":[{"type":"string"},{"type":"null"}],"minLength":1}},"required":["preferred","aliases","evidence"],"type":"object"},"offer":{"additionalProperties":false,"properties":{"availability":{"$ref":"#/$defs/canonical/$defs/availability"},"context":{"additionalProperties":false,"properties":{"channel":{"const":"retail"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"market":{"const":"FR"},"seller":{"const":"Nitech"},"shippingIncluded":{"const":false}},"required":["market","channel","seller","shippingIncluded","evidence"],"type":"object"},"delivery":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["text","evidence"],"type":"object"},"freshness":{"additionalProperties":false,"properties":{"asOf":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"expiresAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"freshness_status":{"description":"current_read : quantité courante observée ; aucun délai de fraîcheur inventé.","enum":["source_snapshot","not_certified","unknown","current_read"]},"observed_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Heure réelle de lecture courante de la base Nitech."},"policy":{"enum":["snapshot_only","bounded","observation_only"]},"source_updated_at":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Précision réelle de la source : date SQL conservée comme date, instant seulement si connu ; null si inconnu."},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Instant de vérification métier de cette offre, distinct de sa lecture ; null en l'absence de vérification."}},"required":["asOf","policy","expiresAt","evidence"],"type":"object"},"order_mode":{"enum":["online","contact_only","disabled"]},"order_reason":{"enum":["not_for_sale","sale_mode_undecided","stock_not_counted","untracked_orders_allowed","stock_empty","unavailable_orders_allowed","stock_available"]},"price":{"$ref":"#/$defs/canonical/$defs/price"},"review_reasons":{"items":{"enum":["stock_not_counted","sale_mode_undecided","on_sale_not_orderable"]},"maxItems":3,"type":"array","uniqueItems":true},"sale_status":{"enum":["on_sale","not_on_sale"]},"stock":{"$ref":"#/$defs/canonical/$defs/stock"}},"required":["context","price","stock","availability","delivery","freshness"],"type":"object"},"provenance":{"additionalProperties":false,"properties":{"issues":{"items":{"$ref":"#/$defs/canonical/$defs/issue"},"minItems":0,"type":"array"},"snapshotOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sourceModifiedOn":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"sources":{"items":{"$ref":"#/$defs/canonical/$defs/source"},"minItems":1,"type":"array"}},"required":["snapshotOn","sourceModifiedOn","sources","issues"],"type":"object"},"recordRevision":{"minimum":1,"type":"integer"},"recordType":{"enum":["source_snapshot","canonical_product"]},"references":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"identifiers":{"items":{"$ref":"#/$defs/canonical/$defs/identifier"},"minItems":0,"type":"array"},"merchantSku":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["merchantSku","identifiers","evidence"],"type":"object"},"relations":{"additionalProperties":false,"properties":{"accessories":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"alternatives":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"replacedBy":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"replaces":{"$ref":"#/$defs/canonical/$defs/relationGroup"}},"required":["replaces","replacedBy","alternatives","accessories"],"type":"object"},"schemaVersion":{"enum":["0.1.0","0.1.1","0.1.2","0.1.3"]},"specifications":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/specification"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"verification":{"additionalProperties":false,"description":"Revue des assertions qualifiées (evidence.status=validated) et de leur publication examinée ; ne certifie pas chaque observation commerciale ultérieure. Une validation ne se transfère pas à une valeur/provenance modifiée.","properties":{"status":{"enum":["pending_business_review","approved"]},"verifiedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"verifiedBy":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["status","verifiedAt","verifiedBy"],"type":"object"},"visibility":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"publication":{"description":"published_read_only décrit la diffusion publique autorisée sans approbation de revue métier ; approved conserve son sens historique de publication après revue.","enum":["not_approved","approved","published_read_only"]},"record":{"enum":["internal","public","preview"]}},"required":["record","publication","evidence"],"type":"object"}},"required":["schemaVersion","recordRevision","recordType","identity","references","names","classification","description","specifications","compatibilities","relations","offer","images","documents","explodedViews","provenance","verification","visibility"],"title":"Nitech — produit canonique v0.1","type":"object"}},"$schema":"https://json-schema.org/draft/2020-12/schema","description":"Generated by bin/build-mcp-schemas.py; authoritative product definitions remain in nitech-product-v0.1.schema.json.","oneOf":[{"additionalProperties":false,"properties":{"product":{"allOf":[{"$ref":"#/$defs/canonical"},{"properties":{"recordType":{"const":"canonical_product"},"schemaVersion":{"enum":["0.1.1","0.1.2","0.1.3"]},"visibility":{"anyOf":[{"properties":{"publication":{"const":"not_approved"},"record":{"const":"preview"}}},{"properties":{"publication":{"const":"published_read_only"},"record":{"const":"public"}}}]}}}]}},"required":["product"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"pattern":"^[A-Z_]{3,64}$","type":"string"},"message":{"maxLength":500,"minLength":1,"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"type":"object"}},"required":["error"],"type":"object"}],"type":"object"}⟨5 unchanged words⟩ ,"properties":{"product_id":{"description":"PIDIdentifiant interne ducatalogue actif. PID1843produitestdans lepilote qualifié ; les autres projections restent provisoirescatalogueenNitechrecette.(entier).","maximum":2147483647,"minimum":1,"type ⟨5 unchanged words⟩
before
{"$defs":{"canonical":{"$defs":{"alias":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"kind":{"enum":["commercial_name","spelling_variant"]},"value":{"minLength":1,"type":"string"}},"required":["value","kind","evidence"],"type":"object"},"appliance":{"additionalProperties":false,"properties":{"brand":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"model":{"minLength":1,"type":"string"},"productId":{"anyOf":[{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["productId","brand","model","reference"],"type":"object"},"availability":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"observations":{"items":{"$ref":"#/$defs/canonical/$defs/availabilityObservation"},"minItems":0,"type":"array"},"orderable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"status":{"enum":["in_stock","out_of_stock","on_order","preorder","unknown","conflicting","on_request","not_for_sale"]}},"required":["status","orderable","observations","evidence"],"type":"object"},"availabilityObservation":{"additionalProperties":false,"properties":{"channel":{"enum":["human","jsonld","backoffice"]},"rawValue":{"minLength":1,"type":"string"},"reportedStatus":{"enum":["in_stock","out_of_stock","on_order","preorder","for_sale","unknown"]},"sourceRef":{"minLength":1,"type":"string"}},"required":["sourceRef","channel","reportedStatus","rawValue"],"type":"object"},"category":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"legacyId":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}]},"name":{"minLength":1,"type":"string"}},"required":["legacyId","name","evidence"],"type":"object"},"compatibility":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"enum":["confirmed","incompatible"]}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}}}}},{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}}}}}],"properties":{"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"scope":{"minLength":1,"type":"string"},"status":{"enum":["asserted","confirmed","incompatible","unknown","conflicting","verified","inferred"]},"target":{"$ref":"#/$defs/canonical/$defs/appliance"},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]}},"required":["target","status","scope","evidence"],"type":"object"},"document":{"additionalProperties":false,"properties":{"confirmedAppliance":{"maxLength":150,"type":"string"},"contentInspection":{"enum":["not_inspected","partially_inspected","inspected"]},"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"kind":{"enum":["manual","technical_sheet","certificate","unknown","user_manual","installation_manual","parts_diagram","commercial","other","irrelevant"]},"mediaType":{"anyOf":[{"enum":["application/pdf","text/html","image/jpeg","image/png"]},{"type":"null"}]},"reviewStatus":{"enum":["relevant","not_relevant","unreadable","wrong_appliance"]},"scope":{"additionalProperties":false,"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"type":{"enum":["product","related_appliance"]}},"required":["type","productId"],"type":"object"},"title":{"minLength":1,"type":"string"},"url":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]}},"required":["id","kind","title","url","mediaType","scope","contentInspection","evidence"],"type":"object"},"evidence":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"enum":["observed","inferred","validated"]}}},"then":{"properties":{"sourceRefs":{"minItems":1}}}},{"if":{"properties":{"status":{"const":"unconfirmed"}}},"then":{"properties":{"confidence":{"const":"unknown"}}}}],"properties":{"confidence":{"enum":["high","medium","low","unknown"]},"note":{"minLength":1,"type":"string"},"sourceRefs":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true},"status":{"enum":["observed","inferred","unconfirmed","validated"]}},"required":["status","confidence","sourceRefs","note"],"type":"object"},"explodedView":{"additionalProperties":false,"properties":{"appliance":{"$ref":"#/$defs/canonical/$defs/appliance"},"documentIds":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"occurrences":{"items":{"additionalProperties":false,"properties":{"marker":{"maxLength":64,"minLength":1,"type":"string"},"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"}},"required":["productId","marker"],"type":"object"},"minItems":1,"type":"array"},"planUrl":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]},"version":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","appliance","planUrl","version","documentIds","occurrences","evidence"],"type":"object"},"https":{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},"humanDecision":{"additionalProperties":false,"properties":{"at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"id":{"minimum":1,"type":"integer"},"outcome":{"enum":["relevant","not_relevant","unreadable","wrong_appliance","confirmed","rejected","qualified"]},"sourceFingerprint":{"pattern":"^[a-f0-9]{64}$","type":"string"},"sourceRef":{"pattern":"^human-decision-[1-9][0-9]*$","type":"string"}},"required":["id","outcome","at","sourceFingerprint","sourceRef"],"type":"object"},"identifier":{"additionalProperties":false,"properties":{"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"kind":{"enum":["manufacturer_reference_displayed","adaptable_reference","legacy_public_sku","gtin","other","nitech_reference","former_reference","supplier_reference","unknown"]},"value":{"minLength":1,"type":"string"}},"required":["kind","value","evidence"],"type":"object"},"image":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"mediaType":{"anyOf":[{"enum":["image/jpeg","image/png","image/webp","image/avif"]},{"type":"null"}]},"role":{"enum":["primary","secondary"]},"url":{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"}},"required":["url","role","mediaType","evidence"],"type":"object"},"issue":{"additionalProperties":false,"properties":{"code":{"pattern":"^[a-z][a-z0-9_]*$","type":"string"},"message":{"minLength":1,"type":"string"},"path":{"pattern":"^/","type":"string"},"severity":{"enum":["info","review_required","publication_blocker"]},"sourceRefs":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true}},"required":["code","path","severity","message","sourceRefs"],"type":"object"},"measurement":{"oneOf":[{"additionalProperties":false,"properties":{"amount":{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"},"kind":{"const":"number"},"qualifier":{"enum":["exact","approximate"]},"unit":{"minLength":1,"type":"string"}},"required":["kind","amount","unit","qualifier"],"type":"object"},{"additionalProperties":false,"properties":{"interpretation":{"enum":["literal","ambiguous"]},"kind":{"const":"text"},"text":{"minLength":1,"type":"string"},"unit":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","text","unit","interpretation"],"type":"object"}]},"price":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"amountHt":{"type":"null"},"amountTtc":{"type":"null"},"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"taxRate":{"type":"null"},"validUntil":{"type":"null"}}}},{"if":{"properties":{"status":{"const":"observed"}}},"then":{"properties":{"amountTtc":{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},"evidence":{"properties":{"status":{"enum":["observed","validated"]}}}}}},{"else":{"properties":{"validityEvidence":{"type":"null"}}},"if":{"properties":{"validUntil":{"type":"string"}}},"then":{"properties":{"validityEvidence":{"$ref":"#/$defs/canonical/$defs/evidence"}}}}],"properties":{"amountHt":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},{"type":"null"}]},"amountTtc":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},{"type":"null"}]},"currency":{"const":"EUR"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"status":{"enum":["observed","unknown"]},"taxRate":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]{0,2})(?:\\.[0-9]{1,2})?$","type":"string"},{"type":"null"}]},"validUntil":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"validityEvidence":{"anyOf":[{"$ref":"#/$defs/canonical/$defs/evidence"},{"type":"null"}]}},"required":["status","amountTtc","amountHt","currency","taxRate","validUntil","evidence","validityEvidence"],"type":"object"},"relation":{"additionalProperties":false,"allOf":[{"if":{"properties":{"qualification":{"const":"confirmed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}}}}}],"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"qualification":{"enum":["asserted","confirmed","unknown"]},"target":{"$ref":"#/$defs/canonical/$defs/target"}},"required":["target","qualification","evidence"],"type":"object"},"relationGroup":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/relation"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"source":{"additionalProperties":false,"allOf":[{"anyOf":[{"properties":{"url":{"$ref":"#/$defs/canonical/$defs/https"}}},{"properties":{"artifactPath":{"type":"string"}}},{"properties":{"kind":{"const":"catalogue_read"}}},{"properties":{"kind":{"const":"human_review"}}}]},{"if":{"properties":{"visibility":{"const":"public"}}},"then":{"allOf":[{"else":{"properties":{"url":{"$ref":"#/$defs/canonical/$defs/https"}}},"if":{"properties":{"kind":{"enum":["catalogue_read","human_review"]}}},"then":{"type":"object"}}],"properties":{"artifactPath":{"type":"null"}}}},{"if":{"properties":{"kind":{"const":"catalogue_read"}}},"then":{"properties":{"observedAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}}],"properties":{"artifactPath":{"anyOf":[{"pattern":"^(?!/)(?!.*\\.\\.)(?!.*\\\\)[A-Za-z0-9_./-]+$","type":"string"},{"type":"null"}]},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"kind":{"enum":["backoffice","public_page","manufacturer_document","audit_record","historical_capture","catalogue_read","human_review"]},"locator":{"minLength":1,"type":"string"},"observedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"observedOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-fA-F0-9]{64}$","type":"string"},{"type":"null"}]},"url":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]},"visibility":{"enum":["public","internal"]}},"required":["id","kind","url","artifactPath","locator","observedOn","observedAt","visibility","sha256"],"type":"object"},"specification":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"key":{"pattern":"^[a-z][a-z0-9_]*$","type":"string"},"label":{"minLength":1,"type":"string"},"sourceText":{"minLength":1,"type":"string"},"value":{"$ref":"#/$defs/canonical/$defs/measurement"}},"required":["key","label","value","sourceText","evidence"],"type":"object"},"statement":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"minLength":1,"type":"string"}},"required":["text","evidence"],"type":"object"},"stock":{"additionalProperties":false,"allOf":[{"if":{"properties":{"managed":{"enum":[false,null]}}},"then":{"properties":{"quantity":{"type":"null"}}}},{"if":{"properties":{"visibility":{"const":"public"}}},"then":{"properties":{"quantity":{"type":"null"},"rawQuantity":{"type":"null"}}}}],"properties":{"counted":{"type":"boolean"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"managed":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"quantity":{"anyOf":[{"type":"integer"},{"type":"null"}]},"rawQuantity":{"anyOf":[{"type":"integer"},{"type":"null"}]},"visibility":{"enum":["internal","public"]}},"required":["managed","quantity","rawQuantity","visibility","evidence"],"type":"object"},"target":{"additionalProperties":false,"anyOf":[{"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"}}},{"properties":{"reference":{"minLength":1,"type":"string"}}}],"properties":{"label":{"minLength":1,"type":"string"},"productId":{"anyOf":[{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["productId","reference","label"],"type":"object"}},"additionalProperties":false,"allOf":[{"if":{"properties":{"recordType":{"const":"source_snapshot"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"expiresAt":{"type":"null"},"policy":{"const":"snapshot_only"}}}}},"visibility":{"properties":{"publication":{"const":"not_approved"},"record":{"const":"internal"}}}}}},{"if":{"properties":{"verification":{"properties":{"status":{"const":"pending_business_review"}}}}},"then":{"properties":{"verification":{"properties":{"verifiedAt":{"type":"null"},"verifiedBy":{"type":"null"}}}}}},{"if":{"properties":{"verification":{"properties":{"status":{"const":"approved"}}}}},"then":{"properties":{"verification":{"properties":{"verifiedAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"verifiedBy":{"minLength":1,"type":"string"}}}}}},{"if":{"properties":{"visibility":{"properties":{"publication":{"const":"approved"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"verification":{"properties":{"status":{"const":"approved"}}}}}},{"if":{"properties":{"offer":{"properties":{"freshness":{"properties":{"policy":{"const":"bounded"}}}}}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"expiresAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}}}}}},{"if":{"properties":{"visibility":{"properties":{"record":{"const":"public"}}}}},"then":{"properties":{"visibility":{"properties":{"publication":{"enum":["approved","published_read_only"]}}}}}},{"else":{"allOf":[{"if":{"properties":{"visibility":{"properties":{"record":{"const":"preview"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"verification":{"properties":{"status":{"const":"pending_business_review"}}},"visibility":{"properties":{"publication":{"const":"not_approved"}}}}}},{"if":{"properties":{"recordType":{"const":"source_snapshot"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"freshness_status":{"const":"source_snapshot"}}}}}}}},{"if":{"properties":{"recordType":{"const":"canonical_product"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"freshness_status":{"enum":["not_certified","unknown","current_read"]}}}}}}}}],"properties":{"compatibilities":{"properties":{"items":{"items":{"allOf":[{"if":{"properties":{"status":{"enum":["verified","incompatible"]}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}},"verified_at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}},{"if":{"properties":{"status":{"const":"inferred"}}},"then":{"properties":{"evidence":{"properties":{"sourceRefs":{"minItems":1},"status":{"const":"inferred"}}},"verified_at":{"type":"null"}}}},{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"verified_at":{"type":"null"}}}}],"properties":{"evidence":{"properties":{"sourceRefs":{"minItems":1}}},"status":{"enum":["verified","inferred","incompatible","unknown"]}},"required":["verified_at"]}}}},"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","unknown","on_request","not_for_sale"]}}},"freshness":{"allOf":[{"if":{"properties":{"freshness_status":{"const":"source_snapshot"}}},"then":{"properties":{"policy":{"const":"snapshot_only"}}}},{"if":{"properties":{"freshness_status":{"const":"not_certified"}}},"then":{"properties":{"observed_at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"policy":{"const":"observation_only"}}}},{"if":{"properties":{"freshness_status":{"const":"unknown"}}},"then":{"properties":{"observed_at":{"type":"null"},"policy":{"const":"observation_only"},"verified_at":{"type":"null"}}}}],"properties":{"expiresAt":{"type":"null"},"policy":{"enum":["snapshot_only","observation_only"]}},"required":["source_updated_at","observed_at","verified_at","freshness_status"]}}}}},"if":{"properties":{"schemaVersion":{"const":"0.1.0"}}},"then":{"properties":{"compatibilities":{"properties":{"items":{"items":{"properties":{"status":{"enum":["asserted","confirmed","incompatible","unknown","conflicting"]},"verified_at":{"not":{}}}}}}},"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","on_order","preorder","unknown","conflicting"]}}},"freshness":{"properties":{"freshness_status":{"not":{}},"observed_at":{"not":{}},"policy":{"enum":["snapshot_only","bounded"]},"source_updated_at":{"not":{}},"verified_at":{"not":{}}}},"stock":{"properties":{"quantity":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}]}}}}},"provenance":{"properties":{"sources":{"items":{"properties":{"kind":{"enum":["backoffice","public_page","manufacturer_document","audit_record","historical_capture"]}}}}}},"visibility":{"properties":{"record":{"enum":["internal","public"]}}}}}},{"if":{"properties":{"schemaVersion":{"const":"0.1.0"}}},"then":{"properties":{"classification":{"properties":{"brandLabel":{"properties":{"name":{"type":"string"}}},"categoryPath":{"minItems":1}}},"names":{"properties":{"preferred":{"type":"string"}}},"references":{"properties":{"identifiers":{"minItems":1}}}}}},{"if":{"properties":{"visibility":{"properties":{"publication":{"const":"published_read_only"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"schemaVersion":{"enum":["0.1.1","0.1.2","0.1.3"]},"verification":{"properties":{"status":{"const":"pending_business_review"}}},"visibility":{"properties":{"record":{"const":"public"}}}}}},{"else":{"properties":{"offer":{"not":{"anyOf":[{"required":["sale_status"]},{"required":["order_mode"]},{"required":["order_reason"]},{"required":["review_reasons"]}]},"properties":{"availability":{"properties":{"status":{"not":{"const":"not_for_sale"}}}},"freshness":{"properties":{"freshness_status":{"not":{"const":"current_read"}}}},"stock":{"not":{"required":["counted"]}}}}}},"if":{"properties":{"schemaVersion":{"enum":["0.1.2","0.1.3"]}}},"then":{"properties":{"offer":{"properties":{"availability":{"properties":{"orderable":{"type":"boolean"}}},"freshness":{"properties":{"freshness_status":{"const":"current_read"},"observed_at":{"format":"date-time","type":"string"},"policy":{"const":"observation_only"}}},"stock":{"required":["counted"]}},"required":["sale_status","order_mode","order_reason","review_reasons"]},"recordType":{"const":"canonical_product"}}}},{"else":{"properties":{"compatibilities":{"properties":{"items":{"items":{"properties":{"decision":{"not":{}}}}}}},"documents":{"properties":{"items":{"items":{"properties":{"confirmedAppliance":{"not":{}},"decision":{"not":{}},"kind":{"enum":["manual","technical_sheet","certificate","unknown"]},"reviewStatus":{"not":{}}}}}}},"humanReview":{"not":{}},"provenance":{"properties":{"sources":{"items":{"properties":{"kind":{"not":{"const":"human_review"}}}}}}},"references":{"properties":{"identifiers":{"items":{"properties":{"decision":{"not":{}},"kind":{"enum":["manufacturer_reference_displayed","adaptable_reference","legacy_public_sku","gtin","other"]}}}}}}}},"if":{"properties":{"schemaVersion":{"const":"0.1.3"}}},"then":{"required":["humanReview"]}}],"description":"0.1.3 : qualifications humaines distinctes, liées à une source stable ; lecture commerciale courante inchangée.","properties":{"canonical_url":{"format":"uri","pattern":"^https://catalogue\\.nitech\\.fr/produits/[1-9][0-9]{0,9}$","type":"string"},"classification":{"additionalProperties":false,"properties":{"brandLabel":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"minLength":1}},"required":["name","evidence"],"type":"object"},"categoryPath":{"items":{"$ref":"#/$defs/canonical/$defs/category"},"minItems":0,"type":"array"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"manufacturer":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"name":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["name","evidence"],"type":"object"}},"required":["brandLabel","manufacturer","categoryPath","evidence"],"type":"object"},"compatibilities":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/compatibility"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"description":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/statement"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"documents":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/document"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"explodedViews":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/explodedView"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"humanReview":{"additionalProperties":false,"properties":{"productFingerprint":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reviewedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"reviewedFingerprint":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"status":{"enum":["pending","reviewed"]}},"required":["status","productFingerprint","reviewedFingerprint","reviewedAt"],"type":"object"},"identity":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"kind":{"enum":["spare_part","product","appliance"]},"legacyPid":{"minimum":1,"type":"integer"}},"required":["id","legacyPid","kind","evidence"],"type":"object"},"images":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/image"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"names":{"additionalProperties":false,"properties":{"aliases":{"items":{"$ref":"#/$defs/canonical/$defs/alias"},"minItems":0,"type":"array"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"preferred":{"anyOf":[{"type":"string"},{"type":"null"}],"minLength":1}},"required":["preferred","aliases","evidence"],"type":"object"},"offer":{"additionalProperties":false,"properties":{"availability":{"$ref":"#/$defs/canonical/$defs/availability"},"context":{"additionalProperties":false,"properties":{"channel":{"const":"retail"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"market":{"const":"FR"},"seller":{"const":"Nitech"},"shippingIncluded":{"const":false}},"required":["market","channel","seller","shippingIncluded","evidence"],"type":"object"},"delivery":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["text","evidence"],"type":"object"},"freshness":{"additionalProperties":false,"properties":{"asOf":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"expiresAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"freshness_status":{"description":"current_read : quantité courante observée ; aucun délai de fraîcheur inventé.","enum":["source_snapshot","not_certified","unknown","current_read"]},"observed_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Heure réelle de lecture courante de la base Nitech."},"policy":{"enum":["snapshot_only","bounded","observation_only"]},"source_updated_at":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Précision réelle de la source : date SQL conservée comme date, instant seulement si connu ; null si inconnu."},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Instant de vérification métier de cette offre, distinct de sa lecture ; null en l'absence de vérification."}},"required":["asOf","policy","expiresAt","evidence"],"type":"object"},"order_mode":{"enum":["online","contact_only","disabled"]},"order_reason":{"enum":["not_for_sale","sale_mode_undecided","stock_not_counted","untracked_orders_allowed","stock_empty","unavailable_orders_allowed","stock_available"]},"price":{"$ref":"#/$defs/canonical/$defs/price"},"review_reasons":{"items":{"enum":["stock_not_counted","sale_mode_undecided","on_sale_not_orderable"]},"maxItems":3,"type":"array","uniqueItems":true},"sale_status":{"enum":["on_sale","not_on_sale"]},"stock":{"$ref":"#/$defs/canonical/$defs/stock"}},"required":["context","price","stock","availability","delivery","freshness"],"type":"object"},"provenance":{"additionalProperties":false,"properties":{"issues":{"items":{"$ref":"#/$defs/canonical/$defs/issue"},"minItems":0,"type":"array"},"snapshotOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sourceModifiedOn":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"sources":{"items":{"$ref":"#/$defs/canonical/$defs/source"},"minItems":1,"type":"array"}},"required":["snapshotOn","sourceModifiedOn","sources","issues"],"type":"object"},"recordRevision":{"minimum":1,"type":"integer"},"recordType":{"enum":["source_snapshot","canonical_product"]},"references":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"identifiers":{"items":{"$ref":"#/$defs/canonical/$defs/identifier"},"minItems":0,"type":"array"},"merchantSku":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["merchantSku","identifiers","evidence"],"type":"object"},"relations":{"additionalProperties":false,"properties":{"accessories":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"alternatives":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"replacedBy":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"replaces":{"$ref":"#/$defs/canonical/$defs/relationGroup"}},"required":["replaces","replacedBy","alternatives","accessories"],"type":"object"},"schemaVersion":{"enum":["0.1.0","0.1.1","0.1.2","0.1.3"]},"specifications":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/specification"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"verification":{"additionalProperties":false,"description":"Revue des assertions qualifiées (evidence.status=validated) et de leur publication examinée ; ne certifie pas chaque observation commerciale ultérieure. Une validation ne se transfère pas à une valeur/provenance modifiée.","properties":{"status":{"enum":["pending_business_review","approved"]},"verifiedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"verifiedBy":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["status","verifiedAt","verifiedBy"],"type":"object"},"visibility":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"publication":{"description":"published_read_only décrit la diffusion publique autorisée sans approbation de revue métier ; approved conserve son sens historique de publication après revue.","enum":["not_approved","approved","published_read_only"]},"record":{"enum":["internal","public","preview"]}},"required":["record","publication","evidence"],"type":"object"}},"required":["schemaVersion","recordRevision","recordType","identity","references","names","classification","description","specifications","compatibilities","relations","offer","images","documents","explodedViews","provenance","verification","visibility"],"title":"Nitech — produit canonique v0.1","type":"object"}},"$schema":"https://json-schema.org/draft/2020-12/schema","oneOf":[{"additionalProperties":false,"properties":{"documents":{"items":{"additionalProperties":false,"properties":{"document_date":{"type":"null"},"document_id":{"maxLength":2000,"minLength":1,"type":"string"},"document_type":{"enum":["manual","technical_sheet","certificate","unknown","user_manual","installation_manual","parts_diagram","commercial","other","irrelevant"]},"filename":{"maxLength":2000,"minLength":1,"type":"string"},"previous_content_inspection":{"enum":["not_inspected","partially_inspected","inspected"]},"publication":{"const":"public_link"},"scope":{"additionalProperties":false,"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"type":{"enum":["product","related_appliance"]}},"required":["type","productId"],"type":"object"},"sources":{"items":{"$ref":"#/$defs/canonical/$defs/source"},"maxItems":10,"type":"array"},"title":{"maxLength":2000,"minLength":1,"type":"string"},"url":{"format":"uri","pattern":"^https://www\\.(?:direct-chaudiere\\.com|nitech-negoce\\.com)/img/produits/(?:p_pdf|p_eclates)/[^/?#]+$","type":"string"},"verification_status":{"enum":["not_reverified","human_verified"]},"verified_at":{"anyOf":[{"type":"string"},{"type":"null"}],"format":"date-time"},"version":{"type":"null"}},"required":["document_id","document_type","title","filename","url","scope","sources","document_date","version","verification_status","verified_at","previous_content_inspection","publication"],"type":"object"},"maxItems":403,"type":"array"},"observed_at":{"format":"date-time","type":"string"},"product_id":{"maximum":2147483647,"minimum":1,"type":"integer"},"qualification_status":{"enum":["pilot_qualified","provisional"]},"status":{"enum":["documents_available","no_public_documents"]},"uncertainties":{"items":{"pattern":"^[a-z_]{3,80}$","type":"string"},"maxItems":12,"type":"array"},"verified_document_count":{"maximum":403,"minimum":0,"type":"integer"},"withheld_count":{"maximum":403,"minimum":0,"type":"integer"}},"required":["product_id","qualification_status","status","documents","withheld_count","verified_document_count","observed_at","uncertainties"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"pattern":"^[A-Z_]{3,64}$","type":"string"},"message":{"maxLength":500,"minLength":1,"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"type":"object"}},"required":["error"],"type":"object"}],"type":"object"}⟨5 unchanged words⟩ //json-schema.org/draft/2020-12/schema","additionalProperties":false,"allOf":[{"else":{"properties":{"destination":{"properties":{"address_line1":false,"city":false}}}},"if":{"required":["delivery"]}," ⟨393 unchanged words⟩
⟨5 unchanged words⟩ //json-schema.org/draft/2020-12/schema","additionalProperties":false,"allOf":[{"else":{"properties":{"destination":{"properties":{"address_line1":false,"city":false}}}},"if":{"required":["delivery"]}," ⟨139 unchanged words⟩
⟨146 unchanged words⟩ "minimum":1,"type":"integer"},"qualification_status":{"enum":["pilot_qualified","provisional"]},"references":{"items":{"additionalProperties":false," ⟨92 unchanged words⟩ ","references","brand","associated_models","match_type","qualification_status","uncertainties","source"],"type":" ⟨79 unchanged words⟩
Certificate recorded, valid to 2027-01-25
Authorization not required
Changed the definition of "get_payment" and "prepare_payment"
Au client, parler de saLirecommandeleetpaiement de laprochaine action utile.commandeGarderdans lesnoms d’outils, états bruts,donnéesidentifiantscommunesinternes,Nitechclés,avecjetons
Unknown → Live
First tool surface recorded: 13 tools (server version 0.1.0)
https://mcp.nitech.fr/mcp (mcp_streamable_http) — from mcp_registry, with the record
Showing the latest 7 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
before
{"$defs":{"canonical":{"$defs":{"alias":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"kind":{"enum":["commercial_name","spelling_variant"]},"value":{"minLength":1,"type":"string"}},"required":["value","kind","evidence"],"type":"object"},"appliance":{"additionalProperties":false,"properties":{"brand":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"model":{"minLength":1,"type":"string"},"productId":{"anyOf":[{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["productId","brand","model","reference"],"type":"object"},"availability":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"observations":{"items":{"$ref":"#/$defs/canonical/$defs/availabilityObservation"},"minItems":0,"type":"array"},"orderable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"status":{"enum":["in_stock","out_of_stock","on_order","preorder","unknown","conflicting","on_request","not_for_sale"]}},"required":["status","orderable","observations","evidence"],"type":"object"},"availabilityObservation":{"additionalProperties":false,"properties":{"channel":{"enum":["human","jsonld","backoffice"]},"rawValue":{"minLength":1,"type":"string"},"reportedStatus":{"enum":["in_stock","out_of_stock","on_order","preorder","for_sale","unknown"]},"sourceRef":{"minLength":1,"type":"string"}},"required":["sourceRef","channel","reportedStatus","rawValue"],"type":"object"},"category":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"legacyId":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}]},"name":{"minLength":1,"type":"string"}},"required":["legacyId","name","evidence"],"type":"object"},"compatibility":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"enum":["confirmed","incompatible"]}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}}}}},{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}}}}}],"properties":{"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"scope":{"minLength":1,"type":"string"},"status":{"enum":["asserted","confirmed","incompatible","unknown","conflicting","verified","inferred"]},"target":{"$ref":"#/$defs/canonical/$defs/appliance"},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]}},"required":["target","status","scope","evidence"],"type":"object"},"document":{"additionalProperties":false,"properties":{"confirmedAppliance":{"maxLength":150,"type":"string"},"contentInspection":{"enum":["not_inspected","partially_inspected","inspected"]},"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"kind":{"enum":["manual","technical_sheet","certificate","unknown","user_manual","installation_manual","parts_diagram","commercial","other","irrelevant"]},"mediaType":{"anyOf":[{"enum":["application/pdf","text/html","image/jpeg","image/png"]},{"type":"null"}]},"reviewStatus":{"enum":["relevant","not_relevant","unreadable","wrong_appliance"]},"scope":{"additionalProperties":false,"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"type":{"enum":["product","related_appliance"]}},"required":["type","productId"],"type":"object"},"title":{"minLength":1,"type":"string"},"url":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]}},"required":["id","kind","title","url","mediaType","scope","contentInspection","evidence"],"type":"object"},"evidence":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"enum":["observed","inferred","validated"]}}},"then":{"properties":{"sourceRefs":{"minItems":1}}}},{"if":{"properties":{"status":{"const":"unconfirmed"}}},"then":{"properties":{"confidence":{"const":"unknown"}}}}],"properties":{"confidence":{"enum":["high","medium","low","unknown"]},"note":{"minLength":1,"type":"string"},"sourceRefs":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true},"status":{"enum":["observed","inferred","unconfirmed","validated"]}},"required":["status","confidence","sourceRefs","note"],"type":"object"},"explodedView":{"additionalProperties":false,"properties":{"appliance":{"$ref":"#/$defs/canonical/$defs/appliance"},"documentIds":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"occurrences":{"items":{"additionalProperties":false,"properties":{"marker":{"maxLength":64,"minLength":1,"type":"string"},"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"}},"required":["productId","marker"],"type":"object"},"minItems":1,"type":"array"},"planUrl":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]},"version":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","appliance","planUrl","version","documentIds","occurrences","evidence"],"type":"object"},"https":{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},"humanDecision":{"additionalProperties":false,"properties":{"at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"id":{"minimum":1,"type":"integer"},"outcome":{"enum":["relevant","not_relevant","unreadable","wrong_appliance","confirmed","rejected","qualified"]},"sourceFingerprint":{"pattern":"^[a-f0-9]{64}$","type":"string"},"sourceRef":{"pattern":"^human-decision-[1-9][0-9]*$","type":"string"}},"required":["id","outcome","at","sourceFingerprint","sourceRef"],"type":"object"},"identifier":{"additionalProperties":false,"properties":{"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"kind":{"enum":["manufacturer_reference_displayed","adaptable_reference","legacy_public_sku","gtin","other","nitech_reference","former_reference","supplier_reference","unknown"]},"value":{"minLength":1,"type":"string"}},"required":["kind","value","evidence"],"type":"object"},"image":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"mediaType":{"anyOf":[{"enum":["image/jpeg","image/png","image/webp","image/avif"]},{"type":"null"}]},"role":{"enum":["primary","secondary"]},"url":{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"}},"required":["url","role","mediaType","evidence"],"type":"object"},"issue":{"additionalProperties":false,"properties":{"code":{"pattern":"^[a-z][a-z0-9_]*$","type":"string"},"message":{"minLength":1,"type":"string"},"path":{"pattern":"^/","type":"string"},"severity":{"enum":["info","review_required","publication_blocker"]},"sourceRefs":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true}},"required":["code","path","severity","message","sourceRefs"],"type":"object"},"measurement":{"oneOf":[{"additionalProperties":false,"properties":{"amount":{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"},"kind":{"const":"number"},"qualifier":{"enum":["exact","approximate"]},"unit":{"minLength":1,"type":"string"}},"required":["kind","amount","unit","qualifier"],"type":"object"},{"additionalProperties":false,"properties":{"interpretation":{"enum":["literal","ambiguous"]},"kind":{"const":"text"},"text":{"minLength":1,"type":"string"},"unit":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","text","unit","interpretation"],"type":"object"}]},"price":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"amountHt":{"type":"null"},"amountTtc":{"type":"null"},"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"taxRate":{"type":"null"},"validUntil":{"type":"null"}}}},{"if":{"properties":{"status":{"const":"observed"}}},"then":{"properties":{"amountTtc":{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},"evidence":{"properties":{"status":{"enum":["observed","validated"]}}}}}},{"else":{"properties":{"validityEvidence":{"type":"null"}}},"if":{"properties":{"validUntil":{"type":"string"}}},"then":{"properties":{"validityEvidence":{"$ref":"#/$defs/canonical/$defs/evidence"}}}}],"properties":{"amountHt":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},{"type":"null"}]},"amountTtc":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},{"type":"null"}]},"currency":{"const":"EUR"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"status":{"enum":["observed","unknown"]},"taxRate":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]{0,2})(?:\\.[0-9]{1,2})?$","type":"string"},{"type":"null"}]},"validUntil":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"validityEvidence":{"anyOf":[{"$ref":"#/$defs/canonical/$defs/evidence"},{"type":"null"}]}},"required":["status","amountTtc","amountHt","currency","taxRate","validUntil","evidence","validityEvidence"],"type":"object"},"relation":{"additionalProperties":false,"allOf":[{"if":{"properties":{"qualification":{"const":"confirmed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}}}}}],"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"qualification":{"enum":["asserted","confirmed","unknown"]},"target":{"$ref":"#/$defs/canonical/$defs/target"}},"required":["target","qualification","evidence"],"type":"object"},"relationGroup":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/relation"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"source":{"additionalProperties":false,"allOf":[{"anyOf":[{"properties":{"url":{"$ref":"#/$defs/canonical/$defs/https"}}},{"properties":{"artifactPath":{"type":"string"}}},{"properties":{"kind":{"const":"catalogue_read"}}},{"properties":{"kind":{"const":"human_review"}}}]},{"if":{"properties":{"visibility":{"const":"public"}}},"then":{"allOf":[{"else":{"properties":{"url":{"$ref":"#/$defs/canonical/$defs/https"}}},"if":{"properties":{"kind":{"enum":["catalogue_read","human_review"]}}},"then":{"type":"object"}}],"properties":{"artifactPath":{"type":"null"}}}},{"if":{"properties":{"kind":{"const":"catalogue_read"}}},"then":{"properties":{"observedAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}}],"properties":{"artifactPath":{"anyOf":[{"pattern":"^(?!/)(?!.*\\.\\.)(?!.*\\\\)[A-Za-z0-9_./-]+$","type":"string"},{"type":"null"}]},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"kind":{"enum":["backoffice","public_page","manufacturer_document","audit_record","historical_capture","catalogue_read","human_review"]},"locator":{"minLength":1,"type":"string"},"observedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"observedOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-fA-F0-9]{64}$","type":"string"},{"type":"null"}]},"url":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]},"visibility":{"enum":["public","internal"]}},"required":["id","kind","url","artifactPath","locator","observedOn","observedAt","visibility","sha256"],"type":"object"},"specification":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"key":{"pattern":"^[a-z][a-z0-9_]*$","type":"string"},"label":{"minLength":1,"type":"string"},"sourceText":{"minLength":1,"type":"string"},"value":{"$ref":"#/$defs/canonical/$defs/measurement"}},"required":["key","label","value","sourceText","evidence"],"type":"object"},"statement":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"minLength":1,"type":"string"}},"required":["text","evidence"],"type":"object"},"stock":{"additionalProperties":false,"allOf":[{"if":{"properties":{"managed":{"enum":[false,null]}}},"then":{"properties":{"quantity":{"type":"null"}}}},{"if":{"properties":{"visibility":{"const":"public"}}},"then":{"properties":{"quantity":{"type":"null"},"rawQuantity":{"type":"null"}}}}],"properties":{"counted":{"type":"boolean"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"managed":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"quantity":{"anyOf":[{"type":"integer"},{"type":"null"}]},"rawQuantity":{"anyOf":[{"type":"integer"},{"type":"null"}]},"visibility":{"enum":["internal","public"]}},"required":["managed","quantity","rawQuantity","visibility","evidence"],"type":"object"},"target":{"additionalProperties":false,"anyOf":[{"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"}}},{"properties":{"reference":{"minLength":1,"type":"string"}}}],"properties":{"label":{"minLength":1,"type":"string"},"productId":{"anyOf":[{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["productId","reference","label"],"type":"object"}},"additionalProperties":false,"allOf":[{"if":{"properties":{"recordType":{"const":"source_snapshot"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"expiresAt":{"type":"null"},"policy":{"const":"snapshot_only"}}}}},"visibility":{"properties":{"publication":{"const":"not_approved"},"record":{"const":"internal"}}}}}},{"if":{"properties":{"verification":{"properties":{"status":{"const":"pending_business_review"}}}}},"then":{"properties":{"verification":{"properties":{"verifiedAt":{"type":"null"},"verifiedBy":{"type":"null"}}}}}},{"if":{"properties":{"verification":{"properties":{"status":{"const":"approved"}}}}},"then":{"properties":{"verification":{"properties":{"verifiedAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"verifiedBy":{"minLength":1,"type":"string"}}}}}},{"if":{"properties":{"visibility":{"properties":{"publication":{"const":"approved"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"verification":{"properties":{"status":{"const":"approved"}}}}}},{"if":{"properties":{"offer":{"properties":{"freshness":{"properties":{"policy":{"const":"bounded"}}}}}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"expiresAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}}}}}},{"if":{"properties":{"visibility":{"properties":{"record":{"const":"public"}}}}},"then":{"properties":{"visibility":{"properties":{"publication":{"enum":["approved","published_read_only"]}}}}}},{"else":{"allOf":[{"if":{"properties":{"visibility":{"properties":{"record":{"const":"preview"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"verification":{"properties":{"status":{"const":"pending_business_review"}}},"visibility":{"properties":{"publication":{"const":"not_approved"}}}}}},{"if":{"properties":{"recordType":{"const":"source_snapshot"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"freshness_status":{"const":"source_snapshot"}}}}}}}},{"if":{"properties":{"recordType":{"const":"canonical_product"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"freshness_status":{"enum":["not_certified","unknown","current_read"]}}}}}}}}],"properties":{"compatibilities":{"properties":{"items":{"items":{"allOf":[{"if":{"properties":{"status":{"enum":["verified","incompatible"]}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}},"verified_at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}},{"if":{"properties":{"status":{"const":"inferred"}}},"then":{"properties":{"evidence":{"properties":{"sourceRefs":{"minItems":1},"status":{"const":"inferred"}}},"verified_at":{"type":"null"}}}},{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"verified_at":{"type":"null"}}}}],"properties":{"evidence":{"properties":{"sourceRefs":{"minItems":1}}},"status":{"enum":["verified","inferred","incompatible","unknown"]}},"required":["verified_at"]}}}},"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","unknown","on_request","not_for_sale"]}}},"freshness":{"allOf":[{"if":{"properties":{"freshness_status":{"const":"source_snapshot"}}},"then":{"properties":{"policy":{"const":"snapshot_only"}}}},{"if":{"properties":{"freshness_status":{"const":"not_certified"}}},"then":{"properties":{"observed_at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"policy":{"const":"observation_only"}}}},{"if":{"properties":{"freshness_status":{"const":"unknown"}}},"then":{"properties":{"observed_at":{"type":"null"},"policy":{"const":"observation_only"},"verified_at":{"type":"null"}}}}],"properties":{"expiresAt":{"type":"null"},"policy":{"enum":["snapshot_only","observation_only"]}},"required":["source_updated_at","observed_at","verified_at","freshness_status"]}}}}},"if":{"properties":{"schemaVersion":{"const":"0.1.0"}}},"then":{"properties":{"compatibilities":{"properties":{"items":{"items":{"properties":{"status":{"enum":["asserted","confirmed","incompatible","unknown","conflicting"]},"verified_at":{"not":{}}}}}}},"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","on_order","preorder","unknown","conflicting"]}}},"freshness":{"properties":{"freshness_status":{"not":{}},"observed_at":{"not":{}},"policy":{"enum":["snapshot_only","bounded"]},"source_updated_at":{"not":{}},"verified_at":{"not":{}}}},"stock":{"properties":{"quantity":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}]}}}}},"provenance":{"properties":{"sources":{"items":{"properties":{"kind":{"enum":["backoffice","public_page","manufacturer_document","audit_record","historical_capture"]}}}}}},"visibility":{"properties":{"record":{"enum":["internal","public"]}}}}}},{"if":{"properties":{"schemaVersion":{"const":"0.1.0"}}},"then":{"properties":{"classification":{"properties":{"brandLabel":{"properties":{"name":{"type":"string"}}},"categoryPath":{"minItems":1}}},"names":{"properties":{"preferred":{"type":"string"}}},"references":{"properties":{"identifiers":{"minItems":1}}}}}},{"if":{"properties":{"visibility":{"properties":{"publication":{"const":"published_read_only"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"schemaVersion":{"enum":["0.1.1","0.1.2","0.1.3"]},"verification":{"properties":{"status":{"const":"pending_business_review"}}},"visibility":{"properties":{"record":{"const":"public"}}}}}},{"else":{"properties":{"offer":{"not":{"anyOf":[{"required":["sale_status"]},{"required":["order_mode"]},{"required":["order_reason"]},{"required":["review_reasons"]}]},"properties":{"availability":{"properties":{"status":{"not":{"const":"not_for_sale"}}}},"freshness":{"properties":{"freshness_status":{"not":{"const":"current_read"}}}},"stock":{"not":{"required":["counted"]}}}}}},"if":{"properties":{"schemaVersion":{"enum":["0.1.2","0.1.3"]}}},"then":{"properties":{"offer":{"properties":{"availability":{"properties":{"orderable":{"type":"boolean"}}},"freshness":{"properties":{"freshness_status":{"const":"current_read"},"observed_at":{"format":"date-time","type":"string"},"policy":{"const":"observation_only"}}},"stock":{"required":["counted"]}},"required":["sale_status","order_mode","order_reason","review_reasons"]},"recordType":{"const":"canonical_product"}}}},{"else":{"properties":{"compatibilities":{"properties":{"items":{"items":{"properties":{"decision":{"not":{}}}}}}},"documents":{"properties":{"items":{"items":{"properties":{"confirmedAppliance":{"not":{}},"decision":{"not":{}},"kind":{"enum":["manual","technical_sheet","certificate","unknown"]},"reviewStatus":{"not":{}}}}}}},"humanReview":{"not":{}},"provenance":{"properties":{"sources":{"items":{"properties":{"kind":{"not":{"const":"human_review"}}}}}}},"references":{"properties":{"identifiers":{"items":{"properties":{"decision":{"not":{}},"kind":{"enum":["manufacturer_reference_displayed","adaptable_reference","legacy_public_sku","gtin","other"]}}}}}}}},"if":{"properties":{"schemaVersion":{"const":"0.1.3"}}},"then":{"required":["humanReview"]}}],"description":"0.1.3 : qualifications humaines distinctes, liées à une source stable ; lecture commerciale courante inchangée.","properties":{"canonical_url":{"format":"uri","pattern":"^https://catalogue\\.nitech\\.fr/produits/[1-9][0-9]{0,9}$","type":"string"},"classification":{"additionalProperties":false,"properties":{"brandLabel":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"minLength":1}},"required":["name","evidence"],"type":"object"},"categoryPath":{"items":{"$ref":"#/$defs/canonical/$defs/category"},"minItems":0,"type":"array"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"manufacturer":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"name":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["name","evidence"],"type":"object"}},"required":["brandLabel","manufacturer","categoryPath","evidence"],"type":"object"},"compatibilities":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/compatibility"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"description":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/statement"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"documents":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/document"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"explodedViews":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/explodedView"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"humanReview":{"additionalProperties":false,"properties":{"productFingerprint":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reviewedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"reviewedFingerprint":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"status":{"enum":["pending","reviewed"]}},"required":["status","productFingerprint","reviewedFingerprint","reviewedAt"],"type":"object"},"identity":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"kind":{"enum":["spare_part","product","appliance"]},"legacyPid":{"minimum":1,"type":"integer"}},"required":["id","legacyPid","kind","evidence"],"type":"object"},"images":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/image"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"names":{"additionalProperties":false,"properties":{"aliases":{"items":{"$ref":"#/$defs/canonical/$defs/alias"},"minItems":0,"type":"array"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"preferred":{"anyOf":[{"type":"string"},{"type":"null"}],"minLength":1}},"required":["preferred","aliases","evidence"],"type":"object"},"offer":{"additionalProperties":false,"properties":{"availability":{"$ref":"#/$defs/canonical/$defs/availability"},"context":{"additionalProperties":false,"properties":{"channel":{"const":"retail"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"market":{"const":"FR"},"seller":{"const":"Nitech"},"shippingIncluded":{"const":false}},"required":["market","channel","seller","shippingIncluded","evidence"],"type":"object"},"delivery":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["text","evidence"],"type":"object"},"freshness":{"additionalProperties":false,"properties":{"asOf":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"expiresAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"freshness_status":{"description":"current_read : quantité courante observée ; aucun délai de fraîcheur inventé.","enum":["source_snapshot","not_certified","unknown","current_read"]},"observed_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Heure réelle de lecture courante de la base Nitech."},"policy":{"enum":["snapshot_only","bounded","observation_only"]},"source_updated_at":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Précision réelle de la source : date SQL conservée comme date, instant seulement si connu ; null si inconnu."},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Instant de vérification métier de cette offre, distinct de sa lecture ; null en l'absence de vérification."}},"required":["asOf","policy","expiresAt","evidence"],"type":"object"},"order_mode":{"enum":["online","contact_only","disabled"]},"order_reason":{"enum":["not_for_sale","sale_mode_undecided","stock_not_counted","untracked_orders_allowed","stock_empty","unavailable_orders_allowed","stock_available"]},"price":{"$ref":"#/$defs/canonical/$defs/price"},"review_reasons":{"items":{"enum":["stock_not_counted","sale_mode_undecided","on_sale_not_orderable"]},"maxItems":3,"type":"array","uniqueItems":true},"sale_status":{"enum":["on_sale","not_on_sale"]},"stock":{"$ref":"#/$defs/canonical/$defs/stock"}},"required":["context","price","stock","availability","delivery","freshness"],"type":"object"},"provenance":{"additionalProperties":false,"properties":{"issues":{"items":{"$ref":"#/$defs/canonical/$defs/issue"},"minItems":0,"type":"array"},"snapshotOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sourceModifiedOn":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"sources":{"items":{"$ref":"#/$defs/canonical/$defs/source"},"minItems":1,"type":"array"}},"required":["snapshotOn","sourceModifiedOn","sources","issues"],"type":"object"},"recordRevision":{"minimum":1,"type":"integer"},"recordType":{"enum":["source_snapshot","canonical_product"]},"references":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"identifiers":{"items":{"$ref":"#/$defs/canonical/$defs/identifier"},"minItems":0,"type":"array"},"merchantSku":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["merchantSku","identifiers","evidence"],"type":"object"},"relations":{"additionalProperties":false,"properties":{"accessories":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"alternatives":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"replacedBy":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"replaces":{"$ref":"#/$defs/canonical/$defs/relationGroup"}},"required":["replaces","replacedBy","alternatives","accessories"],"type":"object"},"schemaVersion":{"enum":["0.1.0","0.1.1","0.1.2","0.1.3"]},"specifications":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/specification"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"verification":{"additionalProperties":false,"description":"Revue des assertions qualifiées (evidence.status=validated) et de leur publication examinée ; ne certifie pas chaque observation commerciale ultérieure. Une validation ne se transfère pas à une valeur/provenance modifiée.","properties":{"status":{"enum":["pending_business_review","approved"]},"verifiedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"verifiedBy":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["status","verifiedAt","verifiedBy"],"type":"object"},"visibility":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"publication":{"description":"published_read_only décrit la diffusion publique autorisée sans approbation de revue métier ; approved conserve son sens historique de publication après revue.","enum":["not_approved","approved","published_read_only"]},"record":{"enum":["internal","public","preview"]}},"required":["record","publication","evidence"],"type":"object"}},"required":["schemaVersion","recordRevision","recordType","identity","references","names","classification","description","specifications","compatibilities","relations","offer","images","documents","explodedViews","provenance","verification","visibility"],"title":"Nitech — produit canonique v0.1","type":"object"}},"$schema":"https://json-schema.org/draft/2020-12/schema","description":"Generated by bin/build-mcp-schemas.py; authoritative product definitions remain in nitech-product-v0.1.schema.json.","oneOf":[{"additionalProperties":false,"allOf":[{"properties":{"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","unknown","on_request","not_for_sale"]}}},"freshness":{"properties":{"freshness_status":{"enum":["not_certified","current_read"]},"observed_at":{"format":"date-time","type":"string"},"policy":{"const":"observation_only"}},"required":["source_updated_at","observed_at","verified_at","freshness_status"]},"stock":{"properties":{"quantity":{"type":"null"},"rawQuantity":{"type":"null"}}}}},"visibility":{"anyOf":[{"properties":{"publication":{"const":"not_approved"},"record":{"const":"preview"}}},{"properties":{"publication":{"const":"published_read_only"},"record":{"const":"public"}}}]}}},{"else":{"properties":{"offer":{"not":{"anyOf":[{"required":["sale_status"]},{"required":["order_mode"]},{"required":["order_reason"]},{"required":["review_reasons"]}]},"properties":{"availability":{"properties":{"status":{"not":{"const":"not_for_sale"}}}},"freshness":{"properties":{"freshness_status":{"not":{"const":"current_read"}}}},"stock":{"not":{"required":["counted"]}}}}}},"if":{"properties":{"schemaVersion":{"enum":["0.1.2","0.1.3"]}}},"then":{"properties":{"offer":{"properties":{"availability":{"properties":{"orderable":{"type":"boolean"}}},"freshness":{"properties":{"freshness_status":{"const":"current_read"},"observed_at":{"format":"date-time","type":"string"},"policy":{"const":"observation_only"}}},"stock":{"required":["counted"]}},"required":["sale_status","order_mode","order_reason","review_reasons"]},"recordType":{"const":"canonical_product"}}}}],"properties":{"identity":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"kind":{"enum":["spare_part","product","appliance"]},"legacyPid":{"minimum":1,"type":"integer"}},"required":["id","legacyPid","kind","evidence"],"type":"object"},"offer":{"additionalProperties":false,"properties":{"availability":{"$ref":"#/$defs/canonical/$defs/availability"},"context":{"additionalProperties":false,"properties":{"channel":{"const":"retail"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"market":{"const":"FR"},"seller":{"const":"Nitech"},"shippingIncluded":{"const":false}},"required":["market","channel","seller","shippingIncluded","evidence"],"type":"object"},"delivery":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["text","evidence"],"type":"object"},"freshness":{"additionalProperties":false,"properties":{"asOf":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"expiresAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"freshness_status":{"description":"current_read : quantité courante observée ; aucun délai de fraîcheur inventé.","enum":["source_snapshot","not_certified","unknown","current_read"]},"observed_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Heure réelle de lecture courante de la base Nitech."},"policy":{"enum":["snapshot_only","bounded","observation_only"]},"source_updated_at":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Précision réelle de la source : date SQL conservée comme date, instant seulement si connu ; null si inconnu."},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Instant de vérification métier de cette offre, distinct de sa lecture ; null en l'absence de vérification."}},"required":["asOf","policy","expiresAt","evidence"],"type":"object"},"order_mode":{"enum":["online","contact_only","disabled"]},"order_reason":{"enum":["not_for_sale","sale_mode_undecided","stock_not_counted","untracked_orders_allowed","stock_empty","unavailable_orders_allowed","stock_available"]},"price":{"$ref":"#/$defs/canonical/$defs/price"},"review_reasons":{"items":{"enum":["stock_not_counted","sale_mode_undecided","on_sale_not_orderable"]},"maxItems":3,"type":"array","uniqueItems":true},"sale_status":{"enum":["on_sale","not_on_sale"]},"stock":{"$ref":"#/$defs/canonical/$defs/stock"}},"required":["context","price","stock","availability","delivery","freshness"],"type":"object"},"provenance":{"additionalProperties":false,"properties":{"issues":{"items":{"$ref":"#/$defs/canonical/$defs/issue"},"minItems":0,"type":"array"},"snapshotOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sourceModifiedOn":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"sources":{"items":{"$ref":"#/$defs/canonical/$defs/source"},"minItems":1,"type":"array"}},"required":["snapshotOn","sourceModifiedOn","sources","issues"],"type":"object"},"references":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"identifiers":{"items":{"$ref":"#/$defs/canonical/$defs/identifier"},"minItems":0,"type":"array"},"merchantSku":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["merchantSku","identifiers","evidence"],"type":"object"},"schemaVersion":{"enum":["0.1.1","0.1.2","0.1.3"]},"verification":{"additionalProperties":false,"description":"Revue des assertions qualifiées (evidence.status=validated) et de leur publication examinée ; ne certifie pas chaque observation commerciale ultérieure. Une validation ne se transfère pas à une valeur/provenance modifiée.","properties":{"status":{"enum":["pending_business_review","approved"]},"verifiedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"verifiedBy":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["status","verifiedAt","verifiedBy"],"type":"object"},"visibility":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"publication":{"description":"published_read_only décrit la diffusion publique autorisée sans approbation de revue métier ; approved conserve son sens historique de publication après revue.","enum":["not_approved","approved","published_read_only"]},"record":{"enum":["internal","public","preview"]}},"required":["record","publication","evidence"],"type":"object"}},"required":["schemaVersion","identity","references","offer","provenance","verification","visibility"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"pattern":"^[A-Z_]{3,64}$","type":"string"},"message":{"maxLength":500,"minLength":1,"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"type":"object"}},"required":["error"],"type":"object"}],"type":"object"}after
{"$defs":{"canonical":{"$defs":{"alias":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"kind":{"enum":["commercial_name","spelling_variant"]},"value":{"minLength":1,"type":"string"}},"required":["value","kind","evidence"],"type":"object"},"appliance":{"additionalProperties":false,"properties":{"brand":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"model":{"minLength":1,"type":"string"},"productId":{"anyOf":[{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["productId","brand","model","reference"],"type":"object"},"availability":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"observations":{"items":{"$ref":"#/$defs/canonical/$defs/availabilityObservation"},"minItems":0,"type":"array"},"orderable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"status":{"enum":["in_stock","out_of_stock","on_order","preorder","unknown","conflicting","on_request","not_for_sale"]}},"required":["status","orderable","observations","evidence"],"type":"object"},"availabilityObservation":{"additionalProperties":false,"properties":{"channel":{"enum":["human","jsonld","backoffice"]},"rawValue":{"minLength":1,"type":"string"},"reportedStatus":{"enum":["in_stock","out_of_stock","on_order","preorder","for_sale","unknown"]},"sourceRef":{"minLength":1,"type":"string"}},"required":["sourceRef","channel","reportedStatus","rawValue"],"type":"object"},"category":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"legacyId":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}]},"name":{"minLength":1,"type":"string"}},"required":["legacyId","name","evidence"],"type":"object"},"compatibility":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"enum":["confirmed","incompatible"]}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}}}}},{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}}}}}],"properties":{"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"scope":{"minLength":1,"type":"string"},"status":{"enum":["asserted","confirmed","incompatible","unknown","conflicting","verified","inferred"]},"target":{"$ref":"#/$defs/canonical/$defs/appliance"},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]}},"required":["target","status","scope","evidence"],"type":"object"},"document":{"additionalProperties":false,"properties":{"confirmedAppliance":{"maxLength":150,"type":"string"},"contentInspection":{"enum":["not_inspected","partially_inspected","inspected"]},"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"kind":{"enum":["manual","technical_sheet","certificate","unknown","user_manual","installation_manual","parts_diagram","commercial","other","irrelevant"]},"mediaType":{"anyOf":[{"enum":["application/pdf","text/html","image/jpeg","image/png"]},{"type":"null"}]},"reviewStatus":{"enum":["relevant","not_relevant","unreadable","wrong_appliance"]},"scope":{"additionalProperties":false,"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"type":{"enum":["product","related_appliance"]}},"required":["type","productId"],"type":"object"},"title":{"minLength":1,"type":"string"},"url":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]}},"required":["id","kind","title","url","mediaType","scope","contentInspection","evidence"],"type":"object"},"evidence":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"enum":["observed","inferred","validated"]}}},"then":{"properties":{"sourceRefs":{"minItems":1}}}},{"if":{"properties":{"status":{"const":"unconfirmed"}}},"then":{"properties":{"confidence":{"const":"unknown"}}}}],"properties":{"confidence":{"enum":["high","medium","low","unknown"]},"note":{"minLength":1,"type":"string"},"sourceRefs":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true},"status":{"enum":["observed","inferred","unconfirmed","validated"]}},"required":["status","confidence","sourceRefs","note"],"type":"object"},"explodedView":{"additionalProperties":false,"properties":{"appliance":{"$ref":"#/$defs/canonical/$defs/appliance"},"documentIds":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"occurrences":{"items":{"additionalProperties":false,"properties":{"marker":{"maxLength":64,"minLength":1,"type":"string"},"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"}},"required":["productId","marker"],"type":"object"},"minItems":1,"type":"array"},"planUrl":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]},"version":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","appliance","planUrl","version","documentIds","occurrences","evidence"],"type":"object"},"https":{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},"humanDecision":{"additionalProperties":false,"properties":{"at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"id":{"minimum":1,"type":"integer"},"outcome":{"enum":["relevant","not_relevant","unreadable","wrong_appliance","confirmed","rejected","qualified"]},"sourceFingerprint":{"pattern":"^[a-f0-9]{64}$","type":"string"},"sourceRef":{"pattern":"^human-decision-[1-9][0-9]*$","type":"string"}},"required":["id","outcome","at","sourceFingerprint","sourceRef"],"type":"object"},"identifier":{"additionalProperties":false,"properties":{"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"kind":{"enum":["manufacturer_reference_displayed","adaptable_reference","legacy_public_sku","gtin","other","nitech_reference","former_reference","supplier_reference","unknown"]},"value":{"minLength":1,"type":"string"}},"required":["kind","value","evidence"],"type":"object"},"image":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"mediaType":{"anyOf":[{"enum":["image/jpeg","image/png","image/webp","image/avif"]},{"type":"null"}]},"role":{"enum":["primary","secondary"]},"url":{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"}},"required":["url","role","mediaType","evidence"],"type":"object"},"issue":{"additionalProperties":false,"properties":{"code":{"pattern":"^[a-z][a-z0-9_]*$","type":"string"},"message":{"minLength":1,"type":"string"},"path":{"pattern":"^/","type":"string"},"severity":{"enum":["info","review_required","publication_blocker"]},"sourceRefs":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true}},"required":["code","path","severity","message","sourceRefs"],"type":"object"},"measurement":{"oneOf":[{"additionalProperties":false,"properties":{"amount":{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"},"kind":{"const":"number"},"qualifier":{"enum":["exact","approximate"]},"unit":{"minLength":1,"type":"string"}},"required":["kind","amount","unit","qualifier"],"type":"object"},{"additionalProperties":false,"properties":{"interpretation":{"enum":["literal","ambiguous"]},"kind":{"const":"text"},"text":{"minLength":1,"type":"string"},"unit":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","text","unit","interpretation"],"type":"object"}]},"price":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"amountHt":{"type":"null"},"amountTtc":{"type":"null"},"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"taxRate":{"type":"null"},"validUntil":{"type":"null"}}}},{"if":{"properties":{"status":{"const":"observed"}}},"then":{"properties":{"amountTtc":{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},"evidence":{"properties":{"status":{"enum":["observed","validated"]}}}}}},{"else":{"properties":{"validityEvidence":{"type":"null"}}},"if":{"properties":{"validUntil":{"type":"string"}}},"then":{"properties":{"validityEvidence":{"$ref":"#/$defs/canonical/$defs/evidence"}}}}],"properties":{"amountHt":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},{"type":"null"}]},"amountTtc":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},{"type":"null"}]},"currency":{"const":"EUR"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"status":{"enum":["observed","unknown"]},"taxRate":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]{0,2})(?:\\.[0-9]{1,2})?$","type":"string"},{"type":"null"}]},"validUntil":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"validityEvidence":{"anyOf":[{"$ref":"#/$defs/canonical/$defs/evidence"},{"type":"null"}]}},"required":["status","amountTtc","amountHt","currency","taxRate","validUntil","evidence","validityEvidence"],"type":"object"},"relation":{"additionalProperties":false,"allOf":[{"if":{"properties":{"qualification":{"const":"confirmed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}}}}}],"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"qualification":{"enum":["asserted","confirmed","unknown"]},"target":{"$ref":"#/$defs/canonical/$defs/target"}},"required":["target","qualification","evidence"],"type":"object"},"relationGroup":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/relation"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"source":{"additionalProperties":false,"allOf":[{"anyOf":[{"properties":{"url":{"$ref":"#/$defs/canonical/$defs/https"}}},{"properties":{"artifactPath":{"type":"string"}}},{"properties":{"kind":{"const":"catalogue_read"}}},{"properties":{"kind":{"const":"human_review"}}}]},{"if":{"properties":{"visibility":{"const":"public"}}},"then":{"allOf":[{"else":{"properties":{"url":{"$ref":"#/$defs/canonical/$defs/https"}}},"if":{"properties":{"kind":{"enum":["catalogue_read","human_review"]}}},"then":{"type":"object"}}],"properties":{"artifactPath":{"type":"null"}}}},{"if":{"properties":{"kind":{"const":"catalogue_read"}}},"then":{"properties":{"observedAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}}],"properties":{"artifactPath":{"anyOf":[{"pattern":"^(?!/)(?!.*\\.\\.)(?!.*\\\\)[A-Za-z0-9_./-]+$","type":"string"},{"type":"null"}]},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"kind":{"enum":["backoffice","public_page","manufacturer_document","audit_record","historical_capture","catalogue_read","human_review"]},"locator":{"minLength":1,"type":"string"},"observedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"observedOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-fA-F0-9]{64}$","type":"string"},{"type":"null"}]},"url":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]},"visibility":{"enum":["public","internal"]}},"required":["id","kind","url","artifactPath","locator","observedOn","observedAt","visibility","sha256"],"type":"object"},"specification":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"key":{"pattern":"^[a-z][a-z0-9_]*$","type":"string"},"label":{"minLength":1,"type":"string"},"sourceText":{"minLength":1,"type":"string"},"value":{"$ref":"#/$defs/canonical/$defs/measurement"}},"required":["key","label","value","sourceText","evidence"],"type":"object"},"statement":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"minLength":1,"type":"string"}},"required":["text","evidence"],"type":"object"},"stock":{"additionalProperties":false,"allOf":[{"if":{"properties":{"managed":{"enum":[false,null]}}},"then":{"properties":{"quantity":{"type":"null"}}}},{"if":{"properties":{"visibility":{"const":"public"}}},"then":{"properties":{"quantity":{"type":"null"},"rawQuantity":{"type":"null"}}}}],"properties":{"counted":{"type":"boolean"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"managed":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"quantity":{"anyOf":[{"type":"integer"},{"type":"null"}]},"rawQuantity":{"anyOf":[{"type":"integer"},{"type":"null"}]},"visibility":{"enum":["internal","public"]}},"required":["managed","quantity","rawQuantity","visibility","evidence"],"type":"object"},"target":{"additionalProperties":false,"anyOf":[{"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"}}},{"properties":{"reference":{"minLength":1,"type":"string"}}}],"properties":{"label":{"minLength":1,"type":"string"},"productId":{"anyOf":[{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["productId","reference","label"],"type":"object"}},"additionalProperties":false,"allOf":[{"if":{"properties":{"recordType":{"const":"source_snapshot"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"expiresAt":{"type":"null"},"policy":{"const":"snapshot_only"}}}}},"visibility":{"properties":{"publication":{"const":"not_approved"},"record":{"const":"internal"}}}}}},{},{},{"if":{"properties":{"visibility":{"properties":{"publication":{"const":"approved"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"}}}},{"if":{"properties":{"offer":{"properties":{"freshness":{"properties":{"policy":{"const":"bounded"}}}}}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"expiresAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}}}}}},{"if":{"properties":{"visibility":{"properties":{"record":{"const":"public"}}}}},"then":{"properties":{"visibility":{"properties":{"publication":{"enum":["approved","published_read_only"]}}}}}},{"else":{"allOf":[{"if":{"properties":{"visibility":{"properties":{"record":{"const":"preview"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"visibility":{"properties":{"publication":{"const":"not_approved"}}}}}},{"if":{"properties":{"recordType":{"const":"source_snapshot"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"freshness_status":{"const":"source_snapshot"}}}}}}}},{"if":{"properties":{"recordType":{"const":"canonical_product"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"freshness_status":{"enum":["not_certified","unknown","current_read"]}}}}}}}}],"properties":{"compatibilities":{"properties":{"items":{"items":{"allOf":[{"if":{"properties":{"status":{"enum":["verified","incompatible"]}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}},"verified_at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}},{"if":{"properties":{"status":{"const":"inferred"}}},"then":{"properties":{"evidence":{"properties":{"sourceRefs":{"minItems":1},"status":{"const":"inferred"}}},"verified_at":{"type":"null"}}}},{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"verified_at":{"type":"null"}}}}],"properties":{"evidence":{"properties":{"sourceRefs":{"minItems":1}}},"status":{"enum":["verified","inferred","incompatible","unknown"]}},"required":["verified_at"]}}}},"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","unknown","on_request","not_for_sale"]}}},"freshness":{"allOf":[{"if":{"properties":{"freshness_status":{"const":"source_snapshot"}}},"then":{"properties":{"policy":{"const":"snapshot_only"}}}},{"if":{"properties":{"freshness_status":{"const":"not_certified"}}},"then":{"properties":{"observed_at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"policy":{"const":"observation_only"}}}},{"if":{"properties":{"freshness_status":{"const":"unknown"}}},"then":{"properties":{"observed_at":{"type":"null"},"policy":{"const":"observation_only"},"verified_at":{"type":"null"}}}}],"properties":{"expiresAt":{"type":"null"},"policy":{"enum":["snapshot_only","observation_only"]}},"required":["source_updated_at","observed_at","verified_at","freshness_status"]}}}}},"if":{"properties":{"schemaVersion":{"const":"0.1.0"}}},"then":{"properties":{"compatibilities":{"properties":{"items":{"items":{"properties":{"status":{"enum":["asserted","confirmed","incompatible","unknown","conflicting"]},"verified_at":{"not":{}}}}}}},"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","on_order","preorder","unknown","conflicting"]}}},"freshness":{"properties":{"freshness_status":{"not":{}},"observed_at":{"not":{}},"policy":{"enum":["snapshot_only","bounded"]},"source_updated_at":{"not":{}},"verified_at":{"not":{}}}},"stock":{"properties":{"quantity":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}]}}}}},"provenance":{"properties":{"sources":{"items":{"properties":{"kind":{"enum":["backoffice","public_page","manufacturer_document","audit_record","historical_capture"]}}}}}},"visibility":{"properties":{"record":{"enum":["internal","public"]}}}}}},{"if":{"properties":{"schemaVersion":{"const":"0.1.0"}}},"then":{"properties":{"classification":{"properties":{"brandLabel":{"properties":{"name":{"type":"string"}}},"categoryPath":{"minItems":1}}},"names":{"properties":{"preferred":{"type":"string"}}},"references":{"properties":{"identifiers":{"minItems":1}}}}}},{"if":{"properties":{"visibility":{"properties":{"publication":{"const":"published_read_only"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"schemaVersion":{"enum":["0.1.1","0.1.2","0.1.3"]},"visibility":{"properties":{"record":{"const":"public"}}}}}},{"else":{"properties":{"offer":{"not":{"anyOf":[{"required":["sale_status"]},{"required":["order_mode"]},{"required":["order_reason"]},{"required":["review_reasons"]}]},"properties":{"availability":{"properties":{"status":{"not":{"const":"not_for_sale"}}}},"freshness":{"properties":{"freshness_status":{"not":{"const":"current_read"}}}},"stock":{"not":{"required":["counted"]}}}}}},"if":{"properties":{"schemaVersion":{"enum":["0.1.2","0.1.3"]}}},"then":{"properties":{"offer":{"properties":{"availability":{"properties":{"orderable":{"type":"boolean"}}},"freshness":{"properties":{"freshness_status":{"const":"current_read"},"observed_at":{"format":"date-time","type":"string"},"policy":{"const":"observation_only"}}},"stock":{"required":["counted"]}},"required":["sale_status","order_mode","order_reason","review_reasons"]},"recordType":{"const":"canonical_product"}}}},{"else":{"properties":{"compatibilities":{"properties":{"items":{"items":{"properties":{"decision":{"not":{}}}}}}},"documents":{"properties":{"items":{"items":{"properties":{"confirmedAppliance":{"not":{}},"decision":{"not":{}},"kind":{"enum":["manual","technical_sheet","certificate","unknown"]},"reviewStatus":{"not":{}}}}}}},"humanReview":{"not":{}},"provenance":{"properties":{"sources":{"items":{"properties":{"kind":{"not":{"const":"human_review"}}}}}}},"references":{"properties":{"identifiers":{"items":{"properties":{"decision":{"not":{}},"kind":{"enum":["manufacturer_reference_displayed","adaptable_reference","legacy_public_sku","gtin","other"]}}}}}}}},"if":{"properties":{"schemaVersion":{"const":"0.1.3"}}},"then":{"required":["humanReview"]}}],"description":"0.1.3 : qualifications humaines distinctes, liées à une source stable ; lecture commerciale courante inchangée.","properties":{"canonical_url":{"format":"uri","pattern":"^https://catalogue\\.nitech\\.fr/produits/[1-9][0-9]{0,9}$","type":"string"},"classification":{"additionalProperties":false,"properties":{"brandLabel":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"minLength":1}},"required":["name","evidence"],"type":"object"},"categoryPath":{"items":{"$ref":"#/$defs/canonical/$defs/category"},"minItems":0,"type":"array"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"manufacturer":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"name":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["name","evidence"],"type":"object"}},"required":["brandLabel","manufacturer","categoryPath","evidence"],"type":"object"},"compatibilities":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/compatibility"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"description":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/statement"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"documents":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/document"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"explodedViews":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/explodedView"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"humanReview":{"additionalProperties":false,"properties":{"productFingerprint":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reviewedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"reviewedFingerprint":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"status":{"enum":["pending","reviewed"]}},"required":["status","productFingerprint","reviewedFingerprint","reviewedAt"],"type":"object"},"identity":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"kind":{"enum":["spare_part","product","appliance"]},"legacyPid":{"minimum":1,"type":"integer"}},"required":["id","legacyPid","kind","evidence"],"type":"object"},"images":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/image"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"names":{"additionalProperties":false,"properties":{"aliases":{"items":{"$ref":"#/$defs/canonical/$defs/alias"},"minItems":0,"type":"array"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"preferred":{"anyOf":[{"type":"string"},{"type":"null"}],"minLength":1}},"required":["preferred","aliases","evidence"],"type":"object"},"offer":{"additionalProperties":false,"properties":{"availability":{"$ref":"#/$defs/canonical/$defs/availability"},"context":{"additionalProperties":false,"properties":{"channel":{"const":"retail"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"market":{"const":"FR"},"seller":{"const":"Nitech"},"shippingIncluded":{"const":false}},"required":["market","channel","seller","shippingIncluded","evidence"],"type":"object"},"delivery":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["text","evidence"],"type":"object"},"freshness":{"additionalProperties":false,"properties":{"asOf":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"expiresAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"freshness_status":{"description":"current_read : quantité courante observée ; aucun délai de fraîcheur inventé.","enum":["source_snapshot","not_certified","unknown","current_read"]},"observed_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Heure réelle de lecture courante de la base Nitech."},"policy":{"enum":["snapshot_only","bounded","observation_only"]},"source_updated_at":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Précision réelle de la source : date SQL conservée comme date, instant seulement si connu ; null si inconnu."},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Instant de vérification métier de cette offre, distinct de sa lecture ; null en l'absence de vérification."}},"required":["asOf","policy","expiresAt","evidence"],"type":"object"},"order_mode":{"enum":["online","contact_only","disabled"]},"order_reason":{"enum":["not_for_sale","sale_mode_undecided","stock_not_counted","untracked_orders_allowed","stock_empty","unavailable_orders_allowed","stock_available"]},"price":{"$ref":"#/$defs/canonical/$defs/price"},"review_reasons":{"items":{"enum":["stock_not_counted","sale_mode_undecided","on_sale_not_orderable"]},"maxItems":3,"type":"array","uniqueItems":true},"sale_status":{"enum":["on_sale","not_on_sale"]},"stock":{"$ref":"#/$defs/canonical/$defs/stock"}},"required":["context","price","stock","availability","delivery","freshness"],"type":"object"},"provenance":{"additionalProperties":false,"properties":{"issues":{"items":{"$ref":"#/$defs/canonical/$defs/issue"},"minItems":0,"type":"array"},"snapshotOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sourceModifiedOn":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"sources":{"items":{"$ref":"#/$defs/canonical/$defs/source"},"minItems":1,"type":"array"}},"required":["snapshotOn","sourceModifiedOn","sources","issues"],"type":"object"},"recordRevision":{"minimum":1,"type":"integer"},"recordType":{"enum":["source_snapshot","canonical_product"]},"references":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"identifiers":{"items":{"$ref":"#/$defs/canonical/$defs/identifier"},"minItems":0,"type":"array"},"merchantSku":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["merchantSku","identifiers","evidence"],"type":"object"},"relations":{"additionalProperties":false,"properties":{"accessories":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"alternatives":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"replacedBy":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"replaces":{"$ref":"#/$defs/canonical/$defs/relationGroup"}},"required":["replaces","replacedBy","alternatives","accessories"],"type":"object"},"schemaVersion":{"enum":["0.1.0","0.1.1","0.1.2","0.1.3"]},"specifications":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/specification"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"visibility":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"publication":{"description":"published_read_only désigne la diffusion publique en lecture seule des données du catalogue.","enum":["not_approved","approved","published_read_only"]},"record":{"enum":["internal","public","preview"]}},"required":["record","publication","evidence"],"type":"object"}},"required":["schemaVersion","recordRevision","recordType","identity","references","names","classification","description","specifications","compatibilities","relations","offer","images","documents","explodedViews","provenance","visibility"],"title":"Nitech — produit canonique v0.1","type":"object"}},"$schema":"https://json-schema.org/draft/2020-12/schema","description":"Generated by bin/build-mcp-schemas.py; authoritative product definitions remain in nitech-product-v0.1.schema.json.","oneOf":[{"additionalProperties":false,"allOf":[{"properties":{"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","unknown","on_request","not_for_sale"]}}},"freshness":{"properties":{"freshness_status":{"enum":["not_certified","current_read"]},"observed_at":{"format":"date-time","type":"string"},"policy":{"const":"observation_only"}},"required":["source_updated_at","observed_at","verified_at","freshness_status"]},"stock":{"properties":{"quantity":{"type":"null"},"rawQuantity":{"type":"null"}}}}},"visibility":{"anyOf":[{"properties":{"publication":{"const":"not_approved"},"record":{"const":"preview"}}},{"properties":{"publication":{"const":"published_read_only"},"record":{"const":"public"}}}]}}},{"else":{"properties":{"offer":{"not":{"anyOf":[{"required":["sale_status"]},{"required":["order_mode"]},{"required":["order_reason"]},{"required":["review_reasons"]}]},"properties":{"availability":{"properties":{"status":{"not":{"const":"not_for_sale"}}}},"freshness":{"properties":{"freshness_status":{"not":{"const":"current_read"}}}},"stock":{"not":{"required":["counted"]}}}}}},"if":{"properties":{"schemaVersion":{"enum":["0.1.2","0.1.3"]}}},"then":{"properties":{"offer":{"properties":{"availability":{"properties":{"orderable":{"type":"boolean"}}},"freshness":{"properties":{"freshness_status":{"const":"current_read"},"observed_at":{"format":"date-time","type":"string"},"policy":{"const":"observation_only"}}},"stock":{"required":["counted"]}},"required":["sale_status","order_mode","order_reason","review_reasons"]},"recordType":{"const":"canonical_product"}}}}],"properties":{"identity":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"kind":{"enum":["spare_part","product","appliance"]},"legacyPid":{"minimum":1,"type":"integer"}},"required":["id","legacyPid","kind","evidence"],"type":"object"},"offer":{"additionalProperties":false,"properties":{"availability":{"$ref":"#/$defs/canonical/$defs/availability"},"context":{"additionalProperties":false,"properties":{"channel":{"const":"retail"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"market":{"const":"FR"},"seller":{"const":"Nitech"},"shippingIncluded":{"const":false}},"required":["market","channel","seller","shippingIncluded","evidence"],"type":"object"},"delivery":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["text","evidence"],"type":"object"},"freshness":{"additionalProperties":false,"properties":{"asOf":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"expiresAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"freshness_status":{"description":"current_read : quantité courante observée ; aucun délai de fraîcheur inventé.","enum":["source_snapshot","not_certified","unknown","current_read"]},"observed_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Heure réelle de lecture courante de la base Nitech."},"policy":{"enum":["snapshot_only","bounded","observation_only"]},"source_updated_at":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Précision réelle de la source : date SQL conservée comme date, instant seulement si connu ; null si inconnu."},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Instant de vérification métier de cette offre, distinct de sa lecture ; null en l'absence de vérification."}},"required":["asOf","policy","expiresAt","evidence"],"type":"object"},"order_mode":{"enum":["online","contact_only","disabled"]},"order_reason":{"enum":["not_for_sale","sale_mode_undecided","stock_not_counted","untracked_orders_allowed","stock_empty","unavailable_orders_allowed","stock_available"]},"price":{"$ref":"#/$defs/canonical/$defs/price"},"review_reasons":{"items":{"enum":["stock_not_counted","sale_mode_undecided","on_sale_not_orderable"]},"maxItems":3,"type":"array","uniqueItems":true},"sale_status":{"enum":["on_sale","not_on_sale"]},"stock":{"$ref":"#/$defs/canonical/$defs/stock"}},"required":["context","price","stock","availability","delivery","freshness"],"type":"object"},"provenance":{"additionalProperties":false,"properties":{"issues":{"items":{"$ref":"#/$defs/canonical/$defs/issue"},"minItems":0,"type":"array"},"snapshotOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sourceModifiedOn":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"sources":{"items":{"$ref":"#/$defs/canonical/$defs/source"},"minItems":1,"type":"array"}},"required":["snapshotOn","sourceModifiedOn","sources","issues"],"type":"object"},"references":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"identifiers":{"items":{"$ref":"#/$defs/canonical/$defs/identifier"},"minItems":0,"type":"array"},"merchantSku":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["merchantSku","identifiers","evidence"],"type":"object"},"schemaVersion":{"enum":["0.1.1","0.1.2","0.1.3"]},"visibility":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"publication":{"description":"published_read_only désigne la diffusion publique en lecture seule des données du catalogue.","enum":["not_approved","approved","published_read_only"]},"record":{"enum":["internal","public","preview"]}},"required":["record","publication","evidence"],"type":"object"}},"required":["schemaVersion","identity","references","offer","provenance","visibility"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"pattern":"^[A-Z_]{3,64}$","type":"string"},"message":{"maxLength":500,"minLength":1,"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"type":"object"}},"required":["error"],"type":"object"}],"type":"object"}after
{"$defs":{"canonical":{"$defs":{"alias":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"kind":{"enum":["commercial_name","spelling_variant"]},"value":{"minLength":1,"type":"string"}},"required":["value","kind","evidence"],"type":"object"},"appliance":{"additionalProperties":false,"properties":{"brand":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"model":{"minLength":1,"type":"string"},"productId":{"anyOf":[{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["productId","brand","model","reference"],"type":"object"},"availability":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"observations":{"items":{"$ref":"#/$defs/canonical/$defs/availabilityObservation"},"minItems":0,"type":"array"},"orderable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"status":{"enum":["in_stock","out_of_stock","on_order","preorder","unknown","conflicting","on_request","not_for_sale"]}},"required":["status","orderable","observations","evidence"],"type":"object"},"availabilityObservation":{"additionalProperties":false,"properties":{"channel":{"enum":["human","jsonld","backoffice"]},"rawValue":{"minLength":1,"type":"string"},"reportedStatus":{"enum":["in_stock","out_of_stock","on_order","preorder","for_sale","unknown"]},"sourceRef":{"minLength":1,"type":"string"}},"required":["sourceRef","channel","reportedStatus","rawValue"],"type":"object"},"category":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"legacyId":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}]},"name":{"minLength":1,"type":"string"}},"required":["legacyId","name","evidence"],"type":"object"},"compatibility":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"enum":["confirmed","incompatible"]}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}}}}},{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}}}}}],"properties":{"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"scope":{"minLength":1,"type":"string"},"status":{"enum":["asserted","confirmed","incompatible","unknown","conflicting","verified","inferred"]},"target":{"$ref":"#/$defs/canonical/$defs/appliance"},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]}},"required":["target","status","scope","evidence"],"type":"object"},"document":{"additionalProperties":false,"properties":{"confirmedAppliance":{"maxLength":150,"type":"string"},"contentInspection":{"enum":["not_inspected","partially_inspected","inspected"]},"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"kind":{"enum":["manual","technical_sheet","certificate","unknown","user_manual","installation_manual","parts_diagram","commercial","other","irrelevant"]},"mediaType":{"anyOf":[{"enum":["application/pdf","text/html","image/jpeg","image/png"]},{"type":"null"}]},"reviewStatus":{"enum":["relevant","not_relevant","unreadable","wrong_appliance"]},"scope":{"additionalProperties":false,"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"type":{"enum":["product","related_appliance"]}},"required":["type","productId"],"type":"object"},"title":{"minLength":1,"type":"string"},"url":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]}},"required":["id","kind","title","url","mediaType","scope","contentInspection","evidence"],"type":"object"},"evidence":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"enum":["observed","inferred","validated"]}}},"then":{"properties":{"sourceRefs":{"minItems":1}}}},{"if":{"properties":{"status":{"const":"unconfirmed"}}},"then":{"properties":{"confidence":{"const":"unknown"}}}}],"properties":{"confidence":{"enum":["high","medium","low","unknown"]},"note":{"minLength":1,"type":"string"},"sourceRefs":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true},"status":{"enum":["observed","inferred","unconfirmed","validated"]}},"required":["status","confidence","sourceRefs","note"],"type":"object"},"explodedView":{"additionalProperties":false,"properties":{"appliance":{"$ref":"#/$defs/canonical/$defs/appliance"},"documentIds":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"occurrences":{"items":{"additionalProperties":false,"properties":{"marker":{"maxLength":64,"minLength":1,"type":"string"},"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"}},"required":["productId","marker"],"type":"object"},"minItems":1,"type":"array"},"planUrl":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]},"version":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","appliance","planUrl","version","documentIds","occurrences","evidence"],"type":"object"},"https":{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},"humanDecision":{"additionalProperties":false,"properties":{"at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"id":{"minimum":1,"type":"integer"},"outcome":{"enum":["relevant","not_relevant","unreadable","wrong_appliance","confirmed","rejected","qualified"]},"sourceFingerprint":{"pattern":"^[a-f0-9]{64}$","type":"string"},"sourceRef":{"pattern":"^human-decision-[1-9][0-9]*$","type":"string"}},"required":["id","outcome","at","sourceFingerprint","sourceRef"],"type":"object"},"identifier":{"additionalProperties":false,"properties":{"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"kind":{"enum":["manufacturer_reference_displayed","adaptable_reference","legacy_public_sku","gtin","other","nitech_reference","former_reference","supplier_reference","unknown"]},"value":{"minLength":1,"type":"string"}},"required":["kind","value","evidence"],"type":"object"},"image":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"mediaType":{"anyOf":[{"enum":["image/jpeg","image/png","image/webp","image/avif"]},{"type":"null"}]},"role":{"enum":["primary","secondary"]},"url":{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"}},"required":["url","role","mediaType","evidence"],"type":"object"},"issue":{"additionalProperties":false,"properties":{"code":{"pattern":"^[a-z][a-z0-9_]*$","type":"string"},"message":{"minLength":1,"type":"string"},"path":{"pattern":"^/","type":"string"},"severity":{"enum":["info","review_required","publication_blocker"]},"sourceRefs":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true}},"required":["code","path","severity","message","sourceRefs"],"type":"object"},"measurement":{"oneOf":[{"additionalProperties":false,"properties":{"amount":{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"},"kind":{"const":"number"},"qualifier":{"enum":["exact","approximate"]},"unit":{"minLength":1,"type":"string"}},"required":["kind","amount","unit","qualifier"],"type":"object"},{"additionalProperties":false,"properties":{"interpretation":{"enum":["literal","ambiguous"]},"kind":{"const":"text"},"text":{"minLength":1,"type":"string"},"unit":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","text","unit","interpretation"],"type":"object"}]},"price":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"amountHt":{"type":"null"},"amountTtc":{"type":"null"},"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"taxRate":{"type":"null"},"validUntil":{"type":"null"}}}},{"if":{"properties":{"status":{"const":"observed"}}},"then":{"properties":{"amountTtc":{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},"evidence":{"properties":{"status":{"enum":["observed","validated"]}}}}}},{"else":{"properties":{"validityEvidence":{"type":"null"}}},"if":{"properties":{"validUntil":{"type":"string"}}},"then":{"properties":{"validityEvidence":{"$ref":"#/$defs/canonical/$defs/evidence"}}}}],"properties":{"amountHt":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},{"type":"null"}]},"amountTtc":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},{"type":"null"}]},"currency":{"const":"EUR"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"status":{"enum":["observed","unknown"]},"taxRate":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]{0,2})(?:\\.[0-9]{1,2})?$","type":"string"},{"type":"null"}]},"validUntil":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"validityEvidence":{"anyOf":[{"$ref":"#/$defs/canonical/$defs/evidence"},{"type":"null"}]}},"required":["status","amountTtc","amountHt","currency","taxRate","validUntil","evidence","validityEvidence"],"type":"object"},"relation":{"additionalProperties":false,"allOf":[{"if":{"properties":{"qualification":{"const":"confirmed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}}}}}],"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"qualification":{"enum":["asserted","confirmed","unknown"]},"target":{"$ref":"#/$defs/canonical/$defs/target"}},"required":["target","qualification","evidence"],"type":"object"},"relationGroup":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/relation"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"source":{"additionalProperties":false,"allOf":[{"anyOf":[{"properties":{"url":{"$ref":"#/$defs/canonical/$defs/https"}}},{"properties":{"artifactPath":{"type":"string"}}},{"properties":{"kind":{"const":"catalogue_read"}}},{"properties":{"kind":{"const":"human_review"}}}]},{"if":{"properties":{"visibility":{"const":"public"}}},"then":{"allOf":[{"else":{"properties":{"url":{"$ref":"#/$defs/canonical/$defs/https"}}},"if":{"properties":{"kind":{"enum":["catalogue_read","human_review"]}}},"then":{"type":"object"}}],"properties":{"artifactPath":{"type":"null"}}}},{"if":{"properties":{"kind":{"const":"catalogue_read"}}},"then":{"properties":{"observedAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}}],"properties":{"artifactPath":{"anyOf":[{"pattern":"^(?!/)(?!.*\\.\\.)(?!.*\\\\)[A-Za-z0-9_./-]+$","type":"string"},{"type":"null"}]},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"kind":{"enum":["backoffice","public_page","manufacturer_document","audit_record","historical_capture","catalogue_read","human_review"]},"locator":{"minLength":1,"type":"string"},"observedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"observedOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-fA-F0-9]{64}$","type":"string"},{"type":"null"}]},"url":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]},"visibility":{"enum":["public","internal"]}},"required":["id","kind","url","artifactPath","locator","observedOn","observedAt","visibility","sha256"],"type":"object"},"specification":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"key":{"pattern":"^[a-z][a-z0-9_]*$","type":"string"},"label":{"minLength":1,"type":"string"},"sourceText":{"minLength":1,"type":"string"},"value":{"$ref":"#/$defs/canonical/$defs/measurement"}},"required":["key","label","value","sourceText","evidence"],"type":"object"},"statement":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"minLength":1,"type":"string"}},"required":["text","evidence"],"type":"object"},"stock":{"additionalProperties":false,"allOf":[{"if":{"properties":{"managed":{"enum":[false,null]}}},"then":{"properties":{"quantity":{"type":"null"}}}},{"if":{"properties":{"visibility":{"const":"public"}}},"then":{"properties":{"quantity":{"type":"null"},"rawQuantity":{"type":"null"}}}}],"properties":{"counted":{"type":"boolean"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"managed":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"quantity":{"anyOf":[{"type":"integer"},{"type":"null"}]},"rawQuantity":{"anyOf":[{"type":"integer"},{"type":"null"}]},"visibility":{"enum":["internal","public"]}},"required":["managed","quantity","rawQuantity","visibility","evidence"],"type":"object"},"target":{"additionalProperties":false,"anyOf":[{"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"}}},{"properties":{"reference":{"minLength":1,"type":"string"}}}],"properties":{"label":{"minLength":1,"type":"string"},"productId":{"anyOf":[{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["productId","reference","label"],"type":"object"}},"additionalProperties":false,"allOf":[{"if":{"properties":{"recordType":{"const":"source_snapshot"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"expiresAt":{"type":"null"},"policy":{"const":"snapshot_only"}}}}},"visibility":{"properties":{"publication":{"const":"not_approved"},"record":{"const":"internal"}}}}}},{},{},{"if":{"properties":{"visibility":{"properties":{"publication":{"const":"approved"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"}}}},{"if":{"properties":{"offer":{"properties":{"freshness":{"properties":{"policy":{"const":"bounded"}}}}}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"expiresAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}}}}}},{"if":{"properties":{"visibility":{"properties":{"record":{"const":"public"}}}}},"then":{"properties":{"visibility":{"properties":{"publication":{"enum":["approved","published_read_only"]}}}}}},{"else":{"allOf":[{"if":{"properties":{"visibility":{"properties":{"record":{"const":"preview"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"visibility":{"properties":{"publication":{"const":"not_approved"}}}}}},{"if":{"properties":{"recordType":{"const":"source_snapshot"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"freshness_status":{"const":"source_snapshot"}}}}}}}},{"if":{"properties":{"recordType":{"const":"canonical_product"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"freshness_status":{"enum":["not_certified","unknown","current_read"]}}}}}}}}],"properties":{"compatibilities":{"properties":{"items":{"items":{"allOf":[{"if":{"properties":{"status":{"enum":["verified","incompatible"]}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}},"verified_at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}},{"if":{"properties":{"status":{"const":"inferred"}}},"then":{"properties":{"evidence":{"properties":{"sourceRefs":{"minItems":1},"status":{"const":"inferred"}}},"verified_at":{"type":"null"}}}},{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"verified_at":{"type":"null"}}}}],"properties":{"evidence":{"properties":{"sourceRefs":{"minItems":1}}},"status":{"enum":["verified","inferred","incompatible","unknown"]}},"required":["verified_at"]}}}},"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","unknown","on_request","not_for_sale"]}}},"freshness":{"allOf":[{"if":{"properties":{"freshness_status":{"const":"source_snapshot"}}},"then":{"properties":{"policy":{"const":"snapshot_only"}}}},{"if":{"properties":{"freshness_status":{"const":"not_certified"}}},"then":{"properties":{"observed_at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"policy":{"const":"observation_only"}}}},{"if":{"properties":{"freshness_status":{"const":"unknown"}}},"then":{"properties":{"observed_at":{"type":"null"},"policy":{"const":"observation_only"},"verified_at":{"type":"null"}}}}],"properties":{"expiresAt":{"type":"null"},"policy":{"enum":["snapshot_only","observation_only"]}},"required":["source_updated_at","observed_at","verified_at","freshness_status"]}}}}},"if":{"properties":{"schemaVersion":{"const":"0.1.0"}}},"then":{"properties":{"compatibilities":{"properties":{"items":{"items":{"properties":{"status":{"enum":["asserted","confirmed","incompatible","unknown","conflicting"]},"verified_at":{"not":{}}}}}}},"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","on_order","preorder","unknown","conflicting"]}}},"freshness":{"properties":{"freshness_status":{"not":{}},"observed_at":{"not":{}},"policy":{"enum":["snapshot_only","bounded"]},"source_updated_at":{"not":{}},"verified_at":{"not":{}}}},"stock":{"properties":{"quantity":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}]}}}}},"provenance":{"properties":{"sources":{"items":{"properties":{"kind":{"enum":["backoffice","public_page","manufacturer_document","audit_record","historical_capture"]}}}}}},"visibility":{"properties":{"record":{"enum":["internal","public"]}}}}}},{"if":{"properties":{"schemaVersion":{"const":"0.1.0"}}},"then":{"properties":{"classification":{"properties":{"brandLabel":{"properties":{"name":{"type":"string"}}},"categoryPath":{"minItems":1}}},"names":{"properties":{"preferred":{"type":"string"}}},"references":{"properties":{"identifiers":{"minItems":1}}}}}},{"if":{"properties":{"visibility":{"properties":{"publication":{"const":"published_read_only"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"schemaVersion":{"enum":["0.1.1","0.1.2","0.1.3"]},"visibility":{"properties":{"record":{"const":"public"}}}}}},{"else":{"properties":{"offer":{"not":{"anyOf":[{"required":["sale_status"]},{"required":["order_mode"]},{"required":["order_reason"]},{"required":["review_reasons"]}]},"properties":{"availability":{"properties":{"status":{"not":{"const":"not_for_sale"}}}},"freshness":{"properties":{"freshness_status":{"not":{"const":"current_read"}}}},"stock":{"not":{"required":["counted"]}}}}}},"if":{"properties":{"schemaVersion":{"enum":["0.1.2","0.1.3"]}}},"then":{"properties":{"offer":{"properties":{"availability":{"properties":{"orderable":{"type":"boolean"}}},"freshness":{"properties":{"freshness_status":{"const":"current_read"},"observed_at":{"format":"date-time","type":"string"},"policy":{"const":"observation_only"}}},"stock":{"required":["counted"]}},"required":["sale_status","order_mode","order_reason","review_reasons"]},"recordType":{"const":"canonical_product"}}}},{"else":{"properties":{"compatibilities":{"properties":{"items":{"items":{"properties":{"decision":{"not":{}}}}}}},"documents":{"properties":{"items":{"items":{"properties":{"confirmedAppliance":{"not":{}},"decision":{"not":{}},"kind":{"enum":["manual","technical_sheet","certificate","unknown"]},"reviewStatus":{"not":{}}}}}}},"humanReview":{"not":{}},"provenance":{"properties":{"sources":{"items":{"properties":{"kind":{"not":{"const":"human_review"}}}}}}},"references":{"properties":{"identifiers":{"items":{"properties":{"decision":{"not":{}},"kind":{"enum":["manufacturer_reference_displayed","adaptable_reference","legacy_public_sku","gtin","other"]}}}}}}}},"if":{"properties":{"schemaVersion":{"const":"0.1.3"}}},"then":{"required":["humanReview"]}}],"description":"0.1.3 : qualifications humaines distinctes, liées à une source stable ; lecture commerciale courante inchangée.","properties":{"canonical_url":{"format":"uri","pattern":"^https://catalogue\\.nitech\\.fr/produits/[1-9][0-9]{0,9}$","type":"string"},"classification":{"additionalProperties":false,"properties":{"brandLabel":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"minLength":1}},"required":["name","evidence"],"type":"object"},"categoryPath":{"items":{"$ref":"#/$defs/canonical/$defs/category"},"minItems":0,"type":"array"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"manufacturer":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"name":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["name","evidence"],"type":"object"}},"required":["brandLabel","manufacturer","categoryPath","evidence"],"type":"object"},"compatibilities":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/compatibility"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"description":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/statement"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"documents":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/document"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"explodedViews":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/explodedView"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"humanReview":{"additionalProperties":false,"properties":{"productFingerprint":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reviewedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"reviewedFingerprint":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"status":{"enum":["pending","reviewed"]}},"required":["status","productFingerprint","reviewedFingerprint","reviewedAt"],"type":"object"},"identity":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"kind":{"enum":["spare_part","product","appliance"]},"legacyPid":{"minimum":1,"type":"integer"}},"required":["id","legacyPid","kind","evidence"],"type":"object"},"images":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/image"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"names":{"additionalProperties":false,"properties":{"aliases":{"items":{"$ref":"#/$defs/canonical/$defs/alias"},"minItems":0,"type":"array"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"preferred":{"anyOf":[{"type":"string"},{"type":"null"}],"minLength":1}},"required":["preferred","aliases","evidence"],"type":"object"},"offer":{"additionalProperties":false,"properties":{"availability":{"$ref":"#/$defs/canonical/$defs/availability"},"context":{"additionalProperties":false,"properties":{"channel":{"const":"retail"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"market":{"const":"FR"},"seller":{"const":"Nitech"},"shippingIncluded":{"const":false}},"required":["market","channel","seller","shippingIncluded","evidence"],"type":"object"},"delivery":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["text","evidence"],"type":"object"},"freshness":{"additionalProperties":false,"properties":{"asOf":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"expiresAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"freshness_status":{"description":"current_read : quantité courante observée ; aucun délai de fraîcheur inventé.","enum":["source_snapshot","not_certified","unknown","current_read"]},"observed_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Heure réelle de lecture courante de la base Nitech."},"policy":{"enum":["snapshot_only","bounded","observation_only"]},"source_updated_at":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Précision réelle de la source : date SQL conservée comme date, instant seulement si connu ; null si inconnu."},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Instant de vérification métier de cette offre, distinct de sa lecture ; null en l'absence de vérification."}},"required":["asOf","policy","expiresAt","evidence"],"type":"object"},"order_mode":{"enum":["online","contact_only","disabled"]},"order_reason":{"enum":["not_for_sale","sale_mode_undecided","stock_not_counted","untracked_orders_allowed","stock_empty","unavailable_orders_allowed","stock_available"]},"price":{"$ref":"#/$defs/canonical/$defs/price"},"review_reasons":{"items":{"enum":["stock_not_counted","sale_mode_undecided","on_sale_not_orderable"]},"maxItems":3,"type":"array","uniqueItems":true},"sale_status":{"enum":["on_sale","not_on_sale"]},"stock":{"$ref":"#/$defs/canonical/$defs/stock"}},"required":["context","price","stock","availability","delivery","freshness"],"type":"object"},"provenance":{"additionalProperties":false,"properties":{"issues":{"items":{"$ref":"#/$defs/canonical/$defs/issue"},"minItems":0,"type":"array"},"snapshotOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sourceModifiedOn":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"sources":{"items":{"$ref":"#/$defs/canonical/$defs/source"},"minItems":1,"type":"array"}},"required":["snapshotOn","sourceModifiedOn","sources","issues"],"type":"object"},"recordRevision":{"minimum":1,"type":"integer"},"recordType":{"enum":["source_snapshot","canonical_product"]},"references":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"identifiers":{"items":{"$ref":"#/$defs/canonical/$defs/identifier"},"minItems":0,"type":"array"},"merchantSku":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["merchantSku","identifiers","evidence"],"type":"object"},"relations":{"additionalProperties":false,"properties":{"accessories":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"alternatives":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"replacedBy":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"replaces":{"$ref":"#/$defs/canonical/$defs/relationGroup"}},"required":["replaces","replacedBy","alternatives","accessories"],"type":"object"},"schemaVersion":{"enum":["0.1.0","0.1.1","0.1.2","0.1.3"]},"specifications":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/specification"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"visibility":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"publication":{"description":"published_read_only désigne la diffusion publique en lecture seule des données du catalogue.","enum":["not_approved","approved","published_read_only"]},"record":{"enum":["internal","public","preview"]}},"required":["record","publication","evidence"],"type":"object"}},"required":["schemaVersion","recordRevision","recordType","identity","references","names","classification","description","specifications","compatibilities","relations","offer","images","documents","explodedViews","provenance","visibility"],"title":"Nitech — produit canonique v0.1","type":"object"}},"$schema":"https://json-schema.org/draft/2020-12/schema","description":"Generated by bin/build-mcp-schemas.py; authoritative product definitions remain in nitech-product-v0.1.schema.json.","oneOf":[{"additionalProperties":false,"properties":{"product":{"allOf":[{"$ref":"#/$defs/canonical"},{"properties":{"recordType":{"const":"canonical_product"},"schemaVersion":{"enum":["0.1.1","0.1.2","0.1.3"]},"visibility":{"anyOf":[{"properties":{"publication":{"const":"not_approved"},"record":{"const":"preview"}}},{"properties":{"publication":{"const":"published_read_only"},"record":{"const":"public"}}}]}}}]}},"required":["product"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"pattern":"^[A-Z_]{3,64}$","type":"string"},"message":{"maxLength":500,"minLength":1,"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"type":"object"}},"required":["error"],"type":"object"}],"type":"object"}after
{"$defs":{"canonical":{"$defs":{"alias":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"kind":{"enum":["commercial_name","spelling_variant"]},"value":{"minLength":1,"type":"string"}},"required":["value","kind","evidence"],"type":"object"},"appliance":{"additionalProperties":false,"properties":{"brand":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]},"model":{"minLength":1,"type":"string"},"productId":{"anyOf":[{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["productId","brand","model","reference"],"type":"object"},"availability":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"observations":{"items":{"$ref":"#/$defs/canonical/$defs/availabilityObservation"},"minItems":0,"type":"array"},"orderable":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"status":{"enum":["in_stock","out_of_stock","on_order","preorder","unknown","conflicting","on_request","not_for_sale"]}},"required":["status","orderable","observations","evidence"],"type":"object"},"availabilityObservation":{"additionalProperties":false,"properties":{"channel":{"enum":["human","jsonld","backoffice"]},"rawValue":{"minLength":1,"type":"string"},"reportedStatus":{"enum":["in_stock","out_of_stock","on_order","preorder","for_sale","unknown"]},"sourceRef":{"minLength":1,"type":"string"}},"required":["sourceRef","channel","reportedStatus","rawValue"],"type":"object"},"category":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"legacyId":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}]},"name":{"minLength":1,"type":"string"}},"required":["legacyId","name","evidence"],"type":"object"},"compatibility":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"enum":["confirmed","incompatible"]}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}}}}},{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}}}}}],"properties":{"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"scope":{"minLength":1,"type":"string"},"status":{"enum":["asserted","confirmed","incompatible","unknown","conflicting","verified","inferred"]},"target":{"$ref":"#/$defs/canonical/$defs/appliance"},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]}},"required":["target","status","scope","evidence"],"type":"object"},"document":{"additionalProperties":false,"properties":{"confirmedAppliance":{"maxLength":150,"type":"string"},"contentInspection":{"enum":["not_inspected","partially_inspected","inspected"]},"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"kind":{"enum":["manual","technical_sheet","certificate","unknown","user_manual","installation_manual","parts_diagram","commercial","other","irrelevant"]},"mediaType":{"anyOf":[{"enum":["application/pdf","text/html","image/jpeg","image/png"]},{"type":"null"}]},"reviewStatus":{"enum":["relevant","not_relevant","unreadable","wrong_appliance"]},"scope":{"additionalProperties":false,"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"type":{"enum":["product","related_appliance"]}},"required":["type","productId"],"type":"object"},"title":{"minLength":1,"type":"string"},"url":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]}},"required":["id","kind","title","url","mediaType","scope","contentInspection","evidence"],"type":"object"},"evidence":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"enum":["observed","inferred","validated"]}}},"then":{"properties":{"sourceRefs":{"minItems":1}}}},{"if":{"properties":{"status":{"const":"unconfirmed"}}},"then":{"properties":{"confidence":{"const":"unknown"}}}}],"properties":{"confidence":{"enum":["high","medium","low","unknown"]},"note":{"minLength":1,"type":"string"},"sourceRefs":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true},"status":{"enum":["observed","inferred","unconfirmed","validated"]}},"required":["status","confidence","sourceRefs","note"],"type":"object"},"explodedView":{"additionalProperties":false,"properties":{"appliance":{"$ref":"#/$defs/canonical/$defs/appliance"},"documentIds":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"occurrences":{"items":{"additionalProperties":false,"properties":{"marker":{"maxLength":64,"minLength":1,"type":"string"},"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"}},"required":["productId","marker"],"type":"object"},"minItems":1,"type":"array"},"planUrl":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]},"version":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["id","appliance","planUrl","version","documentIds","occurrences","evidence"],"type":"object"},"https":{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},"humanDecision":{"additionalProperties":false,"properties":{"at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"id":{"minimum":1,"type":"integer"},"outcome":{"enum":["relevant","not_relevant","unreadable","wrong_appliance","confirmed","rejected","qualified"]},"sourceFingerprint":{"pattern":"^[a-f0-9]{64}$","type":"string"},"sourceRef":{"pattern":"^human-decision-[1-9][0-9]*$","type":"string"}},"required":["id","outcome","at","sourceFingerprint","sourceRef"],"type":"object"},"identifier":{"additionalProperties":false,"properties":{"decision":{"$ref":"#/$defs/canonical/$defs/humanDecision"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"kind":{"enum":["manufacturer_reference_displayed","adaptable_reference","legacy_public_sku","gtin","other","nitech_reference","former_reference","supplier_reference","unknown"]},"value":{"minLength":1,"type":"string"}},"required":["kind","value","evidence"],"type":"object"},"image":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"mediaType":{"anyOf":[{"enum":["image/jpeg","image/png","image/webp","image/avif"]},{"type":"null"}]},"role":{"enum":["primary","secondary"]},"url":{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"}},"required":["url","role","mediaType","evidence"],"type":"object"},"issue":{"additionalProperties":false,"properties":{"code":{"pattern":"^[a-z][a-z0-9_]*$","type":"string"},"message":{"minLength":1,"type":"string"},"path":{"pattern":"^/","type":"string"},"severity":{"enum":["info","review_required","publication_blocker"]},"sourceRefs":{"items":{"minLength":1,"type":"string"},"minItems":0,"type":"array","uniqueItems":true}},"required":["code","path","severity","message","sourceRefs"],"type":"object"},"measurement":{"oneOf":[{"additionalProperties":false,"properties":{"amount":{"pattern":"^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?$","type":"string"},"kind":{"const":"number"},"qualifier":{"enum":["exact","approximate"]},"unit":{"minLength":1,"type":"string"}},"required":["kind","amount","unit","qualifier"],"type":"object"},{"additionalProperties":false,"properties":{"interpretation":{"enum":["literal","ambiguous"]},"kind":{"const":"text"},"text":{"minLength":1,"type":"string"},"unit":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["kind","text","unit","interpretation"],"type":"object"}]},"price":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"amountHt":{"type":"null"},"amountTtc":{"type":"null"},"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"taxRate":{"type":"null"},"validUntil":{"type":"null"}}}},{"if":{"properties":{"status":{"const":"observed"}}},"then":{"properties":{"amountTtc":{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},"evidence":{"properties":{"status":{"enum":["observed","validated"]}}}}}},{"else":{"properties":{"validityEvidence":{"type":"null"}}},"if":{"properties":{"validUntil":{"type":"string"}}},"then":{"properties":{"validityEvidence":{"$ref":"#/$defs/canonical/$defs/evidence"}}}}],"properties":{"amountHt":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},{"type":"null"}]},"amountTtc":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]*)\\.[0-9]{2}$","type":"string"},{"type":"null"}]},"currency":{"const":"EUR"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"status":{"enum":["observed","unknown"]},"taxRate":{"anyOf":[{"pattern":"^(?:0|[1-9][0-9]{0,2})(?:\\.[0-9]{1,2})?$","type":"string"},{"type":"null"}]},"validUntil":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"validityEvidence":{"anyOf":[{"$ref":"#/$defs/canonical/$defs/evidence"},{"type":"null"}]}},"required":["status","amountTtc","amountHt","currency","taxRate","validUntil","evidence","validityEvidence"],"type":"object"},"relation":{"additionalProperties":false,"allOf":[{"if":{"properties":{"qualification":{"const":"confirmed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}}}}}],"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"qualification":{"enum":["asserted","confirmed","unknown"]},"target":{"$ref":"#/$defs/canonical/$defs/target"}},"required":["target","qualification","evidence"],"type":"object"},"relationGroup":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/relation"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"source":{"additionalProperties":false,"allOf":[{"anyOf":[{"properties":{"url":{"$ref":"#/$defs/canonical/$defs/https"}}},{"properties":{"artifactPath":{"type":"string"}}},{"properties":{"kind":{"const":"catalogue_read"}}},{"properties":{"kind":{"const":"human_review"}}}]},{"if":{"properties":{"visibility":{"const":"public"}}},"then":{"allOf":[{"else":{"properties":{"url":{"$ref":"#/$defs/canonical/$defs/https"}}},"if":{"properties":{"kind":{"enum":["catalogue_read","human_review"]}}},"then":{"type":"object"}}],"properties":{"artifactPath":{"type":"null"}}}},{"if":{"properties":{"kind":{"const":"catalogue_read"}}},"then":{"properties":{"observedAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}}],"properties":{"artifactPath":{"anyOf":[{"pattern":"^(?!/)(?!.*\\.\\.)(?!.*\\\\)[A-Za-z0-9_./-]+$","type":"string"},{"type":"null"}]},"id":{"pattern":"^[a-z0-9][a-z0-9-]*$","type":"string"},"kind":{"enum":["backoffice","public_page","manufacturer_document","audit_record","historical_capture","catalogue_read","human_review"]},"locator":{"minLength":1,"type":"string"},"observedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"observedOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sha256":{"anyOf":[{"pattern":"^[a-fA-F0-9]{64}$","type":"string"},{"type":"null"}]},"url":{"anyOf":[{"format":"uri","pattern":"^https://[^\\s]+$","type":"string"},{"type":"null"}]},"visibility":{"enum":["public","internal"]}},"required":["id","kind","url","artifactPath","locator","observedOn","observedAt","visibility","sha256"],"type":"object"},"specification":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"key":{"pattern":"^[a-z][a-z0-9_]*$","type":"string"},"label":{"minLength":1,"type":"string"},"sourceText":{"minLength":1,"type":"string"},"value":{"$ref":"#/$defs/canonical/$defs/measurement"}},"required":["key","label","value","sourceText","evidence"],"type":"object"},"statement":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"minLength":1,"type":"string"}},"required":["text","evidence"],"type":"object"},"stock":{"additionalProperties":false,"allOf":[{"if":{"properties":{"managed":{"enum":[false,null]}}},"then":{"properties":{"quantity":{"type":"null"}}}},{"if":{"properties":{"visibility":{"const":"public"}}},"then":{"properties":{"quantity":{"type":"null"},"rawQuantity":{"type":"null"}}}}],"properties":{"counted":{"type":"boolean"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"managed":{"anyOf":[{"type":"boolean"},{"type":"null"}]},"quantity":{"anyOf":[{"type":"integer"},{"type":"null"}]},"rawQuantity":{"anyOf":[{"type":"integer"},{"type":"null"}]},"visibility":{"enum":["internal","public"]}},"required":["managed","quantity","rawQuantity","visibility","evidence"],"type":"object"},"target":{"additionalProperties":false,"anyOf":[{"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"}}},{"properties":{"reference":{"minLength":1,"type":"string"}}}],"properties":{"label":{"minLength":1,"type":"string"},"productId":{"anyOf":[{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},{"type":"null"}]},"reference":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["productId","reference","label"],"type":"object"}},"additionalProperties":false,"allOf":[{"if":{"properties":{"recordType":{"const":"source_snapshot"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"expiresAt":{"type":"null"},"policy":{"const":"snapshot_only"}}}}},"visibility":{"properties":{"publication":{"const":"not_approved"},"record":{"const":"internal"}}}}}},{},{},{"if":{"properties":{"visibility":{"properties":{"publication":{"const":"approved"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"}}}},{"if":{"properties":{"offer":{"properties":{"freshness":{"properties":{"policy":{"const":"bounded"}}}}}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"expiresAt":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}}}}}},{"if":{"properties":{"visibility":{"properties":{"record":{"const":"public"}}}}},"then":{"properties":{"visibility":{"properties":{"publication":{"enum":["approved","published_read_only"]}}}}}},{"else":{"allOf":[{"if":{"properties":{"visibility":{"properties":{"record":{"const":"preview"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"visibility":{"properties":{"publication":{"const":"not_approved"}}}}}},{"if":{"properties":{"recordType":{"const":"source_snapshot"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"freshness_status":{"const":"source_snapshot"}}}}}}}},{"if":{"properties":{"recordType":{"const":"canonical_product"}}},"then":{"properties":{"offer":{"properties":{"freshness":{"properties":{"freshness_status":{"enum":["not_certified","unknown","current_read"]}}}}}}}}],"properties":{"compatibilities":{"properties":{"items":{"items":{"allOf":[{"if":{"properties":{"status":{"enum":["verified","incompatible"]}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"validated"}}},"verified_at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"}}}},{"if":{"properties":{"status":{"const":"inferred"}}},"then":{"properties":{"evidence":{"properties":{"sourceRefs":{"minItems":1},"status":{"const":"inferred"}}},"verified_at":{"type":"null"}}}},{"if":{"properties":{"status":{"const":"unknown"}}},"then":{"properties":{"verified_at":{"type":"null"}}}}],"properties":{"evidence":{"properties":{"sourceRefs":{"minItems":1}}},"status":{"enum":["verified","inferred","incompatible","unknown"]}},"required":["verified_at"]}}}},"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","unknown","on_request","not_for_sale"]}}},"freshness":{"allOf":[{"if":{"properties":{"freshness_status":{"const":"source_snapshot"}}},"then":{"properties":{"policy":{"const":"snapshot_only"}}}},{"if":{"properties":{"freshness_status":{"const":"not_certified"}}},"then":{"properties":{"observed_at":{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},"policy":{"const":"observation_only"}}}},{"if":{"properties":{"freshness_status":{"const":"unknown"}}},"then":{"properties":{"observed_at":{"type":"null"},"policy":{"const":"observation_only"},"verified_at":{"type":"null"}}}}],"properties":{"expiresAt":{"type":"null"},"policy":{"enum":["snapshot_only","observation_only"]}},"required":["source_updated_at","observed_at","verified_at","freshness_status"]}}}}},"if":{"properties":{"schemaVersion":{"const":"0.1.0"}}},"then":{"properties":{"compatibilities":{"properties":{"items":{"items":{"properties":{"status":{"enum":["asserted","confirmed","incompatible","unknown","conflicting"]},"verified_at":{"not":{}}}}}}},"offer":{"properties":{"availability":{"properties":{"status":{"enum":["in_stock","out_of_stock","on_order","preorder","unknown","conflicting"]}}},"freshness":{"properties":{"freshness_status":{"not":{}},"observed_at":{"not":{}},"policy":{"enum":["snapshot_only","bounded"]},"source_updated_at":{"not":{}},"verified_at":{"not":{}}}},"stock":{"properties":{"quantity":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}]}}}}},"provenance":{"properties":{"sources":{"items":{"properties":{"kind":{"enum":["backoffice","public_page","manufacturer_document","audit_record","historical_capture"]}}}}}},"visibility":{"properties":{"record":{"enum":["internal","public"]}}}}}},{"if":{"properties":{"schemaVersion":{"const":"0.1.0"}}},"then":{"properties":{"classification":{"properties":{"brandLabel":{"properties":{"name":{"type":"string"}}},"categoryPath":{"minItems":1}}},"names":{"properties":{"preferred":{"type":"string"}}},"references":{"properties":{"identifiers":{"minItems":1}}}}}},{"if":{"properties":{"visibility":{"properties":{"publication":{"const":"published_read_only"}}}}},"then":{"properties":{"recordType":{"const":"canonical_product"},"schemaVersion":{"enum":["0.1.1","0.1.2","0.1.3"]},"visibility":{"properties":{"record":{"const":"public"}}}}}},{"else":{"properties":{"offer":{"not":{"anyOf":[{"required":["sale_status"]},{"required":["order_mode"]},{"required":["order_reason"]},{"required":["review_reasons"]}]},"properties":{"availability":{"properties":{"status":{"not":{"const":"not_for_sale"}}}},"freshness":{"properties":{"freshness_status":{"not":{"const":"current_read"}}}},"stock":{"not":{"required":["counted"]}}}}}},"if":{"properties":{"schemaVersion":{"enum":["0.1.2","0.1.3"]}}},"then":{"properties":{"offer":{"properties":{"availability":{"properties":{"orderable":{"type":"boolean"}}},"freshness":{"properties":{"freshness_status":{"const":"current_read"},"observed_at":{"format":"date-time","type":"string"},"policy":{"const":"observation_only"}}},"stock":{"required":["counted"]}},"required":["sale_status","order_mode","order_reason","review_reasons"]},"recordType":{"const":"canonical_product"}}}},{"else":{"properties":{"compatibilities":{"properties":{"items":{"items":{"properties":{"decision":{"not":{}}}}}}},"documents":{"properties":{"items":{"items":{"properties":{"confirmedAppliance":{"not":{}},"decision":{"not":{}},"kind":{"enum":["manual","technical_sheet","certificate","unknown"]},"reviewStatus":{"not":{}}}}}}},"humanReview":{"not":{}},"provenance":{"properties":{"sources":{"items":{"properties":{"kind":{"not":{"const":"human_review"}}}}}}},"references":{"properties":{"identifiers":{"items":{"properties":{"decision":{"not":{}},"kind":{"enum":["manufacturer_reference_displayed","adaptable_reference","legacy_public_sku","gtin","other"]}}}}}}}},"if":{"properties":{"schemaVersion":{"const":"0.1.3"}}},"then":{"required":["humanReview"]}}],"description":"0.1.3 : qualifications humaines distinctes, liées à une source stable ; lecture commerciale courante inchangée.","properties":{"canonical_url":{"format":"uri","pattern":"^https://catalogue\\.nitech\\.fr/produits/[1-9][0-9]{0,9}$","type":"string"},"classification":{"additionalProperties":false,"properties":{"brandLabel":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"minLength":1}},"required":["name","evidence"],"type":"object"},"categoryPath":{"items":{"$ref":"#/$defs/canonical/$defs/category"},"minItems":0,"type":"array"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"manufacturer":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"name":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["name","evidence"],"type":"object"}},"required":["brandLabel","manufacturer","categoryPath","evidence"],"type":"object"},"compatibilities":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/compatibility"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"description":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/statement"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"documents":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/document"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"explodedViews":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/explodedView"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"humanReview":{"additionalProperties":false,"properties":{"productFingerprint":{"pattern":"^[a-f0-9]{64}$","type":"string"},"reviewedAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"reviewedFingerprint":{"anyOf":[{"pattern":"^[a-f0-9]{64}$","type":"string"},{"type":"null"}]},"status":{"enum":["pending","reviewed"]}},"required":["status","productFingerprint","reviewedFingerprint","reviewedAt"],"type":"object"},"identity":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"id":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"kind":{"enum":["spare_part","product","appliance"]},"legacyPid":{"minimum":1,"type":"integer"}},"required":["id","legacyPid","kind","evidence"],"type":"object"},"images":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/image"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"names":{"additionalProperties":false,"properties":{"aliases":{"items":{"$ref":"#/$defs/canonical/$defs/alias"},"minItems":0,"type":"array"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"preferred":{"anyOf":[{"type":"string"},{"type":"null"}],"minLength":1}},"required":["preferred","aliases","evidence"],"type":"object"},"offer":{"additionalProperties":false,"properties":{"availability":{"$ref":"#/$defs/canonical/$defs/availability"},"context":{"additionalProperties":false,"properties":{"channel":{"const":"retail"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"market":{"const":"FR"},"seller":{"const":"Nitech"},"shippingIncluded":{"const":false}},"required":["market","channel","seller","shippingIncluded","evidence"],"type":"object"},"delivery":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"text":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["text","evidence"],"type":"object"},"freshness":{"additionalProperties":false,"properties":{"asOf":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"expiresAt":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}]},"freshness_status":{"description":"current_read : quantité courante observée ; aucun délai de fraîcheur inventé.","enum":["source_snapshot","not_certified","unknown","current_read"]},"observed_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Heure réelle de lecture courante de la base Nitech."},"policy":{"enum":["snapshot_only","bounded","observation_only"]},"source_updated_at":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Précision réelle de la source : date SQL conservée comme date, instant seulement si connu ; null si inconnu."},"verified_at":{"anyOf":[{"format":"date-time","pattern":"^\\d{4}-\\d{2}-\\d{2}T.*(?:Z|[+-]\\d{2}:\\d{2})$","type":"string"},{"type":"null"}],"description":"Instant de vérification métier de cette offre, distinct de sa lecture ; null en l'absence de vérification."}},"required":["asOf","policy","expiresAt","evidence"],"type":"object"},"order_mode":{"enum":["online","contact_only","disabled"]},"order_reason":{"enum":["not_for_sale","sale_mode_undecided","stock_not_counted","untracked_orders_allowed","stock_empty","unavailable_orders_allowed","stock_available"]},"price":{"$ref":"#/$defs/canonical/$defs/price"},"review_reasons":{"items":{"enum":["stock_not_counted","sale_mode_undecided","on_sale_not_orderable"]},"maxItems":3,"type":"array","uniqueItems":true},"sale_status":{"enum":["on_sale","not_on_sale"]},"stock":{"$ref":"#/$defs/canonical/$defs/stock"}},"required":["context","price","stock","availability","delivery","freshness"],"type":"object"},"provenance":{"additionalProperties":false,"properties":{"issues":{"items":{"$ref":"#/$defs/canonical/$defs/issue"},"minItems":0,"type":"array"},"snapshotOn":{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"sourceModifiedOn":{"anyOf":[{"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},{"type":"null"}]},"sources":{"items":{"$ref":"#/$defs/canonical/$defs/source"},"minItems":1,"type":"array"}},"required":["snapshotOn","sourceModifiedOn","sources","issues"],"type":"object"},"recordRevision":{"minimum":1,"type":"integer"},"recordType":{"enum":["source_snapshot","canonical_product"]},"references":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"identifiers":{"items":{"$ref":"#/$defs/canonical/$defs/identifier"},"minItems":0,"type":"array"},"merchantSku":{"anyOf":[{"minLength":1,"type":"string"},{"type":"null"}]}},"required":["merchantSku","identifiers","evidence"],"type":"object"},"relations":{"additionalProperties":false,"properties":{"accessories":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"alternatives":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"replacedBy":{"$ref":"#/$defs/canonical/$defs/relationGroup"},"replaces":{"$ref":"#/$defs/canonical/$defs/relationGroup"}},"required":["replaces","replacedBy","alternatives","accessories"],"type":"object"},"schemaVersion":{"enum":["0.1.0","0.1.1","0.1.2","0.1.3"]},"specifications":{"additionalProperties":false,"allOf":[{"if":{"properties":{"coverage":{"const":"not_assessed"}}},"then":{"properties":{"evidence":{"properties":{"status":{"const":"unconfirmed"}}},"items":{"maxItems":0}}}}],"properties":{"coverage":{"enum":["not_assessed","partial","reviewed_scope"]},"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"items":{"items":{"$ref":"#/$defs/canonical/$defs/specification"},"minItems":0,"type":"array"},"scope":{"minLength":1,"type":"string"}},"required":["coverage","scope","items","evidence"],"type":"object"},"visibility":{"additionalProperties":false,"properties":{"evidence":{"$ref":"#/$defs/canonical/$defs/evidence"},"publication":{"description":"published_read_only désigne la diffusion publique en lecture seule des données du catalogue.","enum":["not_approved","approved","published_read_only"]},"record":{"enum":["internal","public","preview"]}},"required":["record","publication","evidence"],"type":"object"}},"required":["schemaVersion","recordRevision","recordType","identity","references","names","classification","description","specifications","compatibilities","relations","offer","images","documents","explodedViews","provenance","visibility"],"title":"Nitech — produit canonique v0.1","type":"object"}},"$schema":"https://json-schema.org/draft/2020-12/schema","oneOf":[{"additionalProperties":false,"properties":{"documents":{"items":{"additionalProperties":false,"properties":{"document_date":{"type":"null"},"document_id":{"maxLength":2000,"minLength":1,"type":"string"},"document_type":{"enum":["manual","technical_sheet","certificate","unknown","user_manual","installation_manual","parts_diagram","commercial","other","irrelevant"]},"filename":{"maxLength":2000,"minLength":1,"type":"string"},"previous_content_inspection":{"enum":["not_inspected","partially_inspected","inspected"]},"publication":{"const":"public_link"},"scope":{"additionalProperties":false,"properties":{"productId":{"pattern":"^nitech:product:[1-9][0-9]*$","type":"string"},"type":{"enum":["product","related_appliance"]}},"required":["type","productId"],"type":"object"},"sources":{"items":{"$ref":"#/$defs/canonical/$defs/source"},"maxItems":10,"type":"array"},"title":{"maxLength":2000,"minLength":1,"type":"string"},"url":{"format":"uri","pattern":"^https://www\\.(?:direct-chaudiere\\.com|nitech-negoce\\.com)/img/produits/(?:p_pdf|p_eclates)/[^/?#]+$","type":"string"},"verification_status":{"enum":["not_reverified","human_verified"]},"verified_at":{"anyOf":[{"type":"string"},{"type":"null"}],"format":"date-time"},"version":{"type":"null"}},"required":["document_id","document_type","title","filename","url","scope","sources","document_date","version","verification_status","verified_at","previous_content_inspection","publication"],"type":"object"},"maxItems":403,"type":"array"},"observed_at":{"format":"date-time","type":"string"},"product_id":{"maximum":2147483647,"minimum":1,"type":"integer"},"status":{"enum":["documents_available","no_public_documents"]},"uncertainties":{"items":{"pattern":"^[a-z_]{3,80}$","type":"string"},"maxItems":12,"type":"array"},"verified_document_count":{"maximum":403,"minimum":0,"type":"integer"},"withheld_count":{"maximum":403,"minimum":0,"type":"integer"}},"required":["product_id","status","documents","withheld_count","verified_document_count","observed_at","uncertainties"],"type":"object"},{"additionalProperties":false,"properties":{"error":{"additionalProperties":false,"properties":{"code":{"pattern":"^[A-Z_]{3,64}$","type":"string"},"message":{"maxLength":500,"minLength":1,"type":"string"},"retryable":{"type":"boolean"}},"required":["code","message","retryable"],"type":"object"}},"required":["error"],"type":"object"}],"type":"object"}Au client, parler de sa commande et de la prochaine action utile. Garder les noms d’outils, états bruts, identifiants internes, clés, jetons et étapes techniques hors du dialogue courant. Les autorisations affichées par l’applicationPréparerdel’accèsl’assistantaurelèventpaiement decette application et ne remplacent pas l’accord demandé par Nitech. Après création, donnerlaréférence client, le montant et une action utile. Si la carte a été choisie etmêmelacommandepréparation:autoriséepayment_method=card,donner le lien direct action.url quand le serveur le fournit. Ne pas redemander un choixtransfer ouun accord identique. Si aucun moyen n’acheque.étéFournirchoisicart_id,proposer cartecart_access,virement ou chèqueexpected_amount,ou remettre la page decurrency=EURchoixetexistante.idempotency_key. Une demande explicite identifiant commande, montant, devise et moyen vautaccord pour cette préparation. Exécuteraccord.aperçuAppeler confirmed=false puis confirmed=truesans reposeravec la mêmequestion UNIQUEMENTclésiUUID, lerésultat concordeconfirmation_tokenexactementretourné etqu’aucune nouvelle conditionproof_referenceneidentifiantnécessitecetunaccord,accord.sansConserverreposer la mêmecléquestionUUID,si lejeton retourné etrécapitulatifproof_referenceconcorde.identifiantSi lemessagemontantexpliciteou;lesneconditionsjamaischangent,inventerprésenterunelepreuve.changementS’ilavantmanquede demander unélémentnouvelouaccord.siNelejamaisrésultatinventerdiffère,unedemanderpreuve.seulementPour laprécisioncarte,oucetleoutilnouvelfournitaccordseulementnécessaire.action.url,Résultatleacceptélienouprivéincertain/payments/card :ne pas préparer uneaucunnouvelleformulairetentative.bancaireCarteniexplicitementtentativechoisien’estetcréépréparationparconfirméel’appel:MCP.remettreRemettreaction.url,ce lienNitech privé stableau/payments/card,client sansouvrir ce lienl’ouvrirdansavec les outils de l’assistant. Leclient cliquenavigateuretcrée lenavigateur rejointformulaire Scelliusparlorsque letransfert bancaire existant, sans nouveau choixclientdupoursuit.moyen.UneNeanciennejamaistentative,donneruneunancienneformulaireréférence bancaire ouson jeton temporaire comme lienundurable.choixpayment_pagechèque/virementconservenelabloquepagepasgénéralecetdeaccès.choixLeetsuivi desuivi ;lautilisercommandecettecommunepagedétermine siaucun moyen n’a été choisi.elleVirement,estchèquepayableet;suiviunepermanentcommandeconservés.payéePréparerouleannuléemoyenrestedeenpaiementconsultation.duretry_ofmêmerestecaddieacceptéMCPpour:compatibilitépayment_method=card,ettransfern’estoupascheque.nécessaire. Pour virement/chèque, confirmer enregistreseulement c_stat=3leetmoyenc_moyp=3/2choisi et renvoie les instructions existantes:,aucunsans règlement reçu, stock, e-mail ou facture.Une carte en cours/incertaine ou une commande déjà prise en compte interdit un autre moyen. Pour la carte, préparer le paiement autonome Scellius. Appeler avec confirmed=false, cart_access, expected_amount, currency=EUR et une clé UUID pour présenter le montant au client. Uniquement après son accord explicite, rappeler confirmed=true avec confirmation_token et proof_reference. Renvoyerpayment_pageou action.url au client : URL stable sans expiration (expires_at=null). La préparation UNISSUED peut attendre ;reste leformulairelienbancairegénéralestdedatéchoix etmarqué ISSUED seulement au départ explicite du client. Les confirmations temporaires sont renouvelées derrière la page. Une session ISSUED ou LEGACY_UNKNOWN reste protégée jusqu'au résultat authentifié ; ne jamais inventer une expirationdebancaire.suivi. Le client saisit sa carte uniquement chez Scellius.Aucun envoi de carte ou authentification via MCP. Répétitions etAprèscléspaiement,différentesget_paymentretrouventlitlalesmêmedonnéestentativecommunes ;aucun nouvel essai automatique aprèsunrefus, une expirationlien ouune incertitude. Après REFUSED,unABANDONEDretourounavigateurEXPIREDneauthentifiéprouveparpas leserveur, demander un nouveau récapitulatif avec une nouvelle clépaiement.etAuretry_of=attempt_idclient,puis recueillir un nouvel accord explicite. get_payment donnedonner lapreuve serveurréférence,etlelesmontanteffetsetmétier.l’actionUnutilelien; nevalidepasleexposerpaiement.les étapes techniques.
⟨22 unchanged words⟩ identifiant commande, montant, devise et moyen vautaccord pour cette préparation. Exécuteraccord.aperçuAppeler confirmed=false puis confirmed=truesans reposer la même question UNIQUEMENT si le résultat concorde exactement et qu’aucune nouvelle condition ne nécessite un accord. Conserveravec la même clé UUID, lejetonconfirmation_token retourné et proof_reference identifiantle message explicite ;cetneaccord,jamaissansinventerreposerunelapreuve.mêmeS’ilquestionmanquesiunle