Trust Model
How ratings, forks, identity masking, and eval gates keep the marketplace honest.
Ratings
Listings collect ratings via POST /community/templates/{id}/rate
(community.py:239); rating writes upsert — one effective rating per user
per template (model: CommunityTemplateRating,
app/models/community_models.py:73; upsert semantics shipped with migration
20260825_m1_rating_upsert). This makes averages resistant to repeat-voting.
Forks & self-dealing
Forks duplicate a listing under the forker's account
(community.py:291). The trust rules exclude self-forks from rating
inflation: you cannot rate your own fork into credibility, and same-author
fork-count inflation is treated as a defect class, not a feature.
Author masking
Marketplace surfaces separate who made the artifact from who is viewing
it where exposing author identity would enable harassment or scraping;
author display follows the platform's masking rules rather than raw emails
(fork-author email exposure was fixed as a defect, commit fix-fork-author-email-exposure).
Eval gates before prominence
Templates promoted into visible surfaces pass evaluation gates — measured runs, not vibes — consistent with the evaluation tooling (Run Evaluations).
Last updated 2026-08-25 (git-derived)