{"name":"PawSift","version":"0.1.0","endpoint":"/api/v1/audit","category":"Lifestyle","type":"A2MCP","boundary":"Non-veterinary product-fit audit based only on supplied facts.","rulesetVersion":"2026.07.7","examples":[{"id":"clear-cat-collar","label":"Clear collar example","summary":"A complete cat collar listing with breakaway facts and care instructions.","request":{"pet":{"species":"cat","lifeStage":"adult","weightKg":4.8,"traits":["indoor","curious"]},"product":{"name":"Breakaway Reflective Collar","category":"collar_harness","intendedSpecies":["cat"],"materials":["nylon","zinc_alloy"],"minWeightKg":2.5,"maxWeightKg":7,"breakaway":true,"careInstructions":"Hand wash and air dry.","claims":["adjustable","reflective"]}},"expectedVerdict":"CLEAR","expectedRuleIds":["PS-010"],"response":{"verdict":"CLEAR","score":100,"rulesetVersion":"2026.07.7","findings":[{"ruleId":"PS-010","severity":"CLEAR","title":"Listing includes the core facts needed for this audit","reason":"The supplied facts are complete enough for a deterministic non-veterinary fit check and no blocking rule fired.","evidence":["pet.species=cat","category=collar_harness","weightRange=2.5-7"],"remediation":"No immediate listing patch is required from the supplied facts."}],"missingFacts":[],"ownerQuestions":[],"listingPatch":[],"boundary":"Non-veterinary product-fit audit based only on supplied facts.","receipt":{"algorithm":"sha256","inputHash":"f8ab57435e1fb63b7fda95d06437c263ef87e1c63051e723e39ee56797eff5ff","reportHash":"c35e0036153fbc634d99d2e780fd7036ee18fade3a26d3ef72c25ced67c32011"}}},{"id":"species-mismatch","label":"Species mismatch","summary":"A dog bed listing applied to a cat profile.","request":{"pet":{"species":"cat","lifeStage":"adult","weightKg":4.8,"traits":["calm"]},"product":{"name":"Trail Dog Bed","category":"bed","intendedSpecies":["dog"],"materials":["canvas","polyfill"],"minWeightKg":3,"maxWeightKg":18,"careInstructions":"Spot clean with mild soap and air dry.","claims":["portable","washable"]}},"expectedVerdict":"BLOCK","expectedRuleIds":["PS-001"],"response":{"verdict":"BLOCK","score":55,"rulesetVersion":"2026.07.7","findings":[{"ruleId":"PS-001","severity":"BLOCK","title":"Intended species does not match the pet profile","reason":"The listing targets a different species than the supplied pet, so the fit result cannot be approved.","evidence":["pet.species=cat","intendedSpecies=dog"],"remediation":"Align the listing species or choose a product intended for this pet."}],"missingFacts":[],"ownerQuestions":[],"listingPatch":[],"boundary":"Non-veterinary product-fit audit based only on supplied facts.","receipt":{"algorithm":"sha256","inputHash":"6468cb34a367c898ad4a8226478fe7a22c18b9152f87a87ec862e4aafa94e4f9","reportHash":"553aecb8e4c686a00e9ad9981e49a502ecfec9ddb70bdb644a99ac2c40babf8d"}}},{"id":"weight-range-mismatch","label":"Weight mismatch","summary":"A bed listing whose stated range is below the pet's weight.","request":{"pet":{"species":"dog","lifeStage":"senior","weightKg":12,"traits":["short_legged"]},"product":{"name":"Compact Lounge Bed","category":"bed","intendedSpecies":["dog"],"materials":["fleece","polyester_fill"],"minWeightKg":2,"maxWeightKg":9,"careInstructions":"Machine wash cold and tumble dry low.","claims":["orthopedic-style support","non-slip base"]}},"expectedVerdict":"BLOCK","expectedRuleIds":["PS-002"],"response":{"verdict":"BLOCK","score":72,"rulesetVersion":"2026.07.7","findings":[{"ruleId":"PS-002","severity":"BLOCK","title":"Pet is outside the declared weight range","reason":"The supplied pet weight falls outside the declared weight range, so the product fit should be blocked.","evidence":["pet.weightKg=12","minWeightKg=2","maxWeightKg=9"],"remediation":"Correct the supported weight range or pick a product sized for this pet."}],"missingFacts":[],"ownerQuestions":[],"listingPatch":[],"boundary":"Non-veterinary product-fit audit based only on supplied facts.","receipt":{"algorithm":"sha256","inputHash":"97af4122c408a023b0aacec99f82e4cd6cedb90165f3ebd49a8a6067509b6de7","reportHash":"9cb565eab57b4e30498bd153fdae6dfbde4f02fd67b853bee5a0c77e38547c74"}}},{"id":"missing-materials","label":"Missing materials","summary":"A grooming listing that omits materials.","request":{"pet":{"species":"dog","lifeStage":"adult","weightKg":8.5,"traits":["sheds"]},"product":{"name":"De-shedding Grooming Mitt","category":"grooming_tool","intendedSpecies":["dog","cat"],"materials":[],"careInstructions":"Rinse the mitt and hang it to dry.","claims":["reusable","gentle bristles"]}},"expectedVerdict":"CAUTION","expectedRuleIds":["PS-003"],"response":{"verdict":"CAUTION","score":92,"rulesetVersion":"2026.07.7","findings":[{"ruleId":"PS-003","severity":"CAUTION","title":"Materials are missing from the listing","reason":"The listing omits product materials, which makes it harder to evaluate surface contact and durability.","evidence":["materials=0"],"remediation":"List the primary materials, including any surface that touches the pet."}],"missingFacts":["materials"],"ownerQuestions":["What materials touch the pet or the pet's mouth?"],"listingPatch":["List the primary materials, including anything that touches the pet or its mouth."],"boundary":"Non-veterinary product-fit audit based only on supplied facts.","receipt":{"algorithm":"sha256","inputHash":"ef42c2356d2e0583a537784427b7b3485e0ca992523e050cdcf9124cba2ebe72","reportHash":"5c30ef127149c4c90e671e95fc3b30c15fd2742c8f6437cfa8d7e6a058ae6233"}}},{"id":"unsafe-toy","label":"Toy supervision gap","summary":"A detachable toy without a supervision statement.","request":{"pet":{"species":"dog","lifeStage":"adult","weightKg":9.4,"traits":["fetch-loving"]},"product":{"name":"Puzzle Squeak Ball","category":"toy","intendedSpecies":["dog"],"materials":["rubber","plush"],"hasDetachableParts":true,"careInstructions":"Wipe clean after play.","claims":["interactive","mental stimulation"]}},"expectedVerdict":"CAUTION","expectedRuleIds":["PS-004"],"response":{"verdict":"CAUTION","score":91,"rulesetVersion":"2026.07.7","findings":[{"ruleId":"PS-004","severity":"CAUTION","title":"Supervision statement missing for detachable toy parts","reason":"The toy has detachable parts but the listing does not say the pet should be supervised during play.","evidence":["category=toy","hasDetachableParts=true","supervisionStatement=missing"],"remediation":"Add a supervision statement for toys with detachable parts."}],"missingFacts":[],"ownerQuestions":["Should owners supervise play when detachable parts are exposed?"],"listingPatch":["Add a supervision statement for toys with detachable parts."],"boundary":"Non-veterinary product-fit audit based only on supplied facts.","receipt":{"algorithm":"sha256","inputHash":"695e4ef2fb40299d79d7406e1bbab6953b2bafc491a1c3872b3e7e7e63582792","reportHash":"a1a3e34ce3195e15c912a76032894b4301ed744301c560e910224ce8b2189b3f"}}},{"id":"magnetic-toy","label":"Magnet disclosure","summary":"A toy that discloses a magnet and requires manual review.","request":{"pet":{"species":"cat","lifeStage":"adult","weightKg":3.9,"traits":["playful"]},"product":{"name":"Whirl Magnet Wand","category":"toy","intendedSpecies":["cat"],"materials":["abs_plastic","polyester"],"containsMagnet":true,"careInstructions":"Store indoors and wipe with a dry cloth.","claims":["teaser wand","indoor play"]}},"expectedVerdict":"HUMAN_REVIEW","expectedRuleIds":["PS-005"],"response":{"verdict":"HUMAN_REVIEW","score":80,"rulesetVersion":"2026.07.7","findings":[{"ruleId":"PS-005","severity":"HUMAN_REVIEW","title":"Battery or magnet requires manual review","reason":"Listings that disclose a battery or magnet need an explicit enclosure and monitoring explanation before approval.","evidence":["containsMagnet=true"],"remediation":"Add enclosure, access, and monitoring details for the battery or magnet."}],"missingFacts":[],"ownerQuestions":["Does the listing explain how the battery or magnet is enclosed and monitored?"],"listingPatch":["Clarify how the battery or magnet is enclosed and what supervision limits apply."],"boundary":"Non-veterinary product-fit audit based only on supplied facts.","receipt":{"algorithm":"sha256","inputHash":"bbde60c8b2fc926bfa6fd6b08ce1d81f9ec877ee955d35a905f435af41e98895","reportHash":"d85e96bc1c32a353426bf731206a22be96922a194df1ebbf6d4982beed5a8b24"}}},{"id":"missing-breakaway","label":"Missing breakaway fact","summary":"A cat collar listing without breakaway information.","request":{"pet":{"species":"cat","lifeStage":"adult","weightKg":4.2,"traits":["outdoor-supervised"]},"product":{"name":"Reflective Cat Collar","category":"collar_harness","intendedSpecies":["cat"],"materials":["nylon","plastic"],"minWeightKg":2.5,"maxWeightKg":6.5,"careInstructions":"Hand wash and dry flat.","claims":["reflective","adjustable"]}},"expectedVerdict":"CAUTION","expectedRuleIds":["PS-006"],"response":{"verdict":"CAUTION","score":90,"rulesetVersion":"2026.07.7","findings":[{"ruleId":"PS-006","severity":"CAUTION","title":"Breakaway status missing for cat collar","reason":"Cat collars should state whether they include a breakaway release so owners know how the closure behaves.","evidence":["category=collar_harness","pet.species=cat","breakaway=missing"],"remediation":"State whether the collar includes a breakaway release."}],"missingFacts":["breakaway"],"ownerQuestions":["Does this collar include a breakaway release for cats?"],"listingPatch":["State whether the collar includes a breakaway release for cats."],"boundary":"Non-veterinary product-fit audit based only on supplied facts.","receipt":{"algorithm":"sha256","inputHash":"6aa38756164b8dac550ec55b657626c6f444282d99578cd8af16bfa6105ffaa2","reportHash":"e46a09d8450ac10fc94855597a1cd2715013ae41954f33ea86c6db5bb782123c"}}},{"id":"overweight-carrier","label":"Carrier overload","summary":"A carrier rated below the supplied pet's weight.","request":{"pet":{"species":"dog","lifeStage":"adult","weightKg":8.1,"traits":["travel_friendly"]},"product":{"name":"Metro Soft Carrier","category":"carrier","intendedSpecies":["dog"],"materials":["polyester","mesh"],"maxWeightKg":6,"careInstructions":"Wipe the frame and hand wash the liner.","claims":["airline-style","ventilated"]}},"expectedVerdict":"BLOCK","expectedRuleIds":["PS-007"],"response":{"verdict":"BLOCK","score":70,"rulesetVersion":"2026.07.7","findings":[{"ruleId":"PS-007","severity":"BLOCK","title":"Carrier is rated below the pet's weight","reason":"The carrier's supported weight is below the supplied pet weight, so this carrier should be blocked.","evidence":["category=carrier","pet.weightKg=8.1","maxWeightKg=6"],"remediation":"Choose a carrier with a supported weight at or above the pet's weight."}],"missingFacts":[],"ownerQuestions":[],"listingPatch":[],"boundary":"Non-veterinary product-fit audit based only on supplied facts.","receipt":{"algorithm":"sha256","inputHash":"4267965a53be71d67e01451589e8b822840da83df0bc81ea074fc0f781f43ec7","reportHash":"7d8028264a497727b98664990db02bb514d05c3ddbd336aabdce3e4585dd8925"}}},{"id":"unsupported-claim","label":"Unsupported claim","summary":"A listing that makes medical treatment claims.","request":{"pet":{"species":"dog","lifeStage":"adult","weightKg":7.4,"traits":["recovering_from_surgery"]},"product":{"name":"Compression Recovery Wrap","category":"collar_harness","intendedSpecies":["dog"],"materials":["neoprene","hook_and_loop"],"minWeightKg":3,"maxWeightKg":12,"careInstructions":"Hand wash cold and air dry flat.","claims":["anti-inflammatory","post-treatment comfort"]}},"expectedVerdict":"HUMAN_REVIEW","expectedRuleIds":["PS-008"],"response":{"verdict":"HUMAN_REVIEW","score":82,"rulesetVersion":"2026.07.7","findings":[{"ruleId":"PS-008","severity":"HUMAN_REVIEW","title":"Unsupported medical or ingestible wording detected","reason":"The listing includes medical or ingestible language that falls outside PawSift's supported non-veterinary scope.","evidence":["product.claims[0]=anti-inflammatory","product.claims[1]=post-treatment comfort"],"remediation":"Remove medical or ingestible language and restate only observable product facts."}],"missingFacts":[],"ownerQuestions":["Can you remove medical, treatment, or ingestible language from the submitted product listing?"],"listingPatch":["Replace medical or ingestible wording with observable, non-veterinary product facts."],"boundary":"Non-veterinary product-fit audit based only on supplied facts.","receipt":{"algorithm":"sha256","inputHash":"5d41ff212ba23cc9988af9e112dbe73ad46acbe029e04e9bc3edcb765890bd97","reportHash":"58c045b46f3c9aa28f5830b8f7fb79f97476b32971b8bf37c6e84358bce54e20"}}},{"id":"unsupported-food-name","label":"Food title boundary","summary":"An ingestible listing identified from the product name rather than its claims.","request":{"pet":{"species":"dog","lifeStage":"adult","weightKg":8.2,"traits":["food-motivated"]},"product":{"name":"Freeze-Dried Food","category":"feeder","intendedSpecies":["dog"],"materials":["animal_protein"],"careInstructions":"Store sealed in a cool, dry place.","claims":["single ingredient"]}},"expectedVerdict":"HUMAN_REVIEW","expectedRuleIds":["PS-008"],"response":{"verdict":"HUMAN_REVIEW","score":82,"rulesetVersion":"2026.07.7","findings":[{"ruleId":"PS-008","severity":"HUMAN_REVIEW","title":"Unsupported medical or ingestible wording detected","reason":"The listing includes medical or ingestible language that falls outside PawSift's supported non-veterinary scope.","evidence":["product.name=Freeze-Dried Food"],"remediation":"Remove medical or ingestible language and restate only observable product facts."}],"missingFacts":[],"ownerQuestions":["Can you remove medical, treatment, or ingestible language from the submitted product listing?"],"listingPatch":["Replace medical or ingestible wording with observable, non-veterinary product facts."],"boundary":"Non-veterinary product-fit audit based only on supplied facts.","receipt":{"algorithm":"sha256","inputHash":"020c97d8639dee64c72f7c4986d3a17eb390dc1ca556cd8a7d5d4d69c9f9aaf8","reportHash":"1b12bf5bd7f378f8cd56e42d07b8a8d2d3be53027eae15a38671315a1ec83e59"}}},{"id":"missing-care","label":"Missing care instructions","summary":"A feeder listing without care instructions.","request":{"pet":{"species":"dog","lifeStage":"adult","weightKg":6.7,"traits":["messy_eater"]},"product":{"name":"Raised Slow Feeder","category":"feeder","intendedSpecies":["dog"],"materials":["stainless_steel","bamboo"],"minWeightKg":2,"maxWeightKg":20,"claims":["slow feeding","stable base"]}},"expectedVerdict":"CAUTION","expectedRuleIds":["PS-009"],"response":{"verdict":"CAUTION","score":93,"rulesetVersion":"2026.07.7","findings":[{"ruleId":"PS-009","severity":"CAUTION","title":"Care instructions are missing","reason":"The listing should explain how the product is cleaned or maintained so owners know the ongoing care steps.","evidence":["careInstructions=missing"],"remediation":"Add care instructions with cleaning or maintenance steps."}],"missingFacts":["careInstructions"],"ownerQuestions":["Can you add care instructions for the listing?"],"listingPatch":["Add care instructions with cleaning or maintenance steps."],"boundary":"Non-veterinary product-fit audit based only on supplied facts.","receipt":{"algorithm":"sha256","inputHash":"82dfffdebbb0113e431116c416e720e9482f64d54d4f325f4b5474dbb5f6352f","reportHash":"acc66bc02d93ff54f8bb2ab787f757cb141b1c7013f4f2db299f3f742deccbcd"}}},{"id":"missing-weight-support","label":"Missing weight support","summary":"A collar listing that omits its required supported weight range.","request":{"pet":{"species":"cat","lifeStage":"adult","weightKg":4.6,"traits":["indoor"]},"product":{"name":"Everyday Breakaway Collar","category":"collar_harness","intendedSpecies":["cat"],"materials":["nylon","plastic"],"breakaway":true,"careInstructions":"Hand wash and air dry.","claims":["adjustable","reflective"]}},"expectedVerdict":"CAUTION","expectedRuleIds":["PS-011"],"response":{"verdict":"CAUTION","score":90,"rulesetVersion":"2026.07.7","findings":[{"ruleId":"PS-011","severity":"CAUTION","title":"Supported weight facts are missing for this category","reason":"The listing omits category-specific supported weight facts, so PawSift cannot mark the fit information complete.","evidence":["category=collar_harness","minWeightKg=missing","maxWeightKg=missing"],"remediation":"Add the missing supported weight facts before treating this listing as complete."}],"missingFacts":["minWeightKg","maxWeightKg"],"ownerQuestions":["What minimum and maximum pet weights does this listing support?"],"listingPatch":["Add the supported minWeightKg and maxWeightKg values."],"boundary":"Non-veterinary product-fit audit based only on supplied facts.","receipt":{"algorithm":"sha256","inputHash":"cf319400e293e7a0364560d2e8665be032754aa928855e5689c103acc6b3f746","reportHash":"ba61f77a812174c7f74c69021f35b5db4726d782cd796a488ad2ca511d651c94"}}}]}